@charset "utf-8";

/* reset
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━*/

html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video {
    margin: 0;
    padding: 0;
    border: 0;
    font-size: 100%;
    font: inherit;
    vertical-align: baseline;
    box-sizing: border-box;
}
/* HTML5 display-role reset for older browsers */
article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section {
    display: block;
}
html {
    min-height: 100%;
    width: 100%;
    font-size: 62.5%;
    font-size: 10px\0; /* IE */
    background: #fff;
}
body {
    /* min-width: 375px; */
    /*min-width: 1280px;*/
    line-height: 1;
    word-break: break-all;
    -webkit-text-size-adjust: 100%;
    -ms-text-size-adjust: 100%;
    -webkit-text-size-adjust: 100%;
    font-family: "Noto Sans JP", "Hiragino Kaku Gothic ProN", "Hiragino Sans", "游ゴシック", "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック体", YuGothic, "Helvetica Neue", Arial,  Meiryo, sans-serif;
    color: #2e2e2e;
}
/* IE */
@media all and (-ms-high-contrast: none) {
  body {
    font-family: "Noto Sans JP", "游ゴシック", YuGothic, "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  }
}

/* image
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━*/

img {
    max-width: 100%;
    height: auto;
    border:none;
}
figure {
    line-height: 1;
    text-align: center;
}
figure img {
    line-height: 1;
}

/* responsive PC
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━*/

br.PC {
    display: block;
}
br.SP,
br.SP_375,
br.SP_460,
br.SP_320 {
    display: none;
}
.PC {
    display: block;
}
.SP {
    display: none;
}
img.PC {
    display: inline-block;
}
img.SP {
    display: none;
}

/* link
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━*/

a:link {
    color: #2e2e2e;
    text-decoration: none;
    transition: all 0.4s;
}
p > a:link {
    text-decoration: underline;
}
a:visited {
    color: #2e2e2e;
    text-decoration: none;
}
a:hover {
    color: #2e2e2e;
    text-decoration: none;
}
a:active {
    color: #2e2e2e;
    text-decoration: none;
}
a:focus {
    outline: none;
}

/* clear
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━*/

.SingleContents section p,
.clearfix::after {
    content: "";
    display: block;
    clear: both;
}
.clearfix > li{
    float: left;
}

/* style
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━*/

ol,
ul {
    list-style: none;
}
blockquote,
q {
    quotes: none;
}
blockquote:before,
blockquote:after,
q:before,
q:after {
    content: "";
    content: none;
}
select {
    width: 8.8em;
    vertical-align: middle;
    color: inherit;
    border: 1px solid #ddd;
    border-radius: 3px;
    font-size: 1.6rem;
    min-height: 3.7em;
    padding: 1em;
    background: #fff url(../images/arrow-select.svg) right 25px center / 10px no-repeat !important;
    appearance: none;
}
input[type="text"],
input[type="tel"],
input[type="email"],
input[type="number"],
textarea {
    margin: 0;
    font-size: 1.6rem;
    padding: 1.15em 1em 1.15em 1.2em;
    outline: none;
    line-height: 1.4;
    -webkit-appearance: none;
    background: #fff;
    border: 1px solid #fff;
    max-width: 100%;
    box-sizing: border-box;
    border-radius: 7px;
    width: 100%;
}
::placeholder{
    font-size:1.5rem;
}
input.hasDatepicker{
    width: 35%;
}
.mwform-tel-field input[type="text"] {
    width: 28%;
}
textarea {
    min-height: 7.5em;
    height: 7.5em;
    display: block;
    background: #fff;
}
input[type="checkbox"],
input[type="radio"] {
    margin-right: 5px;
}
input[type="submit"],
button {
    -webkit-appearance: none;
}
p.Indent_List,
ul.Indent_List > li {
    text-indent: -1.2em;
    padding-left: 1.2em;
}
div,p,dt,dd,li {
    font-size: 1.5rem;
    line-height: 2;
    letter-spacing: 0;
}

/* Font_Style
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━*/

time {
    font-size: 1.6rem;
    color: #929292;
    display: inline-block;
    letter-spacing: 1px;
}

/* Text_Align
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━*/

.Text_Left {
    text-align: left !important;
}
.Text_Center {
    text-align: center !important;
}
.Text_Right {
    text-align: right !important;
}

/* Float
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━*/

.Left {
    float: left !important;
}
.Right {
    float: right !important;
}

/* Table
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━*/

table {
    width: 100%;
    border-collapse: collapse;
    border-spacing: 0;
}
table th {
    vertical-align: top;
  font-weight: normal;
}
caption, th {
  text-align: left;
}
table td {
    vertical-align: top;
    word-break: break-all;
}

/* Form
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━*/

.imp {
    font-size: 1.2rem;
    display: inline-block;
    margin-left: 1em;
    color: #00AE91;
}
input.text_S {
    width: 60%;
    margin: 0 1em 0 0;
}
label{
    cursor: pointer;
}

/* h1-h6
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━*/

h1,h2,h3,h4,h5,h6 {
    font-size: 1.6rem;
    line-height: 1.8;
    font-weight: normal;
}

/* flex-box
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━*/
.flex-box{
    display:-webkit-box;
    display:-ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -ms-flex-line-pack: justify;
    align-content: space-between;
    box-sizing: border-box;
}
.flex-box.box-in-middle{
    align-content: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}
.flex-box.direction-column{
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
}
.flex-box.box-in-bottom{
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end;
}
.flex-box.direction-column.w100 > *{
    width:100%;
}
.box-in-02 > *{
  width: 49%;
}
.box-in-03 > *{
  width: 32.3333%;
}
.box-in-04 > *{
  width: 24%;
}
.box-in-05 > *{
  width: 19%;
}
.box-in-06 > *{
  width: 15.6666%;
}
.box-in-07 > *{
  width: 13.285%;
}
.box-in-08 > *{
  width: 11.5%;
}
.box-in-09 > *{
  width: 10.1111%;
}
.flex-box.box-wrap-nowrap{
  flex-wrap: nowrap;
  justify-content: flex-start;
}
.flex-box.direction-reverse{
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;
}
.flex-box.box-in-end{
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
}
.flex-box.box-in-start{
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
}
.flex-box.box-in-center{
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}


/*Wrapper
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━*/

#wrapper {
    width: 100%;
    margin: 0 auto;
    height: 100%;
    position: relative;
    overflow: hidden;
}
.inner-box {
    max-width: 1320px;
    width: calc( 95% - 240px);
    margin: 0 auto;
    box-sizing: border-box;
    /*display: block;*/
    position: relative;
}
@media screen and (min-width: 1441px) {
    .inner-box {
        width: 90%;
        max-width: 1120px;
    }
}
@media screen and (max-width: 1440px) {
    .inner-box {
        max-width: 1120px;
        margin: 0 0 0 auto;
    }
}

@media screen and (max-width: 1080px) {
    .inner-box {
        max-width: 1120px;
        width: 90%;
        margin: 0 auto;
    }
    .inner-box_r{
        width: 95%;
        margin: 0 0 0 auto;
    }
}

@media screen and (max-width: 767px) {
    .inner-box{
        width: 85%;
    }
    .inner-box_r{
        width: 92.5%;
    }
}
#contents {
    padding-bottom: 1px;
    width: 100%;
    margin: 0 auto;
    position: relative;
    z-index: 1;
    display: block;
}
@media screen and (min-width: 1441px) {
    #contents {
        box-sizing: border-box;
        padding-left: 240px;
    }
}

/* Min 768
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━*/
@media screen and (min-width: 768px) {
    .sp-display{
        display: none;
    }
}
/* Min 768 */

/* Max 767
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━*/
@media screen and (max-width: 767px) {
    body.open {
        overflow: hidden;
    }
    body {
        min-width: initial;
    }
    div,p,dt,dd,li {
        font-size: 1.3rem;
        font-size: clamp(1.3rem,3.46vw,2.6rem);
        line-height: 1.9;
        letter-spacing: -.06em;
    }
    .pc-display{
        display: none;
    }
    ::placeholder{
        font-size:1.3rem;
    }
    input[type="text"], input[type="tel"], input[type="email"], input[type="number"], textarea {
        width: 100%;
        font-size: 1.6rem;
        font-size: clamp(1.6rem,4.26vw,3.2rem);
        padding: .8em 1em .8em 1.2em;
        margin: .2em 0 .4em;
    }
    select{
        margin: .2em 0 .4em;
    }
    textarea {
        height: 7em;
        min-height: 7em;
    }
    time {
        font-size: 1.6rem;
        font-size: 2.14vw;
    }

    #Wrapper {
        min-width: inherit;
    }

/* Max 750 */
}

/* Max 375
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━*/
@media screen and (max-width: 375px) {

/* Max 375 */
}

/* Max 320
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━*/
@media screen and (max-width: 320px) {
/* Max 320 */
}
