:root{--green:#07583f;--deep:#063b2d;--orange:#f48b22;--ink:#17221e;--muted:#66746e;--paper:#f4f5f1;--line:#dce3de;--white:#fff;--shadow:0 24px 70px rgba(5,58,43,.13)}
[hidden]{display:none!important}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:linear-gradient(180deg,#f7f8f5 0,#eef1ec 100%);font-family:-apple-system,BlinkMacSystemFont,"Noto Sans JP","Yu Gothic",sans-serif;min-height:100vh}.topbar{height:76px;padding:0 max(20px,calc((100vw - 1180px)/2));display:flex;align-items:center;justify-content:space-between;background:rgba(255,255,255,.92);border-bottom:1px solid rgba(7,88,63,.1);backdrop-filter:blur(12px);position:sticky;top:0;z-index:20}.brand img{width:176px;height:auto;display:block}.trust{display:flex;gap:8px}.trust span{font-size:12px;font-weight:800;color:var(--green);border:1px solid #bdd4c9;border-radius:99px;padding:6px 11px;background:#f8fcfa}.shell{max-width:1180px;margin:0 auto;padding:42px 20px 72px}.intro{display:grid;grid-template-columns:1.15fr .85fr;gap:50px;align-items:center;margin-bottom:34px}.eyebrow{letter-spacing:.18em;color:var(--orange);font-weight:900;font-size:12px;margin:0 0 12px}.intro h1{font-size:clamp(36px,5vw,64px);line-height:1.15;letter-spacing:-.04em;margin:0 0 20px;font-family:Georgia,"Yu Mincho",serif}.intro h1 em{color:var(--green);font-style:normal}.intro-copy>p:not(.eyebrow){font-size:16px;line-height:1.9;color:var(--muted);max-width:620px}.intro-points{display:flex;flex-wrap:wrap;gap:9px;margin-top:22px}.intro-points span{font-size:12px;font-weight:750;padding:8px 12px;background:#fff;border:1px solid var(--line);border-radius:6px}.house-card{height:280px;border-radius:22px;overflow:hidden;position:relative;box-shadow:var(--shadow);background:#ddd}.house-card:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 50%,rgba(3,40,29,.72))}.house-card img{width:100%;height:100%;object-fit:cover}.house-card div{position:absolute;z-index:2;left:25px;bottom:22px;color:#fff;display:flex;flex-direction:column}.house-card b{font-size:22px}.house-card small{opacity:.8;margin-top:4px}.chat-panel{background:#fff;border:1px solid rgba(7,88,63,.12);border-radius:24px;box-shadow:var(--shadow);overflow:hidden;max-width:860px;margin:0 auto}.chat-head{display:flex;align-items:center;gap:12px;padding:18px 22px;background:var(--deep);color:white}.agent-mark{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;font:900 22px Georgia;background:var(--orange);color:#fff}.chat-head>div:nth-child(2){display:flex;flex-direction:column;gap:3px}.chat-head b{font-size:14px}.chat-head span{font-size:11px;opacity:.72}.chat-head span i{display:inline-block;width:7px;height:7px;background:#7ae3a2;border-radius:50%;margin-right:4px}.restart{margin-left:auto;background:transparent;color:#fff;border:1px solid rgba(255,255,255,.3);border-radius:99px;padding:7px 12px;cursor:pointer}.progress{height:4px;background:#e9eeeb}.progress i{height:100%;display:block;width:4%;background:linear-gradient(90deg,var(--orange),#ffc067);transition:width .35s ease}.messages{min-height:360px;max-height:600px;overflow-y:auto;padding:28px 26px 18px;scrollbar-width:thin}.msg{display:flex;margin:0 0 17px;animation:rise .25s ease}.msg.bot{justify-content:flex-start}.msg.user{justify-content:flex-end}.bubble{max-width:min(670px,88%);padding:14px 17px;border-radius:18px;line-height:1.72;font-size:14px;white-space:pre-line}.bot .bubble{background:#f0f3ef;border-bottom-left-radius:5px}.user .bubble{background:var(--green);color:#fff;border-bottom-right-radius:5px}.bubble strong{font-size:1.08em}.typing .bubble{letter-spacing:5px;color:#84918c}.composer{padding:12px 24px 24px;border-top:1px solid #edf0ed;background:#fff}.choices{display:flex;flex-wrap:wrap;gap:10px}.choice{appearance:none;border:1px solid #b8c9c0;background:#fff;color:var(--deep);font-weight:800;padding:12px 17px;border-radius:12px;cursor:pointer;transition:.18s;font-size:14px}.choice:hover,.choice:focus{background:#edf7f2;border-color:var(--green);transform:translateY(-1px)}.choice.primary{background:var(--orange);color:#fff;border-color:var(--orange)}.input-wrap{display:grid;grid-template-columns:1fr auto auto;border:1px solid #aabdb3;border-radius:12px;overflow:hidden;align-items:center}.input-wrap input{border:0;outline:0;padding:15px 14px;font-size:16px;min-width:0}.input-wrap span{color:var(--muted);font-size:13px;padding-right:10px}.input-wrap button{border:0;background:var(--green);color:#fff;font-weight:900;align-self:stretch;padding:0 22px;cursor:pointer}.hint{font-size:12px;color:#77847e;margin:10px 2px 0}.result-card{margin-top:5px;border:1px solid #cddbd4;border-radius:20px;overflow:hidden;background:#fff;box-shadow:0 14px 36px rgba(5,58,43,.09)}.result-top{background:linear-gradient(145deg,#063b2d,#087052);color:#fff;padding:28px;text-align:center}.result-top p{font-size:13px;margin:0 0 7px;opacity:.78}.result-top strong{font-family:Georgia,"Yu Mincho",serif;font-size:clamp(38px,8vw,62px);letter-spacing:-.04em}.result-top strong small{font:700 18px sans-serif;margin-left:4px}.result-top span{display:block;margin-top:8px;font-weight:800}.result-body{padding:22px}.price-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.metric{background:#f4f6f3;border-radius:10px;padding:13px}.metric span{display:block;color:var(--muted);font-size:11px}.metric b{display:block;margin-top:5px;font-size:17px;color:var(--deep)}.result-note{font-size:12px;color:var(--muted);line-height:1.75;margin:15px 0}.report-preview{display:flex;gap:14px;align-items:center;background:#fff8ef;border:1px solid #f4d5b5;border-radius:12px;padding:13px}.report-preview img{width:94px;border:1px solid #ddd}.report-preview div{flex:1}.report-preview b{display:block}.report-preview small{color:#7c7167}.report-btn{display:block;width:100%;border:0;border-radius:12px;background:var(--orange);color:#fff;font-size:16px;font-weight:900;padding:15px;margin-top:16px;cursor:pointer}.case-id{text-align:center;font-size:11px;color:#7a8681;margin-top:10px}.report-dialog{width:min(680px,calc(100% - 24px));border:0;border-radius:20px;padding:0;box-shadow:0 35px 100px rgba(0,0,0,.25)}.report-dialog::backdrop{background:rgba(2,25,18,.66);backdrop-filter:blur(4px)}.report-dialog form{padding:30px;position:relative}.dialog-close{position:absolute;right:18px;top:15px;border:0;background:#edf0ed;border-radius:50%;width:36px;height:36px;font-size:23px;cursor:pointer}.report-dialog h2{font-size:26px;margin:0 0 8px}.dialog-lead{color:var(--muted);line-height:1.7}.case-chip{display:inline-block;background:#eaf2ee;color:var(--green);padding:7px 11px;border-radius:7px;font-size:12px;margin-bottom:16px}.report-dialog label{display:block;font-weight:800;font-size:13px;margin:13px 0}.report-dialog label em{color:#d4442e;font-style:normal}.report-dialog label small{font-weight:500;color:#7a8681}.report-dialog input,.report-dialog select,.report-dialog textarea{width:100%;margin-top:6px;padding:12px;border:1px solid #cbd6d0;border-radius:8px;font:inherit}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.field-note{display:block;font-size:11px;color:#7a8681;line-height:1.5;margin-top:5px}.report-dialog .consent{display:flex;gap:8px;align-items:flex-start;font-weight:500}.report-dialog .consent input{width:auto;margin:2px 0}.submit-report{width:100%;border:0;border-radius:10px;padding:15px;background:var(--green);color:#fff;font-weight:900;font-size:15px;cursor:pointer}.form-status{text-align:center;font-size:13px}.hp{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important}.complete-box{text-align:center;padding:20px}.complete-box .check{width:60px;height:60px;border-radius:50%;display:grid;place-items:center;background:#e7f6ee;color:var(--green);font-size:30px;margin:0 auto 15px}footer{max-width:1180px;margin:0 auto;padding:30px 20px 50px;border-top:1px solid #d9e0dc;display:grid;grid-template-columns:auto 1fr;gap:16px 25px;align-items:center;color:var(--muted)}footer img{width:150px}footer p{font-size:12px;line-height:1.6;margin:0}footer small{grid-column:1/-1}@keyframes rise{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
@media(max-width:760px){.topbar{height:64px;padding:0 15px}.brand img{width:142px}.trust span:nth-child(3){display:none}.shell{padding:24px 12px 45px}.intro{grid-template-columns:1fr;gap:22px}.intro h1{font-size:40px}.intro-copy>p:not(.eyebrow){font-size:14px}.house-card{height:180px}.chat-panel{border-radius:18px}.chat-head{padding:14px}.messages{padding:20px 14px 12px;min-height:310px;max-height:520px}.composer{padding:12px 14px 18px}.choice{flex:1 1 calc(50% - 10px);padding:12px 9px}.bubble{max-width:92%}.price-grid{grid-template-columns:1fr}.report-preview img{display:none}.form-grid{grid-template-columns:1fr}.report-dialog form{padding:25px 18px}footer{margin:0 12px}.input-wrap button{padding:0 16px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}}

/* Ver.1.1: チャット部分だけを表示 */
.shell{max-width:1180px;padding:28px 20px}.report-preview{display:block}.report-preview img{display:none}
.assessment-layout{display:grid;grid-template-columns:280px minmax(0,860px);gap:20px;align-items:start}.answer-summary{position:sticky;top:24px;background:#fff;border:1px solid rgba(7,88,63,.14);border-radius:18px;box-shadow:0 12px 30px rgba(5,58,43,.07);overflow:hidden}.answer-summary-head{display:grid;gap:3px;padding:17px 18px;background:#063b2d;color:#fff}.answer-summary-head span{font-weight:900}.answer-summary-head small{font-size:10px;opacity:.72}.answer-summary-list{padding:10px 16px 15px}.summary-empty{color:#7a8681;font-size:12px;margin:7px 0}.summary-row{padding:10px 0;border-bottom:1px solid #e8eeea}.summary-row:last-child{border-bottom:0}.summary-row dt{font-size:10px;color:#77847e;margin:0 0 3px}.summary-row dd{font-size:13px;font-weight:850;color:#063b2d;margin:0;overflow-wrap:anywhere}.chat-actions{margin-left:auto;display:flex;gap:7px}.restart{margin-left:0}.restart:disabled{opacity:.38;cursor:not-allowed}.restart.back:not(:disabled){background:rgba(255,255,255,.1)}
@media(max-width:900px){.assessment-layout{grid-template-columns:1fr}.answer-summary{position:static;order:2}.chat-panel{order:1}.answer-summary-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 16px}.chat-actions{gap:5px}.restart{font-size:11px;padding:7px 9px}}
@media(max-width:520px){.answer-summary-list{grid-template-columns:1fr}.chat-head{align-items:flex-start}.chat-actions{display:grid}.restart{white-space:nowrap}}
@media(max-width:760px){.shell{padding:8px}.chat-panel{border-radius:16px}}
.report-sample{display:grid;grid-template-columns:112px 1fr;gap:14px;align-items:center;margin:16px 0;padding:12px;border:1px solid #d6dfda;border-radius:12px;background:#fff;color:var(--deep);text-decoration:none}.report-sample img{width:112px;height:145px;object-fit:cover;object-position:top;border:1px solid #d9dedb;box-shadow:0 5px 16px rgba(5,58,43,.1)}.report-sample span{display:flex;flex-direction:column;gap:5px}.report-sample b{font-size:15px}.report-sample small{color:var(--muted)}
@media(max-width:480px){.report-sample{grid-template-columns:82px 1fr}.report-sample img{width:82px;height:108px}}
