@charset "UTF-8";
@import url('https://fonts.googleapis.com/css2?family=Barlow+Condensed&family=Source+Sans+Pro:wght@300;400&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@300;400;500&display=swap');



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

/* Base Setting
==========================================================*/
body { font-family: 'Barlow Condensed',"游ゴシック", "Yu Gothic", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", "Osaka", "ＭＳ Ｐゴシック", "MS PGothic",  Helvetica, Arial, sans-serif; margin:0; padding: 0; -webkit-text-size-adjust: 100%; letter-spacing: 0.15em; font-weight: 500; overflow-x: hidden; line-height: 1.75; font-feature-settings: "palt" 1; color: #003b6c;}
html{font-size: 15px;}
@media screen and (max-width: 600px){
  html{font-size: 13px;}
}

a{ text-decoration: none; color: #fff; outline:none;-webkit-transition: all 0.3s;-moz-transition: all 0.3s;transition: all 0.3s;}
a.underline{ text-decoration: underline; }
a:focus,a:hover { text-decoration: none; cursor: pointer;}
:focus { outline: 0; }
::selection { background: #003b6c; color: #E9E9E9;}
* {box-sizing: border-box;}
.imgwrap{line-height: 0;}

body{width: 100vw; height: auto;}

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

/* ハック
==========================================================*/
@media screen and (min-width: 1501px){
	.show1500{display: none;}
	.hide1500{display: block;}
	.show1500hide1000{display: none;}
}
@media screen and (max-width: 1500px){
	.show1500{display: block;}
	.hide1500{display: none;}
	.show1500hide1000{display: block;}
}
@media screen and (min-width: 1051px){
	.show1050{display: none;}
	.hide1050{display: block;}
}
@media screen and (max-width: 1050px){
	.show1050{display: block;}
	.hide1050{display: none;}
}
@media screen and (min-width: 1001px){
	.show1000{display: none;}
	.hide1000{display: block;}
	.show1000-inline{display: none;}
	.hide1000-inline{display: inline;}
	.hide1000-flex{display: flex;}
}
@media screen and (max-width: 1000px){
	.show1000{display: block;}
	.hide1000{display: none;}
	.show1000-inline{display: inline;}
	.hide1000-inline{display: none;}
	.hide1000-flex{display: none;}
	.show1500hide1000{display: none}
}
@media screen and (min-width: 961px){
	.show960{display: none!important;}
	.hide960{display: block;}
	.show960-inline-b{display: none;}
	.hide960-inline{display: inline;}
	.hide960-flex{display: flex;}

}
@media screen and (max-width: 960px){
	.show960{display: block!important;}
	.hide960{display: none!important;}
	.show960-inline-b{display: inline-block!important;}
	.show960-inline{display: inline;}
	.hide960-inline{display: none;}
	.hide960-flex{display: none;}

}
@media screen and (min-width: 861px){
	.show860{display: none!important;}
	.hide860{display: block;}
	.show860-inline-b{display: none;}
	.hide860-inline{display: inline;}
	.hide860-flex{display: flex;}

}
@media screen and (max-width: 860px){
	.show860{display: block!important;}
	.hide860{display: none!important;}
	.show860-inline-b{display: inline-block!important;}
	.show860-inline{display: inline;}
	.hide860-inline{display: none;}
	.hide860-flex{display: none;}

}
@media screen and (min-width: 601px){
	.show600{display: none;}
	.hide600{display: block;}
	.show600-inline{display: none;}
	.hide600-inline{display: inline;}
}
@media screen and (max-width: 600px){
	.show600{display: block;}
	.hide600{display: none;}
	.show600-inline{display: inline;}
	.hide600-inline{display: none;}
}
@media screen and (min-width: 451px){
	.show450{display: none;}
	.hide450{display: block;}
}
@media screen and (max-width: 450px){
	.show450{display: block;}
	.hide450{display: none;}
}


/* カラーパレッド
==========================================================*/
.txc_K{color: #000}
.txc_W{color: #fff;}


/* font
==========================================================*/
.fn_size10{font-size: 0.714em}.fn_size12{font-size: 0.857em;}.fn_size13{font-size: 0.929em;}.fn_size15{font-size: 1.071em;}.fn_size16{font-size: 1.143em;}.fn_size17{font-size: 1.214em;}.fn_size18{font-size: 1.286em;}.fn_size20{font-size: 1.429em}.fn_size21{font-size: 1.5em;}.fn_size22{font-size: 1.57em;}.fn_size24{font-size: 1.714em;}.fn_size25{font-size: 1.786em;}.fn_size27{font-size: 1.929em;}.fn_size28{font-size: 2em;}.fn_size29{font-size: 2.071em;}.fn_size30{font-size: 2.143em}.fn_size32{font-size: 2.286em;}.fn_size33{font-size: 2.357em;}.fn_size60{font-size: 4.286em;}
.font_ssp{font-family: 'Source Sans Pro';}
.FW_R{font-weight: 400;}
.FW_light{font-weight:300!important}


/* その他
==========================================================*/
.w100,.w90,.w60,.w80,.w75,.w70,.w60,.w55,.w50,.w50ma,.w35{-webkit-transition: all 0.3s;-moz-transition: all 0.3s;transition: all 0.3s;}
.w100{width: 100%;margin: 0 auto;}
.w90{width: 90%;margin: 0 auto;}
.w80{width: 80%;margin: 0 auto;}
.w75{width: 75%;margin: 0 auto;}
.w70{width: 70%;margin: 0 auto;}
.w60{width: 60%;margin: 0 auto;}
.w55{width: 55%;}
.w50{width: 50%;}
.w50ma{width: 50%;margin: 0 auto;}
.w35{width: 35%;}
.inline-b{display: inline-block;}

@media screen and (max-width: 1200px){
	.w50{width: 65%;}
}
@media screen and (max-width: 1000px){
	.w90,.w60,.w80,.w75,.w70,.w60{width: calc(100% - 100px);}
	.w50{width: 80%;}
	.mt190{margin-top: 150px!important;}
	.mt130{margin-top: 75px!important;}
	.mt60{margin-top: 40px!important;}
	.sp_w100{width: 100%;}
	.sp_w50{width: 50%;}
}
@media screen and (max-width: 860px){
	.mb50{margin-bottom: 10px!important;}
}
@media screen and (max-width: 600px){
	.w90{width: calc(100% - 25px);}
	.w90,.w60,.w80,.w75,.w70,.w60,.w50{width: calc(100% - 50px);}
}


/*ボタン
==========================================================*/
.btn{ max-width: 300px; position: relative;display: inline-block;margin: 0 auto;padding: 10px 90px;box-sizing: border-box;font-size: 1.57em;font-weight: 300; letter-spacing: 0.2em; color: #003b6c; border: 1px solid #003b6c;-webkit-transition: all 0.3s;-moz-transition: all 0.3s;transition: all 0.3s;}
#contact .btn{color: #fff; border: 1px solid #fff;display: block;}
#contact .btn:hover{color: #003b6c;background-color: #fff;}

#instagram .btn:hover{color: #fff;background-color: #003b6c;}
#instagram .btn::after{content: ''; width: 7px;height: 7px;border-top: 1px solid #003b6c;border-right: 1px solid #003b6c;position: absolute;top: 45%; right: 25px; transform: rotate(45deg) translateY(-45%);}
#instagram .btn:hover::after{border-color: #fff;}

/*IE用*/
@media all and (-ms-high-contrast: none){
	.btn{padding: 17px 70px 12px 70px;}
}

@media screen and (max-width: 860px){
}
@media screen and (max-width: 600px){
	.btn{width: 100%; padding: 10px 40px;}
	.btn::after{right: 45px;}
}


/* menu
==========================================================*/
.main_h {position: fixed;z-index: 999;width: 100%;background: none;overflow: hidden;-webkit-transition: all 0.3s;-moz-transition: all 0.3s;transition: all 0.3s;opacity: 0;top: -100px;}
.main_h a{;-webkit-transition: all 0.4s;transition: all 0.4s;}
.main_h a:hover{opacity: .6;}

.menu-trigger {display: none;cursor: pointer;position: absolute;top: 35px;right: 40px; width: 30px;-webkit-transition: all 0.3s;-moz-transition: all 0.3s;transition: all 0.3s;}
.menu-trigger span {width: 30px;height: 2px;margin-bottom: 7.5px;background: #fff;display: block;transition: all 0.4s;}
.active .menu-trigger span:nth-of-type(1){-webkit-transform:translateY(9px) rotate(-45deg);transform:translateY(9px) rotate(-45deg);}
.active .menu-trigger span:nth-of-type(2){opacity:0}
.active .menu-trigger span:nth-of-type(3){-webkit-transform:translateY(-10px) rotate(45deg);transform:translateY(-10px) rotate(45deg);}
.active .logo{color: #003b6c;}
.active .menu-trigger span{background-color: #003b6c;}
.active nav ul a{color: #003b6c;}
.sticky {opacity: 1;top: 0px;}
.logo {display: block;margin-top: 0;line-height: 1.35em;letter-spacing: 0.2em; color: #fff; -webkit-transition: all 0.3s;-moz-transition: all 0.3s;transition: all 0.3s}
nav {width: 100%; float: right;}
nav ul {overflow: hidden;text-align: right;float: right;padding: 40px 70px 40px 0;-webkit-transition: all 0.3s;-moz-transition: all 0.3s;transition: all 0.3s}
nav ul li {margin-left: 60px;display: inline-block;line-height: 1.5;-webkit-transition: all 0.3s;-moz-transition: all 0.3s;transition: all 0.3s}
nav ul a {color: #fff;text-transform: uppercase;font-size: 1.143em;}
.row {width: 100%;margin: 0 auto; position: fixed;display: flex;-webkit-transition: all 0.3s;-moz-transition: all 0.3s;transition: all 0.3s;}
.navber{position: absolute;margin-top: 15px; padding-left: 70px;z-index: 9;background-color: rgba(255, 255, 255, 0);-webkit-transition: all 0.3s;-moz-transition: all 0.3s;transition: all 0.3s;}
.nav_bg .row{background-color: rgba(255, 255, 255, 0.98);}
.nav_bg .menu-trigger span {background: #003b6c;}
.nav_bg .logo{color: #003b6c;}
.nav_bg nav ul a{color: #003b6c;}
.nav_bg nav ul {width: 100%;padding: 25px 70px 25px 0; float: right;}

@media only screen and (max-width: 1150px) {
	nav ul li {margin-left: 25px;}
}
@media only screen and (max-width: 1050px) {
	.row{display: block;background-color: rgba(255, 255, 255, 0);}
	.nav_bg .row{background-color: rgba(255, 255, 255, 0);}
	.logo{width: 100px}
	nav {height: 100vh;padding: 0; opacity: 0;position: relative;background-color: rgba(255, 255, 255, 1);}
	nav ul {padding: 0;text-align: center;width: 100%;position: absolute;top: 50%;transform: translateY(-50%);}
	nav ul li {width: 100%;padding: 10px 0;margin: 0;}
	nav ul a {font-size: 1.5em;font-weight: 500}
	.active nav {opacity: 1;position: relative;}
	.menu-trigger {display: block;top: 25px;}
	.navber{width: 100vw;margin-top: 0; padding: 10px 0 10px 40px;background-color: rgba(255, 255, 255, 0);}
	.nav_bg .navber{background-color: rgba(255, 255, 255, 0.98);}
	.nav_bg nav ul {padding: 0;}
}
@media only screen and (max-width: 860px) {
	.main_h a:hover{opacity:1;}
}
@media only screen and (max-width: 600px) {
	.menu-trigger {top: 20px;right: 25px;}
	.navber{padding-left: 25px;}
}


/* footer
==========================================================*/
#footer{background-color: #003b6c;padding: 65px 0 70px;}
#footerContainer{align-items: flex-end;}
#footerContainer .footer_flex_containar_l,#footerContainer .footer_flex_containar_r{width: 50%;}
.footermenu{margin-bottom: 38px; justify-content: flex-end;}
.footermenu a{letter-spacing: 0.15em;-webkit-transition: all 0.3s;-moz-transition: all 0.3s;transition: all 0.3s;}
#footer a:hover{opacity: 0.6}
.footermenu li{margin-left: 20px; font-size: 0.929em;}
.footermenu li:first-child{margin-left: 0;}
.footer_flex_containar_l .footerlogo{margin-bottom: 35px;}
.footer_flex_containar_l .footerlogo .logo{margin-bottom: 0; margin-left: 10px;color: #fff;}
.footerlogo .flex {align-items: center;}
.foot_pp{flex-wrap: wrap;font-weight: 300;justify-content: flex-end;}
.foot_pp div:first-child{text-decoration: underline;font-size: 0.929em;margin-bottom: 12px;}
.f_snslogo{ margin-bottom: 12px;margin-left: 20px;}
.f_snslogo img{margin-bottom: -2px; margin-left: 10px;}
.footer_adress{margin-top: 35px;}
.footer_adress p:first-child{margin-bottom: 10px;}


@media screen and (max-width: 860px){
	#footerContainer{flex-wrap: wrap;}
	#footerContainer .footer_flex_containar_r,#footerContainer .footer_flex_containar_l{width: 100%;text-align: center;}
	.footer_flex_containar_l .footerlogo{margin-bottom: 25px;}
	.footer_adress p:first-child{margin-bottom: 5px}
	.footermenu{margin-top: 25px; margin-bottom: 30px;}
	.footerlogo .logo{text-align: left;}
	.footerlogo a,.foot_pp,.footermenu{justify-content: center;}
	.foot_pp div:first-child{margin-bottom: 7px;}
	.f_snslogo{ margin-bottom: 7px;}
	.footer_adress{margin-top: 5px;}
}
@media screen and (max-width: 600px){
	.footermenu{flex-wrap: wrap;justify-content: center;padding: 0 calc((100% - 200px) / 2)}
	.footermenu li{width: 100px; margin-left: 0;margin-bottom: 10px;font-size: 1.1em;}
	.footermenu li:last-child{margin-bottom: 0;}
}


/*topへ戻るボタン*/
/*==========================================================*/
#page_top{width: 100px;height: 70px;margin:50px 10% 0 auto;display: block;}
.ptar{width: 100px; height: 70px;position: relative;}
.ptar::before{content: '';width: 100px;height: 70px;display: block;position: absolute;background-image: url("../images/common/toppage_box.png");background-repeat: no-repeat;background-size: 100px;}
.ptar::after{content: '';width: 14px;height: 13px;display: block;position: absolute;top: 22px; left: 32px; background-image: url("../images/common/toppage.svg?a");background-repeat: no-repeat;background-size: 14px;-webkit-transition: all 0.3s;-moz-transition: all 0.3s;transition: all 0.3s;}
.ptar:hover::after{top: 19px}

@media screen and (max-width: 1000px){
	#page_top{margin:50px 50px 0 auto;}
}
@media screen and (max-width: 860px){
	#page_top{display: none;}
}


/*index_common
==========================================================*/
.st_ttl h2,.flow_ttl h2,#instagram h2,.kasou_main .st_ttl h1{font-size: 2.857em;font-weight: 400;letter-spacing: 0.2em;line-height: 1;}
.st_ttl{width: 300px;margin: 0 auto 60px;padding: 30px 0; text-align: center;position: relative;}
.PP.st_ttl{width: 490px;}
.st_ttl::before{content: '';width: 13px;height: 13px;position: absolute;top: 0;left: 0; border-top: 1px solid #003b6c;border-left: 1px solid #003b6c;}
.st_ttl::after{content: '';width: 13px;height: 13px;position: absolute;bottom: 0;right: 0; border-right: 1px solid #003b6c;border-bottom: 1px solid #003b6c;}
.st_ttl.txc_W::before,.st_ttl.txc_W::after{border-color: #fff;}
.st_ttl h2,.kasou_main .st_ttl h1{padding-top: 5px;}
.kasou_main{margin-top: 200px;}

@media only screen and (max-width: 860px) {
	.flow_ttl h2,.st_ttl h2,.thanks .st_ttl h1{font-size: 2.3em;font-weight: 400;letter-spacing: 0.2em;line-height: 1;}
	.PP.st_ttl h1{font-size: 2.3em;}
	.st_ttl{width: 230px;margin: 0 auto 50px; padding: 10px 0; }
	.PP.st_ttl{width: 300px}
	.kasou_main{margin-top: 120px;}
}


/*index_mainvisual
==========================================================*/
#mainvisual {width: 100vw;height: 100vh;background-position:center center;background-size: cover;display: flex;align-items: center;justify-content: center;}
.ind_mainvisual__inr{position: relative;}
.mainvisual_txt{position: absolute;bottom: 20%;left: 70px;}
.mainvisual_txt h2{font-weight: 300;font-size: 5.3em;letter-spacing: 0.065em;}
.mv_txt_bgcW{color: #00233c;position: relative;left: 10px;z-index: 2;}
.mv_txt_bgcW::after{content: '';width: 200px;height: 80px;position: absolute;top: 13px;left: -10px;z-index: -1; background-color: white;}
.mv_scroll_wrap p{position: absolute; bottom: 75px; right: 20px;color: #fff;font-weight: 300;transform: rotate(90deg);z-index: 99;}
.mv_scroll{overflow: hidden; position: absolute; bottom: 0; right: 43px;height: 50px; width: 1px;z-index: 99;}
.mv_scroll:after{content:""; display: block; width: 1px; border-left:2px #fff solid; animation:scroll 4s ease 0s infinite normal;}
.top_mainv {position: absolute;text-indent: -100%;white-space: nowrap;overflow: hidden;}

@keyframes scroll{
	0%{height: 0;}
	50%{height: 60px; margin-top: 0;}
	100%{margin-top: 60px; height: 60px;}
}
@media only screen and (max-width: 1050px) {
	.mainvisual_txt{left: 40px;}
}
@media only screen and (max-width: 860px) {
  #mainvisual { height: 90vh;}
	.mainvisual_txt h2{font-size: 4.5em;}
	.mv_txt_bgcW::after{width: 175px;height: 70px;}
}
@media screen and (max-width: 600px){
	.mainvisual_txt h2{line-height: 1.2em;}
	.mainvisual_txt p{margin-top: 15px;}
	.mv_txt_bgcW::after{width: 155px;height: 54px;top: 11px;}
	.mv_scroll_wrap p{right: 10px;}
	.mv_scroll{right: 30px;}
}


/*index_斜め
==========================================================*/
#about,.bgc_W,.bgc_N,.flow_wrapper{position: relative;z-index: 0;}
#about{padding: 6% 0 15%;}
.bgc_W,.bgc_N,.flow_wrapper{padding: 3% 0 15%;}
#instagram{padding: 3% 0 7%;}
#about::after,.bgc_W::after,.bgc_N::after,.flow_wrapper::after{content: '';position: absolute;left:0;top: 0;transform: skewY(-8deg);transform-origin: bottom left;z-index: -2;width:100%;height:100%;}
#about::before{content: '';width: 120px;height: 100%; position: absolute;left:0;top: -51.5px;transform: skewY(16deg);transform-origin: bottom left;z-index: -1;background: #00233c;}
#about::after{background: -moz-linear-gradient(left, rgba(0,0,0,0) 119px, #003b6c 120px);background: -webkit-linear-gradient(left, rgba(0,0,0,0) 119px, #003b6c 120px);background: linear-gradient(to right, rgba(0,0,0,0) 119px, #003b6c 120px);right: 0;left: auto;}
.bgc_W::after{background:#fff;}
.bgc_N::after{background:#003b6c;}
.flow_wrapper::after{background: #e1e8ed;}

@media screen and (max-width: 1050px){
	#about{padding: 12% 0 22%;}
	.bgc_W,.bgc_N,.flow_wrapper{padding: 8% 0 22%;}
	#instagram{padding: 8% 0 10%;}
}
@media screen and (max-width: 860px){
	#about{padding: 10% 0 22%;}
	#instagram{padding: 8% 0 22%;}
}
@media screen and (max-width: 600px){
	#about{padding: 13% 0 30%;}
	.bgc_W,.bgc_N,.flow_wrapper,#instagram{padding: 15% 0 30%;}
}


/*index_about & index_service
==========================================================*/
#about h2,#service h2{font-size: 3.667em;font-weight: 400;letter-spacing: 0.2em}
#about .w90,#service .w90{max-width: 1200px; justify-content: space-between;align-items: flex-end;}
.as_txt{ width: 50%; max-width: 560px;}
.as_txt .flex_ttl{margin-bottom: 40px;align-items: baseline;}
.as_txt .bold{margin-bottom: 20px;font-size: 1.5em;align-items: flex-end;letter-spacing: 0.2em;}

@media screen and (max-width: 1260px){
	.as_txt .bold{font-size: 1.3em;}
}
@media screen and (max-width: 1050px){
	.as_txt .flex_ttl{margin-bottom: 15px;}
}
@media screen and (max-width: 960px){
  #about .flex,#service .flex { display: block;}
  .as_txt{ width: 100%; max-width: 100%; margin-bottom: 40px;}
  #about .w90, #service .w90 { width: 80%;}

	#about h2,#service h2{font-size: 3.2em;}
	.as_txt{width: 100%;}
	.as_txt .flex_ttl{margin-top: 0}
	.as_txt .bold{font-size: 1.3em;}
}


/*index_about
==========================================================*/
#about {margin-top: 15px;-webkit-transition: all 0.3s;-moz-transition: all 0.3s;transition: all 0.3s;}
#about .as_txt { order:1;}
#about .flex_ttl{justify-content: flex-end;}
#about .flex_ttl p{margin-right: 20px;}
.about_img{width: 45%;}
#about .about_logo { position: absolute; bottom: 0; right: 0;}
@media screen and (max-width: 1260px){
  #about .about_logo { right: 0;}
}

@media screen and (max-width: 960px){
	#about .as_txt{width: 100%;}
	.about_img{width: 100%;}
	.about_text p{margin-bottom: 0px;}
	.about_text.flex{display: flex;}
}
@media screen and (max-width: 600px){
	#about{margin-top: -75px}
  #about .about_logo { right: 9px; bottom: 110px; width: 60px;}
}


/*index_service
==========================================================*/
#service .flex_ttl h2{margin-right: 20px;}
#service .w90{flex-wrap: wrap-reverse;}
#service .as_txt { margin-top: 30px;}
.as_txt ul{list-style: square inside;font-size: 1.2em;}
.service_img_wrapper{width: 45%;}
/* .service_img{width: 45%;} */
/* .service_img01{width: 90%;margin: 0 0 0 auto;}
.service_img02{width: 70%; margin-top: -160px;margin-left: -30px;} */

@media screen and (max-width: 1050px){
	#service .as_txt{width: 45%;}
	/* .service_img_wrapper{width: 35%;} */
}
@media screen and (max-width: 960px){
	#service .as_txt{width: 100%; margin-top: 0;}
	.service_img_wrapper{width: 100%;}
	/* .service_img01{margin: 0 auto 0 0;}
	.service_img02{width: 45%;margin-right: 0;margin-left: auto;} */
}
/* @media screen and (max-width: 600px){
	.service_img02{margin-top: -100px;}
} */


/*index_flow
==========================================================*/
#flow{margin-bottom: 120px;}
#flow .w60{max-width: 1000px}
#flow .flow_ttl{width: 220px;margin: 0 auto;padding: 15px 40px;text-align: center;border-top: 1px solid #003b6c;border-bottom: 1px solid #003b6c;}
#flow ul{max-width: 900px;margin: 0 auto; justify-content: space-between;align-items: center;}
#flow ul li:nth-child(odd){margin-top: 40px;}
#flow ul li:nth-child(even) div{width: 10px ;height: 10px;border-top: 1px solid #85a1b9;border-right: 1px solid #85a1b9;transform: rotate(45deg);}
#flow ul li .flow_step{margin-bottom: -40px;letter-spacing: 0.3em;line-height: 1;}
#flow ul li .flow_step .fn_size25{padding-left: 3px;}
#flow ul li .flow_img{width: 200px;height: 200px;display: table-cell;vertical-align: middle;text-align: center; border-radius: 999px;background-color: #fff;}
#flow ul li .bold{margin-top: 15px}

@media(max-width:1400px) {
	#flow .w60{width: 80%;}
}
@media(max-width:1000px) {
	#flow .w60{width: calc(100% - 100px);max-width: 860px;}
	#flow ul li .flow_img{width: 150px;height: 150px;}
	#flow ul li .flow_img img{width: 60%}
	#flow ul li .flow_step{margin-bottom: -20px;}
	#flow ul li .flow_step .fn_size20{font-size: 1.143em;}
	#flow ul li .flow_step .fn_size25{font-size: 1.429em}
}
@media(max-width:860px) {
	#flow{margin-bottom: 80px;}
}
@media(max-width:750px) {
	#flow ul{ flex-wrap: wrap;justify-content: center}
	#flow ul li{width: 100%;display: flex;margin-bottom: 25px;align-items: center;}
	#flow ul li:nth-child(odd){margin-top: 0;justify-content: center;}
	#flow ul li:nth-child(even){width: 305px;margin-left:105px;}
	#flow ul li:last-child{margin-bottom: 0;}
	#flow ul li:nth-child(even) div{transform: rotate(135deg);}
	#flow ul li .bold{width: 160px; margin-top: 0;margin-left: 25px;text-align: left;}
}
@media(max-width:600px) {
	.flow_wrapper{width: calc(100% - 25px)}
	#flow .w60{width: calc(100% - 50px);}
	#flow .flow_ttl{width: 190px;}
	#flow ul li{width: 100%;display: flex;margin-bottom: 20px;}
	#flow ul li:nth-child(even){width: 295px;margin-left:0;padding-left: 55px;}
	#flow ul li .flow_img{width: 120px;height: 120px;}
	#flow ul li .bold{width: 150px;margin-left: 20px;}
}


/*index_company
==========================================================*/
#company table{width: 100%;margin-bottom: 30px;}
#company table tr{ border-top: 1px solid #6b8cb0;}
#company table tr:last-child{border-bottom: 1px solid #6b8cb0;}
#company table tr th{width: 20%; padding: 20px 0 20px 20px; border-top: 1px solid #6b8cb0;color: #6b8cb0;font-weight: bold;}
#company table tr td{width: 80%;padding: 20px 20px 20px 0;font-size: 1.071em}

@media(max-width:600px) {
	#company table tr th{width: 90px;padding: 15px 0 15px 15px;}
	#company table tr td{width: calc(100% - 90px);padding: 15px;}
}


/*index_recruit
==========================================================*/
.recruit_img{width: 100%; height: 300px;margin-bottom: 65px; background: url("../images/index/recruit.jpg?1015") no-repeat center;background-size: cover;}
/* #recruit .w70 p{margin-bottom: 65px;} */

@media(max-width:860px) {
	.recruit_img{height: 250px;margin-bottom: 50px; background: url("../images/index/recruit_sp.jpg?1015s") no-repeat center;background-size: cover;}
	/* #recruit .w70 p{margin-bottom: 50px;} */
}
@media(max-width:600px) {
	.recruit_img{height: 200px;margin-bottom: 30px;}
	/* #recruit .w70 p{margin-bottom: 40px;} */
}


/*index_instagram
==========================================================*/
#instagram .w60{max-width: 710px;}
#instagram h2{margin-top: 10px; font-size: 2.4em;color: #6a8ca9;}
#instagram ul{margin-top: 60px; margin-right: calc((100% - 90%) / -3);flex-wrap: wrap;}
#instagram ul li{width: 30%;margin-right: calc((100% - 90%) / 3);margin-bottom: 25px;}
.instagram_btn { margin-top: 60px; }

@media(max-width:600px) {
	#instagram ul{margin-top: 50px; margin-right: -3%;flex-wrap: wrap;}
	#instagram ul li{width: 47%;margin-right: 3%;margin-bottom: 15px;}
  .instagram_btn { margin-top: 40px; }
}


/* Kasou_contact
==========================================================*/
/* #contact { background-color: #003b6c; border-bottom: 1px solid #fff;} */
/* chrom用 */
@media screen and (-webkit-min-device-pixel-ratio: 0){
	.radio label::after,.checkbox label::after{ top: 1px;}
}
@media screen and (-webkit-min-device-pixel-ratio: 0) and (max-width:1000px){
	.radio label::after{ top: 5px;}
}
@media screen and (-webkit-min-device-pixel-ratio: 0) and (max-width:860px){
	.radio label::after{ top: 7px;}
	.checkbox label::after{ top: 4px;}
}
@media screen and (-webkit-min-device-pixel-ratio: 0) and (max-width:600px){
	.radio label::after{ top: 6px;}
	.checkbox label::after{ top: 3px;}
}
@media screen and (-webkit-min-device-pixel-ratio: 0) and (max-width:390px){
	.radio label::after{ top: 6px;}
	.checkbox label::after{ top: 3.5px;}
}
/* ie用 */
@media all and (-ms-high-contrast: none) and (max-width:1000px){
	.radio label::after{ top: 4px;}
}
@media all and (-ms-high-contrast: none) and (max-width:860px){
	.radio label::after{ top: 7px;}
	.checkbox label::after{ top: 4px;}
}
@media all and (-ms-high-contrast: none) and (max-width:600px){
	.radio label::after{ top: 6px;}
	.checkbox label::after{ top: 3px;}
}
/* chrom用 */
@media screen and (-webkit-min-device-pixel-ratio: 0) and (min-resolution: .001dpcm) {
	input::placeholder{font-size: 16px;}
	.input-area{vertical-align: middle;padding: 5px 10px 0;}
}
@-moz-document url-prefix() {
	.input-area{padding: 0 10px;}
}

.inner{margin: 0 auto;max-width: 860px;}
.contact-message {margin: 50px auto 0; text-align: center; line-height: 1.6em;}
.message-notice {color: #ff0000; font-size: 1.286em;}
.contact-area { margin: 50px auto 0;}
.contact-area .text {font-size: 1.286em; text-align: center; margin-bottom: 100px;}
.contact-table { width: 100%;}
.table-list {width: 100%;margin-bottom: 30px;display: table;letter-spacing: 0.1em;color: #fff;}
.namaes{display: flex;flex-wrap: wrap}
.namaes dl{width: 48%;}
.namaes dl:first-child{margin-right: 4%}
.table-list:nth-child(3){margin-bottom: 0;}
.table-list dt {width: 100%;margin-bottom: 10px; display: flex;vertical-align: baseline;vertical-align: middle;}
.table-list:nth-child(3) dt{display: inline-block;}
.table-list:nth-child(3) dt:first-child{margin-right: 6%;}
.table-list dd {width: 100%;display: flex;}
.table-list div dd {width: 50%;display: flex;}
.table-list-address {flex-wrap: wrap;}
.table-list-address .input-area {margin-bottom: 10px;}
.input-area {width: 100%;height: 44px;padding: 0 20px;letter-spacing: 0.05em;border: none;line-height: 2em;vertical-align: top;overflow: auto;}

input{background-color: #fff;font-family: "游ゴシック", "Yu Gothic", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", "Osaka", "ＭＳ Ｐゴシック", "MS PGothic",  Helvetica, Arial, sans-serif; font-size: 16px;}
input::placeholder { color: #527a9b;font-size: 16px;}
input[type="text"] { -moz-box-sizing: border-box; -webkit-box-sizing: border-box;box-sizing: border-box;}
input[type="email"] { -moz-box-sizing: border-box; -webkit-box-sizing: border-box;box-sizing: border-box;}
input[type="radio"]{ display: none;}
input[type="radio"]:checked + .check::after { opacity: 1; }
input[type="checkbox"]{ display: none; }
input[type="checkbox"]:checked + .check::after { opacity: 1; }
input[type="submit"]{width: 100%;font-family: 'Barlow Condensed',"游ゴシック", "Yu Gothic", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", "Osaka", "ＭＳ Ｐゴシック", "MS PGothic",  Helvetica, Arial, sans-serif; background-color: #003b6c;padding: 15px 90px;}

textarea {width: 100%;height: 180px;padding: 10px 20px;border: none;background-color: #fff;box-sizing:border-box;font-family: "游ゴシック", "Yu Gothic", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", "Osaka", "ＭＳ Ｐゴシック", "MS PGothic",  Helvetica, Arial, sans-serif;}
textarea::placeholder {color: #527a9b;}
input::-ms-clear, input::-ms-reveal { visibility: hidden; } /* 右に出てくるアイコン削除 */

.checkbox{margin-top: 15px; text-align: center;color: #fff;}
.radio{margin-top: 15px;}
.checkbox label{padding-left: 25px; position: relative;font-size: 0.786em;}
.checkbox label::before,.radio label::before{ content: ""; width: 18px; height: 18px; background-color: #fff; position: absolute; top: 50%; left: 0; transform: translateY(-50%); border-radius: 50%; -webkit-transition:all .4s; transition:all .4s;}
.checkbox label::after,.radio label::after{ content: ""; width:12px; height:12px; position: absolute; top: 7px; left: 3px; border-radius: 50%; background-color: #003b6c; -webkit-transition:all .4s; transition:all .4s; opacity: 0; }
.checkbox label::after{ top: 2px;}
.PPlink {margin: 10px 8% 50px;font-size: 0.786em;color: #fff;}
.radio label{padding-left:40px;margin-right: 60px; position: relative;}

.PPlink a{color: #FFF; text-decoration: underline;}
.PPlink a:hover{opacity: .6;text-decoration: none;-webkit-transition:all .3s; transition:all .3s;}


/* ie用 */
@media all and (-ms-high-contrast: none){
	.checkbox label::after{ top: 1px;}
}
@media(max-width:1000px) {
	.inner{margin: 0 auto;}
	.contact-area {margin-top: 30px;}
	.contact-message {width: 80%; margin-top: 30px;}
	.table-list{margin-bottom: 15px;flex-wrap: wrap;justify-content: flex-start;}
	.input-area{width: 100%;}
	textarea{width: 100%;}
	.radio{margin-top: 0;}
	.PPlink {margin: 10px 8% 50px;font-size: 0.786em;}
	.kind{margin-top: 15px; margin-bottom: 15px;}
}
@media(max-width:860px) {
	.namaes dl{width: 100%;}
	.namaes dl:first-child{margin-right: 0}
	.contact-table dl:last-child dt {vertical-align: baseline;}
	.table-list dt{font-size: 1em;}
	.checkbox label{font-size: 1em;}
	.checkbox label::after{top:3px;}
	input{ font-size: 1.143em;}
	textarea {font-size: 1.143em;}
	.radio label{font-size: 1em;}
	.radio label::after{ top: 7px;}
	.PPlink {margin: 10px 8% 30px;font-size: 1em;}
}
@media (max-width:600px) {
	.contact-area{margin: 10% 0 20%;}
	.contact-message {width: calc(100% - 50px);}
	.checkbox{margin-top: 35px;}
	.checkbox label::after{top: 2px;}
	input{ font-size: 1.333em;}
	textarea {font-size: 1.333em;}
	.radio label::after{ top: 6px;}
}


/* iOSでのデフォルトスタイルをリセット */
input[type="submit"],
input[type="button"] { border-radius: 0; -webkit-box-sizing: content-box; -webkit-appearance: button; -moz-appearance: button; appearance: button; -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:-webkit-autofill {box-shadow: 0 0 0px 1000px rgba(240,241,241,1) inset !important;background: #f0f1f1!important; transition: background-color 5000s ease-in-out 0s !important;}

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

/* thanks */
.thanks{margin-bottom: 120px;}
.thanks h2{margin-bottom: 20px;letter-spacing: 0.18em;line-height: 1.5em;}
.thanks p{line-height: 2em;}
@media(max-width:860px) {
	.thanks{margin-bottom: 70px;}
}


/* Kasou - privacypolicy
==========================================================*/
.PP_main{margin-top: 60px;margin-bottom: 100px;}
.PP_main section dt{color: #003b6c;}
.PP_main section dd{margin-bottom: 30px;}
.PP_main ol {list-style: inside decimal;padding-left: 1em;}
.PP_ub{padding-bottom: 40px; border-bottom: solid 1px #000;}
.pofi{position: fixed;width: 100%;}

@media screen and (max-width: 860px){
	.PP_main{margin-top: 40px;}
}

@media screen and (max-width: 600px){
	.PP_main h2{line-height: 1.5em;}
}
