@charset "utf-8";

@import url(html5reset.css);

::before,::after {background-repeat: no-repeat;box-sizing: inherit;}

@font-face {
font-family: 'Metropolis';
font-style: normal;
font-weight: 100;
src: url(../fonts/Metropolis-Thin.woff2) format("woff2"), url(../fonts/Metropolis-Thin.woff) format("woff"), url(../fonts/Metropolis-Thin.otf) format("opentype");
}

@font-face {
font-family: 'Metropolis';
font-style: normal;
font-weight: 200;
src: url(../fonts/Metropolis-ExtraLight.woff2) format("woff2"), url(../fonts/Metropolis-ExtraLight.woff) format("woff"), url(../fonts/Metropolis-ExtraLight.otf) format("opentype");
}

@font-face {
font-family: 'Metropolis';
font-style: normal;
font-weight: 300;
src: url(../fonts/Metropolis-Light.woff2) format("woff2"), url(../fonts/Metropolis-Light.woff) format("woff"), url(../fonts/Metropolis-Light.otf) format("opentype");
}

@font-face {
font-family: 'Metropolis';
font-style: normal;
font-weight: 400;
src: url(../fonts/Metropolis-Regular.woff2) format("woff2"), url(../fonts/Metropolis-Regular.woff) format("woff"), url(../fonts/Metropolis-Regular.otf) format("opentype");
}

@font-face {
font-family: 'Metropolis';
font-style: normal;
font-weight: 500;
src: url(../fonts/Metropolis-Medium.woff2) format("woff2"), url(../fonts/Metropolis-Medium.woff) format("woff"), url(../fonts/Metropolis-Medium.otf) format("opentype");
}

@font-face {
font-family: 'Metropolis';
font-style: normal;
font-weight: 600;
src: url(../fonts/Metropolis-SemiBold.woff2) format("woff2"), url(../fonts/Metropolis-SemiBold.woff) format("woff"), url(../fonts/Metropolis-SemiBold.otf) format("opentype");
}



html{
font-size: 62.5%;
box-sizing: border-box;
}
body {
position: relative;
text-align: left;
font-family: 'Metropolis',sans-serif;
font-weight: 300;
line-height:1.5;
color: #231815;
min-width:100%;
width:100%;
margin: 0;
background: #fff;
-webkit-text-size-adjust: 100%;
-webkit-font-smoothing: antialiased;
}


article,header,footer {
width:100%;
font-size: 1.5rem;
line-height: 1.5em;
}

a { transition:opacity .2s; }
a,a:visited { color: #231815;text-decoration: none; }
a.underbar { text-decoration: underline; }
a:hover { opacity: .8; }

rt,rp {
font-size: 40%;
-webkit-transform:scale(0.8);
}
rp{padding:0;}
ruby {
ruby-overhang: auto;
ruby-align:center;
ruby-position: inline;
}

/*縦書き*/
.text-vertical{
writing-mode:vertical-rl;
-ms-writing-mode:tb-rl;
-moz-writing-mode:vertical-rl;
-webkit-writing-mode:vertical-rl;
font-family:sans-serif!important;
}

/* #all {
font-size: 1.6rem;
} */

img{max-width: 100%;}

/* margin */
.mt-0{ margin-top: 0!important; }
.mt-02em{ margin-top: .2rem!important; }
.mt-05em{ margin-top: .5rem!important; }
.mt-1em{ margin-top: 1rem!important; }
.mt-2em{ margin-top: 2rem!important; }
.mt-3em{ margin-top: 3rem!important; }
.mt-4em{ margin-top: 4rem!important; }
.mt-5em{ margin-top: 5rem!important; }
.mt-6em{ margin-top: 6rem!important; }
.mt-7em{ margin-top: 7rem!important; }
.mt-8em{ margin-top: 8rem!important; }
.mr-0{ margin-right: 0!important; }
.mr-02em{ margin-right: .2rem!important; }
.mr-05em{ margin-right: .5rem!important; }
.mr-1em{ margin-right: 1rem!important; }
.mr-2em{ margin-right: 2rem!important; }
.mr-3em{ margin-right: 3rem!important; }
.mr-4em{ margin-right: 4rem!important; }
.mb-0{ margin-bottom: 0 !important; }
.mb-05em{ margin-bottom: .5rem!important; }
.mb-1em{ margin-bottom: 1rem!important; }
.mb-2em{ margin-bottom: 2rem!important; }
.mb-3em{ margin-bottom: 3rem!important; }
.mb-4em{ margin-bottom: 4rem!important; }
.mb-5em{ margin-bottom: 5rem!important; }
.mb-6em{ margin-bottom: 6rem!important; }
.ml-0{ margin-left: 0!important; }
.ml-02em{ margin-left: .2rem!important; }
.ml-05em{ margin-left: .5rem!important; }
.ml-1em{ margin-left: 1rem!important; }
.ml-2em{ margin-left: 2rem!important; }
.ml-3em{ margin-left: 3rem!important; }
.ml-4em{ margin-left: 4rem!important; }
.mg-0{margin: 0!important;}

/* padding */
.pt-0{ padding-top: 0 !important; }
.pt-05em{ padding-top: .5rem!important; }
.pt-1em{ padding-top: 1rem!important; }
.pt-2em{ padding-top: 2rem!important; }
.pt-3em{ padding-top: 3rem!important; }
.pt-4em{ padding-top: 4rem!important; }
.pt-5em{ padding-top: 5rem!important; }
.pt-6em{ padding-top: 6rem!important; }
.pr-0{ padding-right: 0 !important; }
.pr-02em{ padding-right: .2rem!important; }
.pr-05em{ padding-right: .5rem!important; }
.pr-1em{ padding-right: 1rem!important; }
.pr-2em{ padding-right: 2rem!important; }
.pr-3em{ padding-right: 3rem!important; }
.pr-4em{ padding-right: 4rem!important; }
.pb-0{ padding-bottom: 0 !important; }
.pb-05em{ padding-bottom: .5rem!important; }
.pb-1em{ padding-bottom: 1rem !important; }
.pb-2em{ padding-bottom: 2rem !important; }
.pb-3em{ padding-bottom: 3rem!important; }
.pb-4em{ padding-bottom: 4rem!important; }
.pb-5em{ padding-bottom: 5rem!important; }
.pb-6em{ padding-bottom: 6rem!important; }
.pl-0{ padding-left: 0 !important; }
.pl-02em{ padding-left: .2rem!important; }
.pl-05em{ padding-left: .5rem!important; }
.pl-1em{ padding-left: 1rem!important; }
.pl-2em{ padding-left: 2rem!important; }
.pl-3em{ padding-left: 3rem!important; }
.pl-4em{ padding-left: 4rem!important; }
.pd-0{ padding: 0!important; }

.mb-05em-sp{ margin-bottom: .5rem!important; }
.mt-1em-sp{ margin-top: 1rem!important; }
.mt-2em-sp{ margin-top: 2rem!important; }
.mb-1em-sp{ margin-bottom: 1rem!important; }
.mb-2em-sp{ margin-bottom: 2rem!important; }
.pt-1em-sp{ padding-top: 1rem!important; }


/* Container */
.wrapper{
width: 90%;
display: flex;
flex-wrap: wrap;
position:relative;
margin:0 auto;
/*letter-spacing: -0.5em;
display: block\9;*/
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
text-align: left;
}
.wrapper:after{
content:"";
display: block;
clear:both;
box-sizing: border-box;
}
.w100{
max-width: 100%!important;
width: 100%!important;
}

/* flex */
.flex{ display: flex!important; }
.flex.justify-start {justify-content:flex-start;}
.flex.justify-end {justify-content:flex-end;}
.flex.justify-center {justify-content:center;}
.flex.justify-between {justify-content:space-between;}
.flex.justify-around {justify-content:space-around;}
.flex.align-stretch {align-items:stretch;}
.flex.align-start {align-items:flex-start;}
.flex.align-end {align-items:flex-end;}
.flex.align-center {align-items:center;}
.flex.align-baseline {align-items:baseline;}
.wrapper.flex:after{ content:none; }

.flex.flex-wrap {flex-wrap: wrap;}
.flex-reverse {flex-wrap: wrap-reverse;}

/* 2020.7 update */
.i-flex{ display: inline-flex!important; }
.jc-start {justify-content:flex-start;}
.jc-end {justify-content:flex-end;}
.jc-center {justify-content:center;}
.jc-between {justify-content:space-between;}
.jc-around {justify-content:space-around;}
.ac-start {align-content: flex-start;}
.ac-end {align-content: flex-end;}
.ac-center {align-content: center;}
.ac-between {align-content: space-between;}
.ac-around {align-content: space-around;}
.ac-stretch {align-content: stretch;}
.ai-start {align-items:flex-start;}
.ai-end {align-items:flex-end;}
.ai-center {align-items:center;}
.ai-baseline {align-items:baseline;}
.ai-stretch {align-items:stretch;}
.nowrap { flex-wrap: nowrap; }
.grow-0{ flex-grow:0; }
.grow-1{ flex-grow:1; }
.grow-2{ flex-grow:2; }
.grow-3{ flex-grow:3; }
.grow-4{ flex-grow:4; }

.wrap-sp{flex-wrap:wrap;}




.col1,.col2,.col3,.col4,.col5,.col6,
.col7,.col8,.col9,.col10,.col11,.col12{
display: block;
position: relative;
padding: 15px;
width:100%;
letter-spacing: normal;/* i-b 隙間埋め用 */
box-sizing: border-box;
}
.wrap-pd-0 .col1,.wrap-pd-0 .col2,.wrap-pd-0 .col3,.wrap-pd-0 .col4,.wrap-pd-0 .col5,.wrap-pd-0 .col6,.wrap-pd-0 .col7,.wrap-pd-0 .col8,.wrap-pd-0 .col9,.wrap-pd-0 .col10,.wrap-pd-0 .col11,.wrap-pd-0 .col12{
padding: 0;
}
.wrap-pd-5px .col1,.wrap-pd-5px .col2,.wrap-pd-5px .col3,.wrap-pd-5px .col4,.wrap-pd-5px .col5,.wrap-pd-5px .col6,.wrap-pd-5px .col7,.wrap-pd-5px .col8,.wrap-pd-5px .col9,.wrap-pd-5px .col10,.wrap-pd-5px .col11,.wrap-pd-5px .col12{
padding: 5px;
}
.wrap-pd-10px .col1,.wrap-pd-10px .col2,.wrap-pd-10px .col3,.wrap-pd-10px .col4,.wrap-pd-10px .col5,.wrap-pd-10px .col6,.wrap-pd-10px .col7,.wrap-pd-10px .col8,.wrap-pd-10px .col9,.wrap-pd-10px .col10,.wrap-pd-10px .col11,.wrap-pd-10px .col12{
padding: 10px;
}
.wrap-pd-0,.wrap-pd-5px,.wrap-pd-10px{
/*letter-spacing: -0.5em;*/
text-align: center;
}
.col12.wrap-pd-0,
.col12.wrap-pd-5px,
.col12.wrap-pd-10px{
width:96.29%;
}

/* display */
.db{display: block!important;}
.di{display: inline!important;}
.dib{display: inline-block!important;}
.dt{display: table !important;}
.dtc{display: table-cell !important;vertical-align:middle;}

/* overflow */
.over-hidden{
overflow:hidden;
}

/* text-align */
.text-right{ text-align: right!important; }
.text-left{ text-align: left!important; }
.text-center{ text-align: center!important; }

/* v-align */
.vertical-top{ vertical-align: top!important; }
.vertical-bottom{ vertical-align: bottom; }
.vertical-middle{ vertical-align: middle; }

/* float */
.fl{ float:left; }
.fr{ float:right; }
.fi{ float:inherit; text-align: center;}

/* on off */
.on-sp { display:inline-block; }
.off-sp { display:none!important; }
.on-tb { display:none; }
.off-tb { display:none; }
.on-pc { display:none; }
.off-pc { display:inline-block; }
.on-sp-flex { display:flex; }
.on-tb-flex { display:none; }








@media screen and (min-width:768px) {

article,header,footer {
font-size: 1.6rem;
}

/* on off */
.on-sp { display:none!important; }
.off-sp { display:inline-block!important; }
.on-tb { display:inline-block; }
.off-tb { display:none; }
.on-pc { display:none!important; }
.off-pc { display:inline-block; }

.mb-0-tb{ margin-bottom: 0!important; }
.mb-05em-sp{ margin-bottom: 0!important; }
.mt-1em-tb{ margin-top: 1em!important; }
.mt-1em-sp{ margin-top: 0!important; }
.mt-2em-sp{ margin-top: 0!important; }
.mb-1em-sp{ margin-bottom: 0!important; }
.mb-2em-sp{ margin-bottom: 0!important; }
.mt-2em-tb{ margin-top: 2em!important; }
.mb-2em-tb{ margin-bottom: 2em!important; }
.ml-1em-tb{ margin-left: 1em!important; }
.pt-1em-sp{ padding-top: 0!important; }

/* flex */
.wrap-sp{flex-wrap:nowrap!important;}

/* column*/
.wrapper{width: 100%;}
.col1,.col2,.col3,.col4,.col5,.col6,
.col7,.col8,.col9,.col10,.col11,.col12 {
padding:20px;
}
.col1 { width:8.3333%; }
.col2 { width:16.6666%; }
.col3 { width:25%; }
.col4 { width:33.3333%; }
.col5 { width:41.6666%; }
.col6 { width:50%; }
.col7 { width:58.333%; }
.col8 { width:66.666%; }
.col9 { width:74.999%; }
.col10 { width:83.333%; }
.col11 { width:91.666%; }
.col12 { width:100%; }

}/*@media screen and (min-width:768px)*/


@media screen and (min-width:1080px) {
.wrapper,
.flex-wrapper {max-width: 1080px;}
.col12{max-width: 1080px;}


/*#all {
font-size: 1.7rem;
}*/

/* on off */
.off-tb { display:inline-block; }
.on-pc { display:inline-block!important; }
.off-pc { display:none; }
.on-sp-flex { display:none; }
.on-tb-flex { display:flex; }

}/*@media screen and (min-width:1080px)*/




@media screen and (max-width:767px) {

.col1-sp { width:8.3333%; }
.col2-sp { width:16.6666%; }
.col3-sp { width:25%; }
.col4-sp { width:33.3333%; }
.col5-sp { width:41.6666%; }
.col6-sp { width:50%; }
.col7-sp { width:58.333%; }
.col8-sp { width:66.666%; }
.col9-sp { width:74.999%; }
.col10-sp { width:83.333%; }
.col11-sp { width:91.666%; }

}/*@media screen and (max-width:767px)*/



/* basic design */

/* Text */
.small { font-size:80%; }
.smaller { font-size:70%; }
.big{font-size: 118%; }
.bigger{font-size: 125%; }
.big-16{font-size: 106%; }
.big-18{font-size: 160%; }
.strong{font-weight: 600; }
.normal { font-weight: 300;}
.caption{ font-size:1.2rem; padding-top:1rem; }
.caution { font-size: 82%; margin-top: 1rem;}
/* caution左空きパターン */
.caution_indent {
display: table;
font-size:70%;
margin-top: 1rem;
}
.caution_indent span {
display: table-cell;
vertical-align: top;
text-align: left;
}
.caution_indent span:first-child {
white-space: nowrap;
padding-right: .5rem;
}


#pagetop { position:fixed; bottom:20px; right:20px; cursor:pointer; opacity:0.8; }

.sup{font-size:70%;vertical-align: super;}
.sub{font-size:70%;}

ul.list-circle, ul.list-decimal,ul.list-disc{
list-style-type: circle;
list-style-position:outside;
padding-left: 1.5rem;
}
ul.list-circle li {list-style-type: circle;margin-left:1rem;}


ul.list-circle li, ul.list-decimal li{margin-bottom: .5em;}
ul.list-decimal{list-style-type: decimal;padding-left: 2rem;}
ul.list-disc{list-style-type: disc;}
