:root{--ink: #1d2420;--muted: #6b6d63;--line: #e4e0d4;--line-strong: #d2cdbd;--bg: #fbf9f3;--bg-card: #ffffff;--bg-deep: #182e22;--forest: #1f4a32;--forest-ink: #143524;--moss: #6f8a5b;--bark: #7c5a3a;--price: #b4471f;--max: 1140px;--radius: 14px;--radius-sm: 10px;--sans: "Hiragino Kaku Gothic ProN", "Yu Gothic", "Noto Sans JP", system-ui, sans-serif;--serif: "Shippori Mincho B1", "Hiragino Mincho ProN", "Yu Mincho", "Noto Serif JP", serif;--shadow: 0 1px 2px rgba(24,46,34,.04), 0 8px 24px rgba(24,46,34,.06)}*{box-sizing:border-box}html{font-size:16px;-webkit-text-size-adjust:100%;scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--sans);line-height:1.78;text-align:left;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}a{color:var(--forest);text-underline-offset:2px}img{max-width:100%;height:auto}.wrap{max-width:var(--max);margin:0 auto;padding:0 24px}.muted{color:var(--muted)}.site-header{background:#fbf9f3e0;backdrop-filter:saturate(1.4) blur(8px);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:50}.header-inner{display:flex;align-items:center;gap:20px;padding:13px 24px}.brand{text-decoration:none;display:flex;align-items:center;flex-shrink:0}.brand-logo{height:56px;width:auto;display:block}@media(max-width:600px){.brand-logo{height:48px}}@media(max-width:380px){.brand-logo{height:40px}}.site-nav{display:flex;gap:22px;font-size:14px;margin-left:auto;flex-shrink:0}.site-nav a{color:var(--ink);text-decoration:none;position:relative;padding:2px 0}.site-nav a:hover{color:var(--forest)}.site-nav a:after{content:"";position:absolute;left:0;bottom:-2px;width:0;height:1.5px;background:var(--moss);transition:width .2s}.site-nav a:hover:after{width:100%}@media(max-width:860px){.header-inner{flex-wrap:wrap;gap:12px}.site-nav{margin-left:0;order:3;width:100%;gap:16px;font-size:13px}}.search{position:relative;flex:1;max-width:360px}@media(max-width:860px){.search{order:2;max-width:none;flex:1 1 100%}}.search input{width:100%;font:inherit;font-size:14px;padding:9px 14px 9px 38px;border:1px solid var(--line-strong);border-radius:999px;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%236b6d63' stroke-width='2'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cpath d='m21 21-4.3-4.3'/%3E%3C/svg%3E") no-repeat 13px center;color:var(--ink);outline:none;transition:border-color .2s,box-shadow .2s}.search input:focus{border-color:var(--moss);box-shadow:0 0 0 3px #6f8a5b26}.search-results{position:absolute;top:calc(100% + 8px);left:0;right:0;background:#fff;border:1px solid var(--line);border-radius:var(--radius-sm);box-shadow:var(--shadow);max-height:60vh;overflow-y:auto;display:none;z-index:60;padding:6px}.search-results.open{display:block}.search-results a{display:flex;gap:11px;align-items:center;padding:8px 10px;border-radius:8px;text-decoration:none;color:var(--ink)}.search-results a:hover,.search-results a.active{background:var(--bg)}.search-results .ico{width:40px;height:40px;border-radius:7px;object-fit:cover;background:var(--bg);flex-shrink:0;border:1px solid var(--line)}.search-results .t{font-size:13.5px;font-weight:600;line-height:1.4}.search-results .s{font-size:11.5px;color:var(--muted)}.search-results .kind{margin-left:auto;font-size:10.5px;color:var(--moss);white-space:nowrap}.search-results .none{padding:14px;color:var(--muted);font-size:13px}.btn{display:inline-flex;align-items:center;gap:8px;font-size:15px;font-weight:700;padding:12px 22px;border-radius:999px;text-decoration:none;border:1px solid transparent;cursor:pointer;transition:all .2s}.btn-primary{background:var(--forest);color:#fff}.btn-primary:hover{background:var(--forest-ink);transform:translateY(-1px)}.btn-ghost{background:transparent;color:var(--ink);border-color:var(--line-strong)}.btn-ghost:hover{border-color:var(--forest);color:var(--forest)}.btn-buy{background:var(--price);color:#fff;font-size:16px;padding:15px 28px;border-radius:999px;box-shadow:0 6px 18px #b4471f38}.btn-buy:hover{filter:brightness(1.04);transform:translateY(-1px)}main{display:block}.section{padding-top:52px;padding-bottom:52px}.section+.section{border-top:1px solid var(--line)}.section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;margin-bottom:26px}.section-head h2{font-family:var(--serif);font-size:23px;margin:0;letter-spacing:.02em;font-weight:700}.section-head h2 .accent{color:var(--moss);font-size:14px;font-family:var(--sans);display:block;letter-spacing:.16em;margin-bottom:4px;font-weight:700}.section-head .more{font-size:13px;text-decoration:none;white-space:nowrap;color:var(--forest)}.section-head .more:hover{text-decoration:underline}h1.page-title{font-family:var(--serif);font-size:30px;margin:0 0 10px;line-height:1.4}.lead{color:var(--muted);margin:0 0 8px;max-width:640px}.back{display:inline-block;font-size:13px;margin:0 0 18px;text-decoration:none;color:var(--muted)}.back:hover{color:var(--forest)}.hero{position:relative;background:var(--bg-deep);color:#f3f1e7;overflow:hidden}.hero:after{content:"";position:absolute;inset:0;background:radial-gradient(120% 90% at 85% 10%,rgba(111,138,91,.28),transparent 55%),radial-gradient(80% 70% at 10% 100%,rgba(31,74,50,.5),transparent 60%);pointer-events:none}.hero .wrap{position:relative;z-index:1;padding:72px 24px 66px}.hero .eyebrow{font-size:12.5px;letter-spacing:.22em;color:var(--moss);margin:0 0 16px;font-weight:700}.hero h1{font-family:var(--serif);font-size:clamp(26px,5.2vw,44px);line-height:1.4;margin:0 0 18px;font-weight:700;letter-spacing:.01em;max-width:760px}.hero p{font-size:16px;color:#cdd2c4;margin:0 0 26px;max-width:560px}@media(max-width:560px){.hero .wrap{padding:52px 20px 48px}}.hero .actions{display:flex;gap:12px;flex-wrap:wrap}.hero .btn-ghost{color:#f3f1e7;border-color:#f3f1e74d}.hero .btn-ghost:hover{border-color:#f3f1e7;color:#fff}.btn-furusato-hero{background:#f3f1e7;color:var(--forest-ink)}.btn-furusato-hero:hover{background:#fff;transform:translateY(-1px)}.grid{display:grid;grid-template-columns:repeat(4,1fr);gap:30px 24px}@media(max-width:920px){.grid{grid-template-columns:repeat(3,1fr)}}@media(max-width:600px){.grid{grid-template-columns:repeat(2,1fr);gap:22px 16px}}.card{display:flex;flex-direction:column;text-decoration:none;color:var(--ink)}.card .thumb{aspect-ratio:1 / 1;background:var(--bg-card);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow)}.card .thumb img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .4s ease}.card:hover .thumb img{transform:scale(1.05)}.card .store-tag{font-size:11.5px;color:var(--moss);margin:12px 0 3px;font-weight:600}.card .name{font-size:14px;font-weight:600;line-height:1.5;margin:0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.card .price{font-size:14px;font-weight:700;color:var(--price);margin:7px 0 0;font-family:var(--serif)}.stores-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}@media(max-width:720px){.stores-grid{grid-template-columns:1fr}}.store-card{display:block;text-decoration:none;color:var(--ink);border:1px solid var(--line);border-radius:var(--radius);padding:26px;background:var(--bg-card);box-shadow:var(--shadow);transition:transform .2s,border-color .2s;position:relative;overflow:hidden}.store-card:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--moss);opacity:0;transition:opacity .2s}.store-card:hover{transform:translateY(-2px);border-color:var(--line-strong)}.store-card:hover:before{opacity:1}.store-card h3{margin:0 0 5px;font-size:19px;font-family:var(--serif)}.store-card .op{font-size:12px;color:var(--muted);margin:0 0 9px}.store-card .tg{font-size:14px;color:var(--ink);margin:0 0 12px}.store-card .meta{font-size:12.5px;color:var(--muted)}.filters{display:flex;flex-direction:column;gap:12px;margin-bottom:26px}.filter-row{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.filter-row .lbl{font-size:12px;color:var(--muted);margin-right:4px;min-width:56px}.chip{font-size:13px;padding:7px 15px;border:1px solid var(--line-strong);border-radius:999px;background:#fff;color:var(--ink);cursor:pointer;text-decoration:none;transition:all .15s}.chip:hover{border-color:var(--moss)}.chip[aria-pressed=true]{background:var(--forest);color:#fff;border-color:var(--forest)}.count{font-size:13px;color:var(--muted);margin:0 0 18px}.empty{color:var(--muted);padding:40px 0}.detail{display:grid;grid-template-columns:1fr 1fr;gap:48px;padding:36px 0}@media(max-width:760px){.detail{grid-template-columns:1fr;gap:26px}}.detail .media{aspect-ratio:1 / 1;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;background:var(--bg-card);box-shadow:var(--shadow)}.detail .media img{width:100%;height:100%;object-fit:cover}.detail .store-link{font-size:13px;text-decoration:none;color:var(--moss);font-weight:600}.detail .store-link:hover{text-decoration:underline}.detail h1{font-family:var(--serif);font-size:26px;line-height:1.45;margin:8px 0 14px}.detail .price-lg{font-family:var(--serif);font-size:28px;font-weight:800;color:var(--price);margin:0 0 4px}.detail .tax{font-size:12px;color:var(--muted);margin:0 0 22px}.detail .desc{margin:18px 0 26px;white-space:pre-wrap;line-height:1.95}.detail .note{font-size:12.5px;color:var(--muted);margin-top:16px;line-height:1.7}.cat-badge{display:inline-block;font-size:12px;color:var(--forest);background:#eaf0e6;padding:4px 12px;border-radius:999px;font-weight:600;text-decoration:none}a.cat-badge:hover{background:#dde8d6}.store-hero{padding:44px 0 10px}.store-hero .op{font-size:13px;color:var(--muted);margin:0 0 7px}.store-hero h1{font-family:var(--serif);font-size:33px;margin:0 0 12px}.store-hero .tg{font-size:16px;color:var(--ink);margin:0 0 20px}.store-body{max-width:720px;font-family:var(--serif);font-size:16.5px;line-height:2.05;margin:0 0 8px;white-space:pre-wrap}.store-meta{font-size:13px;color:var(--muted);margin:20px 0 6px}.store-meta p{margin:3px 0}.share{display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin:22px 0}.share .label{font-size:12px;color:var(--muted);margin-right:2px}.share button,.share a{display:inline-flex;align-items:center;justify-content:center;gap:6px;width:38px;height:38px;border-radius:999px;border:1px solid var(--line-strong);background:#fff;color:var(--ink);cursor:pointer;text-decoration:none;transition:all .18s;font-size:13px;padding:0}.share button:hover,.share a:hover{border-color:var(--forest);color:var(--forest);transform:translateY(-1px)}.share .copy{width:auto;padding:0 15px;font-weight:600}.share .copy.done{background:var(--forest);color:#fff;border-color:var(--forest)}.share svg{width:17px;height:17px}.story-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}@media(max-width:720px){.story-grid{grid-template-columns:1fr}}.story-card{display:flex;flex-direction:column;text-decoration:none;color:var(--ink);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;background:var(--bg-card);box-shadow:var(--shadow);transition:transform .2s,border-color .2s}.story-card:hover{transform:translateY(-2px);border-color:var(--line-strong)}.story-card .ph{aspect-ratio:16 / 9;background:var(--bg-deep);overflow:hidden}.story-card .ph img{width:100%;height:100%;object-fit:cover}.story-card .body{padding:20px 22px 24px}.story-card .tag{font-size:11.5px;color:var(--moss);font-weight:600;margin:0 0 7px}.story-card h3{font-family:var(--serif);font-size:19px;line-height:1.5;margin:0 0 9px}.story-card p{font-size:13.5px;color:var(--muted);margin:0;line-height:1.7;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.story-article{max-width:720px;margin:0 auto}.story-article .meta{font-size:13px;color:var(--moss);font-weight:600;margin:0 0 10px}.story-article h1{font-family:var(--serif);font-size:clamp(24px,3.4vw,32px);line-height:1.5;margin:0 0 16px}.hero-img{width:100%;aspect-ratio:16 / 9;object-fit:cover;border-radius:var(--radius);display:block}.story-article .hero-img{margin:0 0 28px}.story-article .article-body{font-family:var(--serif);font-size:16.5px;line-height:2.05}.story-article .article-body p{margin:0 0 22px}.story-article .article-body h2{font-family:var(--serif);font-size:21px;line-height:1.5;margin:38px 0 14px;padding-left:14px;border-left:3px solid var(--moss)}.story-article .article-body h3{font-size:17px;margin:26px 0 10px}.story-article .article-body ul,.story-article .article-body ol{padding-left:1.3em}.story-card-cta{margin-top:8px}.prose{max-width:720px}.prose p{margin:0 0 18px}.prose h2{font-family:var(--serif);font-size:21px;margin:32px 0 12px}.prose h3{font-size:17px;margin:24px 0 10px}.prose img{border-radius:8px}.prose ul,.prose ol{padding-left:1.3em}.news-list{list-style:none;padding:0;margin:0;max-width:720px}.news-list li{border-bottom:1px solid var(--line)}.news-list a{display:flex;gap:14px;padding:15px 0;text-decoration:none;color:var(--ink)}.news-list a:hover{color:var(--forest)}.news-date{color:var(--muted);font-size:13px;white-space:nowrap;font-variant-numeric:tabular-nums}.feature-banner{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;text-decoration:none;color:var(--ink);background:var(--bg-card);border:1px solid var(--line-strong);border-radius:var(--radius);padding:26px 30px;box-shadow:var(--shadow);transition:border-color .2s,transform .2s}.feature-banner:hover{border-color:var(--moss);transform:translateY(-2px)}.feature-banner .badge{display:inline-block;font-size:12px;font-weight:700;color:#fff;background:var(--price);padding:3px 12px;border-radius:999px;margin-bottom:10px}.feature-banner h2{font-family:var(--serif);font-size:22px;margin:0 0 6px}.feature-banner p{margin:0;font-size:13.5px;color:var(--muted);max-width:620px}.feature-banner .go{white-space:nowrap;font-weight:700;color:var(--forest)}@media(max-width:560px){.feature-banner{padding:22px}}.furusato{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;background:linear-gradient(110deg,#1f4a32,#2e6845);color:#f3f1e7;border-radius:var(--radius);padding:30px 34px;box-shadow:var(--shadow)}.furusato .txt h2{font-family:var(--serif);font-size:22px;margin:0 0 6px;color:#fff}.furusato .txt p{margin:0;font-size:14px;color:#cfd6c8;max-width:560px}.furusato .btn-furusato{display:inline-flex;align-items:center;gap:8px;white-space:nowrap;background:#f3f1e7;color:var(--forest-ink);font-weight:700;font-size:15px;padding:13px 24px;border-radius:999px;text-decoration:none;transition:all .2s}.furusato .btn-furusato:hover{background:#fff;transform:translateY(-1px)}@media(max-width:560px){.furusato{padding:24px}.furusato .btn-furusato{width:100%;justify-content:center}}.f-furusato{max-width:var(--max);margin:0 auto;padding:6px 24px 26px}.f-furusato a{display:flex;align-items:center;justify-content:center;gap:8px;border:1px solid rgba(243,241,231,.25);border-radius:999px;padding:13px 20px;color:#f3f1e7;background:transparent;text-decoration:none;font-weight:700;font-size:14.5px;transition:all .2s}.f-furusato a:hover{background:#f3f1e714;border-color:#f3f1e780}.site-footer{background:var(--bg-deep);color:#cdd2c4;margin-top:56px}.footer-inner{display:flex;justify-content:space-between;gap:32px;padding:48px 24px 32px;flex-wrap:wrap;max-width:var(--max);margin:0 auto}.footer-logo{display:inline-block}.footer-logo img{height:46px;width:auto;display:block;margin:0 0 14px}.footer-inner .muted{max-width:440px;font-size:13px;margin:0;color:#aab0a1}.f-nav{display:flex;flex-direction:column;gap:9px;font-size:14px}.f-nav a{color:#cdd2c4;text-decoration:none}.f-nav a:hover{color:#fff}.f-base{border-top:1px solid rgba(243,241,231,.12);padding:16px 24px 30px;max-width:var(--max);margin:0 auto}.f-base .muted{font-size:12px;margin:0;color:#8f968a}@media(max-width:560px){.wrap{padding:0 18px}.section{padding-top:36px;padding-bottom:36px}.section-head h2{font-size:20px}h1.page-title{font-size:24px}.store-hero{padding:32px 0 8px}.store-hero h1{font-size:26px}.detail{padding:24px 0}.detail h1{font-size:22px}.footer-inner{padding:36px 18px 20px;gap:24px}.f-furusato{padding:6px 18px 22px}.hero .actions{gap:10px}.hero .actions .btn{flex:1 1 auto;justify-content:center}.story-article h1{font-size:22px;line-height:1.55}.story-article .meta{font-size:12.5px}.story-article .article-body{font-size:16px;line-height:1.95}.story-article .article-body h2{font-size:18.5px;margin:28px 0 12px;padding-left:12px}.story-article .article-body h3{font-size:16px}.story-article .hero-img{margin-bottom:20px}.story-card .body{padding:16px 18px 20px}.story-card h3{font-size:17px}.story-card .ph{aspect-ratio:2 / 1}}html,body{overflow-x:hidden;max-width:100%}.article-body,.story-article,.prose,.detail .desc,.store-body{overflow-wrap:anywhere;word-break:normal}
