:root{--ink:#333132;--ink-soft:#5c595a;--ink-faint:#8b8788;--paper:#fcfbf8;--mist:#f3f1ec;--rule:#e3e0d9;--shu:#f1246c;--shu-deep:#cf1259;--shu-fig:color-mix(in srgb, var(--shu) 55%, transparent);--seal:#8fb6e0;--white:#fff;--st-green:#4cbd7f;--st-yellow:#ddb84a;--st-red:#e57070;--src-ai:#a58ae3;--src-lint:#45b3a4;--font-display:"Zen Kaku Gothic New", "Hiragino Kaku Gothic ProN", sans-serif;--font-body:"Zen Kaku Gothic New", "Hiragino Kaku Gothic ProN", sans-serif;--font-mono:"IBM Plex Mono", ui-monospace, monospace;--max:1080px;--max-narrow:860px}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;scroll-padding-top:84px}body{font-family:var(--font-body);color:var(--ink);background:var(--paper);-webkit-font-smoothing:antialiased;font-size:16px;line-height:1.5;overflow-x:hidden}img{max-width:100%;height:auto;display:block}a{color:inherit}button{font:inherit;cursor:pointer}.skip-link{background:var(--ink);color:var(--white);z-index:100;padding:8px 16px;position:absolute;top:0;left:-9999px}.skip-link:focus{left:0}:focus-visible{outline:2px solid var(--shu);outline-offset:2px}.container{max-width:var(--max);margin-inline:auto;padding-inline:24px}.container.narrow{max-width:var(--max-narrow)}.center{text-align:center}.btn{border:1.5px solid #0000;border-radius:6px;padding:13px 22px;font-size:14px;font-weight:700;line-height:1;text-decoration:none;transition:background-color .18s,color .18s,border-color .18s;display:inline-block}.btn-lg{padding:16px 28px;font-size:15px}.btn-primary{background:var(--shu);color:var(--white)}.btn-primary:hover{background:var(--shu-deep)}.btn-ghost{border-color:var(--rule);color:var(--ink);background:0 0}.btn-ghost:hover{border-color:var(--ink)}.site-header{z-index:50;background:color-mix(in srgb, var(--paper) 88%, transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid var(--rule);position:sticky;top:0}.header-inner{align-items:center;gap:28px;height:64px;display:flex}.brand img{width:132px;height:auto}.site-nav{gap:22px;margin-left:auto;display:flex}.site-nav a{color:var(--ink-soft);font-size:13.5px;font-weight:500;text-decoration:none}.site-nav a:hover{color:var(--ink)}.header-actions{align-items:center;gap:10px;display:flex}.section-title{font-family:var(--font-display);letter-spacing:.02em;margin-bottom:22px;font-size:clamp(24px,3.4vw,34px);font-weight:700;line-height:1.55}.section-lead{max-width:720px;color:var(--ink-soft);margin-bottom:40px}.section-footnote{color:var(--ink-faint);margin-top:28px;font-size:12.5px}.section{padding:96px 0}.section-alt{background:var(--mist);border-top:1px solid var(--rule);border-bottom:1px solid var(--rule)}.hero{padding:9rem 0 8rem}.hero-grid{grid-template-columns:minmax(0,11fr) minmax(0,9fr);align-items:center;gap:56px;display:grid}.hero-title{font-family:var(--font-display);letter-spacing:.02em;margin-bottom:18px;font-size:clamp(30px,4.6vw,46px);font-weight:700;line-height:1.3}.hero-title em{background-image:linear-gradient(transparent 78%, color-mix(in srgb, var(--shu) 28%, transparent) 78%);font-style:normal}.lead{color:var(--ink-soft);max-width:34em;margin-bottom:32px}.hero-actions{flex-wrap:wrap;gap:14px;margin-bottom:18px;display:flex}.hero-note{color:var(--ink-faint);font-size:12.5px}.hero-note:before{content:"◎ ";color:var(--shu)}.hero-visual{position:relative}.visual-canvas{padding:26px 0 50px;position:relative}.visual-canvas:before{content:"";background-color:var(--mist);background-image:radial-gradient(color-mix(in srgb, var(--ink) 5%, transparent) 1.3px, transparent 1.3px);background-size:16px 16px;border-radius:18px;position:absolute;inset:0 0 24px 44px}.visual-page{background:var(--white);border-radius:12px;max-width:380px;padding:30px 32px 26px;position:relative;box-shadow:0 1px 2px #3331320f,0 24px 48px -20px #33313247}.proof-name{font-family:var(--font-display);font-size:19px;font-weight:600}.proof-code{font-family:var(--font-mono);color:var(--ink-soft);font-size:12px}.proof-price{color:var(--ink-soft);flex-wrap:wrap;align-items:baseline;gap:8px;margin-bottom:18px;font-size:13px;display:flex}.proof-yen{font-family:var(--font-mono);color:var(--ink);letter-spacing:.01em;font-size:30px;font-weight:500}.proof-tax{font-size:12px}.proof-copyline{color:var(--ink-soft);border-top:1px solid var(--rule);padding-top:14px;font-size:13px}.proof-flag{color:inherit;background:0 0;position:relative}.proof-flag:after{content:"";background:var(--shu-fig);border-radius:2px;height:4px;position:absolute;bottom:-3px;left:0;right:0}.visual-pop{background:var(--white);border-radius:10px;padding:14px 18px 13px;font-size:13px;position:absolute;box-shadow:0 1px 2px #3331320f,0 18px 40px -16px #33313252}.pop-match{top:70px;right:-30px}.pop-review{bottom:40px;right:-30px}.pop-head{align-items:center;gap:8px;margin-bottom:7px;display:flex}.pop-kind{font-family:var(--font-mono);letter-spacing:.08em;color:var(--ink-faint);font-size:10.5px}.pop-body{color:var(--ink-soft);line-height:1.75}.pop-body strong{font-family:var(--font-mono);color:var(--ink);font-weight:500}.pop-del{color:color-mix(in srgb, var(--shu) 80%, var(--ink-soft));text-decoration-thickness:2px}@media (prefers-reduced-motion:no-preference){.proof-flag:after{transform-origin:0;animation:.4s ease-out forwards underline-in;transform:scaleX(0)}.flag-1:after{animation-delay:.8s}.flag-2:after{animation-delay:1.5s}.visual-pop{opacity:0;animation:.5s ease-out forwards pop-in;transform:translateY(10px)}.pop-match{animation-delay:1.1s}.pop-review{animation-delay:1.8s}}@keyframes underline-in{to{transform:scaleX(1)}}@keyframes pop-in{to{opacity:1;transform:none}}.problem-compact{grid-template-columns:repeat(3,1fr);gap:28px;margin-top:4px;display:grid}.problem-point{border-top:2px solid var(--shu);padding-top:18px}.problem-point h3{font-family:var(--font-display);margin-bottom:8px;font-size:17px;font-weight:600}.problem-point p{color:var(--ink-soft);font-size:14px;line-height:1.9}.capabilities{grid-template-columns:repeat(2,1fr);gap:28px;display:grid}.capability{background:var(--white);border:1px solid var(--rule);border-radius:8px;padding:34px 32px}.capability-tag{font-family:var(--font-mono);letter-spacing:.12em;color:var(--shu);border-bottom:1px solid var(--rule);margin-bottom:18px;padding-bottom:12px;font-size:12px}.capability h3{font-family:var(--font-display);margin-bottom:12px;font-size:23px;font-weight:700}.capability p{color:var(--ink-soft);font-size:14.5px;line-height:2}.capability strong,.feature strong{color:var(--ink);font-weight:700}.checkflow-h{font-family:var(--font-display);margin-bottom:18px;font-size:20px;font-weight:600}.checkflow-h:before{content:"";background:var(--shu);vertical-align:.28em;width:22px;height:3px;margin-right:12px;display:inline-block}.checkflow{margin:0 0 56px;overflow-x:auto}.checkflow svg{width:100%;min-width:680px;height:auto;display:block}.checkflow figcaption{font-family:var(--font-mono);letter-spacing:.06em;color:var(--ink-faint);text-align:center;margin-top:14px;font-size:11.5px;position:sticky;left:0}.fv-label{font-size:12.5px;font-weight:700}.fv-tag{font-family:var(--font-mono);fill:var(--ink-soft);font-size:10.5px}.fv-cell{font-family:var(--font-mono);fill:var(--ink-soft);font-size:9px}.fv-price-s{font-family:var(--font-mono);font-size:11px;font-weight:500}.fv-pagehead{font-family:var(--font-mono);letter-spacing:.18em;fill:var(--ink-faint);font-size:9.5px}.fv-name{font-family:var(--font-display);font-size:14px;font-weight:600}.fv-headline{font-family:var(--font-display);font-size:15px;font-weight:700}.fv-mag{font-family:var(--font-display);font-size:17px;font-weight:700}.fv-code{font-family:var(--font-mono);fill:var(--ink-faint);font-size:9.5px}.fv-price{font-family:var(--font-mono);font-size:17px;font-weight:500}.fv-taxnote{font-family:var(--font-body);fill:var(--ink-soft);font-size:9.5px}.fv-copy{fill:var(--ink-soft);font-size:11.5px}.fv-ghost{fill:var(--ink-faint)}.fv-stamp circle{stroke:var(--seal)}.fv-stamp-txt{font-family:var(--font-display);fill:var(--seal);letter-spacing:.06em;font-size:17px;font-weight:700}.fv-stamp-txt2{font-family:var(--font-display);fill:var(--seal);letter-spacing:.1em;font-size:13px;font-weight:700}.fv-cap{font-family:var(--font-mono);letter-spacing:.12em;fill:var(--ink-faint);font-size:10px}.fv-chip{font-size:10px;font-weight:700}.fv-chip-y{fill:#a16207}.fv-chip-r{fill:#b91c1c}.fv-chip-a{fill:#b45309}.fv-chip-v{fill:#7a5fc0}.fv-chip-t{fill:#0f8577}.fv-kind{font-family:var(--font-mono);letter-spacing:.08em;fill:var(--ink-faint);font-size:9.5px}.fv-body{fill:var(--ink-soft);font-size:12.5px}.fv-num{font-family:var(--font-mono);fill:var(--ink);font-weight:500}.fv-del{fill:color-mix(in srgb, var(--shu) 80%, var(--ink-soft));text-decoration:line-through}.fv-mark{fill:var(--shu-fig)}.fv-wavy{fill:none;stroke:var(--shu-fig);stroke-width:1.5px}.fv-badge{fill:color-mix(in srgb, var(--shu) 14%, var(--white))}.fv-mark-num{font-family:var(--font-mono);fill:color-mix(in srgb, var(--shu) 85%, var(--ink));font-size:10.5px;font-weight:500}.fv-leader{fill:none;stroke:var(--shu);stroke-width:1.2px;stroke-dasharray:3 4;opacity:.38}@media (prefers-reduced-motion:no-preference){.js .checkflow .fv-stamp,.js .checkflow .fv-issue{opacity:0}.js .checkflow.is-visible .fv-stamp{transform-box:fill-box;transform-origin:50%;animation:.5s ease-out .4s forwards fv-stamp-in}.js .checkflow.is-visible .fv-issue{animation:.45s ease-out forwards fv-fade-in}.js .checkflow.is-visible .fv-i1{animation-delay:1s}.js .checkflow.is-visible .fv-i2{animation-delay:1.35s}.js .checkflow.is-visible .fv-i3{animation-delay:1.7s}}@keyframes fv-stamp-in{0%{opacity:0;transform:scale(1.08)}to{opacity:1;transform:scale(1)}}@keyframes fv-fade-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}.demo-app{border:1px solid var(--rule);background:var(--white);border-radius:10px;overflow:hidden;box-shadow:0 20px 50px -24px #3331324d}.demo-titlebar{background:var(--mist);border-bottom:1px solid var(--rule);align-items:center;gap:6px;padding:10px 14px;display:flex}.demo-dot{background:var(--rule);border-radius:50%;width:10px;height:10px}.demo-url{font-family:var(--font-mono);color:var(--ink-faint);margin-left:10px;font-size:11.5px}.demo-stage{min-height:380px}.demo-stage[hidden]{display:none!important}.demo-dropzone{border:2px dashed var(--rule);border-radius:10px;flex-direction:column;justify-content:center;align-items:center;gap:20px;min-height:380px;margin:24px;display:flex}.demo-drop-title{font-size:15px;font-weight:700}.demo-files{flex-wrap:wrap;justify-content:center;gap:10px;display:flex}.demo-file{font-family:var(--font-mono);background:var(--mist);border:1px solid var(--rule);border-radius:6px;padding:7px 12px;font-size:12.5px}.demo-events{gap:14px;max-width:560px;margin-inline:auto;padding:40px 48px;list-style:none;display:grid}.demo-events li{opacity:0;align-items:center;gap:12px;font-size:14px;transition:opacity .3s,transform .3s;display:flex;transform:translateY(4px)}.demo-events li.shown{opacity:1;transform:none}.demo-events .ev-icon{width:20px;height:20px;color:var(--white);background:var(--ink-faint);border-radius:50%;flex:none;justify-content:center;align-items:center;font-size:11px;display:inline-flex}.demo-events li.done .ev-icon{background:var(--st-green)}.demo-events li.running .ev-icon{background:var(--shu)}@media (prefers-reduced-motion:no-preference){.demo-events li.running .ev-icon{animation:1s ease-in-out infinite pulse}}@keyframes pulse{50%{opacity:.55}}.demo-events .ev-meta{font-family:var(--font-mono);color:var(--ink-faint);margin-left:auto;font-size:11.5px}.demo-result{grid-template-columns:minmax(0,2fr) minmax(0,3fr);display:grid}.demo-side{order:-1}.demo-pdf{background:repeating-linear-gradient(0deg, transparent 0 23px, #33313205 23px 24px), var(--white);border-left:1px solid var(--rule);padding:28px}.demo-page-head{font-family:var(--font-mono);letter-spacing:.2em;color:var(--ink-faint);margin-bottom:18px;font-size:10.5px}.demo-grid{grid-template-rows:auto auto;grid-template-columns:minmax(0,1.12fr) minmax(0,1fr);align-items:stretch;gap:14px;display:grid}.demo-product{text-align:center;background:var(--white);box-shadow:inset 0 0 0 1px var(--rule);border:2px solid #0000;border-radius:6px;flex-direction:column;align-items:center;gap:12px;padding:16px 12px;transition:border-color .25s,box-shadow .25s;display:flex}.demo-product-feature{grid-area:1/1/3;justify-content:center;gap:16px;padding:22px 16px}.demo-product-feature .demo-thumb{width:118px;height:158px}.demo-product-feature .demo-p-name{font-size:15px}.demo-product-compact{text-align:left;flex-direction:row;grid-column:2;align-items:center;gap:14px}.demo-product-compact .demo-thumb{width:46px;height:64px}.demo-product-compact .demo-p-name{font-size:12.5px}.demo-product-mirror{flex-direction:row-reverse}.demo-copytext{color:var(--ink-soft);border:2px solid #0000;border-radius:6px;margin-top:16px;padding:10px 12px;font-size:13px;transition:border-color .25s,box-shadow .25s}.demo-result.judged [data-target=m1],.demo-result.judged [data-target=m2]{border-color:var(--st-green)}.demo-result.judged [data-target=m4]{border-color:var(--st-yellow)}.demo-result.judged [data-target=r1]{border-color:var(--src-ai)}.demo-result [data-target].focused{box-shadow:0 0 0 4px color-mix(in srgb, var(--shu) 25%, transparent)}.demo-thumb{background:radial-gradient(58% 7% at 50% 92%,#33313233,#0000 72%),linear-gradient(168deg,#fbfaf6,#eeebe4 120%);border-radius:6px;flex:none;width:60px;height:84px;position:relative;overflow:hidden;box-shadow:inset 0 0 0 1px #3331320f}.demo-thumb:before{content:"";background:linear-gradient(#fff0 38%, #ffffffd9 38% 60%, #fff0 60%), linear-gradient(90deg, #ffffff6b, #fff0 42% 60%, #00000029), linear-gradient(160deg, var(--juice-a), var(--juice-b));border-radius:42% 42% 20% 20%/20% 20% 8% 8%;width:56%;height:74%;position:absolute;bottom:8%;left:50%;transform:translate(-50%);box-shadow:0 2px 4px -1px #33313247}.demo-thumb:after{content:"";background:linear-gradient(var(--cap) 0 46%, var(--juice-neck) 46% 100%);border-radius:3px 3px 1px 1px;width:21%;height:22%;position:absolute;top:5%;left:50%;transform:translate(-50%)}.thumb-gold{--juice-a:#e8bf68;--juice-b:#c7943a;--juice-neck:#d3a94f;--cap:#a4712c}.thumb-black{--juice-a:#9070ac;--juice-b:#5d3f82;--juice-neck:#7c5892;--cap:#432d5c}.thumb-white{--juice-a:#f2b6ab;--juice-b:#dd9a8c;--juice-neck:#ecab9f;--cap:#c07d6d}.thumb-red{--juice-a:#f3a656;--juice-b:#db7a2e;--juice-neck:#ee9346;--cap:#b0611d}.demo-p-name{font-size:14px;font-weight:700}.demo-p-code{font-family:var(--font-mono);color:var(--ink-faint);font-size:11px}.demo-p-price{font-family:var(--font-mono);font-size:16px;font-weight:500}.demo-p-price span{font-family:var(--font-body);color:var(--ink-soft);font-size:11px}.demo-side{background:var(--paper);padding:24px}.demo-summary{flex-wrap:wrap;gap:8px;margin-bottom:20px;display:flex}.chip{border:1px solid;border-radius:4px;padding:2px 7px;font-size:10px;font-weight:700}.chip-green{color:#15803d;background:#f0fdf4;border-color:#86efac}.chip-yellow{color:#a16207;background:#fefce8;border-color:#fde047}.chip-red{color:#b91c1c;background:#fef2f2;border-color:#fca5a5}.demo-side-head{font-family:var(--font-mono);letter-spacing:.14em;color:var(--ink-faint);margin-bottom:8px;font-size:11px}.demo-matches,.demo-issues{gap:6px;margin-bottom:20px;list-style:none;display:grid}.demo-matches button,.demo-issues button{text-align:left;border:1px solid var(--rule);background:var(--white);border-radius:6px;align-items:center;gap:8px;width:100%;padding:9px 10px;font-size:13px;transition:border-color .15s;display:flex}.demo-matches button:hover,.demo-issues button:hover{border-color:var(--ink-faint)}.dot{border-radius:50%;flex:none;width:9px;height:9px}.dot-green{background:var(--st-green)}.dot-yellow{background:var(--st-yellow)}.demo-m-note{font-family:var(--font-mono);color:var(--ink-faint);margin-left:auto;font-size:10.5px}.badge{border:1px solid;border-radius:4px;flex:none;padding:2px 7px;font-size:10px;font-weight:700}.badge-ai{color:#7a5fc0;border-color:color-mix(in srgb, var(--src-ai) 45%, var(--white));background:color-mix(in srgb, var(--src-ai) 12%, var(--white))}.badge-lint{color:#0f8577;border-color:color-mix(in srgb, var(--src-lint) 45%, var(--white));background:color-mix(in srgb, var(--src-lint) 12%, var(--white))}.demo-reset{color:var(--ink-soft);background:0 0;border:none;padding:4px 0;font-size:12.5px;text-decoration:underline}.demo-reset:hover{color:var(--ink)}.feature-list{gap:0;margin-top:8px;display:grid}.feature{border-top:1px solid var(--rule);padding:32px 0}.feature:last-child{border-bottom:1px solid var(--rule)}.feature h3{font-family:var(--font-display);margin-bottom:10px;font-size:19px;font-weight:600}.feature h3:before{content:"";background:var(--shu);vertical-align:.28em;width:22px;height:3px;margin-right:12px;display:inline-block}.feature p{color:var(--ink-soft);max-width:46em}.pricing-grid{grid-template-columns:repeat(2,1fr);align-items:start;gap:20px;display:grid}.pricing-card{background:var(--white);border:1px solid var(--rule);border-radius:10px;flex-direction:column;height:100%;padding:36px 36px 30px;display:flex;box-shadow:0 14px 36px -22px #33313240}.pricing-plan{font-family:var(--font-mono);letter-spacing:.16em;color:var(--shu);margin-bottom:12px;font-size:12px}.pricing-desc{color:var(--ink-soft);max-width:40em;padding-bottom:1em}.pricing-price{border-top:1px solid var(--rule);align-items:baseline;gap:6px;margin-top:auto;padding-top:18px;display:flex}.pricing-price-label{font-family:var(--font-mono);letter-spacing:.1em;color:var(--ink-soft);font-size:11px}.pricing-num{font-family:var(--font-display);font-size:14px;font-weight:700;line-height:1.2}.pricing-from{color:var(--ink-soft);font-size:15px}.faq-list{gap:0;display:grid}.faq-item{border-top:1px solid var(--rule);padding:26px 0}.faq-item:last-child{border-bottom:1px solid var(--rule)}.faq-item dt{margin-bottom:8px;font-size:16px;font-weight:700}.faq-item dt:before{content:"Q.";font-family:var(--font-mono);color:var(--shu);margin-right:10px}.faq-item dd{color:var(--ink-soft);max-width:46em;padding-left:30px}.section-contact{background:var(--ink);color:var(--paper);padding:104px 0}.eyebrow-invert{color:var(--shu)}.eyebrow-invert:before{color:var(--ink-faint)}.title-invert{color:var(--white)}.contact-lead{color:#c9c5c1;margin-bottom:34px}.contact-note{font-family:var(--font-mono);color:#a7a2a0;margin-top:16px;font-size:13px}.site-footer{background:var(--ink);color:#a7a2a0;border-top:1px solid #4a4748;padding:30px 0}.footer-inner{flex-wrap:wrap;align-items:center;gap:18px;display:flex}.footer-brand{color:var(--white);align-items:center;gap:10px;font-size:14px;font-weight:700;display:flex}.footer-company{font-size:12.5px}.footer-company a{color:#d8d4d1}.footer-copy{font-family:var(--font-mono);margin-left:auto;font-size:12px}.reveal{opacity:1}@media (prefers-reduced-motion:no-preference){.js .reveal{opacity:0;transition:opacity .55s,transform .55s;transform:translateY(14px)}.js .reveal.is-visible{opacity:1;transform:none}}@media (width<=900px){.hero{padding:6rem 0}.hero-grid{grid-template-columns:1fr;gap:44px}.hero-visual{max-width:480px}.visual-canvas{flex-direction:column;padding:20px 0 32px;display:flex}.visual-pop{width:fit-content;max-width:100%;position:relative;inset:auto}.pop-match{align-self:flex-end;margin:-14px 6px 0 0}.pop-review{align-self:flex-start;margin:12px 0 0 16px}.capabilities{grid-template-columns:1fr}.problem-compact{grid-template-columns:1fr;gap:22px}.pricing-grid,.demo-result{grid-template-columns:1fr}.demo-side{order:0}.demo-pdf{border-left:none;border-bottom:1px solid var(--rule)}.site-nav{display:none}.section{padding:68px 0}}@media (width<=520px){.demo-pdf{padding:18px 14px}.demo-grid{gap:8px}.demo-product-feature{gap:10px;padding:14px 10px}.demo-product-feature .demo-thumb{width:82px;height:110px}.demo-product-feature .demo-p-name{font-size:12.5px}.demo-product-compact,.demo-product-mirror{text-align:center;flex-direction:column;gap:8px;padding:12px 8px}.demo-product-compact .demo-thumb{width:42px;height:58px}.demo-product-compact .demo-p-name{font-size:11px}.demo-grid .demo-p-code{font-size:9.5px}.demo-grid .demo-p-price{font-size:13.5px}.header-actions .btn-ghost{display:none}.visual-page{padding:26px 22px 22px}.proof-yen{font-size:24px}.visual-canvas:before{inset:0 0 20px 20px}.pricing-card{padding:32px 24px 28px}}
