:root{--bg: #faf8f3;--surface: #ffffff;--text: #2f332f;--muted: #6f746d;--primary: #2f6f5e;--accent: #d88a3d;--info: #4e6e8e;--border: #e5e0d6;--danger: #b94a48;--success: #3f7d57;--content-width: 1080px;font-family:system-ui,-apple-system,BlinkMacSystemFont,Hiragino Sans,Noto Sans JP,sans-serif}*{box-sizing:border-box}body{margin:0;color:var(--text);background:var(--bg);line-height:1.7}a{color:var(--primary)}.container{width:min(var(--content-width),calc(100% - 32px));margin:0 auto}.site-header{background:var(--surface);border-bottom:1px solid var(--border);padding:20px 0;margin-bottom:32px}.site-header .container{display:flex;justify-content:space-between;align-items:center;gap:16px}.logo{font-size:1.4rem;font-weight:700;color:var(--text);text-decoration:none}.tagline{margin:4px 0 0;color:var(--muted);font-size:.95rem}.site-nav{font-size:.95rem;white-space:nowrap}.site-nav a{color:var(--text);text-decoration:none}.site-nav a:hover{text-decoration:underline}.hero{padding:8px 0 32px}.hero h1{margin:0 0 8px;font-size:clamp(1.6rem,4vw,2.2rem)}.hero p{margin:0;color:var(--muted);max-width:640px}.section-title{margin:0 0 16px;font-size:1.2rem}.category-grid{display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.category-card,.product-card{background:var(--surface);border:1px solid var(--border);border-radius:8px;overflow:hidden}.category-card a,.product-card-link{color:inherit;text-decoration:none}.category-card{padding:20px}.category-card h3{margin:0 0 8px;font-size:1.1rem}.category-card p{margin:0 0 12px;color:var(--muted);font-size:.95rem}.meta-row{display:flex;gap:12px;flex-wrap:wrap;color:var(--muted);font-size:.88rem}.product-grid{display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.product-card-image{aspect-ratio:4 / 3;background:#f3f0ea;display:flex;align-items:center;justify-content:center;color:var(--muted);font-size:.9rem}.product-card-image img{width:100%;height:100%;object-fit:cover}.product-card-body{padding:16px}.badge{display:inline-block;padding:2px 8px;border-radius:999px;font-size:.78rem;margin-bottom:8px}.badge-korekai{background:#f7ead8;color:#9a5b16}.badge-discontinued{background:#f6ece8;color:var(--danger)}.product-card h3{margin:0 0 8px;font-size:1.05rem}.product-description{margin:0 0 12px;color:var(--muted);font-size:.95rem}.spec-list{margin:12px 0;padding:0;list-style:none}.spec-list li{font-size:.92rem;color:var(--muted)}.price-row{font-size:1rem;font-weight:600;margin:12px 0}.shop-links{display:flex;gap:8px;flex-wrap:wrap}.button-link{display:inline-block;padding:8px 12px;border-radius:8px;background:var(--primary);color:#fff;text-decoration:none;font-size:.92rem}.button-link.secondary{background:var(--info)}.toolbar{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:20px}.sort-select{padding:8px 12px;border:1px solid var(--border);border-radius:8px;background:var(--surface);font:inherit}.comparison-wrap{overflow-x:auto;margin-top:40px}.comparison-table{width:100%;min-width:720px;border-collapse:collapse;background:var(--surface);border:1px solid var(--border);border-radius:8px}.comparison-table th,.comparison-table td{border-bottom:1px solid var(--border);padding:12px;text-align:left;vertical-align:top;font-size:.92rem}.comparison-table th{background:#f7f4ee;position:sticky;left:0}.product-detail{display:grid;gap:32px}@media(min-width:900px){.product-detail{grid-template-columns:1fr 1fr}}.product-detail-image{background:#f3f0ea;border-radius:8px;min-height:320px;display:flex;align-items:center;justify-content:center}.product-detail-image img{max-width:100%;border-radius:8px}.breadcrumb{margin-bottom:16px;color:var(--muted);font-size:.92rem}.breadcrumb a{text-decoration:none}.empty-state{padding:32px;text-align:center;color:var(--muted);background:var(--surface);border:1px solid var(--border);border-radius:8px}.product-actions{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0;align-items:flex-start}.product-actions .button-secondary{font-size:.88rem;padding:8px 10px}.comment-section{margin-top:12px}.comment-panel{margin-top:12px;padding-top:12px;border-top:1px solid var(--border)}.comment-list{list-style:none;padding:0;margin:12px 0}.comment-item{padding:12px 0;border-bottom:1px solid var(--border)}.comment-item:last-child{border-bottom:none}.comment-rating{color:#c9a227;font-size:.92rem;margin-bottom:4px}.comment-form{margin-top:16px}.add-to-list{position:relative}.add-to-list-panel{position:absolute;z-index:5;top:calc(100% + 8px);left:0;min-width:280px;padding:16px}.link-button{background:none;border:none;padding:0;color:var(--primary);cursor:pointer;text-decoration:underline;font:inherit}.form-actions{display:flex;flex-wrap:wrap;gap:12px}.profile-header{display:flex;gap:20px;align-items:flex-start}.profile-avatar{width:72px;height:72px;border-radius:50%;object-fit:cover;flex-shrink:0}.profile-avatar-fallback{display:grid;place-items:center;background:var(--border);color:var(--muted);font-size:1.5rem;font-weight:600}.site-footer{margin-top:48px;padding:24px 0 40px;border-top:1px solid var(--border);color:var(--muted);font-size:.88rem}.login-cushion h2{margin:0 0 12px;font-size:1.25rem}.login-cushion-list{margin:0 0 16px;padding-left:1.2rem;color:var(--muted)}.login-cushion-back{margin-top:16px}.category-breadcrumbs{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-bottom:20px;color:var(--muted);font-size:.9rem}.category-breadcrumbs a{color:var(--accent);text-decoration:none}.category-breadcrumbs a:hover{text-decoration:underline}.breadcrumb-sep{margin:0 4px;color:var(--border)}.category-level-label{margin:0 0 8px;color:var(--muted);font-size:.85rem;letter-spacing:.04em}.category-group-section{margin-top:40px}.category-group-section:first-of-type{margin-top:0}
