:root{--color-primary: #1a1a1a;--color-secondary: #c5a059;--color-bg: #fdfdfd;--color-text: #333333;--color-text-light: #666666;--color-accent: #8c7b75;--color-white: #ffffff;--font-heading: "Noto Serif JP", serif;--font-body: "Noto Sans JP", sans-serif;--spacing-xs: .5rem;--spacing-sm: 1rem;--spacing-md: 2rem;--spacing-lg: 4rem;--spacing-xl: 8rem;--container-width: 1200px;--header-height: 80px}*{box-sizing:border-box;margin:0;padding:0}@keyframes bgScroll{0%{background-position:0 0}to{background-position:24px 24px}}body{font-family:var(--font-body);background-color:var(--color-bg);background-image:radial-gradient(rgba(0,0,0,.03) 1px,transparent 1px);background-size:24px 24px;animation:bgScroll 60s linear infinite;color:var(--color-text);line-height:1.8;-webkit-font-smoothing:antialiased}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);font-weight:500;line-height:1.4;color:var(--color-primary)}a{text-decoration:none;color:inherit;transition:color .3s ease}img{max-width:100%;display:block}ul{list-style:none}.container{max-width:var(--container-width);margin:0 auto;padding:0 var(--spacing-md)}.section{padding:var(--spacing-xl) 0}.section-title{font-size:2.5rem;text-align:center;margin-bottom:var(--spacing-lg);position:relative;letter-spacing:.1em}.section-title:after{content:"";display:block;width:60px;height:2px;background-color:var(--color-secondary);margin:1rem auto 0}.btn{display:inline-block;padding:1rem 2.5rem;border:1px solid var(--color-primary);background-color:transparent;color:var(--color-primary);font-family:var(--font-heading);font-size:1rem;cursor:pointer;transition:all .3s ease;letter-spacing:.1em}.btn:hover{background-color:var(--color-primary);color:var(--color-white)}.btn-primary{background-color:var(--color-primary);color:var(--color-white);border-color:var(--color-primary)}.btn-primary:hover{background-color:var(--color-secondary);border-color:var(--color-secondary)}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.fade-in{animation:fadeIn 1s ease-out forwards}.header{position:fixed;top:0;left:0;width:100%;height:var(--header-height);background-color:#fffffff2;display:flex;align-items:center;justify-content:space-between;padding:0 var(--spacing-md);z-index:1000;box-shadow:0 2px 10px #0000000d;transition:all .3s ease}.header-logo{z-index:1001}.header-logo a{display:flex;align-items:center;text-decoration:none}.logo-text{display:flex;flex-direction:column;align-items:flex-start;gap:.15rem}.logo-main{font-family:var(--font-heading);font-size:1.4rem;font-weight:600;letter-spacing:.15em;color:var(--color-primary);line-height:1}.logo-sub{font-family:var(--font-body);font-size:.7rem;letter-spacing:.2em;color:var(--color-secondary);font-weight:400;line-height:1}.hamburger{display:none;flex-direction:column;justify-content:space-around;width:30px;height:24px;background:transparent;border:none;cursor:pointer;padding:0;z-index:1001}.hamburger span{width:100%;height:3px;background-color:var(--color-primary);transition:all .3s ease;border-radius:2px}.hamburger.active span:nth-child(1){transform:rotate(45deg) translate(8px,8px)}.hamburger.active span:nth-child(2){opacity:0}.hamburger.active span:nth-child(3){transform:rotate(-45deg) translate(7px,-7px)}.header-nav{display:block}.nav-list{display:flex;gap:2rem}.nav-item a{font-size:.9rem;text-transform:uppercase;letter-spacing:.1em;color:var(--color-text);position:relative}.nav-item a:after{content:"";position:absolute;bottom:-5px;left:0;width:0;height:1px;background-color:var(--color-secondary);transition:width .3s ease}.nav-item a:hover{color:var(--color-secondary)}.nav-item a:hover:after{width:100%}@media(max-width:768px){.hamburger{display:flex}.logo-main{font-size:1.1rem}.logo-sub{font-size:.6rem}.header-nav{position:fixed;top:0;right:-100%;width:70%;max-width:300px;height:100vh;background-color:#fffffffa;box-shadow:-2px 0 10px #0000001a;transition:right .3s ease;padding-top:100px}.header-nav.active{right:0}.nav-list{flex-direction:column;gap:0;padding:0 var(--spacing-md)}.nav-item{border-bottom:1px solid #eee}.nav-item a{display:block;padding:1.2rem 0;font-size:1rem}.nav-item a:after{display:none}}@media(max-width:1024px)and (min-width:769px){.logo-main{font-size:1.2rem}.nav-list{gap:1.2rem}.nav-item a{font-size:.85rem}}.hero{height:100vh;width:100%;background-color:#1a1a1a;position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center;text-align:center;color:var(--color-white);margin-top:0}.hero-bg-slide{position:absolute;top:0;left:0;width:100%;height:100%;background-size:cover;background-position:center;transition:opacity 2s ease-in-out}.hero-content{max-width:800px;padding:0 20px}.hero-title{font-size:3.5rem;font-weight:400;margin-bottom:1.5rem;letter-spacing:.2em;color:var(--color-white);text-shadow:0 2px 10px rgba(0,0,0,.3)}.hero-subtitle{font-size:1.2rem;font-family:var(--font-body);letter-spacing:.1em;margin-bottom:3rem;opacity:.9}@media(max-width:768px){.hero-title{font-size:2.5rem}}.services-section{background-color:var(--color-white)}.service-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:4rem;margin-bottom:6rem}.service-item{display:flex;flex-direction:column;align-items:center;text-align:center}.service-image{width:100%;height:400px;object-fit:cover;margin-bottom:2rem;border-radius:4px;box-shadow:0 10px 30px #0000000d;transition:transform .5s ease}.service-item:hover .service-image{transform:scale(1.02)}.service-title{font-size:1.8rem;margin-bottom:1rem;color:var(--color-primary)}.service-desc{font-size:1rem;color:var(--color-text-light);max-width:400px;margin-bottom:1.5rem}.full-width-service{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:4rem;margin-bottom:6rem}.full-width-service.reverse{direction:rtl}.full-width-service.reverse .service-text{direction:ltr}.service-text{padding:2rem}.highlight-title{font-size:2.5rem;margin-bottom:1.5rem;color:var(--color-primary)}.highlight-desc{font-size:1.1rem;line-height:2;margin-bottom:2rem;color:var(--color-text)}@media(max-width:900px){.service-grid,.full-width-service{grid-template-columns:1fr;gap:2rem}.service-image{height:300px}.full-width-service.reverse{direction:ltr}}.shops-section{background-color:#f5f5f5}.shops-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:2rem}.shop-card{background-color:var(--color-white);padding:2rem;border-radius:4px;box-shadow:0 5px 15px #00000008;transition:transform .3s ease}.shop-card:hover{transform:translateY(-5px)}.shop-name{font-size:1.4rem;margin-bottom:1rem;color:var(--color-primary);border-bottom:1px solid var(--color-secondary);padding-bottom:.5rem;display:inline-block}.shop-info{font-size:.95rem;color:var(--color-text);line-height:1.8;margin-bottom:1.5rem}.shop-link{font-size:.9rem;color:var(--color-secondary);font-weight:500;text-decoration:underline}.product-filter{display:flex;justify-content:center;gap:1rem;margin-bottom:3rem;flex-wrap:wrap}.filter-btn{padding:.5rem 1.5rem;border:1px solid #ccc;background:transparent;border-radius:4px;cursor:pointer;font-family:var(--font-heading);transition:all .3s ease}.filter-btn.active,.filter-btn:hover{background-color:var(--color-primary);color:var(--color-white);border-color:var(--color-primary)}.product-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:2rem}.product-card{background:#fff;border:1px solid #f0f0f0;border-radius:8px;overflow:hidden;transition:transform .3s ease,box-shadow .3s ease}.product-card:hover{transform:translateY(-5px);box-shadow:0 10px 20px #0000000d}.product-image-wrapper{width:100%;height:280px;background-color:#f9f9f9;position:relative;display:flex;align-items:center;justify-content:center}.product-image-wrapper img{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.product-card:hover .product-image-wrapper img{transform:scale(1.05)}.no-image{color:#ccc;font-size:.9rem}.sold-badge{position:absolute;top:10px;right:10px;background-color:#e53e3e;color:#fff;font-size:.8rem;font-weight:700;padding:4px 8px;border-radius:4px}.product-info{padding:1.5rem}.product-brand{font-size:.8rem;color:#999;margin-bottom:.5rem;text-transform:uppercase;letter-spacing:.05em}.product-title{font-size:1.1rem;font-weight:500;margin-bottom:.5rem;color:var(--color-text);line-height:1.4}.product-price{font-size:1rem;font-weight:700;color:var(--color-secondary);margin-top:.5rem}.new-arrivals-section .section-title{margin-bottom:2rem!important;font-size:2rem!important}.new-arrivals-section .product-grid{grid-template-columns:repeat(4,1fr)!important;gap:1.5rem!important;margin-bottom:2rem}.new-arrivals-section .product-image-wrapper{height:180px!important}.new-arrivals-section .product-info{padding:1rem}.new-arrivals-section .product-title{font-size:.95rem;margin-bottom:.25rem}.new-arrivals-section .product-brand{font-size:.7rem;margin-bottom:.25rem}.new-arrivals-section .product-price{font-size:.9rem}@media(max-width:900px){.new-arrivals-section .product-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:480px){.new-arrivals-section .product-grid{grid-template-columns:repeat(2,1fr);gap:.8rem}.new-arrivals-section .product-image-wrapper{height:140px}.new-arrivals-section .product-info{padding:.8rem}}.recent-news-section{background-color:var(--color-bg);padding:2rem 0!important}.recent-news-section .section-title{margin-bottom:1.5rem!important;font-size:1.8rem!important;text-align:center}.news-list{max-width:800px;margin:0 auto;border-top:1px solid #eee}.news-item{display:flex;align-items:center;justify-content:flex-start;padding:1rem!important;border-bottom:1px solid #eee;text-decoration:none;color:var(--color-text);transition:background-color .2s ease}.news-item:hover{background-color:#f9f9f9}.news-date{font-size:.85rem!important;color:#888;width:120px!important;flex-shrink:0;text-align:left;margin-right:0!important;font-family:var(--font-heading);letter-spacing:.05em}.news-title{font-size:1rem!important;font-weight:500;line-height:1.5;text-align:left!important;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.news-arrow{font-size:1rem;color:var(--color-secondary);margin-left:1rem;opacity:0;transform:translate(-5px);transition:all .3s ease}.news-item:hover .news-arrow{opacity:1;transform:translate(0)}@media(max-width:600px){.news-date{width:100px!important;font-size:.8rem!important}.news-title{font-size:.95rem!important;white-space:normal}}.footer{background-color:var(--color-primary);color:var(--color-white);padding:4rem 0 2rem;text-align:center}.footer-logo{margin-bottom:2rem;display:flex;justify-content:center;align-items:center}.footer-logo-text{display:flex;flex-direction:column;align-items:center;gap:.3rem}.footer-logo-main{font-family:var(--font-heading);font-size:2rem;font-weight:600;letter-spacing:.2em;color:var(--color-white);line-height:1}.footer-logo-sub{font-family:var(--font-body);font-size:.9rem;letter-spacing:.3em;color:var(--color-secondary);font-weight:400;line-height:1}.footer-nav{margin-bottom:3rem}.footer-nav ul{display:flex;justify-content:center;gap:2rem;flex-wrap:wrap}.footer-nav a{color:#ccc;font-size:.9rem}.footer-nav a:hover{color:var(--color-white)}.copyright{font-size:.8rem;color:#666;border-top:1px solid #333;padding-top:2rem;margin-top:2rem}@media(max-width:768px){.footer-logo-main{font-size:1.5rem}.footer-logo-sub{font-size:.75rem}}.sticky-footer{position:fixed;bottom:0;left:0;width:100%;height:64px;background-color:#fff;box-shadow:0 -4px 12px #00000014;display:none;justify-content:space-evenly;align-items:center;z-index:9999;border-top:1px solid #eee}.sticky-item{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;text-decoration:none;color:#444;font-size:.7rem;height:100%;transition:background-color .2s;font-family:var(--font-heading);letter-spacing:.05em}.sticky-item:active{background-color:#f0f0f0}.sticky-icon{font-size:1.4rem;margin-bottom:2px;line-height:1}.sticky-highlight{background-color:var(--color-secondary);color:#fff!important;position:relative;top:-10px;height:74px;border-radius:50% 50% 0 0;margin:0 10px;box-shadow:0 -2px 8px #00000026}.sticky-highlight:active{background-color:#b08d3e}@media(max-width:768px){.sticky-footer{display:flex}body{padding-bottom:64px}}.page-container{padding-top:var(--header-height);min-height:100vh}.page-header{background-color:#f5f5f5;padding:4rem 0;text-align:center;margin-bottom:4rem}.page-title{font-size:2.5rem;margin-bottom:1rem;letter-spacing:.1em}.page-subtitle{color:var(--color-text-light);font-size:1rem}.page-section{margin-bottom:6rem}.text-center{text-align:center}.mb-lg{margin-bottom:3rem}.process-steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:2rem;margin-top:3rem}.step-item{text-align:center;padding:2rem;background:#fff;border:1px solid #eee}.step-number{font-family:var(--font-heading);font-size:3rem;color:var(--color-secondary);opacity:.3;line-height:1;margin-bottom:1rem}.step-item h3{font-size:1.2rem;margin-bottom:1rem}.step-item p{font-size:.9rem;color:var(--color-text-light)}.gallery-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1rem}.gallery-item{height:300px;background-color:#eee;display:flex;align-items:center;justify-content:center;color:#999}.news-page{padding-top:140px;padding-bottom:var(--spacing-xl);padding-left:var(--spacing-md);padding-right:var(--spacing-md)}.news-container{max-width:var(--container-width);margin:0 auto;padding:0 var(--spacing-md)}.news-title{font-family:var(--font-heading);font-size:2.5rem;color:var(--color-primary);text-align:center;margin-bottom:var(--spacing-lg)}.loading-message,.error-message{text-align:center;padding:2rem;font-size:1.1rem}.loading-message{color:var(--color-text-light)}.error-message{color:#d32f2f}.news-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:2rem}.news-card{background-color:var(--color-white);border:1px solid #e5e5e5;border-radius:8px;overflow:hidden;transition:transform .3s ease,box-shadow .3s ease;display:flex;flex-direction:column;height:100%}.news-card:hover{transform:translateY(-4px);box-shadow:0 10px 20px #0000000d}.news-thumbnail{aspect-ratio:16 / 9;overflow:hidden}.news-thumbnail img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease}.news-card:hover .news-thumbnail img{transform:scale(1.05)}.news-content{padding:1.5rem;flex-grow:1;display:flex;flex-direction:column}.news-date{font-size:.875rem;color:var(--color-text-light);margin-bottom:.5rem}.news-card-title{font-size:1.25rem;font-weight:500;color:var(--color-text);margin-bottom:1rem;line-height:1.4}.news-category{display:inline-block;font-size:.75rem;padding:.25rem .75rem;background-color:#f5f5f5;color:var(--color-text-light);border-radius:999px;margin-top:auto;align-self:flex-start}.news-detail-page{padding-top:140px;padding-bottom:var(--spacing-xl);padding-left:var(--spacing-md);padding-right:var(--spacing-md)}.news-detail-container{max-width:800px;margin:0 auto;padding:0 var(--spacing-md)}.news-back-link{display:inline-block;margin-bottom:2rem;color:var(--color-text-light);font-size:.9rem}.news-back-link:hover{color:var(--color-primary)}.article-header{margin-bottom:2rem;border-bottom:1px solid #eee;padding-bottom:2rem}.article-date{color:var(--color-text-light);margin-bottom:.5rem;font-size:.9rem}.article-title{font-size:2rem;margin-bottom:1rem;line-height:1.3;font-family:var(--font-heading);color:var(--color-primary)}.article-thumbnail{margin-bottom:2rem;border-radius:8px;overflow:hidden}.article-thumbnail img{width:100%;height:auto}.article-content{line-height:1.8;color:var(--color-text)}.article-content h2{font-size:1.5rem;margin-top:2rem;margin-bottom:1rem;padding-bottom:.5rem;border-bottom:1px solid #eee;font-family:var(--font-heading)}.article-content h3{font-size:1.25rem;margin-top:1.5rem;margin-bottom:.75rem;font-family:var(--font-heading)}.article-content p{margin-bottom:1.5rem}.article-content img{margin:2rem 0;border-radius:4px}.article-content ul{list-style:disc;padding-left:1.5rem;margin-bottom:1.5rem}.article-content ol{list-style:decimal;padding-left:1.5rem;margin-bottom:1.5rem}.article-content a{color:var(--color-secondary);text-decoration:underline}.article-content a:hover{color:var(--color-primary)}.product-detail-layout{display:flex;gap:3rem;align-items:flex-start;padding-bottom:4rem}.product-detail-image{flex:1;min-width:300px;background:#fafafa;border-radius:8px;overflow:hidden;position:relative}.product-detail-image img{width:100%;height:auto;display:block;object-fit:cover}.product-detail-info{flex:1;min-width:300px}.detail-brand{font-size:.9rem;color:#999;letter-spacing:.1em;margin-bottom:.5rem;text-transform:uppercase}.detail-title{font-size:2rem;font-family:var(--font-heading);font-weight:500;margin-bottom:1.5rem;line-height:1.3}.detail-price{font-size:1.5rem;color:var(--color-secondary);font-weight:700;margin-bottom:2rem;border-bottom:1px solid #eee;padding-bottom:1rem;display:block}.detail-content{margin-bottom:3rem;line-height:1.8;color:#444}.detail-meta{display:flex;gap:1rem;align-items:center;margin-top:2rem;padding-top:1rem;border-top:1px solid #eee;font-size:.85rem;color:#888}.detail-category-tag{background-color:#f0f0f0;padding:.2rem .8rem;border-radius:20px;text-transform:capitalize}.detail-cta{display:block;width:100%;text-align:center;background-color:var(--color-secondary);color:#fff;padding:1.2rem;border-radius:4px;margin-top:2rem;font-weight:700;text-decoration:none;transition:background-color .3s}.detail-cta:hover{background-color:#b08d3e;color:#fff}.sold-badge-large{position:absolute;top:20px;right:20px;background-color:#e53e3e;color:#fff;font-size:1rem;font-weight:700;padding:8px 16px;border-radius:4px;transform:rotate(15deg)}.back-link{display:inline-block;margin-bottom:2rem;color:#666;font-size:.9rem}.back-link:hover{color:var(--color-secondary)}@media(max-width:768px){.product-detail-layout{flex-direction:column}.detail-title{font-size:1.6rem}}
