:root{--color-bg:#fffdf9;--color-bg-alt:#f8f5f0;--color-text:#2e261f;--color-text-sub:#8c7b6b;--color-accent:#b89a7a;--color-accent-hover:#a68868;--color-border:#e8e0d6;--color-white:#fff;--font-serif:"Noto Serif JP",serif;--font-sans:"Noto Sans JP",sans-serif;--easing-luxury:cubic-bezier(.22,1,.36,1);--transition-luxury:.8s var(--easing-luxury)}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:var(--font-sans);color:var(--color-text);background-color:var(--color-bg);-webkit-font-smoothing:antialiased;font-weight:300;line-height:1.8}a{color:inherit;text-decoration:none}img{max-width:100%;height:auto;display:block}h1,h2,h3,h4,h5,h6{font-family:var(--font-serif);font-weight:500;line-height:1.4}.container{max-width:1100px;margin:0 auto;padding:0 20px}.container-narrow{max-width:780px;margin:0 auto;padding:0 20px}.site-header{z-index:1000;background:var(--color-bg);border-bottom:1px solid var(--color-border);width:100%;position:sticky;top:0}.site-header-inner{justify-content:space-between;align-items:center;height:64px;display:flex}.site-logo{font-family:var(--font-serif);letter-spacing:.1em;color:var(--color-text);transition:opacity .4s var(--easing-luxury),transform .4s var(--easing-luxury);white-space:nowrap;font-size:1.3rem;font-weight:500;display:block}.site-logo:hover{opacity:.7}.site-logo-container{flex-shrink:0}.site-nav{align-items:center;gap:24px;display:flex}.nav-divider{background-color:var(--color-border);width:1px;height:12px}.site-nav a{letter-spacing:.12em;text-transform:uppercase;color:var(--color-text-sub);transition:color .4s var(--easing-luxury);font-size:.75rem;position:relative;opacity:1!important;visibility:visible!important}.site-nav a:after{content:"";background-color:var(--color-accent);transform-origin:100%;width:100%;height:1px;transition:transform .6s var(--easing-luxury);opacity:.6;position:absolute;bottom:-4px;left:0;transform:scaleX(0)}.site-nav a:hover{color:var(--color-accent)}.site-nav a:hover:after{transform-origin:0;transform:scaleX(1)}.hamburger{cursor:pointer;z-index:1100;background:0 0;border:none;flex-direction:column;justify-content:center;gap:5px;width:32px;height:32px;padding:4px;display:none}.hamburger-line{background:var(--color-text);width:100%;height:1.5px;transition:all .4s var(--easing-luxury);transform-origin:50%;display:block}.hamburger.active .hamburger-line:first-child{transform:translateY(6.5px)rotate(45deg)}.hamburger.active .hamburger-line:nth-child(2){opacity:0}.hamburger.active .hamburger-line:nth-child(3){transform:translateY(-6.5px)rotate(-45deg)}.drawer-overlay{z-index:1050;opacity:0;pointer-events:none;transition:opacity .4s var(--easing-luxury);background:#2e261f66;position:fixed;inset:0}.drawer-overlay.active{opacity:1;pointer-events:auto}.drawer{background:var(--color-bg);z-index:1060;width:300px;max-width:85vw;height:100dvh;transition:transform .5s var(--easing-luxury);-webkit-overflow-scrolling:touch;position:fixed;top:0;right:0;overflow-y:auto;transform:translate(100%)}.drawer.active{transform:translate(0)}.drawer-header{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;padding:20px 24px;display:flex}.drawer-logo{font-family:var(--font-serif);letter-spacing:.1em;color:var(--color-text);font-size:1.1rem;font-weight:500}.drawer-close{cursor:pointer;width:36px;height:36px;color:var(--color-text-sub);background:0 0;border:none;justify-content:center;align-items:center;transition:color .3s;display:flex}.drawer-close:hover{color:var(--color-text)}.drawer-nav{padding:24px}.drawer-section{flex-direction:column;gap:4px;display:flex}.drawer-section-label{letter-spacing:.15em;text-transform:uppercase;color:var(--color-text-sub);margin-bottom:8px;font-size:.65rem;font-weight:500}.drawer-link{letter-spacing:.08em;color:var(--color-text);padding:12px 0;font-size:.9rem;font-weight:300;transition:color .3s;display:block}.drawer-link:hover{color:var(--color-accent)}.drawer-link-accent{color:var(--color-accent);font-weight:400}.drawer-divider{background:var(--color-border);height:1px;margin:12px 0}@media (max-width:768px){.hamburger{display:flex}.site-nav-desktop{display:none}}.nav-search-btn{cursor:pointer;color:var(--color-text-sub);background:0 0;border:none;justify-content:center;align-items:center;padding:4px;transition:color .3s;display:flex}.nav-search-btn:hover{color:var(--color-accent)}.mobile-header-actions{align-items:center;gap:8px;display:none}.mobile-search-btn{display:none}@media (max-width:768px){.mobile-header-actions,.mobile-search-btn{display:flex}}.search-overlay{z-index:2000;background:#2e261f80;justify-content:center;align-items:flex-start;padding-top:120px;display:flex;position:fixed;inset:0}.search-modal{background:var(--color-bg);border:1px solid var(--color-border);width:600px;max-width:90vw;overflow:hidden;box-shadow:0 24px 64px #00000026}.search-input-wrapper{border-bottom:1px solid var(--color-border);align-items:center;gap:12px;padding:16px 20px;display:flex}.search-input-icon{color:var(--color-text-sub);flex-shrink:0}.search-input{font-size:1rem;font-family:var(--font-sans);color:var(--color-text);background:0 0;border:none;outline:none;flex:1}.search-input::placeholder{color:var(--color-text-sub)}.search-close{cursor:pointer;color:var(--color-text-sub);background:0 0;border:none}.search-close kbd{border:1px solid var(--color-border);font-size:.7rem;font-family:var(--font-sans);color:var(--color-text-sub);border-radius:4px;padding:2px 8px}.search-results{max-height:400px;overflow-y:auto}.search-empty{text-align:center;color:var(--color-text-sub);padding:32px 20px;font-size:.85rem}.search-result-item{border-bottom:1px solid var(--color-border);color:var(--color-text);align-items:center;gap:12px;padding:14px 20px;text-decoration:none;transition:background .2s;display:flex}.search-result-item:hover{background:var(--color-bg-alt)}.search-result-type{letter-spacing:.1em;text-transform:uppercase;color:var(--color-accent);min-width:50px;font-size:.6rem;font-weight:500}.search-result-title{flex:1;font-size:.88rem;font-weight:400}.search-result-category{color:var(--color-text-sub);letter-spacing:.05em;font-size:.7rem}@media (max-width:768px){.search-overlay{padding-top:60px}}.site-footer{border-top:1px solid var(--color-border);text-align:center;color:var(--color-text-sub);letter-spacing:.08em;padding:48px 0;font-size:.75rem}.category-nav{flex-wrap:wrap;gap:12px;margin-bottom:40px;display:flex}.category-btn{letter-spacing:.1em;border:1px solid var(--color-border);color:var(--color-text-sub);cursor:pointer;transition:all .5s var(--easing-luxury);font-size:.8rem;font-family:var(--font-sans);background:0 0;padding:8px 20px}.category-btn:hover,.category-btn.active{background:var(--color-text);color:var(--color-bg);border-color:var(--color-text);transform:translateY(-1px)}.article-grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:32px;display:grid}.article-card{border:1px solid var(--color-border);background:var(--color-white);transition:box-shadow .8s var(--easing-luxury),transform .8s var(--easing-luxury);flex-direction:column;display:flex;overflow:hidden}.article-card:hover{transform:translateY(-4px);box-shadow:0 12px 40px #2e261f0d}.article-card-image{aspect-ratio:16/9;background:var(--color-bg-alt);position:relative;overflow:hidden}.article-card-image img{object-fit:cover;width:100%;height:100%;transition:transform .5s}.article-card:hover .article-card-image img{transform:scale(1.03)}.article-card-placeholder{background:var(--color-bg-alt);width:100%;height:100%;color:var(--color-text-sub);font-family:var(--font-serif);letter-spacing:.15em;justify-content:center;align-items:center;font-size:.9rem;display:flex}.article-card-body{flex-direction:column;flex-grow:1;padding:24px;display:flex}.article-card-category{letter-spacing:.15em;text-transform:uppercase;color:var(--color-accent);margin-bottom:10px;font-size:.65rem;font-weight:500}.article-card-title{font-size:1.05rem;font-family:var(--font-serif);color:var(--color-text);margin-bottom:10px;font-weight:500;line-height:1.6}.article-card-excerpt{color:var(--color-text-sub);flex-grow:1;margin-bottom:16px;font-size:.85rem;line-height:1.7}.article-card-date{color:var(--color-text-sub);font-size:.75rem;font-style:italic;font-family:var(--font-serif)}.section-title{text-align:center;margin-bottom:48px}.section-title h2{letter-spacing:.08em;margin-bottom:8px;font-size:1.6rem}.section-title p{color:var(--color-text-sub);letter-spacing:.1em;font-size:.8rem}.article-hero{text-align:center;padding:80px 0 40px}.article-hero-category{letter-spacing:.2em;text-transform:uppercase;color:var(--color-accent);margin-bottom:16px;font-size:.7rem;font-weight:500}.article-hero-title{letter-spacing:.04em;margin-bottom:16px;font-size:2rem;line-height:1.5}.article-hero-date{color:var(--color-text-sub);font-size:.8rem;font-style:italic;font-family:var(--font-serif)}.article-cover{aspect-ratio:16/9;background:var(--color-bg-alt);border:1px solid var(--color-border);margin-bottom:48px;overflow:hidden}.article-cover img{object-fit:cover;width:100%;height:100%}.article-body{padding-bottom:80px}.article-lead{color:var(--color-text);background:var(--color-bg-alt);border-left:3px solid var(--color-accent);margin-bottom:48px;padding:32px;font-size:1rem;line-height:2}.article-section{margin-bottom:56px}.article-section h2{border-bottom:1px solid var(--color-border);letter-spacing:.04em;margin-bottom:20px;padding-bottom:12px;font-size:1.35rem}.article-section h3{letter-spacing:.04em;margin-bottom:12px;font-size:1.1rem}.article-section p{margin-bottom:16px;font-weight:300;line-height:2}.article-section-image{border-radius:8px;margin-bottom:24px;overflow:hidden}.article-section-image img{object-fit:cover;width:100%;height:auto;max-height:400px;display:block}.intro-points{background:var(--color-bg-alt);margin-bottom:48px;padding:28px 32px}.intro-points-title{letter-spacing:.08em;margin-bottom:16px;font-size:.85rem;font-weight:500}.intro-points ul{padding:0;list-style:none}.intro-points li{color:var(--color-text);padding:6px 0 6px 20px;font-size:.9rem;position:relative}.intro-points li:before{content:"✓";color:var(--color-accent);font-weight:500;position:absolute;left:0}.product-block{border:1px solid var(--color-border);background:var(--color-white);border-radius:8px;margin-bottom:28px;padding:28px}.product-block-rank{font-family:var(--font-serif);letter-spacing:.15em;color:var(--color-accent);text-transform:uppercase;margin-bottom:8px;font-size:.75rem}.product-block-content{gap:24px;margin-bottom:20px;display:flex}.product-block-media{flex-shrink:0;width:120px}.product-block-img-skeleton{background:linear-gradient(90deg,var(--color-bg-alt)25%,#ece7df 50%,var(--color-bg-alt)75%);background-size:200% 100%;border-radius:4px;width:120px;height:120px;animation:1.5s ease-in-out infinite skeleton-shimmer}.product-block-no-image{background:var(--color-bg-alt);border-radius:4px;justify-content:center;align-items:center;width:120px;height:120px;display:flex}.product-block-info{flex-grow:1}.product-block-name{font-family:var(--font-serif);margin-bottom:4px;font-size:1.2rem;font-weight:500}.product-block-price{color:#c45c3c;margin-bottom:4px;font-size:1.1rem;font-weight:600}.product-block-yen{font-size:.85rem;font-weight:400}.product-block-review{align-items:center;gap:4px;margin-bottom:4px;font-size:.8rem;display:flex}.product-block-stars{color:#e6a817;letter-spacing:-1px}.product-block-review-count{color:var(--color-text-sub)}.product-block-brand{color:var(--color-text-sub);margin-bottom:12px;font-size:.8rem}.product-block-note{color:var(--color-text-sub);margin-bottom:12px;font-size:.8rem;font-style:italic}.product-block-cta{letter-spacing:.1em;border:1px solid var(--color-text);background:var(--color-text);color:var(--color-bg);cursor:pointer;text-align:center;border-radius:4px;margin-bottom:16px;padding:10px 28px;font-size:.8rem;text-decoration:none;transition:all .3s;display:inline-block}.product-block-cta:hover{color:var(--color-text);background:0 0}.product-block-loading{color:var(--color-text-sub);margin-top:8px;font-size:.75rem}.product-block-disclaimer{color:var(--color-text-sub);margin-top:4px;font-size:.65rem;line-height:1.4}.product-block-cta-secondary{letter-spacing:.1em;border:1px solid var(--color-border);color:var(--color-text-sub);cursor:pointer;background:0 0;margin-bottom:8px;margin-right:8px;padding:8px 22px;font-size:.75rem;transition:all .3s;display:inline-block}.product-block-cta-secondary:hover{border-color:var(--color-text);color:var(--color-text)}.product-block-desc{color:var(--color-text);margin-bottom:12px;font-size:.9rem;line-height:1.9}.product-block-best-for{color:var(--color-accent);font-size:.8rem;font-weight:400}.product-card-price{color:#c45c3c;margin-top:4px;font-size:.9rem;font-weight:600}.choice-guide{background:var(--color-bg-alt);margin-bottom:48px;padding:36px}.choice-guide h2{border-bottom:1px solid var(--color-border);margin-bottom:16px;padding-bottom:12px;font-size:1.2rem}.choice-guide p{line-height:2}.article-summary{background:var(--color-bg-alt);border-left:3px solid var(--color-accent);margin-bottom:48px;padding:36px}.article-summary h2{margin-bottom:16px;font-size:1.1rem}.article-summary p{line-height:2}.article-share{border-bottom:1px solid var(--color-border);align-items:center;gap:16px;margin-bottom:32px;padding:16px 0;display:flex}.article-share-label{letter-spacing:.15em;text-transform:uppercase;color:var(--color-text-sub);font-size:.7rem;font-weight:500}.article-share-buttons{gap:8px;display:flex}.article-share-btn{width:36px;height:36px;transition:all .3s var(--easing-luxury);color:var(--color-white);border-radius:50%;justify-content:center;align-items:center;display:flex}.article-share-btn:hover{opacity:.85;transform:translateY(-2px)}.share-x{background:#000}.share-line{background:#06c755}.share-pinterest{background:#e60023}.related-articles{border-top:1px solid var(--color-border);margin-bottom:64px;padding-top:48px}.related-articles h2{text-align:center;letter-spacing:.1em;margin-bottom:32px;font-size:1.1rem}.section-alt{background:var(--color-bg-alt);padding:40px 0}.hero-tagline{text-align:center;background:var(--color-bg);padding:64px 0 24px}.hero-tagline-sub{letter-spacing:.25em;text-transform:uppercase;color:var(--color-accent);margin-bottom:16px;font-size:.7rem;font-weight:500}.hero-tagline-main{font-family:var(--font-serif);letter-spacing:.08em;color:var(--color-text);margin-bottom:16px;font-size:2.4rem;font-weight:500;line-height:1.4}.hero-tagline-desc{color:var(--color-text-sub);letter-spacing:.04em;font-size:.95rem;line-height:1.8}@media (max-width:768px){.hero-tagline{padding:48px 0 16px}.hero-tagline-main{font-size:1.6rem}.hero-tagline-desc{font-size:.85rem}}.hero{text-align:center;padding:60px 0 40px}.hero h1{letter-spacing:.06em;margin-bottom:12px;font-size:2.2rem}.hero p{color:var(--color-text-sub);max-width:500px;margin:0 auto;font-size:.9rem;line-height:1.9}.featured-banner{background:var(--color-bg-alt);border:1px solid var(--color-border);grid-template-columns:1fr 1fr;min-height:480px;margin-bottom:64px;display:grid;position:relative;overflow:hidden}.slider-container{width:100%;position:relative}.featured-banner-content{flex-direction:column;justify-content:center;padding:60px 48px;display:flex}.featured-banner-label{letter-spacing:.25em;text-transform:uppercase;color:var(--color-accent);margin-bottom:16px;font-size:.7rem;font-weight:500;display:block}.featured-banner-title{letter-spacing:.05em;margin-bottom:20px;font-size:1.8rem;line-height:1.4}.featured-banner-desc{color:var(--color-text-sub);margin-bottom:32px;font-size:.95rem;line-height:1.8}.featured-banner-cta{letter-spacing:.15em;border:1px solid var(--color-text);background:var(--color-text);color:var(--color-bg);transition:all .4s var(--easing-luxury);text-transform:uppercase;align-self:flex-start;padding:12px 32px;font-size:.8rem;display:inline-block}.featured-banner-cta:hover{color:var(--color-text);background:0 0}.slider-dots{z-index:10;gap:12px;display:flex;position:absolute;bottom:24px;left:48px}.slider-dot{background:var(--color-border);cursor:pointer;width:8px;height:8px;transition:all .4s var(--easing-luxury);border-radius:50%}.slider-dot.active{background:var(--color-accent);transform:scale(1.4)}.featured-banner-image{background:var(--color-bg-alt);font-family:var(--font-serif);color:var(--color-text-sub);letter-spacing:.15em;justify-content:center;align-items:center;font-size:.9rem;display:flex}.featured-banner-image img{object-fit:cover;width:100%;height:100%}.home-section{margin-bottom:80px;padding-top:8px}.home-section-header{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:baseline;margin-bottom:32px;padding-bottom:16px;display:flex}.home-section-title{letter-spacing:.06em;font-size:1.3rem}.home-section-more{letter-spacing:.1em;color:var(--color-text-sub);font-size:.75rem;transition:color .3s}.home-section-more:hover{color:var(--color-accent)}.product-grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:24px;display:grid}.product-card{border:1px solid var(--color-border);background:var(--color-white);transition:box-shadow .8s var(--easing-luxury),transform .8s var(--easing-luxury);flex-direction:column;display:flex;overflow:hidden}.product-card:hover{transform:translateY(-4px);box-shadow:0 12px 40px #2e261f0d}.product-card-image{aspect-ratio:1;border-bottom:1px solid var(--color-border);background-color:#fff;justify-content:center;align-items:center;display:flex;overflow:hidden}.product-card-image img{object-fit:contain;width:100%;height:100%;transition:transform .6s cubic-bezier(.22,1,.36,1)}.product-card:hover .product-card-image img{transform:scale(1.05)}.product-card-placeholder{text-align:center;width:100%;height:100%;font-family:var(--font-serif);flex-direction:column;justify-content:center;align-items:center;padding:20px;transition:background-color .3s;display:flex}.placeholder-not-found{background:var(--color-bg-alt);color:var(--color-text-sub)}.placeholder-invalid-link{color:#c08457;background:#fff5f0;border:1px inset #c084571a}.placeholder-main-text{letter-spacing:.05em;margin-bottom:4px;font-size:.9rem;font-weight:500}.placeholder-sub-text{opacity:.8;font-size:.7rem;font-family:var(--font-sans);letter-spacing:.02em}.placeholder-icon{opacity:.6;margin-bottom:8px;font-size:1.5rem}@keyframes pulse{0%{opacity:.6}50%{opacity:1}to{opacity:.6}}.product-card-body{flex-direction:column;flex-grow:1;padding:18px;display:flex}.product-card-category{letter-spacing:.15em;text-transform:uppercase;color:var(--color-accent);margin-bottom:6px;font-size:.6rem;font-weight:500}.product-card-name{font-size:.95rem;font-family:var(--font-serif);color:var(--color-text);margin-bottom:4px;font-weight:500;line-height:1.5}.product-card-brand{color:var(--color-text-sub);margin-bottom:8px;font-size:.75rem}.product-card-desc{color:var(--color-text-sub);-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;margin-bottom:12px;font-size:.8rem;line-height:1.6;display:-webkit-box;overflow:hidden}.product-card-affiliate{letter-spacing:.08em;border:1px solid var(--color-accent);color:var(--color-accent);transition:all .4s var(--easing-luxury);cursor:pointer;text-align:center;background:0 0;margin-top:auto;padding:6px 16px;font-size:.72rem;display:inline-block}.product-card-affiliate:hover{background:var(--color-accent);color:var(--color-white)}.category-tiles{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:16px;display:grid}.category-tile{border:1px solid var(--color-border);background:var(--color-white);text-align:center;justify-content:center;align-items:center;padding:28px 20px;transition:all .3s;display:flex}.category-tile:hover{border-color:var(--color-accent);box-shadow:0 4px 20px #2e261f0f}.category-tile-icon{color:var(--color-accent);justify-content:center;align-items:center;margin-bottom:8px;display:flex}.category-tile-name{font-family:var(--font-serif);letter-spacing:.06em;margin-bottom:4px;font-size:.95rem;font-weight:500}.category-tile-count{color:var(--color-text-sub);letter-spacing:.08em;font-size:.7rem}.product-detail{padding:48px 0 80px}.product-detail-grid{grid-template-columns:1fr 1fr;gap:48px;margin-bottom:64px;display:grid}.product-detail-image{border:1px solid var(--color-border);aspect-ratio:1;background-color:#fff;justify-content:center;align-items:center;display:flex;overflow:hidden}.product-detail-image img{object-fit:contain;width:100%;height:100%}.product-detail-image-placeholder{font-family:var(--font-serif);color:var(--color-text-sub);letter-spacing:.15em;font-size:1rem}.product-detail-info{flex-direction:column;justify-content:center;display:flex}.product-detail-category{letter-spacing:.2em;text-transform:uppercase;color:var(--color-accent);margin-bottom:12px;font-size:.65rem;font-weight:500}.product-detail-name{letter-spacing:.04em;margin-bottom:8px;font-size:1.8rem;line-height:1.4}.product-detail-brand{color:var(--color-text-sub);margin-bottom:24px;font-size:.95rem}.product-detail-desc-box{margin-bottom:32px}.product-detail-feel{background:var(--color-bg-alt);border-left:2px solid var(--color-accent);margin-top:24px;padding:20px;font-size:.88rem;line-height:1.8}.product-detail-specs{border-top:1px solid var(--color-border);margin-bottom:32px}.spec-item{border-bottom:1px solid var(--color-border);padding:12px 0;font-size:.85rem;display:flex}.spec-label{width:100px;color:var(--color-text-sub);flex-shrink:0}.spec-value{color:var(--color-text)}.product-detail-keywords{flex-wrap:wrap;gap:8px;margin-bottom:32px;display:flex}.product-detail-keyword{border:1px solid var(--color-border);color:var(--color-text-sub);letter-spacing:.06em;padding:4px 12px;font-size:.7rem}.product-detail-cta{letter-spacing:.1em;border:1px solid var(--color-text);background:var(--color-text);color:var(--color-bg);text-align:center;font-size:.85rem;font-family:var(--font-sans);align-self:flex-start;padding:14px 40px;transition:all .3s;display:inline-block}.product-detail-cta:hover{color:var(--color-text);background:0 0}.breadcrumb{color:var(--color-text-sub);align-items:center;gap:8px;margin-bottom:32px;font-size:.75rem;display:flex}.breadcrumb a{color:var(--color-text-sub);transition:color .3s}.breadcrumb a:hover{color:var(--color-accent)}.breadcrumb-sep{color:var(--color-border)}.page-title{text-align:center;padding:56px 0 40px}.page-title h1{letter-spacing:.06em;margin-bottom:12px;font-size:1.8rem}.page-title p{color:var(--color-text-sub);font-size:.85rem}@media (max-width:768px){.article-grid{grid-template-columns:1fr;gap:24px}.product-grid{grid-template-columns:repeat(2,1fr);gap:16px}.hero h1{font-size:1.6rem}.article-hero-title{font-size:1.5rem}.article-lead{padding:24px}.product-block{padding:20px}.container-narrow{padding:0 16px}.featured-banner{grid-template-columns:1fr;min-height:auto}.featured-banner-content{text-align:center;order:2;padding:32px 24px}.featured-banner-title{font-size:1.3rem}.featured-banner-image{aspect-ratio:16/9;order:1;height:260px}.slider-dots{bottom:16px;left:50%;transform:translate(-50%)}.featured-banner-cta{align-self:center}.product-detail-grid{grid-template-columns:1fr;gap:32px}.product-detail-name{font-size:1.4rem}.category-tiles{grid-template-columns:repeat(2,1fr)}.site-header-inner{height:56px}.site-logo{font-size:1.1rem}}.mood-nav-section{text-align:center;padding:40px 0}.mood-nav-title{letter-spacing:.15em;color:var(--color-text-sub);text-transform:uppercase;margin-bottom:24px;font-size:.85rem}.mood-tags{flex-wrap:wrap;justify-content:center;gap:12px;display:flex}.mood-tag{background:var(--color-white);border:1px solid var(--color-border);letter-spacing:.05em;color:var(--color-text);transition:all .5s var(--easing-luxury);border-radius:40px;align-items:center;gap:10px;padding:10px 24px;font-size:.85rem;display:flex}.mood-tag:hover{border-color:var(--color-accent);color:var(--color-accent);transform:translateY(-2px);box-shadow:0 4px 15px #b89a7a1a}.mood-tag-icon{font-size:1rem}@media (max-width:768px){.mood-nav-section{padding:32px 0}.mood-tags{gap:8px;padding:0 16px}.mood-tag{padding:8px 18px;font-size:.8rem}}.diagnosis-banner{border:1px solid var(--color-border);color:var(--color-text);transition:all var(--transition-luxury);cursor:pointer;background:linear-gradient(135deg,#f5f0e8,#ede6da);border-radius:8px;justify-content:space-between;align-items:center;padding:18px 32px;text-decoration:none;display:flex}.diagnosis-banner:hover{background:linear-gradient(135deg,#ede6da,#e5dcce);transform:translateY(-1px);box-shadow:0 4px 16px #0000000f}.diagnosis-banner-text{font-family:var(--font-sans);letter-spacing:.04em;font-size:.9rem;font-weight:400}.diagnosis-banner-text strong{color:var(--color-accent);font-weight:500}.diagnosis-banner-arrow{color:var(--color-accent);font-size:1.1rem;transition:transform .3s}.diagnosis-banner:hover .diagnosis-banner-arrow{transform:translate(4px)}@media (max-width:768px){.diagnosis-banner{padding:14px 20px}.diagnosis-banner-text{font-size:.82rem}}.diagnosis-page{min-height:70vh;padding:60px 0 80px}.diagnosis-form-wrapper{max-width:480px;margin:0 auto}.diagnosis-form-header{text-align:center;margin-bottom:48px}.diagnosis-title{font-family:var(--font-serif);letter-spacing:.12em;color:var(--color-text);margin-bottom:12px;font-size:1.8rem;font-weight:400}.diagnosis-subtitle{color:var(--color-text);letter-spacing:.06em;margin-bottom:8px;font-size:.95rem}.diagnosis-desc{color:var(--color-text-sub);font-size:.82rem;line-height:1.8}.diagnosis-form{flex-direction:column;gap:28px;display:flex}.diagnosis-field{flex-direction:column;gap:8px;display:flex}.diagnosis-label{letter-spacing:.06em;color:var(--color-text);font-size:.82rem;font-weight:500}.diagnosis-label .required{color:#c4756e;font-size:.75rem}.diagnosis-label .optional{color:var(--color-text-sub);font-size:.72rem;font-weight:400}.diagnosis-input{border:1px solid var(--color-border);font-size:.9rem;font-family:var(--font-sans);background:var(--color-white);color:var(--color-text);border-radius:6px;outline:none;padding:12px 16px;transition:border-color .3s}.diagnosis-input:focus{border-color:var(--color-accent)}.diagnosis-input::placeholder{color:#c4b8aa}.diagnosis-birthday-row{grid-template-columns:1.2fr 1fr 1fr;gap:8px;display:grid}.diagnosis-select{border:1px solid var(--color-border);font-size:.88rem;font-family:var(--font-sans);background:var(--color-white);color:var(--color-text);cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%238C7B6B' stroke-width='1.5' fill='none'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;border-radius:6px;outline:none;padding:12px}.diagnosis-select:focus{border-color:var(--color-accent)}.diagnosis-gender-row{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.diagnosis-gender-btn{border:1px solid var(--color-border);background:var(--color-white);font-size:.85rem;font-family:var(--font-sans);color:var(--color-text-sub);cursor:pointer;border-radius:6px;padding:10px 0;transition:all .3s}.diagnosis-gender-btn:hover{border-color:var(--color-accent);color:var(--color-text)}.diagnosis-gender-btn.active{border-color:var(--color-accent);background:var(--color-accent);color:var(--color-white)}.diagnosis-submit-btn{background:var(--color-accent);color:var(--color-white);font-size:.95rem;font-family:var(--font-sans);letter-spacing:.1em;cursor:pointer;border:none;border-radius:6px;margin-top:12px;padding:16px 0;font-weight:500;transition:background .3s}.diagnosis-submit-btn:hover:not(:disabled){background:var(--color-accent-hover)}.diagnosis-submit-btn:disabled{opacity:.4;cursor:not-allowed}.diagnosis-loading{justify-content:center;align-items:center;min-height:50vh;display:flex}.diagnosis-loading-inner{text-align:center}.diagnosis-particles{width:140px;height:140px;margin:0 auto 32px;position:relative}.diagnosis-particle{background:var(--color-accent);border-radius:50%;width:8px;height:8px;margin:-4px 0 0 -4px;position:absolute;top:50%;left:50%}.diagnosis-particle-center{background:var(--color-accent);border-radius:50%;width:24px;height:24px;margin:-12px 0 0 -12px;position:absolute;top:50%;left:50%}.diagnosis-loading-text{font-family:var(--font-serif);color:var(--color-text-sub);letter-spacing:.06em;font-size:.95rem}.diagnosis-result{max-width:640px;margin:0 auto}.diagnosis-result-header{border-radius:12px;margin-bottom:56px;position:relative;overflow:hidden}.diagnosis-hero-image{aspect-ratio:4/3;width:100%;position:relative;overflow:hidden}.diagnosis-hero-image img{object-fit:cover;width:100%;height:100%}.diagnosis-hero-overlay{background:linear-gradient(#0000000d 0%,#00000026 50%,#000000a6 100%);position:absolute;inset:0}.diagnosis-hero-content{text-align:center;color:#fff;padding:32px 28px;position:absolute;bottom:0;left:0;right:0}.diagnosis-result-label{color:#ffffffd9;letter-spacing:.06em;margin-bottom:12px;font-size:.82rem}.diagnosis-result-typename{font-family:var(--font-serif);letter-spacing:.08em;color:#fff;text-shadow:0 2px 12px #0000004d;margin-bottom:10px;font-size:2rem;font-weight:500}.diagnosis-result-zodiac{color:#ffffffbf;letter-spacing:.12em;font-size:.78rem}.diagnosis-section-image{border-radius:10px;max-height:280px;margin-bottom:24px;overflow:hidden}.diagnosis-section-image img{object-fit:cover;width:100%;height:100%;display:block}.diagnosis-section{border-bottom:1px solid var(--color-border);margin-bottom:56px;padding-bottom:56px}.diagnosis-section-title{font-family:var(--font-serif);letter-spacing:.2em;text-transform:uppercase;color:var(--color-accent);margin-bottom:24px;font-size:.82rem;font-weight:400}.diagnosis-personality-catch{font-family:var(--font-serif);margin-bottom:16px;font-size:1.15rem;font-weight:500;line-height:1.6}.diagnosis-personality-desc{color:var(--color-text);margin-bottom:28px;font-size:.88rem;font-weight:300;line-height:2}.diagnosis-strengths{background:var(--color-bg-alt);border-radius:8px;margin-bottom:20px;padding:20px 24px}.diagnosis-strengths-label,.diagnosis-charm-label{letter-spacing:.08em;color:var(--color-accent);margin-bottom:10px;font-size:.78rem;font-weight:500}.diagnosis-strengths ul{margin:0;padding:0;list-style:none}.diagnosis-strengths li{padding-left:16px;font-size:.88rem;font-weight:300;line-height:1.8;position:relative}.diagnosis-strengths li:before{content:"·";color:var(--color-accent);font-weight:700;position:absolute;left:0}.diagnosis-charm{background:var(--color-bg-alt);border-radius:8px;padding:20px 24px}.diagnosis-charm p:last-child{font-size:.88rem;font-weight:300;line-height:1.9}.diagnosis-scent-label{color:var(--color-text-sub);margin-bottom:8px;font-size:.88rem}.diagnosis-scent-family{font-family:var(--font-serif);margin-bottom:16px;font-size:1.1rem;font-weight:500}.diagnosis-scent-desc{margin-bottom:20px;font-size:.88rem;font-weight:300;line-height:2}.diagnosis-scent-keywords{flex-wrap:wrap;gap:8px;margin-bottom:24px;display:flex}.diagnosis-keyword-tag{background:var(--color-bg-alt);border:1px solid var(--color-border);color:var(--color-text-sub);letter-spacing:.04em;border-radius:20px;padding:6px 14px;font-size:.78rem}.diagnosis-scent-meta{flex-direction:column;gap:8px;display:flex}.diagnosis-scent-meta>div{gap:16px;font-size:.82rem;display:flex}.meta-label{color:var(--color-text-sub);min-width:140px}.diagnosis-items-desc{margin-bottom:24px;font-size:.88rem;font-weight:300;line-height:1.9}.diagnosis-products-grid{grid-template-columns:repeat(3,1fr);gap:16px;display:grid}.diagnosis-product-card{color:var(--color-text);border:1px solid var(--color-border);border-radius:8px;text-decoration:none;transition:all .3s;display:block;overflow:hidden}.diagnosis-product-card:hover{transform:translateY(-2px);box-shadow:0 4px 16px #0000000f}.diagnosis-product-image{aspect-ratio:1;background:var(--color-bg-alt);overflow:hidden}.diagnosis-product-image img{object-fit:cover;width:100%;height:100%}.diagnosis-product-placeholder{background:var(--color-bg-alt);justify-content:center;align-items:center;width:100%;height:100%;display:flex}.diagnosis-product-info{padding:12px}.diagnosis-product-brand{color:var(--color-text-sub);letter-spacing:.06em;margin-bottom:4px;font-size:.68rem}.diagnosis-product-name{margin-bottom:6px;font-size:.78rem;font-weight:400;line-height:1.5}.diagnosis-product-price{color:var(--color-accent);font-size:.75rem}.diagnosis-fortune-section{border:none;border-bottom:1px solid var(--color-border);background:linear-gradient(135deg,#b89a7a0f 0%,#b89a7a05 100%);border-radius:12px;padding:32px 28px}.diagnosis-fortune-grid{flex-direction:column;gap:20px;display:flex}.diagnosis-fortune-item{background:var(--color-white);border:1px solid var(--color-border);border-radius:10px;padding:20px 24px}.fortune-label{color:var(--color-text-sub);letter-spacing:.08em;margin-bottom:10px;font-size:.72rem;font-weight:500;display:block}.fortune-color-display{align-items:center;gap:12px;display:flex}.fortune-color-swatch{border:2px solid var(--color-border);border-radius:50%;flex-shrink:0;width:28px;height:28px;display:inline-block}.fortune-color-name{font-family:var(--font-serif);color:var(--color-text);font-size:.95rem;font-weight:500}.fortune-value{font-family:var(--font-serif);color:var(--color-text);font-size:.95rem;font-weight:500;display:block}.diagnosis-fortune-advice{background:var(--color-bg-alt);border:none}.fortune-advice-text{color:var(--color-text);font-size:.88rem;font-weight:300;line-height:1.9}.diagnosis-share-section{background:var(--color-bg-alt);border-radius:12px;margin-bottom:56px;padding:32px 24px}.diagnosis-share{text-align:center}.diagnosis-share-title{color:var(--color-text-sub);letter-spacing:.06em;margin-bottom:16px;font-size:.85rem;font-weight:400}.diagnosis-share-buttons{justify-content:center;gap:12px;display:flex}.diagnosis-share-btn{font-size:.82rem;font-family:var(--font-sans);cursor:pointer;color:#fff;letter-spacing:.04em;border:none;border-radius:8px;padding:12px 28px;font-weight:400;transition:all .3s}.diagnosis-share-btn:hover{opacity:.85;transform:translateY(-1px)}.diagnosis-share-x{background:#000}.diagnosis-share-line{background:#06c755}.diagnosis-related-articles{flex-direction:column;gap:12px;display:flex}.diagnosis-related-link{border:1px solid var(--color-border);color:var(--color-text);border-radius:6px;padding:16px 20px;font-size:.88rem;font-weight:300;line-height:1.6;text-decoration:none;transition:all .3s;display:block}.diagnosis-related-link:hover{border-color:var(--color-accent);background:var(--color-bg-alt)}.diagnosis-retry{text-align:center;padding:20px 0 48px}.diagnosis-retry-btn{border:1px solid var(--color-border);color:var(--color-text-sub);font-size:.85rem;font-family:var(--font-sans);cursor:pointer;letter-spacing:.06em;background:0 0;border-radius:6px;padding:14px 40px;transition:all .3s}.diagnosis-retry-btn:hover{border-color:var(--color-accent);color:var(--color-accent)}@media (max-width:768px){.diagnosis-result-typename{font-size:1.5rem}.diagnosis-hero-content{padding:24px 20px}.diagnosis-section-image{max-height:200px}.diagnosis-products-grid{grid-template-columns:repeat(3,1fr);gap:10px}.diagnosis-product-info{padding:8px}.diagnosis-product-name{font-size:.72rem}.diagnosis-fortune-section{padding:24px 16px}.diagnosis-fortune-item{padding:16px 18px}.diagnosis-share-section{padding:24px 16px}.diagnosis-share-buttons{flex-direction:column;align-items:center}.diagnosis-share-btn{width:100%;max-width:280px}}.rakuten-grid{grid-template-columns:repeat(3,1fr);gap:24px;margin:32px 0;display:grid}.rakuten-grid-error{text-align:center;color:var(--color-text-sub);margin:24px 0;padding:20px;font-size:.85rem}.rakuten-card{background:var(--color-white);border:1px solid var(--color-border);transition:box-shadow .3s var(--easing-luxury);border-radius:12px;flex-direction:column;display:flex;overflow:hidden}.rakuten-card:hover{box-shadow:0 8px 24px #00000014}.rakuten-card-image-wrap{aspect-ratio:1;background:#f8f5f0;justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.rakuten-card-image{object-fit:contain;width:100%;height:100%}.rakuten-card-placeholder{background:var(--color-bg-alt);justify-content:center;align-items:center;width:100%;height:100%;display:flex}.rakuten-card-body{flex-direction:column;flex:1;gap:8px;padding:16px;display:flex}.rakuten-card-name{font-family:var(--font-sans);color:var(--color-text);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:.85rem;font-weight:400;line-height:1.5;display:-webkit-box;overflow:hidden}.rakuten-card-price{font-family:var(--font-sans);color:#c45c3c;font-size:1.15rem;font-weight:600}.rakuten-card-yen{margin-right:1px;font-size:.85rem;font-weight:400}.rakuten-card-shop{color:var(--color-text-sub);white-space:nowrap;text-overflow:ellipsis;font-size:.72rem;overflow:hidden}.rakuten-card-review{align-items:center;gap:4px;font-size:.75rem;display:flex}.rakuten-card-stars{color:#e6a817;letter-spacing:-1px}.rakuten-card-rating{color:var(--color-text);font-weight:500}.rakuten-card-count{color:var(--color-text-sub)}.rakuten-card-btn{text-align:center;color:#fff;letter-spacing:.04em;background:#1a1a1a;border-radius:6px;margin-top:auto;padding:10px 16px;font-size:.8rem;font-weight:500;transition:background .25s;display:block}.rakuten-card-btn:hover{background:#333}.rakuten-card-note{color:var(--color-text-sub);padding:8px 16px 12px;font-size:.65rem;line-height:1.4}.rakuten-card-skeleton .rakuten-card-body{pointer-events:none}.skeleton-pulse{background:linear-gradient(90deg,var(--color-bg-alt)25%,#ece7df 50%,var(--color-bg-alt)75%);background-size:200% 100%;border-radius:4px;animation:1.5s ease-in-out infinite skeleton-shimmer}@keyframes skeleton-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.skeleton-image{border-radius:0;width:100%;height:100%}.skeleton-text{height:14px}.skeleton-text-long{width:90%}.skeleton-text-short{width:40%;height:18px}.skeleton-text-medium{width:60%}.skeleton-btn{border-radius:6px;width:100%;height:40px;margin-top:auto}@media (max-width:1024px){.rakuten-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:600px){.rakuten-grid{grid-template-columns:1fr;gap:16px}.rakuten-card-body{padding:12px}}
