@font-face{font-family:Manrope;src:url('/manrope-regular.ttf') format('truetype');font-weight:400;font-display:swap}
@font-face{font-family:Manrope;src:url('/manrope-bold.ttf') format('truetype');font-weight:700;font-display:swap}
:root{color-scheme:light;--ink:#18211f;--muted:#51605b;--accent:#b93824;--surface:#f2f5f3;--rule:#d7dfdb;--width:1120px}
*{box-sizing:border-box}html{scroll-padding-top:24px}body{margin:0;font:400 17px/1.7 Manrope,Arial,sans-serif;color:var(--ink);background:#fff}::selection{background:#f2c2b8;color:#18211f}a{color:inherit;text-underline-offset:5px;text-decoration-thickness:1px}a:hover{color:var(--accent)}a:focus-visible{outline:3px solid var(--accent);outline-offset:6px}p,h1,h2,h3{margin:0}h1,h2,h3{text-wrap:balance}p{max-width:68ch}h2{font-size:clamp(1.7rem,3vw,2.3rem);line-height:1.25;letter-spacing:-.035em}h3{font-size:1.5rem;line-height:1.3;letter-spacing:-.025em}.wrap{width:min(var(--width),calc(100% - 64px));margin-inline:auto}.header{min-height:112px;display:flex;align-items:center;justify-content:space-between;gap:24px;border-bottom:1px solid var(--rule)}.brand{display:inline-flex;align-items:center;gap:11px;font-size:23px;font-weight:700;text-decoration:none;letter-spacing:-.035em}.mark{display:grid;place-content:center;color:#fff;background:var(--accent);width:32px;height:32px;border-radius:6px;font-size:24px;line-height:1}.header nav{display:flex;gap:32px;font-size:15px}.header nav a{text-decoration:none;padding:10px 0}.hero{padding-block:70px 65px}.hero h1{font-size:clamp(2.5rem,5.8vw,4.4rem);line-height:1.12;letter-spacing:-.04em;max-width:920px}.hero h1 span{color:var(--accent)}.hero-bottom{margin-top:35px;display:flex;align-items:center;justify-content:space-between;gap:26px}.hero-bottom p{color:var(--muted);font-size:16px}.button{display:inline-block;background:var(--ink);color:#fff;font-weight:700;text-decoration:none;padding:13px 23px;border-radius:4px;font-size:15px;white-space:nowrap}.button:hover{background:var(--accent);color:#fff}.products{padding-block:56px;background:var(--surface)}.section-heading{display:flex;align-items:baseline;justify-content:space-between;gap:24px;margin-bottom:35px}.section-heading>p{font-size:14px;color:var(--muted)}.product-feature{display:grid;grid-template-columns:.8fr 1.4fr;border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);padding-block:40px;gap:70px}.product-identity img{display:block;border-radius:24px;margin-bottom:25px}.product-identity h3{font-size:2.4rem}.product-identity>p{margin-top:10px;color:var(--muted)}.platforms{display:flex;gap:20px;margin-top:20px;font-size:14px;font-weight:700}.lead{font-size:21px;line-height:1.55;letter-spacing:-.015em}.product-detail>p+p{margin-top:18px;color:var(--muted)}.feature-list{padding-left:20px;margin-block:23px;color:var(--muted)}.feature-list li{margin:5px 0}.actions{display:flex;align-items:center;gap:28px;margin-top:25px}.text-link{font-size:15px;font-weight:700}.experiment{padding-top:30px;display:grid;grid-template-columns:1fr 1.3fr auto;gap:30px;align-items:center}.experiment h3 span{font-size:14px;font-weight:400;margin-left:8px}.experiment p{font-size:14px;color:var(--muted);margin-top:8px}.experiment>p{margin:0}.about{display:grid;grid-template-columns:1fr 1.4fr;gap:60px;padding-block:72px}.about div p+p{margin-top:20px;color:var(--muted)}.building{padding-bottom:70px}.building .section-heading{padding-top:40px;border-top:1px solid var(--rule);margin-bottom:26px}.work-list{margin:0}.work-list>div{display:grid;grid-template-columns:1fr 1.4fr;gap:60px;border-top:1px solid var(--rule);padding-block:20px}.work-list dt{font-weight:700}.work-list dd{margin:0;color:var(--muted);font-size:16px}.contact{background:var(--ink);color:#fff;padding-block:48px}.contact-inner{display:flex;align-items:center;justify-content:space-between;gap:32px}.contact p{color:#c6d5cf;margin-top:12px;font-size:15px}.contact a{font-size:1.125rem;letter-spacing:0;display:inline-flex;align-items:center;min-height:44px}.contact a:hover{color:#ffc6b9}.contact a:focus-visible{outline-color:#ffc6b9}.footer{display:flex;align-items:center;gap:30px;justify-content:space-between;padding-block:30px}.footer p,.footer small{font-size:13px;color:var(--muted)}.skip{position:absolute;left:16px;top:-100px;padding:12px;background:#fff;z-index:5}.skip:focus{top:16px}
@media(max-width:760px){.wrap{width:calc(100% - 40px)}.header{min-height:90px;gap:16px}.header nav{gap:18px;font-size:14px}.brand{font-size:20px}.hero{padding-block:45px}.hero h1{font-size:clamp(2.2rem,8vw,3.5rem)}.hero-bottom{align-items:flex-start;flex-direction:column;margin-top:28px}.section-heading{display:block;margin-bottom:28px}.section-heading>p{margin-top:10px}.products{padding-block:38px}.product-feature{grid-template-columns:1fr;gap:32px;padding-block:30px}.product-identity img{width:88px;height:88px;margin-bottom:20px;border-radius:18px}.product-identity h3{font-size:2rem}.product-identity>p br{display:none}.platforms{margin-top:12px}.lead{font-size:20px}.experiment{grid-template-columns:1fr;gap:14px}.experiment p{font-size:15px}.about{grid-template-columns:1fr;gap:25px;padding-block:48px}.work-list>div{grid-template-columns:1fr;gap:8px;padding-block:20px}.building{padding-bottom:44px}.building .section-heading{padding-top:30px}.contact-inner{align-items:flex-start;flex-direction:column;gap:22px}.contact{padding-block:40px}.footer{flex-wrap:wrap;gap:12px}.footer p{flex-basis:100%;order:3}.footer small{margin-left:auto}}
@media(max-width:370px){.header{flex-wrap:wrap;padding-block:17px;gap:8px}.header nav{width:100%;justify-content:space-between}.actions{gap:18px;flex-wrap:wrap}}

/* Keep both languages and the two product identities in the existing layout. */
.header{display:grid;grid-template-columns:auto 1fr auto;gap:28px}
.header .main-nav{justify-content:flex-end;width:auto}
.header .language-nav{gap:0;width:auto;justify-content:initial;border:1px solid var(--rule);border-radius:4px;padding:3px}
.language-nav a{display:grid;place-items:center;min-width:44px;min-height:44px;padding:6px 10px;font-size:14px;font-weight:700;border-radius:2px;touch-action:manipulation}
.language-nav a[aria-current="page"]{background:var(--ink);color:#fff}
.language-nav a:not([aria-current]):hover{background:var(--surface);color:var(--accent)}
.product-icons{display:flex;gap:22px;margin-bottom:22px}
.product-icons figure{margin:0;text-align:center}
.product-icons img{width:96px;height:96px;object-fit:contain;border-radius:19px;margin:0 0 8px}
.product-icons figcaption{font-size:14px;font-weight:700;color:var(--muted)}
html:lang(ja) body{font-family:Manrope,"Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif;line-height:1.85;line-break:strict;overflow-wrap:break-word}
html:lang(ja) h1,html:lang(ja) h2,html:lang(ja) h3{letter-spacing:0}
html:lang(ja) .hero h1{font-size:clamp(2.1rem,4.8vw,3.6rem);line-height:1.5}
html:lang(ja) .hero h1 span{display:block}
html:lang(ja) .hero h1 .phrase{display:inline-block}
html:lang(ja) h2{font-size:clamp(1.5rem,2.6vw,2rem);line-height:1.55}
html:lang(ja) .lead{line-height:1.8}
@media(max-width:760px){
  .header{grid-template-columns:1fr auto;gap:8px 16px;padding-block:16px 10px}
  .header>.brand{grid-column:1;grid-row:1}
  .header .language-nav{grid-column:2;grid-row:1}
  .header .main-nav{grid-column:1 / -1;grid-row:2;justify-content:flex-start;gap:24px}
  .product-icons{gap:20px;margin-bottom:20px}
  .product-icons img{width:88px;height:88px;border-radius:18px;margin-bottom:8px}
  html:lang(ja) .hero h1{font-size:clamp(1.65rem,7.4vw,3rem);line-height:1.6}
  html:lang(ja) .main-nav{gap:20px}
  html:lang(ja) .lead{font-size:19px}
}
