:root{--green:#17913f;--green-dark:#0f6b2d;--green-soft:#e8f4ea;--ink:#1c2620;--ink-2:#4a5750;--ink-3:#7d8a82;--line:#dde3dd;--bg:#f6f8f5;--surface:#fff;--alert:#a8431a;--alert-soft:#fbeee7}*{box-sizing:border-box}body{background:var(--bg);color:var(--ink);margin:0;font-family:Noto Sans JP,Hiragino Kaku Gothic ProN,Yu Gothic,system-ui,sans-serif;font-size:15px;line-height:1.85}.inner{max-width:760px;margin:0 auto;padding:0 20px}.site-header{background:var(--green);color:#fff;padding:16px 0}.site-header .inner{align-items:baseline;gap:14px;display:flex}.logo{letter-spacing:.04em;font-size:19px;font-weight:700}.site-footer{border-top:1px solid var(--line);color:var(--ink-3);margin-top:60px;padding:20px 0 40px;font-size:12.5px}.page{max-width:760px;margin:0 auto;padding:0 20px}.page>form,.page>.done{padding-top:4px}.page-head{text-align:center;background:radial-gradient(120% 100% at 50% 0%, #17913f1a 0%, #17913f00 62%), linear-gradient(180deg, #fff 0%, var(--bg) 100%);border-bottom:1px solid var(--line);margin:0 -20px 24px;padding:40px 20px 30px}.page-eyebrow{letter-spacing:.34em;color:var(--green);text-transform:uppercase;margin:0 0 12px;font-size:11.5px;font-weight:700}h1{letter-spacing:.03em;color:var(--ink);margin:0;font-size:clamp(26px,5.6vw,42px);font-weight:700;line-height:1.42}h1 span{display:inline-block}.page-rule{background:var(--green);border-radius:2px;width:52px;height:3px;margin:22px auto 0;display:block}.page-lead{color:var(--ink-2);text-align:center;margin:0 0 30px;font-size:14.5px}.page-lead b{color:var(--ink);font-weight:700}.page-lead p{margin:0 0 6px}.page-lead p:last-child{margin-bottom:0}fieldset{border:1px solid var(--line);background:var(--surface);border-radius:4px;margin:0 0 18px;padding:4px 24px 24px}legend{color:var(--green-dark);padding:0 10px;font-size:15px;font-weight:700}.field{margin-top:20px}.field>label,.field>.label{margin-bottom:6px;font-size:13.5px;font-weight:700;display:block}.req{background:var(--alert-soft);color:var(--alert);vertical-align:1px;border-radius:2px;margin-left:8px;padding:1px 7px;font-size:10.5px;font-weight:700;display:inline-block}.opt{color:var(--ink-3);vertical-align:1px;background:#eef1ee;border-radius:2px;margin-left:8px;padding:1px 7px;font-size:10.5px;display:inline-block}.hint{color:var(--ink-3);margin:4px 0 0;font-size:12.5px;line-height:1.7}input[type=text],input[type=email],input[type=tel],input[type=url],select,textarea{border:1px solid var(--line);width:100%;font:inherit;color:var(--ink);background:#fbfcfb;border-radius:3px;padding:10px 12px}input:focus,select:focus,textarea:focus{outline:2px solid var(--green);outline-offset:-1px;background:#fff}textarea{resize:vertical;min-height:96px}.row2{grid-template-columns:1fr 1fr;gap:16px;display:grid}.row3{grid-template-columns:1fr 1fr 1fr;gap:16px;display:grid}.choices{flex-wrap:wrap;gap:10px;display:flex}.choice{border:1px solid var(--line);cursor:pointer;background:#fbfcfb;border-radius:3px;align-items:center;gap:8px;padding:9px 16px;font-size:14px;display:flex}.choice:has(input:checked){border-color:var(--green);background:var(--green-soft);font-weight:700}.choice input{accent-color:var(--green)}.quote{border:1px solid var(--green);background:var(--green-soft);border-radius:4px;margin-top:18px;padding:18px 22px}.quote-lbl{color:var(--green-dark);letter-spacing:.06em;font-size:12px;font-weight:700}.quote-amount{color:var(--green-dark);font-variant-numeric:tabular-nums;font-size:30px;font-weight:700;line-height:1.3}.quote-amount small{font-size:15px;font-weight:700}.quote-note{color:var(--ink-2);margin:6px 0 0;font-size:12.5px;line-height:1.75}.quote.consult .quote-amount{font-size:22px}.notice{border:1px solid var(--line);border-left:3px solid var(--alert);background:var(--surface);border-radius:3px;margin-top:18px;padding:16px 20px}.notice h3{margin:0 0 8px;font-size:14px}.notice p{color:var(--ink-2);margin:0;font-size:13px;line-height:1.85}.consent{align-items:flex-start;gap:10px;margin-top:16px;font-size:13.5px;display:flex}.consent input{accent-color:var(--green);margin-top:5px}.actions{margin:26px 0 0}button[type=submit]{background:var(--green);color:#fff;font:inherit;cursor:pointer;border:0;border-radius:3px;padding:15px 40px;font-size:15.5px;font-weight:700}button[type=submit]:hover{background:var(--green-dark)}button[type=submit]:disabled{background:var(--ink-3);cursor:default}.msg{border-radius:3px;margin-top:14px;padding:12px 16px;font-size:13.5px}.msg.err{background:var(--alert-soft);color:var(--alert)}.msg.ok{background:var(--green-soft);color:var(--green-dark)}.done{background:var(--surface);border:1px solid var(--line);border-radius:4px;padding:30px 28px}.done h2{color:var(--green-dark);margin:0 0 12px;font-size:20px}.done p{color:var(--ink-2);margin:0 0 12px;font-size:14px}.done ol{color:var(--ink-2);margin:0;padding-left:20px;font-size:14px}@media (max-width:640px){.row2,.row3{grid-template-columns:1fr}fieldset{padding:4px 16px 20px}.page-lead{text-align:left}.page-head{padding:30px 20px 24px}}
