:root{--paper:#f8faf7;--surface:#fff;--ink:#172723;--muted:#52615a;--forest:#193b34;--wash:#e8efeb;--line:#c6d0c9;--accent:#85542c;color-scheme:light}
.configuration-preview{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:48px;padding-bottom:56px}.preview-form{min-width:0}.preview-form fieldset{padding:24px 0;border:0;border-top:1px solid var(--line);margin:24px 0}.preview-form legend{font-size:1.35rem;font-weight:600;padding:0 12px 0 0}.preview-quantity{display:flex;gap:12px;align-items:center}.preview-quantity input{font:inherit;font-variant-numeric:tabular-nums;width:110px;padding:8px 12px;min-height:44px;background:var(--surface);color:var(--ink);border:1px solid var(--line);border-radius:6px;caret-color:var(--forest)}.preview-options>div{display:grid;gap:0}.preview-options label{display:flex;gap:12px;align-items:center;min-height:48px;padding:12px 0;border-bottom:1px solid var(--line);overflow-wrap:anywhere;cursor:pointer}.preview-options input{width:18px;height:18px;flex:none;accent-color:var(--forest)}.preview-summary{align-self:start;padding:28px;background:var(--wash);overflow-wrap:anywhere}.preview-summary h2{font-size:1.5rem}.preview-summary .caption{margin-bottom:16px}.preview-amount{font-size:clamp(1.8rem,3vw,2.5rem);font-variant-numeric:tabular-nums;color:var(--forest)}.configuration-preview button,.preview-options label{touch-action:manipulation}.configuration-preview ::selection{background:var(--forest);color:var(--surface)}@media(max-width:760px){.configuration-preview{grid-template-columns:1fr;gap:28px}.preview-summary{padding:20px}}
.comparison-reset{background:transparent;color:var(--forest)}.comparison-error{padding:16px;background:var(--wash);color:var(--ink);overflow-wrap:anywhere;scroll-margin-block:24px}.comparison-bar [role=status]{font-variant-numeric:tabular-nums}.compare-choice{touch-action:manipulation}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.8 "Noto Sans JP","BIZ UDGothic","Yu Gothic",sans-serif}a{color:inherit;text-underline-offset:.25em}a:hover{color:var(--accent)}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,[tabindex]:focus-visible{outline:3px solid var(--accent);outline-offset:4px}h1,h2,h3,p{margin:0 0 1rem}h1,h2{font-family:"Yu Mincho","Hiragino Mincho ProN",serif;font-weight:500;line-height:1.5}h1{font-size:clamp(2rem,4.1vw,4.4rem);letter-spacing:.04em}h2{font-size:clamp(1.5rem,2.3vw,2.4rem)}h3{font-size:1.6rem;line-height:1.5;overflow-wrap:anywhere}small{font-size:.65em;margin-left:.25rem}main,.site-header,.guide,.site-footer{max-width:1320px;margin:auto;padding-inline:clamp(20px,5vw,72px)}.skip{position:absolute;left:20px;top:-80px;padding:10px;background:var(--surface);z-index:5}.skip:focus{top:10px}.site-header{display:flex;align-items:center;justify-content:space-between;gap:24px;padding-block:28px;border-bottom:1px solid var(--line)}.brand{font:700 1.7rem/1.2 Georgia,serif;letter-spacing:.12em;text-decoration:none}.brand span{display:block;font:11px/2 "Yu Gothic",sans-serif;letter-spacing:.1em;color:var(--muted)}nav{display:flex;gap:24px;flex-wrap:wrap}nav a{padding:8px 0;font-size:.9rem;text-decoration:none}.eyebrow{font-size:.75rem;letter-spacing:.16em;color:var(--muted);font-weight:700;margin-bottom:16px}.lead{color:var(--muted);margin:24px 0;line-height:2}.catalog-intro{display:grid;grid-template-columns:1.2fr 1fr;gap:60px;align-items:center;padding-block:70px}.featured{background:var(--forest);color:var(--surface);padding:34px}.featured .eyebrow,.featured .caption{color:#e2ebe5}.featured h2{font:500 clamp(3rem,5vw,5rem)/1.1 Georgia,serif;letter-spacing:.04em}.featured h2 a{text-decoration:none}.measurement{margin:25px 0;border-top:1px solid #849b90}.measurement div{padding:14px 0;border-bottom:1px solid #849b90}.measurement dt{font-size:.8rem}.measurement dd{font-size:2rem;margin:0;font-variant-numeric:tabular-nums}.measurement dd.price{font-size:1.7rem}.button,button{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:10px 20px;border:1px solid var(--forest);background:var(--forest);color:var(--surface);font:inherit;font-size:.9rem;text-decoration:none;cursor:pointer}.button:hover,button:hover{background:var(--ink);color:var(--surface)}.featured .button{background:var(--surface);color:var(--forest)}.featured .button:hover{background:var(--wash)}.caption{font-size:.8rem;color:var(--muted);line-height:1.8}.featured .caption{margin:18px 0 0}.text-link{display:inline-block;padding-block:8px;font-size:.9rem}.models{padding-block:35px 65px;scroll-margin-top:24px}.section-title{display:flex;gap:24px;justify-content:space-between;align-items:baseline}.section-title p{font-size:.85rem;color:var(--muted)}.filters{display:flex;gap:16px;flex-wrap:wrap;align-items:end;background:var(--wash);padding:20px;margin:16px 0}.filters label{font-size:.8rem;display:grid;gap:6px;min-width:190px}.filters select{min-height:44px;border:1px solid var(--line);background:var(--surface);color:var(--ink);padding:8px 36px 8px 12px;font:inherit;font-size:.95rem}.filters a{padding:10px;font-size:.85rem}.comparison-bar{display:flex;gap:18px;align-items:center;flex-wrap:wrap;margin:28px 0 20px}.comparison-bar p{margin:0 auto 0 0}.product-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.product{padding:24px;background:var(--surface);border-top:3px solid var(--forest);min-width:0;display:flex;flex-direction:column}.product-top{display:flex;align-items:center;justify-content:space-between;gap:12px}.product-top .eyebrow{margin:0}.compare-choice{display:flex;align-items:center;gap:8px;min-height:44px;font-size:.85rem;cursor:pointer}.compare-choice input{accent-color:var(--forest);width:18px;height:18px}.spec-summary{font-size:.85rem;color:var(--muted)}.product-price{padding-block:16px;border-block:1px solid var(--line);margin-bottom:14px}.product-price p{margin:0}.product-price strong{font-size:1.3rem;font-weight:600;font-variant-numeric:tabular-nums}.individual{font-size:1.3rem}.product>.text-link{margin-top:auto;align-self:start}.catalog-version{margin-top:24px}.empty{padding:30px;background:var(--wash);grid-column:1/-1}.page-heading{padding-block:55px 35px}.page-heading h1{overflow-wrap:anywhere}.page-heading>.text-link{margin-bottom:25px}.detail-grid{display:grid;grid-template-columns:1.15fr 1fr;gap:55px;padding-bottom:40px}.media-pending{padding:40px;background:var(--wash);align-content:center;min-height:400px}.media-pending h2{font-size:1.7rem}.media-pending p{color:var(--muted)}.spec-panel h2{font-size:1.4rem}.spec-list{margin:20px 0}.spec-list div{display:flex;gap:20px;justify-content:space-between;border-bottom:1px solid var(--line);padding:9px 0}.spec-list dt{color:var(--muted)}.spec-list dd{margin:0;font-variant-numeric:tabular-nums}.detail-price{padding-block:16px}.detail-price p{margin:0}.large-price{font-size:2.2rem;font-variant-numeric:tabular-nums}.detail-notes{padding-block:30px 60px;max-width:850px}.detail-notes h2{font-size:1.7rem}.guide{display:grid;grid-template-columns:1fr 1.35fr;gap:50px;padding-block:55px;background:var(--wash)}.guide p{font-size:.9rem}.site-footer{display:flex;flex-wrap:wrap;gap:24px;justify-content:space-between;padding-block:30px;font-size:.8rem;color:var(--muted)}.site-footer strong{letter-spacing:.12em;color:var(--ink)}.compare-region{overflow-x:auto;margin-bottom:70px}.comparison-table{width:100%;border-collapse:collapse;min-width:560px;font-size:.9rem}.comparison-table caption{text-align:left;padding:0 0 16px;color:var(--muted)}.comparison-table th,.comparison-table td{text-align:left;padding:18px;border-bottom:1px solid var(--line);font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.comparison-table thead{background:var(--forest);color:var(--surface)}.comparison-table th[scope=row]{background:var(--wash);font-weight:500}#guide{scroll-margin-top:20px}
@media(max-width:960px){.product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.catalog-intro,.detail-grid{gap:28px}.featured{padding:24px}.media-pending{padding:24px}}@media(max-width:640px){.site-header{align-items:start;padding-block:20px;gap:15px}nav{gap:4px;flex-direction:column}nav a{font-size:.75rem;padding-block:4px}.brand{font-size:1.4rem}.catalog-intro,.detail-grid,.guide{grid-template-columns:1fr;gap:28px}.catalog-intro{padding-block:40px}.product-grid{grid-template-columns:1fr}.section-title{display:block}.filters{padding:16px}.filters label{min-width:0;width:100%}.comparison-bar{gap:12px}.comparison-bar p{width:100%}.featured h2{font-size:3.5rem}.media-pending{min-height:280px}.guide{padding-block:35px}.site-footer{gap:12px;flex-direction:column}.large-price{font-size:1.9rem}.page-heading{padding-top:35px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
.showroom-heading{max-width:780px;padding-block:64px 80px}.showroom-heading>p{color:var(--muted)}.showroom-notice,.showroom-confirmation{padding:16px 18px;margin:22px 0;background:var(--wash);border-left:3px solid var(--forest);color:var(--ink)}.showroom-confirmation strong{display:block;margin-top:8px}.showroom-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 24px;margin-top:28px}.showroom-field{min-width:0;display:grid;align-content:start;gap:7px}.showroom-field label{font-weight:600;font-size:.9rem}.showroom-field input,.showroom-field select{width:100%;min-height:48px;border:1px solid var(--line);border-radius:4px;background:var(--surface);color:var(--ink);padding:10px 12px;font:inherit}.showroom-field input:focus,.showroom-field select:focus{border-color:var(--forest)}.showroom-field.has-error input,.showroom-field.has-error select{border-color:#9b3e32}.optional,.field-help{font-size:.8rem;color:var(--muted);font-weight:400;margin-left:8px}.field-error,.form-errors{color:#7c2e25;font-size:.85rem}.field-error ul,.form-errors ul{margin:0;padding-left:20px}.showroom-privacy{grid-column:1/-1;margin:0;color:var(--muted);font-size:.82rem}.showroom-form button{grid-column:1/-1;justify-self:start;min-width:200px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(max-width:640px){.showroom-heading{padding-block:35px 50px}.showroom-form{grid-template-columns:1fr;gap:16px}.showroom-form button,.showroom-privacy{grid-column:auto}.showroom-form button{width:100%}}
.featured a:hover,.comparison-table thead a:hover{color:var(--surface)}
.featured a:focus-visible,.comparison-table thead a:focus-visible{outline-color:var(--surface)}
.spec-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 16px;margin:12px 0 16px;padding:8px 12px;background:var(--wash);border-left:2px solid var(--forest)}.spec-grid div{display:flex;justify-content:space-between;gap:8px;min-width:0;padding:5px 0;border-bottom:1px solid var(--line);font-size:.8rem}.spec-grid dt{color:var(--muted)}.spec-grid dd{margin:0;text-align:right;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.spec-status{font-weight:700;color:var(--forest)}@media(max-width:640px){.spec-grid{grid-template-columns:1fr}}
.model-media-status{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:12px 0}.model-media-status>div{display:grid;align-content:start;gap:4px;min-width:0;padding:10px 12px;border:1px solid var(--line);background:var(--wash)}.model-media-status span{color:var(--muted);font-size:.75rem}.model-media-status strong{color:var(--ink);font-size:.8rem;font-weight:600;overflow-wrap:anywhere}@media(max-width:400px){.model-media-status{grid-template-columns:1fr}}
.featured .button:hover{color:var(--forest)}
.site-header nav a{min-height:44px}
.text-link{display:inline-flex;align-items:center;min-height:44px}
.showroom-notice,.showroom-confirmation{border-left:1px solid var(--forest)}
.spec-grid{border-left:1px solid var(--forest)}

.model-illustration{margin:0;border:1px solid var(--line);background:var(--surface)}.model-illustration img{display:block;width:100%;height:auto;background:var(--wash)}.model-illustration figcaption{padding:10px 14px;color:var(--muted);font-size:.8rem;line-height:1.6}.product-illustration{margin:16px 0}.product-illustration img{height:220px;object-fit:contain}.detail-illustration{margin:18px 0}.detail-illustration img{max-height:520px;object-fit:contain}@media(max-width:640px){.product-illustration img{height:190px}.detail-illustration img{max-height:360px}}
