@charset "utf-8";



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

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

//////////////////*/
/*
#mainv.index{ position: relative; height: 100vh; padding-bottom: 90px; box-sizing: border-box; }
#mainv.index .maincopy{display: flex;writing-mode: vertical-rl;-webkit-writing-mode: vertical-rl;color: #fff;font-size: 4.4vh;z-index: 10;position: relative;width: 100%;height: 100%;padding: 12% 8%;}
#index #mainv.index .slidebox{ position: absolute; top: 0; bottom: 0; right: 0; left: 0; width: 100%; height: 100%; }
#index #mainv.index .slidebox,
#index #mainv.index .slick-slider,
#index #mainv.index .slick-list,
#index #mainv.index .slick-track,
#index #mainv.index .slick-slide{ height: 100%; }
@media screen and (max-width: 1200px){
	#mainv.index{ height: 100vh; padding-bottom: 0; }
}
@media screen and (max-width: 1040px){
}
@media screen and (max-width: 767px){
	#mainv.index .maincopy{ font-size: 3.4vh; padding: 100px 8%;}
}
@media screen and (max-width: 500px){
}
*/
#mainv.index{ position: relative; height: 100vh; padding-bottom: 90px; box-sizing: border-box; min-height: 600px; }
#mainv.index .maincopy{display: flex;writing-mode: vertical-rl;-webkit-writing-mode: vertical-rl;color: #fff;font-size: 4rem;z-index: 10;position: relative;width: 100%;height: 100%; padding-top: 10%; padding-right:8%; text-shadow: 0 0 8px rgba(0,0,0,0.15);}

#index #mainv.index .slidelist { width: 100%; height: 100%; box-sizing: border-box; position: absolute; top: 0; left: 0; z-index: -1; }
#index #mainv.index .slick-list,
#index #mainv.index .slick-track,
#index #mainv.index .slidelist ul,
#index #mainv.index .slidelist li { height: 100%; width: 100%; position: relative;  }
#index #mainv.index .slidelist li .bg { object-fit: cover; font-family: 'object-fit: cover;'; display: block; width: 100%; height: 100%; transform: scale(1.1); transition: 5s cubic-bezier(.645, .045, .355, 1); z-index: -1; }
#index #mainv.index .slidelist li.slick-current img { transform: scale(1); }
#index #mainv.index .slidelist li._1 .bg{ object-position: 86% 50%; }
#index #mainv.index .slidelist li._2 .bg{ object-position: 31% 50%; }
#index #mainv.index .slidelist li._3 .bg{  }
#index #mainv.index .slidelist li._4 .bg{ object-position: 86% 50%; }
#index #mainv.index .slidelist li._5 .bg{ object-position: 42% 50%; }
#index #mainv.index .slidelist li._6 .bg{  }
@media screen and (max-width: 1200px){
	#mainv.index{ height: 100vh; padding-bottom: 0; min-height: auto; }
}
@media screen and (max-width: 1040px){
}
@media screen and (max-width: 767px){
	#mainv.index .maincopy{ font-size: 3rem; padding: 140px 8%;}
}
@media screen and (max-width: 500px){
	#mainv.index .maincopy{ font-size: 2.4rem; padding: 120px 8%;}
}



#header .mainbox{display: flex;flex-direction: row;padding-left: 3%;justify-content: space-between;height: 90px;position: absolute; left: 0; z-index: 1000000; width: 100%;background: #fff;transition: all .7s ease-out;}
#header .mainbox .logobox{padding-top: 35px; position: relative; z-index: 10;}
#header .mainbox .logobox .logo>a{display: flex;flex-direction: row;position: relative;align-items: flex-end;padding-right: 91px;transition: all .7s ease-out;}
#header .mainbox .logobox .logo img._2{width: 72px;height: 148px;position: absolute;bottom: -10px;right: 0;z-index: 10;transition: all .7s ease-out;}
#index #header  .mainbox{ bottom: -3px; }
#index #header .logobox .logo img._2{ top: calc(100% - 140px); bottom: auto; }
#index #header.fixed .mainbox,
body:not(#index) #header .mainbox{ position: fixed; top: 0; bottom: auto; }
#index #header.fixed .mainbox .logobox .logo>a,
body:not(#index) #header .mainbox .logobox .logo>a{ padding-right: 80px; }
#index #header.fixed .mainbox .logobox .logo img._2,
body:not(#index) #header .mainbox .logobox .logo img._2{bottom: auto;top: 10px;}
#index #header.fixed .mainbox .logobox .logo img._2,
body:not(#index) #header.fixed .mainbox .logobox .logo img._2{width: 44px;height: 138px;right: calc(100% - 40px);}
#index #header.fixed .mainbox .logobox .logo>a,
body:not(#index) #header.fixed .mainbox .logobox .logo>a{ padding-right: 40px; }
#mainv.under{ margin-top: 90px; }
@media screen and (max-width: 1500px){
	#header .mainbox .logobox .logo>a{ padding-right: 0!important; }
	#header .mainbox .logobox .logo img:not(._2){ height: auto; width: 200px; }
	#header .mainbox .logobox .logo img._2{bottom: 35px;left:0;}
	#index #header .logobox .logo img._2{ top: calc(100% - 184px); }
	#index #header.fixed .mainbox .logobox .logo img._2,
	body:not(#index) #header .mainbox .logobox .logo img._2{top: 30px;}
	#index #header.fixed .mainbox .logobox .logo img._2,
	body:not(#index) #header.fixed .mainbox .logobox .logo img._2{width: 40px;height: auto;}
	#index #header.fixed .mainbox .logobox .logo img._2,
	body:not(#index) #header.fixed .mainbox .logobox .logo img._2{ width: 40px; }
}
@media screen and (max-width: 1200px){
	#index #header.fixed .mainbox,
	body:not(#index) #header .mainbox{ position: relative;background: transparent; }
	#mainv.under{ margin-top: 0; }
	#header .mainbox{ position: absolute; height: 100vh; display: flex; left: 0; top: 0; align-items: flex-end; padding-bottom: 30px; background: transparent; }
	#header .mainbox .logobox .logo img._2{ right: auto; left: 8%; bottom: 45px; }
	body:not(#index) #header .mainbox{ height: auto; }
	body:not(#index) #header .mainbox .logobox .logo img._2{width: 40px;height: auto;left: 0;}
}
@media screen and (max-width: 1040px){
}
@media screen and (max-width: 767px){
}
@media screen and (max-width: 500px){
}


#gnav{display: flex;position: relative;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: -35px; }
#gnav .mainlist li {display: flex;position: relative;align-items: center;margin-left: 35px;}
#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: #3d8093; }


/* #gnav.navlist .main>li.hassub{ position: relative; }
#gnav .mainlist li>div.sub {opacity: 0;position: absolute;top: 40px;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>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 }
#gnav .mainlist li>div.sub a:hover{ color: #3d8093; }
#gnav .mainlist li:hover>div.sub{ opacity: 1; visibility: visible; } */

#gnav .insta{margin-left: 20px;height: 24px;padding-top: 2px;}
#gnav .insta>a:hover .instaicon_st0.st0{fill:#3d8093;}

#gnav .contactlist{margin-left: 30px;height: 100%;display: flex;}
#gnav .contactlist>li,
#gnav .contactlist>li>a{ display: flex; }
#gnav .contactlist>li:nth-child(1)>a,
#gnav .contactlist>li:nth-child(1)>p{background: #3d8093;border-bottom-left-radius: 5px;color: #fff;font-size: 1.7rem;font-weight: bold;display: flex;padding: 26px 8%;width: 225px;align-items: center;justify-content: center;border: 1px solid #3d8093;border-right: none;flex-direction: column;line-height: 1.7;}
#gnav .contactlist>li:nth-child(1)>p ._2{ font-size: 1.2rem; display: block; }
#gnav .contactlist>li:nth-child(1)>a br._1,
#gnav .contactlist>li:nth-child(1)>p br._1{ display: none; }
#gnav .contactlist>li:nth-child(1)>a:hover{ background: #fff;color: #3d8093; }
#gnav .contactlist>li:nth-child(2),
#gnav .contactlist>li:nth-child(3){ display: none; }


#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: 1500px){
	#gnav .mainlist ul{ margin-left: -20px; font-size: 1.5rem; }
	#gnav .mainlist li { margin-left: 20px; }
	#gnav .contactlist>li:nth-child(1)>a br._1,
	#gnav .contactlist>li:nth-child(1)>p br._1{ display: block; }
	#gnav .contactlist>li:nth-child(1)>a,
	#gnav .contactlist>li:nth-child(1)>p{ width: 140px; line-height: 1.4; text-align: center; padding-top: 15px; padding-bottom: 15px; }
	#gnav .contactlist>li:nth-child(1)>p ._2{ margin-top: 5px; }
}
@media screen and (max-width: 1200px){
	#gnav{z-index: 1000000000;position: fixed;top: 0;bottom: 0;right: -580px;height: 100vh!important;display: block;overflow: hidden;width: 580px;visibility: hidden;pointer-events: none;transition: right 1s cubic-bezier(0.25, 1, 0.5, 1) 0s;padding-right: 0;text-align: left;}
	/* #gnav{z-index: 1000000000;opacity: 0;position: fixed;top: 0;bottom: 0;right: -580px;height: 100vh!important;display: block;overflow: hidden;width: 580px;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: flex-start; text-align: left; }
	#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: 150px 10% 150px;box-sizing: border-box;height: 100%;display: block !important;}
	#gnav.navlist .mainlistcover>.inwrap::-webkit-scrollbar { display: none; }
	#gnav.navlist .mainlist>li,
	#gnav.navlist .insta,
	#gnav.navlist .contactlist>li{ transition: .3s; opacity: 0 }

	#gnav .mainlist{ height: auto; display: block; }
	#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; }

	#gnav .insta{ margin-top: 20px; margin-left: 0; }
	#gnav .insta .instaicon_st0.st0{fill:#fff;}

	#gnav.navlist .contactlist{margin-top: 70px;margin-left: 0;display: block;}
	#gnav .contactlist{ height: auto; }
	#gnav .contactlist>li,
	#gnav .contactlist>li>a{ display: block; }
	#gnav .contactlist>li:nth-child(2),
	#gnav .contactlist>li:nth-child(3){ display: block; }
	#gnav.navlist .contactlist>li:not(:last-child){margin-bottom: 10px;}
	#gnav.navlist .contactlist>li>a,
	#gnav.navlist .contactlist>li>p{border: 1px solid #fff;color: #fff;padding: 10px 8%;text-align: center;width: 100%;border-radius: 0;display: flex;align-items: center;justify-content: center;height: 80px;}
	#gnav.navlist .contactlist>li:nth-child(1)>a,
	#gnav.navlist .contactlist>li:nth-child(1)>p{ font-size: 2rem; }
	#gnav.navlist .contactlist>li:nth-child(1)>a ._1,
	#gnav.navlist .contactlist>li:nth-child(1)>p ._1{ display: none; }
	#gnav.navlist .contactlist>li:nth-child(2)>a{ font-size: 2.5rem; }
	#gnav.navlist .contactlist>li:nth-child(2)>a svg{ margin-right: 10px; width: 18px; height: 18px; }
	#gnav.navlist .contactlist>li:nth-child(3)>a{font-size: 1.6rem;position: relative;padding-right: 45px;}
	#gnav.navlist .contactlist>li:nth-child(3)>a svg{ margin-right: 20px; width: 30px; height: 24px; }
	#gnav.navlist .contactlist>li:nth-child(3)>a:before{content: "";position: absolute;top: 0;bottom: 0;margin-top: auto;margin-bottom: auto;right: 20px;width: 6px;height: 6px;border: 2px solid;border-color:  transparent transparent #fff #fff;transform: rotate(-135deg);}

	/* #gnav .mainlist li>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{-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); transition-duration: 0.6s; transition-timing-function: cubic-bezier(0.075, 0.82, 0.165, 1); background-color: #3d8093; overflow: hidden; position: absolute; top: 0px; right: 0px; bottom: 0px; left: 0px; }
	#gnav.is-open{ pointer-events: auto; right: 0; }
	#gnav .bg .inbg{ position: absolute; left: 0; top: 0; width: 100vw; height: 100vh; z-index: 2; transition: all .6s; cursor: pointer; display: block; background-color: #3d8093; }
	/* #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,
	#gnav.navlist.is-open .contactlist>li,
	#gnav.navlist.is-open .insta{ opacity:1; transition: 2s cubic-bezier(0.25, 1, 0.5, 1); }
	#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: .65s; transition-delay: .65s; }
	#gnav.navlist.is-open .mainlist>li:nth-child(3){ -webkit-transition-delay: .7s; transition-delay: .7s; }
	#gnav.navlist.is-open .mainlist>li:nth-child(4){ -webkit-transition-delay: .75s; transition-delay: .75s; }
	#gnav.navlist.is-open .mainlist>li:nth-child(5){ -webkit-transition-delay: .8s; transition-delay: .8s; }
	#gnav.navlist.is-open .mainlist>li:nth-child(6){ -webkit-transition-delay: .85s; transition-delay: .85s; }
	#gnav.navlist.is-open .mainlist>li:nth-child(7){ -webkit-transition-delay: .9s; transition-delay: .9s; }
	#gnav.navlist.is-open .insta{ -webkit-transition-delay: .95s; transition-delay: .95s; }
	#gnav.navlist.is-open .contactlist>li:nth-child(1){ -webkit-transition-delay: 1s; transition-delay: 1s; }
	#gnav.navlist.is-open .contactlist>li:nth-child(2){ -webkit-transition-delay: 1.05s; transition-delay: 1.05s; }
	#gnav.navlist.is-open .contactlist>li:nth-child(3){ -webkit-transition-delay: 1.05s; transition-delay: 1.05s; }
}
@media screen and (max-width: 767px){
	#gnav{right: -100vw;width: 100vw;}
	#gnav .contactlist{ flex-direction: column-reverse; }
	#gnav.navlist .mainlistcover>.inwrap{padding: calc(40px + 8vh) 10% calc(40px + 8vh);}
	#gnav.navlist .contactlist{ margin-top: 60px; }
	#gnav.navlist .mainlist>li{ margin-bottom: 15px; }
	#gnav.navlist .contactlist>li:nth-child(3)>a{ line-height: 1.6; }
	#gnav.navlist .contactlist>li:nth-child(1)>a{ font-size: 1.8rem; }
	#gnav.navlist .contactlist>li:nth-child(1)>a ._1,
	#gnav.navlist .contactlist>li:nth-child(1)>p ._1{ display: none; }
	#gnav.navlist .contactlist>li:nth-child(2)>a{ font-size: 2rem; }
}
@media screen and (max-width: 500px){
}


#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: #2a2a2a; 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(9px) rotate(-42deg);
		transform: translateY(9px) 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 #instalink{ padding-top: 100px; padding-bottom: 100px; }
#footer #instalink>.incnt>.inwrap{ border: 1px solid #2a2a2a; display: flex; flex-direction: row; border-radius: 5px; overflow: hidden; }
#footer #instalink .img{ flex-shrink: 0; width: 210px; overflow: hidden; }
#footer #instalink .img img{ transition: .4s; position: relative; }
#footer #instalink .txt{ width: 100%; display: flex; align-items: center; justify-content: center; font-size: 2rem; position: relative; letter-spacing: 0; padding-right: 70px; padding-left: 4%; }
#footer #instalink .txt::after,
#footer #instalink .txt::before{content: "";background: url(../img/common/arr1.svg) no-repeat;background-size: contain;width: 40px;height: 8px;display: inline-block;top: 0;bottom: 0;margin-top: auto;margin-bottom: auto;right: 50px;position: absolute;transition: .4s;}
#footer #instalink .txt::after{ background: url(../img/common/arr1_blue.svg) no-repeat;background-size: contain; opacity: 0; }
#footer #instalink .txt svg{ width: 32px; height: 32px; margin-right: 10px; flex-shrink: 0; }
#footer #instalink>.incnt>.inwrap:hover .img img{ transform: scale(1.04); }
#footer #instalink>.incnt>.inwrap:hover{ color: #3d8093; }
#footer #instalink>.incnt>.inwrap:hover .txt svg .instaicon_st0.st0{fill:#3d8093; }
#footer #instalink>.incnt>.inwrap:hover .txt::before,
#footer #instalink>.incnt>.inwrap:hover .txt::after{ right: 40px; }
#footer #instalink>.incnt>.inwrap:hover .txt::before{ opacity: 0; }
#footer #instalink>.incnt>.inwrap:hover .txt::after{ opacity: 1; }
@media screen and (max-width: 1200px){
}
@media screen and (max-width: 1040px){
	#footer #instalink{ padding-top: 80px; padding-bottom: 80px; }
	#footer #instalink .txt{font-size: 1.8rem;line-height: 1.6;}
	#footer #instalink .txt svg{margin-right: 15px;}
}
@media screen and (max-width: 767px){
	#footer #instalink{ padding-top: 60px; padding-bottom: 60px; }
	#footer #instalink>.incnt>.inwrap{ flex-direction: column-reverse; }
	#footer #instalink .img{ width: 100%; }
	#footer #instalink .img img{ height: 200px; object-position: 50% 20%; }
	#footer #instalink .txt{display: block;text-align: center;padding-bottom: 40px;padding-top: 40px;padding-left: 6%;padding-right: 6%;}
	#footer #instalink .txt::after, #footer #instalink .txt::before{ right: 20px; }
	#footer #instalink .txt svg{display: block;margin-bottom: 15px;margin-right: 0;text-align: center;margin-left: auto;margin-right: auto;}
	#footer #instalink .txt::after,
	#footer #instalink .txt::before{ width: 30px; height: 6px; }
	#footer #instalink>.incnt>.inwrap:hover .txt::before,
	#footer #instalink>.incnt>.inwrap:hover .txt::after{ right: 10px; }
}
@media screen and (max-width: 500px){
}

#footer #fimglist{ display: flex; flex-direction: row; }
#footer #fimglist>li{ width: 100%; }
#footer #fimglist>li img{ height: 500px; }
#footer #fimglist>li:nth-child(1){flex-shrink: 0;width: 56%;}
@media screen and (max-width: 1200px){
}
@media screen and (max-width: 1040px){
}
@media screen and (max-width: 767px){
	#footer #fimglist{ display: block; }
	#footer #fimglist>li:nth-child(1){width: 100%;}
	#footer #fimglist>li img{ height: auto; }
}
@media screen and (max-width: 500px){
}

#footer #fcontact{ background: #3d8093; color: #fff; padding-top: 80px; padding-bottom: 80px; }
#footer #fcontact .title{ text-align: center; margin-bottom: 40px; }
#footer #fcontact .title>.inwrap{ display: inline-block; padding-left: 40px; padding-right: 40px; font-size: 3rem; position: relative; }
#footer #fcontact .title>.inwrap::before,
#footer #fcontact .title>.inwrap>.inwrap::before,
#footer #fcontact .title>.inwrap::after,
#footer #fcontact .title>.inwrap>.inwrap::after{ content: ""; background: #fff; width: 2px; height: 54px; display: inline-block; bottom: 0; position: absolute;  }
#footer #fcontact .title>.inwrap::before,
#footer #fcontact .title>.inwrap>.inwrap::before{ transform: rotate(-30deg); }
#footer #fcontact .title>.inwrap::after,
#footer #fcontact .title>.inwrap>.inwrap::after{ transform: rotate(30deg); }
#footer #fcontact .title>.inwrap::before{ left: 0; }
#footer #fcontact .title>.inwrap::after{ right: 0; }
#footer #fcontact .title>.inwrap>.inwrap::before{ left: 6px; }
#footer #fcontact .title>.inwrap>.inwrap::after{ right: 6px; }
#footer #fcontact .link{ text-align: center; margin-left: -60px; margin-bottom: -30px; }
#footer #fcontact .link>li{ display: inline-block; margin-left: 60px; margin-bottom: 30px; vertical-align: top; }
#footer #fcontact .link>li .tel .maintxt{padding-left: 30px;position: relative;}
#footer #fcontact .link>li .tel svg{position: absolute;top: 10px;bottom: 0;margin-top: auto;margin-bottom: auto;left: 0;}
#footer #fcontact .link>li .tel .num{font-size: 4.2rem;margin-left: 10px;line-height: 1.2;}
#footer #fcontact .link>li .tel .txt{font-size: 1.8rem;line-height: 1.4;}
#footer #fcontact .link>li .tel:hover{ color: #fff; }
#footer #fcontact .link>li .contactlink{border: 1px solid #fff;border-radius: 5px;font-size: 2rem;display: flex;align-items: center;justify-content: center;width: 400px;letter-spacing: 0;padding: 20px 20px;}
#footer #fcontact .link>li .contactlink>.inwrap{display: inline-block;padding-right: 55px;position: relative;padding-left: 35px;}
#footer #fcontact .link>li .contactlink>.inwrap svg{position: absolute;top: 2px;bottom: 0;margin-top: auto;margin-bottom: auto;left: 0;}
#footer #fcontact .link>li .contactlink>.inwrap::before,
#footer #fcontact .link>li .contactlink>.inwrap::after{content: "";background: url(../img/common/arr1_white.svg) no-repeat;background-size: contain;width: 40px;height: 8px;display: inline-block;top: 0;bottom: 0;margin-top: auto;margin-bottom: auto;right: 0;position: absolute;transition: .4s;}
#footer #fcontact .link>li .contactlink>.inwrap::after{ opacity: 0; background: url(../img/common/arr1_blue.svg) no-repeat;background-size: contain; }
#footer #fcontact .link>li .contactlink:hover{ background: #fff; color: #3d8093; }
#footer #fcontact .link>li .contactlink:hover .mailicon_st0.st0{fill:#3d8093;}
#footer #fcontact .link>li .contactlink:hover>.inwrap::before,
#footer #fcontact .link>li .contactlink:hover>.inwrap::after{ right: -5px; }
#footer #fcontact .link>li .contactlink:hover>.inwrap::before{ opacity: 0; }
#footer #fcontact .link>li .contactlink:hover>.inwrap::after{ opacity: 1; }
#footer #fcontact .link>li .btnlink{ border: 1px solid #fff; height: auto; padding: 20px 20px; min-width: 300px; font-size: 2rem; }
@media screen and (max-width: 1200px){
}
@media screen and (max-width: 1040px){
	#footer #fcontact .title>.inwrap{ font-size: 2.4rem; }
	#footer #fcontact .title>.inwrap::before,
	#footer #fcontact .title>.inwrap>.inwrap::before,
	#footer #fcontact .title>.inwrap::after,
	#footer #fcontact .title>.inwrap>.inwrap::after{height: 44px; }
	#footer #fcontact .link>li .tel .num{font-size: 3.6rem;}
	#footer #fcontact .link>li .tel .txt{font-size: 1.6rem;}
	#footer #fcontact .link>li .contactlink,
	#footer #fcontact .link>li .btnlink{  font-size: 1.8rem; }
}
@media screen and (max-width: 767px){
	#footer #fcontact{ padding-top: 60px; padding-bottom: 60px; }
	#footer #fcontact .title{ margin-bottom: 30px; }
	#footer #fcontact .title>.inwrap{ font-size: 2rem; }
	#footer #fcontact .title>.inwrap::before,
	#footer #fcontact .title>.inwrap>.inwrap::before,
	#footer #fcontact .title>.inwrap::after,
	#footer #fcontact .title>.inwrap>.inwrap::after{height: 34px; }
	#footer #fcontact .link{margin-left: 0; }
	#footer #fcontact .link>li{ display: block; margin-left: 0;  }
	#footer #fcontact .link>li .tel{display: block;max-width: 235px;line-height: 1.4;margin-right: auto;margin-left: auto;}
	#footer #fcontact .link>li .tel svg{bottom: auto;top: 13px;}
	#footer #fcontact .link>li .tel .num{font-size: 2.8rem;margin-left: 0;}
	#footer #fcontact .link>li .tel .txt{font-size: 1.5rem;margin-left: 0;margin-top: -5px;}
	#footer #fcontact .link>li .contactlink{ max-width: 400px; width: 100%; margin-right: auto;margin-left: auto; }
	#footer #fcontact .link>li .btnlink{ max-width: 400px; width: 100%; min-width: inherit; }
}
@media screen and (max-width: 500px){
	#footer #fcontact .title>.inwrap{ font-size: 1.8rem; }
	#footer #fcontact .link>li .tel{ max-width: 225px; }
	#footer #fcontact .link>li .tel .num{font-size: 2.6rem;}
	#footer #fcontact .link>li .tel .txt{font-size: 1.4rem;}
	#footer #fcontact .link>li .contactlink{ font-size: 1.7rem; }
	#footer #fcontact .link>li .contactlink>.inwrap::before,
	#footer #fcontact .link>li .contactlink>.inwrap::after{ width: 30px; height: 6px; }
}

#footer #mainfooter{ background: #f6f6f6; padding-top: 70px; padding-bottom: 50px;  }
#footer #mainfooter>.incnt{ max-width: 1350px; }
#footer #mainfooter>.incnt>.inwrap{ display: flex; flex-direction: row; justify-content: space-between; }
#footer #mainfooter .footerinfo .logobox{ margin-bottom: 20px; }
#footer #mainfooter .footerinfo .addressbox{ display: flex; flex-direction: row; align-items: center; }
#footer #mainfooter .footerinfo .addressbox .txt{ flex-shrink: 0; margin-right: 30px; }
#footer #mainfooter .footerinfo #cr{ font-size: 1.3rem; margin-top: 20px; }
#footer #mainfooter #fnav{ writing-mode: vertical-rl;-webkit-writing-mode: vertical-rl;text-orientation: upright; -webkit-text-orientation: upright; }
#footer #mainfooter #fnav .mainlist>ul{ font-size: 1.5rem; }
#footer #mainfooter #fnav .mainlist>ul>li{ margin-left: 12px; }
#footer #mainfooter #fnav .mainlist>ul>li>a:hover{ color: #3d8093; }
#footer #mainfooter #fnav .insta>a:hover>svg .instaicon_st0.st0{ fill: #3d8093; }
@media screen and (max-width: 1200px){
}
@media screen and (max-width: 1040px){
	#footer #mainfooter{ padding-bottom: 30px; }
	#footer #mainfooter #fnav{ display: none; }
	#footer #mainfooter>.incnt>.inwrap{ display: block; text-align: center; }
	#footer #mainfooter .footerinfo .addressbox{ display: block; }
	#footer #mainfooter .footerinfo .addressbox .txt{ margin-right: 0;  }
	#footer #mainfooter .footerinfo .addressbox .link{ margin-top: 15px; }
	#footer #mainfooter .footerinfo #cr{ margin-top: 55px; }
}
@media screen and (max-width: 767px){
	#footer #mainfooter{ padding-top: 50px; }
	#footer #mainfooter .footerinfo #cr{ margin-top: 45px; }
}
@media screen and (max-width: 500px){
}




#mainv.under{ display: flex; align-items: center; justify-content: center; position: relative; height: 280px; background: url(../img/common/mvbg.png); background-size: 1600px auto; }
#mainv.under .pagetitle{ font-size: 4rem; line-height: 1.4; z-index: 1; position: relative; font-weight: normal; }
#mainv.under .bg{ position: absolute; top: 0; bottom: 0; left: 0; right: 0; }
#mainv.under._1{ height: 430px; background: transparent; }
#mainv.under._1 .pagetitle{ color: #fff;  }
@media screen and (max-width: 1200px){
	#mainv.under{ padding-top: 40px; box-sizing: border-box; }
	#mainv.under .pagetitle{ font-size: 3.4rem; }
	#mainv.under._1{ height: 400px; }
}
@media screen and (max-width: 1040px){
	#mainv.under._1{ height: 350px; }
	#mainv.under .pagetitle{ font-size: 3rem; }
}
@media screen and (max-width: 767px){
	#mainv.under._1{ height: 280px; }
	#mainv.under .pagetitle{ font-size: 2.6rem; }
}
@media screen and (max-width: 500px){
	#mainv.under{ height: 260px!important; padding-top: 70px; }
	#mainv.under .pagetitle{ font-size: 2.4rem; }
}


#aboutlinklist{ background: url(../img/common/mvbg.png); background-size: 1600px auto; }
#aboutlinklist>ul{padding: 18px 8%;display: flex;justify-content: center;flex-direction: row;flex-wrap: wrap;font-size: 1.7rem;}
#aboutlinklist>ul>li:not(:first-child){ padding-left: 30px; margin-left: 30px; position: relative; }
#aboutlinklist>ul>li:not(:first-child)::before{ content: ""; display: inline-block; width: 1px; height: 18px; position: absolute; top: 0; bottom: 0; margin-top: auto; margin-bottom: auto; left: 0; background: #2a2a2a; }
#aboutlinklist>ul>li>a:hover{ color: #3d8093; }
@media screen and (max-width: 1200px){
}
@media screen and (max-width: 1040px){
}
@media screen and (max-width: 767px){
	#aboutlinklist>ul{ font-size: 1.4rem; }
}
@media screen and (max-width: 500px){
}


#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;margin-top: 20px;color: #666;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: 1040px) { 
	#pankuzu{ display: none; }
}
@media screen and (max-width: 1200px){
}
@media screen and (max-width: 1040px){
}
@media screen and (max-width: 767px){
}
@media screen and (max-width: 500px){
}

#article.under{margin-top: 110px;}
@media screen and (max-width: 1200px){
}
@media screen and (max-width: 1040px){
	#article.under{margin-top: 90px;}
}
@media screen and (max-width: 767px){
	#article.under{margin-top: 70px;}
}
@media screen and (max-width: 500px){
}



#main._contentwithside{margin-top: 110px;}
#main._contentwithside .maincontent {display: flex;flex-direction: row;}
#main._contentwithside .maincontent{ padding-top: 0 !important; }
#main._contentwithside .maincontent #articlewp { width: 100%; }
#main._contentwithside .maincontent #articlewp .editbody{ font-size: 1.5rem; }
#main._contentwithside .maincontent #side { flex-shrink: 0; width: 230px; margin-left: 8%; margin-top: -15px; }
#main._contentwithside .maincontent #side .cstitle{font-size: 1.7rem; border-bottom: 1px solid #aaa;font-weight: normal;}
#main._contentwithside .maincontent #side .catlist>li{ border-bottom: 1px solid #aaa; }
#main._contentwithside .maincontent #side .catlist>li .maincat{ font-size: 1.7rem; padding-top: 15px; padding-bottom: 15px; position: relative; }
#main._contentwithside .maincontent #side .catlist>li .maincat>a:hover{ color: #3d8093; }
#main._contentwithside .maincontent #side .catlist>li .maincat>.arr{display: inline-block;position: absolute;top: 0;bottom: 0;right: 3px;margin-top: auto;margin-bottom: auto;height: 100%;width: 20px;text-align: right;box-sizing: border-box;cursor: pointer;padding-top: 9px;}
#main._contentwithside .maincontent #side .catlist>li .maincat>.arr:after{content: "";display: inline-block;width: 6px;height: 6px;border-bottom: 1px solid #000;border-right: 1px solid #000;transform: rotate(45deg);transition: .4s;}
#main._contentwithside .maincontent #side .catlist>li .maincat>.arr.open:after{transform: rotate(225deg);}
#main._contentwithside .maincontent #side .catlist>li .maincat>.arr:hover:after{ border-bottom: 1px solid #3d8093;border-right: 1px solid #3d8093; }
#main._contentwithside .maincontent #side .catlist>li .singlelist{ padding-left: 15px; padding-bottom: 15px; }
#main._contentwithside .maincontent #side .singlelist{ font-size: 1.5rem;  }
#main._contentwithside .maincontent #side .singlelist>li{ padding-left : .8em !important; text-indent : -.8em; }
#main._contentwithside .maincontent #side .singlelist>li:not(:last-child){ margin-bottom: 5px; }
#main._contentwithside .maincontent #side .singlelist>li::before{content: ">";font-size: 1.2rem;margin-right: 2px;vertical-align: 2px;}
#main._contentwithside .maincontent #side .singlelist>li>a:hover{ color: #3d8093; }
#main._contentwithside .maincontent #side .csection._singlelist{ margin-bottom: 50px; }
#main._contentwithside .maincontent #side .csection._singlelist .cstitle{ margin-bottom: 20px; }
@media screen and (max-width: 1200px) {
	#main._contentwithside .maincontent { display: block; margin-bottom: 0; }
	#main._contentwithside .maincontent #side { width: 100%; margin-top: 80px; margin-left: 0; }
	#main._contentwithside .maincontent #side .catlist{ display: flex; flex-direction: row; flex-wrap: wrap; overflow: hidden; margin-left: -20px; }
	#main._contentwithside .maincontent #side .catlist>li{ margin-left: 20px; width: calc(50% - 20px); }
	#main._contentwithside .maincontent #side .csection._singlelist .singlelist{ columns: 2; }
}
@media screen and (max-width: 1040px) {
	#main._contentwithside{margin-top: 90px;}
}
@media screen and (max-width: 767px) {
	#main._contentwithside{margin-top: 70px;}
	#main._contentwithside .maincontent #side {  margin-top: 60px; }
	#main._contentwithside .maincontent #side .catlist>li .maincat{ font-size: 1.6rem; }
	#main._contentwithside .maincontent #side .singlelist{ font-size: 1.4rem; }
	#main._contentwithside .maincontent #side .csection._singlelist .singlelist{ columns: inherit; }
}
@media screen and (max-width: 500px){
	#main._contentwithside .maincontent #side .catlist{ display: block; margin-left: 0; }
	#main._contentwithside .maincontent #side .catlist>li{ margin-left: 0; width: 100%; }
}
