html{-webkit-text-size-adjust:100%;}

/*for ios input reset*/
input{-webkit-appearance: none;}
/* pc sp control ====================================================== */
.forpc{display:none!important}
.forsp{display:block!important}
/* head common ====================================================== */
.headsp{}
.headsp a{display:block;width:200px;margin:0 auto;}
/* common ====================================================== */
article.fadein,
article.formbox{margin:100px 5%}
header{background: url(../../images/mbb.png) center center no-repeat,url(../../images/mv.png) 100% bottom no-repeat; background-size: 100%,131%;padding: 5vw;height: 100vh;background-color: #f2f5f8;}
header div{}

#cycle{margin: 1em auto;padding: 0; width: calc(100vw - 65px);}
#cycle a{width: 80vw;display: block; margin: 0 2vw;}
#cycle a img{width: 100%;}
.slick-track{width: 100vw;margin: 0; padding: 0;}

h1{font-size: 100%;margin-bottom: 10px;}
h2{font-size: 5.5vw;margin-bottom: 50px;}
h2.doted::after{display: block;content: "・・・・・";font-size: 50%; letter-spacing: 0.3em;color: #808080;margin-top: 20px;}
p{font-size: 100%;margin-bottom:2em;}
p br{display: none;}

#width100{background: url(../../images/b2bk.png) left center no-repeat,url(../../images/b2img.png) right top no-repeat;background-size: 40vw,100vw;padding: 50vh 5% 0;}
.b2l{width:100%;}

.rank{display: flex;flex-wrap: wrap;}
.rank div{width: 49%;margin-left:2%;font-size: 3.8vw;text-align: center;margin-bottom: 1em;}
.rank div:nth-child(2n+1){margin-left: 0;}
.rank div img{margin-bottom: 1em;}
.rank div span{font-size:50%;display: block;}

.merit div.w2 div:first-child{width: 70%;margin: 0 auto 1em;}
.merit div.w2 div:last-child{width: 100%; text-align: center;}
/*font-size*/
.caution,
.merit div.w2 div:last-child p,
#width100 p,
.w3 p{font-size:95%;line-height:140%;}

.career div{width: 100%;margin-top: 1em;border-top: thin solid #eee;padding: 2em 0;}
.career div:first-child{padding: 0;margin: 0;border: 0;}
.career div img{margin-bottom: 1em;}

.hikaku{text-align: center;}
.hikaku div.takou{border: 1px solid #444;width: 100%;padding: 51px 46px;}
.hikaku div#toukou h4,.hikaku div.takou h4{font-size: 200%;letter-spacing: 0.2em;}
.hikaku div#toukou div.price,.hikaku div.takou div.price{font-size: 250%;font-weight: bold;border-top:1px solid #444;border-bottom: 1px solid #444;padding: 0.4em 0;margin:0.4em 0}
.hikaku div#toukou p,.hikaku div.takou p{font-size: 30%;margin: 0;}
.hikaku div#toukou div.price span,.hikaku div.takou div.price span{font-size: 70%; font-weight: bold;}
.hikaku div#toukou{width: 100%;padding: 51px 46px;background: #e50e80;color: #fff;}
.hikaku div#toukou div.price{border-color: #fff;}
.hikaku dl{display: flex;flex-wrap: wrap;text-align: left;font-weight: bold;}
.hikaku dl dt{width: 45%;margin-bottom: 1em;}
.hikaku dl dd{width: 55%;}

.formbox{max-width: 960px!important;}

.error-text{border: double 4px red; padding: 1em;margin: 1em 0;}
.error-text ul li{list-style: circle; list-style-position: inside; color: red;}

table{width: 100%;}
table tbody{width: 100%;}
table tbody tr{text-align: left;border-bottom: #ccc 1px solid; padding-bottom: 1em;margin-bottom: 1em;display: block;}
table tbody tr th{display:block;width: 100%;padding-top: 0.4em;font-weight: normal;}
table tbody tr td{display:block;width: 100%;}
table tbody tr td input,
table tbody tr td select,
table tbody tr td textarea{width: 100%;background: #eee; border: 0;padding:0.2em; font-size: 102%;}
table tbody tr td textarea{height: 8em;}
.inputbut{text-align: center;}
.inputbut input{width: 70%; border: 0;background:#e50e80; color: #fff;font-size: 130%; font-weight: bold;padding: 0.2em; margin: 2em auto 2em;}

.caution{background: #f2f2f2; text-align: center;line-height:180%;padding: 1em;}
.merit h3{font-size: 4.5vw;margin-bottom: 1em;text-decoration: underline; /* 下線 */text-decoration-thickness: 1em; /* 線の太さ */text-decoration-color: rgba(247, 228, 231, 0.4); /* 線の色 */text-underline-offset: -0.5em; /* 線の位置。テキストに重なるようにやや上部にする */text-decoration-skip-ink: none; /* 下線と文字列が重なる部分でも下線が省略されない（線が途切れない） */}

.anchr{padding: 50px 0 0 0; margin:-50px 0 0 0;display: block;height:0.001vh;}
#fixb{position: fixed;width: 42vw;right: 0; bottom: 0;}
#fixb a{width: 20vw;float: right;}
#fixb a:last-of-type{width: 21.5vw!important;}
/*voice*/
.line-bc {padding: 20px 10px;margin: 15px auto;text-align: right;}
.fukidashi {width: 100%;margin: 10px 0;overflow: hidden;}  
.fukidashi .faceicon {width: 130px;text-align: center;margin-bottom: 39px;}
.fukidashi .faceicon img{width: 100%;height: auto;border-radius: 50%;margin-bottom: 10px;}
.fukidashi .chatting {width: 100%;text-align: left;}
.says {display: inline-block;position: relative; padding: 15px;border-radius: 30px;background: #d6f2ee;line-height: 180%;z-index: 2;}
.says:after {content: "";display: inline-block;position: absolute;top: -39px; left: 11%;border: 5vw solid transparent;border-right: 38px solid #d6f2ee;-webkit-transform: rotate(90deg);transform: rotate(90deg);z-index: 0;}
.says p {margin: 0;padding: 0;z-index: 10;    position: relative;}
/* QA */
.qa {margin: 0px;}
.qa__block {  display: flex;  flex-direction: column;  min-width: 200px;}
.qa__item {display: inline-block;}
.qa__head {position: relative;text-align: left;padding: 20px 30px 20px 20px;background: #000;color: #fff;cursor: pointer;width: 100%;}
.qa__head:after {content: "";border-top: 1px solid #fff;border-left: 1px solid #fff;display: inline-block;width: 10px;height: 10px;transform: rotate(-135deg) translateY(9px);position: absolute;right: 20px;top: 50%;transition: transform .4s;}
.qa__body {position: relative;background: #fff;color: black;border: transparent;padding: 0 20px;line-height: 0;opacity: 0;transition: line-height 0.4s, padding 0.4s, opacity 0.4s;}
.qa__body.is-open {padding: 20px;line-height: 1.5;opacity: 1;}
.qa__head.is-open::after {transform: rotate(45deg) translateY(-10px);}
.qa__item:not(:first-child) {margin-top: 2px;}
.qa__head::before{content:"Q.";}
.qa__body{display: flex;}
.qa__body::before{content: "A.";}