.language-nav{display:flex;justify-content:center;gap:4px;flex-wrap:wrap;padding:8px 12px;background:#fff;border-bottom:1px solid #ddd;position:relative;z-index:2}
.language-nav a{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:6px 13px;text-decoration:none;font-size:14px;font-weight:800;border:2px solid transparent;border-radius:999px;transition:background .15s,transform .15s}
.language-nav a[aria-current]{background:#111;color:#fff;box-shadow:3px 3px 0 #ffd43b}
.language-nav a:hover{border-color:#2f72ff;transform:translateY(-2px)}
.language-nav a:focus-visible{outline:3px solid #2f72ff;outline-offset:3px}
body.language-leaving main{opacity:0;transform:translateY(6px);transition:opacity .18s,transform .18s}
html.language-arrival main{animation:language-enter .28s ease-out}
html.language-arrival .opening-overlay{display:none!important}
html.language-arrival body.opening-locked{overflow:auto!important}
@keyframes language-enter{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
html:not([lang="ja"]) body{font-family:Inter,Arial,"PingFang SC","PingFang TC","Microsoft YaHei","Malgun Gothic",sans-serif}
html[lang="ko"] body{word-break:keep-all;overflow-wrap:anywhere}
html:not([lang="ja"]) .section-head h2,html:not([lang="ja"]) .contact-form-head h2,html:not([lang="ja"]) .reason-title,html:not([lang="ja"]) .hero-copy{white-space:normal!important;overflow-wrap:anywhere;letter-spacing:-.025em;line-height:1.25}
html:not([lang="ja"]) .headline-small{white-space:normal!important}
html:not([lang="ja"]) .faq-item summary strong{white-space:normal!important;font-size:17px!important;line-height:1.5;letter-spacing:0}
html:not([lang="ja"]) .faq-item summary{grid-template-columns:30px minmax(0,1fr) 25px;gap:8px}
html:not([lang="ja"]) .consult-dock-note{white-space:normal;line-height:1.4}
html:not([lang="ja"]) .consult-dock-btn{font-size:14px;gap:6px}
html:not([lang="ja"]) .opening-sub{font-size:clamp(14px,3vw,22px);white-space:normal}
@media(max-width:600px){
 .faq-item summary strong{white-space:normal!important;font-size:16px!important;line-height:1.5;letter-spacing:0}
 .language-nav{gap:2px;padding:5px 6px}
 .language-nav a{padding:6px 8px;font-size:12px}
 html:not([lang="ja"]) .section-head h2,html:not([lang="ja"]) .contact-form-head h2{font-size:clamp(28px,7vw,36px)!important;white-space:normal!important}
 html:not([lang="ja"]) .hero-copy{font-size:30px}
 html:not([lang="ja"]) .consult-dock-note{font-size:10px}
 html:not([lang="ja"]) .price-card{min-width:0}
 html:not([lang="ja"]) .price{font-size:clamp(32px,10vw,56px)}
}
@media(prefers-reduced-motion:reduce){.language-nav a,body.language-leaving main,html.language-arrival main{animation:none!important;transition:none!important;transform:none!important;opacity:1!important}}
