:root{--ink:#17212b;--ink-2:#3d4a55;--ink-3:#5a6670;--teal:#0d5c55;--teal-deep:#0a4842;--teal-soft:#cfe3de;--panel:#eef3f1;--rule:#d5dedb;--bg:#ffffff;--on-teal:#ffffff;--on-teal-2:#ffffff;--wrap:1160px;--gutter:20px;--header-h:72px;--fs-body:1.0625rem;--fs-small:1rem;--fs-h1:clamp(1.75rem,1.05rem + 2.6vw,2.875rem);--fs-h2:clamp(1.5rem,1.15rem + 1.25vw,2.125rem);--fs-h3:clamp(1.1875rem,1.1rem + 0.3vw,1.3125rem);--radius:12px;--shadow:0 1px 2px rgb(23 33 43/0.06),0 12px 32px -12px rgb(23 33 43/0.18);--ease-out:cubic-bezier(0.16,1,0.3,1);color-scheme:light;scrollbar-color:#9fb5af #f3f6f5}*,:after,:before{box-sizing:border-box}html{text-size-adjust:100%}@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--font-sans),"Hiragino Sans","Hiragino Kaku Gothic ProN","Yu Gothic","Meiryo",sans-serif;font-size:var(--fs-body);line-height:1.9;letter-spacing:.02em;font-weight:400;-webkit-font-smoothing:antialiased;overflow-wrap:anywhere;line-break:strict}::selection{background:var(--teal-soft);color:var(--ink)}img{display:block;max-width:100%;height:auto}h1,h2,h3{word-break:auto-phrase;text-wrap:balance}dd,dl,figure,h1,h2,h3,ol,p,ul{margin:0}ol,ul{padding:0;list-style:none}a{color:var(--teal);text-decoration-thickness:1px;text-underline-offset:.25em}a:hover{color:var(--teal-deep)}:focus-visible{outline:3px solid var(--teal);outline-offset:3px;border-radius:4px}.wrap{width:100%;max-width:calc(var(--wrap) + var(--gutter) * 2);margin-left:auto;margin-right:auto;padding-left:var(--gutter);padding-right:var(--gutter)}.skip-link{position:absolute;left:12px;top:-100px;z-index:100;padding:10px 16px;background:var(--ink);color:#fff;border-radius:8px}.skip-link:focus{top:12px}.skip-link:hover{color:#fff}.site-header{background:rgb(255 255 255/.96);border-bottom:1px solid var(--rule);z-index:50}.header-inner{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;column-gap:24px;row-gap:4px;padding-top:14px;padding-bottom:10px}.wordmark{text-decoration:none;font-weight:700;font-size:1.3125rem;letter-spacing:.04em;line-height:1.4;font-feature-settings:"palt"}.wordmark,.wordmark:hover{color:var(--ink)}.wordmark-ai{color:var(--teal);margin-left:.08em}.site-nav ul{display:flex;flex-wrap:wrap;gap:4px 20px}.site-nav a{display:inline-block;padding-top:11px;padding-bottom:11px;color:var(--ink-2);text-decoration:none;font-size:.9375rem;font-weight:500;line-height:1.5;letter-spacing:.04em}.site-nav a:hover{color:var(--teal)}.header-contact{display:inline-flex;align-items:center;min-height:44px;padding:8px 16px;border-radius:999px;background:var(--teal);color:var(--on-teal);font-size:var(--fs-small);font-weight:700;line-height:1.4;letter-spacing:.04em;text-decoration:none}.header-contact:hover{background:var(--teal-deep);color:var(--on-teal)}.sub-nav{border-bottom:1px solid var(--rule)}.sub-nav ul{display:flex;justify-content:space-between;gap:8px}.sub-nav a{display:inline-block;padding-top:12px;padding-bottom:12px;color:var(--ink-2);font-size:var(--fs-small);font-weight:500;line-height:1.5;text-decoration:none}@media (max-width:767px){.site-header{position:sticky;top:0}.header-inner{flex-wrap:nowrap;padding-top:8px;padding-bottom:8px}.site-nav{display:none}section[id]{scroll-margin-top:72px}}@media (min-width:768px){.header-contact,.sub-nav{display:none}.site-header{position:sticky;top:0;-webkit-backdrop-filter:saturate(1.4) blur(10px);backdrop-filter:saturate(1.4) blur(10px)}.header-inner{min-height:var(--header-h);padding-top:0;padding-bottom:0}.site-nav ul{align-items:center;gap:0 28px}.site-nav .nav-contact{padding:11px 18px;border-radius:999px;background:var(--teal);color:var(--on-teal)}.site-nav .nav-contact:hover{background:var(--teal-deep);color:var(--on-teal)}section[id]{scroll-margin-top:calc(var(--header-h) + 8px)}}.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:56px;padding:12px 28px;border-radius:999px;font-weight:700;font-size:var(--fs-body);letter-spacing:.04em;line-height:1.4;text-decoration:none;transition:background-color .2s var(--ease-out),box-shadow .2s var(--ease-out),transform .2s var(--ease-out)}.btn-primary{background:var(--teal);color:var(--on-teal);box-shadow:0 1px 2px rgb(23 33 43/.12),0 8px 20px -10px rgb(23 33 43/.45)}.btn-primary:hover{background:var(--teal-deep);color:var(--on-teal);transform:translateY(-1px)}.btn-inverse{background:#fff;color:var(--teal);box-shadow:0 1px 2px rgb(0 0 0/.12),0 10px 24px -10px rgb(0 0 0/.4)}.btn-inverse:hover{background:#f1f7f5;color:var(--teal-deep);transform:translateY(-1px)}.btn-inverse:focus-visible{outline-color:#fff}.btn-icon,.dl-icon{width:22px;height:22px;flex:none;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.phone{display:inline-flex;align-items:center;gap:10px;min-height:56px;padding:12px 4px;color:var(--ink);text-decoration:none;font-weight:500;line-height:1.4}.phone .btn-icon{color:var(--teal)}.phone-label{color:var(--ink-2);font-size:var(--fs-small)}.phone-number{font-size:1.3125rem;font-weight:700;letter-spacing:.04em;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;text-decoration:underline;text-decoration-color:var(--rule);text-decoration-thickness:2px;text-underline-offset:.3em}.phone:hover .phone-number{color:var(--teal);text-decoration-color:currentColor}.hero{padding-top:clamp(40px,4vw + 24px,96px);padding-bottom:clamp(56px,5vw + 32px,112px)}.hero-grid{display:grid;gap:40px;align-items:center}.hero-title{font-size:var(--fs-h1);font-weight:700;line-height:1.5;letter-spacing:.02em;font-feature-settings:"palt"}.hero-title span{display:inline-block}.hero-lead{margin-top:24px;max-width:36em;color:var(--ink-2);font-size:clamp(1.0625rem,1rem + .25vw,1.1875rem);line-height:2}.hero-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px 28px;margin-top:36px}.hero-figure{justify-self:center;width:100%;max-width:460px}.hero-photo{display:flex;align-items:flex-end;justify-content:center;padding:28px 24px 22px;background:var(--panel);border-radius:var(--radius)}.hero-photo img{width:auto;height:clamp(380px,30vw + 200px,600px);filter:drop-shadow(0 14px 14px rgb(23 33 43/.16))}.hero-figure figcaption,.proto-figure figcaption{margin-top:12px;color:var(--ink-3);font-size:var(--fs-small);text-align:center}@media (prefers-reduced-motion:no-preference){.hero-photo img{animation:rise .9s var(--ease-out) .12s both}@keyframes rise{0%{transform:translateY(18px) scale(.985);filter:blur(4px) drop-shadow(0 14px 14px rgb(23 33 43/.16));opacity:.35}to{transform:none;filter:blur(0) drop-shadow(0 14px 14px rgb(23 33 43/.16));opacity:1}}}@media (min-width:900px){.hero-grid{grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:56px}.hero-figure{justify-self:end}}.band{padding-top:72px;padding-bottom:72px}@media (min-width:900px){.band{padding-top:112px;padding-bottom:112px}}.band-tint{background:var(--panel)}.section-title{font-size:var(--fs-h2);font-weight:700;line-height:1.5;letter-spacing:.02em;font-feature-settings:"palt";text-wrap:balance}.prose{text-indent:1em;max-width:40em}.split{display:grid;gap:32px}.problem-list{border-top:1px solid var(--rule)}.problem-list li{position:relative;padding:22px 0 22px 36px;border-bottom:1px solid var(--rule);font-size:clamp(1.0625rem,1rem + .3vw,1.25rem);line-height:1.8}.problem-list li:before{content:"";position:absolute;left:4px;top:calc(22px + .9em - 7px);width:14px;height:14px;border-radius:50%;border:3px solid var(--teal)}@media (min-width:900px){.split{grid-template-columns:minmax(0,4fr) minmax(0,7fr);gap:56px;align-items:start}}.how-grid{display:grid;gap:48px;margin-top:40px}.step-rail{position:relative;counter-reset:none}.step-rail li{position:relative;display:grid;grid-template-columns:52px minmax(0,1fr);gap:20px;padding-bottom:32px}.step-rail li:last-child{padding-bottom:0}.step-rail li:not(:last-child):before{content:"";position:absolute;left:25px;top:52px;bottom:0;width:2px;background:var(--teal)}.step-num{display:grid;place-items:center;width:52px;height:52px;border-radius:50%;background:var(--teal);color:var(--on-teal);font-size:1.375rem;font-weight:700;line-height:1;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.step-title{font-size:var(--fs-h3);font-weight:700;line-height:1.5;padding-top:10px}.step-body{margin-top:4px;color:var(--ink-2)}.proto-figure{justify-self:center;width:100%;max-width:400px}.proto-frame{padding:14px;background:var(--ink);border-radius:28px;box-shadow:var(--shadow)}.proto-frame img{border-radius:16px}@media (min-width:900px){.how-grid{grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:72px;align-items:start}.proto-figure{justify-self:end;max-width:360px}}.band-pilot{border-top:1px solid var(--rule)}.pilot-title{max-width:24em}.pilot-block{display:grid;gap:16px;margin-top:56px;padding-top:32px;border-top:1px solid var(--rule)}.block-title{font-size:var(--fs-h3);font-weight:700;line-height:1.6;font-feature-settings:"palt"}.block-body{max-width:44em}@media (min-width:900px){.pilot-block{grid-template-columns:minmax(0,4fr) minmax(0,8fr);gap:56px}.pilot-block-wide{grid-template-columns:1fr;gap:28px}}.spec-list,.spec-row{display:grid}.spec-row{grid-template-columns:5.5em minmax(0,1fr);gap:8px 20px;padding-top:14px;padding-bottom:14px;border-bottom:1px solid var(--rule)}.spec-row:first-child{padding-top:0}.spec-row dt{font-weight:700;color:var(--ink)}.spread{display:block;text-align:justify;text-align-last:justify}.spec-row dd{color:var(--ink-2)}.note{display:block;margin-top:6px;padding-left:1em;text-indent:-1em;font-size:var(--fs-small);color:var(--ink-3)}.spec-list+.prose{margin-top:24px}@media (max-width:480px){.spec-row{grid-template-columns:1fr;gap:2px}.spread{text-align:left;text-align-last:auto}}.dot-list li{position:relative;padding-left:1.4em;color:var(--ink-2)}.dot-list li+li{margin-top:12px}.dot-list li:before{content:"";position:absolute;left:.2em;top:.78em;width:7px;height:7px;border-radius:50%;background:var(--teal)}.process{display:grid;gap:0}.process li{position:relative;display:grid;grid-template-columns:40px minmax(0,1fr);column-gap:16px;padding-bottom:24px}.process li:last-child{padding-bottom:0}.process li:not(:last-child):before{content:"";position:absolute;left:19px;top:40px;bottom:0;width:2px;background:var(--teal)}.process-num{grid-row:span 2;display:grid;place-items:center;width:40px;height:40px;border-radius:50%;border:2px solid var(--teal);color:var(--teal);background:var(--bg);font-weight:700;line-height:1;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.process-title{font-weight:700;padding-top:4px;line-height:1.6}.process-when{color:var(--ink-3);font-size:var(--fs-small);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}@media (min-width:900px){.process{grid-template-columns:repeat(5,minmax(0,1fr));gap:0 16px}.process li{grid-template-columns:1fr;align-content:start;row-gap:14px;padding-bottom:0}.process li:not(:last-child):before{left:48px;right:-16px;top:19px;bottom:auto;width:auto;height:2px}.process-num{grid-row:auto}.process-title{padding-top:0}.process-when{margin-top:-10px}}.download-list{display:grid;gap:12px}@media (min-width:700px){.download-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}}.download{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;column-gap:14px;min-height:64px;padding:14px 20px;background:var(--bg);border:1px solid var(--rule);border-radius:10px;color:var(--ink);text-decoration:none;transition:border-color .2s var(--ease-out),box-shadow .2s var(--ease-out)}.download:hover{color:var(--ink);border-color:var(--teal);box-shadow:0 6px 18px -10px rgb(23 33 43/.35)}.download .dl-icon{grid-row:span 2;width:26px;height:26px;color:var(--teal)}.download-name{font-weight:700;line-height:1.5}.download-meta{color:var(--ink-3);font-size:var(--fs-small);line-height:1.5}.about-grid{display:grid;grid-template-areas:"title" "photo" "copy";gap:28px}.about-title{grid-area:title}.about-photo{grid-area:photo}.about-copy{grid-area:copy}.about-photo{width:100%;max-width:300px}.about-photo img{aspect-ratio:3/4;object-fit:cover;border-radius:var(--radius);box-shadow:var(--shadow)}.about-photo figcaption{margin-top:14px;font-size:1.1875rem;font-weight:700;letter-spacing:.06em}.about-role{margin-right:.8em;color:var(--ink-3);font-size:var(--fs-small);font-weight:500}@media (min-width:900px){.about-grid{grid-template-columns:300px minmax(0,1fr);grid-template-rows:1fr auto auto 1fr;grid-template-areas:"photo ." "photo title" "photo copy" "photo .";column-gap:72px;row-gap:24px}}.band-contact{background:var(--teal);color:var(--on-teal)}.band-contact ::selection{background:#fff;color:var(--teal-deep)}.contact-grid{display:grid;gap:32px}.contact-sign{margin-top:16px;color:var(--on-teal-2);font-weight:500;line-height:1.8}.contact-list{border-top:1px solid rgb(255 255 255/.28)}.contact-row{display:grid;grid-template-columns:3.1em minmax(0,1fr);gap:20px;align-items:baseline;padding-top:16px;padding-bottom:16px;border-bottom:1px solid rgb(255 255 255/.28)}.contact-row dt{color:var(--on-teal-2);font-size:var(--fs-small)}.contact-row dd{font-size:clamp(1.125rem,1rem + .5vw,1.375rem);font-weight:700;letter-spacing:.03em;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.contact-row a{color:var(--on-teal);text-decoration-color:rgb(255 255 255/.5)}.contact-row a:hover{color:var(--on-teal);text-decoration-color:currentColor}.contact-row a:focus-visible{outline-color:#fff}.contact-actions{margin-top:32px}@media (min-width:900px){.contact-grid{grid-template-columns:minmax(0,4fr) minmax(0,7fr);gap:56px}}.site-footer{padding-top:28px;padding-bottom:28px;background:var(--teal-deep);color:var(--on-teal-2);font-size:var(--fs-small)}.notfound{padding-top:96px;padding-bottom:120px}.notfound .section-title{margin-top:48px}.notfound-body{margin-top:16px;margin-bottom:32px;color:var(--ink-2)}.how-grid{grid-template-columns:minmax(0,1fr)}@media (min-width:900px){.how-grid{grid-template-columns:minmax(0,1fr);gap:40px}}.how-note{max-width:40em;color:var(--ink-2)}.hero-mail{margin-top:12px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.hero-mail-label{margin-right:12px;color:var(--ink-2);font-size:var(--fs-small)}.hero-mail a{font-weight:700;font-size:1.125rem;letter-spacing:.02em;-webkit-user-select:text;user-select:text}.process-when{word-break:auto-phrase}