.language-menu{position:relative;flex-shrink:0;z-index:60;border:0;padding:0;margin:0}.language-menu summary{display:flex;align-items:center;gap:8px;cursor:pointer;list-style:none;font:600 13px/1.4 system-ui,sans-serif;min-height:44px;padding:8px 10px;border:1px solid #b7c9af;border-radius:8px;background:#fff;color:#162d42;white-space:nowrap}.language-menu summary::-webkit-details-marker{display:none}.language-menu img{display:inline-block;width:24px;height:16px;object-fit:cover;flex-shrink:0;border:1px solid #dce2df}.language-panel{position:absolute;right:0;top:calc(100% + 6px);min-width:195px;max-height:65vh;overflow:auto;padding:6px;background:#fff;color:#162d42;border:1px solid #b7c9af;border-radius:10px;box-shadow:0 12px 30px #162d4226}.language-panel a{display:flex!important;align-items:center;gap:10px;min-height:44px;padding:9px 12px;text-decoration:none;font:500 14px/1.4 system-ui,sans-serif;white-space:nowrap}.language-panel a:hover,.language-panel a[aria-current=page]{background:#e7eee2;border-radius:5px}.language-menu summary:focus-visible,.language-panel a:focus-visible{outline:3px solid #284de2;outline-offset:2px}header{gap:14px}.header nav{gap:16px}html[lang=ja] h1{font-size:clamp(32px,4.4vw,58px);line-height:1.4;letter-spacing:-.02em}html[lang=ja] h2{line-height:1.4}.contact-info a{overflow-wrap:anywhere}.localized-video summary{font-size:18px}@media(max-width:1100px){header,header.header{flex-wrap:wrap;height:auto!important}.language-menu{margin-left:auto}.header nav{gap:12px}}@media(max-width:760px){header,header.header{flex-wrap:wrap;height:auto!important}.language-menu{order:1;margin-left:auto}header>nav,header.header>nav{order:2;width:100%;margin-left:0!important;justify-content:space-between;gap:8px;flex-wrap:wrap}.brand{font-size:23px}.language-menu summary{font-size:12px;gap:6px;padding:7px}.language-panel{right:0}.hero h1{overflow-wrap:anywhere}html[lang=ja] .hero h1{font-size:34px}.contact-page h1{overflow-wrap:anywhere}}@media(max-width:360px){.language-menu summary{font-size:11px}.brand{font-size:21px}.brand img{width:26px}.language-menu img{width:21px;height:14px}header{gap:6px}html[lang=ja] header nav .small{font-size:12px;padding:10px 8px}}.language-menu[open] summary span{transform:none}@media(max-width:760px){.hero-visual{overflow:clip}}

header .brand{font-size:34px;white-space:nowrap;letter-spacing:-1.2px}header .brand img{width:44px;height:44px;flex-shrink:0}.footer .brand{font-size:27px}.footer .brand img{width:35px;height:35px}@media(max-width:760px){header .brand{font-size:28px}header .brand img{width:36px;height:36px}}@media(max-width:360px){header .brand{font-size:27px}header .brand img{width:34px;height:34px}}
