:root{--shikkui:#fff;--sand:#f6f1ea;--sand-2:#efe6d9;--line:#e6d8c6;--line-strong:#8f7a6b;--ink:#3b2216;--sub:#63493a;--kawara:#b5432a;--kawara-deep:#7e2b17;--kawara-soft:#fbeee8;--sea:#0b5f58;--sea-hover:#0e6c64;--sea-deep:#063f3a;--sea-soft:#e4f1ee;--gold:#9a6a0e;--gold-soft:#fff4d6;--focus:#b5432a;--gothic:"BIZ UDPGothic","BIZ UDPゴシック","Hiragino Sans","Hiragino Kaku Gothic ProN","Yu Gothic","YuGothic","Meiryo",sans-serif;--fs-xs:.84rem;--fs-s:.94rem;--fs-m:1rem;--fs-l:1.12rem;--fs-xl:1.4rem;--fs-2xl:1.9rem;--lh-body:1.8;--lh-head:1.4;--s1:8px;--s2:16px;--s3:24px;--s4:32px;--s6:48px;--gutter:16px;--radius:14px;--radius-pill:999px;--tap:48px;--btn-h:56px;--content-max:560px}
*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{background:var(--sand);font-family:var(--gothic);color:var(--ink);margin:0}.app{font-size:var(--fs-m);line-height:var(--lh-body);overflow-wrap:anywhere;line-break:strict}.app p{margin:0 0 .8em}.app a{color:var(--sea);text-underline-offset:.2em}.app :focus-visible{outline:3px solid var(--focus);outline-offset:3px;border-radius:6px}.app h1,.app h2,.app h3{font-feature-settings:"palt";line-height:var(--lh-head);margin:0 0 .5em}.app h1{font-size:var(--fs-xl)}.app h2{font-size:var(--fs-l)}.bar{border-bottom:1px solid var(--line);height:52px;padding:0 var(--gutter);background:#fffffff2;justify-content:space-between;align-items:center;display:flex}.bar .name{color:var(--sea);letter-spacing:.04em;font-weight:800}.bar .by{font-size:var(--fs-xs);color:var(--sub)}.main{padding:var(--s3) var(--gutter) var(--s4);max-width:var(--content-max);margin:0 auto}.product-pre{font-size:var(--fs-m);color:var(--sub);font-weight:700;display:block}.product-name{font-size:var(--fs-2xl);color:var(--sea);letter-spacing:.06em;margin:0 0 .3em;font-weight:800;line-height:1.25;display:block}.product-note{font-size:var(--fs-m);margin:0 0 var(--s3);line-height:1.7}.box{background:var(--shikkui);border:1px solid var(--line);border-radius:var(--radius);padding:var(--s2)}.box+.box{margin-top:var(--s2)}.btn{width:100%;min-height:var(--btn-h);border-radius:var(--radius-pill);font:inherit;cursor:pointer;background:var(--sea);color:#fff;box-shadow:0 4px 0 var(--sea-deep);border:0;justify-content:center;align-items:center;gap:.5em;padding:.7em 1.4em;font-size:1.06rem;font-weight:800;line-height:1.4;text-decoration:none;display:flex}.btn:hover{background:var(--sea-hover)}.btn:active{box-shadow:0 2px 0 var(--sea-deep);transform:translateY(2px)}.btn[disabled],.btn[aria-disabled=true]{color:#4d3d33;box-shadow:none;cursor:not-allowed;background:#cfc4b8;transform:none}.app .btn{color:#fff}.app .btn[disabled],.app .btn[aria-disabled=true]{color:#4d3d33}.btn-2,.app .btn-2{background:var(--shikkui);color:var(--sea);box-shadow:none;border:2px solid var(--sea)}.btn-2:hover{background:var(--sea-soft)}.btn-3{font:inherit;cursor:pointer;box-shadow:none;color:var(--sea);min-height:var(--tap);background:0 0;border:0;font-weight:700;text-decoration:underline}.btn-row{gap:12px;display:grid}.btn-row.two{grid-template-columns:1fr 1fr}.field label{margin:0 0 6px;font-weight:700;display:block}.input{width:100%;min-height:var(--tap);font:inherit;letter-spacing:.04em;border:2px solid var(--line-strong);color:var(--ink);font-variant-numeric:tabular-nums;background:#fff;border-radius:10px;padding:.4em .7em;font-family:ui-monospace,BIZ UDGothic,Consolas,monospace;font-size:1.1rem}.code-input{resize:none;overflow-wrap:normal;word-break:keep-all;white-space:pre-wrap;line-height:1.6;display:block}.input:focus{outline:3px solid var(--focus);outline-offset:2px;border-color:var(--sea)}.field.is-error .input{border-color:var(--kawara);background:snow}.err{color:var(--kawara-deep);font-weight:700;font-size:var(--fs-s);gap:6px;margin:6px 0 0;display:flex}.err:before{content:"!";background:var(--kawara);color:#fff;border-radius:50%;flex:none;justify-content:center;align-items:center;width:20px;height:20px;margin-top:3px;font-size:.8rem;display:flex}.hint{font-size:var(--fs-s);color:var(--sub);margin:6px 0 0}fieldset{border:0;min-width:0;margin:0;padding:0}legend{font-weight:700;font-size:var(--fs-l);margin:0 0 12px;padding:0;line-height:1.6}.choices{gap:10px;display:grid}.choice{min-height:var(--btn-h);border:2px solid var(--line-strong);cursor:pointer;font-weight:700;font-size:var(--fs-m);background:#fff;border-radius:12px;align-items:center;gap:12px;padding:12px 14px;display:flex;position:relative}.choice input{opacity:0;pointer-events:none;position:absolute}.choice:has(input:focus-visible){outline:3px solid var(--focus);outline-offset:3px}.choice .mark{border:2px solid var(--line-strong);background:#fff;border-radius:50%;flex:none;width:22px;height:22px}.choice.multi .mark{border-radius:6px}.choice.is-selected{border-color:var(--sea);background:var(--sea-soft)}.choice.is-selected .mark{border-color:var(--sea);background:var(--sea);box-shadow:inset 0 0 0 4px #fff}.choice.multi.is-selected .mark{box-shadow:none;background:var(--sea) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='M5 10.5l3.2 3L15 6.5' fill='none' stroke='%23fff' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/16px no-repeat}.choice.dont-know{color:var(--sub);border-style:dashed}.choice small{font-weight:400;font-size:var(--fs-s);color:var(--sub);display:block}.choice.na{background:#fbf8f3}.choice.na.is-selected{background:var(--sea-soft)}.applicability{font-size:var(--fs-s);color:var(--sub);margin:-2px 0 0 4px}.progress{margin:0 0 var(--s3)}.progress ol{font-size:var(--fs-xs);color:var(--sub);grid-template-columns:repeat(3,1fr);gap:6px;margin:0 0 8px;padding:0;font-weight:700;list-style:none;display:grid}.progress li{border-top:4px solid var(--line);padding-top:4px}.progress li.done{border-color:var(--sea);color:var(--sea)}.progress li.now{border-color:var(--sea);color:var(--ink)}.progress .count{font-size:var(--fs-s);color:var(--sub);margin:0}.dock{border-top:1px solid var(--line);padding:12px var(--gutter) calc(12px + env(safe-area-inset-bottom));background:#f6f1eaf5;position:sticky;bottom:0}.dock-inner{max-width:var(--content-max);grid-template-columns:auto 1fr;align-items:center;gap:12px;margin:0 auto;display:grid}.dock .btn-3{min-height:var(--tap);padding:0 6px}.warn{background:var(--kawara-soft);border:2px solid var(--kawara);border-radius:var(--radius);align-items:flex-start;gap:10px;padding:12px 14px;font-weight:700;line-height:1.7;display:flex}.warn:before{content:"!";background:var(--kawara);color:#fff;border-radius:50%;flex:none;justify-content:center;align-items:center;width:24px;height:24px;margin-top:2px;font-size:.9rem;display:flex}.note{background:var(--gold-soft);font-size:var(--fs-s);border:1px solid #e6cc85;border-radius:12px;padding:12px 14px}.note b{display:block}.free{background:var(--sea-soft);border-left:5px solid var(--sea);border-radius:0 10px 10px 0;padding:10px 12px;font-weight:700}.result-hero{text-align:center;background:var(--shikkui);padding:var(--s3) var(--s2);margin:0 0 var(--s2);border-radius:20px}.result-hero .badge{width:180px;height:180px;margin:0 auto 8px}.result-hero .badge img{object-fit:contain;width:100%;height:100%}.tier-name{font-size:var(--fs-2xl);margin:0;font-weight:800;line-height:1.3}.tier-word{color:var(--sub);margin:0 0 12px}.to-gold{background:var(--sand);border-radius:var(--radius-pill);padding:4px 14px;font-weight:700;display:inline-block}.axis{border-top:1px solid var(--line);margin:0;padding:0;list-style:none}.axis li{border-bottom:1px solid var(--line);font-size:var(--fs-s);grid-template-columns:7em 1fr auto;align-items:center;gap:10px;padding:10px 0;display:grid}.axis .meter{background:var(--sand-2);border-radius:5px;height:10px;overflow:hidden}.axis .meter span{background:var(--sea);height:100%;display:block}.axis b{white-space:nowrap;font-weight:700}.steps-next{counter-reset:n;gap:10px;margin:0;padding:0;list-style:none;display:grid}.steps-next li{padding-left:40px;position:relative}.steps-next li:before{counter-increment:n;content:counter(n);background:var(--sea);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:28px;height:28px;font-size:.9rem;font-weight:800;display:flex;position:absolute;top:0;left:0}.price-under{margin:8px 0 0;font-weight:700}.official{border-collapse:collapse;width:100%;font-size:var(--fs-s)}.official th,.official td{text-align:left;vertical-align:top;border-bottom:1px solid var(--line);padding:8px 0}.official th{width:7.5em;font-weight:700}.legal{font-size:var(--fs-s);margin:var(--s3) 0 0;padding-top:var(--s2);border-top:1px solid var(--line);flex-wrap:wrap;gap:4px 14px;display:flex}.roof{background:radial-gradient(circle at 10px 16px, var(--kawara) 0 7px, var(--shikkui) 7.5px 9px, transparent 9.5px) 0 0/20px 16px repeat-x,linear-gradient(var(--kawara-deep),var(--kawara-deep)) 0 100%/100% 3px no-repeat;height:16px}.terms{border-top:1px solid var(--line);margin:0}.terms div{border-bottom:1px solid var(--line);grid-template-columns:6.5em 1fr;gap:8px;padding:10px 0;display:grid}.terms dt{color:var(--sub);font-weight:700}.terms dd{margin:0}.stepper{grid-template-columns:var(--tap) 1fr var(--tap);border:2px solid var(--line-strong);background:#fff;border-radius:12px;align-items:center;display:grid;overflow:hidden}.stepper button{height:var(--tap);background:var(--sand);font:inherit;color:var(--sea);cursor:pointer;border:0;font-size:1.4rem;font-weight:800}.stepper button[disabled]{color:#9b8d82;cursor:not-allowed}.stepper output{text-align:center;font-size:1.15rem;font-weight:800}.total{justify-content:space-between;align-items:baseline;margin:12px 0 0;font-size:1.15rem;font-weight:800;display:flex}.total .yen{color:var(--kawara);font-size:1.5rem}.check{min-height:var(--tap);cursor:pointer;font-weight:700;font-size:var(--fs-m);align-items:flex-start;gap:12px;padding:10px 0;display:flex;position:relative}.check input{opacity:0;pointer-events:none;position:absolute}.check:has(input:focus-visible) .box2{outline:3px solid var(--focus);outline-offset:2px}.check .box2{border:2px solid var(--line-strong);background:#fff;border-radius:6px;flex:none;width:26px;height:26px;margin-top:1px}.check.on .box2{background:var(--sea) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='M5 10.5l3.2 3L15 6.5' fill='none' stroke='%23fff' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/18px no-repeat;border-color:var(--sea)}.refund{border:2px solid var(--ink);font-size:var(--fs-s);border-radius:12px;padding:12px 14px}.refund b{font-size:var(--fs-m);display:block}.code-box{border:3px solid var(--sea);padding:var(--s2);text-align:center;background:#fff;border-radius:16px}.code{letter-spacing:.06em;color:var(--ink);overflow-wrap:normal;word-break:keep-all;margin:4px 0 10px;font-family:ui-monospace,BIZ UDGothic,Consolas,monospace;font-size:clamp(1.15rem,5.6vw,1.4rem);font-weight:700;line-height:1.6}.code .grp{white-space:nowrap;margin:0 .25em;display:inline-block}.once{color:var(--kawara-deep);font-weight:700;font-size:var(--fs-s)}.stack>*+*{margin-top:var(--s2)}.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}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
.paper{color:#222;border-radius:var(--radius);padding:var(--s3) var(--s2);font-size:var(--fs-m);background:#fff;line-height:1.75}.paper h1{font-size:var(--fs-xl);margin:0 0 4px}.paper h2{font-size:var(--fs-l);margin:var(--s3) 0 var(--s1);border-bottom:2px solid #222;padding-bottom:4px}.paper h3{font-size:var(--fs-m);margin:var(--s2) 0 var(--s1)}.paper .meta{color:#444;border-bottom:2px solid #222;margin:0 0 14px;padding-bottom:10px;font-size:.92em}.paper blockquote{margin:0 0 var(--s2);background:#f7f7f7;border-left:4px solid #222;padding:10px 14px}.paper blockquote p{margin:0 0 .4em}.paper a{color:#222;word-break:break-all}.paper table{border-collapse:collapse;width:100%;font-size:.95em}.paper th,.paper td{text-align:left;vertical-align:top;border-bottom:1px solid #bbb;padding:6px 4px}.todo{margin:0;padding:0;list-style:none}.todo>li{border-bottom:1px solid #bbb;grid-template-columns:22px 1fr;gap:10px;padding:12px 0;display:grid}.todo b.t,.todo>li>div>div{break-after:avoid}.todo li li{break-inside:avoid}.todo .sq{border:2px solid #222;border-radius:3px;width:18px;height:18px;margin-top:5px}.todo b.t{font-size:1.05em;display:block}.todo ul{margin:6px 0 0;padding-left:1.2em}.todo .links{margin:6px 0 0;padding-left:1.2em;font-size:.92em}.paper .foot{color:#444;border-top:1px solid #999;margin-top:16px;padding-top:8px;font-size:.9em}.page-break{break-before:page}.print-bar{margin:0 0 var(--s2);flex-wrap:wrap;gap:12px;display:flex}.print-bar .btn{flex:200px;width:auto}@page{size:A4;margin:15mm}@media print{body{background:#fff}.bar,.no-print,.print-bar{display:none!important}.main{max-width:none;padding:0}.paper{border-radius:0;padding:0;font-size:10.5pt}.paper h1{font-size:16pt}.paper h2{font-size:12.5pt}.paper a{text-decoration:none}body.print-only-last .paper>:not(.last-page){display:none!important}body.print-only-last .last-page{break-before:auto}.last-page{font-size:9.5pt;line-height:1.6}.last-page h2{margin-top:0;font-size:12pt}.last-page h3{margin:8px 0 4px;font-size:10.5pt}.last-page blockquote{margin-bottom:8px;padding:6px 10px}.last-page ul:last-child{font-size:7.5pt;line-height:1.45}}

