/*===============================================================================
ハンバーガーメニューの開閉ボタンの位置を揃える
================================================================================*/
/* PCヘッダー */
#header-container-in{
	padding: var(--header-vertical-gap) var(--header-side-gap) 0;
}

/* 追従ヘッダー */
#header-container.fixed-header #header-container-in{
	padding: calc( var(--header-vertical-gap) / 2 ) calc( var(--header-side-gap) / 2 );
}

/* SPヘッダー */
.mobile-header-menu-buttons{
	padding: var(--header-vertical-gap) var(--header-side-gap) !important;
}

/* ハンバーガー内 */
#navi-menu-content .navi-menu-close-button{
	display: flex;
	justify-content: space-between;
	padding: var(--header-vertical-gap) var(--header-side-gap);
}


/*===============================================================================
ヘッダー
================================================================================*/
/* PCヘッダー */
#header, #header-in{
	display: contents;
}
#header-container{
	position: fixed;
	top: 0;
	left: 0;
	z-index: 99999;
	width: 100vw;
	background-color: rgba(192, 221, 255, 1);
}
@media screen and (max-width: 1023px) {
	#header-container{
		display: none;
	}
}

/* SPヘッダー */
.mobile-header-menu-buttons{
	background: rgba(192, 221, 255, 1);
	box-shadow: none;
}

/*===============================
* 角丸のSVG
* =================================*/
.hdr-svg svg{
	position: absolute;
	top: 100%;
	left: 50%;
	transform: translateX(-50%);
	z-index: 1;
	width: 110%;
	filter: drop-shadow(0px 4px 2px rgba(0, 0, 0, 0.25));
}
.hdr-svg path{
	color: var(--c-blue);
}

/* 追従ヘッダー */
#header-container.fixed-header{
	box-shadow: none;
}

/* SPヘッダー */
.mobile-header-menu-buttons::after{
	content: "";
	display: inline-block;
	position: absolute;
	top: 100%;
	left: 50%;
	transform: translateX(-50%);
	width: 130%;
	aspect-ratio: 1440 / 26;
	background-image: url(/wp-content/uploads/mask-curve.png);
	background-repeat: no-repeat;
	background-size: contain;
	filter: drop-shadow(0px 4px 2px rgba(0, 0, 0, 0.25));
}


/*===============================
* ロゴ
* =================================*/
/* PCヘッダー */
#header :is(.logo-header, .header-site-logo-image){
	max-height: var(--logo-size);
}
@media screen and (max-width: 1023px) {
	#header :is(.logo-header, .header-site-logo-image){
		max-height: var(--logo-size);
	}
}
/* 追従ヘッダー */
#header-container.fixed-header #header :is(.logo-header, .header-site-logo-image){
	max-height: var(--logo-size);
}
#header .site-name{
	margin: 0;
	padding: 0;
}

/* SPヘッダー */
.mobile-header-menu-buttons .logo-menu-button img{
	max-height:  var(--logo-size);
}
.mobile-header-menu-buttons .navi-menu-button{
	position: absolute;
	top: var(--header-vertical-gap);
	right: var(--header-side-gap);
}

/*===============================
* ナビ
* =================================*/
#navi{
	background-color: transparent;
}

#navi .navi-in>ul>li>a{
	position: relative;
	padding: 0 .75em;
	line-height: var(--lh-sm);
	font-weight: var(--fw-lg);
	color: var(--c-navy);
}
#navi .current_page_item a,
#navi a:hover{
	background-color: transparent;
}
#navi .navi-in>ul>li>a::after{
	content: "";
	position: absolute;
	top: 100%;
	left: 50%;
	transform: translateX(-50%);
	width: 0;
	height: 4px;
	background: var(--c-light);
	border-radius: 99999px;
	overflow: hidden;
	transition: var(--ani-t--normal) ease-out;
}
#navi .navi-in>ul>.current_page_item a::after,
#navi .navi-in>ul>li>a:hover::after{
	width: 2rem;
}

/*===============================
* CTA
* =================================*/
.hdr-cta{
	order: 3;
	min-width: 16em;
	margin-left: .75rem;
}
@media screen and (max-width: 1023px) {
	.hdr-cta {
		display: none;
	}
}
.hdr-cta .c-roundedBtn{
	max-width: 16rem;
	box-shadow: none;
	font-size: 1rem;
}

/* 追従 */
#header-container.fixed-header .headerCta{
	--size: 3rem;
}



/*===============================================================================
ハンバーガーメニュー
================================================================================*/
#navi-menu-content{
	max-width: 100%;
}
/* アイコンサイズ */
.mobile-menu-buttons .menu-icon, 
.menu-close-button{
	font-size: 2rem;
}

/*===============================
* 閉じるボタン
* =================================*/
.mobile-menu-buttons .menu-button{
	width: auto;
}
#navi-menu-content .fa-close{
	display: flex;
	align-items: center;
	justify-content: center;
}

/*===============================
* メニュー
* =================================*/
#navi-menu-content .menu-drawer > li:not(:last-of-type){
	border-bottom: 1px dotted var(--c-gray);
}
#navi-menu-content .menu-drawer > li a{
	padding: .75rem .5rem;
}

#navi-menu-content .menu-drawer > li.--contact{
	margin-top: var(--g-sec--xs);
}
#navi-menu-content .menu-drawer > li.--contact a{
	position: relative;
	display: inline-flex;
	gap: .75em;
	align-items: center;
	justify-content: center;
	text-align: center;
	max-width: 25rem;
	width: 100%;
	padding: .8em;
	background: var(--c-main);
	border: 3px solid var(--c-main);
	border-radius: 100vmax;
	overflow: hidden;
	box-shadow: var(--shdw);
	font-weight: var(--fw-lg);
	font-size: 1.25rem;
	color: var(--c-light);
	cursor: pointer;
	transition: var(--ani-t--normal) ease-out;
}
#navi-menu-content .menu-drawer > li.--contact a:is(:focus, :hover){
	background: var(--c-light);
	color: var(--c-main);
}

/*===============================
* ロゴ
* =================================*/
#navi-menu-content .navi-menu-close-button::before{
	content: "";
	display: inline-block;
	width: 8rem;
	aspect-ratio: 540 / 195;
	background-image: url(/wp-content/uploads/logo.png);
	background-size: contain;
	background-repeat: no-repeat;
}

/*===============================
ハンバーガーメニューが開いている時はｽｸﾛｰﾙ禁止
* =================================*/
[data-spmenu="opened"] body {
	height: 100%;
	overflow: hidden;
}
