/* 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/mv.jpg) no-repeat 60% center; background-size:cover;height: 100vh;display: flex; align-items: center;}
header a{display:block;width: 45vw;margin: 0 50vw 0 10vw}

#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: 46px;margin-bottom: 10px; text-align: center;}
h2{font-size: 40px;margin-bottom: 50px; text-align: center;}
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%;}

/*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%;}

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

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


.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.";}

footer{background: #f2f2f2; text-align:left;color: #222;}
footer h3{font-size: 130%;margin: 2em 0 1em;display: block;}
footer #box{max-width: 980px;margin: 0 auto;padding: 2em 0;}
footer a{color: #222;}
footer p{margin-bottom: 0.2em;}
a.flm{border: 1px solid #aaa;padding: 0.5em 1em;}
.telmail{border-top: 1px dotted #666;padding-top: 1em;margin-top: 1em;}
.access{border-top: 1px dotted #666;padding-top: 1em;margin-top: 1em;font-size: 90%;}

.ttlogo{display: block;width: 300px; position: fixed; left:10px;top: 10px;z-index: 9999;}



/*ADD*/

.b4{background: #2d81b1;color: #fff;display: flex;margin-bottom: 100px;}

.grd {
  line-height: 150%;
  background-image: linear-gradient(90deg, #99293d, #2d81b1);
  color: #fff;
  text-align: center;
  padding: 50px 0;
  margin-bottom: 50px
}

.bkform{background-color:#faf8ef;padding: 50px 0;}
.bkqanda{background-color:#e6ecf8;padding: 50px 0;}

.bkform article,
.bkqanda article,
.grd article,
.stripe article{margin: 0 auto;padding: 0;}


.present a{    max-width: 650px;margin: 2em auto;display: block;}
.mini{font-size: 70%;}

.stripe{padding: 3em 10vw 1em; text-align: center;line-height: 1.5em;}
.b4{align-items: center;}
.b4 h1,.b4 h2{text-align: left;}
.b4r{order: 2;margin:0 0 0 auto;height: 100%;}
.b4l{order: 1;width: 40vw;margin: 50px 4vw 50px ;    line-height: 160%;}
.b4 h1{font-size: 400%!important;margin-bottom: 0.2em;}
.b4 h2{font-size: 200%!important;line-height: 140%;}

#merit{}
#merit h2{margin-bottom: 10px!important;font-size: 140%;
  background:#76afcc;
  display: block;
  color: #fff;
}
#merit h3{display: block;width: 100%;margin-bottom: 5px;}
#merit p{font-size: 90%;}
#merit div{display: flex;flex-wrap: wrap; align-items: center;}
#merit div div{width:50%;line-height: 130%;}
#merit div div:last-of-type{width: 50%;padding: 0 5%;}
#merit div:nth-of-type(2n+0) div:first-of-type{order:2;}
#merit div:nth-of-type(2n+0) div:last-of-type{order:1}

.scb{}
.scb h3{text-align: center;font-size: 2vw;margin-bottom: 1em;}
.sceen{display: flex; flex-wrap: wrap;}
.sceen div{width: 48%;margin: 0 0 2em; text-align: center;color: #fff;background: #99293d;font-size: 130%;padding: 1em 0; border-radius: 50px;font-weight: bold;}


table.pri{    width: 100%;display: block;border-right: #000 1px solid;}
table.pri tbody{    width: 100%;display: block;}
table.pri tbody tr{font-size: 98%;margin: 0;padding: 0;border-bottom: #000 1px solid;display: flex;}
table.pri tbody tr th{width: 20%;text-align: center; font-weight: normal;background: #e4e4e4;padding: 1em 0;vertical-align: middle;margin: 0;}
table.pri tbody tr td{width: 23%;text-align: center;border-left: #000 1px solid;padding: 1em 0;vertical-align: middle;margin: 0;line-height: 1.5;}
table.pri tbody tr small{font-size: 10px;}

table.pri tbody tr:nth-of-type(1) th{background: #fff;}
table.pri tbody tr:nth-of-type(1) td:nth-of-type(1){background: #d6a0a0;color: #fff;}
table.pri tbody tr td:nth-of-type(1){background: #fcf7f7;}
.texla{margin: 2em 0!important; line-height: 180%;font-size: 95%;}

.present div{background: url(../../images/book.png) no-repeat center center; background-size: 90%;}




/* 20250626追加 */

.me1,.me2,.me3,.me4,.me5,.me6,.me7{padding: 0px 0;}
.gkan1{line-height: 1.6em;}
.h1txt{margin-top:40px;margin-bottom: 20px;maline-height: 1.0em;line-height: 100%;}
.h2txt{margin-bottom: 70px;font-size: 150%;}
.ptxt1{font-size: 110%;line-height: 150%;}
.mini{font-size: 100%;line-height: 160%;}

#merit .h2md{margin-top: 20px;padding: 20px 40px;font-size: 180%;line-height: 130%;}
#merit .h3txt1{margin-top:30px;font-size: 140%;line-height: 130%;}
#merit .ptxt2{margin-top:10px;margin-bottom: 10px;font-size: 110%;line-height: 1.5em;}

.h3reason{font-size: 80%;}
.reason1{line-height: 1.6em;}

.txtpre{margin: 30px 0;font-size: 30px;line-height: 180%;}
.imgpre{width:206px;margin: 0 auto;}
.txtpre1{margin: 30px 0;font-size: 20px;line-height: 180%;}


.fmtxt{line-height: 1.6em;font-size: 100%;}

.pleft{text-align: left;font-size: 80%;}


/* 
.fixb{position: fixed;width: 10vw;right: 0; top: 20vh;}
*/

.kbnr{width:100%;text-align: center;
   position: fixed;
   bottom: 0px;
   z-index: 9999;
}
.kbnrimg{ width: 500px; /*画像の全体幅*/
  display: inline-block;
  margin: 0 1px;
}

  .pc { display: block !important; }
  .sp { display: none !important; }


/* Effect ==================================================== */
@keyframes blinking {
  0%   { opacity: 0; }
  100% { opacity: 1; }
}
.blink {
  animation: blinking 1s ease-in-out infinite alternate;
}
.info{
  margin: 10px auto 50px;
  padding: 1rem;
  width: 85%;
  background-color: #fff;
  border: 3px solid #2a768d;
  text-align: center;
  font-size: 1.5rem;
  font-weight: bold;
}