/* Shared by the top and pricing pages. */
.header{position:sticky;top:0;background:#edf3f8f2;isolation:isolate;backdrop-filter:blur(14px);transition:box-shadow .25s}
.header.is-scrolled{box-shadow:0 6px 24px #172c3e0a}
.header::after{content:"";position:absolute;bottom:0;left:0;width:100%;height:2px;background:var(--blue);transform:scaleX(var(--reading-progress,0));transform-origin:left}
.header-contact{border-radius:3px}
.header-contact span{display:inline-block;transition:transform .3s cubic-bezier(.2,.7,.2,1)}
.desktop-nav a{position:relative}
.desktop-nav a::after{content:"";position:absolute;left:0;bottom:3px;width:100%;height:1px;background:var(--blue);transform:scaleX(0);transform-origin:left;transition:transform .3s}
.desktop-nav a[aria-current=page],.mobile-nav a[aria-current=page]{color:var(--blue)}
.desktop-nav a[aria-current=page]::after{transform:scaleX(1)}
@media(hover:hover){.header-contact:hover span{transform:translate(3px,-3px)}.desktop-nav a:hover::after{transform:scaleX(1)}}
@media(max-width:600px){html{scroll-padding-top:105px}}
@media(prefers-reduced-motion:reduce){.header,.header-contact span,.desktop-nav a::after{transition:none}}

/* スマホでは依頼ボタンをヘッダーに出さず、メニュー内に置く（トップページと同じ。2026-10-01） */
@media(max-width:820px){.header .header-contact{display:none}.header .menu-toggle{margin-left:auto}}
