:root{--ink:#1c1b18;--ink-soft:#5a554d;--paper:#f7f3ea;--paper-2:#efede6;--white:#fffdf8;--lime:#d83a24;--sage:#d8d2c4;--line:#132a2529;--shadow:0 24px 70px #1b332b1f;--radius:3px;--shell:min(1160px, calc(100% - 40px))}*{box-sizing:border-box}html{scroll-behavior:smooth}body{color:var(--ink);background:var(--paper);letter-spacing:.02em;margin:0;font-family:Hiragino Kaku Gothic ProN,Yu Gothic,YuGothic,Meiryo,sans-serif;line-height:1.8}a{color:inherit}img,svg{max-width:100%;display:block}button,input,select,textarea{font:inherit}.shell{width:var(--shell);margin-inline:auto}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip-link{z-index:999;background:var(--white);padding:10px 16px;position:fixed;top:8px;left:8px;transform:translateY(-150%)}.skip-link:focus{transform:none}.site-header{z-index:50;border-bottom:1px solid var(--line);backdrop-filter:blur(18px);background:#f7f3eaeb;position:sticky;top:0}.header-inner{justify-content:space-between;align-items:center;gap:24px;min-height:78px;display:flex}.brand{letter-spacing:.13em;align-items:center;gap:10px;font:700 1rem/1 ui-sans-serif,-apple-system,BlinkMacSystemFont,Helvetica Neue,Arial,sans-serif;text-decoration:none;display:flex}.brand svg{fill:none;stroke:currentColor;stroke-width:2px;width:33px}.site-nav{align-items:center;gap:24px;font-size:.85rem;font-weight:600;display:flex}.site-nav a{text-decoration:none}.site-nav a:hover{opacity:.6}.nav-cta{color:var(--white);background:var(--lime);border-radius:2px;padding:10px 18px}.menu-button{background:0 0;border:0;padding:10px;display:none}.menu-button>span:not(.sr-only){background:var(--ink);width:24px;height:2px;margin:5px;display:block}.eyebrow{color:var(--ink-soft);letter-spacing:.18em;margin:0 0 16px;font:700 .76rem/1.4 ui-sans-serif,-apple-system,BlinkMacSystemFont,Helvetica Neue,Arial,sans-serif}.button{border:1px solid var(--ink);background:var(--lime);min-height:58px;color:var(--white);cursor:pointer;border-radius:2px;justify-content:center;align-items:center;gap:40px;padding:0 26px;font-weight:700;text-decoration:none;transition:all .2s;display:inline-flex}.button:hover{gap:50px;transform:translateY(-2px)}.button-outline{color:var(--ink);background:0 0}.button-light{border-color:var(--white);background:var(--white);color:var(--ink)}.hero{align-items:center;min-height:760px;padding:100px 0 120px;display:grid;position:relative;overflow:hidden}.hero:before,.hero:after{display:none}.hero-diagram{border:1px solid var(--ink);background:#fffdf873;width:430px;padding:28px;position:absolute;top:145px;right:max(20px,50vw - 580px)}.node-row,.diagram-foot{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.node-row span{border:1px solid var(--line);background:var(--white);text-align:center;letter-spacing:.08em;padding:26px 8px;font:700 .72rem/1 ui-sans-serif,-apple-system,BlinkMacSystemFont,Helvetica Neue,Arial,sans-serif}.diagram-flow{border-block:1px solid var(--line);width:78%;color:var(--ink-soft);text-align:center;letter-spacing:.1em;margin:32px auto 12px;padding:10px;font:600 .68rem/1 ui-sans-serif,-apple-system,BlinkMacSystemFont,Helvetica Neue,Arial,sans-serif;position:relative}.diagram-flow:before{content:"";border-left:1px solid var(--ink);height:33px;position:absolute;bottom:100%;left:50%}.diagram-shield{border:2px solid var(--lime);width:160px;color:var(--lime);text-align:center;letter-spacing:.08em;clip-path:polygon(50% 0,100% 18%,92% 78%,50% 100%,8% 78%,0 18%);margin:28px auto;padding:34px 16px;font:700 .85rem/1 ui-sans-serif,-apple-system,BlinkMacSystemFont,Helvetica Neue,Arial,sans-serif}.diagram-shield small{color:var(--ink-soft);margin-top:8px;font-size:.48rem;display:block}.diagram-foot span{border-top:1px solid var(--ink);text-align:center;letter-spacing:.08em;padding:10px 4px;font:700 .65rem/1 ui-sans-serif,-apple-system,BlinkMacSystemFont,Helvetica Neue,Arial,sans-serif}@keyframes drift{to{transform:rotate(16deg)translateY(22px)}}.hero-copy{z-index:2;width:min(650px,60%);position:relative}.hero h1{letter-spacing:-.065em;max-width:800px;margin:0;font-size:clamp(3.6rem,6vw,6rem);line-height:.98}.hero h1,.section-head h2,.page-hero h1,.scope-main h2,.price-aside h2,.cta-inner h2{font-family:Hiragino Mincho ProN,Yu Mincho,YuMincho,serif;font-weight:600}.hero h1 span{letter-spacing:-.035em;margin-top:18px;font-size:.44em;line-height:1.35;display:block}.hero .lead{max-width:590px;color:var(--ink-soft);margin:34px 0;font-size:1.05rem}.hero-actions{flex-wrap:wrap;gap:12px;display:flex}.hero-note{margin-top:22px;font-size:.78rem}.section{padding:110px 0}.section-muted{background:var(--paper-2)}.section-dark{background:var(--ink);color:var(--white)}.section-head{grid-template-columns:.65fr 1.35fr;align-items:end;gap:60px;margin-bottom:54px;display:grid}.section-head h2,.page-hero h1{letter-spacing:-.055em;margin:0;font-size:clamp(2.4rem,5vw,5rem);line-height:1.1}.section-head p:last-child{max-width:580px;color:var(--ink-soft);margin:0 0 8px}.grid-3{grid-template-columns:repeat(3,1fr);gap:16px;display:grid}.card{border:1px solid var(--line);border-radius:var(--radius);background:var(--white);padding:34px}.card-number{color:var(--ink-soft);letter-spacing:.12em;justify-content:space-between;margin-bottom:64px;font:600 .75rem/1 ui-sans-serif,-apple-system,BlinkMacSystemFont,Helvetica Neue,Arial,sans-serif;display:flex}.card h3{margin:0 0 12px;font-size:1.3rem}.card p{color:var(--ink-soft);margin:0;font-size:.92rem}.scope-grid{grid-template-columns:1.25fr .75fr;gap:18px;display:grid}.scope-main{border-radius:var(--radius);background:var(--ink);min-height:470px;color:var(--white);flex-direction:column;justify-content:space-between;padding:54px;display:flex}.scope-main h2{letter-spacing:-.055em;max-width:680px;margin:0;font-size:clamp(2.5rem,5vw,5.3rem);line-height:1}.scope-side{gap:18px;display:grid}.scope-side .card{flex-direction:column;justify-content:space-between;min-height:226px;display:flex}.price-wrap{grid-template-columns:1fr .9fr;align-items:center;gap:28px;display:grid}.price-card{background:var(--white);box-shadow:var(--shadow);border-radius:3px;padding:54px}.price{letter-spacing:-.06em;margin:14px 0 8px;font:700 clamp(3.4rem,7vw,6.4rem)/1 ui-sans-serif,-apple-system,BlinkMacSystemFont,Helvetica Neue,Arial,sans-serif}.price small{letter-spacing:0;font:600 1rem/1 Hiragino Kaku Gothic ProN,Yu Gothic,YuGothic,Meiryo,sans-serif}.plan-list{grid-template-columns:1fr 1fr;gap:0 26px;margin:34px 0;padding:0;list-style:none;display:grid}.plan-list li{border-bottom:1px solid var(--line);padding:14px 0;font-size:.92rem}.price-aside{padding:30px}.price-aside h2{margin:0 0 22px;font-size:clamp(2rem,4vw,3.4rem);line-height:1.15}.price-aside p{color:var(--ink-soft)}.notice{border-left:3px solid var(--ink);background:#ffffff73;padding:18px 22px;font-size:.86rem}.steps{counter-reset:step;background:var(--line);border:1px solid var(--line);border-radius:var(--radius);gap:1px;display:grid;overflow:hidden}.step{counter-increment:step;background:var(--white);grid-template-columns:100px 1fr 1fr;align-items:start;gap:28px;padding:34px;display:grid}.step:before{content:"0" counter(step);color:var(--ink-soft);font:700 1rem/1 ui-sans-serif,-apple-system,BlinkMacSystemFont,Helvetica Neue,Arial,sans-serif}.step h3,.step p{margin:0}.step p{color:var(--ink-soft);font-size:.9rem}.page-hero{padding:110px 0 80px}.page-hero .lead{max-width:720px;color:var(--ink-soft);margin:28px 0 0;font-size:1.08rem}.prose{width:min(820px,100% - 40px);margin:0 auto;padding:30px 0 120px}.prose h2{letter-spacing:-.03em;margin-top:66px;font-size:1.75rem}.prose h3{margin-top:36px}.prose p,.prose li{color:var(--ink-soft)}.prose table{border-collapse:collapse;width:100%;margin:24px 0}.prose th,.prose td{border-bottom:1px solid var(--line);text-align:left;vertical-align:top;padding:16px}.prose th{width:28%;color:var(--ink)}.faq-list{gap:10px;display:grid}.faq-list details{border:1px solid var(--line);background:var(--white);border-radius:18px;padding:0 26px}.faq-list summary{cursor:pointer;padding:22px 36px 22px 0;font-weight:700}.faq-list p{color:var(--ink-soft);margin:0;padding:0 0 24px}.status-card{border-radius:var(--radius);background:var(--white);grid-template-columns:auto 1fr;align-items:center;gap:20px;padding:34px;display:grid}.status-dot{background:#cf9d26;border-radius:50%;width:14px;height:14px;box-shadow:0 0 0 8px #cf9d2624}.status-card h2,.status-card p{margin:0}.form-wrap{grid-template-columns:.75fr 1.25fr;gap:48px;display:grid}.contact-form{border-radius:var(--radius);background:var(--white);box-shadow:var(--shadow);gap:20px;padding:40px;display:grid}.field{gap:8px;display:grid}.field label{font-size:.86rem;font-weight:700}.field input,.field select,.field textarea{border:1px solid var(--line);background:var(--paper);width:100%;color:var(--ink);border-radius:10px;padding:14px}.field textarea{resize:vertical;min-height:150px}.field small{color:var(--ink-soft)}.hp-field{position:absolute;left:-9999px}.form-status{min-height:1.8em;font-size:.88rem}.cta-band{background:var(--ink);color:var(--white);padding:80px 0}.cta-inner{justify-content:space-between;align-items:end;gap:40px;display:flex}.cta-inner h2{letter-spacing:-.055em;margin:0;font-size:clamp(2.4rem,5vw,4.8rem);line-height:1}.cta-inner p:last-child{color:#ffffffad;max-width:650px}.site-footer{color:#ffffffbd;background:#171715;padding:74px 0 28px}.footer-grid{grid-template-columns:1.7fr repeat(3,1fr);gap:48px;display:grid}.footer-grid h2{color:var(--white);letter-spacing:.1em;margin:0 0 16px;font-size:.78rem}.footer-grid a{margin:9px 0;font-size:.83rem;text-decoration:none;display:block}.brand-footer{color:var(--white);font-size:1.05rem}.footer-grid p{font-size:.82rem}.footer-bottom{border-top:1px solid #ffffff24;justify-content:space-between;margin-top:58px;padding-top:22px;font-size:.72rem;display:flex}.consent{z-index:90;border:1px solid var(--line);background:var(--white);width:min(460px,100% - 40px);box-shadow:var(--shadow);border-radius:18px;padding:22px;position:fixed;bottom:20px;right:20px}.consent p{margin:0 0 14px;font-size:.8rem}.consent div{justify-content:flex-end;gap:8px;display:flex}.consent button{border:1px solid var(--ink);cursor:pointer;background:0 0;border-radius:2px;padding:8px 15px}.consent button:last-child{background:var(--ink);color:var(--white)}@media (width<=900px){:root{--shell:min(100% - 28px, 700px)}.menu-button{display:block}.site-nav{background:var(--paper);border-bottom:1px solid var(--line);flex-direction:column;align-items:stretch;padding:20px;display:none;position:absolute;top:78px;left:0;right:0}.site-nav.is-open{display:flex}.site-nav a{padding:8px}.hero{min-height:900px;padding:70px 0 390px}.hero-diagram{width:calc(100% - 28px);padding:18px;top:auto;bottom:44px;right:14px}.node-row span{padding:16px 4px}.hero-copy{width:100%}.hero h1{font-size:clamp(3.2rem,14vw,5rem)}.section,.page-hero{padding:76px 0}.section-head,.scope-grid,.price-wrap,.form-wrap,.grid-3{grid-template-columns:1fr}.scope-main{min-height:380px;padding:34px}.step{grid-template-columns:46px 1fr}.step p{grid-column:2}.cta-inner{display:block}.cta-inner .button{margin-top:24px}.footer-grid{grid-template-columns:1fr 1fr}}@media (width<=540px){.hero h1{font-size:3.2rem}.hero h1 span{font-size:.46em}.section-head{gap:20px}.price-card,.contact-form{padding:26px 20px}.plan-list{grid-template-columns:1fr}.step{padding:26px 20px}.footer-grid{grid-template-columns:1fr 1fr;gap:32px 20px}.footer-grid>div:first-child{grid-column:1/-1}.footer-bottom{gap:8px;display:grid}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
