@charset "utf-8";
/* CSS Document */
.site-header{width:100%;background:#fff;position:sticky;top:0;z-index:9999;box-shadow:0 4px 12px rgba(0,0,0,.08);}
.header-logo a{text-decoration:none;color:inherit;display:inline-block;}
.logo-image{width:270px;position:relative;z-index:1002;}
.logo-image img{width:100%;}
.logo-sub{margin:6px 0 0;font-size:16px;letter-spacing:.14em;color:#999;}
.header-contact{flex:0 0 auto;display:flex;align-items:center;gap:26px;}
.header-tel{text-align:left;}
.header-tel p{margin:0 0 2px;font-size:12px;letter-spacing:.18em;color:#999;}
.menu-toggle{display:none;}

.header-inner{width:100%;min-height:130px;padding:0 clamp(16px,2.5vw,32px);display:flex;align-items:center;justify-content:space-between;gap:clamp(14px,2vw,36px);box-sizing:border-box;overflow:hidden;}
.header-logo{flex:0 1 clamp(220px,24vw,360px);min-width:180px;}
.global-nav{flex:1 1 auto;min-width:0;}
.global-nav ul{margin:0;padding:0;list-style:none;display:flex;align-items:center;justify-content:center;gap:clamp(18px,2.3vw,48px);}
.global-nav a{font-family:serif;font-size:clamp(14px,1.15vw,20px);letter-spacing:.08em;color:#333;text-decoration:none;white-space:nowrap;}
.header-contact{flex:0 1 auto;display:flex;align-items:center;gap:clamp(12px,1.5vw,26px);min-width:0;}
.header-contact-btn{width:clamp(200px,16vw,300px);height:58px;display:flex;align-items:center;justify-content:center;background:#c9aa70;border-radius:6px;box-shadow:0 10px 22px rgba(150,110,50,.25);font-family:serif;font-size:clamp(13px,1vw,18px);letter-spacing:.08em;color:#fff;text-decoration:none;white-space:nowrap;}
.header-contact-btn:hover{background:#333;}
.header-tel a{font-family:serif;font-size:clamp(18px,1.7vw,30px);font-weight:700;color:#333;text-decoration:none;white-space:nowrap;}
.global-nav a{position:relative;font-family:serif;font-size:clamp(14px,1.15vw,20px);letter-spacing:.08em;color:#333;text-decoration:none;white-space:nowrap;padding-bottom:10px;}

.global-nav a::after{content:"";position:absolute;left:0;bottom:0;width:100%;height:3px;background:#003F87;transform:scaleX(0);transform-origin:left center;transition:.25s;}

.global-nav a:hover::after{transform:scaleX(1);}

.global-nav .current-menu-item a::after{transform:scaleX(1);}

.global-nav .current_page_item a::after{transform:scaleX(1);}

.global-nav .current-menu-ancestor a::after{transform:scaleX(1);}

@media(max-width:1200px){
.header-inner{padding:0 20px;gap:20px;}
.header-logo{flex-basis:280px;}
.header-contact{gap:16px;}
.header-contact-btn{width:240px;}
}

@media(max-width:900px){
.header-inner{min-height:80px;padding:10px 18px 5px;}
.header-logo{flex:0 1 auto;}
.logo-image{width:50%;}
.logo-sub{font-size:12px;}
.menu-toggle{width:42px;height:42px;padding:0;border:none;background:transparent;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;cursor:pointer;z-index:1001;}
.menu-toggle span{width:30px;height:2px;background:#333;display:block;transition:.3s;}
.global-nav{position:fixed;top:0;left:0;width:100%;padding:100px 24px 36px;background:#fff;box-shadow:0 12px 24px rgba(0,0,0,.08);transform:translateY(-110%);transition:.35s;z-index:1000;box-sizing:border-box;}
.global-nav.is-open{transform:translateY(0);}
.global-nav ul{display:flex;flex-direction:column;gap:24px;}
.global-nav a{font-size:18px;}
.header-contact{display:none;}
.menu-toggle.is-open span:nth-child(1){transform:translateY(9px) rotate(45deg);}
.menu-toggle.is-open span:nth-child(2){opacity:0;}
.menu-toggle.is-open span:nth-child(3){transform:translateY(-9px) rotate(-45deg);}
}

.sp-contact{display:none;}

@media(max-width:900px){

.sp-contact{display:block;margin-top:32px;}

.sp-contact a{display:flex;align-items:center;justify-content:center;width:100%;height:54px;background:#c9aa70;border-radius:6px;color:#fff;font-size:16px;text-decoration:none;letter-spacing:.12em;}

}