
:root{--ink:#182c32;--muted:#57676c;--teal:#007f79;--line:#dce5e5;--soft:#f4f8f8;--paper:#fff}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,'Helvetica Neue','Noto Sans JP',sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}a:hover{color:var(--teal)}button{font:inherit}a:focus-visible,button:focus-visible{outline:2px solid var(--teal);outline-offset:6px}.wrap{max-width:1240px;margin:auto;padding:0 64px}header{height:116px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);gap:30px}.brand{display:flex;align-items:center;gap:12px}.brand img{width:42px;height:42px;object-fit:contain}.wordmark{font-size:17px;font-weight:600;letter-spacing:.055em;line-height:1.15}.wordmark span{display:block;font-size:13px;font-weight:400;letter-spacing:.14em;margin-top:4px}.header-right{display:flex;align-items:center;gap:40px}nav{display:flex;gap:26px;font-size:14px}.languages{display:flex;align-items:center;gap:9px;font-size:14px;color:#7c898c}.languages button{border:0;background:transparent;padding:8px 2px;cursor:pointer;color:inherit}.languages button[aria-pressed=true]{color:var(--ink);text-decoration:underline;text-underline-offset:6px;text-decoration-color:var(--teal)}.hero{padding:93px 0 83px;position:relative}.eyebrow{font-size:12px;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--teal);margin:0 0 28px}.hero h1{font-size:clamp(44px,6.1vw,78px);font-weight:400;letter-spacing:-.055em;line-height:1.09;margin:0;max-width:950px}.hero h1 span{color:var(--teal)}.hero-bottom{margin-top:38px;display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:end}.hero-description{font-size:18px;line-height:1.7;color:var(--muted);max-width:435px;margin:0}.hero-note{font-size:13px;line-height:1.6;color:var(--muted);text-align:right;margin:0}.section{border-top:1px solid var(--line);padding:52px 0;display:grid;grid-template-columns:220px 1fr;gap:35px}.section-label{font-size:14px;font-weight:400;margin:5px 0;display:flex;gap:17px}.section-label span{color:var(--teal);font-size:12px;padding-top:2px}.about-copy{font-size:23px;line-height:1.55;letter-spacing:-.02em;margin:0;max-width:760px}.secondary{font-size:16px;color:var(--muted);line-height:1.75;margin:22px 0 0;max-width:650px}.expertise{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}.expertise article{border-top:2px solid var(--teal);padding-top:20px}.expertise h3{font-size:21px;line-height:1.3;font-weight:400;margin:0 0 17px;letter-spacing:-.025em}.expertise p{font-size:15px;line-height:1.75;color:var(--muted);margin:0}.company-details{margin:0}.company-details>div{display:grid;grid-template-columns:120px 1fr;gap:25px;padding:13px 0;border-bottom:1px solid var(--line)}.company-details>div:first-child{padding-top:0}.company-details>div:last-child{border:0}.company-details dt{font-size:14px;color:var(--muted);line-height:1.8}.company-details dd{font-size:15px;line-height:1.8;margin:0}.legal-ja{font-size:13px;color:var(--muted)}.contact-band{background:var(--soft);margin-top:4px}.contact-band .section{border:0;padding:55px 0 62px}.contact-title{font-size:18px;line-height:1.5;font-weight:400;letter-spacing:0;margin:0 0 13px}.contact-copy{font-size:16px;color:var(--muted);line-height:1.7;margin:0 0 26px}.email{display:inline-flex;gap:20px;align-items:center;font-size:15px;border-bottom:1px solid var(--teal);padding-bottom:9px;letter-spacing:-.025em}.email span:last-child{font-size:23px;color:var(--teal)}footer{padding:27px 0;display:flex;justify-content:space-between;gap:20px;font-size:12px;line-height:1.6;color:var(--muted)}[hidden]{display:none!important}html[lang=ja] .hero h1{font-size:clamp(37px,5.3vw,67px);line-height:1.35;letter-spacing:-.04em}html[lang=ja] .about-copy{font-size:21px;line-height:1.85}html[lang=ja] .expertise h3{font-size:19px}
@media(min-width:1500px){.hero{padding-top:110px;padding-bottom:100px}}@media(max-width:900px){.wrap{padding:0 32px}.header-right{gap:25px}nav{gap:18px}.section{grid-template-columns:155px 1fr;gap:20px}.expertise{gap:22px}.expertise h3{font-size:19px}.hero-bottom{gap:30px}.hero-note{font-size:12px}.about-copy{font-size:21px}}@media(max-width:650px){.wrap{padding:0 24px}header{height:91px;gap:16px}.brand img{width:34px;height:34px}.wordmark{font-size:14px}.wordmark span{font-size:11px}nav{display:none}.header-right{gap:0}.languages{font-size:13px}.hero{padding:65px 0 48px}.eyebrow{font-size:11px;letter-spacing:.13em;margin-bottom:25px}.hero h1{font-size:48px}.hero-bottom{display:block;margin-top:26px}.hero-description{font-size:17px}.hero-note{text-align:left;margin-top:30px;max-width:260px}.section{padding:35px 0;grid-template-columns:1fr;gap:25px}.about-copy{font-size:21px}.secondary{margin-top:17px}.expertise{grid-template-columns:1fr;gap:26px}.expertise article{padding-top:16px}.expertise h3{margin-bottom:9px;font-size:22px}.expertise p{max-width:440px}.company-details>div{grid-template-columns:92px 1fr;gap:15px}.contact-band .section{padding:36px 0 45px}.contact-title{font-size:18px}.email{font-size:15px;gap:12px}footer{display:block}footer span{display:block}footer span+span{margin-top:7px}html[lang=ja] .hero h1{font-size:39px}html[lang=ja] .about-copy{font-size:19px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Version 2: dark technical lead, quiet supporting content. */
body{background:#f3f6f6}.wrap{max-width:1280px}header{border-color:#d0dcdc}.hero{background:#122d35;color:#f5faf9;margin:0 -64px;padding:82px 64px 62px;border-bottom:5px solid #0d9f97}.hero .eyebrow{color:#79d7cd}.hero h1{font-size:clamp(40px,5.1vw,66px);max-width:1060px;line-height:1.15}.hero h1 span:first-child{color:#fff}.hero h1 span:last-child{color:#6ad2c7!important}.hero-description{color:#cbdcde;max-width:570px}.hero-note{color:#a9c4c8}.hero-bottom{grid-template-columns:1.4fr 1fr;gap:45px;margin-top:35px}.section{border-color:#ccdada}.expertise{grid-template-columns:1.35fr 1fr 1fr;gap:22px}.expertise article{border-top:1px solid #91b7b4}.expertise .primary-focus{background:#006e68;color:#fff;border:0;padding:24px;margin-top:-4px}.primary-focus h3{color:#fff}.primary-focus p{color:#d9eeeb}.contact-band{background:#163b43;color:#f7faf9}.contact-copy{color:#bcd2d4}.contact-band .section-label span{color:#6ad2c7}.email{border-color:#6ad2c7}.email span:last-child{color:#6ad2c7}.email:hover{color:#6ad2c7}html[lang=ja] .hero h1,html[lang=zh-CN] .hero h1{font-size:clamp(34px,4.4vw,56px);line-height:1.4;letter-spacing:-.03em}html[lang=zh-CN] .about-copy{font-size:22px;line-height:1.8}html[lang=zh-CN] .hero-description{line-height:1.9}.languages{white-space:nowrap}
@media(max-width:900px){.hero{margin:0 -32px;padding:68px 32px 50px}.hero-bottom{grid-template-columns:1.5fr 1fr;gap:25px}.expertise{grid-template-columns:1fr}.expertise .primary-focus{margin:0}.expertise article:not(.primary-focus){padding-top:18px}.expertise h3{margin-bottom:10px}.header-right{gap:22px}nav{gap:15px}}
@media(max-width:650px){.hero{margin:0 -24px;padding:57px 24px 40px}.hero h1{font-size:43px;letter-spacing:-.04em}.hero-bottom{display:block}.hero-note{margin-top:30px;max-width:280px}header{gap:10px}.languages{font-size:12px;gap:7px}.brand{gap:8px}.wordmark{font-size:12px}.wordmark span{font-size:10px}.brand img{width:30px;height:30px}.hero h1 span{display:inline-block}html[lang=ja] .hero h1,html[lang=zh-CN] .hero h1{font-size:35px}html[lang=zh-CN] .about-copy{font-size:20px}.expertise .primary-focus{padding:23px}.hero-description{font-size:17px}}

.china-partner{margin-top:34px;padding-top:26px;border-top:1px solid #42636a;max-width:660px}.china-partner h3{font-size:17px;font-weight:400;margin:0 0 14px;color:#82dcd2}.china-partner .partner-name{font-size:19px;color:#fff;margin:0 0 12px}.china-partner p{font-size:14px;line-height:1.9;color:#c2d6d8;margin:8px 0}.load-error{padding:14px 24px;background:#fff5dc;color:#563f00;font-size:14px;line-height:1.7}

/* Official complete logo: replace assets/LOGO.png to update. */
.brand img{width:240px;height:80px;object-fit:contain}.brand{flex-shrink:0}@media(max-width:900px){.brand img{width:200px;height:67px}}@media(max-width:650px){.brand img{width:155px;height:52px}.languages{gap:6px}header{gap:8px}}@media(max-width:360px){header{flex-wrap:wrap;height:auto;padding:12px 0;gap:4px}.header-right{margin-left:auto}.brand img{width:145px;height:48px}}
