:root{color:#263024;background:#fbfbf4;font-family:Yu Gothic,Hiragino Sans,Meiryo,sans-serif;--bg: #fbfbf4;--green-soft: #eef5df;--green: #a8c42a;--green-dark: #667817;--ink: #263024;--line: #dfe8c8;--cream: #fff8df;--pink: #f6e4df;--white: #fffef8;--shadow: 0 20px 50px rgba(74, 91, 45, .12)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:radial-gradient(circle at 12% 10%,rgba(238,245,223,.9),transparent 28rem),linear-gradient(180deg,#fbfbf4,#fffef8 46%,#fbfbf4)}body,input,select,button{font:inherit}a{color:inherit}.site-header{position:sticky;top:0;z-index:5;display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.85rem clamp(1rem,4vw,3rem);background:#fbfbf4e0;border-bottom:1px solid rgba(223,232,200,.8);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.brand{display:inline-flex;align-items:center;gap:.65rem;font-weight:700;text-decoration:none}.brand-mark{display:grid;place-items:center;width:2.35rem;height:2.35rem;border:1px solid var(--line);border-radius:50%;background:var(--green-soft);color:var(--green-dark);font-family:Georgia,serif;font-size:.8rem;letter-spacing:.04em}nav{display:flex;gap:clamp(.6rem,2vw,1.5rem);font-size:.9rem}nav a{text-decoration:none;border-bottom:1px solid transparent}nav a:hover{border-color:var(--green)}.section,.section-band{width:min(1120px,calc(100% - 2rem));margin:0 auto;padding:clamp(3.5rem,9vw,7rem) 0}.hero{min-height:calc(100svh - 4rem);display:grid;grid-template-columns:minmax(0,1.05fr) minmax(280px,.95fr);align-items:center;gap:clamp(2rem,7vw,5rem)}.eyebrow{margin:0 0 .8rem;color:var(--green-dark);font-family:Georgia,serif;font-size:.78rem;letter-spacing:.18em;text-transform:uppercase}h1,h2,h3,p{overflow-wrap:anywhere}h1{margin:0;font-size:clamp(2.3rem,6vw,5rem);line-height:1.08;letter-spacing:0}.title-piece{display:inline-block}h2{margin:0 0 1.4rem;font-size:clamp(1.8rem,4vw,3.1rem);line-height:1.18;letter-spacing:0}h3{margin:0 0 .7rem;font-size:1.08rem;line-height:1.4}.lead{max-width:44rem;margin:1.5rem 0 0;font-size:clamp(1.05rem,2vw,1.24rem);line-height:1.95}.hero-actions{display:flex;flex-wrap:wrap;gap:.8rem;margin:2rem 0 1.4rem}.button{display:inline-flex;align-items:center;justify-content:center;min-height:3rem;padding:.8rem 1.25rem;border:1px solid var(--line);border-radius:999px;background:var(--white);color:var(--ink);font-weight:700;text-decoration:none;cursor:pointer}.button.primary{background:var(--green);border-color:var(--green);color:#253000}.button.ghost{background:transparent}.notice,.hint{padding:1rem 1.1rem;border:1px solid var(--line);border-radius:1rem;background:#fff8dfb8;line-height:1.75}.hero-illustration{position:relative;min-height:520px;border:1px solid var(--line);border-radius:2rem;background:linear-gradient(90deg,rgba(223,232,200,.45) 1px,transparent 1px),linear-gradient(rgba(223,232,200,.45) 1px,transparent 1px),var(--green-soft);background-size:38px 38px;box-shadow:var(--shadow);overflow:hidden}.hero-illustration:before{content:"";position:absolute;inset:2rem;border:2px dashed rgba(102,120,23,.28);border-radius:1.4rem}.line-art{position:absolute;border:3px solid #52601e;background:#fffef8b8}.fridge{left:14%;bottom:19%;width:26%;height:55%;border-radius:1rem}.fridge:before{content:"";position:absolute;left:0;right:0;top:38%;border-top:3px solid #52601e}.washer{right:14%;bottom:17%;width:28%;aspect-ratio:1;border-radius:1.3rem}.washer:before{content:"";position:absolute;inset:23%;border:3px solid #52601e;border-radius:50%}.sofa{left:31%;top:17%;width:45%;height:20%;border-radius:2rem 2rem 1rem 1rem}.measure-tape{position:absolute;right:13%;top:12%;transform:rotate(7deg);padding:.45rem .8rem;border:2px solid #52601e;border-radius:999px;background:#fff8df;font-family:Georgia,serif}.stair-lines{position:absolute;left:11%;bottom:10%;width:38%;height:22%;border-left:3px solid #52601e;border-bottom:3px solid #52601e;background:repeating-linear-gradient(135deg,transparent 0 18px,rgba(82,96,30,.8) 19px 21px);opacity:.75}.feature-grid,.note-grid,.link-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem}.soft-card,.note-card,.step-card,.result-panel,details,.route-card{border:1px solid var(--line);border-radius:1.25rem;background:#fffef8db;box-shadow:0 14px 35px #4a5b2d14}.soft-card,.note-card{padding:1.35rem}.soft-card p,.note-card li,.route-card,details p{line-height:1.75}.card-dot{display:block;width:.8rem;height:.8rem;margin-bottom:1rem;border-radius:50%;background:var(--green)}.pale{width:100%;max-width:none;padding-inline:max(1rem,calc((100% - 1120px)/2));background:#eef5dfad}.measure-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.8rem}.measure-item{display:flex;gap:1rem;align-items:center;padding:1rem;border-bottom:1px solid var(--line);background:#fffef88c}.measure-item span{color:var(--green-dark);font-family:Georgia,serif}.tool-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(340px,.82fr);gap:1.2rem;align-items:start}.tool-intro{grid-column:1 / -1}.tool-note{max-width:44rem;margin:.75rem 0 0;padding-left:1rem;border-left:4px solid var(--green);line-height:1.8}.check-form{display:grid;gap:1rem}.step-card{padding:clamp(1.1rem,3vw,1.6rem)}.step-label,.result-kicker{margin:0 0 .35rem;color:var(--green-dark);font-family:Georgia,serif;font-size:.78rem;letter-spacing:.12em;text-transform:uppercase}.product-options,.field-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.8rem}.product-option{display:grid;gap:.35rem;min-height:9rem;padding:1rem;border:1px solid var(--line);border-radius:1rem;background:#fffef8;cursor:pointer}.product-option input{width:1.15rem;height:1.15rem;accent-color:var(--green-dark)}.product-option span{font-size:.92rem;line-height:1.65}.product-option.selected{outline:3px solid rgba(168,196,42,.35);border-color:var(--green);background:#fbffe8}.field{display:grid;gap:.35rem;font-weight:700}.field span{font-size:.92rem}.input-unit{display:grid;grid-template-columns:1fr auto;align-items:center;gap:.45rem;padding-right:.75rem;border:1px solid var(--line);border-radius:.8rem;background:#fff}input,select{width:100%;min-height:3.1rem;border:1px solid var(--line);border-radius:.8rem;background:#fff;color:var(--ink);padding:.75rem}.input-unit input{border:0}.input-unit em{font-style:normal;color:#66705c}input:focus,select:focus,.button:focus-visible,a:focus-visible{outline:3px solid rgba(168,196,42,.45);outline-offset:2px}.result-panel{position:sticky;top:5rem;padding:clamp(1.1rem,3vw,1.6rem)}.result-panel h2{margin-bottom:.65rem}.level-info{background:#fff8df}.level-intro{background:#fffef8}.level-easy{background:#f8fde9}.level-check{background:#fff8df}.level-caution{background:var(--pink)}.print-button{width:100%;margin:.9rem 0}.result-list{padding:1rem 0;border-top:1px solid rgba(102,120,23,.18)}.result-list ul,.note-card ul{margin:0;padding-left:1.2rem}.result-list li,.note-card li{margin:.42rem 0}.muted{color:#66705c}.result-disclaimer{padding:1rem;border-radius:1rem;background:#fffef8a6;line-height:1.7}.print-values{display:none}.note-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.link-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.route-card{display:flex;justify-content:space-between;gap:1rem;padding:1.1rem 1.2rem;text-decoration:none}.route-card span{color:var(--green-dark);white-space:nowrap}.faq{max-width:860px}details{padding:1rem 1.2rem;margin:.8rem 0}summary{cursor:pointer;font-weight:700}.final-notice{max-width:900px}.final-notice p{line-height:1.9}footer{display:flex;justify-content:space-between;gap:1rem;padding:2rem clamp(1rem,4vw,3rem);border-top:1px solid var(--line);background:#f7f7ed}footer p{margin:0;font-weight:700}@media(max-width:900px){.site-header{align-items:flex-start;flex-direction:column}.hero,.tool-layout{grid-template-columns:1fr}.hero{padding-top:2.5rem;min-height:auto}.hero-illustration{min-height:360px}.feature-grid,.measure-grid,.product-options,.field-grid,.note-grid,.link-grid{grid-template-columns:1fr}.result-panel{position:static}}@media(max-width:520px){.section,.section-band{width:min(100% - 1rem,1120px)}h1{font-size:2rem;line-height:1.18}.lead{margin-top:1.1rem;font-size:1rem;line-height:1.85}.hero-actions{margin-top:1.5rem}.button{width:100%}nav{width:100%;justify-content:space-between}.hero-illustration{min-height:300px;border-radius:1.2rem}footer{flex-direction:column}}@media(max-width:380px){h1{font-size:1.82rem;line-height:1.2}}@media print{.site-header,.hero,#about,#measure,.tool-intro,.check-form,#notes,#shop,#faq,.final-notice,footer,.print-button{display:none!important}body{background:#fff;color:#000}.section{width:100%;padding:0}.tool-layout{display:block}.result-panel{position:static;border:0;box-shadow:none;padding:0;background:#fff}.print-heading,.print-values{display:block}.result-list{break-inside:avoid}}
