/* 一覧・これから行く店・固定ページ。トップと同じ紙と墨、あずき色1色 */
:root{--paper:#f6f1e7;--paper2:#ede5d6;--ink:#221d19;--ink2:#5f554c;--ink3:#8c8177;--rule:rgba(34,29,25,.14);--azuki:#6d2127}
body{background:var(--paper);color:var(--ink)}
.tl,.tp{max-width:1180px;margin:0 auto;padding:40px 20px 56px;font-size:15px;line-height:1.85}
.tl a,.tp a{color:inherit}
.tl-head{border-bottom:1px solid var(--ink);padding-bottom:20px;margin-bottom:28px}
.tl-lab{margin:0;font-size:11px;letter-spacing:.32em;color:var(--azuki);font-weight:700}
.tl-head h1,.tp-head h1{margin:8px 0 0;font-family:"Shippori Mincho B1",serif;font-weight:800;font-size:clamp(28px,7vw,48px);line-height:1.35}
.tl-lead{margin:12px 0 0;color:var(--ink2)}
.tl-empty{padding:40px 0;color:var(--ink2);text-align:center}
.tl-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:26px 14px}
.tl-grid a{text-decoration:none;display:block}
.tl-ph{position:relative;display:block;aspect-ratio:4/5;overflow:hidden;background:var(--paper2)}
.tl-ph img{width:100%;height:100%;object-fit:cover}
.tl-badge{position:absolute;left:8px;top:8px;font-style:normal;font-size:11px;padding:3px 8px;background:#fff6d6;color:#4a3d10;border:1px solid #e3c96b}
.tl-hook{display:block;margin-top:10px;font-family:"Shippori Mincho B1",serif;font-weight:700;line-height:1.6}
.tl-meta{display:block;margin-top:8px;padding-top:8px;border-top:1px solid var(--rule);font-size:12px;color:var(--ink2)}
.tl-meta b{display:block;color:var(--ink);font-size:13px}
.tl-rows{list-style:none;margin:24px 0 0;padding:0;border-top:1px dashed rgba(34,29,25,.3)}
.tl-rows::before{content:"写真はこれから";display:block;font-size:11px;letter-spacing:.2em;color:var(--ink3);padding:10px 0 2px}
.tl-rows a{display:grid;grid-template-columns:1fr auto;gap:2px 12px;padding:12px 0;border-bottom:1px dashed rgba(34,29,25,.3);text-decoration:none}
.tl-rows span{grid-column:1/-1;font-family:"Shippori Mincho B1",serif;color:var(--ink2)}
.tl-rows em{grid-row:1;grid-column:2;font-style:normal;font-size:11px;color:var(--ink3)}
.tl-nav{margin-top:48px;padding-top:20px;border-top:1px solid var(--rule)}
.tl-nav-row{display:flex;gap:12px;align-items:baseline;flex-wrap:wrap;margin-top:10px}
.tl-nav-row>span{font-size:11px;letter-spacing:.14em;color:var(--ink3);min-width:84px}
.tl-nav-row ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:6px}
.tl-nav-row a{display:inline-block;padding:5px 12px;border:1px solid rgba(34,29,25,.28);border-radius:999px;font-size:13px;text-decoration:none}
.tl-nav-row a.is-on{background:var(--ink);color:var(--paper);border-color:var(--ink)}
.tl-nav-row small{margin-left:6px;color:var(--ink3)}
.tl-nav-row a.is-on small{color:var(--paper2)}
.tl-sample{margin:0 0 18px;padding:10px 14px;background:#fff6d6;border:1px solid #e3c96b;color:#4a3d10;font-size:13px}
.tl-sample b{margin-right:8px;padding:1px 8px;background:#4a3d10;color:#fff6d6;font-size:11px}
/* これから行く店（掲載ページと分ける：点線と帯） */
.tl-next .tl-head{border-bottom:1.5px dashed var(--azuki)}
.tn-list{list-style:none;margin:0;padding:0;counter-reset:n}
.tn-list a{display:grid;grid-template-columns:auto 1fr;gap:14px;padding:16px 0;border-bottom:1px dashed rgba(109,33,39,.35);text-decoration:none}
.tn-ph{width:88px;height:88px;overflow:hidden;background:var(--paper2)}.tn-ph img{width:100%;height:100%;object-fit:cover}
.tn-body b{display:block;font-size:16px}.tn-body em{font-style:normal;font-size:12px;color:var(--ink3)}
.tn-body span{display:block;font-size:14px;color:var(--ink2);margin-top:4px}
.tn-ask,.tn-back{margin-top:28px}.tn-ask a,.tn-back a{color:var(--azuki);border-bottom:1px solid currentColor;text-decoration:none}
.tn-single{max-width:760px}
.tn-band{margin:0 0 22px;padding:10px 14px;border:1.5px dashed var(--azuki);background:repeating-linear-gradient(135deg,transparent 0 14px,rgba(109,33,39,.05) 14px 15px);font-size:13px;color:var(--azuki)}
.tn-hero{margin:0 0 10px}.tn-hero img{width:100%;height:auto}.tn-hero figcaption{font-size:12px;color:var(--ink3);margin-top:6px}
.tn-sec{margin-top:34px}.tn-sec h2{font-family:"Shippori Mincho B1",serif;font-size:21px;margin:0 0 10px;padding-bottom:8px;border-bottom:1px solid var(--rule)}
.tn-dl div{display:grid;grid-template-columns:90px 1fr;gap:10px;padding:10px 0;border-bottom:1px solid var(--rule)}
.tn-dl dt{font-size:12px;color:var(--ink3)}.tn-dl dd{margin:0}
.tn-call{padding:22px;border:1.5px dashed var(--azuki)}.tn-call h2{border:0;padding:0}
.tn-call a{display:inline-block;margin-top:10px;padding:10px 20px;background:var(--azuki);color:#fff;text-decoration:none;border-radius:2px}
/* 固定ページ */
.tp{max-width:760px}
.tp-head{border-bottom:4px double var(--ink);padding-bottom:18px;margin-bottom:30px}
.tp-body h2{font-family:"Shippori Mincho B1",serif;font-size:clamp(20px,5vw,26px);margin:44px 0 12px;padding-bottom:8px;border-bottom:1px solid var(--rule)}
.tp-body h3{font-size:16px;margin:24px 0 6px}
.tp-body p{margin:0 0 14px}
.tp-body ul,.tp-body ol{margin:0 0 16px;padding-left:1.4em}
.tp-body li{margin:4px 0}
.tp-body .tp-lead{font-family:"Shippori Mincho B1",serif;font-size:clamp(19px,4.8vw,24px);line-height:1.8;font-weight:700}
.tp-body .tp-steps{list-style:none;padding:0;counter-reset:s}
.tp-body .tp-steps li{position:relative;padding:14px 0 14px 52px;border-bottom:1px solid var(--rule);margin:0}
.tp-body .tp-steps li::before{counter-increment:s;content:counter(s,decimal-leading-zero);position:absolute;left:0;top:12px;font-family:"Shippori Mincho B1",serif;font-size:24px;color:var(--azuki)}
.tp-body .tp-steps b{display:block}
.tp-body .tp-box{padding:18px 20px;background:var(--paper2);margin:18px 0}
.tp-body .tp-no{list-style:none;padding:0}.tp-body .tp-no li{padding-left:1.4em;position:relative}.tp-body .tp-no li::before{content:"×";position:absolute;left:0;color:var(--azuki)}
.tp-body .tp-btn{display:inline-block;margin-top:8px;padding:12px 22px;background:var(--ink);color:var(--paper);text-decoration:none;border-radius:2px}
.tp-body .tp-pending{padding:16px 18px;border:1.5px dashed var(--ink3);color:var(--ink2);font-size:14px}
.tp-body small{color:var(--ink3)}
@media(min-width:760px){.tl,.tp{padding:56px 48px 64px}.tl-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:34px 22px}.tl-rows{display:grid;grid-template-columns:1fr 1fr;column-gap:32px}.tl-rows::before{grid-column:1/-1}}
@media(min-width:1180px){.tl-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
