/* 全ページ共通のヘッダー（トップのヘッダーと同じ位置・大きさ。2026-10-29） */
header.sh{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.94);-webkit-backdrop-filter:saturate(160%) blur(12px);backdrop-filter:saturate(160%) blur(12px);border-bottom:1px solid rgba(17,20,28,.08);font-family:"Inter","Noto Sans JP",system-ui,sans-serif;font-size:15px;line-height:1.8;letter-spacing:.01em;margin:0;padding:0}
header.sh.sh-fixed{position:fixed;left:0;right:0;top:0}
header.sh .sh-in{box-sizing:border-box;max-width:1160px;margin:0 auto;padding:0 28px;height:68px;display:flex;align-items:center;gap:34px}
header.sh .sh-wm{font-weight:700;font-size:15px;letter-spacing:.3em;color:#0f1115;text-decoration:none;white-space:nowrap;margin-right:auto}
header.sh .sh-nav{display:flex;gap:34px;align-items:center;font-size:13px}
header.sh .sh-nav a{font-size:13px;color:#565b66;text-decoration:none;white-space:nowrap;padding:0;line-height:1.8}
header.sh .sh-nav a:hover{color:#0f1115}
header.sh .sh-nav a[aria-current]{color:#0f1115;text-decoration:underline;text-decoration-color:#4f5bd5;text-decoration-thickness:2px;text-underline-offset:8px}
header.sh .sh-btn{display:inline-flex;align-items:center;height:38px;padding:0 18px;border-radius:999px;background:#0f1115;color:#fff;font-size:13px;font-weight:500;text-decoration:none;white-space:nowrap;box-sizing:border-box}
header.sh .sh-btn:hover{background:#2a2e38}
@media (max-width:900px){
 header.sh .sh-in{height:auto;min-height:68px;flex-wrap:wrap;padding:17px 20px 0;gap:6px 16px}
 header.sh .sh-wm{font-size:13px;letter-spacing:.22em}
 header.sh .sh-btn{height:34px;padding:0 14px;font-size:12px}
 header.sh .sh-nav{order:3;width:100%;overflow-x:auto;gap:24px;padding:4px 0 10px;scrollbar-width:none}
 header.sh .sh-nav::-webkit-scrollbar{display:none}
 header.sh .sh-nav a{font-size:13.5px}
}
@media (min-width:901px){header#hd.sh .sh-btn{margin-left:-13px}}
/* スマホのメニュー（トップと同じ見た目。JSなしで開閉） */
.sh-tg{position:absolute;opacity:0;pointer-events:none;width:1px;height:1px}
header.sh .sh-mb{display:none;position:relative;width:40px;height:40px;cursor:pointer;margin-right:-8px;flex:none}
header.sh .sh-mb i{position:absolute;left:10px;right:10px;height:1.5px;background:#0f1115;transition:transform .45s cubic-bezier(.7,0,.2,1),top .45s cubic-bezier(.7,0,.2,1)}
header.sh .sh-mb i:first-child{top:16px}header.sh .sh-mb i:last-child{top:23px}
.sh-tg:checked~header.sh .sh-mb i:first-child{top:19.5px;transform:rotate(45deg)}
.sh-tg:checked~header.sh .sh-mb i:last-child{top:19.5px;transform:rotate(-45deg)}
.sh-mnav{position:fixed;inset:0;z-index:49;background:#fff;display:none;flex-direction:column;justify-content:center;padding:96px 24px calc(40px + env(safe-area-inset-bottom,0px));font-family:"Inter","Noto Sans JP",system-ui,sans-serif}
.sh-mnav ol{list-style:none;margin:0;padding:0}
.sh-mnav li{border-bottom:1px solid rgba(17,20,28,.08)}
.sh-mnav a{display:flex;align-items:baseline;gap:16px;padding:16px 0;font-size:clamp(26px,8vw,40px);font-weight:700;letter-spacing:-.02em;color:#0f1115;text-decoration:none}
.sh-mnav a em{font-style:normal;font-family:"JetBrains Mono",ui-monospace,monospace;font-size:11px;letter-spacing:.14em;color:#4f5bd5;font-weight:500}
.sh-mnav-f{margin:40px 0 0;font-size:11px;font-weight:700;letter-spacing:.3em;color:#0f1115}
.sh-mnav-f span{display:block;margin-top:6px;font-family:"JetBrains Mono",ui-monospace,monospace;font-weight:400;letter-spacing:.14em;color:#8b909b}
@media (max-width:900px){
 header.sh .sh-in{height:68px;min-height:0;flex-wrap:nowrap;padding:0 20px;gap:16px}
 header.sh .sh-nav{display:none}
 header.sh .sh-mb{display:block}
 header.sh{-webkit-backdrop-filter:none;backdrop-filter:none;background:#fff}
 .sh-tg:checked~.sh-mnav{display:flex}
 body:has(.sh-tg:checked){overflow:hidden}
}
