:root{--font-family-en: "Helvetica Neue", Arial, sans-serif;--font-family-ja: "Noto Sans JP", "Hiragino Kaku Gothic ProN", "Meiryo", sans-serif;--color-text-main: #222;--color-text-sub: #444;--color-background: #fff;--color-light-gray: #f8f9fa;--color-image-width: 200px}.container{max-width:1200px;margin:0 auto;padding:0 2rem}.breadcrumb{padding:1rem 0;margin-top:2rem}.breadcrumb ol{display:flex;list-style:none;margin:0;padding:0;gap:.5rem;align-items:center}.breadcrumb li:not(:last-child):after{content:">";margin-left:.5rem;color:#6c757d}.breadcrumb a{color:inherit;text-decoration:none}.breadcrumb a:hover{text-decoration:underline}.breadcrumb [aria-current=page]{color:#6c757d;font-weight:500}.hero-section{position:relative;min-height:60vh;display:flex;align-items:center;justify-content:center;color:#fff;text-align:center;overflow:hidden}.hero-slideshow{position:absolute;top:0;left:0;width:100%;height:100%;z-index:1;background-color:#333}.hero-slideshow .slide{position:absolute;width:100%;height:100%;opacity:0;transition:opacity 1s ease-in-out}.hero-slideshow .slide.active{opacity:1}.hero-slideshow img{width:100%;height:100%;object-fit:cover;object-position:center}.hero-content{position:relative;z-index:2;padding:2rem;opacity:0;transform:translateY(20px);transition:opacity .8s ease,transform .8s ease}.hero-content.fade-in{opacity:1;transform:translateY(0)}.hero-title{font-family:Effra CC XBold,Noto Sans JP,sans-serif;font-size:3rem;font-weight:800;text-transform:uppercase;letter-spacing:.05em;margin:0}.hero-subtitle{font-family:var(--font-family-ja);font-size:1.25rem;font-weight:500;margin:.5rem 0 1rem}.hero-description{font-family:var(--font-family-ja);font-size:1rem;line-height:1.6;max-width:600px;margin:0 auto}.products-section{padding:2rem 0 5rem;background:var(--color-background)}.section-title{font-family:Effra CC XBold,Noto Sans JP,sans-serif;font-size:1.5rem;font-weight:800;text-align:center;text-transform:uppercase;letter-spacing:.08em;margin-bottom:3.5rem;color:var(--color-text-main)}.products-grid{display:grid;grid-template-columns:1fr 1fr;gap:3rem 2.5rem}.product-card-link{text-decoration:none;color:inherit;display:block}.product-card{display:flex;flex-direction:column;gap:1rem;background:var(--color-background);border:none}.product-image-wrapper{width:100%;border-bottom:1px solid #e0e0e0}.product-info{text-align:left}.product-image-container{position:relative;aspect-ratio:1 / 1;overflow:hidden}.product-image,.product-image-moji{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:contain;object-position:center;transition:opacity .4s ease-in-out}.product-image-moji{opacity:0}.product-header{margin-bottom:1rem}.product-category-label{font-weight:800}.product-name{font-family:Effra CC XBold,Noto Sans JP,sans-serif;font-size:1.4375rem;font-weight:800;line-height:1.25;text-transform:uppercase;letter-spacing:.08em;color:var(--color-text-main);margin:0}.product-name-ja{font-family:var(--font-family-ja);font-size:.9375rem;font-weight:500;line-height:1.6;letter-spacing:.06em;color:var(--color-text-sub);margin-top:.35rem}.product-specs{margin-top:.75rem;margin-bottom:.5rem;text-align:left}.spec-item.capacity-row .spec-value{font-family:var(--font-family-en);font-size:.95rem;letter-spacing:.05em;color:var(--color-text-main)}.color-variation{display:flex;justify-content:flex-start;align-items:flex-start;gap:.5rem;flex-wrap:nowrap;overflow-x:auto;height:auto;margin-bottom:2rem}.color-image{height:30px;width:auto;object-fit:contain;display:block;flex:0 0 auto}.product-actions{padding-top:0;border-top:none}.detail-btn{display:inline-block;font-family:var(--font-family-en);font-size:.875rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-main);padding:.75rem 1.5rem;border:1px solid var(--color-text-main);transition:background-color .3s,color .3s}.detail-btn:hover{background-color:var(--color-text-main);color:var(--color-background)}@media (max-width: 992px){.product-card{gap:2rem}.hero-title{font-size:2.5rem}}@media (max-width: 768px){.container{padding:0 1.5rem}.products-section{padding:4rem 0}.products-grid{grid-template-columns:1fr;gap:2.5rem}.product-card{gap:1rem}.product-actions{text-align:center}.section-title{font-size:1.25rem;margin-bottom:2.5rem}}@media (max-width: 576px){.hero-title{font-size:2rem}.product-name{font-size:1.3rem}.product-name span{font-size:1.12rem}}
