:root{--color-primary: #002B5B;--color-secondary: #F4F4F4;--color-accent: #8E8E93;--color-text: #333333;--color-white: #FFFFFF;--color-border: #E0E0E0;--font-base: "Yu Gothic", "YuGothic", "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;--font-heading: "Yu Mincho", "YuMincho", "Hiragino Mincho ProN", serif;--spacing-unit: 8px;--container-width: 1200px}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-base);color:var(--color-text);line-height:1.6;background-color:var(--color-white);-webkit-font-smoothing:antialiased}a{color:var(--color-primary);text-decoration:none;transition:opacity .3s}a:hover{opacity:.7}ul{list-style:none}img{max-width:100%;height:auto;display:block}.container{max-width:var(--container-width);margin:0 auto;padding:0 20px}.text-center{text-align:center}.mt-1{margin-top:calc(var(--spacing-unit) * 1)}.mt-2{margin-top:calc(var(--spacing-unit) * 2)}.mt-4{margin-top:calc(var(--spacing-unit) * 4)}.mb-2{margin-bottom:calc(var(--spacing-unit) * 2)}.mb-4{margin-bottom:calc(var(--spacing-unit) * 4)}h1,h2,h3,h4{font-family:var(--font-heading);color:var(--color-primary);font-weight:400}.section-title{font-size:2rem;margin-bottom:2rem;text-align:center;position:relative;padding-bottom:1rem}.section-title:after{content:"";display:block;width:60px;height:2px;background-color:var(--color-primary);margin:1rem auto 0}.site-header{background-color:var(--color-white);border-bottom:1px solid var(--color-border);padding:1rem 0;position:sticky;top:0;z-index:100}.header-inner{display:flex;justify-content:space-between;align-items:center}.logo{font-family:var(--font-heading);font-size:1.5rem;font-weight:700;letter-spacing:.05em;color:var(--color-primary);z-index:101}.main-nav ul{display:flex;gap:2rem}.main-nav a{color:var(--color-text);font-size:.95rem;letter-spacing:.05em}.header-actions{display:flex;gap:1rem;z-index:101}.btn-icon{width:40px;height:40px;display:flex;align-items:center;justify-content:center;border:1px solid var(--color-border);border-radius:50%;color:var(--color-primary)}.nav-toggle{display:none;background:none;border:none;cursor:pointer;text-transform:uppercase;font-family:var(--font-base);font-size:.9rem;color:var(--color-primary);z-index:101}.site-footer{background-color:var(--color-primary);color:var(--color-white);padding:4rem 0 1rem;margin-top:4rem}.footer-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:2rem;margin-bottom:3rem}.footer-section h4{color:var(--color-white);font-size:1.1rem;margin-bottom:1.5rem;border-bottom:1px solid rgba(255,255,255,.2);padding-bottom:.5rem}.footer-links li{margin-bottom:.8rem}.footer-links a{color:#fffc;font-size:.9rem}.copyright{text-align:center;border-top:1px solid rgba(255,255,255,.1);padding-top:2rem;font-size:.8rem;color:#fff9}.breadcrumb{background-color:var(--color-secondary);padding:1rem 0;font-size:.9rem;margin-bottom:2rem}.breadcrumb-list{display:flex;gap:.5rem;flex-wrap:wrap}.breadcrumb-list li:after{content:">";color:var(--color-accent);margin-left:.5rem}.breadcrumb-list li:last-child:after{content:""}.breadcrumb-list a{color:var(--color-accent)}.breadcrumb-list li:last-child{color:var(--color-primary)}.btn{display:inline-block;padding:.8rem 2rem;background-color:var(--color-primary);color:var(--color-white);border:none;font-family:var(--font-base);font-size:1rem;cursor:pointer;text-align:center}.btn-secondary{background-color:transparent;border:1px solid var(--color-primary);color:var(--color-primary)}.btn-block{display:block;width:100%}.page-hero{background-color:var(--color-secondary);padding:4rem 0;text-align:center;margin-bottom:3rem}.page-hero h1{font-size:2.5rem;margin-bottom:1rem}.page-hero p{color:var(--color-accent)}@media screen and (max-width:768px){.section-title{font-size:1.75rem;margin-bottom:1.5rem}.nav-toggle{display:block}.main-nav{position:fixed;top:0;left:0;width:100%;height:100vh;background-color:#fffffffa;display:flex;align-items:center;justify-content:center;transform:translate(100%);transition:transform .3s ease-in-out;z-index:100}.main-nav.active{transform:translate(0)}.main-nav ul{flex-direction:column;align-items:center;gap:2rem}.main-nav a{font-size:1.25rem;font-weight:700}.header-inner{position:relative}.hero-section{height:60vh}.hero-content h1{font-size:2rem}.hero-content p{font-size:1rem}.features-grid,.footer-grid{grid-template-columns:1fr}.page-hero{padding:3rem 0}.page-hero h1{font-size:2rem}.site-footer{padding-top:3rem;margin-top:3rem}.concept-block{flex-direction:column;gap:2rem;margin-bottom:4rem}.concept-block-reverse{flex-direction:column}.products-grid,.ingredients-grid{grid-template-columns:1fr;gap:2rem}.safety-badges{gap:.5rem}.safety-badge{padding:.8rem 1rem;font-size:.9rem;flex:1 1 calc(50% - .5rem);text-align:center}}.concept-block{display:flex;gap:4rem;align-items:center;margin-bottom:6rem;flex-wrap:wrap}.concept-block-reverse{flex-direction:row-reverse}.concept-image,.concept-text{flex:1;min-width:300px}.concept-image img{width:100%;height:auto;border-radius:4px}.products-filter{display:flex;justify-content:flex-end;margin-bottom:2rem}.products-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:3rem}.product-item{text-align:center}.product-item a{display:block;color:inherit;text-decoration:none}.product-image-container{height:300px;margin-bottom:1rem;overflow:hidden}.product-image-container img{width:100%;height:100%;object-fit:cover;transition:transform .3s}.product-item:hover .product-image-container img{transform:scale(1.05)}.product-price{font-weight:700;font-size:1.1rem;color:var(--color-primary)}.ingredients-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:3rem;margin-top:3rem}.ingredient-image{margin-bottom:1rem;width:100%;height:250px;object-fit:cover}.safety-section{background-color:var(--color-secondary);padding:4rem 2rem;border-radius:8px}.safety-badges{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap}.safety-badge{background:#fff;padding:1rem 2rem;border-radius:4px;border:1px solid var(--color-border);color:var(--color-primary)}.intro-container{max-width:700px;margin:0 auto}.intro-text{margin-bottom:calc(var(--spacing-unit) * 4)}.section-bg{background-color:var(--color-secondary);padding:4rem 2rem}.feature-card-image{height:200px;background:#eee;margin-bottom:1rem;display:flex;align-items:center;justify-content:center}.feature-card-desc{font-size:.9rem;color:#666;margin-bottom:calc(var(--spacing-unit) * 4)}
