@charset "UTF-8";
@import url('https://fonts.googleapis.com/css2?family=Lato:ital,wght@0,300;0,400;0,700;0,900;1,300;1,400;1,700;1,900&display=swap');



/* 1: Base Style Setting
----------------------------------------------------------------------------------------------*/

/* Base Setting
==========================================================*/
body { font-family: "游ゴシック", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic",  Helvetica, Arial, sans-serif; font-weight: 500; margin:0; padding: 0; -webkit-text-size-adjust: 100%; letter-spacing: 0.05em; overflow-x: hidden; line-height: 1.8; font-feature-settings: palt; color: #282828; position: relative; overflow-x: hidden;}
html { font-size: 62.5%; } /* 10px */
body { font-size: 1.6rem; } /* 16px */
p  { font-size: 1.6rem; } /* 16px */

h1.ind-transform { position: absolute; top: -30%; }

a { text-decoration: none; color:#282828; }
a.underline{ text-decoration: underline; }
a:focus,
a:hover { text-decoration: none; }
a { outline:none;}
:focus { outline: 0; }

.flex{ display: flex; }
.flex-jus{display: flex; justify-content: space-between; }
.flex-jus-cen{display: flex; justify-content: space-between; align-items: center;}
.flex-it-cen{display: flex; align-items: center; }

.centerposi,
.pc-centerposi { position: absolute; top: 50%; left: 50%; -ms-transform: translate(-50%, -50%); -webkit-transform: translate(-50%, -50%); transform: translate(-50%, -50%); }
.centertate,
.pc-centertate { position: absolute; top: 50%; -ms-transform: translateY(-50%); -webkit-transform: translateY(-50%); transform: translateY(-50%); } 
.centeryoko,
.pc-centeryoko { position: absolute; left: 50%; -ms-transform: translateX(-50%); -webkit-transform: translateX(-50%); transform: translateX(-50%); } 

.cshover button,
.cshover input,
.cshover a, 
a.cshover{ -webkit-transition:all .3s; transition:all .3s; }
.cshover input:hover,
.cshover button:hover,
.cshover a:hover, 
a.cshover:hover { -webkit-opacity: 0.6; opacity: 0.6; }

.imgwrap{line-height: 0;}

@media(min-width: 768px){
a[href^="tel:"]{
pointer-events: none;
}
}

/* ハック
==========================================================*/

@media screen and (min-width: 1041px){
.sp-hide1040{display: block;}
.sp-show1040{display: none;}
}
@media screen and (max-width: 1040px){
.sp-hide1040{display: none;}
.sp-show1040{display: block;}
}
@media screen and (min-width: 861px){
.sp-show860{display: none;}
.sp-hide860{display: block;}
}
@media screen and (max-width: 860px){
.sp-show860{display: block;}
.sp-hide860{display: none;}
body { font-size: 1.5rem; } /* 15px */
p  { font-size: 1.5rem; } /* 15px */
}
@media screen and (max-width: 860px) and (min-width: 600px){
.sp-show860-600{display: block;}
.sp-hide860-600{display: none;}
}
@media screen and (max-width: 860px) and (min-width: 600px){
.sp-show860-600{display: block;}
.sp-hide860-600{display: none;}
}

@media screen and (min-width: 769px){
.sp-show768{display: none;}
.sp-hide768{display: block;}
}
@media screen and (max-width: 768px){
.sp-show768{display: block;}
.sp-hide768{display: none;}
}

@media screen and (min-width: 601px){
.sp-show600{display: none;}
.sp-hide600{display: block;}
.sp-show-inline600{display: none;}
}
@media screen and (max-width: 600px){
.sp-show600{display: block;}
.sp-hide600{display: none;}
.sp-show-inline600{display: inline;}
body { font-size: 1.4rem; } /* 14px */
p  { font-size: 1.4rem; } /* 14px */
}




/* common
==========================================================*/
.bg_blue{background-color: #19AADC;}
.bg_red{background-color: #E63D20;}
.bg_white{background-color: #fff;}
.fn_Lato{font-family: 'Lato', sans-serif;}
.fn_Noto_cjk{font-family: noto-sans-cjk-jp,sans-serif; font-weight: 700;}

.w94{width: 94%; max-width: 1600px; margin: 0 auto;}
.w1000{width: 94%; max-width: 1000px; margin: 0 auto;}
.w1200{width: 94%; max-width: 1200px; margin: 0 auto;}
.w800{width: 94%; max-width: 800px; margin: 0 auto;}
.pdt60{padding-top: 60px;}

.h2ttl{font-size: 5rem; font-weight: 900; font-style: italic; z-index: 5;}
.h2ttl::before{content: ""; font-size: 5rem; position: absolute; top: 2px; left: 50%; transform: translateX(-48%); z-index: -2;}
.jp_ttl{font-size: 2.8rem; font-weight: bold; color: #ffffff; letter-spacing: 0.1em;}

.btn{display: block; width: 280px; height: 60px; margin: 40px auto 0; font-weight: 900; font-style: italic; color: #fff; font-size: 2rem;}
.btn p{line-height: 60px; z-index: 5;}
.btn p::before{content: "READ MORE"; color: #E63D20; position: absolute; top: 2px; left: 50%; transform: translateX(-48%); z-index: -2;}

@media screen and (max-width: 860px){
.h2ttl, .h2ttl::before{font-size: 4rem;}
.jp_ttl{font-size: 2.4rem;}
}
@media screen and (max-width: 600px){
.h2ttl, .h2ttl::before{font-size: 3rem;}
.jp_ttl{font-size: 1.9rem;}
}

/*  menu triggerここから  */
.navInner { display: none;  height: 70px; width: 70px; }/* position: absolute; right: calc(6% - 20px); z-index: 5555 !important; top: 40px; */
.menu-trigger { width: 30px; height: 20px; line-height: inherit; cursor: pointer; position: relative; top: 50%; left: 50%; transform: translate(-50%, -50%); z-index: 9999;}
.menu-trigger.active { margin-left: 0px; position: relative; z-index: 999999;}
.menu-trigger,
.menu-trigger span { display: inline-block; transition:all .4s; box-sizing: border-box; }
.menu-trigger span{ position: absolute; left: 0; width: 100%; height: 3px; background-color: #ffffff; }
.menu-trigger span:nth-of-type(1){ top:0;}
.menu-trigger span:nth-of-type(2){ top: 8px;}
.menu-trigger span:nth-of-type(3){ bottom:0;}
.menu-trigger:not(.active):hover span:nth-of-type(1){ top: 2px;}
.menu-trigger:not(.active):hover span:nth-of-type(3){ bottom: 2px;}
.menu-trigger.active span:nth-of-type(1){-webkit-transform:translateY(9px) rotate(-45deg);transform:translateY(9px) rotate(-45deg); background-color: #ffffff;}
.menu-trigger.active span:nth-of-type(2){opacity:0}
.menu-trigger.active span:nth-of-type(3){-webkit-transform:translateY(-8px) rotate(45deg);transform:translateY(-8px) rotate(45deg); background-color: #ffffff;}
@media screen and (max-width: 860px){
.navInner{display: block; background-color: #19AADC; position: relative; top: -10px;}
.navInner.active{background-color: #E63D20;}
}
@media screen and (max-width: 600px){
.navInner {height: 60px; width: 60px; top: -15px;}
.navInner{top: -5px;}
}
/*  menu triggerここまで  */



/* header
==========================================================*/
header{width: 100vw; height: 100px; position: absolute; z-index: 5555;}
.headInner{padding-top: 21px;}
.logo a{display: block; width: 100%; height: auto;}
.g-nav {align-items: center;}
.g-nav li{margin-right: 40px; line-height: 1.2;}
.g-nav li:last-child{margin-right: 0;}
.g-nav li .fn_Lato{font-weight: 900; font-style: italic; font-size: 1.6rem;}
.g-nav li .fn_Lato::before{content: ""; font-size: 1.6rem; color: #E63D20; position: absolute; top: 2px; left: 2px; z-index: -2;}
.g-nav li:nth-child(1) .fn_Lato::before{content: "TOP";}
.g-nav li:nth-child(2) .fn_Lato::before{content: "ABOUT";}
.g-nav li:nth-child(3) .fn_Lato::before{content: "SERVICE";}
.g-nav li:nth-child(4) .fn_Lato::before{content: "RECRUIT";}
.g-nav li:nth-child(5) .fn_Lato::before{content: "CONTACT";}
.g-nav li .bold{font-size: 1rem;}
.g-nav li a{color: #fff;}
.h-snswrap li{min-width: 20px;}
.h-snswrap li:first-child{margin-right: 20px;}
@media screen and (min-width: 861px){
#menuInner{display: block !important;}
}
@media screen and (max-width: 860px){
#header{width: 100%;}
header{height: 80px; position: fixed;}
#menuInner{display: none; width: 100vw; height: 100vh; background-color: #E63D20; position: fixed; top: 0; left: 0;}
#menuInner .imgwrap{margin-top: 120px; margin-bottom: 60px;}
.g-nav{flex-flow: column; margin-right: 0;}
.g-nav li{margin-right: 0; margin-bottom: 30px;}
.g-nav li .fn_Lato::before {color: #19AADC; font-size: 2.4rem;}
.g-nav li .fn_Lato{font-size: 2.4rem;}
header #logo{width: 90px; padding-left: 20px;}
}
@media screen and (max-width: 600px){
header{height: 70px;}
#menuInner .imgwrap{margin-top: 60px; margin-bottom: 40px;}
header #logo img{width: 75px;}
}



/* Index - MV
==========================================================*/
#MV{width: 100vw; padding: 100px 0 40px;}
#MV::before{content: ""; width: 100%; height: 30%; background-color: #E63D20; position: absolute;bottom: 0;}
#MV .wrapInner{width: 94vw; height: calc(100vh - 140px); margin: 0 auto; background: url(../images/index/mv01.jpg) center center no-repeat; background-size: cover; border-radius: 10px;}
.mv_scroll{ flex-flow: column; align-items: center; position: absolute; bottom: 0; left: 50%; transform: translateX(-50%); }
.mv_scroll .fn_Lato{font-weight: 900; color: #E62320;}
.mv_scroll .line{ width: 1px; height: 30px; margin-top: 15px;  }
.mv_scroll .line span{ display: block; width: 1px; height: 100%; background-color: #E63D20;  animation:scroll_effect 1.8s infinite; transform-origin: bottom; }
@keyframes scroll_effect {
0% {
height: 0;
}
100% {
height: 100%;
}
}
@media screen and (max-width: 860px){
#MV{padding: 80px 0 40px;}
#MV .wrapInner{height: calc(100vh - 120px);}
#MV h2{width: 25%;}
.mv_scroll .fn_Lato{font-size: 1.4rem;}
}
@media screen and (max-width: 600px){
#MV h2{width: 55%;}
#MV .wrapInner{background: url(../images/index/mv-sp.jpg) center center no-repeat; background-size: cover;}
}



/* Index - about
==========================================================*/
#ind_about{z-index: 2;}
#ind_about::before{content: ""; width: 100%; height: 150px; background-color: #19AADC; position: absolute; bottom: 0; z-index: -1;}
#ind_about .h2ttl{color: #fff;}
#ind_about .h2ttl::before{content: "ABOUT"; color: #19AADC;}
#ind_about .flex .f_left, #ind_about .flex .f_right{width: 50%;}
#ind_about .flex .f_left{background-color: #fff; border-radius: 10px 0 0 10px;}
#ind_about .flex .f_left{flex-flow: column; justify-content: center;}
#ind_about .flex .f_right img{border-radius: 0 10px 10px 0;}
@media screen and (max-width: 860px){
#ind_about .flex .f_left .imgwrap{width: 160px; margin: 0 auto;}
#ind_about .flex{flex-flow: column-reverse;}
#ind_about .flex .f_left, #ind_about .flex .f_right{width: 100%;}
#ind_about .flex .f_right img{border-radius: 10px 10px 0 0;}
#ind_about .flex .f_left{border-radius: 0 0 10px 10px; padding: 60px 0;}
#ind_about .flex .f_left > p{width: 90%; margin: 0 auto;}
}
@media screen and (max-width: 600px){
#ind_about .wrapInner > .flex{margin-top: 25px !important;}
#ind_about .flex .f_left{padding: 40px 0;}
}



/* Index - service
==========================================================*/
#ind_service .h2ttl{color: #fff;}
#ind_service .h2ttl::before{content: "SERVICE"; color: #E63D20;}
#ind_service .flex .f_left{width: 40%;}
#ind_service .flex .f_right{width: 60%;}
#ind_service .flex .f_left{background-color: #fff; border-radius: 0 10px 10px 0;}
#ind_service .flex .f_left{flex-flow: column; justify-content: center;}
#ind_service .flex .f_left p.bold{font-size: 2.5rem; line-height: 1.68; letter-spacing: 0.05em;}
#ind_service .flex .f_right img{border-radius: 10px 0 0 10px;}
@media screen and (max-width: 860px){
#ind_service .wrapInner > .flex{flex-flow: column;}
#ind_service .flex .f_left, #ind_service .flex .f_right{width: 100%;}
#ind_service .flex .f_right img{border-radius: 10px 10px 0 0;}
#ind_service .flex .f_left{border-radius: 0 0 10px 10px; padding: 60px 0;}
#ind_service .flex .f_left > p{width: 90%; margin: 0 auto;}
}
@media screen and (max-width: 600px){
#ind_service .wrapInner > .flex{margin-top: 25px !important;}
#ind_service .flex .f_left p.bold{font-size: 1.4rem;}
#ind_service .flex .f_left{padding: 40px 0;}
}



/* Index - recruit
==========================================================*/
#ind_recruit{padding-bottom: 100px;}
#ind_recruit .h2ttl{color: #fff;}
#ind_recruit .h2ttl::before{content: "RECRUIT"; color: #E63D20;}
#ind_recruit .flex .f_left, #ind_recruit .flex .f_right{width: 50%;}
#ind_recruit .flex .f_left{background-color: #fff; border-radius: 10px 0 0 10px;}
#ind_recruit .flex .f_left{flex-flow: column; justify-content: center;}
#ind_recruit .flex .f_right img{border-radius: 0 10px 10px 0;}
#ind_recruit .flex .f_left p.bold{font-size: 2.5rem; line-height: 1.68; letter-spacing: 0.05em;}
@media screen and (max-width: 860px){
#ind_recruit .flex .f_left .imgwrap{width: 48%; margin: 0 auto;}
#ind_recruit .flex{flex-flow: column-reverse;}
#ind_recruit .flex .f_left, #ind_recruit .flex .f_right{width: 100%;}
#ind_recruit .flex .f_right img{border-radius: 10px 10px 0 0;}
#ind_recruit .flex .f_left{border-radius: 0 0 10px 10px; padding: 60px 0;}
#ind_recruit .flex .f_left > p{width: 90%; margin: 0 auto;}
}
@media screen and (max-width: 600px){
#ind_recruit .wrapInner > .flex{margin-top: 25px !important;}
#ind_recruit .flex .f_left p.bold{font-size: 1.4rem;}
#ind_recruit .flex .f_left{padding: 40px 0;}
}



/* Index - news
==========================================================*/
#ind_news{padding-bottom: 100px;}
#ind_news .h2ttl{color: #E63D20;}
#ind_news .h2ttl::before{content: "NEWS"; color: #19AADC;}
#ind_news .wrapInner > p{font-size: 2rem;}
.news_wrap li{border-top: 1px solid #000; padding: 20px;}
.news_wrap li:last-child{border-bottom: 1px solid #000;}
.news_wrap li .date{color: #19AADC; margin-right: 60px;}
@media screen and (max-width: 600px){
.news_wrap li{flex-flow: column;}
#ind_news .news_wrap{margin-top: 25px!important;}
#ind_news .wrapInner > p{font-size: 1.9rem;}
}



/* footer
==========================================================*/
#footerContainer .overwrap{padding: 70px 0;}
#footerContainer .overwrap .overwraipInner{width: 86%; margin: 0 auto;}
#footerContainer .overwrap .copy{font-size: 2.5rem; color: #fff; margin: 50px 0;}
#footerContainer .overwrap .contact_btn{display: flex; justify-content: center; width: 100%; max-width: 660px; height: 80px; margin: 0 auto; background-color: #fff; border-radius: 10px;}
#footerContainer .overwrap .contact_btn p{line-height: 80px; color: #E63D20; padding-left: 50px; font-size: 2.5rem;}
#footerContainer .overwrap .contact_btn p::before{content: ""; width: 30px; height: 22px; background: url(../images/common/mail_icon.svg)center center no-repeat; background-size: contain; position: absolute; top: 48%; left: 0; transform: translateY(-50%);}
#footerContainer .overwrap .tel{font-size: 4.5rem; color: #fff; font-style: italic; font-weight: 900; margin-top: 10px; letter-spacing: 0.08em;} 
#footerContainer .overwrap .tel span{font-size: 3.5rem;}
#footerContainer .overwrap .time{color: #fff; font-size: 1.8rem;}
#footerContainer .underwrap{padding: 20px 0;}
#footerContainer .underwrap p, #footerContainer .underwrap a{color: #fff; font-size: 1.2rem;}
@media screen and (max-width: 860px){
#footerContainer .overwrap .tel{font-size: 4rem;}
#footerContainer .overwrap .copy, #footerContainer .overwrap .contact_btn p{font-size: 2rem;}
#footerContainer .overwrap .time{font-size: 1.5rem;}
#footerContainer .overwrap .copy{margin: 30px 0;}
#footerContainer .overwrap .overwraipInner > .imgwrap{width: 160px; margin: 0 auto;}
}
@media screen and (max-width: 600px){
#footerContainer .overwrap .copy{font-size: 1.9rem;}
#footerContainer .overwrap .contact_btn p{font-size: 2.5rem;}
#footerContainer .overwrap .contact_btn{height: 60px;}
#footerContainer .overwrap .contact_btn p{line-height: 60px;}
#footerContainer .overwrap .tel span{font-size: 2.5rem;}
#footerContainer .overwrap .tel{font-size: 3.5rem; line-height: 1.2; margin-bottom: 15px; margin-top: 20px;}
#footerContainer .underwrap .flex-jus{flex-flow: column; text-align: center;}
#footerContainer .underwrap p{font-size: 0.9rem; margin-top: 5px;}
#footerContainer .underwrap a{font-size: 1.2rem;}
#footerContainer .overwrap .time{font-size: 1.8rem;}
}




/* ABOUT
==========================================================*/
.pdt180{padding-top: 180px;}
.kasou_h1ttl{font-size: 7.9rem; font-weight: 900; font-style: italic; z-index: 5; color: #fff; line-height: 1;}
.kasou_h1ttl::before{content: ""; font-size: 7.9rem; position: absolute; top: 6px; left: 50%; transform: translateX(-48%); z-index: -2; line-height: 1; color: #E63D20;}
.kasou_h1ttl_sub{font-size: 2rem; color: #fff; line-height: 1; margin-top: 20px; padding-bottom: 50px;}
#kasou-Container .h2ttl::before{left: 3px; transform: translateX(0%);}

.about_Page .kasou_h1ttl::before{content: "ABOUT"; color: #E63D20;}
.message_wrap .h2ttl::before{content: "MESSAGE"; color: #E63D20;}
.message_wrap .subttl{font-size: 1.4rem;}
.message_wrap .wrapInner{max-width: 1266px; width: 90%; margin-left: auto; background-color: #fff; border-radius: 10px 0 0 10px;}
.message_wrap .wrapInner > .flex-jus{width: 79%; margin: 0 auto;}
.message_wrap .wrapInner .f_left{width: 59%; color: #19AADC; padding: 42px 0 80px;}
.message_wrap .wrapInner .f_left .jp_ttl{color: #19AADC; margin: 30px 0; line-height: 1.5;}
.message_wrap .wrapInner .f_right{width: 39%; position: absolute; right: 0; bottom: 0;}
.message_wrap{z-index: 2;}
.message_wrap::before{content: ""; width: 100%; height: 250px; background-color: #E63D20; position: absolute; bottom: 0; z-index: -1;}

.about_Page .promise_wrap .kasou_h1ttl::before{content: "PROMISE"; color: #19AADC;}
.promise_wrap{z-index: -1; padding-top: 100px;}
.promise_wrap .wrapInner_over{max-width: 1166px; width: 90%; margin-right: auto; background-color: #fff; border-radius: 0 10px 10px 0; padding-top: 50px;}
.promise_wrap .wrapInner_over::before{content: ""; width: calc(100% + 20px); height: 100%; border-radius: 0 10px 10px 0; position: absolute; top: 20px; left: 0; background-color: #19AADC; z-index: -1;}  
.promise_wrap .wrapInner_over > .flex-jus{width: 83%; margin-left: auto;}
.promise_wrap .wrapInner_over .f_left{width: 45%;}
.promise_wrap .wrapInner_over .f_left .jp_ttl{font-size: 3.8rem; color: #19AADC; margin: 30px 0; line-height: 1.3;}
.promise_wrap .wrapInner_over .f_left p{font-size: 1.4rem; line-height: 2; letter-spacing: 0.03em; margin-top: 10px;}
.promise_wrap .wrapInner_over .f_right{width: 55%;}

.promise_wrap .wrapInner_under{margin-top: 80px; padding-bottom: 100px;}
.promise_wrap .wrapInner_under ul{max-width: 1210px; width: 90%; margin: 0 auto;}
.promise_wrap .wrapInner_under ul li{width: 18.5%; background-color: #fff; padding: 70px 0 30px; border-radius: 10px;}
.promise_wrap .wrapInner_under ul li::before{content: ""; width: 100%; height: 100%; background-color: #19AADC; position: absolute; top: 10px; left: 10px; z-index: -2; border-radius: 10px;}
.promise_wrap .wrapInner_under .num{font-size: 5rem; line-height: 70px; position: absolute; top: -35px; left: 50%; transform: translateX(-50%); background-color: #19AADC; color: #fff; width: 70px; height: 70px; border-radius: 100%;}
.promise_wrap .wrapInner_under .ttl{font-size: 2.8rem; line-height: 1; color: #19AADC;}
.promise_wrap .wrapInner_under .txt{font-size: 1.4rem; width: 62%; margin: 20px auto 0;}

.about_Page .company_wrap .kasou_h1ttl{color: #E63D20;}
.company_wrap .kasou_h1ttl_sub{color: #222326;}
.about_Page .company_wrap .kasou_h1ttl::before{content: "COMPANY"; color: #19AADC;}
.company_wrap .h2ttl{color: #E63D20;}
.company_wrap .h2ttl::before{content: "ACCESS"; color: #19AADC;}
.company_wrap{margin: 80px 0 100px;}
.company_wrap .wrapInner{max-width: 800px; width: 90%; margin: 0 auto;}
.company_wrap dl{flex-wrap: wrap;}
.company_wrap dl dt{width: 150px; border-top: 1px solid #000; padding: 25px 0;}
.company_wrap dl dd{width: calc(100% - 150px); border-top: 1px solid #000; padding: 25px 0;}
.company_wrap dl dt.last, .company_wrap dl dd.last{border-bottom: 1px solid #000;}
.company_wrap .access_wrap{margin-top: 50px;}
.gmap {height: 0; overflow: hidden; padding-bottom: 56.25%; position: relative; margin-top: 20px; border-radius: 20px;}
.gmap iframe { position: absolute; left: -5px; top: -5px; height: calc(100% + 5px); width: calc(100% + 5px); }

@media screen and (max-width: 1250px){
.message_wrap .wrapInner .f_left .txt br{display: none; text-align: justify;}
}
@media screen and (max-width: 1000px){
.promise_wrap .wrapInner_under ul{flex-wrap: wrap; justify-content: center;}
.promise_wrap .wrapInner_under ul li{width: 30%; margin: 9% 3% 0 0;}
.promise_wrap .wrapInner_under{margin-top: 30px;}
}
@media screen and (max-width: 860px){
.kasou_h1ttl,.kasou_h1ttl::before{font-size: 6rem;}
.kasou_h1ttl_sub{font-size: 1.6rem;}
.kasou_h1ttl::before {top: 4px;}
.pdt180 {padding-top: 120px;}
.message_wrap .wrapInner > .flex-jus{flex-flow: column; align-items: flex-end;}
.message_wrap .wrapInner .f_left{width: 100%; padding: 42px 0 0;}
.message_wrap .wrapInner .f_right{margin-top: 50px; width: 50%;position: static;}
.message_wrap .wrapInner .f_right .imgwrap img{transform: scale(1.5); transform-origin: top;}
.message_wrap .wrapInner{overflow: hidden;}

.promise_wrap .wrapInner_over > .flex-jus{width: 89%;}
.promise_wrap .wrapInner_over > .flex-jus{flex-flow: column; align-items: end;}
.promise_wrap .wrapInner_over .f_left{width: 90%; margin-right: auto;}
.promise_wrap .wrapInner_over .f_left .txt br{display: none;}
}
@media screen and (max-width: 600px){
.promise_wrap.pdt180{padding-top: 60px;}
.kasou_h1ttl::before {top: 2px;}
.kasou_h1ttl,.kasou_h1ttl::before{font-size: 3rem;}
.promise_wrap .wrapInner_under ul li{width: 100%; margin: 60px 0 0 0;}
.promise_wrap .wrapInner_under{margin-top: 30px;}
.message_wrap .wrapInner, .promise_wrap .wrapInner_over{width: 93%;}

.company_wrap dl dt{width: 75px;}
.company_wrap dl dd{width: calc(100% - 75px);}
.promise_wrap .wrapInner_under .num{font-size: 4rem;}
.promise_wrap .wrapInner_under .num{width: 60px; height: 60px; line-height: 60px;}
.promise_wrap .wrapInner_under ul li{padding: 60px 0 30px;}
.promise_wrap .wrapInner_over .f_left .jp_ttl{font-size: 3rem;}
.promise_wrap .wrapInner_over .f_right{width: 120%; margin-right: -20%;}
.promise_wrap .wrapInner_over{padding-top: 20px; overflow: hidden;}
.promise_wrap .wrapInner_under .txt{width: 80%;}

.message_wrap::before {height: 450px;}
}



/* SERVICE
==========================================================*/
.service_Page .kasou_h1ttl::before{content: "SERVICE"; color: #E63D20;}
.pagenav {max-width: 1166px; width: 90%; margin: 0 auto; margin-bottom: 50px;}
.pagenav ul{justify-content: center; background-color: #fff; padding: 20px 0; border-radius: 10px;}
.pagenav ul li{justify-content: center; max-width: 200px; width: 17%; border-left: 1px solid #19AADC;}
.pagenav ul li:last-child{border-right: 1px solid #19AADC;}
.pagenav ul li a{color: #19AADC;}

.service_item{padding-bottom: 100px;}
.service_item .wrapInner{max-width: 1166px; width: 90%; margin: 0 auto; border-radius: 10px; padding: 65px 0 70px;}
.service_item .ttl{font-size: 4rem; color: #19AADC;}
.service_item .subttl{font-size: 1.8rem;}
.service_item > .wrapInner > .border_tb, .service_item > .wrapInner > .tenpo_border{width: 83%; margin: 30px auto 20px; padding: 45px 0; border-top: 1px solid #19AADC; border-bottom: 1px solid #19AADC;}
.service_item .f_left{width: 67%;}
.service_item .f_right{width: 30%;}
.service_item .common_wrap{width: 83%; margin: 0 auto;}
.service_item .common_wrap .txt{font-size: 1.4rem; letter-spacing: 0}
.service_item .common_wrap .txt span{font-size: 1.8rem;}
.service_item .common_wrap .tel{font-size: 4.5rem; color: #19AADC; font-style: italic; font-weight: 900; margin-top: 10px; letter-spacing: 0.08em; line-height: 1;} 
.service_item .common_wrap .tel span{font-size: 3.5rem;}
.service_item .common_wrap .contact_btn{display: flex; justify-content: center; width: 100%; max-width: 660px; height: 80px; margin: 0 auto; background-color: #E63D20; border-radius: 10px;}
.service_item .common_wrap .contact_btn p{line-height: 80px; color: #fff; padding-left: 50px; font-size: 2.5rem;}
.service_item .common_wrap .contact_btn p::before{content: ""; width: 30px; height: 22px; background: url(../images/common/mail_icon_white.svg)center center no-repeat; background-size: contain; position: absolute; top: 48%; left: 0; transform: translateY(-50%);}
.service_item .common_wrap .f_left{width: 48%;}
.service_item .common_wrap .f_right{width: 52%;}
.service_item .common_wrap .flex-jus{margin-top: 20px;}

#houjin .f_left li{font-size: 2.4rem; line-height: 1.4;}
#houjin .f_left li:not(:last-child){margin-bottom: 15px;}
#houjin .f_left li span{font-size: 1.6rem; font-weight: normal; letter-spacing: 0;}

#tenpo.service_item{padding-top: 100px;}
#tenpo.service_item ul li > .f_left{width: 36%;}
#tenpo.service_item ul li > .f_right{width: 59%;}
#tenpo.service_item ul li > .f_right .flex-jus .f_left{width: 55%;}
#tenpo.service_item ul li > .f_right .flex-jus .f_right{width: 45%;}
#tenpo.service_item li .ttl{font-size: 3rem; color: #000;}
#tenpo.service_item .ttl span{font-size: 1.6rem;}
#tenpo.service_item ul li > .f_right .line{margin: 25px 0;}
#tenpo.service_item ul li > .f_right .flex-jus .f_left{font-size: 1.8rem; line-height: 1.5;}
#tenpo.service_item ul li > .f_right .flex-jus .f_left span{background-color: #19AADC; color: #fff;}
#tenpo.service_item > .wrapInner > .flex li .price{color: #19AADC;}
#tenpo.service_item > .wrapInner ul li:not(:last-child){margin-bottom: 50px;}
#tenpo.service_item > .wrapInner ul li .price p:nth-child(1){font-size: 6rem; font-style: italic; margin-left: auto; line-height: 1; color: #19AADC;}
#tenpo.service_item > .wrapInner ul li .price p:nth-child(2){font-size: 3.5rem; line-height: 1; margin-top: -12px; margin-left: 10px; color: #19AADC;}
#tenpo.service_item > .wrapInner ul li .price p:nth-child(2) span{font-size: 1.4rem;}
#tenpo.service_item > .wrapInner ul > p{font-size: 1.8rem; color: #19AADC;}
#tenpo.service_item > .wrapInner ul > p span{font-size: 1.4rem; color: #000; font-weight: normal;}

#kojin.service_item{padding-top: 100px;}
#kojin.service_item > .wrapInner > .flex{flex-wrap: wrap;}
#kojin.service_item > .wrapInner > .tenpo_border li{width: 30%; margin-bottom: 15px;}
#kojin.service_item > .wrapInner > .tenpo_border li:not(:nth-child(3n)){margin-right: 6%;}
#kojin.service_item > .wrapInner > .tenpo_border li .ttl{font-size: 2.5rem; color: #000; margin: 15px 0; line-height: 1.3;}
#kojin.service_item > .wrapInner > .tenpo_border li .copy{font-size: 1.3rem; color: #000; letter-spacing: 0;}
#kojin.service_item > .wrapInner > .tenpo_border li .small{font-size: 1.1rem; color: #000; letter-spacing: 0;}

#kojin.service_item > .wrapInner > .tenpo_border li .price{color: #19AADC; margin: 10px 0 20px;}
#kojin.service_item > .wrapInner > .tenpo_border li .price p:nth-child(1){font-size: 4rem; font-style: italic; margin-left: auto; line-height: 1;}
#kojin.service_item > .wrapInner > .tenpo_border li .price p:nth-child(2){font-size: 2.5rem; line-height: 1.2; margin-top: -18px; margin-left: 10px;}
#kojin.service_item > .wrapInner > .tenpo_border li .price p:nth-child(2) span{font-size: 1.2rem;}
#kojin.service_item > .wrapInner > .tenpo_border .price_wrap{margin-bottom: 30px;}

.line{width: 100%; border-top: 1px dashed #000;}
#kojin.service_item > .wrapInner > .tenpo_border li .subttl{font-size: 1.6rem; line-height: 1.5;}
#kojin.service_item > .wrapInner > .tenpo_border li .subttl span{font-size: 1.4rem; font-weight: normal;}
#kojin.service_item > .wrapInner > .tenpo_border li .subprice p:nth-child(1){font-size: 3rem;}
#kojin.service_item > .wrapInner > .tenpo_border li .subprice p:nth-child(2){font-size: 2rem;}
#kojin.service_item > .wrapInner > .tenpo_border li .subprice p:nth-child(2) span{font-size: 1.2rem;}
#kojin.service_item > .wrapInner ul li.amido .price:nth-child(1)::before{content: "大"; font-size: 2rem; position: absolute; top: 7px; left: 0; color: #000;} 
#kojin.service_item > .wrapInner ul li.amido .price.p02::before{content: "小"; font-size: 2rem; position: absolute; top: 7px; left: 0; color: #000;} 
#kojin.service_item > .wrapInner > .tenpo_border li .price p.normal{font-size: 1.4rem; font-style: normal; margin-left: 0; color: #434343; line-height: 1.3;}
#kojin.service_item > .wrapInner > .tenpo_border li .price p.jp{font-size: 2.5rem; font-style: normal;}

.area_wrap{background-color: #fff; padding: 100px 0;}
.area_wrap .wrapInner{max-width: 966px; width: 90%; margin: 35px auto 0; padding: 70px 0; border-top: 1px solid #19AADC; border-bottom: 1px solid #19AADC;}
.area_wrap .wrapInner .f_left{width: 36%;}
.area_wrap .wrapInner .f_right{width: 55%;}
.area_wrap .wrapInner .f_right dt{font-size: 2.5rem; font-weight: bold; line-height: 1; margin-bottom: 15px; color: #19AADC;}
.area_wrap .wrapInner .f_right dd{font-size: 1.6rem; line-height: 1.5; margin-bottom: 15px; margin-bottom: 30px;}
.area_wrap .wrapInner .f_right dd:last-child{margin-bottom: 0;}
.h2ttl_jp{font-size: 4rem; line-height: 1.3; color: #19AADC;}

@media screen and (max-width: 1160px){
#kojin.service_item > .wrapInner > .tenpo_border li .price.column{flex-flow: column;}
#kojin.service_item > .wrapInner > .tenpo_border li .price.column p.normal{margin-bottom: 15px;}
}
@media screen and (max-width: 1130px){
.service_item .common_wrap .tel{font-size: 3.5rem;}
.service_item .common_wrap .tel span{font-size: 2.5rem;}
.service_item .common_wrap .f_right{width: 50%;}
.service_item .common_wrap .contact_btn{height: 70px; font-size: 2.1rem;}
.service_item .common_wrap .contact_btn p{line-height: 70px;}

#tenpo.service_item li .ttl{font-size: 2.4rem; line-height: 1.4;}
#tenpo.service_item ul li > .f_right .intro{font-size: 1.4rem;}
#tenpo.service_item ul li > .f_right .flex-jus .f_left{font-size: 1.4rem;}
#tenpo.service_item > .wrapInner ul li .price p:nth-child(1){font-size: 4rem;}
#tenpo.service_item > .wrapInner ul li .price p:nth-child(2){font-size: 2.5rem;}
#tenpo.service_item > .wrapInner ul li .price p:nth-child(2) span{font-size: 1.2rem;}
}
@media screen and (max-width: 860px){
.service_item .common_wrap .flex-jus{flex-flow: column; align-items: center;}
.service_item .common_wrap .f_left{width: auto;}
.service_item .common_wrap .f_right{width: 100%; margin-top: 20px;}
.service_item .common_wrap .tel{margin-top: 0;}
.service_item .common_wrap .contact_btn p{font-size: 2rem;}

#tenpo.service_item ul li > .f_right > .flex-jus{flex-flow: column; justify-content: space-between;}
#tenpo.service_item ul li > .f_right .flex-jus .f_left{width: 100%;}
#tenpo.service_item ul li > .f_right .flex-jus .f_right{width: auto;}
#tenpo.service_item ul li > .f_right .flex-jus .f_left{margin-bottom: 15px;}
}
@media screen and (min-width: 769px){
#kojin.service_item > .wrapInner > .tenpo_border .price_wrap{display: flex !important;}
}
@media screen and (max-width: 768px){
.h2ttl_jp{font-size: 3rem;}
.service_item .ttl{font-size: 3rem; line-height: 1.2; margin-bottom: 10px;}
.service_item .subttl{font-size: 1.6rem; width: 90%; margin: 0 auto;}
.service_item .wrapInner ul{flex-wrap: wrap;}
.service_item .f_left, .service_item .f_right{width: 100%;}

#houjin .f_left li, #tenpo.service_item li .ttl, #kojin.service_item > .wrapInner > .tenpo_border li .ttl{font-size: 2rem;}
#houjin.service_item > .wrapInner > .flex-jus{flex-flow: column-reverse;}
#houjin.service_item > .wrapInner > .flex-jus > .f_left{margin-top: 35px;}
#houjin .f_left li span{font-size: 1.3rem;}

#tenpo.service_item .ttl span{font-size: 1.4rem;}
#tenpo.service_item > .wrapInner ul li{flex-flow: column;}
#tenpo.service_item ul li > .f_left, #tenpo.service_item ul li > .f_right{width: 100%;}
#tenpo.service_item ul li > .f_right{margin-top: 35px;}
#tenpo.service_item ul li > .f_right .flex-jus .f_left br{display: none;}

#kojin.service_item > .wrapInner > .tenpo_border li{width: 100%;}
#kojin.service_item > .wrapInner > .tenpo_border li:not(:nth-child(3n)){margin-right: 0;}
#kojin.service_item > .wrapInner > .tenpo_border li .ttl{margin: 28px 0 5px;}
#kojin.service_item > .wrapInner > .tenpo_border .price_wrap{display: none;}
#kojin.service_item > .wrapInner > .tenpo_border li .price{margin: 10px 0;}
#kojin.service_item > .wrapInner > .tenpo_border li{margin-bottom: 50px;}
#kojin.service_item > .wrapInner ul li.amido .price:nth-child(1)::before {top: 8px;}
#kojin.service_item > .wrapInner ul li.amido .price:last-child::before {top: 8px;}
#kojin.service_item > .wrapInner > .tenpo_border li .price.column{flex-flow: row;}
#kojin.service_item > .wrapInner > .tenpo_border li .price.column p.normal{margin-bottom: 0; font-size: 1.2rem;}
/* #kojin.service_item > .wrapInner > .tenpo_border li .price.column p.normal br{display: none;} */

.area_wrap .wrapInner .f_right dt{font-size: 2rem;}
.area_wrap .wrapInner .f_right dd{font-size: 1.4rem;}
}
@media screen and (max-width: 600px){
.h2ttl_jp{font-size: 2.1rem;}
.pagenav ul{flex-flow: column; align-items: center; padding: 13px 0;}
.pagenav ul li{border-left: none; width: 100%; max-width: 100%; font-size: 1.9rem;} 
/* .pagenav ul li:first-child::before{content: ""; width: 15px; height: 12px; background: url(../images/common/triangle.svg)center center no-repeat; background-size: contain; position: absolute; top: 5px; right: 20px;} */
.pagenav .trigger{top: 20px; right: 20px; cursor: pointer; transition: all .4s;}
.pagenav ul li:last-child{border-right: none; border-bottom: none;}
.pagenav ul li:not(:first-child){display: none;}
.pagenav.active ul li:not(:last-child){margin-bottom: 10px;}
.trigger.active{transform: rotate(180deg); transform-origin: center center; transition: all .4s; top: 16px;}
#tenpo.service_item > .wrapInner ul > p{font-size: 1.4rem; line-height: 1.4;}
#tenpo.service_item > .wrapInner ul > p span{font-size: 1.2rem; line-height: 1.4;}
.service_item .common_wrap .tel{font-size: 3rem;}
.service_item .ttl{font-size: 2.1rem;}
.service_item .wrapInner{padding: 35px 0 45px;}
.area_wrap, .area_wrap .wrapInner{padding: 50px 0;}
.area_wrap .wrapInner .flex-jus{flex-flow: column;}
.area_wrap .wrapInner .f_left{width: 50%; margin: 0 auto;}
.area_wrap .wrapInner .f_right{width: 100%; margin-top: 30px;}
.service_item .common_wrap .tel span{font-size: 1.8rem;}
#kojin.service_item > .wrapInner > .tenpo_border li{margin-bottom: 0;}
.sp-mt20{margin-top: 20px !important;}
.service_item > .wrapInner > .border_tb, .service_item > .wrapInner > .tenpo_border, .service_item .common_wrap {width: 90%;}
}
@media screen and (max-width: 420px){
.area_wrap .wrapInner .f_left{width: 80%; margin: 0 auto;}
}







/* recruit
==========================================================*/
.recruit_Page{margin-bottom: 10px;}
.recruit_Page .kasou_h1ttl::before {content: "RECRUIT"; color: #E63D20;}
.recruit_wrap{max-width: 1166px; width: 90%; margin: 0 auto; border-radius: 10px; padding-bottom: 100px;}
.recruit_wrap .wrapInner{width: 100%; margin: 0 auto; padding:65px 17% 95px; border-radius: 10px; box-sizing: border-box; background-color: #fff;}
.recruit_wrap .wrapInner .copy{font-size: 4rem; line-height: 1.4; margin-top: 50px; padding: 80px 0; border-top: 1px solid #19AADC;}
.recruit_wrap .wrapInner dl dt{width: 100%; font-size: 2rem; font-weight: bold; padding-top: 30px; margin-bottom: 10px; border-top: 1px dotted #000;}
.recruit_wrap .wrapInner dl dd{width: 100%; margin-bottom: 25px;}
.recruit_wrap .wrapInner dl dd.last{border-bottom: 1px dotted #000; padding-bottom: 25px;}
.recruit_wrap dl dd p:not(:last-child) { margin-bottom: 20px; }

.recruit_ceo{display: flex; flex-wrap: wrap; margin-bottom: 20px;}
.recruit_ceo_txt{width: calc(70% - 30px);}
.recruit_ceo_img{margin-left: 30px; width: 30%; height: auto;}
@media screen and (max-width: 700px){
    .recruit_ceo_txt{width: 100%;}
    .recruit_ceo_img{margin-left: 0; width: 60%; margin-top: 20px;}
}



.affiliate_wrap{padding-top: 100px;}
.affiliate_wrap .wrapInner{max-width: 1166px; width: 90%; margin: 0 auto; border-radius: 10px; padding-bottom: 100px;}
.affiliate_wrap .wrapInner .box{width: 100%; margin: 0 auto; padding:65px 17% 95px; border-radius: 10px; box-sizing: border-box; background-color: #fff;}
.affiliate_wrap .wrapInner .box .txt_box{margin-top: 50px; padding: 80px 0; border-top: 1px solid #19AADC; border-bottom: 1px solid #19AADC; font-size: 2rem; line-height: 2.1;}
.recruit_Page .ctncopy{font-size: 3.6rem; color: #19AADC; margin: 60px 0 30px;}
.recruit_Page .contact_btn{display: flex; justify-content: center; width: 100%; max-width: 660px; height: 80px; margin: 0 auto; background-color: #E63D20; border-radius: 10px; margin-top: 35px;}
.recruit_Page .contact_btn p{line-height: 80px; color: #fff; padding-left: 50px; font-size: 2.5rem;}
.recruit_Page .contact_btn p::before{content: ""; width: 30px; height: 22px; background: url(../images/common/mail_icon_white.svg)center center no-repeat; background-size: contain; position: absolute; top: 48%; left: 0; transform: translateY(-50%);}
.recruit_Page .tel{font-size: 4.5rem; color: #19AADC; font-style: italic; font-weight: 900; letter-spacing: 0.08em;} 
.recruit_Page .tel span{font-size: 3.5rem;}
@media screen and (max-width: 860px){
.recruit_wrap .wrapInner{padding: 65px 5% 95px;}
.recruit_wrap .wrapInner .copy{font-size: 3rem;}
.recruit_Page .ctncopy{font-size: 2.5rem;}

.affiliate_wrap .wrapInner .box{padding: 65px 5% 95px;}
}
@media screen and (max-width: 600px){
.recruit_wrap .wrapInner{padding: 30px 5% 50px;}
.recruit_wrap .wrapInner .copy{font-size: 2rem; padding: 30px 0; margin-top: 20px;}
.recruit_wrap .wrapInner dl dt:first-child{border-top: none; padding-top: 0;}
.recruit_wrap .wrapInner dl dt{font-size: 1.4rem; margin-bottom: 0; padding-top: 10px;}
.recruit_wrap .wrapInner dl dd{font-size: 1.4rem; margin-bottom: 10px;}
.recruit_wrap .wrapInner dl dd.last{border-bottom: none;}

.recruit_Page .ctncopy{margin: 10px 0 10px; font-size: 1.8rem;}
.recruit_Page .tel{font-size: 3rem;}
.recruit_Page .tel span{font-size: 1.8rem;}
.recruit_Page .contact_btn{height: 60px; margin-top: 20px;}
.recruit_Page .contact_btn p{line-height: 60px;}

.affiliate_wrap .wrapInner .box{padding: 30px 5% 50px;}
.affiliate_wrap .wrapInner .box .txt_box{font-size: 1.5rem; padding: 30px 0 10px; margin-top: 20px; text-align: left; border-bottom:none; letter-spacing: 0;}
.recruit_Page .affiliate_wrap .ctncopy{margin-top: 25px;}
}
@media screen and (max-width: 420px){
.recruit_Page .time{text-align: left;}
}




/* privacy
==========================================================*/
.privacy_Page .kasou_h1ttl::before {content: "PRIVACY POLICY"; color: #E63D20; top: 5px; left: 48.5%; width: 100%;}
.privacy_wrap {max-width: 1166px; width: 90%; margin: 0 auto; padding-bottom: 100px;}
.privacy_wrap .wrapInner{width: 100%; margin: 0 auto; padding:65px 17% 95px; border-radius: 10px; box-sizing: border-box; background-color: #fff;}
.privacy_wrap .wrapInner dl dd{margin-bottom: 30px;}
@media screen and (max-width: 860px){
.privacy_wrap .wrapInner{padding: 65px 5% 95px;}
}
@media screen and (max-width: 600px){
.privacy_wrap .wrapInner{padding: 40px 5%;}
}
@media screen and (max-width: 1100px){
.privacy_wrap table th{ display: block; line-height: 1.5;padding-top: 0.5em;}
.privacy_wrap table td{ display: block; line-height: 1.5; }
}




/* contact
==========================================================*/



.red{color: #c81e1e;}

/* iOSでのデフォルトスタイルをリセット */
input[type="submit"],
input[type="button"] { border-radius: 0; -webkit-box-sizing: content-box; -webkit-appearance: button; -moz-appearance: button; appearance: button; border: none; -webkit-box-sizing: border-box; box-sizing: border-box; cursor: pointer; }
input[type="submit"]::-webkit-search-decoration,
input[type="button"]::-webkit-search-decoration { display: none;}
input[type="submit"]::focus,
input[type="button"]::focus { outline-offset: -2px; }
textarea{-webkit-box-shadow: none; box-shadow: none;}
/*フォーム スタイル　リセット*/ 
input[type="text"], input[type="tel"] { -webkit-appearance: none; -moz-appearance: none; appearance: none; padding: 0; border: none; border-radius: 0; outline: none; background: none; }
.contactform button,input[type="submit"] { -webkit-appearance: none; -moz-appearance: none; appearance: none; padding: 0; border: none; outline: none; background: transparent; -webkit-transition: all 0.3s ease 0s; transition: all 0.3s ease 0s;  }
select { -webkit-appearance: none; -moz-appearance: none; appearance: none; border: none; outline: none; background: transparent; }

/* セレクトボックス */
select::-ms-expand { display: none; }
select{ width: 100%; padding: 20px 0 20px 30px; font-size: 1.4rem; -webkit-box-shadow: none; box-shadow: none; -webkit-box-sizing: border-box; box-sizing: border-box; border: 1px solid #808080; border-radius: 5px; letter-spacing: 0.05em; }
.selectwrap div.flex dd{ margin-right: 30px; width: 90px; position: relative; }
.selectwrap div.flex dd::after{ content: ""; width: 8px; height: 24px; background: url(../images/common/select_arrow.svg) center center no-repeat; background-size: cover; position: absolute; top: 50%; right: 16px; -webkit-transform: translateY(-50%); transform: translateY(-50%); }
.selectwrap div.flex dd:nth-child(1){ width: 125px; }

/* チェックボックス */
input[type="checkbox"]{ display: none; }
.privacycheck label{ padding-left: 30px !important; position: relative;}
.privacycheck label::before{ content: ""; width: 12px; height: 12px; border: 1px solid #4c4c4c; position: absolute; top: 1px; left: 0; -webkit-transition:all .4s; transition:all .4s;}
.privacycheck label::after{ content: ""; width: 8px; height: 8px; position: absolute; top: 4px; left: 3px; background-color: #4372ab; -webkit-transition:all .4s; transition:all .4s; opacity: 0; }
input[type="checkbox"]:checked + .check::after { opacity: 1; }

/*ラジオボタン スタイル*/ 
#firstBox01.occupationwrap dd{text-align: left; margin-top: 60px;}
#firstBox02{margin-bottom: 30px;}
.occupationwrap dd input{ width: auto!important; }
.occupationwrap dd label{ padding-left: 40px!important; position: relative; }
.occupationwrap dd label:not(:last-child){margin-right: 35px;}
input[type="radio"] { display: none; }
.occupationwrap dd label::before{ content: ""; width: 30px; height: 30px; border-radius: 50%; background-color: #F0F0F0; position: absolute; top: -6px; left: 0; -webkit-transition:all .4s; transition:all .4s;}
.occupationwrap dd label::after{ content: ""; width: 15px; height: 15px; background-position: center center; background-color: #19AADC; position: absolute; top: 2px; left: 8px; border-radius: 50%; -webkit-transition:all .4s; transition:all .4s; opacity: 0; }
input[type="radio"]:checked + .radio::after {opacity: 1;}

/* フォームスタイル */
.contactform .form_wrap dl:not(:last-child){margin-bottom: 30px;}
.contactform .form_wrap dl dt{width: 100%;}
.contactform .form_wrap dl dd{width: 100%; margin-top: 10px;}
.contactform .form_wrap dl dd input, .contactform .form_wrap dl dd textarea { width: 100%; padding: 20px; font-size: 1.5rem; -webkit-box-shadow: none; box-shadow: none; -webkit-box-sizing: border-box; box-sizing: border-box; letter-spacing: 0.15em; line-height: 1.5; background-color: #F0F0F0; border-radius: 5px; border: none;}
.contactform .form_wrap dl dd textarea {height: 280px;}

.contact_Page .kasou_h1ttl::before {content: "CONTACT"; color: #E63D20;}
.contact_wrap{padding-bottom: 100px;}
.contact_wrap .wrapInner{max-width: 1166px; width: 90%; margin: 0 auto; border-radius: 10px; padding: 80px 0; background-color: #fff;}
.contact_wrap .wrapInner .formwrap{max-width: 800px; width: 90%; margin: 0 auto; }
.contact_wrap .wrapInner .formwrap > p{font-size: 2rem;}
.form_wrap .flex-jus .f_left, .form_wrap .flex-jus .f_right{width: 48%;}
form{border-top: 1px solid #19AADC; border-bottom: 1px solid #19AADC; padding: 50px 0; margin-top: 50px;}
.address input[type="text"]{max-width: 300px; width: 62% !important;}
.address input[type="button"]{max-width: 130px; width: 38%; background-color: #19AADC !important; color: #fff; margin-left: 20px;}

input[type="submit"] {font-size: 1.5rem; color: #fff; width: 100%; height: 100%;} 
.submitwrap{width: 300px; height: 60px; background-color: #19AADC; margin: 0 auto; margin-top: 60px; border-radius: 5px;} 
#submit[disabled] {
cursor: not-allowed;
opacity: 0.5;
-webkit-transition: all 0.3s ease 0s;
transition: all 0.3s ease 0s;
}
#submit:hover{opacity: 0.5;}
.pp-txt a{color: #19AADC;}
.menu.occupationwrap dd{display: flex; flex-wrap: wrap;}
.menu.occupationwrap dd label{margin-bottom: 15px;}
.menu.occupationwrap dd label::before{top: 0;}
.menu.occupationwrap dd label::after{top: 7px;}

.thanks_Page .wrapInner p{width: 90%; margin: 0 auto;}
.thanks_Page .wrapInner p.small{font-size: 1.3rem; line-height: 1.5; margin-top: 30px;}
@media screen and (max-width: 600px){
.flex-jus.column{flex-flow: column;}
.flex-jus.column .f_left, .flex-jus.column .f_right{width: 100%;}
.flex-jus.column .f_right{margin-bottom: 30px;}
.thanks_Page .small{font-size: 1.1rem;}
.thanks_Page .small br{display: none;}
.submitwrap{width: 100%;}
}



/* 確認画面レイアウト */
.body-kakunin{padding: 115px 0;}
.contactcompsection{max-width: 800px; width: 90%; margin: 0 auto; color: #fff;}
.contactcompsection h3{text-align: center; display: none;}
.contactcompsection form{margin-top: 0; padding-bottom: 0;}
.contactcompsection .formTable{width: 100%;}
.contactcompsection th{width: 230px; border: 1px solid #fff; padding: 10px; box-sizing: border-box;}
.contactcompsection td{width: calc(100% - 230px); border: 1px solid #fff; padding: 10px; box-sizing: border-box;}
.contactcompsection input[type="submit"]{width: 300px; height: 60px; line-height: 60px; background-color: #fff; color: #19AADC; margin-left: 20px;}
.contactcompsection input[type="button"]{width: 300px; height: 60px; line-height: 60px; background-color: #acacac; color: #fff; font-size: 1.5rem;}
.contactcompsection .submitwrap{flex-flow: row-reverse; width: 100%; justify-content: center; margin-top: 20px;}
@media screen and (max-width: 700px){
.body-kakunin{padding: 80px 0 115px;}
.contactcompsection input[type="submit"]{display: block; margin-right: 0; width: 100%;}
.contactcompsection input[type="button"]{display: block; margin-top: 20px; width: 100%;}
.contactcompsection th{border-bottom: 1px dotted #fff; display: block; width: 100%;}
.contactcompsection td{border-top: none; display: block; width: 100%;}
.contactcompsection .submitwrap{flex-flow: column; margin-top: 80px;}
.contactcompsection input[type="submit"]{margin-left: 0;}
}


/* エラーボックス */
.error_box { display: none; width: 100%; text-align: center; box-sizing: border-box; border: 1px solid #e92b2b; color: #c81e1e; padding: 25px 20px; margin: 40px auto 20px; font-size: 1.4rem; line-height: 2; background-color: #fff;}

@media screen and (max-width: 600px){
    .contact_wrap .wrapInner{padding: 30px 0;}
    form{margin-top: 30px; padding: 30px 0;}
    .contact_wrap .wrapInner .formwrap > p{font-size: 1.6rem;}
    .occupationwrap dd label{display: block; text-align: left;}
    .occupationwrap dd label:not(:last-child){margin-bottom: 15px;}
    .occupationwrap.select{border-bottom: 1px solid #19AADC; padding-bottom: 30px;}
    .occupationwrap.mt50{margin-top: 20px !important;}
    .contactform .form_wrap dl dd input, .contactform .form_wrap dl dd textarea{padding: 15px 20px;}
    .address input[type="button"]{margin-left: 15px; width: calc(38% - 15px) !important; box-sizing: border-box; font-size: 1.3rem!important;} 
}




/* 2021.08.19 css追加 */
.follow_wrap{align-items: center; justify-content: center; color: #fff; padding-top: 55px;}
.follow_wrap p{font-size: 3rem; font-style: italic; font-weight: 900; letter-spacing: 0.08em;}
.follow__line{width: 30px; height: 1px; background: #fff; margin: 0 18px;}
@media screen and (max-width: 600px){
    .follow_wrap p{font-size: 2.5rem;}
}


