/* pc sp control ====================================================== */
.forsp,.js-btn{display:none!important}
.forpc{display:block!important}
/* header ====================================================== */
header{display: block;}
/* common ====================================================== */

article.fadein,
article.formbox{max-width: 1200px;margin:100px auto;padding: 0 5%;}

header{background: url(../../images/mbb.png) center center no-repeat,url(../../images/mv.png) center center no-repeat; background-size: 100%,cover;padding: 10vh 50vw 10vh 15vw;}
header div{min-width:600px;}

#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{overflow-x: hidden!important;}

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

#width100{background: url(../../images/b2bk.png) left center no-repeat,url(../../images/b2img.png) right top no-repeat;background-size: 10vw,40vw;}
#width100 div.w2{max-width: 1200px;margin:100px auto;padding: 0 5%;}
.b2l{width:50%;}

.rank{flex-wrap: wrap;}
.rank div{width: 46%;margin-left:4%;font-size: 200%;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{margin-bottom: 1em;}
.merit div.w2 div:first-child{width: 25%;}
.merit div.w2 div:last-child{width: 70%;}
.merit h3{font-size: 2.2vw;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; /* 下線と文字列が重なる部分でも下線が省略されない（線が途切れない） */}

/*font-size*/
.caution,
.merit div.w2 div:last-child p,
#width100 p,
.w3 p{font-size:95%;line-height:230%;}
.w2,.w3{display: flex; justify-content: space-between;}
.career div{width: 30%;margin-left: 2.5%;border-left: thin solid #eee;padding: 1em 0 1em 2.5%;}
.career div:first-child{padding: 0;margin: 0;border: 0;    width: 28.5%;}

.hikaku{display: flex; justify-content: space-between; text-align: center;}
.hikaku div.takou{border: 1px solid #444;width: 30%;padding: 51px 26px;}
.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: 30%;padding: 51px 26px;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;}

table{width: 100%;}
table tbody{width: 100%;}
table tbody tr{text-align: left;display: flex;border-bottom: #ccc 1px solid; padding-bottom: 1em;margin-bottom: 1em;}
table tbody tr th{width: 30%;padding-top: 0.4em;font-weight: normal;}
table tbody tr td{width: 70%;}
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: 30%; 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;}

.anchr{padding: 50px 0 0 0; margin:-50px 0 0 0;display: block;height:0.001vh;}
#fixb{position: fixed;width: 10vw;right: 0; top: 20vh;}

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

/*voice*/
.line-bc {padding: 20px 10px;margin: 15px auto;text-align: right;}
.fukidashi {width: 100%;margin: 10px 0;overflow: hidden;display: flex;}  
.fukidashi .faceicon {margin-right: -50px;width: 210px;text-align: center;}
.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; margin: 0 0 0 80px;padding: 30px;border-radius: 30px;background: #d6f2ee;line-height: 180%;}
.says:after {content: "";display: inline-block;position: absolute;top: 23px; left: -50px;border: 18px solid transparent;border-right: 38px solid #d6f2ee;-webkit-transform: rotate(15deg);transform: rotate(15deg);}
.says p {margin: 0;padding: 0;}
/* 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.";}