:root{
  --bg:#f5fbff;
  --bg-warm:#fff8ee;
  --ink:#10253d;
  --ink-strong:#071728;
  --muted:#5d7186;
  --paper:#ffffff;
  --surface:#f8fcff;
  --line:#d9e8f2;
  --line-strong:#bfd5e6;
  --blue:#1668a8;
  --blue-dark:#0d4777;
  --cyan:#18b8c8;
  --green:#087a38;
  --green-soft:#e8f8ef;
  --amber:#8a4b00;
  --amber-soft:#fff3df;
  --red:#a43b35;
  --shadow:0 24px 70px rgba(16,37,61,.13);
  --shadow-soft:0 12px 32px rgba(16,37,61,.09);
  --radius-xl:32px;
  --radius-lg:24px;
  --radius-md:18px;
  --max:1120px;
  font-family:Inter,Roboto,"Yu Gothic","YuGothic",system-ui,-apple-system,BlinkMacSystemFont,"Hiragino Sans",Meiryo,sans-serif;
}

.language-details {
  margin-top: 12px;
}

.language-panel {
  display: grid;
  gap: 14px;
  margin-top: 12px;
}

.language-group {
  display: grid;
  gap: 8px;
}

.language-group h4 {
  color: var(--ink-strong);
  font-size: 14px;
  letter-spacing: -.02em;
}

.language-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.language-chips span {
  display: inline-flex;
  align-items: center;
  min-height: 34px;
  border: 1px solid var(--line);
  border-radius: 999px;
  background: var(--surface);
  color: var(--ink);
  padding: 6px 10px;
  font-size: 12px;
  font-weight: 900;
  white-space: nowrap;
}

@media (max-width: 430px) {
  .language-chips {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .language-chips span {
    justify-content: center;
    white-space: normal;
    text-align: center;
  }
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;text-rendering:optimizeLegibility;-webkit-text-size-adjust:100%}
body{margin:0;background:
  radial-gradient(720px 420px at 78% -80px,rgba(24,184,200,.22),transparent 65%),
  radial-gradient(620px 380px at 4% 14%,rgba(255,196,104,.24),transparent 62%),
  linear-gradient(180deg,var(--bg) 0%,#fff 44%,#f6fbff 100%);color:var(--ink);font-size:16px;line-height:1.75;overflow-x:hidden}
body.theme-dark{--bg:#081727;--bg-warm:#102033;--ink:#e8f1f8;--ink-strong:#fff;--muted:#a8bbc9;--paper:#0e2033;--surface:#12263a;--line:#244159;--line-strong:#356078;--shadow:0 24px 70px rgba(0,0,0,.32);--shadow-soft:0 12px 32px rgba(0,0,0,.24)}
a{color:inherit;text-decoration:none}
a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid rgba(24,184,200,.6);outline-offset:3px}
img{display:block;max-width:100%;height:auto}
h1,h2,h3,p,figure{margin:0}
ul,ol{margin:0;padding-left:1.25em}.wrap{width:min(var(--max),calc(100% - 32px));margin-inline:auto}.nobr{white-space:nowrap}.skip{position:absolute;top:-72px;left:12px;z-index:1000;background:var(--paper);border:1px solid var(--line);border-radius:999px;padding:10px 14px;font-weight:900;box-shadow:var(--shadow-soft)}.skip:focus{top:12px}.topbar{position:sticky;top:0;z-index:60;background:rgba(255,255,255,.78);border-bottom:1px solid rgba(217,232,242,.74);backdrop-filter:blur(18px)}body.theme-dark .topbar{background:rgba(8,23,39,.82)}.topbar-inner{height:68px;display:flex;align-items:center;justify-content:space-between;gap:14px}.brand{display:flex;align-items:center;gap:10px;min-width:0}.brand img{width:42px;height:42px;border-radius:14px;box-shadow:var(--shadow-soft)}.brand-title{display:grid;gap:1px}.brand strong{display:block;font-size:15px;line-height:1.1;letter-spacing:-.02em;color:var(--ink-strong)}.brand small{display:block;color:var(--muted);font-size:12px;font-weight:800;white-space:nowrap}.nav{display:none;align-items:center;gap:18px;color:var(--muted);font-size:13px;font-weight:900}.nav a:hover{color:var(--blue-dark)}.top-actions{display:flex;align-items:center;gap:8px}.icon-btn{width:44px;height:44px;display:inline-grid;place-items:center;border:1px solid var(--line);border-radius:999px;background:var(--paper);color:var(--ink);font-weight:900;cursor:pointer;box-shadow:var(--shadow-soft)}.btn{min-height:48px;display:inline-flex;align-items:center;justify-content:center;gap:8px;border:0;border-radius:999px;padding:0 18px;font-weight:1000;letter-spacing:-.02em;cursor:pointer;transition:transform .18s ease,box-shadow .18s ease,background .18s ease}.btn:hover{transform:translateY(-1px)}.btn-primary{background:linear-gradient(135deg,var(--green),#0a9151);color:#fff;box-shadow:0 14px 30px rgba(8,122,56,.27)}.btn-secondary{background:var(--paper);border:1px solid var(--line);color:var(--ink);box-shadow:var(--shadow-soft)}.btn-dark{background:var(--ink-strong);color:#fff}.btn-small{min-height:42px;padding:0 14px;font-size:13px}.hero{position:relative;padding:34px 0 42px}.hero-grid{display:grid;gap:24px;align-items:center}.eyebrow{display:inline-flex;align-items:center;gap:8px;max-width:100%;width:max-content;border:1px solid var(--line);background:rgba(255,255,255,.76);color:var(--blue-dark);border-radius:999px;padding:8px 12px;font-size:12px;font-weight:1000;box-shadow:var(--shadow-soft)}body.theme-dark .eyebrow{background:rgba(14,32,51,.8)}.eyebrow:before{content:"";width:8px;height:8px;border-radius:999px;background:var(--cyan);box-shadow:0 0 0 5px rgba(24,184,200,.14)}.hero h1{margin-top:16px;font-size:clamp(42px,11.2vw,84px);line-height:.98;letter-spacing:-.085em;font-weight:1000;color:var(--ink-strong);word-break:keep-all;line-break:strict}.hero h1 span{display:block}.hero-lead{margin-top:18px;max-width:65ch;color:var(--muted);font-size:clamp(16px,4.1vw,19px);line-height:1.8;font-weight:650;word-break:keep-all}.hero-actions{display:grid;gap:10px;margin-top:22px}.assist-note{margin-top:10px;color:var(--muted);font-size:12px;line-height:1.6}.chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}.chip{display:inline-flex;align-items:center;gap:7px;min-height:34px;padding:6px 11px;border-radius:999px;background:var(--surface);border:1px solid var(--line);color:var(--blue-dark);font-size:12px;font-weight:1000;white-space:nowrap}.chip:before{content:"";width:6px;height:6px;border-radius:999px;background:currentColor;opacity:.75}.hero-visual{position:relative;min-height:420px;border-radius:var(--radius-xl);overflow:hidden;background:linear-gradient(145deg,rgba(255,255,255,.92),rgba(232,248,255,.88));border:1px solid var(--line);box-shadow:var(--shadow);padding:16px}.hero-visual:before{content:"";position:absolute;inset:-90px -120px auto auto;width:280px;height:280px;border-radius:50%;background:rgba(24,184,200,.22);filter:blur(8px)}.hero-visual:after{content:"";position:absolute;left:-80px;bottom:-100px;width:260px;height:260px;border-radius:50%;background:rgba(255,196,104,.22);filter:blur(10px)}.hero-device{position:relative;z-index:2;display:grid;grid-template-rows:auto 1fr;border-radius:26px;background:rgba(255,255,255,.86);border:1px solid rgba(191,213,230,.88);min-height:390px;box-shadow:var(--shadow-soft);overflow:hidden}.device-top{height:48px;display:flex;align-items:center;justify-content:space-between;padding:0 14px;border-bottom:1px solid var(--line);font-size:12px;font-weight:1000;color:var(--muted)}.dot-set{display:flex;gap:5px}.dot-set span{width:8px;height:8px;border-radius:50%;background:var(--line-strong)}.device-body{position:relative;display:grid;grid-template-columns:1fr 126px;gap:10px;padding:14px;align-items:end}.bubble-stack{display:grid;gap:10px;align-content:center}.bubble{position:relative;border:1px solid var(--line);background:#fff;border-radius:18px;padding:10px 12px;box-shadow:var(--shadow-soft);font-size:13px;font-weight:850;animation:floatIn 5.4s ease-in-out infinite}.bubble small{display:block;color:var(--muted);font-size:12px;font-weight:900}.bubble:nth-child(2){animation-delay:.55s}.bubble:nth-child(3){animation-delay:1.1s}.task-card{border:1px solid rgba(8,122,56,.18);background:var(--green-soft);border-radius:18px;padding:11px 12px;color:#123524;font-size:13px;font-weight:1000}.task-card span{display:block;color:#33604a;font-size:12px}.cotoa-hero{align-self:end;justify-self:center;max-height:280px;object-fit:contain;filter:drop-shadow(0 22px 22px rgba(16,37,61,.18));border-radius:24px}.metric-strip{position:relative;z-index:3;display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:12px}.metric{border:1px solid var(--line);background:rgba(255,255,255,.86);border-radius:18px;padding:10px;text-align:center;box-shadow:var(--shadow-soft)}.metric b{display:block;font-size:20px;line-height:1;color:var(--ink-strong);letter-spacing:-.04em}.metric span{display:block;margin-top:3px;font-size:12px;font-weight:900;color:var(--muted)}@keyframes floatIn{0%,100%{transform:translateY(0)}50%{transform:translateY(-5px)}}.section{padding:48px 0}.section-head{display:grid;gap:10px;margin-bottom:22px}.kicker{font-size:12px;color:var(--blue-dark);font-weight:1000;letter-spacing:.12em;text-transform:uppercase}.section h2{font-size:clamp(28px,7vw,50px);line-height:1.08;letter-spacing:-.065em;color:var(--ink-strong);font-weight:1000}.lead{max-width:68ch;color:var(--muted);font-weight:650;line-height:1.85}.grid{display:grid;gap:14px}.grid-2,.grid-3,.grid-4{display:grid;gap:14px}.card{position:relative;border:1px solid var(--line);background:rgba(255,255,255,.86);border-radius:var(--radius-lg);padding:20px;box-shadow:var(--shadow-soft);overflow:hidden}.card h3{font-size:21px;line-height:1.25;letter-spacing:-.045em;color:var(--ink-strong);font-weight:1000}.card p{margin-top:9px;color:var(--muted);font-weight:650}.card .tag{display:inline-flex;align-items:center;gap:8px;min-height:32px;border-radius:999px;background:var(--surface);border:1px solid var(--line);padding:5px 10px;font-size:12px;font-weight:1000;color:var(--blue-dark);margin-bottom:12px}.pain-card:after{content:"";position:absolute;right:-28px;top:-30px;width:96px;height:96px;border-radius:50%;background:rgba(24,184,200,.08)}.solution-card{min-height:230px}.solution-card ul{margin-top:12px;color:var(--muted);font-weight:650}.solution-card li::marker{color:var(--cyan)}details{border:1px solid var(--line);background:rgba(255,255,255,.75);border-radius:18px;overflow:hidden}summary{min-height:54px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:0 16px;font-weight:1000;cursor:pointer;list-style:none}summary::-webkit-details-marker{display:none}summary:after{content:"＋";font-weight:1000;color:var(--blue-dark)}details[open] summary:after{content:"−"}.details-body{border-top:1px solid var(--line);padding:14px 16px;color:var(--muted);font-weight:650}.details-body p+p{margin-top:10px}.flow{position:relative;display:grid;gap:12px}.flow-step{display:grid;grid-template-columns:42px 1fr;gap:12px;align-items:start;border:1px solid var(--line);background:var(--paper);border-radius:20px;padding:14px;box-shadow:var(--shadow-soft)}.flow-step .num{width:42px;height:42px;display:grid;place-items:center;border-radius:14px;background:linear-gradient(135deg,var(--blue),var(--cyan));color:#fff;font-weight:1000}.flow-step h3{font-size:18px;letter-spacing:-.04em}.flow-step p{margin-top:5px;font-size:14px;color:var(--muted);font-weight:650}.world-card{display:grid;gap:18px;align-items:center;border-radius:var(--radius-xl);border:1px solid var(--line);background:linear-gradient(135deg,#0b2944,#144f78);color:#fff;box-shadow:var(--shadow);overflow:hidden}.world-copy{padding:24px}.world-copy .kicker{color:#9cecf4}.world-copy h2{color:#fff}.world-copy p{color:rgba(255,255,255,.82);max-width:62ch}.world-img{height:270px;overflow:hidden}.world-img img{width:100%;height:100%;object-fit:cover}.screen-grid{display:grid;gap:14px}.screen-card{border:1px solid var(--line);background:var(--paper);border-radius:22px;overflow:hidden;box-shadow:var(--shadow-soft)}.screen-head{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:64px;padding:12px 14px;border-bottom:1px solid var(--line)}.screen-head span{display:inline-flex;align-items:center;min-height:30px;padding:4px 9px;border-radius:999px;background:var(--surface);color:var(--blue-dark);font-size:12px;font-weight:1000}.screen-head strong{font-size:14px;line-height:1.3;text-align:right;color:var(--ink-strong)}.screen-shot{display:block;background:#ecf5fb}.screen-shot img{width:100%;height:330px;object-fit:contain;background:#edf6fb}.screen-card .details-body{font-size:14px}.governance{display:grid;gap:14px}.guard-card{border-left:5px solid var(--blue);background:var(--paper)}.guard-card.warn{border-left-color:var(--amber)}.price-wrap{display:grid;gap:14px}.price-card{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--paper);padding:20px;box-shadow:var(--shadow-soft)}.price-card.campaign{border-color:#efc98c;background:linear-gradient(180deg,#fff8ec,#fff)}.price-eyebrow{display:inline-flex;min-height:32px;align-items:center;border-radius:999px;padding:5px 10px;background:var(--surface);border:1px solid var(--line);font-size:12px;font-weight:1000;color:var(--muted)}.price-card.campaign .price-eyebrow{background:var(--amber-soft);border-color:#edcf9f;color:var(--amber)}.price{margin-top:12px;font-size:clamp(28px,8vw,42px);line-height:1.08;letter-spacing:-.06em;font-weight:1000;color:var(--ink-strong)}.price small{font-size:13px;letter-spacing:0;color:var(--muted)}.spec-list{display:grid;gap:9px;margin-top:16px}.spec-item{display:flex;justify-content:space-between;gap:12px;border-bottom:1px solid var(--line);padding:8px 0;color:var(--muted);font-weight:700}.spec-item b{color:var(--ink);text-align:right}.addons{display:grid;gap:10px}.addon{display:flex;justify-content:space-between;gap:12px;border:1px solid var(--line);border-radius:16px;background:var(--surface);padding:12px;font-weight:900;color:var(--ink)}.addon span{color:var(--muted);text-align:right}.steps-row{display:grid;gap:12px}.start-step{border:1px solid var(--line);border-radius:20px;background:var(--paper);padding:16px;box-shadow:var(--shadow-soft)}.start-step b{display:grid;place-items:center;width:38px;height:38px;border-radius:13px;background:var(--green);color:#fff;margin-bottom:10px}.faq-list{display:grid;gap:10px}.final-cta{border-radius:var(--radius-xl);background:linear-gradient(135deg,#ecfbf6,#eff8ff 58%,#fff7ea);border:1px solid var(--line);box-shadow:var(--shadow);padding:22px;display:grid;gap:16px;align-items:center;overflow:hidden}.final-cta h2{font-size:clamp(30px,7vw,56px)}.final-visual{display:grid;place-items:center;min-height:240px}.final-visual img{max-height:330px;filter:drop-shadow(0 22px 24px rgba(16,37,61,.16));border-radius:24px}.law-stack{display:grid;gap:10px}.law-table{display:grid;gap:0}.law-row{display:grid;grid-template-columns:150px 1fr;gap:12px;padding:11px 0;border-bottom:1px solid var(--line)}.law-row b{color:var(--ink-strong)}.footer{border-top:1px solid var(--line);padding:34px 0 88px;color:var(--muted);font-size:13px}.footer-grid{display:grid;gap:14px}.footer-links{display:flex;flex-wrap:wrap;gap:12px;font-weight:900}.sticky-cta{position:fixed;left:0;right:0;bottom:0;z-index:70;padding:10px 12px calc(10px + env(safe-area-inset-bottom));background:rgba(255,255,255,.88);border-top:1px solid rgba(217,232,242,.9);backdrop-filter:blur(18px);transform:translateY(110%);transition:transform .22s ease}.sticky-cta.is-visible{transform:translateY(0)}body.theme-dark .sticky-cta{background:rgba(8,23,39,.9)}.sticky-cta .wrap{display:grid;grid-template-columns:1fr auto;gap:10px}.modal{border:0;border-radius:24px;box-shadow:0 30px 90px rgba(0,0,0,.28);padding:0;max-width:min(480px,calc(100% - 24px));background:var(--paper);color:var(--ink)}.modal::backdrop{background:rgba(7,23,40,.58);backdrop-filter:blur(4px)}.modal-card{padding:22px}.modal-card h3{font-size:24px;letter-spacing:-.05em;color:var(--ink-strong)}.modal-card p{margin-top:8px;color:var(--muted);font-weight:650}.modal-card ol{margin-top:12px;color:var(--ink);font-weight:700}.dialog-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}.close-btn{background:var(--surface);border:1px solid var(--line);color:var(--ink)}.form-page .topbar{position:static}.form-hero{padding:28px 0}.form-card{border:1px solid var(--line);background:var(--paper);border-radius:var(--radius-lg);padding:20px;box-shadow:var(--shadow-soft)}.form-grid{display:grid;gap:14px}.form-field label{display:block;font-weight:1000;margin-bottom:7px}.form-field input,.form-field textarea{width:100%;min-height:48px;border:1px solid var(--line);border-radius:14px;background:#fff;color:#10253d;font:inherit;padding:11px 12px}.form-field textarea{min-height:104px;resize:vertical}.check{display:flex;gap:10px;align-items:flex-start;padding:12px;border:1px solid var(--line);border-radius:16px;background:var(--surface);font-weight:750}.check input{width:20px;height:20px;flex:0 0 auto;margin-top:3px}.notice{border-radius:16px;padding:14px;margin-top:16px;white-space:pre-wrap;font-weight:800}.notice.ok{background:var(--green-soft);border:1px solid rgba(8,122,56,.25);color:#123524}.notice.err{background:#fff0ef;border:1px solid #f0b8b3;color:var(--red)}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}}@media(min-width:640px){.hero-actions{grid-template-columns:max-content max-content}.hero{padding-top:52px}.grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.screen-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.price-wrap{grid-template-columns:1.15fr .85fr}.steps-row{grid-template-columns:repeat(4,minmax(0,1fr))}.final-cta{grid-template-columns:1.2fr .8fr}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.form-field.full{grid-column:1/-1}}@media(min-width:860px){.nav{display:flex}.hero-grid{grid-template-columns:1.05fr .95fr}.hero{padding:64px 0 70px}.grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}.world-card{grid-template-columns:.92fr 1.08fr}.world-img{height:100%;min-height:430px}.screen-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.footer-grid{grid-template-columns:1fr auto;align-items:start}.sticky-cta{display:none}}@media(max-width:430px){.wrap{width:min(var(--max),calc(100% - 24px))}.topbar-inner{height:62px}.brand img{width:38px;height:38px}.brand small{display:none}.top-actions .btn-small{display:none}.hero h1{font-size:clamp(40px,12vw,50px);letter-spacing:-.09em}.hero-visual{min-height:390px;padding:12px}.device-body{grid-template-columns:1fr 98px;padding:12px}.cotoa-hero{max-height:230px}.bubble{font-size:12px}.metric-strip{grid-template-columns:1fr}.law-row{grid-template-columns:1fr;gap:2px}.screen-shot img{height:300px}.hero-actions .btn{width:100%}}
