:root{--green:#11834b;--deep:#174536;--ink:#132c3a;--pale:#edf6f0;--line:#d4e2db;--muted:#60736c}*{box-sizing:border-box}body{margin:0;background:#fff;color:var(--ink);font-family:"Noto Sans JP","Yu Gothic",system-ui,sans-serif;line-height:1.65}.site-header{max-width:1120px;margin:auto;padding:22px 28px;display:flex;align-items:center;justify-content:space-between}.brand img{display:block;width:145px;height:36px;object-fit:contain;object-position:left center}.prototype-label{font-size:.78rem;color:var(--muted);border:1px solid var(--line);border-radius:99px;padding:3px 11px}.shell{max-width:1040px;margin:0 auto 36px;padding:0 28px}.screen{max-width:760px;margin:30px auto;padding:36px;border:1px solid var(--line);border-radius:24px;background:#fff;box-shadow:0 15px 40px rgba(23,69,54,.08)}.hidden{display:none!important}.intro{max-width:1040px;display:grid;grid-template-columns:1fr .72fr;align-items:center;gap:24px;border:none;box-shadow:none;padding:20px 0}.intro-copy{padding:34px 0}.robot-area{align-self:stretch;min-height:390px;display:flex;align-items:center;justify-content:center;background:linear-gradient(145deg,#f5faf7,#fff);border-radius:32px;overflow:hidden}.robot-area img{width:min(100%,390px);max-height:440px;object-fit:contain}.eyebrow{margin:0 0 8px;color:var(--green);font-size:.93rem;font-weight:800;letter-spacing:.08em}.eyebrow span,legend span,label span{font-size:.85em;color:var(--muted);font-weight:400}h1{font-size:clamp(1.7rem,3.5vw,2.6rem);line-height:1.35;letter-spacing:-.04em;margin:0 0 16px}h2{font-size:1rem;margin:0 0 12px}.lead,.result-copy{color:var(--muted);max-width:600px;margin:0 0 25px}.button{border:0;border-radius:14px;padding:13px 21px;font:inherit;font-weight:800;cursor:pointer;min-height:50px;transition:.15s transform,.15s box-shadow}.button:focus-visible,.text-button:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid #f6c940;outline-offset:3px}.button:hover:not(:disabled){transform:translateY(-1px)}.primary{color:white;background:var(--green);box-shadow:0 8px 18px rgba(17,131,75,.2)}.primary:disabled{background:#aabbb3;box-shadow:none;cursor:not-allowed}.secondary{color:var(--deep);background:#eef5f1;border:1px solid var(--line)}.text-button{display:block;margin:18px auto 0;border:0;background:none;color:var(--deep);font:inherit;text-decoration:underline;cursor:pointer}.progress-wrap{display:flex;align-items:center;gap:14px;color:var(--muted);font-size:.9rem;margin-bottom:24px}.progress{height:8px;background:#e6eee9;border-radius:8px;flex:1;overflow:hidden}.progress i{height:100%;background:var(--green);display:block;width:25%;border-radius:8px;transition:width .2s}label,legend{display:block;font-weight:700}fieldset{border:0;padding:0;margin:0}textarea,input{display:block;width:100%;margin-top:8px;border:1px solid #b8cbc1;border-radius:11px;padding:12px;font:inherit;color:var(--ink);background:white}textarea{resize:vertical;min-height:125px}.hint{color:var(--muted);font-size:.9rem;margin:6px 0}.minor-label{margin-top:20px;font-size:.92rem}.error{min-height:1.25em;color:#b42318;font-size:.9rem;margin:5px 0 0}.chips{display:flex;flex-wrap:wrap;gap:9px;margin-top:12px}.chips label{cursor:pointer}.chips input{position:absolute;opacity:0;pointer-events:none}.chips span{display:block;border:1px solid #b8cbc1;border-radius:999px;padding:8px 13px;font-size:.93rem;color:var(--deep);transition:.15s}.chips input:checked+span{background:var(--deep);border-color:var(--deep);color:#fff}.chips input:focus-visible+span{outline:3px solid #f6c940;outline-offset:2px}.actions{display:flex;justify-content:space-between;gap:12px;margin-top:28px}.actions .primary{margin-left:auto}.notice{border-left:4px solid #eabf2f;background:#fffbec;padding:11px 14px;color:#5d4a08;margin:18px 0}.answers{background:#f7faf8;border-radius:14px;padding:18px;margin:22px 0}.answers dl{margin:0}.answers dt{font-weight:800;margin-top:14px}.answers dt:first-child{margin-top:0}.answers dd{margin:3px 0 0;white-space:pre-wrap;color:var(--muted)}.answers p{color:var(--muted);margin:.4em 0}footer{text-align:center;color:var(--muted);font-size:.84rem;padding:26px 18px;border-top:1px solid #edf0ee}@media(max-width:700px){.site-header,.shell{padding-left:18px;padding-right:18px}.screen{padding:25px 20px;border-radius:18px;margin:18px auto}.intro{display:flex;flex-direction:column;padding:0;gap:0}.intro-copy{padding:16px 0 4px}.robot-area{order:-1;min-height:260px;width:100%;border-radius:22px}.robot-area img{max-height:285px;width:290px}.intro .button{width:100%}.actions .button{flex:1}.actions .primary{margin-left:0}h1{font-size:1.8rem}}
.brand{width:180px;height:44px;overflow:hidden;display:flex;align-items:center}.brand img{width:220px;height:74px;max-width:none;transform:scale(1.24);transform-origin:left center}.question-guide{display:flex;align-items:center;gap:10px;background:#f4faf6;border-radius:14px;padding:8px 12px;margin:0 0 24px;color:var(--deep);font-size:.92rem;font-weight:700}.question-guide img{width:52px;height:52px;object-fit:contain}.question-guide p{margin:0}.result-robot{display:block;width:110px;height:110px;object-fit:contain;margin:4px auto 0}.skip-button{display:block;margin:14px 0 0;padding:0;border:0;background:none;color:var(--deep);font:inherit;text-decoration:underline;cursor:pointer}.skip-button:focus-visible{outline:3px solid #f6c940;outline-offset:3px}.chips label{position:relative}.chips input{inline-size:1px;block-size:1px;clip-path:inset(50%);overflow:hidden;white-space:nowrap;pointer-events:auto}@media(max-width:700px){.brand{width:150px}.brand img{width:185px}}
/* Keep the complete wordmark visible at every breakpoint. */
.brand{width:210px;height:48px;overflow:visible;flex-shrink:0}.brand img{width:210px;height:48px;transform:none;object-fit:contain;object-position:left center}
@media(max-width:700px){.brand{width:180px;height:44px}.brand img{width:180px;height:44px}}
.answers dd{overflow-wrap:anywhere}
.handling-notice{margin-top:24px;padding:16px;border-radius:14px;background:#f7faf8;color:var(--muted);font-size:.92rem}.handling-notice p{margin:.3em 0 1em}.handling-notice .consent{display:flex;gap:9px;align-items:flex-start;color:var(--ink)}.handling-notice .consent input{width:auto;margin:5px 0 0}
.prototype-label{white-space:nowrap}
.question-guide img{width:88px;height:66px;flex-shrink:0;object-fit:cover}.question-guide{gap:4px;padding:6px 8px}
.intro-label{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.intro-label .free-badge{display:inline-block;background:#f4d953;color:#174536;border:2px solid #174536;border-radius:8px;padding:4px 14px;font-size:1.1rem;font-weight:900;letter-spacing:.04em;line-height:1.45}
.intro{grid-template-columns:minmax(0,1.05fr) minmax(300px,.95fr);gap:34px;padding:28px 0 20px}.intro-copy{padding:12px 0}.intro-copy .button{margin-top:8px}.intro-guide{display:grid;grid-template-columns:190px minmax(0,1fr);align-items:center;gap:4px}.intro-robot{position:relative;width:190px;height:215px;overflow:hidden}.intro-robot img{position:absolute;width:320px;max-width:none;height:auto;left:50%;top:0;transform:translateX(-50%)}.intro-bubble{position:relative;margin:0 0 12px;padding:15px 17px;border:3px solid var(--ink);border-radius:18px;background:#fff;color:var(--ink);font-weight:700;font-size:.95rem;line-height:1.65}.intro-bubble::before{content:"";position:absolute;left:-11px;bottom:18px;width:18px;height:18px;background:#fff;border-left:3px solid var(--ink);border-bottom:3px solid var(--ink);transform:rotate(45deg)}
@media(max-width:700px){.intro{display:block;padding:4px 0 18px}.intro-copy{padding:4px 0}.intro-copy h1{margin-top:12px}.intro-guide{grid-template-columns:136px minmax(0,1fr);gap:1px;margin:4px 0 14px}.intro-robot{width:136px;height:172px}.intro-robot img{width:270px;top:0}.intro-bubble{margin:0 0 8px;padding:12px 13px;font-size:.88rem;line-height:1.55}.intro-bubble::before{left:-9px;bottom:18px;width:14px;height:14px}.intro .button{width:100%;margin-top:0}}
@media(max-width:340px){.intro-guide{display:flex;flex-direction:column;align-items:center;margin-top:0}.intro-robot{height:154px}.intro-bubble{margin:0 0 12px}.intro-bubble::before{left:50%;top:-9px;bottom:auto;border-left:3px solid var(--ink);border-top:3px solid var(--ink);border-bottom:0;transform:translateX(-50%) rotate(45deg)}}
.intro-label{font-size:1.22rem;letter-spacing:.04em}.intro-copy h1{font-size:clamp(2.05rem,3.8vw,2.85rem);font-weight:900;line-height:1.25}.intro-label .free-badge{transform:rotate(-6deg)}
@media(max-width:700px){.intro-label{font-size:1.14rem}.intro-copy h1{font-size:clamp(2rem,8.2vw,2.35rem);line-height:1.28}.intro-label .free-badge{margin-left:2px}}
.intro-copy{position:relative}.intro-label{position:relative;min-height:60px;padding-left:72px;align-items:center;margin-bottom:2px}.intro-label .free-badge{position:absolute;left:0;top:0;width:60px;height:60px;padding:0;border:3px solid var(--green);border-radius:50%;display:flex;align-items:center;justify-content:center;background:#f4d953;color:var(--deep);font-size:.98rem;line-height:1;font-weight:900;transform:rotate(-6deg);box-shadow:0 3px 0 rgba(23,69,54,.15)}
@media(max-width:700px){.intro-label{min-height:56px;padding-left:66px;margin-bottom:0}.intro-label .free-badge{width:56px;height:56px;font-size:.91rem}.intro-copy h1{margin-top:8px}}

.intro{column-gap:34px;row-gap:8px}.intro-copy{grid-column:1;grid-row:1;padding-bottom:0}.intro-guide{grid-column:2;grid-row:1 / span 2}.intro-start{grid-column:1;grid-row:2;justify-self:start;align-self:start;margin-bottom:12px}@media(max-width:700px){.intro{display:block}.intro-start{margin-bottom:0}}@media(max-width:340px){.intro-robot{height:172px}}
/* Balance spacing for the shortened introduction. */
.intro{row-gap:20px;padding-top:16px;padding-bottom:16px}
.intro-copy{padding:0}
.intro-copy h1{margin-bottom:12px}
.intro-copy .lead{margin:0;line-height:1.65}
.intro-start{margin:0}
@media(max-width:700px){
  .intro{padding:4px 0 12px}
  .intro-copy h1{margin-top:12px;margin-bottom:10px}
  .intro-guide{margin:12px 0 12px}
  .intro-robot{height:152px}
  .intro-robot img{top:-20px}
}
@media(max-width:340px){
  .intro-guide{margin-top:8px;margin-bottom:12px}
  .intro-bubble{margin-bottom:0}
}
@media(min-width:701px){.intro{grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr)}.intro-guide{grid-template-columns:160px minmax(0,1fr)}.intro-robot{width:160px}}
.intro-copy h1{text-wrap:balance}
.title-phrase{display:inline-block}
/* Round free sticker, overlapping the title area without covering text. */
.intro-copy{position:relative}
.intro-label{min-height:42px;padding-left:74px;margin-bottom:12px}
.intro-label .free-badge{position:absolute;left:0;top:-12px;width:60px;height:60px;padding:0;display:flex;align-items:center;justify-content:center;border:3px solid var(--deep);border-radius:50%;background:#f4d953;transform:rotate(-8deg);box-shadow:2px 3px 0 rgba(23,69,54,.14);font-size:1.2rem;line-height:1;z-index:1}
@media(max-width:700px){.intro-label{padding-left:68px;min-height:38px;margin-bottom:10px}.intro-label .free-badge{width:56px;height:56px;top:-10px}.intro-copy h1{margin-top:0}}
.question-guide{align-items:center;gap:10px}
.question-portrait{position:relative;flex:0 0 120px;width:120px;height:110px;overflow:hidden;border-radius:14px}
.question-portrait img{position:absolute;width:280px;max-width:none;height:auto;left:50%;top:-35px;transform:translateX(-50%)}
.question-guide p{margin:0}
#progress-label{white-space:nowrap}
@media(max-width:380px){.question-portrait{flex-basis:102px;width:102px;height:98px}.question-portrait img{width:245px;top:-30px}.question-guide{gap:7px}}
/* Keep the question prominent; the robot is a small supporting guide. */
.question-guide{gap:10px;padding:4px 8px;background:#fafcfb;margin-bottom:18px;font-size:.88rem;font-weight:500}
.question-portrait{flex:0 0 84px;width:84px;height:72px;border-radius:10px}
.question-portrait img{width:196px;top:-26px}
@media(max-width:380px){.question-portrait{flex-basis:76px;width:76px;height:66px}.question-portrait img{width:180px;top:-24px}.question-guide{gap:8px}}
.result-robot{width:180px;height:140px;object-fit:contain;margin:8px auto 16px}

.answers summary{cursor:pointer;font-weight:700;color:var(--deep)}.answers summary:focus-visible{outline:3px solid #f6c940;outline-offset:4px}.answers[open] summary{margin-bottom:16px}.consult-invite{margin:24px 0 14px;color:var(--deep);font-weight:700}#result .primary{width:100%}#result h1{text-wrap:balance}
.result-robot{width:234px;height:182px;max-width:100%;margin:4px auto 8px}
.result-disclaimer{font-size:.88rem;color:var(--muted);margin:12px 0 6px}
.prototype-note{font-size:.76rem;color:var(--muted);margin:0 0 18px}
.consult-format{font-size:.9rem;color:var(--muted);margin:0 0 12px}

.notice.result-disclaimer{color:#5d4a08;background:#fffbec;border-left:4px solid #eabf2f;padding:11px 14px;margin:18px 0 8px}
.contact-methods{margin-top:24px}
.required-guide{margin:0 0 18px;color:var(--muted);font-size:.9rem}.required-mark,.optional-mark{display:inline-block;margin-left:.35em;padding:1px 7px;border-radius:5px;font-size:.76rem!important;font-weight:800!important;line-height:1.45;vertical-align:.08em}.required-mark{background:#fff0ee;color:#b42318!important}.optional-mark{background:#edf2ef;color:var(--muted)!important}.legend-note{margin-left:.35em}.handling-notice .consent>span{font-size:1em;color:var(--ink);font-weight:700}
.preview-nav{max-width:984px;margin:0 auto;padding:0 18px;font-size:.8rem;color:var(--muted)}.preview-nav summary{cursor:pointer}.preview-nav nav{display:flex;flex-wrap:wrap;gap:8px;padding:10px 0}.preview-nav a{color:var(--deep);padding:5px 10px;background:#edf6f0;border-radius:6px}
.complete-home{display:inline-block;text-decoration:none;text-align:center}
