:root{font-family:Manrope,system-ui,sans-serif;color:#173328;background:#f7fbf7}*{box-sizing:border-box}body{margin:0;background:radial-gradient(circle at 12% 15%,#d6f7d9,transparent 26%),radial-gradient(circle at 90% 70%,#e0f7e6,transparent 30%),#fff;min-height:100vh}.top{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:92px;padding:4px max(24px,calc((100vw - 1200px)/2));border-bottom:1px solid rgba(117,239,153,.2);background:radial-gradient(ellipse 380px 140px at 12% 40%,rgba(51,207,111,.17),transparent 85%),radial-gradient(ellipse 440px 160px at 88% 10%,rgba(37,177,92,.12),transparent 85%),#111615;color:#fff}.top a{color:#effff2;text-decoration:none;font-weight:700}.top a:hover,.top a:focus-visible{color:#69f49c}.brand img{display:block;width:116px;height:86px;max-width:none;object-fit:contain;filter:drop-shadow(0 0 13px rgba(59,219,118,.2))}main{max-width:1450px;margin:auto;padding:48px 24px}.intro{text-align:center;margin-bottom:34px}.intro span,.guide-head span,.kicker{color:#268d5b;font-size:.76rem;letter-spacing:.15em;font-weight:800}.intro h1{font-size:clamp(2.4rem,5vw,4.7rem);letter-spacing:-.05em;margin:12px 0}.intro p,.guide-head p,.hint{color:#64776b;line-height:1.65}.guides{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;align-items:start}.guide{background:#fff;border:1px solid #dbeadb;border-radius:18px;overflow:hidden;min-width:0;box-shadow:0 14px 38px #0b48130e}.guide-head{padding:22px 22px 8px}.guide-head h2{font-size:1.35rem;margin:7px 0;line-height:1.2}.diagram{position:relative;width:calc(100% - 28px);margin:12px 14px;background:#f4f9f4;border-radius:12px;overflow:hidden}.diagram>img{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:contain}.diagram svg{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;overflow:visible}.diagram line{stroke:#22b36e;stroke-width:.25;vector-effect:non-scaling-stroke;stroke-width:2px;filter:drop-shadow(0 1px 1px #fff)}.marker{position:absolute;transform:translate(-50%,-50%);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;background:#fff;border:2px solid #21a96a;border-radius:9px;box-shadow:0 4px 14px #08472b30;padding:3px;color:#134c33;font-weight:800;cursor:pointer;width:clamp(44px,22%,70px);min-height:40px;max-height:92px;font-size:.63rem;line-height:1.1;overflow:hidden}.marker img{width:100%;height:clamp(25px,5vw,56px);object-fit:contain;background:#fff;border-radius:5px}.marker span{display:block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.marker:hover,.marker:focus-visible{border-color:#0c613e;box-shadow:0 0 0 3px #a6eac1,0 5px 16px #08472b55;z-index:2}.anchor{position:absolute;transform:translate(-50%,-50%);background:#18a66a;width:10px;height:10px;border-radius:50%;border:2px solid white;pointer-events:none}.hint{margin:0;padding:0 22px 20px;font-size:.78rem}#status{text-align:center;color:#60786a;margin:28px}#status:empty{display:none}dialog{border:0;border-radius:24px;padding:40px;max-width:min(730px,94vw);width:100%;box-shadow:0 30px 90px #132e2545}dialog::backdrop{background:#0a2616a8}.close{position:absolute;right:20px;top:14px;border:0;background:transparent;font-size:2rem;cursor:pointer}.detail-layout{display:grid;grid-template-columns:40% 1fr;gap:28px;align-items:center}.detail-layout img{width:100%;max-height:300px;object-fit:contain}.detail-layout h2{margin:8px 0;font-size:2rem}.detail-layout p{line-height:1.5;color:#526257}.price{display:block;margin:18px 0;font-size:1.3rem}.cta{display:inline-block;background:#137c4b;color:white;padding:13px 20px;border-radius:10px;text-decoration:none;font-weight:800}.sold{color:#a3512b;font-weight:800}@media(max-width:1100px){.guides{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:650px){.top{min-height:70px;padding:4px 16px}.brand img{width:86px;height:64px}.top a:not(.brand){font-size:.85rem}.guides{grid-template-columns:1fr;gap:18px}.guide{max-width:470px;width:100%;margin:auto}main{padding:42px 12px}.guide-head{padding:24px 20px 8px}.diagram{width:calc(100% - 24px);margin:14px 12px}.hint{padding:0 20px 22px}.detail-layout{display:block}dialog{padding:28px}.detail-layout img{max-height:200px}.marker{border-width:1px}.marker img{height:42px}}
