@charset "utf-8";



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

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

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

#header { position: absolute; top: 0; left: 0; z-index: 1000000; width: 100%; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; transition: 0.5s ease-out; background: #fff; }
#header .mainbox {display: flex;flex-direction: row;justify-content: flex-end;height: 135px;padding: 0 40px 0 60px;box-sizing: border-box;}
#header .mainbox .logobox { position: absolute; top: 35px; left: 60px; z-index: 10; }

#header.scroll{ transform: translate(0px, -135px); }
#header.fixed.scroll { transform: translate(0px, 0px); }
#header.fixed{ position: fixed; }
@media screen and (max-width: 1650px) {
	#header .mainbox{padding-left: 200px;padding-right: 40px;}
	#header .mainbox .siteinfo{ position: relative; }
	#header .mainbox .snslist{position: absolute;bottom: 25px;left: -140px;}
	#header .hcontactlink,
	#header .telbox .opentime{ display: none; }
	#header .telbox .teltxt{font-size: 0;display: inline-block;width: 24px;height: 24px;}
	#header .telbox .teltxt::before{ content: none; }
	#header .telbox .teltxt>a:before{content: "";background: url(../img/common/tel.svg) no-repeat;background-size: contain;width: 24px;height: 24px;display: inline-block;vertical-align: -3px;margin-right: 8px;}
}
@media screen and (max-width: 1200px){
	#header .mainbox{ height: 110px; }
	#header .mainbox{padding-left: 150px;}
	#header .mainbox .logobox img{width: 120px;height: auto;}
	#header .mainbox .logobox { top: 22px; left: 30px; }
}
@media screen and (max-width: 1040px){
	#header{ position: static; }
	#header.fixed{ position: static; }
	#header .mainbox {height: inherit;padding: 0 0 0; }
	#header .mainbox .logobox { position: fixed; left: 6%; }
	#header .mainbox .logobox .logo>a{overflow: hidden;display: block;}
	#header .mainbox .logobox .logo>a img{margin-bottom: -20px;}
	#header .telbox .teltxt{font-size: 2rem;width: inherit;height: inherit;}
	#header .telbox .teltxt:before{content: "";background: url(../img/common/tel.svg) no-repeat;background-size: contain;width: 24px;height: 24px;display: inline-block;vertical-align: -3px;margin-right: 8px;}
	#header .telbox .teltxt>a::before{ content: none; }
	#header .telbox .opentime{ display: block; }
}
@media screen and (max-width: 767px) {
	#header .mainbox .logobox img{ width: 76px; }
	#header .mainbox .logobox .logo>a img{margin-bottom: -10px;}
}
@media screen and (max-width: 500px) {
}


#sidenavlist>ul{ position: fixed; top: 180px; right: 0; z-index: 100000; width: 72px; }
#sidenavlist>ul>li,
#sidenavlist>ul>li>a{ width: 100%; }
#sidenavlist>ul>li:not(:last-child){ margin-bottom: 10px; }
#sidenavlist>ul>li>a{font-size: 1.8rem;color: #fff;writing-mode: vertical-rl;-webkit-writing-mode: vertical-rl;line-height: 1.2;padding: 20px 14px;letter-spacing: 0.25em;border-radius: 10px 0 0 10px;display: flex;border-right: none !important;}
#sidenavlist>ul>li>a .icon{ margin-bottom: 10px; }
#sidenavlist>ul>li>a .icon .st0{fill:#fff;transition: .4s;}
#sidenavlist>ul>li>a>.inwrap{ display: flex; align-items: center; }
#sidenavlist>ul>li>a._contact{ background: #191919; border: 1px solid #191919; }
#sidenavlist>ul>li>a._event{ background: #ebb4b4; border: 1px solid #ebb4b4; }
#sidenavlist>ul>li>a._contact:hover{ background: #fff; color: #191919; }
#sidenavlist>ul>li>a._contact:hover .mail_st0.st0{fill:#191919;}
#sidenavlist>ul>li>a._event:hover{ background: #fff; color: #ebb4b4; }
#sidenavlist>ul>li>a._event:hover .event_st0.st0{fill:#ebb4b4;}
/* #sidenavlist>li>a:hover{ color: #191919; }
#sidenavlist>li>a:hover .icon .st0{fill:#191919;}
#sidenavlist>li>a._contact:hover{ background: #ccc; }
#sidenavlist>li>a._event:hover{ background: #ccc; } */
#pagetop { position: fixed; bottom: 30px; right: 4%; z-index: 1001; opacity: 0.9; width: 50px!important; left: auto; }
#pagetop a{ display: inline-block; }
#pagetop a:after{ content: ""; display: inline-block; vertical-align: middle; color: #333; line-height: 1; width: 34px; height: 34px; border: 0.1em solid currentColor; border-left: 0; border-bottom: 0; box-sizing: border-box; transform: translateY(25%) rotate(-45deg); }
@media screen and (max-width: 1040px) {
	#sidenavlist>ul{top: auto;left: 0;bottom: 0;width: 100%;height: 70px;right: 0;display: flex;flex-direction: row;}
	#sidenavlist>ul>li:not(:last-child){ margin-bottom: 0; }
	#sidenavlist>ul>li:nth-child(1){width: 240px;flex-shrink: 0;}
	#sidenavlist>ul>li:nth-child(2){ width: 100%; }
	#sidenavlist>ul>li:nth-child(3){width: 40px;flex-shrink: 0;display: flex;align-items: center;justify-content: center;background: #f2f2f2;}
	#sidenavlist>ul>li:nth-child(3)#pagetop{ padding: 0; padding-top: 5px; }
	#sidenavlist>ul>li:nth-child(3)#pagetop a:after{ width: 10px; height: 10px; }
	#sidenavlist>ul>li>a .icon{ margin-bottom: 0; margin-right: 5px; }
	#sidenavlist>ul>li>a{font-size: 1.4rem;padding: 20px 10px;letter-spacing: 0.05em;border-radius: 0;writing-mode: inherit;-webkit-writing-mode: inherit;position: relative;line-height: 1.4;height: 100%;justify-content: center; align-items: center; }
	#sidenavlist>ul>li>a>.inwrap{ position: relative; padding-right: 10px; }
	#sidenavlist>ul>li>a>.inwrap::after{ content: "";background: linear-gradient(to left bottom, transparent 50%, rgb(255, 255, 255) 51%) right top / 100% 50% no-repeat, linear-gradient(to left top, transparent 50%, rgb(255, 255, 255) 51%) left bottom / 100% 50% no-repeat; width: 4px; height: 6px; position: absolute; top: 0; bottom: 0; margin-top: auto; margin-bottom: auto; right: 0; }
	#sidenavlist>ul>li>a._event .icon{ display: none; }
	#sidenavlist>ul>li>a._event{color: inherit;justify-content: center;box-sizing: border-box;height: 100%;text-align: center;}
	#sidenavlist>ul>li>a._event>.inwrap{ padding-right: 20px; }
	#sidenavlist>ul>li>a._event>.inwrap::after{ background: linear-gradient(to left bottom, transparent 50%, rgb(25, 25, 25) 51%) right top / 100% 50% no-repeat, linear-gradient(to left top, transparent 50%, rgb(25, 25, 25) 51%) left bottom / 100% 50% no-repeat; }
	#sidenavlist>ul>li>a._contact .icon svg{width: 22px;height: 16px;vertical-align: -3px;}
	#footer{ margin-bottom: 70px; }
	#pagetop{ position: static; }
	#sidenavlist>ul>li>a._contact{ border: none; }
	#sidenavlist>ul>li>a._contact:hover>.inwrap::after{ background: linear-gradient(to left bottom, transparent 50%, rgb(25, 25, 25) 51%) right top / 100% 50% no-repeat, linear-gradient(to left top, transparent 50%, rgb(25, 25, 25) 51%) left bottom / 100% 50% no-repeat; width: 4px; }
	#sidenavlist>ul>li>a._event{ border: none; }
	#sidenavlist>ul>li>a._event:hover>.inwrap::after{ background: linear-gradient(to left bottom, transparent 50%, rgb(235, 180, 180) 51%) right top / 100% 50% no-repeat, linear-gradient(to left top, transparent 50%, rgb(235, 180, 180) 51%) left bottom / 100% 50% no-repeat; }
}
@media screen and (max-width: 500px) {
	#sidenavlist>ul>li:nth-child(1){width: 220px;}
	#sidenavlist>ul>li:nth-child(2)>a{ padding-left: 10px; padding-right: 10px; }
	#sidenavlist>ul>li:nth-child(3){ width: 35px; }
}



#gnav{ display: flex; height: 100%; }
#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,
#gnav.navlist>.inwrap>.mainlistcover>.inwrap>.inwrap{ height: 100%; display: flex; }
#gnav.navlist>.inwrap>.mainlistcover,
#gnav.navlist>.inwrap>.mainlistcover>.inwrap{ display: flex; }
#gnav.navlist>.inwrap>.mainlistcover>.inwrap>.inwrap{ display: flex; flex-direction: row; justify-content: center; text-align: right; }

#gnav .mainlist { display: flex; height: 100%; }
#gnav .mainlist ul{ display: flex; height: 100% }
#gnav .mainlist li { display: flex; position: relative; height: 100%; align-items: center; margin-left: 1.3em; }
#gnav .mainlist li.tabletblock{ display: none; }
#gnav .mainlist li:first-child{ display: 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; }
#gnav .mainlist li a:before{ content: ""; background: #666666; display: inline-block; position: absolute; bottom: 0; left: 0; width: 0; height: 1px; transition: .4s }
#gnav .mainlist li a:hover{ color: #666666; opacity: 1; }
#gnav .mainlist li a:hover:before { width: 100% }

#gnav.navlist .mainlist>li.hassub{ position: relative; }
#gnav .mainlist li>div.sub { opacity: 0; position: absolute; top: 100%; left: 50%; margin-left: -157px; min-width: 315px; box-sizing: border-box; padding: 30px 30px 35px; z-index: 1000; background: #ebb4b4; color: #fff; text-align: center; transition: .3s; visibility: hidden; }
#gnav .mainlist li>div.sub>ul{ margin-left: -20px; display: block; text-align: center; margin-bottom: -5px; }
#gnav .mainlist li>div.sub>ul>li{ display: inline-block; text-align: left; margin-left: 20px; margin-bottom: 5px; padding-bottom: 0px }
#gnav .mainlist li>div.sub a{ color: #fff; vertical-align: middle; }
#gnav .mainlist li>div.sub a:hover{ color: #666666; opacity: 1; }
#gnav .mainlist li>div.sub a:before{ background: #fff; }
#gnav .mainlist li:hover>div.sub{ opacity: 1; visibility: visible; }


#gnav .siteinfo{display: flex;flex-direction: row;align-items: center; }
#gnav .siteinfo .snslist{margin-left: 25px;}
#gnav .siteinfo .hcontactlink._sp{ display: none; }

#gnav .contactbox{margin-left: 25px;line-height: 1.6; text-align: center; }
#gnav .contactbox>ul{ display: flex; flex-direction: column; }
#gnav .contactbox>ul>li{padding-bottom: 5px;margin-bottom: 7px;border-bottom: 1px solid #191919;padding-left: 5px;padding-right: 5px;}
#gnav .contactbox>ul>li:last-child{ padding-bottom: 0; margin-bottom: 0; border-bottom: none; }
#gnav .contactbox>ul>li .msgtxt{ 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: 1650px){
	#gnav .contactbox{display: inline-block;position: absolute;bottom: 25px;left: -50px;}
	#gnav.navlist .mainlist>li{padding-bottom: 45px;font-size: 1.5rem;}
	#gnav .contactbox>ul>li{padding-bottom: 0;margin-bottom: 0;border-bottom: none;padding: 0;}
}
@media screen and (max-width: 1250px){
	#gnav.navlist .mainlist>li{font-size: 1.4rem; margin-left: 1.2em;}
}
@media screen and (max-width: 1150px){
	#gnav.navlist .mainlist>li{font-size: 1.3rem; margin-left: 1em;}
}
@media screen and (max-width: 1040px){
	#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;}
	#gnav>.inwrap{ position: relative; z-index: 10; display: block; }
	#gnav.navlist .mainlistcover{ display: block; justify-content: center; height: 100vh; width: 100% }
	#gnav.navlist .mainlistcover>.inwrap{overflow: hidden;overflow-y: scroll;-ms-overflow-style: none;width: 100%;padding: 110px 8% 110px;box-sizing: border-box;height: auto;}
	#gnav.navlist .mainlistcover>.inwrap::-webkit-scrollbar { display: none; }
	#gnav.navlist .mainlist>li,
	#gnav.navlist .siteinfo .snslist,
	#gnav.navlist .siteinfo .contactbox>ul>li{ transition: .3s; opacity: 0 }
	#gnav.navlist>.inwrap>.mainlistcover,
	#gnav.navlist>.inwrap>.mainlistcover>.inwrap{ display: block; }
	#gnav.navlist>.inwrap>.mainlistcover>.inwrap>.inwrap{ display: block; }

	#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{padding-bottom: 6px;border-bottom: 1px solid #191919;margin-bottom: 14px;font-size: 1.6rem;}
	#gnav .mainlist>li:first-child{display: block;font-size: 2.4rem;line-height: 1.4;}
	#gnav .mainlist>li:last-child{ padding-bottom: 0; margin-bottom: 0; border-bottom: none; }
	#gnav .mainlist li a,
	#gnav .mainlist li p { padding: 0; display: inline-block; text-align: justify; }
	#gnav .mainlist li a:before{ content: none }

	#gnav.navlist .mainlist>li.hassub{ padding-bottom: 9px; }
	#gnav .mainlist li.hassub a{ vertical-align: middle; }
	#gnav .mainlist li.hassub>p{ cursor: pointer; margin-bottom: -8px; }
	
	#gnav .mainlist li>div.sub {opacity: 1;position: static;margin-left: 0;min-width: inherit;padding: 0;background: transparent;color: inherit;text-align: left;visibility: visible;font-size: 1.5rem;padding-bottom: 5px;}
	#gnav .mainlist li>div.sub>ul{ margin-left: 0; text-align: left; margin-bottom: 0; }
	#gnav .mainlist li>div.sub>ul>li{ display: block; margin-left: 0; margin-bottom: 0; }
	#gnav .mainlist li>div.sub>ul>li::before{ content: "・"; vertical-align: middle; padding-top: 3px; }
	#gnav .mainlist li>div.sub a{ color: inherit; }
	
	#gnav .siteinfo{ flex-direction: column-reverse; }
	#gnav .siteinfo .snslist{margin-left: 0; text-align: center;margin-top: 25px;position: static;}
	#gnav .siteinfo .hcontactlink._pc{ display: none; }
	#gnav .siteinfo .hcontactlink._sp{ display: block; }
	#gnav .contactbox>ul>li .msgtxt{ display: block; font-size: 1.8rem; text-align: center; margin-bottom: 25px; letter-spacing: 0.1em; line-height: 1.8; }
	#gnav .contactbox{ width: 100%; margin-left: 0; }
	#gnav .contactbox>ul{flex-direction: column-reverse;width: 100%;}
	#gnav .contactbox>ul>li{padding-bottom: 0;margin-bottom: 0;border-bottom: none;width: 100%;}
	#gnav .contactbox>ul>li{margin-top: 30px;}
	#gnav .contactbox>ul>li .contactlink{width: 100%;padding-top: 17px;padding-bottom: 19px;}
	#gnav .contactbox>ul>li:nth-child(2){ display: flex; flex-direction: column-reverse; }
	#gnav .contactbox{position: static;}

	#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: #ebb4b4; 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,
	#gnav.navlist.is-open .siteinfo .snslist,
	#gnav.navlist.is-open .siteinfo .contactbox>ul>li { 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: .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; }
	#gnav.navlist.is-open .mainlist>li:nth-child(9){ -webkit-transition-delay: 1.4s; transition-delay: 1.4s; }
	#gnav.navlist.is-open .mainlist>li:nth-child(10){ -webkit-transition-delay: 1.5s; transition-delay: 1.5s; }
	#gnav.navlist.is-open .siteinfo .contactbox>ul>li:nth-child(2){ -webkit-transition-delay: 1.6s; transition-delay: 1.6s; }
	#gnav.navlist.is-open .siteinfo .contactbox>ul>li:nth-child(1){ -webkit-transition-delay: 1.7s; transition-delay: 1.7s; }
	#gnav.navlist.is-open .siteinfo .snslist{ -webkit-transition-delay: 1.8s; transition-delay: 1.8s; }
}
@media screen and (max-width: 767px){
}
@media screen and (max-width: 639px){
}
@media screen and (max-width: 479px){
}


#menubtn {display: none; z-index: 100000000001; }
@media screen and (max-width: 1040px){
	#menubtn {position: fixed;top: 34px;right: 25px;display: block;background: transparent;width: 60px;height: 16px;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: .4s; }
	#menubtn a .line:before { content: ""; background: #191919; display: inline-block; position: absolute; top: 0; bottom: 0; left: 0; right: 0; height: 1px; width: 100%; margin: auto; }
	#menubtn a #line1 { top: -1px; }
	#menubtn a #line2 {top: calc(50% - 1px);}
	#menubtn a #line3 { bottom: 0; }
	#menubtn.active a #line1 {
		-webkit-transform:translateY(7px) rotate(-42deg);
		transform: translateY(7px) rotate(-42deg);
	}
	#menubtn.active a #line2 { opacity: 0 }
	#menubtn.active a #line3 {
		-webkit-transform:translateY(-7px) rotate(42deg);
		transform: translateY(-7px) rotate(42deg);
	}
}
@media screen and (max-width: 767px){
}
@media screen and (max-width: 500px){
}


#contactsection{ display: flex; flex-direction: row; }
#contactsection .imgbox{flex-shrink: 0;width: 48%;}
#contactsection .imgbox img{ width: 100%; height: 100%; -o-object-fit: cover; object-fit: cover; }
#contactsection .txtbox{ width: 100%; background: #f7f7f7; padding: 120px 8%; box-sizing: border-box; display: flex; flex-direction: column; align-items: center; justify-content: center; }
#contactsection .txtbox .copy{ text-align: center; margin-bottom: 40px; }
#contactsection .txtbox .contactbox{ text-align: center; }
#contactsection .txtbox .contactbox>ul{ margin-bottom: -30px; }
#contactsection .txtbox .contactbox>ul>li{ margin-bottom: 30px; }
#contactsection .txtbox .contactbox>ul .hcontactlink{ max-width: 400px; width: 100%; }
#contactsection .txtbox .contactbox>ul .hcontactlink .contactlink{ width: 100%; }
@media screen and (max-width: 1040px){
	#contactsection{ flex-direction: column-reverse; }
	#contactsection .imgbox{ width: 100%; }
	#contactsection .imgbox img{ height: 400px;}
	#contactsection .txtbox{ padding: 100px 6% 80px; }
}
@media screen and (max-width: 767px){
	#contactsection .txtbox{ padding: 80px 6% 65px; }
	#contactsection .txtbox .copy{ margin-bottom: 35px; }
	#contactsection .imgbox img{ height: 300px;}
}
@media screen and (max-width: 500px){
}

#footer #fbnrlist{ margin-bottom: 100px; overflow: hidden; }
#footer #fbnrlist>.incnt{ max-width: 1280px; }
@media screen and (max-width: 1040px){
	#footer #fbnrlist{ margin-bottom: 50px; }
}

#footer #fzehbox {margin: 200px 0;}
#footer #fzehbox .sectitle{ margin-bottom: 40px; }
#footer #fzehbox .box1{ display: flex; flex-direction: row; justify-content: center; margin-bottom: 30px; }
#footer #fzehbox .box1 .imgbox{ flex-shrink: 0; width: 195px; margin-right: 20px; }
#footer #fzehbox .box1 .txtbox{ display: flex; flex-direction: column; justify-content: center; }
#footer #fzehbox .box1 .txtbox .copy{ margin-bottom: 15px; }
#footer #fzehbox .box1 .txtbox .casenum { margin-top: 0px; }
#footer #fzehbox .box1 .txtbox .casenum li { display:inline-block; text-decoration:underline; }
#footer #fzehbox .box1 .txtbox .casenum li:before { content: "・"; text-decoration:none; display: inline-block;}
#footer #fzehbox .box1 .txtbox .casenum li:not(:last-child) { margin-right:20px; }
@media screen and (max-width: 1040px){
	#footer #fzehbox{ margin: 120px 0; }
	#footer #fzehbox{ margin-bottom: 80px; }
	#footer #fzehbox .sectitle{ margin-bottom: 30px; }
}
@media screen and (max-width: 767px){
	#footer #fzehbox .box1{ display: block; }
	#footer #fzehbox .box1 .imgbox{ width: 100%; margin-right: 0; margin-bottom: 20px; text-align: center; }
	#footer #fzehbox .box1 .imgbox img{ max-width: 195px; width: 100%; }
	#footer #fzehbox .box1 .txtbox{ display: block; }
	#footer #fzehbox  table.type1 th,
	#footer #fzehbox  table.type1 td{ padding: 15px 4%; }
}

#footer #fsitedesc{ background: #f7f7f7; padding-top: 80px; padding-bottom: 75px; }
#footer #fsitedesc .copy{ margin-bottom: 20px; }
#footer #fsitedesc .txt{ font-size: 1.5rem; }
@media screen and (max-width: 1040px){
	#footer #fsitedesc .txt{ font-size: 1.4rem; }
}
@media screen and (max-width: 767px){
}
@media screen and (max-width: 500px){
	#footer #fsitedesc{ padding-top: 60px; padding-bottom: 55px; }
}

#footer #mainfooter{ padding-top: 55px; padding-bottom: 60px;  }
#footer #mainfooter>.incnt>.inwrap{display: flex;flex-direction: row;justify-content: space-between;align-items: flex-start;}
#footer #mainfooter .footerinfo{display: flex;flex-direction: row;align-items: center;padding-top: 10px;}
#footer #mainfooter .footerinfo .logobox{ margin-right: 50px; flex-shrink: 0; }
#footer #mainfooter .footerinfo .address .snslist{ margin-top: 10px; }
#footer #mainfooter #fnav{ margin-left: -70px; }
#footer #mainfooter #fnav .mainlist{ display: inline-block; vertical-align: top; margin-left: 70px; }
#footer #mainfooter #fnav .mainlist a{ position: relative; display: inline-block; overflow: hidden; }
#footer #mainfooter #fnav .mainlist a:before{ content: ""; background: #666; display: inline-block; position: absolute; bottom: 0; left: 0; width: 0; height: 1px; transition: .5s }
#footer #mainfooter #fnav .mainlist a:hover{ opacity: 1; }
#footer #mainfooter #fnav .mainlist a:hover:before { width: 100% }
#footer #mainfooter #fnav .mainlist li.hassub .sub>.inwrap>li{ font-size: 1.4rem; line-height: 1.8; }
#footer #mainfooter #fnav .mainlist li.hassub .sub>.inwrap>li:before{content: "・";vertical-align: 8px;}
#footer #mainfooter #fnav .mainlist:first-child li.hassub .sub{ margin-top: 10px; }
#footer #mainfooter #fnav .mainlist:nth-child(3) li.hassub{ margin-bottom: 20px; }
@media screen and (max-width: 1400px) {
	#footer #mainfooter>.incnt>.inwrap{ display: block; }
	#footer #mainfooter .footerinfo{ justify-content: center; }
	#footer #mainfooter #fnav{ display: none; }
}
@media screen and (max-width: 1040px){
	#footer #mainfooter .footerinfo .logobox{ margin-right: 40px; }
	#footer #mainfooter .footerinfo .logobox img{ width: 88px; }
}
@media screen and (max-width: 767px){
	#footer #mainfooter{ padding-top: 45px; padding-bottom: 50px;  padding-left: 4%; padding-right: 4%; }
	#footer #mainfooter .footerinfo .logobox{ margin-right: 30px; }
}
@media screen and (max-width: 500px){
}

#footer #crbox{background: #ebb4b4;color: #fff;padding: 15px 8% 8px;margin-left: -15px;font-size: 1.4rem;text-align: center;}
#footer #crbox #cr{display: inline-block;vertical-align: middle;margin-left: 15px;}
#footer #crbox .link{display: inline-block;vertical-align: -10px;margin-left: 15px;}
#footer #crbox .link a{ display: inline-block; position: relative; overflow: hidden; }
#footer #crbox .link a:before{ content: ""; background: #fff; display: inline-block; position: absolute; bottom: 0; left: 0; width: 0; height: 1px; transition: .5s }
#footer #crbox .link a:hover{ opacity: 1; }
#footer #crbox .link a:hover:before { width: 100% }
@media screen and (max-width: 1040px){
	#footer #crbox{padding: 13px 8% 18px;margin-left: 0;display: flex; flex-direction: column-reverse;}
	#footer #crbox #cr{display: block; font-size: 1.2rem; }
	#footer #crbox .link{display: block;}
}
@media screen and (max-width: 767px){
}
@media screen and (max-width: 500px){
}




#mainv.under{ margin-top: 355px; }
#mainv.under .txtbox{padding-bottom: 15px;}
.pagetitle{ line-height: 1.7; }
.pagetitle .en{ font-size: 2rem; margin-bottom: 5px; }
.pagetitle .jn{ font-size: 3.8rem; font-weight: normal; }
#mainv.under #pankuzu{ margin-top: 15px; padding-left: 6%; padding-right: 6%; }
#mainv.under .imgbox{ height: 503px; position: relative; }
#mainv.under .imgbox img{ width: 100%; height: 100%; -o-object-fit: cover; object-fit: cover; }
#mainv.under .imgbox img.dummy{ width: 146px; height: 62px; position: absolute; bottom: 50px; right: 10%; z-index: 2; }
@media screen and (max-width: 1400px){
	#mainv.under{ margin-top: 330px; }
}
@media screen and (max-width: 1040px){
	#mainv.under{ margin-top: 280px; }
	.pagetitle .en{ font-size: 1.8rem; }
	.pagetitle .jn{ font-size: 2.8rem; }
	#mainv.under .txtbox{ padding-bottom: 30px; padding-left: 10px; padding-right: 10px; }
	#mainv.under .imgbox{ height: 400px; }
}
@media screen and (max-width: 767px){
	#mainv.under{ margin-top: 220px; }
	#mainv.under .imgbox{ height: 300px; }
	#mainv.under .txtbox{ padding-bottom: 20px; }
	.pagetitle .en{ font-size: 1.5rem; }
	.pagetitle .jn{ font-size: 2.4rem; }
	#mainv.under .imgbox img.dummy{ bottom: 40px; right: 40px; }
}
@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.5rem;}
#pankuzu ol li { display:inline; }
#pankuzu ol li:before {content:"";background: url(../img/common/arr.svg) no-repeat;background-size: contain;width: 6px;height: 10px;display: inline-block;margin: 0 8px 0 5px;font-size: 1rem;vertical-align: 1px;}
#pankuzu ol li p{ display: inline-block; }
#pankuzu ol li .pankuzuarr{ font-size: 1rem; vertical-align: 3px; 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; }
}

#article.under{ margin-top: 120px; padding-bottom: 150px; }
@media screen and (max-width: 1040px) { 
	#article.under{ margin-top: 80px; padding-bottom: 120px; }
}
@media screen and (max-width: 767px){
	#article.under{ padding-bottom: 90px; }
}
@media screen and (max-width: 500px){
}

#article.under.wp._pt{ padding-top: 10px; }
@media screen and (max-width: 1040px){
}
@media screen and (max-width: 767px){
	#article.under.wp._pt{ padding-top: 0; }
}
@media screen and (max-width: 500px){
}

#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; }
}
