@charset "utf-8";
/* 
	
CSS base.css */



/*
main #cc0001
sub #79511b
*/





/*//////////////////


Header


//////////////////*/

#header { position: fixed; top: 0; left: 0; z-index: 1000; width: 100%; padding-left: 60px; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; padding-top: 40px; padding-bottom: 40px; background: #fff; transition: 0.5s ease-out }
#header .incnt{ height: 100%; }
#header .mainbox{ display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex; -webkit-flex-direction: row; -moz-flex-direction: row; -ms-flex-direction: row; -o-flex-direction: row; flex-direction: row; justify-content: space-between; }
#header .mainbox .sitetitlebox{ margin-right: 20px; display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex; -webkit-flex-direction: row; -moz-flex-direction: row; -ms-flex-direction: row; -o-flex-direction: row; flex-direction: row; -ms-align-items: center; align-items: center; min-height: 70px; }
#header .mainbox .sitetitlebox .logo{ width: 328px; z-index: 1000000000000000000; flex-shrink: 0; position: relative; }
#header .mainbox .sitetitlebox .logo>a{  }
#index #header .mainbox .sitetitlebox .logo>a>svg .logo_st0.st0{ fill:#fff; transition: 0.3s; }
#header .rightbox{ position: relative; display: flex; }
#header.scroll{ transform: translate(0px, -170px); }
#header.fixed.scroll { padding-top: 0; padding-bottom: 0; transform: translate(0px, 0px); }
#header.fixed .mainbox { }
#header.fixed .mainbox {  }
#index #header.fixed .mainbox .sitetitlebox .logo>a>svg .logo_st0.st0{fill:#191919;}
@media screen and (max-width: 1200px) {
	#header { padding-left: 40px; }
	#header .mainbox .sitetitlebox .logo{ width: 270px; }
	#header .mainbox .sitetitlebox{ min-height: 60px }
}
@media screen and (max-width: 1040px) {
	#header { padding-left: 6%; padding-bottom: 0; position: static; margin-bottom: 20px; padding-top: 20px }
}
@media screen and (max-width: 767px) {
	#header { margin-bottom: 15px; padding-top: 10px; }
	#header .mainbox .sitetitlebox .logo{ width: 218px; }
}

/* スライド画像のエフェクト */
@keyframes navfit {
  0% { transform: translate(0px, -50px); }
  100% { transform: translate(0px, 0px);  }
}


/* 工事中用 */
/*body,html{ overflow: hidden; }
#underconstructionbox{ position: fixed; top: 0; left: 0; right: 0; left: 0; width: 100vw; height: 100vh; background: #fff; display: flex; align-items: center; justify-content: center; box-sizing: border-box; padding: 100px 8%; z-index: 1000000000000000000000; flex-direction: column; }
#underconstructionbox+#header{ display: none; }
@media screen and (max-width: 767px) {
	#underconstructionbox{ display: block; }
}*/




/*//////////////////


Nav


//////////////////*/

#gnav>.scrollcover{  }

.navlist{  }
#gnav.navlist{ text-align: right; padding-right: 214px; display: flex; }
#gnav.navlist>.navbox,
#gnav.navlist>.navbox .mainlistcover,
#gnav.navlist>.navbox .mainlistcover>.inwrap,
#gnav.navlist>.navbox .mainlistcover>.inwrap>.inwrap,
#gnav.navlist>.navbox .mainlistcover>.inwrap>.inwrap>.inwrap,
#gnav.navlist>.navbox .mainlistcover .mainlist,
#gnav.navlist>.navbox .mainlistcover .mainlist>li,
#gnav.navlist>.navbox .mainlistcover .mainlist>li>a,
#gnav.navlist>.navbox .mainlistcover .mainlist>li>a>span,
#gnav.navlist>.navbox .mainlistcover .mainlist>li>p,
#gnav.navlist>.navbox .mainlistcover .mainlist>li>p>span,
#sidetopmenubtnlist{ display: flex; }
#gnav.navlist .mainlist{ display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex; -webkit-flex-direction: row; -moz-flex-direction: row; -ms-flex-direction: row; -o-flex-direction: row; flex-direction: row; font-size: 1.5rem }
#gnav.navlist .mainlist>li{ margin-left: 15px; vertical-align: middle; display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex; }
#gnav.navlist .mainlist>li:first-child{ padding-left: 0; display: none!important; }
#gnav.navlist .mainlist>li a,
#gnav.navlist .mainlist>li>p{ display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex; cursor: pointer; }
#gnav.navlist .mainlist>li a:hover,
#gnav.navlist .mainlist>li>p:hover{ color: #2374c5; }
#gnav.navlist .mainlist>li a span,
#gnav.navlist .mainlist>li>p span{ display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex; -ms-align-items: center; align-items: center; letter-spacing: 0.1em; }
#gnav.navlist .mainlist>li.hassub{ position: relative; }

	
/* sub */
#gnav .mainlist li>div.sub { opacity: 0; position: absolute; top: 60px; left: 50%; margin-left: -101px; min-width: 302px; box-sizing: border-box; padding: 30px 30px; z-index: 1000;  background: rgb(35,116,197); background: -moz-linear-gradient(45deg,  rgba(35,116,197,1) 0%, rgba(128,184,214,1) 100%); background: -webkit-linear-gradient(45deg,  rgba(35,116,197,1) 0%,rgba(128,184,214,1) 100%); background: linear-gradient(45deg,  rgba(35,116,197,1) 0%,rgba(128,184,214,1) 100%); filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#2374c5', endColorstr='#80b8d6',GradientType=1 ); color: #fff; text-align: center; transition: .3s; visibility: hidden; }
#gnav .mainlist li>div.sub>ul{ margin-left: -20px; display: block; text-align: left; }
#gnav .mainlist li>div.sub>ul>li{ display: inline-block; text-align: left; margin-left: 20px }
#gnav .mainlist li>div.sub a{ color: #fff }
#gnav .mainlist li>div.sub a:hover{ color: #cccccc; }
#gnav .mainlist li:hover>div.sub{ opacity: 1; visibility: visible; }
#gnav.navlist a{ text-decoration: none; }
#sidetopmenubtnlist{ position: absolute; top: 0; right: 0; background: #ebf6fb; height: 100%; }
#sidetopmenubtnlist>a{ width: 184px; height: 100%; background: rgb(35,116,197); background: -moz-linear-gradient(45deg,  rgba(35,116,197,1) 0%, rgba(128,184,214,1) 100%); background: -webkit-linear-gradient(45deg,  rgba(35,116,197,1) 0%,rgba(128,184,214,1) 100%); background: linear-gradient(45deg,  rgba(35,116,197,1) 0%,rgba(128,184,214,1) 100%); filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#2374c5', endColorstr='#80b8d6',GradientType=1 );  display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex; -ms-align-items: center; align-items: center; justify-content: center; color: #fff; text-decoration: none; font-size: 2rem; font-weight: 900; letter-spacing: 0.15em; box-sizing: border-box; }
#sidetopmenubtnlist>a:after{ content: ""; background: url(../img/common/arr1_white.svg) no-repeat; background-size: contain; width: 22px; height: 22px; display: inline-block; width: 22px; height: 22px; margin-left: 20px; }
#sidetopmenubtnlist>a>svg .mie_st0.st0{fill:#fff;}
#sidetopmenubtnlist>a>svg .mie_st1.st1{stroke:#2374c5;}
#sidetopmenubtnlist>a:hover{ opacity: .8 }

/*#header.fixed #sidetopmenubtnlist{ top: 15px;}*/
#gnav.navlist .spcontactbox{ display: none; }
#gnav .navbox .logo{ display: none; }
@media screen and (max-width: 1200px) {
	#gnav.navlist{ padding-right: 170px }
	
	#sidetopmenubtnlist>a{ width: 150px; font-size: 1.8rem;  }
	#sidetopmenubtnlist>a:after{ width: 20px; height: 20px; margin-left: 12px; }
}

@media screen and (max-width: 1040px){
	#gnav .navbox .logo{width: 270px;display: block;position: absolute;top: 35px;left: 6%;z-index: 10;}
	#gnav{z-index: 10000000000;opacity: 0;position: fixed;top: 0;bottom: 0;left: 0;right: 0;height: 100vh!important;display: block;overflow: hidden;width: 100vw!important;visibility: hidden;pointer-events: none;}
	#gnav .navbox{ position: relative; z-index: 10; display: flex; flex-direction: row; }
	#gnav>.scrollcover{  }
	#gnav .incnt.fix{ width: calc(100% - 120px); margin: 0 60px }
	#gnav.navlist>.navbox,
	#gnav.navlist>.navbox .mainlistcover,
	#gnav.navlist>.navbox .mainlistcover>.inwrap,
	#gnav.navlist>.navbox .mainlistcover>.inwrap>.inwrap,
	#gnav.navlist>.navbox .mainlistcover>.inwrap>.inwrap>.inwrap,
	#gnav.navlist>.navbox .mainlistcover .mainlist,
	#gnav.navlist>.navbox .mainlistcover .mainlist>li,
	#gnav.navlist>.navbox .mainlistcover .mainlist>li>a,
	#gnav.navlist>.navbox .mainlistcover .mainlist>li>a>span,
	#gnav.navlist>.navbox .mainlistcover .mainlist>li>p,
	#gnav.navlist>.navbox .mainlistcover .mainlist>li>p>span,
	#sidetopmenubtnlist{display: block;width: 100%;box-sizing: border-box;}

	#gnav.navlist{ text-align: left; padding-right: 0; display: flex; /*z-index: 10000000000*/ }
	#gnav.navlist .navbox { margin: 0 auto; position: relative; }
	#gnav.navlist .navbox>.mainlistcover{ display: flex; flex-direction: column; justify-content: center; height: 100vh; width: 100% }
	#gnav.navlist .navbox>.mainlistcover>.inwrap{height: 100%; box-sizing: border-box;}
	#gnav.navlist .navbox>.mainlistcover>.inwrap>.inwrap{  box-sizing: border-box; }
	#gnav.navlist .navbox>.mainlistcover>.inwrap>.inwrap>.inwrap{padding-right: calc(6% + 20px);padding-bottom: 185px;height: 100vh;padding-top: 185px;overflow-y: auto;padding-left: 6%;width: 100vw;box-sizing: border-box;}
	#gnav.navlist .navbox>.mainlistcover>.inwrap>.inwrap>.inwrap::-webkit-scrollbar { display: none; }
	#gnav .logo{ margin-left: 0; }
	#gnav.navlist .navbox>.mainlistcover{ display: block; }

	#gnav.navlist .mainlist{ display: block; font-size: 1.8rem; }
	#gnav.navlist .mainlist>li{ margin-left: 0; display: block; margin-bottom: 18px; padding-bottom: 18px; border-bottom: 1px solid #fff }
	#gnav.navlist .mainlist>li:last-child{ margin-bottom: 0; padding-bottom: 0; border-bottom: none }
	#gnav.navlist .mainlist>li:first-child{ display: block!important; }
	#gnav.navlist .mainlist>li a,
	#gnav.navlist .mainlist>li>p{ display: block; color: #fff; }
	#gnav.navlist .mainlist>li a span,
	#gnav.navlist .mainlist>li>p span{ display: block; }
	#gnav.navlist .mainlist>li.sp{ display: block; }
	#gnav.navlist .mainlist>li .sublist{ position: static; overflow: visible; margin-bottom: 0; width: 100%; opacity: 1; visibility: visible; display: block; }
	#gnav.navlist .mainlist>li .sublist>li{ margin-bottom: 5px }
	#gnav.navlist .mainlist>li .sublist>li>a{ background: transparent; padding: 0; display: block; color: #191919 }
	#gnav.navlist .mainlist>li .sublist>li>a:hover{ color: #034150; }
	#sidetopmenubtnlist{ display: none; }
	#gnav.navlist .spcontactbox{ display: block; margin-left: -45px; margin-top: 55px }
	#gnav.navlist .spcontactbox>li{ display: inline-block; vertical-align: top; margin-left: 45px }


	#gnav.navlist .spcontactbox>li .teltxt>.tel{ font-weight: 900; font-size: 3.4rem; line-height: 1; color: #fff; letter-spacing: 0.1em }
	#gnav.navlist .spcontactbox>li .opentime{ font-size: 1.4rem; letter-spacing: -0.04em; color: #fff; margin-top: 5px }
	#gnav.navlist .spcontactbox>li .link>.btnlink{ width: 240px; }

	#gnav .mainlist li>div.sub { opacity: 1; position: static; margin-left: 0; min-width: auto; padding: 0;  background: transparent; color: #fff; text-align: left;visibility: visible; margin-top: 5px; font-size: 1.6rem }
	#gnav .mainlist li>div.sub>ul{ text-align: left; }
	#gnav .mainlist li>div.sub>ul>li:before{ content: "- "; }
	#gnav .mainlist li>div.sub>ul>li>a{ display: inline; }

	#gnav .bg{  }
	#gnav .bg .whitebg{ position: absolute; left: 0; top: 0; width: 100vw; height: 100vh; z-index: 2; background: rgb(67,127,200); background: -moz-linear-gradient(45deg,  rgba(67,127,200,1) 0%, rgba(105,165,219,1) 70%, rgba(75,165,218,1) 100%); background: -webkit-linear-gradient(45deg,  rgba(67,127,200,1) 0%,rgba(105,165,219,1) 70%,rgba(75,165,218,1) 100%); background: linear-gradient(45deg,  rgba(67,127,200,1) 0%,rgba(105,165,219,1) 70%,rgba(75,165,218,1) 100%); filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#437fc8', endColorstr='#4ba5da',GradientType=1 ); opacity: 0; visibility: hidden; transition: all .6s; cursor: default; }

	#gnav.is-open{ pointer-events: auto; }
	#gnav.is-open{ opacity: 1; visibility: visible; }
	#gnav.is-open .whitebg{ opacity: 1; visibility: visible; }

	/* contactアイコン　*/
	#gnav ul.main>li[data-cat="contact"] { display: none; }
}
@media screen and (max-width: 767px){
	#gnav.navlist .mainlist{ font-size: 1.6rem; }
	#gnav .navbox .logo{ width: 218px; top: 25px; }

	#gnav.navlist .spcontactbox{ margin-top: 40px; margin-bottom: -30px }
	#gnav.navlist .spcontactbox>li{ margin-bottom: 30px }
	#gnav.navlist .spcontactbox>li .teltxt>.tel{ font-size: 2.8rem; }
	#gnav.navlist .spcontactbox>li .link>.btnlink{ width: 220px; }
	#gnav.navlist .navbox>.mainlistcover>.inwrap>.inwrap>.inwrap{padding-top: 100px; padding-bottom: 40px;padding-right: 6%;}
	#gnav.navlist .mainlist>li{ margin-bottom: 16px; padding-bottom: 16px; }
	/*
	#header .navlogo{ height: 80px }
	#header .navlogo img { width: 80px; }
	#gnav.navlist .incnt>.mainlistcover>.inwrap>.inwrap{ height: calc(100vh - 380px) } */
}
@media screen and (max-width: 639px){
}
@media screen and (max-width: 479px){
}




/*//////////////////


Menubtn


//////////////////*/

#menubtn {display: none; z-index: 100000000001; }
@media screen and (max-width: 1040px){
	#menubtn { display: block; background: transparent; width: 64px; height: 64px; cursor: pointer; position: fixed; top: 20px; right: 35px; transition: 0.3s; }
	#menubtn a { text-decoration: none; position: relative; display: block; height: 100%; width: 100%; }
	#menubtn .closetxt{ display: none; }
	#menubtn a .line { width: 64px; height: 2px; background: #000; position: absolute; left: 50%; margin-left: -32px;transition: all 0.6s; }
	#menubtn a #line1 { top: 26px; }
	#menubtn a #line2{ bottom: 26px; }
	#menubtn.active a .line{ background: #fff }
	#menubtn.active a #line1 {
		-webkit-transform:translateY(5px) translateX(0) rotate(46deg);
		transform:translateY(5px) translateX(0) rotate(46deg);
	}
	#menubtn.active a #line2 { 
		-webkit-transform:translateY(-5px) translateX(0) rotate(-46deg);
		transform:translateY(-5px) translateX(0) rotate(-46deg);
	}
	#menubtn.active .closetxt{ font-size: 1.4rem; position: absolute; left: 30px; top: 0; bottom: 0; margin-top: auto; margin-bottom: auto; display: flex; align-items: center; }
	#header.fixed #gnav #menubtn a .line{ background: #191919; }
}
@media screen and (max-width: 767px){
	#menubtn { top: 20px; right: 20px; width: 40px; height: 40px;  }
	#menubtn a .line { width: 40px; margin-left: -20px; }
	#menubtn a #line1 { top: 14px; }
	#menubtn a #line2{ bottom: 14px; }

}




/*//////////////////


Mainv_index


//////////////////*/
#mainv_index{ height: 800px; position: relative; padding-bottom: 90px; box-sizing: border-box; }
#mainv_index .bglist{  }
#mainv_index .bglist>.slidebox{  }
#mainv_index .slidebox li.slick-slide{ margin-left: 45px; margin-right: 45px; position: relative; outline: none; }
#mainv_index .slidebox li.slick-slide .txtbox{ height: 100%; position: absolute; top: 0; left: 0; bottom: 0; right: 0; z-index: 10; padding-bottom: 80px; box-sizing: border-box; padding-top: 110px }
#mainv_index .slidebox li.slick-slide .txtbox>.inwrap{ display: flex; flex-direction: row; justify-content: space-between; height: 100%; align-items: flex-end; }
#mainv_index .slidebox li.slick-slide .txtbox>.inwrap .copybox{ color: #fff; margin-left: -25px }
#mainv_index .slidebox li.slick-slide .txtbox>.inwrap .copybox>p{ margin-bottom: 10px }
#mainv_index .slidebox li.slick-slide .txtbox>.inwrap .copybox>p>span{ display: inline-block; letter-spacing: 0.15em; line-height: 1; padding: 8px 8px 8px 12px; text-align: left; font-feature-settings: "palt"; }
#mainv_index .slidebox li.slick-slide .txtbox>.inwrap .copybox>p:last-child{ margin-bottom: 0 }
#mainv_index .slidebox li.slick-slide .txtbox>.inwrap .copybox ._1>span{ font-weight: bold; font-size: 2.8rem; background: #38a1db; }
#mainv_index .slidebox li.slick-slide .txtbox>.inwrap .copybox ._2>span{ font-weight: 900; font-size: 6rem; background: #2374c5; padding: 11px 5px 11px 8px }
#mainv_index .slidebox li.slick-slide .txtbox>.inwrap .copybox._change ._1>span{ background: #2374c5; }
#mainv_index .slidebox li.slick-slide .txtbox>.inwrap .copybox._change ._2>span{ background: #38a1db; }
#mainv_index .slidebox li.slick-slide .txtbox._3>.inwrap{ align-items: flex-start; flex-direction: column; }
#mainv_index .slidebox li.slick-slide .txtbox._3>.inwrap .indexmainv_box1{ display: flex; justify-content: flex-end; flex-direction: column; height: 100%; padding-right: 8%; margin-left: auto; }
#index .indexmainv_box1{ padding-right: 10% }
#index .indexmainv_box1 .copy{ color: #fff; font-weight: 900; font-size: 2.8rem; line-height: 1.6; margin-bottom: 30px; letter-spacing: 0.2em }
#index .indexmainv_box1 .copy._yellow{ color: #ffdb3f }
#index .indexmainv_box1 .txt2{ color: #fff; font-weight: 900; font-size: 3.6rem; line-height: 1.6; margin-bottom: 15px; letter-spacing: 0 }
#index .indexmainv_box1 .iconlist{ margin-left: -5px; margin-bottom: 20px }
#index .indexmainv_box1 .iconlist>li{ display: inline-block; margin-left: 5px }
#index .indexmainv_box1 .iconlist>li>span{ display: inline-block; border: 1px solid #ffdb3f; font-weight: bold; font-size: 1.8rem; color: #ffdb3f; padding: 8px 8px; line-height: 1.4; letter-spacing: 0.15em }
#index .indexmainv_box1 .txt{ color: #fff; font-weight: bold; font-size: 1.8rem; letter-spacing: 0.15em }
#index .indexmainv_box1 .link{ margin-top: 40px }
#index .indexmainv_box1 .link .btnlink{ max-width: 240px; width: 100%; }
#mainv_index .bglist>.slidebox img{ height: 720px; width: 100%; object-fit: cover; font-family: 'object-fit: cover;'; }
#mainv_index .slidebox .slick-prev{ background: url(../img/common/prev.svg) no-repeat; background-size: contain; min-width: 42px; height: 80px; display: inline-block; position: absolute; top: 0; bottom: 0; left: 100px; margin-top: auto; margin-bottom: auto; font-size: 0; padding: 0; z-index: 100 }
#mainv_index .slidebox .slick-next{ background: url(../img/common/next.svg) no-repeat; background-size: contain; min-width: 42px; height: 80px; display: inline-block; position: absolute; top: 0; bottom: 0; right: 100px; margin-top: auto; margin-bottom: auto; font-size: 0; padding: 0; z-index: 100 }
#mainv_index .slidebox .slick-prev:hover,
#mainv_index .slidebox .slick-next:hover{ opacity: 0.5; }
#mainv_index .slick-dots{ text-align: center; margin-left: -10px; margin-top: 5px }
#mainv_index .slick-dots>li{ display: inline-block; margin-left: 10px; margin-right: 0 }
#mainv_index .slick-dots>li>button{ height: 5px; background: #cccccc; display: inline-block; font-size: 0; padding: 0; min-width: 60px; cursor: pointer; position: relative; z-index: 100 }
#mainv_index .slick-dots>li>button:hover,
#mainv_index .slick-dots>li.slick-active>button{ background: #2374c5 }

#mainv_index .bg{ height: calc(100% - 30px); width: 100%; position: absolute; bottom: 0; left: 0; z-index: -1 }
#mainv_index .bg:before{ content: ""; position: absolute; bottom: 0; left: 0; background: #ebf6fb; display: block; width: calc(100% - 170px); z-index: -2; height: 100% }
#mainv_index .bg:after{ content: ""; position: absolute; bottom: 0; right: 0; background: #e9eaf0; display: block; width: 147px; z-index: -2; height: 100% }
@media screen and (max-width: 1200px) {
	#mainv_index{ height: 700px; }
	#mainv_index .slidebox li.slick-slide{ margin-left: 0; margin-right: 0;  width: 100%; box-sizing: border-box; }
	#mainv_index .imgbox{ width: 100% }
	#mainv_index .txtbox{ padding-left: 6%; padding-right: 6%; }
	#mainv_index .slidebox li.slick-slide .txtbox>.inwrap .copybox ._1>span{ font-size: 2.4rem; }
	#mainv_index .slidebox li.slick-slide .txtbox>.inwrap .copybox ._2>span{ font-size: 5rem; padding: 10px 5px 15px 10px }
	#mainv_index .bglist>.slidebox img{ height: 620px; }
}
@media screen and (max-width: 1040px) {
	#mainv_index{ height: 100%; padding-bottom: 20px; margin-top: 0; }
	#mainv_index .txtbox{ padding-bottom: 80px; }
	#mainv_index .slidebox li.slick-slide{ margin-left: 0; margin-right: 0 }
	#mainv_index .slick-dots>li{ margin-left: 10px; margin-right: 10px }
	#mainv_index .bglist>.slidebox img{ height: 520px; }
	#mainv_index .slidebox .slick-prev{ min-width: 28px; height: 54px; left: 0; }
	#mainv_index .slidebox .slick-next{ min-width: 28px; height: 54px; right: 0; }

	#index .indexmainv_box1{ margin-top: 40px; text-align: center; padding-right: 0; }
	#index .indexmainv_box1 .copy{ color: #191919; }
	#index .indexmainv_box1 .txt{ color: #191919; }
	#index .indexmainv_box1 .txt2{ font-size: 2.6rem; color: #191919 }

	#mainv_index .bg{ height: calc(100% - 30px); }
	#mainv_index .bg:before{  width: calc(100% - 120px); }
	#mainv_index .bg:after{ width: 100px; }
}
@media screen and (max-width: 767px) {
	#mainv_index .bglist>.slidebox img{ height: 370px; }
	#mainv_index .slidebox li.slick-slide .txtbox>.inwrap .copybox ._1>span{ font-size: 2rem; }
	#mainv_index .slidebox li.slick-slide .txtbox>.inwrap .copybox ._2>span{ font-size: 3.5rem; padding: 8px 3px 10px 5px; letter-spacing: 0.1em }

	#index .indexmainv_box1 .copy{ font-size: 2.4rem; margin-bottom: 20px; }
	#index .indexmainv_box1 .iconlist{ margin-bottom: 15px }
	#index .indexmainv_box1 .iconlist>li{ margin-bottom: 5px }
	#index .indexmainv_box1 .iconlist>li>span{ font-size: 1.6rem;padding: 5px 8px; }
	#index .indexmainv_box1 .txt{ font-size: 1.6rem; }
	#index .indexmainv_box1 .link{ margin-top: 20px }
	#mainv_index .slick-dots>li>button{ min-width: 50px; height: 6px }
	#mainv_index .slidebox li.slick-slide .txtbox>.inwrap .copybox{ margin-left: 0 }
	#mainv_index .slidebox li.slick-slide .txtbox{ padding-bottom: 40px; padding-top: 50px }
}
@media screen and (max-width: 479px){
	#mainv_index .txtbox{ padding-bottom: 20px }
	#mainv_index .bg:before{ width: calc(100% - 70px); }
	#mainv_index .bg:after{ width: 55px;}
	#mainv_index .slidebox li.slick-slide .txtbox._3>.inwrap .copybox ._2>span{ font-size: 3rem }
}

#index #secwrap_1{ padding: 90px 0 0 }
@media screen and (max-width: 1040px) {
}
@media screen and (max-width: 767px) {
}
@media screen and (max-width: 479px){
}


/*//////////////////


mainv


//////////////////*/
#mainv{ position: relative; padding-bottom: 50px }
#mainv:before{ content: ""; background: #ebf6fb; display: block; position: absolute; bottom: 0; right: 0; width: 70%; height: calc(100% - 60px); z-index: -1 }
#mainv>.inwrap{ position: relative; height: 490px; box-sizing: border-box; margin-bottom: 20px;}
#mainv>.inwrap .mainbox{padding-left: 0%;position: relative;z-index: 10;padding-right: 0%;height: 100%;}
#mainv>.inwrap .mainbox .pagetitle{color: #fff;display: flex;height: 100%;width: 100%;align-items: flex-start;padding-left: 8%;padding-right: 8%;box-sizing: border-box;background: rgba(0,0,0,.3);align-items: center;}
#mainv>.inwrap .mainbox .pagetitle>.inwrap{ display: inline-block; }
#mainv>.inwrap .mainbox .pagetitle .entitle{ text-align: left; }
#mainv>.inwrap .mainbox .pagetitle .jntitle{ text-align: left; }
#mainv>.inwrap .mainbox+.bg{ height: 100%; width: 100%; object-fit: cover; font-family: 'object-fit: cover;'; position: absolute; top: 0; left: 0; right: 0; }
@media screen and (max-width: 1200px) {
}
@media screen and (max-width: 1040px) {
	#mainv{ margin-top: 0; padding-bottom: 0; }
	#mainv:before{ content: none; }
	#mainv>.inwrap{ padding-top: 0; margin-bottom: 0; height: 390px }
	#mainv>.inwrap .mainbox{ padding-left: 0; padding-right: 0; height: 100%; width: 100% }
	#mainv>.inwrap .mainbox .pagetitle{height: 100%;width: 100%;/* align-items: flex-start; */padding-left: 8%;padding-right: 8%;box-sizing: border-box;background: rgba(0,0,0,.3);}
}
@media screen and (max-width: 767px) {
	#mainv>.inwrap{ height: 290px }
}
@media screen and (max-width: 479px){
}




#pankuzu { font-size: 1.4rem; text-align: right; }
#pankuzu ol li { display:inline; }
#pankuzu ol li:after { content: ">"; margin-right: 12px; vertical-align: 0px; margin-left: 17px }
#pankuzu ol li:last-child:after{ content: none }
#pankuzu ol li a{ letter-spacing: 0.1em; text-decoration: none; }
#pankuzu ol li a:hover { opacity: 0.7; transition: 0.3s; }
@media screen and (max-width: 1040px){
	#pankuzu{ display: none; }
}



/*//////////////////


main


//////////////////*/
#main{ margin-top: 120px; padding-bottom: 200px; }
#main #secwrap_1{ padding-top: 0; padding-bottom: 0;  }
@media screen and (max-width: 1040px) {
	#main{ margin-top: 60px;  padding-bottom: 150px; }
}
@media screen and (max-width: 767px) { 
	#main{ padding-bottom: 100px; }
}
@media screen and (max-width: 479px){
}

#yokomain{  }
#yokomain>.incnt{  }
#yokomain>.incnt>.inwrap{ display: flex; flex-direction: row; }
#yokomain>.incnt>.inwrap #secwrap_1{ width: 100% }
#sidebox{ width: 260px; margin-left: 6%; flex-shrink: 0 }
#sidebox .csbox{ margin-bottom: 50px }
#sidebox .csbox:last-child{ margin-bottom: 0 }
#sidebox .cstitle{ color: #3982CB; font-family: 'Lato', sans-serif; font-weight: bold; font-size: 1.5rem; margin-bottom: 20px; letter-spacing: 0.1em; line-height: 1.4 }
#sidebox .cslist>li>a{ text-decoration: none; }
#sidebox .cslist>li>a:hover{ color: #3982CB }
#sidebox .cslist.sidetaglist{ margin-left: -15px; text-align: left; }
#sidebox .cslist.sidetaglist>li{ margin-left: 15px; display: inline-block; vertical-align: middle; }
@media screen and (max-width: 1040px) {
	#yokomain>.incnt>.inwrap{ display: block; }
	#sidebox{ width: 100%; margin-left: 0; margin-top: 60px }
}
@media screen and (max-width: 767px) { 
	#sidebox .cstitle{ margin-bottom: 15px }
	#sidebox .csbox{ margin-bottom: 40px }
}
@media screen and (max-width: 479px){
}


/*//////////////////


Footer


//////////////////*/

#footer{ background: rgb(67,127,200); background: -moz-linear-gradient(45deg,  rgba(67,127,200,1) 0%, rgba(105,165,219,1) 70%, rgba(75,165,218,1) 100%); background: -webkit-linear-gradient(45deg,  rgba(67,127,200,1) 0%,rgba(105,165,219,1) 70%,rgba(75,165,218,1) 100%); background: linear-gradient(45deg,  rgba(67,127,200,1) 0%,rgba(105,165,219,1) 70%,rgba(75,165,218,1) 100%); filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#437fc8', endColorstr='#4ba5da',GradientType=1 ); padding: 110px 0; color: #fff }
#footer>.incnt{ max-width: 830px }
#footer>.incnt>.inwrap{ display: flex; flex-direction: row; width: 100%; justify-content: center; }
#footer>.incnt>.inwrap .titlebox{ margin-right: 4%; padding-right: 4%; flex-shrink: 0; width: 50%; display: flex; justify-content: center; flex-direction: column; position: relative; }
#footer>.incnt>.inwrap .titlebox:after{ content: ""; height: calc(100% - 5px); width: 1px; background: #fff; display: inline-block; position: absolute; top: 10px; right: 0; }
#footer>.incnt>.inwrap .titlebox .logo{ margin-bottom: 35px; padding-top: 10px }
#footer>.incnt>.inwrap .titlebox .logo>img{ width: 320px; height: 40px;  }
#footer>.incnt>.inwrap .titlebox .address{  }
#footer>.incnt>.inwrap .titlebox .teltxt{ margin-bottom: 5px; }
#footer>.incnt>.inwrap .titlebox .teltxt>.tel{ font-weight: 900; font-size: 3.4rem; line-height: 1.6; color: #fff; letter-spacing: 0.1em }
#footer>.incnt>.inwrap .titlebox .opentime{ font-size: 1.4rem; letter-spacing: -0.04em }
#footer>.incnt>.inwrap .contactbox{ width: 100%;  display: flex; justify-content: center; flex-direction: column; }
#footer>.incnt>.inwrap .contactbox .title{ font-weight: 900; font-size: 3.7rem; text-align: center; line-height: 1.6; margin-bottom: 20px; letter-spacing: 0.1em }
#footer>.incnt>.inwrap .contactbox .txt{ text-align: center; }
#footer>.incnt>.inwrap .contactbox .link{ text-align: center; margin-top: 20px }
#footer>.incnt>.inwrap .contactbox .link>.btnlink{ max-width: 240px; width: 100%;  }
@media screen and (max-width: 1040px){
	#footer{ padding: 80px 0; }
	#footer>.incnt>.inwrap{ display: block; text-align: center; }
	#footer>.incnt>.inwrap .titlebox{ margin-right: 0; padding-right: 0; width: 100%; padding-bottom: 45px; margin-bottom: 30px; display: block; }
	#footer>.incnt>.inwrap .titlebox:after{ content: ""; height: 1px; width: 100%; top: auto; bottom: 0; right: 0; left: 0; }
	#footer>.incnt>.inwrap .titlebox .logo{ padding-top: 0 }
	#footer>.incnt>.inwrap .titlebox .teltxt>.tel{ font-size: 2.4rem; }
	#footer>.incnt>.inwrap .contactbox{ display: block; }
}
@media screen and (max-width: 767px) { 
	#footer{ padding: 60px 0; }
	#footer>.incnt>.inwrap .titlebox{ padding-bottom: 35px }
	#footer>.incnt>.inwrap .titlebox .logo{ margin-bottom: 25px }
	#footer>.incnt>.inwrap .titlebox .logo>img{ width: 218px; height: 26px;  }
	#footer>.incnt>.inwrap .contactbox .title{ font-size: 2.8rem; }
}
@media screen and (max-width: 639px){
}
@media screen and (max-width: 479px){
	#footer{ padding: 50px 0; }
}

#fnav { padding-top: 80px; margin-bottom: 85px; }
#fnav .mainlist{ display: flex; flex-direction: row; justify-content: center; margin-left: -35px }
#fnav .mainlist>li{ flex-shrink: 0; margin-left: 35px }
#fnav .mainlist .list>li a{ text-decoration: none; }
#fnav .mainlist .list>li a:hover{ color: #2374c5; }
#fnav .mainlist .list>li>p{ display: inline; }
#fnav .mainlist .list>li>p,
#fnav .mainlist .list>li>p>a{  }
#fnav .mainlist .sublist{ text-align: left; margin-top: 8px; font-size: 1.5rem; }
#fnav .mainlist .sublist>li{  }
#fnav .mainlist .sublist>li:before{ content: "-"; margin-right: 5px }
@media screen and (max-width: 1040px){
	#fnav{ display: none; }
}
@media screen and (max-width: 767px) { 
}
@media screen and (max-width: 639px){
}
@media screen and (max-width: 479px){
}

#cr{ text-align: center; font-weight: 900; font-size: 1.4rem; letter-spacing: 0.1em; padding-bottom: 30px }
@media screen and (max-width: 1040px){
	#cr{ padding: 15px 0 }
}
@media screen and (max-width: 767px) { 
}
@media screen and (max-width: 639px){
}
@media screen and (max-width: 479px){
}
