:root{--ground:#f4f6f2;--surface:#fff;--ink:#16211c;--muted:#5a675e;--green:#0e6b45;--green-deep:#094e33;--green-tint:#e7efe9;--stamp:#b23b2e;--amber:#b45309;--amber-tint:#fbf0e3;--line:#d5ddd6;--line-strong:#b9c4bc;--jp:"Hiragino Kaku Gothic ProN", "Hiragino Sans", "Noto Sans JP", "Yu Gothic", Meiryo, system-ui, sans-serif;--mono:ui-monospace, "SFMono-Regular", Menlo, Consolas, "Liberation Mono", monospace}*{box-sizing:border-box}html,body{margin:0;padding:0}body{background:var(--ground);color:var(--ink);font-family:var(--jp);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;line-height:1.85}a{color:var(--green-deep);text-underline-offset:3px;text-decoration-thickness:1px}a:hover{color:var(--green)}:focus-visible{outline:2px solid var(--green);outline-offset:2px;border-radius:2px}.wrap{width:100%;max-width:1000px;margin:0 auto;padding:0 22px}.inner{padding-top:44px}.inner>h1{margin-bottom:8px}.num{font-variant-numeric:tabular-nums}.muted{color:var(--muted)}.small{font-size:.86rem}.eyebrow{font-family:var(--mono);letter-spacing:.16em;text-transform:uppercase;color:var(--green);margin:0 0 10px;font-size:.74rem}.rule{background:var(--line);border:0;height:1px;margin:0}.rule-dash{border:0;border-top:1.5px dashed var(--line-strong);height:0;margin:0}h1{letter-spacing:-.02em;text-wrap:balance;margin:0;font-size:clamp(1.55rem,4.4vw,2.7rem);font-weight:800;line-height:1.32}h2{letter-spacing:-.01em;text-wrap:balance;margin:0 0 4px;font-size:clamp(1.35rem,2.6vw,1.7rem);font-weight:800;line-height:1.35}h3{margin:0 0 4px;font-size:1.02rem;font-weight:700}p{margin:0 0 14px}.btn{cursor:pointer;border:1.5px solid #0000;border-radius:6px;align-items:center;gap:.5em;padding:12px 20px;font-size:.98rem;font-weight:700;text-decoration:none;transition:background .15s,border-color .15s,color .15s;display:inline-flex}.btn-primary{background:var(--green);color:#fff}.btn-primary:hover{background:var(--green-deep);color:#fff}.btn-ghost{color:var(--green-deep);border-color:var(--line-strong);background:0 0}.btn-ghost:hover{border-color:var(--green);color:var(--green)}.site-header{-webkit-backdrop-filter:saturate(1.1)blur(8px);backdrop-filter:saturate(1.1)blur(8px);border-bottom:1px solid var(--line);z-index:20;background:#f4f6f2eb;position:sticky;top:0}.site-header .wrap{justify-content:space-between;align-items:center;height:60px;display:flex}.brand{color:var(--ink);letter-spacing:-.01em;align-items:center;font-weight:800;text-decoration:none;display:inline-flex}.nav{align-items:center;gap:6px;display:flex}.nav a{color:var(--ink);border-radius:6px;padding:8px 10px;font-size:.9rem;text-decoration:none}.nav a:hover{background:var(--green-tint);color:var(--green-deep)}.nav a.cta{background:var(--green);color:#fff;font-weight:700}.nav a.cta:hover{background:var(--green-deep);color:#fff}@media (max-width:620px){.nav a.plain{display:none}}.hero-full{background:radial-gradient(1200px 620px at 74% 6%, #eef4ee 0%, var(--ground) 62%), var(--ground);color:var(--ink);position:relative;overflow:hidden}.hero-bg{position:absolute;inset:0}.hero-bg .hero-canvas{width:100%;height:100%;position:absolute;inset:0}.hero-scrim{z-index:1;background:linear-gradient(90deg, #f4f6f2f5 0%, #f4f6f2c7 38%, #f4f6f21a 66%, #f4f6f200 82%), linear-gradient(0deg, var(--ground) 0%, #f4f6f200 18%);position:absolute;inset:0}.hero-inner{z-index:2;padding-top:104px;padding-bottom:128px;position:relative}.hero-inner h1{color:var(--ink);max-width:18ch;font-size:clamp(1.7rem,4.2vw,3.2rem)}.hero-inner h1 .seg{display:inline-block}.eyebrow-en{font-family:var(--mono);letter-spacing:.3em;color:var(--green);text-transform:uppercase;margin:0 0 10px;font-size:.78rem}.eyebrow-dark{font-family:var(--mono);letter-spacing:.12em;color:var(--muted);margin:0 0 16px;font-size:.74rem}.hero-sub{color:#3c4a42;max-width:44ch;margin:20px 0 28px;font-size:1.06rem;line-height:1.85}.hero-sub b{color:var(--green-deep)}.hero-cta{flex-wrap:wrap;gap:12px;display:flex}.btn-outline-dark{color:var(--green-deep);border-color:var(--line-strong);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#ffffffb3}.btn-outline-dark:hover{border-color:var(--green);color:var(--green)}.hero-canvas{width:100%;height:480px;position:relative}.scroll-cue{z-index:2;color:#8aa394;flex-direction:column;align-items:center;gap:10px;display:flex;position:absolute;bottom:92px;right:26px}.scroll-cue span{font-family:var(--mono);letter-spacing:.3em;writing-mode:vertical-rl;font-size:.64rem}.scroll-cue i{background:linear-gradient(var(--green), transparent);transform-origin:top;width:1px;height:52px;animation:2.4s ease-in-out infinite cue;display:block}@keyframes cue{0%{opacity:0;transform:scaleY(0)}40%{opacity:1;transform:scaleY(1)}to{opacity:0;transform:scaleY(1)translateY(18px)}}.hero-full .marquee{z-index:2;border-top:1px solid var(--line);border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#ffffff8c;margin-top:0;position:relative}@media (max-width:860px){.hero-full{flex-direction:column;display:flex}.hero-inner{order:1;padding-top:42px;padding-bottom:10px}.hero-bg{order:2;height:236px;margin-top:-20px;position:relative}.hero-scrim,.scroll-cue{display:none}.hero-full .marquee{order:3}.hero-sub{max-width:100%;margin:14px 0 22px}.hero-cta{flex-direction:column;align-items:stretch;gap:10px;max-width:400px;margin-bottom:8px}.hero-cta .btn{justify-content:center;width:100%;padding:14px 20px}}@media (max-width:520px){.eyebrow{letter-spacing:.1em}.eyebrow-en{letter-spacing:.2em}}.ghost{font-family:var(--mono);letter-spacing:.06em;color:#0e6b4514;-webkit-user-select:none;user-select:none;margin:0 0 -6px;font-size:clamp(2.4rem,7.5vw,5.6rem);font-weight:700;line-height:1}.stats{background:var(--line);border:1px solid var(--line);border-radius:12px;grid-template-columns:repeat(4,1fr);gap:1px;margin-top:56px;display:grid;overflow:hidden}.stat{background:var(--surface);padding:20px 18px}.stat-n{font-family:var(--mono);color:var(--green-deep);font-variant-numeric:tabular-nums;font-size:1.9rem;font-weight:700;line-height:1.2}.stat-n span{color:var(--green);margin-left:2px;font-size:1.05rem}.stat-l{color:var(--muted);margin-top:4px;font-size:.78rem}@media (max-width:680px){.stats{grid-template-columns:1fr 1fr}}.cta-band{text-align:center;padding:84px 0 92px}.cta-band h2{margin:8px 0 24px}.cta-band .hero-cta{justify-content:center}@media (max-width:520px){.cta-band .hero-cta{max-width:100%}}.marquee{border-top:1px solid var(--line);margin-top:26px;padding:13px 0;overflow:hidden}.marquee-track{width:max-content;animation:32s linear infinite mq;display:flex}.marquee-row{display:inline-flex}.marquee-item{font-family:var(--mono);letter-spacing:.14em;color:#6a7d70;white-space:nowrap;font-size:.8rem}.marquee-sep{color:#b9c4bc;margin:0 22px}@keyframes mq{to{transform:translate(-50%)}}@media (scripting:enabled){.reveal{opacity:0;transform:translateY(16px)}}.reveal{transition:opacity .7s,transform .7s cubic-bezier(.2,.7,.3,1);transition-delay:var(--rv-delay,0s)}.reveal.in{opacity:1;transform:none}@media (prefers-reduced-motion:reduce){.reveal{opacity:1!important;transform:none!important}.marquee-track{animation:none!important}}.block{padding-top:52px}@media (max-width:680px){.block{padding-top:38px}}.block>.eyebrow+h2{margin-top:0}.feature-grid{grid-template-columns:1fr 1fr;gap:14px;margin-top:22px;display:grid}@media (max-width:680px){.feature-grid{grid-template-columns:1fr}}.feature-grid .reveal{min-width:0}.feature{border:1px solid var(--line);background:var(--surface);border-radius:12px;height:100%;padding:22px;transition:border-color .2s}.feature:hover{border-color:var(--line-strong)}.feature .f-k{font-family:var(--mono);letter-spacing:.14em;color:var(--green);margin-bottom:8px;font-size:.72rem}.feature h3{margin-bottom:6px}.feature a{font-size:.9rem;font-weight:700}.callout{border-left:3px solid var(--amber);background:var(--amber-tint);border-radius:0 8px 8px 0;margin-top:16px;padding:16px 18px;font-size:.95rem}.callout strong{color:#8a3f08}.table-wrap{border:1px solid var(--line);background:var(--surface);border-radius:10px;margin-top:16px;overflow-x:auto}table{border-collapse:collapse;width:100%;min-width:520px;font-size:.92rem}thead th{background:var(--ink);color:#eaf1ec;letter-spacing:.03em;text-align:left;font-size:.82rem;font-weight:700}th,td{border-bottom:1px solid var(--line);border-right:1px solid var(--line);vertical-align:top;text-align:left;padding:11px 14px}th:last-child,td:last-child{border-right:0}tbody tr:last-child td{border-bottom:0}tbody th{background:var(--green-tint);color:var(--green-deep);white-space:nowrap;font-weight:700}.pro{border:1.5px solid var(--line-strong);background:var(--surface);border-radius:10px;margin-top:20px;padding:24px;position:relative}.pro:before{content:"PRO";font-family:var(--mono);letter-spacing:.2em;color:var(--green);border:1px solid var(--green);border-radius:4px;padding:2px 7px;font-size:.7rem;position:absolute;top:18px;right:20px}.tool-panel{border:1px solid var(--line);background:var(--surface);border-radius:12px;margin-top:20px;padding:22px}.field-inline{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.deadline-grid{grid-template-columns:1fr 1fr;gap:16px;margin-top:20px;display:grid}@media (max-width:680px){.deadline-grid{grid-template-columns:1fr}}.deadline-card{border:1px solid var(--line);background:var(--ground);border-radius:10px;padding:18px}.deadline-card .dc-k{font-family:var(--mono);letter-spacing:.12em;color:var(--green);margin-bottom:6px;font-size:.72rem}.deadline-card h3{margin-bottom:10px;font-size:.98rem}.deadline-card .dc-date{font-family:var(--mono);font-variant-numeric:tabular-nums;letter-spacing:.01em;font-size:1.55rem;font-weight:700}.deadline-card .dc-count{font-family:var(--mono);color:var(--muted);margin-top:2px;font-size:.9rem}.deadline-card .dc-count.soon{color:var(--amber);font-weight:700}.deadline-card .dc-note{color:var(--muted);margin-top:10px;font-size:.82rem}.kpi{font-family:var(--mono);background:var(--green-tint);color:var(--green-deep);font-variant-numeric:tabular-nums;border-radius:6px;align-items:baseline;gap:6px;margin-right:8px;padding:6px 12px;font-weight:700;display:inline-flex}.form-card{border:1px solid var(--line);background:var(--surface);border-radius:12px;margin-top:20px;padding:22px}.form-card h3{border-bottom:1px solid var(--line);font-family:var(--jp);margin-bottom:14px;padding-bottom:10px}.grid-2{grid-template-columns:1fr 1fr;gap:14px 18px;display:grid}@media (max-width:640px){.grid-2{grid-template-columns:1fr}}label.lbl{color:#2b382f;margin-bottom:5px;font-size:.84rem;font-weight:700;display:block}input[type=text],input[type=number],select{border:1px solid var(--line-strong);background:var(--surface);width:100%;color:var(--ink);font-size:.95rem;font-family:var(--jp);border-radius:6px;padding:9px 11px}input:focus,select:focus{border-color:var(--green);box-shadow:0 0 0 3px var(--green-tint);outline:none}td input[type=number]{font-variant-numeric:tabular-nums;padding:6px 7px}.check-row{flex-wrap:wrap;gap:8px 16px;display:flex}.check-row label{align-items:center;gap:6px;font-size:.9rem;display:inline-flex}.total-row th,.total-row td{background:var(--green-tint);color:var(--green-deep);font-variant-numeric:tabular-nums;font-weight:700}.warnbox{border-left:3px solid var(--amber);background:var(--amber-tint);border-radius:0 8px 8px 0;margin-top:16px;padding:12px 16px;font-size:.9rem}.warnbox div{color:#8a3f08}.notice{color:var(--muted);margin-top:14px;font-size:.84rem}.prose{max-width:72ch}.prose h2{border-bottom:2px solid var(--line);margin:40px 0 12px;padding-bottom:8px}.prose h3{margin:24px 0 6px}.prose p,.prose li{color:#22302a}.prose ul{padding-left:1.2em}.prose li{margin-bottom:6px}.prose .lead{font-size:1.06rem}.site-footer{border-top:1px solid var(--line);background:var(--surface);margin-top:64px}.site-footer .wrap{padding-top:28px;padding-bottom:40px}.site-footer p{color:var(--muted);margin:0 0 6px;font-size:.82rem}@media (prefers-reduced-motion:reduce){*{transition:none!important}}
