:root{--ink:#17365d;--ink-2:#244d78;--cream:#fffaf4;--paper:#f2f5f9;--yellow:#f4b45f;--orange:#e77732;--mint:#8fb6d9;--line:#17365d2e;--white:#fff}*{box-sizing:border-box}html{scroll-behavior:smooth}body{color:var(--ink);background:var(--cream);margin:0;font-family:Noto Sans JP,sans-serif;font-size:16px;line-height:1.8}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}button,input,textarea{font:inherit}.site-header{border-bottom:1px solid var(--line);backdrop-filter:blur(12px);z-index:20;background:#fffaf4eb;align-items:center;gap:36px;height:86px;padding:0 clamp(24px,5vw,76px);display:flex;position:sticky;top:0}.brand{letter-spacing:.08em;white-space:nowrap;align-items:center;gap:10px;font:700 1.1rem/1 Outfit,sans-serif;display:inline-flex}.brand-logo{object-fit:contain;object-position:left center;width:176px;height:56px;display:block}.brand-mark{background:var(--ink);width:31px;height:31px;color:var(--yellow);border-radius:9px;place-items:center;font-size:1.35rem;display:grid}.desktop-nav{gap:30px;margin-left:auto;display:flex}.desktop-nav a{font-size:.88rem;font-weight:600}.desktop-nav a:hover{color:var(--orange)}.header-cta{border:1px solid var(--ink);border-radius:999px;margin-left:10px;padding:11px 20px;font-size:.88rem;font-weight:700;transition:all .2s}.header-cta:hover{background:var(--ink);color:#fff}.hero{align-items:center;min-height:calc(100vh - 86px);display:grid;overflow:hidden}.hero-grid{grid-template-columns:1.12fr .88fr;align-items:center;gap:6vw;width:min(1180px,100% - 48px);margin:0 auto;padding:84px 0 92px;display:grid}.eyebrow,.section-number{letter-spacing:.18em;align-items:center;gap:10px;margin:0 0 20px;font:700 .77rem/1 Outfit,sans-serif;display:flex}.eyebrow span{background:var(--orange);width:34px;height:3px}.hero h1{letter-spacing:-.06em;margin:0;font-size:clamp(3.3rem,6.2vw,6.5rem);font-weight:800;line-height:1.04}.hero h1 span{color:var(--orange);white-space:nowrap;position:relative}.hero h1 span:after{content:"";background:var(--yellow);z-index:-1;border-radius:100%;height:.12em;position:absolute;bottom:-.08em;left:2%;right:0;transform:rotate(-2deg)}.hero-lead{color:#17365dd1;margin:34px 0 0;font-size:1.07rem;line-height:2}.hero-actions{align-items:center;gap:28px;margin-top:36px;display:flex}.button{cursor:pointer;border:0;border-radius:0;justify-content:center;align-items:center;gap:24px;min-height:58px;padding:0 26px;font-weight:700;display:inline-flex}.button-primary{background:var(--ink);color:#fff;box-shadow:7px 7px 0 var(--yellow);transition:transform .2s,box-shadow .2s}.button-primary:hover{box-shadow:4px 4px 0 var(--yellow);transform:translate(3px,3px)}.text-link{border-bottom:1px solid var(--ink);font-size:.9rem;font-weight:700}.trust-list{flex-wrap:wrap;gap:12px 24px;margin:40px 0 0;padding:0;font-size:.8rem;font-weight:600;list-style:none;display:flex}.trust-list li:before{content:"✓";color:var(--orange);margin-right:7px}.hero-visual{place-items:center;min-height:510px;display:grid;position:relative}.hero-visual:before{content:"+";color:#88cbbb38;font:700 29rem/1 Outfit;position:absolute;top:-10%;right:-4vw;transform:rotate(8deg)}.orbit{border:1px solid #17365d3b;border-radius:50%;position:absolute}.orbit-one{width:470px;height:470px}.orbit-two{border-style:dashed;width:345px;height:345px;animation:28s linear infinite spin}.control-card{aspect-ratio:.83;color:#fff;background:var(--ink);width:285px;box-shadow:16px 18px 0 var(--yellow);z-index:2;padding:35px 30px;position:relative;transform:rotate(-3deg)}.control-card p{color:var(--mint);margin:0 0 12px;font-size:.78rem}.control-card strong{letter-spacing:-.04em;font:700 3rem/.92 Outfit}.control-line{align-items:center;margin:50px 0 28px;display:flex}.control-line span{background:var(--mint);flex:1;height:2px}.control-line i{background:var(--yellow);border-radius:50%;width:17px;height:17px;box-shadow:0 0 0 7px #ffcb5726}.control-stats{justify-content:space-between;font-size:.73rem;display:flex}.mini-card{z-index:3;border:1px solid var(--ink);background:#fff;padding:11px 16px;font-size:.78rem;font-weight:700;position:absolute;box-shadow:5px 5px #17365d29}.mini-card span{color:var(--orange);margin-right:8px;font-family:Outfit}.mini-card-a{top:12%;left:0}.mini-card-b{top:48%;right:-2%}.mini-card-c{bottom:7%;left:7%}@keyframes spin{to{transform:rotate(360deg)}}.problem-section,.steps-section{grid-template-columns:.82fr 1.18fr;gap:9vw;width:min(1160px,100% - 48px);margin:0 auto;padding:125px 0;display:grid}.section-number{color:var(--orange)}.section-heading h2,.profile-copy h2,.contact-intro h2{letter-spacing:-.045em;margin:0;font-size:clamp(2.2rem,4vw,4.5rem);line-height:1.2}.section-heading>p:last-child{color:#17365dba;margin:30px 0 0}.problem-list{border-top:1px solid var(--ink)}.problem-list article{border-bottom:1px solid var(--line);grid-template-columns:66px 1fr;gap:18px;padding:30px 0;display:grid}.problem-list article>span,.card-index{color:var(--orange);font:700 .8rem/1 Outfit}.problem-list h3{margin:0 0 8px;font-size:1.25rem}.problem-list p{color:#17365db8;margin:0}.shift-section{background:var(--yellow);padding:90px max(24px,50vw - 580px);position:relative;overflow:hidden}.shift-kicker{color:#ffffff70;letter-spacing:-.06em;font:700 9rem/1 Outfit;position:absolute;top:-40px;right:-12px}.shift-copy{grid-template-columns:.8fr 1.2fr;align-items:end;gap:8vw;display:grid;position:relative}.shift-copy>p{font-weight:600}.shift-copy h2{letter-spacing:-.06em;margin:0;font-size:clamp(2.6rem,5vw,5.2rem);line-height:1.08}.shift-copy em{color:var(--orange);font-style:normal}.shift-diagram{background:var(--cream);border:2px solid var(--ink);grid-template-columns:1fr 70px 1fr;align-items:center;margin-top:62px;display:grid}.shift-side{grid-template-columns:70px 1fr;align-items:center;gap:6px 20px;padding:30px 35px;display:grid}.shift-side span{color:var(--orange);grid-row:1/3;font:700 .75rem Outfit}.shift-side strong{font-size:1.45rem}.shift-side p{margin:0;font-size:.86rem}.shift-arrow{background:var(--ink);height:100%;color:var(--yellow);place-items:center;font-size:1.8rem;display:grid}.support-section{background:var(--ink);color:#fff;padding:125px max(24px,50vw - 580px)}.light-heading{grid-template-columns:1fr 1fr;align-items:end;column-gap:7vw;display:grid}.light-heading .section-number{color:var(--yellow);grid-column:1/-1}.light-heading>p:last-child{color:#ffffffa6}.support-grid{background:#ffffff38;border:1px solid #ffffff38;grid-template-columns:repeat(3,1fr);gap:2px;margin-top:70px;display:grid}.support-grid article{background:var(--ink);min-height:360px;padding:42px 34px}.icon-box{border:1px solid var(--mint);width:58px;height:58px;color:var(--yellow);place-items:center;margin-bottom:65px;font-size:1.45rem;display:grid}.support-grid h3{margin:12px 0 18px;font-size:1.45rem}.support-grid article>p:last-child{color:#ffffffab;font-size:.93rem}.support-note{background:#ffcb5712;border:1px solid #ffcb5780;align-items:center;gap:28px;margin-top:38px;padding:22px 28px;display:flex}.support-note span{color:var(--yellow);letter-spacing:.18em;font:700 .72rem Outfit}.support-note p{color:#ffffffb8;margin:0;font-size:.86rem}.profile-section{grid-template-columns:.82fr 1.18fr;align-items:center;gap:8vw;width:min(1050px,100% - 48px);margin:0 auto;padding:125px 0;display:grid}.profile-image-wrap{position:relative}.profile-image-wrap:before{content:"";background:var(--mint);z-index:-1;position:absolute;inset:20px -18px -18px 20px}.profile-image-wrap img{aspect-ratio:.88;object-fit:cover;object-position:50% 36%;filter:saturate(.82)contrast(1.04);width:100%}.profile-label{background:var(--yellow);color:var(--ink);letter-spacing:.15em;padding:10px 16px;font:700 .72rem Outfit;position:absolute;bottom:20px;left:-22px}.profile-copy>p:not(.section-number){color:#17365dba;margin:24px 0 0}.profile-sign{border-top:1px solid var(--line);flex-direction:column;margin-top:35px;padding-top:24px;display:flex}.profile-sign span{font-size:.75rem}.profile-sign strong{letter-spacing:.08em;font:700 1.15rem Outfit}.steps-section{grid-template-columns:.62fr 1.38fr}.compact-heading h2{font-size:clamp(2.2rem,4vw,3.8rem)}.steps-list{border-top:1px solid var(--ink);margin:0;padding:0;list-style:none}.steps-list li{border-bottom:1px solid var(--line);grid-template-columns:72px 1fr;padding:27px 0;display:grid}.steps-list li>span{color:var(--orange);font:700 1.1rem Outfit}.steps-list h3{margin:0 0 5px;font-size:1.15rem}.steps-list p{color:#17365dad;margin:0;font-size:.9rem}.contact-section{background:var(--orange);color:var(--ink);grid-template-columns:.9fr 1.1fr;gap:8vw;padding:110px max(24px,50vw - 550px);display:grid}.contact-intro .section-number{color:var(--ink)}.contact-intro>p:not(.section-number){margin-top:28px}.contact-promise{background:#ffffff73;gap:9px;margin-top:24px;padding:8px 13px;font-size:.82rem;font-weight:700;display:inline-flex}.contact-promise span{color:#fff}.contact-form{background:var(--cream);box-shadow:10px 10px 0 var(--ink);padding:38px}.contact-form label:not(.consent){margin-bottom:20px;font-size:.88rem;font-weight:700;display:block}.contact-form label span,.contact-form label b{float:right;padding:1px 7px;font-size:.65rem;font-weight:700;line-height:1.8}.contact-form label span{background:var(--paper)}.contact-form label b{background:var(--orange);color:#fff}.contact-form input:not([type=checkbox]),.contact-form textarea{border:1px solid var(--line);width:100%;color:var(--ink);background:#fff;border-radius:0;margin-top:8px;padding:13px 14px}.contact-form textarea{resize:vertical}.contact-form input:focus,.contact-form textarea:focus{border-color:var(--ink);outline:3px solid #ffcb57a6}.consent{align-items:flex-start;gap:9px;font-size:.75rem;font-weight:400;display:flex}.consent input{margin-top:5px}.form-button{width:100%;margin-top:22px}.form-message{text-align:center;min-height:1.6em;margin:15px 0 0;font-size:.8rem;font-weight:600}footer{background:var(--cream);grid-template-columns:1fr 1fr;align-items:start;gap:22px;min-height:220px;padding:55px max(24px,50vw - 580px);display:grid}.footer-brand{font-size:1.3rem}.footer-brand .brand-mark{background:var(--orange);color:#fff}.footer-brand+p{text-align:right;margin:0;font-size:.85rem}footer small{color:#17365d8c;grid-column:1/-1;align-self:end}@media (width<=900px){.brand-logo{width:148px;height:48px}.site-header{height:72px;padding:0 20px}.desktop-nav{display:none}.header-cta{margin-left:auto;padding:8px 13px}.hero{min-height:auto}.hero-grid{grid-template-columns:1fr;padding:65px 0 70px}.hero-visual{min-height:430px}.hero-visual:before{font-size:23rem}.problem-section,.steps-section,.profile-section,.contact-section,.light-heading,.support-grid{grid-template-columns:1fr}.support-grid article{min-height:auto}.icon-box{margin-bottom:35px}.shift-copy{grid-template-columns:1fr;gap:10px}.shift-diagram{grid-template-columns:1fr}.shift-arrow{height:54px;transform:rotate(90deg)}.contact-section{gap:50px}}@media (width<=560px){.brand-logo{width:125px;height:42px}body{font-size:16px}.site-header{gap:10px}.brand{font-size:.9rem}.brand-mark{width:28px;height:28px}.header-cta{font-size:.75rem}.hero-grid,.problem-section,.profile-section,.steps-section{width:min(100% - 36px,1160px)}.hero h1{font-size:3rem}.hero-actions{flex-direction:column;align-items:flex-start}.desktop-only{display:none}.hero-visual{min-height:390px;margin:-25px 0;transform:scale(.9)}.orbit-one{width:390px;height:390px}.orbit-two{width:300px;height:300px}.mini-card-a{left:-4%}.mini-card-b{right:-5%}.problem-section,.support-section,.profile-section,.steps-section,.contact-section{padding-top:85px;padding-bottom:85px}.section-heading h2,.profile-copy h2,.contact-intro h2{font-size:2.35rem}.problem-list article{grid-template-columns:48px 1fr}.shift-section{padding-top:75px;padding-bottom:75px}.shift-kicker{font-size:5rem;top:-16px}.shift-copy h2{font-size:2.75rem}.shift-side{grid-template-columns:55px 1fr;padding:22px 20px}.support-grid{margin-top:45px}.support-note{flex-direction:column;align-items:flex-start}.profile-section{gap:65px}.profile-image-wrap{margin-right:10px}.contact-form{box-shadow:7px 7px 0 var(--ink);padding:25px 20px}footer{grid-template-columns:1fr}.footer-brand+p{text-align:left}footer small{grid-column:1}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.orbit-two{animation:none}*{transition:none!important}}.contact-form [data-fs-error]:not([data-fs-active]),.contact-form [data-fs-success]:not([data-fs-active]),.contact-form .form-message:empty{display:none}.contact-form .form-field-error{color:#a52a25;margin-top:6px;font-size:.78rem;display:block}.contact-form .form-error{color:#a52a25}.contact-form .form-success{color:#21603e}.contact-form [data-fs-field][aria-invalid=true]{border-color:#a52a25}.contact-form .form-button:disabled{cursor:wait;opacity:.65}.blog-shell{width:min(960px,100% - 48px);min-height:70vh;margin:0 auto;padding:100px 0 120px}.blog-title{max-width:800px;margin-bottom:60px}.blog-title h1{letter-spacing:-.055em;margin:0;font-size:clamp(2.7rem,6vw,5.6rem);line-height:1.12}.blog-title>p:last-child{color:#17365db3;max-width:670px;margin:28px 0 0}.blog-title time{color:var(--orange);letter-spacing:.12em;margin-top:22px;font:700 .8rem Outfit;display:block}.blog-grid{border-top:1px solid var(--ink)}.blog-card{border-bottom:1px solid var(--line);grid-template-columns:130px 1fr;column-gap:30px;padding:38px 0;display:grid}.blog-card>span{background:var(--yellow);text-align:center;grid-row:1/5;align-self:start;padding:6px 10px;font-size:.73rem;font-weight:700}.blog-card time{color:var(--orange);letter-spacing:.08em;font:700 .78rem Outfit}.blog-card h2{margin:8px 0 10px;font-size:clamp(1.4rem,3vw,2rem);line-height:1.45}.blog-card p{color:#17365dab;margin:0}.blog-card b{margin-top:18px;font-size:.85rem}.article-body{max-width:760px;font-size:1.03rem}.article-body h2{margin:58px 0 18px;font-size:1.7rem}.article-body p{color:#17365dd1;margin:0 0 24px}.article-cta{background:var(--ink);color:#fff;box-shadow:6px 6px 0 var(--yellow);margin-top:38px;padding:16px 22px;font-weight:700;display:inline-flex}@media (width<=560px){.blog-shell{width:calc(100% - 36px);padding:70px 0 85px}.blog-card{grid-template-columns:1fr}.blog-card>span{grid-row:auto;width:fit-content;margin-bottom:16px}.blog-title h1{font-size:2.65rem}}
