@import "https://fonts.googleapis.com/css2?family=Noto+Serif+JP:wght@400;600;700&family=Noto+Sans+JP:wght@400;500&display=swap";
*{box-sizing:border-box;margin:0;padding:0}:root{--primary:#424242;--accent:#757575;--accent-light:silver;--light:#fafafa;--bg:#f0f0f0;--dark:#212121;--gray:#616161;--border:#d9d9d9;--serif:"Noto Serif JP", "Hiragino Mincho ProN", "Yu Mincho", serif;--sans:"Noto Sans JP", "Hiragino Kaku Gothic ProN", "Meiryo", sans-serif}.skip-link{background:var(--accent);color:#fff;z-index:999;border-radius:0 0 4px 4px;padding:8px 16px;font-size:.9rem;text-decoration:none;transition:top .2s;position:absolute;top:-100px;left:16px}.skip-link:focus{top:0}:focus-visible{outline:3px solid var(--accent-light);outline-offset:2px}html{scroll-behavior:smooth;font-size:20px}body{font-family:var(--sans);background:var(--light);color:var(--dark);line-height:1.8}nav{background:var(--primary);z-index:100;width:100%;position:fixed;top:0;box-shadow:0 2px 8px #0000004d}.nav-top{justify-content:space-between;align-items:center;padding:12px 16px;display:flex}.nav-logo{font-family:var(--serif);color:var(--accent-light);letter-spacing:.08em;font-size:1.1rem;font-weight:700;text-decoration:none}.nav-info{color:#ffffffd9;text-align:right;font-size:.8rem;line-height:1.6}.nav-links{-webkit-overflow-scrolling:touch;border-top:1px solid #ffffff26;list-style:none;display:flex;overflow-x:auto}.nav-links::-webkit-scrollbar{display:none}.nav-links li{flex-shrink:0}.nav-links a{color:#ffffffe6;letter-spacing:.05em;white-space:nowrap;padding:11px 16px;font-size:.82rem;text-decoration:none;transition:background .2s;display:block}.nav-links a:hover,.nav-links a:active,.nav-links a:focus-visible{background:var(--accent);color:#fff;outline:none}.hero{background:url(/img/shop.jpg) 50% 40%/cover;min-height:200px;margin-top:88px;position:relative;overflow:hidden}.hero-overlay{background:linear-gradient(90deg,#141414cc 0%,#14141466 70%,#0000 100%);align-items:center;gap:16px;min-height:200px;padding:24px 20px;display:flex;position:absolute;inset:0}.hero-title{font-family:var(--serif);color:#fff;letter-spacing:.12em;margin-bottom:6px;font-size:1.5rem;font-weight:700;line-height:1.3}.hero-tel{color:#fffc;letter-spacing:.05em;font-size:.75rem}section{padding:48px 16px;scroll-margin-top:90px}.section-header{border-left:4px solid var(--accent);margin-bottom:28px;padding-left:14px}.section-header h2{font-family:var(--serif);color:var(--primary);letter-spacing:.12em;font-size:1.35rem;font-weight:700}.inner{max-width:900px;margin:0 auto}#products{background:var(--bg)}.product-list{flex-direction:column;gap:20px;display:flex}.product-item{background:#fff;border-radius:6px;grid-template-columns:1fr;transition:box-shadow .2s;display:grid;overflow:hidden;box-shadow:0 1px 6px #00000012}.product-item:active{box-shadow:0 4px 14px #0000001f}.product-img{background:#e8e8e8;overflow:hidden}.product-img img{object-fit:cover;object-position:center;width:100%;height:220px;display:block}.product-body{padding:18px 16px}.product-name{font-family:var(--serif);color:var(--primary);border-left:3px solid var(--accent);margin-bottom:10px;padding-left:8px;font-size:1rem;font-weight:600}.product-desc{color:var(--gray);margin-bottom:12px;font-size:.85rem;line-height:1.8}.product-meta{color:var(--gray);font-size:.8rem;line-height:1.7}.product-price{color:var(--primary);font-weight:700}.company-name{align-items:center;gap:10px;display:inline-flex}.company-name img{object-fit:contain;border-radius:50%;flex-shrink:0;width:36px;height:36px}.instagram-note{color:var(--gray);margin-bottom:4px;font-size:.88rem}.instagram-note a{color:#c13584;font-weight:500;text-decoration:none}.instagram-note a:hover{text-decoration:underline}.payment-note{color:var(--gray);margin-bottom:20px;font-size:.88rem}#access{background:#fff}.info-table{border-collapse:collapse;width:100%;font-size:.88rem}.info-table tr{border-bottom:1px solid var(--border)}.info-table tr:first-child{border-top:1px solid var(--border)}.info-table th,.info-table td{text-align:left;vertical-align:top;padding:14px 12px}.info-table th{color:var(--accent);font-family:var(--serif);white-space:nowrap;width:90px;font-weight:600}.map-wrap{border:1px solid var(--border);margin-top:20px;overflow:hidden}#company,#contact{background:#fff}.contact-box{background:var(--bg);border:1px solid var(--border);padding:28px 20px}.contact-label{letter-spacing:.2em;color:var(--accent);margin-bottom:8px;font-size:.75rem}.contact-tel{font-family:var(--serif);color:var(--primary);letter-spacing:.05em;margin-bottom:6px;font-size:1.7rem;font-weight:700}.contact-tel a{color:inherit;text-decoration:none}.contact-hours{color:var(--gray);font-size:.9rem}.contact-note{color:var(--gray);margin-top:20px;font-size:.83rem;line-height:1.8}.back-to-top{text-align:right;color:var(--accent);padding:12px 0 0;font-size:.82rem;text-decoration:none;display:block}footer{background:var(--dark);color:#ffffff80;text-align:center;letter-spacing:.05em;padding:20px 16px;font-size:.75rem}@media (min-width:640px){.nav-top{padding:14px 32px}.nav-links a{padding:12px 20px;font-size:.88rem}.hero{min-height:300px}.hero-overlay{gap:24px;min-height:300px;padding:32px 40px}.hero-logo{width:110px;height:110px}.hero-title{font-size:2.2rem}section{padding:72px 32px;scroll-margin-top:90px}.section-header h2{font-size:1.6rem}.product-item{grid-template-columns:200px 1fr}.product-img img{height:100%;min-height:150px}.product-body{padding:20px 28px}.product-name{font-size:1.05rem}.product-desc{font-size:.9rem}.info-table th{width:130px}}@media (min-width:1024px){.hero,.hero-overlay{min-height:380px}.hero-title{font-size:2.8rem}}
