@charset "utf-8";



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

ヘッダー・フッター・ナビゲーション等
共通コンテンツ

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

#header .mainbox{display: flex;flex-direction: row;padding-left: 4%;justify-content: space-between;height: 150px; position: fixed;background: #fff;padding-right: 4%;width: 100%;top: 0;left: 0; box-sizing: border-box;transition: .4s; z-index: 10000}
#header .mainbox .logobox{padding-top: 25px; z-index: 10;display: flex; align-items: flex-end;transition: .4s;padding-bottom: 20px;}
#header .mainbox .logobox .cap{ font-size: 1.5rem; position: absolute; top: 25px; left: 4%; width: 88%; letter-spacing: 0.1em; transition: .4s; }
#header .mainbox .rightbox{display: flex;align-items: flex-end;}
#header .mainbox .rightbox .contactnavlist{ display: flex; flex-direction: row; position: absolute; top: 0; right: 0; z-index: 10; }
#header .mainbox .rightbox .contactnavlist>li>a{ display: flex; align-items: center; justify-content: center; height: 60px; padding-left: 20px; padding-right: 20px; box-sizing: border-box; }
#header .mainbox .rightbox .contactnavlist>li>a>.inwrap{display: flex;flex-direction: row;align-items: center;}
#header .mainbox .rightbox .contactnavlist>li>a>.inwrap svg{ flex-shrink: 0; }
#header .mainbox .rightbox .contactnavlist>li>a .txt{ margin-left: 15px; }
#header .mainbox .rightbox .contactnavlist>li:nth-child(1)>a{ background: #59acc9; color: #fff; font-size: 2.4rem; }
#header .mainbox .rightbox .contactnavlist>li:nth-child(1)>a svg{ width: 20px; height: 20px; }
#header .mainbox .rightbox .contactnavlist>li:nth-child(1)>a .txt{ margin-left: 5px; }
#header .mainbox .rightbox .contactnavlist>li:nth-child(1)>a svg .tel_st0.st0{fill:#fff; }
#header .mainbox .rightbox .contactnavlist>li:nth-child(2){ width: 70px; flex-shrink: 0; }
#header .mainbox .rightbox .contactnavlist>li:nth-child(2)>a{ background: #194f97; color: #fff; }
#header .mainbox .rightbox .contactnavlist>li:nth-child(2)>a svg{ width: 28px; height: 18px; }
#header .mainbox .rightbox .contactnavlist>li:nth-child(2)>a svg:nth-child(2){ display: none; }
#header .mainbox .rightbox .contactnavlist>li:nth-child(2)>a .txt{ display: none; }
#header .mainbox .rightbox .contactnavlist>li:nth-child(3){ display: none; }
#header.fixed .mainbox{height: 135px;}
#header.fixed .mainbox .logobox{ padding-top: 15px; }
#header.fixed .mainbox .logobox .cap{ top: 15px; }
@media screen and (max-width: 1300px){
	#header .mainbox{ padding-right: 3%; }
	#header .mainbox .logobox img{ width: 240px; height: auto; }
	#header .mainbox .rightbox .contactnavlist>li:nth-child(1)>a{ font-size: 2.2rem; }
}
@media screen and (max-width: 1200px){
	#header .mainbox{ height: 100px; position: absolute; }
	#header .mainbox .logobox{ padding-top: 10px;  align-items: center; }
	#header .mainbox .logobox img{ width: 220px; height: auto; }
	#header .mainbox .logobox .cap{ display: none; }
	#header.fixed .mainbox{height: 100px;}
	#header.fixed .mainbox .logobox{ padding-top: 10px; }
}
@media screen and (max-width: 1040px){
}
@media screen and (max-width: 767px){
}
@media screen and (max-width: 500px){
}



#gnav{display: flex;text-align: right;}
#gnav .navbox{ display: flex; }
#gnav .incnt.fix{ width: 100%; margin: 0; display: flex; }
#gnav .mainlist li.sub { display: none; }
#gnav.navlist>.inwrap,
#gnav.navlist>.inwrap>.mainlistcover,
#gnav.navlist>.inwrap>.mainlistcover>.inwrap{ display: flex; }
#gnav.navlist>.inwrap>.mainlistcover>.inwrap{display: flex;flex-direction: row;text-align: right;align-items: center;}

#gnav .mainlist { display: flex; }
#gnav .mainlist ul{ display: flex; margin-left: -20px; }
#gnav .mainlist li {display: flex;position: relative;align-items: center;margin-left: 20px;padding-bottom: 20px;}
#gnav .mainlist li.tabletblock{ display: none; }
#gnav .mainlist li:first-child{ display: none; }
#gnav .mainlist li:first-child+li{ margin-left: 0; padding-left: 0; }
#gnav .mainlist li:first-child+li::before{ content: none; }
#gnav .mainlist li a,
#gnav .mainlist li p { text-decoration: none; position: relative; text-align: center; line-height: 1.6; transition: .3s; overflow: hidden; padding-bottom: 5px; padding-top: 10px; font-weight: bold; }
#gnav .mainlist li a:hover{ color: #003c8c; }


#gnav.navlist .main>li.hassub{ position: relative; }
#gnav .mainlist li>div.sub {opacity: 0;position: absolute;top: 100%;left: 50%;margin-left: -120px;min-width: 240px;box-sizing: border-box;padding: 30px 30px;z-index: 1000;background: #f2f2f2;text-align: center;transition: .3s;visibility: hidden;}
#gnav .mainlist li.product>div.sub {margin-left: -140px;min-width: 280px;}
#gnav .mainlist li>div.sub>ul.inwrap{ margin-left: -20px; display: block; text-align: center; }
#gnav .mainlist li>div.sub>ul.inwrap>li{ display: inline-block; text-align: left; margin-left: 20px; padding-bottom: 0; }
#gnav .mainlist li>div.sub a:hover{ color: #003c8c; }
#gnav .mainlist li:hover>div.sub{ opacity: 1; visibility: visible; }

#gnav .bg .inbg{ position: absolute; left: 0; top: 0; width: 100vw; height: 100vh; z-index: 2; background-color: #00a7db; opacity: 0; visibility: hidden; transition: all .6s; cursor: pointer; display: none; }

#gnav.is-open{ opacity: 1; visibility: visible; }
#gnav.is-open .inbg{ opacity: 1; visibility: visible; }
@media screen and (max-width: 1300px){
	#gnav .mainlist ul{ margin-left: -15px; font-size: 1.4rem; }
	#gnav .mainlist li { margin-left: 15px;}
}
@media screen and (max-width: 1200px){
	#gnav{z-index: 1000000000;opacity: 0;position: fixed;top: 0;bottom: 0;left: 0;right: 0;height: 100vh!important;display: block;overflow: hidden;width: calc(100vw - calc(100vw - 100%))!important;visibility: hidden;pointer-events: none;-webkit-perspective: 500px;perspective: 500px;transition: all .7s ease-out;padding-right: 0;text-align: left;}
	#gnav.navlist>.inwrap,
	#gnav.navlist>.inwrap>.mainlistcover,
	#gnav.navlist>.inwrap>.mainlistcover>.inwrap{display: flex;flex-direction: column;align-items: center;text-align: left;justify-content: center;}
	#gnav>.inwrap{ position: relative; z-index: 10; display: block; width: 100%; height: 100%; }
	#gnav.navlist .mainlistcover{ display: block!important; justify-content: center; width: 100%; height: 100%; }
	#gnav.navlist .mainlistcover>.inwrap{overflow: hidden;overflow-y: scroll;-ms-overflow-style: none;width: 100%;padding: 100px 12% 100px;box-sizing: border-box;height: 100%;display: block !important;}
	#gnav.navlist .mainlistcover>.inwrap::-webkit-scrollbar { display: none; }
	#gnav.navlist .mainlist>li,
	#header .mainbox .rightbox .contactnavlist>li{ transition: .3s; opacity: 0 }

	#gnav .mainlist{height: auto;display: flex;flex-direction: column;width: 100%;}
	#gnav .mainlist ul{ display: block; }
	#gnav .mainlist li.tabletblock{ display: block; }
	#gnav .mainlist li{ display: block; margin-left: 0;  height: auto;  padding-bottom: 0; letter-spacing: 0.1em; padding-bottom: 0; }
	#gnav.navlist .mainlist>li{font-size: 1.8rem;color: #fff;margin-bottom: 22px;}
	#gnav .mainlist>li:last-child{ padding-bottom: 0; margin-bottom: 0; border-bottom: none; }
	#gnav .mainlist li:first-child{ display: block; }
	#gnav .mainlist li a,
	#gnav .mainlist li p {padding: 0;display: block;text-align: justify;font-weight: normal;}
	#gnav .mainlist li a:before{ content: none }

	#gnav.navlist .mainlist>li.hassub{ padding-bottom: 9px; }
	#gnav .mainlist li.hassub a{vertical-align: middle;font-weight: normal;}
	#gnav .mainlist li.hassub>p{ cursor: pointer; margin-bottom: -8px; }

	#gnav .mainlist li {display: block;margin-left: 0;padding-left: 0;}
	#gnav .mainlist li::before{content: none;}

	#gnav .mainlist li a:hover{ color: #fff; }


	#header .mainbox .rightbox .contactnavlist{display: flex;flex-direction: column;position: static;width: 100%;}
	#header .mainbox .rightbox .contactnavlist>li>a{ height: 80px; padding-right: 30px; }
	#header .mainbox .rightbox .contactnavlist>li:nth-child(1)>a{ background: #ffffff; color: #003c8c; }
	#header .mainbox .rightbox .contactnavlist>li:nth-child(1)>a svg .tel_st0.st0{fill:#003c8c; }
	#header .mainbox .rightbox .contactnavlist>li:nth-child(2){ width: 100%; }
	#header .mainbox .rightbox .contactnavlist>li:not(:last-child){ margin-bottom: 10px; }
	#header .mainbox .rightbox .contactnavlist>li:not(:nth-child(1))>a{ background: #03a8c8; color: #fff; position: relative; font-size: 1.6rem; }
	#header .mainbox .rightbox .contactnavlist>li:not(:nth-child(1))>a:after{ content: ""; background: url(../img/common/arr2.svg) no-repeat; background-size: contain; width: 10px; height: 16px; display: inline-block; position: absolute; top: 0; bottom: 0; margin-top: auto; margin-bottom: auto; right: 15px; transition: .4s; }
	#header .mainbox .rightbox .contactnavlist>li:not(:nth-child(1))>a .txt{line-height: 1.6;}
	#header .mainbox .rightbox .contactnavlist>li:nth-child(2)>a svg{ width: 30px; height: 24px; }
	#header .mainbox .rightbox .contactnavlist>li:nth-child(2)>a svg:nth-child(1){ display: none; }
	#header .mainbox .rightbox .contactnavlist>li:nth-child(2)>a svg:nth-child(2){ display: inline; }
	#header .mainbox .rightbox .contactnavlist>li:nth-child(3)>a svg{ width: 36px; height: 24px; }
	#header .mainbox .rightbox .contactnavlist>li:nth-child(2)>a .txt{display: inline;}
	#header .mainbox .rightbox .contactnavlist>li:nth-child(3){ display: block; }

	#gnav.navlist .contactnavlist{margin-top: 50px;margin-left: 0;display: block;}
	#gnav .contactnavlist>li,
	#gnav .contactnavlist>li>a{ display: block; }

	#gnav .mainlist li>div.sub,
	#gnav .mainlist li.product>div.sub {opacity: 1!important;position: static;margin-left: 0;min-width: inherit;padding: 0;background: transparent;margin-top: 15px;visibility: visible;}

	#gnav .mainlist li>div.sub>ul.inwrap{ margin-left: 0;  }
	#gnav .mainlist li>div.sub>ul.inwrap>li{display: block;margin-left: 0;font-size: 1.8rem;margin-top: 0px;}
	#gnav .mainlist li>div.sub>ul.inwrap>li::before{ content: "-"; }
	#gnav .mainlist li>div.sub>ul.inwrap>li a{ color: #fff!important; display: inline; }
	#gnav .mainlist li>div.sub a:hover{ color: #fff; }

	/* #gnav .mainlist li.hassub{ margin-bottom: 15px; } */


	#gnav .bg{ opacity: 0; -webkit-transform: translate3d(0, 0, -50px); transform: translate3d(0, 0, -50px); -webkit-transition-duration: .6s; transition-duration: .6s; -webkit-transition-timing-function: cubic-bezier(.075, .82, .165, 1); transition-timing-function: cubic-bezier(.075, .82, .165, 1); opacity: 0; transform: translate3d(0px, 0px, -50px); transition-duration: 0.6s; transition-timing-function: cubic-bezier(0.075, 0.82, 0.165, 1); background-color: #194f97; overflow: hidden; position: absolute; top: 0px; right: 0px; bottom: 0px; left: 0px; }
	#gnav.is-open .bg{  opacity: 1; -webkit-transform: translate3d(0, 0, 0); transform: translate3d(0, 0, 0); pointer-events:auto; }
	#gnav.is-open .inbg{ opacity: 1; visibility: visible; }
	#gnav .bg .inbg{ position: absolute; left: 0; top: 0; width: 100vw; height: 100vh; z-index: 2; opacity: 0; visibility: hidden; transition: all .6s; cursor: pointer; display: block; }
	#gnav.is-open{ pointer-events: auto }
	#gnav.navlist.is-open .mainlist>li,
	#header .mainbox .rightbox #gnav.navlist.is-open .contactnavlist>li{ opacity:1; transition: 2s; }
	#gnav.navlist.is-open .mainlist>li:nth-child(1){ -webkit-transition-delay: .6s; transition-delay: .6s; }
	#gnav.navlist.is-open .mainlist>li:nth-child(2){ -webkit-transition-delay: .7s; transition-delay: .7s; }
	#gnav.navlist.is-open .mainlist>li:nth-child(3){ -webkit-transition-delay: .8s; transition-delay: .8s; }
	#gnav.navlist.is-open .mainlist>li:nth-child(4){ -webkit-transition-delay: .9s; transition-delay: .9s; }
	#gnav.navlist.is-open .mainlist>li:nth-child(5){ -webkit-transition-delay: 1s; transition-delay: 1s; }
	#gnav.navlist.is-open .mainlist>li:nth-child(6){ -webkit-transition-delay: 1.1s; transition-delay: 1.1s; }
	#gnav.navlist.is-open .mainlist>li:nth-child(7){ -webkit-transition-delay: 1.2s; transition-delay: 1.2s; }
	#gnav.navlist.is-open .mainlist>li:nth-child(8){ -webkit-transition-delay: 1.3s; transition-delay: 1.3s; }
	#header .mainbox .rightbox #gnav.navlist.is-open .contactnavlist>li:nth-child(1){ -webkit-transition-delay: 1.4s; transition-delay: 1.4s; }
	#header .mainbox .rightbox #gnav.navlist.is-open .contactnavlist>li:nth-child(2){ -webkit-transition-delay: 1.5s; transition-delay: 1.5s; }
	#header .mainbox .rightbox #gnav.navlist.is-open .contactnavlist>li:nth-child(3){ -webkit-transition-delay: 1.6s; transition-delay: 1.6s; }
}
@media screen and (max-width: 767px){
	#gnav.navlist .mainlistcover>.inwrap{padding: calc(40px + 8vh) 12% calc(8vh + 40px);}
}
@media screen and (max-width: 500px){
	#header .mainbox .rightbox .contactnavlist>li:not(:nth-child(1))>a{ justify-content: flex-start; padding-left: 30px; padding-right: 30px; }
	#gnav.navlist .mainlist>li{ margin-bottom: 15px; }
	#gnav.navlist .contactnavlist{margin-top: 40px;}
}


#menubtn {display: none; z-index: 100000000001; }
@media screen and (max-width: 1200px){
	#menubtn {position: fixed;top: 35px;right: 20px;display: block;background: transparent;width: 60px;height: 20px;cursor: pointer;}
	#menubtn a { text-decoration: none; position: relative; display: block; height: 100%; width: 100%; }
	#menubtn a .line { width: 60px;height: 1px; position: absolute; left: 0; transition: .6s; }
	#menubtn a .line:before { content: ""; background: #003c8c; display: inline-block; position: absolute; top: 0; bottom: 0; left: 0; right: 0; height: 2px; width: 100%; margin: auto; }
	#menubtn a #line1 { top: -1px; }
	#menubtn a #line2 {top: calc(50% - 1px);}
	#menubtn a #line3 { bottom: 0; }
	#menubtn.active a .line:before { background: #fff; }
	#menubtn.active a #line1 {
		-webkit-transform:translateY(10px) rotate(-42deg);
		transform: translateY(10px) rotate(-42deg);
	}
	#menubtn.active a #line2 { opacity: 0; }
	#menubtn.active a #line3 {
		-webkit-transform:translateY(-9px) rotate(42deg);
		transform: translateY(-9px) rotate(42deg);
	}
}
@media screen and (max-width: 767px){
}
@media screen and (max-width: 500px){
}


#footer #fcontactbox{ position: relative; }
#footer #fcontactbox .txtbox{ padding: 90px 12% 100px; position: relative; z-index: 10; }
#footer #fcontactbox .txtbox .title{ text-align: center; margin-bottom: 20px; color: #fff; }
#footer #fcontactbox .txtbox .title>.inwrap{display: inline-block;padding-left: 20px;padding-right: 20px;font-size: 3rem;position: relative;}
#footer #fcontactbox .txtbox .title>.inwrap::before,
#footer #fcontactbox .txtbox .title>.inwrap::after{ content: ""; display: inline-block; background: #fff; width: 2px; height: 40px; position: absolute; bottom: 10px; }
#footer #fcontactbox .txtbox .title>.inwrap::before{left: 0;transform: rotate(-35deg);}
#footer #fcontactbox .txtbox .title>.inwrap::after{ right: 0; transform: rotate(35deg); }
#footer #fcontactbox .txtbox .box1{ background: #fff; padding: 70px 10% 65px; }
#footer #fcontactbox .txtbox .box1 .teltxt{text-align: center;display: flex;justify-content: center;}
#footer #fcontactbox .txtbox .box1 .teltxt>a{display: flex;flex-direction: row;align-items: center;line-height: 1.4;}
#footer #fcontactbox .txtbox .box1 .teltxt>a .num{font-size: 4.5rem;display: flex;flex-direction: row;align-items: center;}
#footer #fcontactbox .txtbox .box1 .teltxt>a .num svg{ margin-right: 10px; }
#footer #fcontactbox .txtbox .box1 .teltxt>a .closetxt{ font-size: 1.8rem; margin-left: 35px; }
#footer #fcontactbox .txtbox .box1 .list1{ margin-top: 35px; margin-left: -20px; display: flex; flex-direction: row;  }
#footer #fcontactbox .txtbox .box1 .list1>li{ margin-left: 20px; width: calc(50% - 20px); }
#footer #fcontactbox .txtbox .box1 .list1>li>a{display: flex;flex-direction: row;font-size: 2rem;color: #fff;background: #03a8c8;border: 1px solid #03a8c8;text-align: center;justify-content: center;padding: 19px 30px;position: relative;}
#footer #fcontactbox .txtbox .box1 .list1>li>a>.inwrap{ display: inline-block; position: relative; }
#footer #fcontactbox .txtbox .box1 .list1>li>a>.inwrap svg{ position: absolute; top: 0; bottom: 0; margin-top: auto; margin-bottom: auto; left: 0; }
#footer #fcontactbox .txtbox .box1 .list1>li:nth-child(1)>a>.inwrap{ padding-left: 45px; }
#footer #fcontactbox .txtbox .box1 .list1>li:nth-child(2)>a>.inwrap{ padding-left: 55px; }
#footer #fcontactbox .txtbox .box1 .list1>li>a:after,
#footer #fcontactbox .txtbox .box1 .list1>li>a::before{content: "";background: url(../img/common/arr2.svg) no-repeat;background-size: contain;width: 10px;height: 14px;display: inline-block;position: absolute;top: 0;bottom: 0;margin-top: auto;margin-bottom: auto;right: 15px;transition: .4s;}
#footer #fcontactbox .txtbox .box1 .list1>li>a::before{ background: url(../img/common/arr2_aqua.svg) no-repeat; background-size: contain; opacity: 0; }
#footer #fcontactbox .txtbox .box1 .list1>li>a:hover{ color: #03a8c8; background: #fff; }
#footer #fcontactbox .txtbox .box1 .list1>li>a:hover:after,
#footer #fcontactbox .txtbox .box1 .list1>li>a:hover:before{ right: 10px; }
#footer #fcontactbox .txtbox .box1 .list1>li>a:hover:after{ opacity: 0; }
#footer #fcontactbox .txtbox .box1 .list1>li>a:hover:before{ opacity: 1; }
#footer #fcontactbox .txtbox .box1 .list1>li:nth-child(1)>a:hover .mail1_st0.st0{fill:#03a8c8;}
#footer #fcontactbox .txtbox .box1 .list1>li:nth-child(2)>a:hover .online1_st0.st0{fill:#03a8c8;}
#footer #fcontactbox .bg{ position: absolute; top: 0; bottom: 0; left: 0; right: 0;  }
@media screen and (max-width: 1300px){
	#footer #fcontactbox .txtbox{ padding: 80px 10% 90px; }
}
@media screen and (max-width: 1200px){
	#footer #fcontactbox .txtbox .title>.inwrap{font-size: 2.6rem;}
	#footer #fcontactbox .txtbox .title>.inwrap::before,
	#footer #fcontactbox .txtbox .title>.inwrap::after{ bottom: 5px; }
	#footer #fcontactbox .txtbox .box1{  padding: 60px 10% 50px; }
	#footer #fcontactbox .txtbox .box1 .teltxt{display: block;text-align: center;}
	#footer #fcontactbox .txtbox .box1 .teltxt>a{ display: inline-block; }
	#footer #fcontactbox .txtbox .box1 .teltxt>a .num{font-size: 4rem;}
	#footer #fcontactbox .txtbox .box1 .teltxt>a .closetxt{ font-size: 1.6rem; margin-left: 0; }
	#footer #fcontactbox .txtbox .box1 .list1{ margin-left: 0; display: block; }
	#footer #fcontactbox .txtbox .box1 .list1>li{ margin-left: 0; width: 100%; }
	#footer #fcontactbox .txtbox .box1 .list1>li:not(:last-child){ margin-bottom: 20px; }
}
@media screen and (max-width: 1040px){
}
@media screen and (max-width: 767px){
	#footer #fcontactbox .txtbox .title>.inwrap{font-size: 2.4rem;}
	#footer #fcontactbox .txtbox .title>.inwrap::before,
	#footer #fcontactbox .txtbox .title>.inwrap::after{ height: 35px; }
	#footer #fcontactbox .txtbox{ padding: 60px 10% 70px; }
	#footer #fcontactbox .txtbox .box1{  padding: 50px 8% 40px; }
	#footer #fcontactbox .txtbox .box1 .teltxt>a .num{font-size: 3rem;}
	#footer #fcontactbox .txtbox .box1 .teltxt>a .num svg{ width: 20px; height: 20px; }
	#footer #fcontactbox .txtbox .box1 .list1>li>a{ font-size: 1.6rem; }
}
@media screen and (max-width: 500px){
	#footer #fcontactbox .txtbox{ padding: 70px 8% 70px; }
	#footer #fcontactbox .txtbox .box1{  padding: 50px 8% 50px; }
	#footer #fcontactbox .txtbox .title>.inwrap{font-size: 2rem;}
	#footer #fcontactbox .txtbox .title>.inwrap::before,
	#footer #fcontactbox .txtbox .title>.inwrap::after{ height: 30px; }
	#footer #fcontactbox .txtbox .box1 .list1>li>a{text-align: left;justify-content: flex-start;padding: 15px 20px;}
	#footer #fcontactbox .txtbox .box1 .list1>li>a>.inwrap{ text-align: left; line-height: 1.8; }
	#footer #fcontactbox .txtbox .box1 .list1>li:nth-child(1)>a>.inwrap{ padding-left: 60px; }
	#footer #fcontactbox .txtbox .box1 .list1>li:nth-child(1)>a>.inwrap svg{ width: 30px; height: 30px; }
	#footer #fcontactbox .txtbox .box1 .list1>li:nth-child(2)>a>.inwrap svg{ width: 40px; height: 20px; }
	#footer #fcontactbox .txtbox .box1 .list1>li:nth-child(1)>a>.inwrap{ padding-left: 45px; }
	#footer #fcontactbox .txtbox .box1 .list1>li:nth-child(2)>a>.inwrap{ padding-left: 55px; }
	#footer #fcontactbox .txtbox .box1 .teltxt>a .num{font-size: 2.4rem;}
	#footer #fcontactbox .txtbox .box1 .teltxt>a .closetxt{ font-size: 1.4rem; }
}


#footer #mainfooter{ background: #f6f6f6; padding: 50px 8% 50px; display: flex; flex-direction: row; justify-content: space-between; align-items: flex-end; letter-spacing: 0.1em; }
#footer #mainfooter .footerinfo .logobox{ margin-bottom: 30px; }
#footer #mainfooter .footerinfo .crbox{ margin-left: -10px; margin-top: 20px; font-size: 1.5rem; }
#footer #mainfooter .footerinfo .crbox #cr{ display: inline-block; margin-left: 10px; letter-spacing: 0.1em; }
#footer #mainfooter .footerinfo .crbox .link{ display: inline-block; margin-left: 10px;  }
#footer #mainfooter .footerinfo .crbox .link>a{ text-decoration: underline; }
#footer #mainfooter #fnav{ text-align: right; }
#footer #mainfooter #fnav .mainlist .listitem{ display: inline-block; vertical-align: top; margin-left: 70px; text-align: left; }
#footer #mainfooter #fnav .mainlist .listitem>li:not(:last-child){ margin-bottom: 20px; }
#footer #mainfooter #fnav .mainlist .listitem>li a:hover{ color: #003c8c;  }
#footer #mainfooter #fnav .mainlist .listitem ._top{ font-weight: bold; }
#footer #mainfooter #fnav .mainlist .listitem ._sublist{ font-size: 1.5rem;  }
#footer #mainfooter #fnav .mainlist .listitem ._sublist>li{ position: relative; padding-left: 15px;  }
#footer #mainfooter #fnav .mainlist .listitem ._sublist>li::before{ content: ""; background: url(../img/common/arr1_black.svg) no-repeat; background-size: contain; width: 8px; height: 14px; display: inline-block; position: absolute; top: 0; bottom: 0; margin-top: auto; margin-bottom: auto; left: 0; }
@media screen and (max-width: 1200px){
	#footer #mainfooter #fnav{ display: none; }
	#footer #mainfooter{ display: block; text-align: center; padding: 60px 8% 50px; }
}
@media screen and (max-width: 1040px){
}
@media screen and (max-width: 767px){
}
@media screen and (max-width: 500px){
}



#mainv.under{ margin-top: 150px; background: #f9f9f9; margin-bottom: 60px; }
#mainv.under .mainbox{ position: relative; background: #194f97; }
#mainv.under .mainbox .txtbox{display: flex;align-items: flex-start;justify-content: flex-end;color: #fff;padding-bottom: 65px;height: 360px;flex-direction: column;padding-left: 8%;line-height: 1.8;position: relative; z-index: 20;}
#mainv.under .mainbox .txtbox .en{font-size: 4.5rem;line-height: 1.2; margin-bottom: 10px; text-align: left;}
#mainv.under .mainbox .txtbox .jn{ font-size: 1.8rem; }
#mainv.under .mainbox .imgbox{position: absolute;top: 0;right: 0;width: 66%;z-index: 10;height: calc(100% + 40px);}
#mainv.under .mainbox .imgbox>.inwrap{position: relative;overflow: hidden;border-bottom-left-radius: 60px;display: block;height: 100%;width: 100%;}
@media screen and (max-width: 1500px){
}
@media screen and (max-width: 1200px){
	#mainv.under{ margin-top: 100px; margin-bottom: 100px; }
	#mainv.under .mainbox .imgbox{ width: 60%; height: calc(100% + 40px); }
	#mainv.under .mainbox .txtbox{ height: 300px; padding-bottom: 40px; }
	#mainv.under .mainbox .txtbox .en{font-size: 4rem;margin-bottom: 5px;}
	#mainv.under .mainbox .txtbox .jn{ font-size: 1.6rem; }
}
@media screen and (max-width: 1040px){
}
@media screen and (max-width: 767px){
	#mainv.under .mainbox .txtbox{ height: 260px; padding-bottom: 40px; }
	#mainv.under .mainbox .imgbox{ width: 76%; }
	#mainv.under .mainbox .imgbox>.inwrap:before{ content: ""; background: rgba(0,0,0,.1); width: 100%; height: 100%; position: absolute; top: 0; bottom: 0; left: 0; right: 0;  }
}
@media screen and (max-width: 500px){
	#mainv.under .mainbox .txtbox{ height: 240px; }
}



#pankuzu {line-height: 1.4;position: relative;z-index: 10;box-sizing: border-box;letter-spacing: 0.05em;text-align: right;font-size: 1.4rem;padding-bottom: 20px;padding-top: 60px; padding-left: 4%; padding-right: 4%;}
#pankuzu ol li { display:inline; }
#pankuzu ol li:before {content:">";display: inline-block;margin: 0 8px 0 5px;font-size: 1rem;vertical-align: 2px;}
#pankuzu ol li p{ display: inline-block; }
#pankuzu ol li .pankuzuarr{ font-size: 1rem; vertical-align: 2px; display: inline-block; margin: 0 8px 0 5px; }
#pankuzu ol li:first-child:before { display: none; }
#pankuzu ol li:first-child img{width: 14px;height: 14px;vertical-align: 0px;margin-right: 5px;}
#pankuzu ol li a{ text-decoration: none; }
#pankuzu ol li a:hover { opacity: 0.7; transition: 0.3s; }
@media screen and (max-width: 1200px) { 
	#pankuzu{ display: none; }
}

#article.under{ margin-bottom: 160px; }

#main._contentwithside { padding-top: 130px; padding-bottom: 150px; }
#main._contentwithside .maincontent { display: flex; flex-direction: row; margin-bottom: 150px; }
#main._contentwithside .maincontent{ padding-top: 0 !important; }
#main._contentwithside .maincontent #articlewp { width: 100%; }
#main._contentwithside .maincontent #side { flex-shrink: 0; width: 200px; margin-left: 8%; margin-top: -15px; }
#main._contentwithside .maincontent #side .cstitle{ padding-bottom: 10px; margin-bottom: 15px; border-bottom: 1px solid #191919; font-weight: normal; font-size: 2rem; }
#main._contentwithside .maincontent #side .csection{ margin-bottom: 55px; }
#main._contentwithside .maincontent #side .csection:last-child{ margin-bottom: 0; }
#main._contentwithside .maincontent #side .cslist>li>a{ display: inline-block; overflow: hidden; position: relative; }
#main._contentwithside .maincontent #side .cslist>li:not(:first-child){ margin-top: -5px; }
#main._contentwithside .maincontent #side .cslist>li>a:before{ content: ""; background: #666; display: inline-block; position: absolute; bottom: 0; left: 0; width: 0; height: 1px; transition: .6s }
#main._contentwithside .maincontent #side .cslist>li>a:hover{ opacity: 1; }
#main._contentwithside .maincontent #side .cslist>li>a:hover:before { width: 100% }
@media screen and (max-width: 1040px) {
	#main._contentwithside { padding-top: 90px; padding-bottom: 120px; }
	#main._contentwithside .maincontent { display: block; margin-bottom: 0; }
	#main._contentwithside .maincontent #articlewp+.insec .pagenav{ padding-bottom: 100px; }
	body.single #main._contentwithside .maincontent #articlewp+.insec .pagenav{ padding-top: 100px; }
	#main._contentwithside .maincontent #side { width: 100%; margin-left: 0% }
	#main._contentwithside .maincontent #side .cslist{ columns: 3; }
}
@media screen and (max-width: 767px) {
	#main._contentwithside { padding-bottom: 90px; }
	#main._contentwithside .maincontent #side .cslist{ columns: 2; }
	body.single #main._contentwithside .maincontent #articlewp+.insec .pagenav{ padding-top: 80px; }
}
@media screen and (max-width: 400px){
	#main._contentwithside .maincontent #side .cslist{ columns: inherit; }
}
