/* One navigation surface across home, news, articles and site tools. */
html{scroll-padding-top:108px}
html body .site-header{position:sticky;top:0;z-index:100;box-sizing:border-box;background:#f4f8f6;border:0;border-bottom:1px solid #ffffffb3;box-shadow:0 6px 24px #123b4312,inset 0 1px 0 #fff;font-family:system-ui,-apple-system,"Segoe UI","Noto Sans JP",sans-serif;font-size:16px;line-height:1.75;color:#103942}
html body .site-header .site-header-inner{box-sizing:border-box;max-width:1180px;min-height:82px;margin:0 auto;padding:10px 24px;display:flex;align-items:center;justify-content:space-between;gap:24px}
html body .site-header .site-brand{display:flex;flex-shrink:0;margin:0;padding:0;text-decoration:none;color:#103942}
html body .site-header .site-brand img{display:block;box-sizing:border-box;width:286px;height:auto;max-width:min(286px,55vw);margin:0;padding:0;background:transparent;object-fit:contain}
html body .site-header nav{display:flex;align-items:center;gap:6px;margin:0;padding:0}
html body .site-header nav a{display:flex;align-items:center;box-sizing:border-box;min-height:44px;margin:0;padding:6px 13px;font-size:14px;font-weight:750;letter-spacing:normal;line-height:1.75;white-space:nowrap;color:#103942;text-decoration:none;border:0;background:transparent;border-radius:6px}
html body .site-header nav a[aria-current="page"]{color:#076b68;background:transparent;text-decoration:none}
html body .site-header nav a:hover{background:#e4f1f080;color:#076b68}
html body .site-header a:focus-visible{outline:3px solid #bb6b16;outline-offset:3px;border-radius:3px}
@supports ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){html body .site-header{background:linear-gradient(135deg,#ffffffb8,#eef7f080);-webkit-backdrop-filter:blur(22px) saturate(160%);backdrop-filter:blur(22px) saturate(160%)}}
html body .site-header .site-mobile-menu{display:none}
@media(max-width:900px){
  html{scroll-padding-top:72px}
  html body .site-header .site-header-inner{position:relative;min-height:56px;padding:6px 16px;flex-direction:row;align-items:center;gap:12px}
  html body .site-header .site-brand img{height:34px;width:auto;max-width:min(210px,calc(100vw - 140px))}
  html body .site-header .site-desktop-nav{display:none}
  html body .site-header .site-mobile-menu{display:block;margin:0;padding:0;border:0;background:transparent;color:inherit}
  html body .site-header .site-mobile-menu summary{display:flex;align-items:center;justify-content:center;gap:8px;box-sizing:border-box;min-width:44px;min-height:44px;padding:8px 6px;list-style:none;font-size:12px;font-weight:700;line-height:1.5;color:#103942;border-radius:6px;cursor:pointer}
  html body .site-header .site-mobile-menu summary::-webkit-details-marker{display:none}
  html body .site-header .site-mobile-menu summary::marker{content:""}
  html body .site-header .site-mobile-menu summary:hover{background:#e4f1f080}
  html body .site-header .site-mobile-menu summary:focus-visible{outline:3px solid #bb6b16;outline-offset:2px}
  html body .site-header .site-menu-icon{display:flex;flex-direction:column;justify-content:center;gap:4px;width:19px;height:20px}
  html body .site-header .site-menu-icon span{display:block;width:19px;height:2px;border-radius:1px;background:currentColor;transform-origin:center;transition:transform .18s ease,opacity .18s ease}
  html body .site-header .site-mobile-menu[open] .site-menu-icon span:first-child{transform:translateY(6px) rotate(45deg)}
  html body .site-header .site-mobile-menu[open] .site-menu-icon span:nth-child(2){opacity:0}
  html body .site-header .site-mobile-menu[open] .site-menu-icon span:last-child{transform:translateY(-6px) rotate(-45deg)}
  html body .site-header .site-mobile-links{position:absolute;top:100%;left:12px;right:12px;box-sizing:border-box;max-height:calc(100svh - 80px);overflow-y:auto;padding:8px;background:#f4f8f6;border:1px solid #d2e2dc;border-radius:0 0 12px 12px;box-shadow:0 14px 24px #123b4326}
  html body .site-header .site-mobile-links a{display:flex;align-items:center;min-height:48px;box-sizing:border-box;padding:10px 14px;border-radius:6px;font-size:14px;font-weight:700;color:#103942;text-decoration:none}
  html body .site-header .site-mobile-links a:hover,html body .site-header .site-mobile-links a[aria-current="page"]{background:#e4efea;color:#076b68}
}
@media(prefers-reduced-motion:reduce){html body .site-header .site-menu-icon span{transition:none}}
@media(prefers-reduced-transparency:reduce){html body .site-header{background:#f4f8f6;-webkit-backdrop-filter:none;backdrop-filter:none}}
@media print{html{scroll-padding-top:0}html body .site-header{position:static;background:#fff;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none}}
