@charset "utf-8";

/****************************************************

	sub  sub-page

****************************************************/
:root {
	--sub-visual-height: 20rem !important;
	--common-width: 1300px !important;
	--max-width: 1300px !important;
	--sub-title-padding: 3rem;
}
.tab_con {padding: var(--common-padding) 0 0 0;}
.tab_con.tab-sticky {top: var(--header-height);}
.sub-page [class*=section].visual {padding-top: var(--header-height);}
.ham {display: flex; flex-direction: column; align-items: center; gap: 0; top: var(--header-height); /*padding-top: 0;*/box-sizing: border-box; overflow-x: hidden; position: absolute; left: 0; width: 100%; height: auto; z-index: 2;}
/*.ham:before {content: ""; display:block; width:100%; height: 100%; position: absolute; top: 0; left: 0;}*/
.sub-title {max-width: var(--max-width); width: 100%; padding: var(--sub-title-padding); box-sizing: border-box;}
.sub-title h2 {font-size: 5.8rem; font-weight: 200; letter-spacing: -1px; color: var(--mudgray);}
.sub-title nav {display: flex; justify-content: flex-start; align-items: flex-end; color: var(--gray); gap: 1rem; margin-top: 0rem;}
.sub-title nav i.fa-house::before,
.sub-title nav i.fa-chevron-right::before {font-size: 1.3rem;}
.sub-title nav i.fa-solid {line-height: 1.2;}
.sub-title nav p {font-size: 1.65rem;}
.snb {border-bottom: 0px solid var(--lightgray); background: unset;}
.snb .snb-area {/*background: var(--white);*/ border-bottom: 1px solid var(--black-a);}
.snb-area ul {background: var(--white);}
.snb-area ul li {/*border-right: none;*/border-right: 1px solid var(--black-a);}
.snb-area ul li:nth-of-type(1) {border-left: none;}
.snb-area ul li:nth-last-of-type(1) {border-right: none;}
.snb-area ul li a:before {content: ""; position: absolute; z-index: -1; left: 0; right: 0; bottom: 0; width: 100%; height: 100%; background: var(--main-color); transition: .3s; transform: scaleX(0); opacity: 0;}
.snb-area ul li:hover a {background: var(--main-color); color: var(--white); transform: scaleX(1); opacity: 1; overflow: hidden; }
.snb-area ul li:hover a:before {transform: scaleX(1); opacity: 1; overflow: hidden;}
.snb-area ul li.on {background: var(--main-color); color: var(--white);}
@media (max-width: 1024px) {   
	[class*=section].visual {padding-bottom: 3rem !important;}
	.sub-title h2 {font-size: 3rem;}
	/*.ham {padding-top: 8rem;}*/
	:root {
	--sub-title-padding: 4rem;
	}
@media (max-width: 800px) {
}
@media (max-width: 480px) {
}