:root{--bg:#faf7f2;--card:#fff;--ink:#2f2a24;--sub:#7a6f63;--wood:#b98a5a;--wood-d:#8c6239;--line:#06c755;--soft:#efe6da;--accent:#e9a23b}
*{box-sizing:border-box}
html,body{margin:0;background:var(--bg);color:var(--ink);font-family:"Hiragino Sans","Noto Sans JP",system-ui,sans-serif;line-height:1.75;-webkit-text-size-adjust:100%}
a{color:var(--wood-d)}
.wrap{max-width:560px;margin:0 auto;padding:20px 16px 48px}
.brand{display:flex;align-items:center;gap:8px;font-weight:700;font-size:15px;color:var(--wood-d);text-decoration:none}
.hero{border-radius:18px;overflow:hidden;background:var(--card);box-shadow:0 6px 24px rgba(80,55,30,.08);margin:16px 0 20px}
.hero img{display:block;width:100%;height:220px;object-fit:cover}
.hero .in{padding:18px}
h1{font-size:22px;line-height:1.45;margin:0 0 8px}
h2{font-size:18px;margin:28px 0 10px}
.lead{color:var(--sub);font-size:14px;margin:0}
.card{background:var(--card);border-radius:16px;padding:18px;box-shadow:0 4px 16px rgba(80,55,30,.06);margin:14px 0}
.btn{display:block;width:100%;border:0;border-radius:999px;padding:15px 18px;font-size:16px;font-weight:700;text-align:center;text-decoration:none;cursor:pointer;font-family:inherit}
.btn.main{background:var(--wood);color:#fff}
.btn.main:active{background:var(--wood-d)}
.btn.line{background:var(--line);color:#fff;margin-top:10px}
.btn.ghost{background:transparent;color:var(--wood-d);border:2px solid var(--soft);margin-top:10px}
.q-num{font-size:13px;color:var(--wood);font-weight:700;letter-spacing:.05em}
.q-title{font-size:19px;font-weight:700;margin:6px 0 14px;line-height:1.5}
.opt{display:block;width:100%;text-align:left;background:var(--bg);border:2px solid var(--soft);border-radius:14px;padding:14px 16px;margin:10px 0;font-size:15px;font-family:inherit;color:var(--ink);cursor:pointer}
.opt:hover,.opt:focus{border-color:var(--wood);outline:none}
.bar{height:6px;background:var(--soft);border-radius:99px;overflow:hidden;margin:4px 0 18px}
.bar i{display:block;height:100%;background:var(--wood);width:0;transition:width .25s}
.type{font-size:24px;font-weight:800;margin:4px 0 6px;line-height:1.4}
.tag{display:inline-block;background:var(--soft);color:var(--wood-d);border-radius:99px;padding:3px 12px;font-size:12px;font-weight:700}
ul.list{padding-left:1.2em;margin:6px 0}
ul.list li{margin:4px 0}
.small{font-size:12px;color:var(--sub)}
.steps{list-style:none;padding:0;margin:0;counter-reset:s}
.steps li{position:relative;background:var(--card);border-radius:14px;padding:14px 14px 14px 58px;margin:10px 0;box-shadow:0 3px 12px rgba(80,55,30,.05)}
.steps li::before{counter-increment:s;content:counter(s);position:absolute;left:14px;top:14px;width:32px;height:32px;border-radius:50%;background:var(--wood);color:#fff;font-weight:800;display:flex;align-items:center;justify-content:center}
.steps b{display:block;font-size:16px}
.steps span{font-size:14px;color:var(--sub)}
.steps .who{display:inline-block;font-size:11px;font-weight:700;border-radius:99px;padding:1px 8px;margin-left:6px;vertical-align:2px}
.who.you{background:#fdeedd;color:#a8621c}.who.panda{background:#e6f4ea;color:#2c7a43}
footer{margin-top:36px;font-size:11px;color:var(--sub);text-align:center}
