.site-language { background: #fff; color: #4a5560; border-bottom: 1px solid #e5e5e5; }
.site-language__inner { max-width: 1160px; margin: 0 auto; padding: 7px 32px; display: flex; justify-content: flex-end; align-items: center; gap: 12px; font: 600 12px/1.5 'Chakra Petch', 'Noto Sans JP', sans-serif; }
.site-language a { display: inline-flex; align-items: center; min-height: 28px; color: #4a5560; text-decoration: none; }
.site-language a[aria-current="page"] { color: #a6000f; font-weight: 700; }
.site-language a:hover { text-decoration: underline; text-underline-offset: 4px; }
.site-language a:focus-visible { outline: 2px solid #a6000f; outline-offset: 4px; }
html[lang="en"] .hero h1 { letter-spacing: -0.025em; }
html[lang="en"] .product-heading h1 { max-width: 30ch; }
@media (max-width: 880px) {
  .site-language__inner { padding: 4px 20px; }
  html[lang="en"] .hero h1 { font-size: clamp(34px, 9vw, 54px); }
  html[lang="en"] .flow { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 540px) {
  html[lang="en"] .flow { grid-template-columns: 1fr; }
  html[lang="en"] .cta-band .wrap { align-items: flex-start; }
}
