/*
Theme Name: meitenmap
Template: twentytwentyfive
Version: 0.1.0
Description: 名店マップ(meitenmap.com)の子テーマ。店ページ・みんなに聞いた記事の見た目。管理画面では触らず Git → deploy-theme.sh で配る(2026-11-05)。
Text Domain: meitenmap
*/

@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500;700&family=Zen+Kurenaido&display=swap');

:root{--mm-red:#c8372d;--mm-ink:#1c1c1c;--mm-mute:#6b6b6b;--mm-line:#e6e2dc;--mm-paper:#fff;--mm-cream:#faf8f4}
body{background:var(--mm-paper);color:var(--mm-ink);font-family:'Noto Sans JP',sans-serif;-webkit-font-smoothing:antialiased}
.mm-main{padding:0 0 24px}
.mm-main .wp-block-post-content{margin-top:0}

/* 共通ヘッダー・フッター */
.mm-top{display:flex;align-items:baseline;gap:10px;padding:10px 16px;border-bottom:1px solid var(--mm-line);max-width:680px;margin:0 auto}
.mm-logo{font-family:'Zen Kurenaido',sans-serif;font-size:22px;color:var(--mm-ink);text-decoration:none;font-weight:700}
.mm-sub{font-size:11px;color:var(--mm-mute)}
.mm-nav{margin-left:auto;display:flex;gap:12px}.mm-nav a{font-size:12px;color:var(--mm-mute);text-decoration:none}
.mm-foot{max-width:680px;margin:24px auto 0;padding:14px 16px 32px;border-top:1px solid var(--mm-line);font-size:12px;color:var(--mm-mute);line-height:1.8}
.mm-foot a{color:var(--mm-mute);margin-right:12px}

/* 店ページ・記事(本文は .mm の中) */
.mm{font-size:15px;line-height:1.75;max-width:680px;margin:0 auto}
.mm a{color:var(--mm-red)}
.mm img{display:block;max-width:100%;height:auto}
.mm figure{margin:0}
.mm .crumb{font-size:12px;color:var(--mm-mute);padding:8px 16px 0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mm .crumb a{color:var(--mm-mute);text-decoration:none}
.mm .wrap{padding:0 16px 8px}
.mm h1{font-size:22px;line-height:1.3;margin:6px 0 2px;font-weight:700}
.mm .area{font-size:13px;color:var(--mm-mute)}
.mm .answer{font-size:15px;margin:10px 0 12px;padding:10px 12px;background:var(--mm-cream);border-left:3px solid var(--mm-red);line-height:1.6}
.mm .btns{display:flex;gap:8px;margin:10px 0 6px}
.mm .btn{flex:1;text-align:center;padding:11px 0;border:1.5px solid var(--mm-red);color:var(--mm-red);border-radius:6px;text-decoration:none;font-weight:500;font-size:14px}
.mm .btn.dark{background:var(--mm-red);color:#fff}
.mm .stamp{position:relative;border:2.5px solid var(--mm-red);border-radius:50%;color:var(--mm-red);display:flex;flex-direction:column;align-items:center;justify-content:center;font-weight:700;line-height:1;transform:rotate(-8deg);background:rgba(255,255,255,.85);font-family:'Noto Sans JP',sans-serif}
.mm .stamp span{font-size:.5em;letter-spacing:.1em;font-weight:500}
.mm h2{font-size:15px;margin:24px 0 8px;padding-bottom:4px;border-bottom:2px solid var(--mm-ink);display:inline-block;font-weight:700}
.mm h3{font-size:14px;margin:14px 0 2px;font-weight:700}
.mm .hero{position:relative;margin:0}
.mm .hero img{width:100%;aspect-ratio:4/3;object-fit:cover}
.mm .hero .shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,0) 45%,rgba(0,0,0,.65))}
.mm .hero .cap{position:absolute;left:16px;right:16px;bottom:14px;color:#fff}
.mm .hero .cap h1{color:#fff;margin:0;text-shadow:0 1px 3px rgba(0,0,0,.5)}
.mm .hero .cap .area{color:#eee}
.mm .hero .stamp{position:absolute;right:14px;top:14px}
.mm .ai{position:absolute;left:8px;top:8px;font-size:10px;color:#fff;background:rgba(0,0,0,.55);padding:1px 6px;border-radius:3px;letter-spacing:.05em}
.mm .grid{display:grid;grid-template-columns:1fr 1fr;gap:10px 8px}
.mm .grid figure{margin:0;position:relative}
.mm .grid img{aspect-ratio:4/5;object-fit:cover;border-radius:4px;width:100%}
.mm figcaption{font-size:12px;color:#333;margin-top:4px;line-height:1.45}
.mm .map{position:relative;overflow:hidden;border-radius:6px;background:#eee}
.mm .map img{width:100%;height:auto}
.mm .map .credit{position:absolute;right:4px;bottom:2px;font-size:10px;color:#333;background:rgba(255,255,255,.75);padding:0 4px;text-decoration:underline}
.mm .access{font-size:13px;color:#333;margin:8px 0 0}
.mm table.info{width:100%;border-collapse:collapse;font-size:13.5px;margin:0}
.mm table.info th{text-align:left;font-weight:500;color:var(--mm-mute);vertical-align:top;padding:7px 6px 7px 0;border-bottom:1px solid var(--mm-line);background:none}
.mm table.info tbody th{width:72px}
.mm table.info td{padding:7px 0;border-bottom:1px solid var(--mm-line);vertical-align:top}
.mm table.info small{color:var(--mm-mute);font-size:12px;display:block}
.mm table.info .src{width:58px;color:var(--mm-mute);font-size:11px;text-align:right;padding-left:6px}
.mm table.info thead th{font-size:11px;padding:0 0 4px}
.mm .checked{font-size:11px;color:var(--mm-mute);margin:6px 0 0;line-height:1.5}
.mm .body{margin:0 0 10px;font-size:15px}
.mm .qa details{border-bottom:1px solid var(--mm-line);padding:8px 0}
.mm .qa summary{font-weight:500;cursor:pointer}
.mm .qa p{margin:4px 0 0;font-size:14px;color:#333}
.mm .muted{color:var(--mm-mute);font-size:14px}
.mm .rel{list-style:none;margin:0;padding:0}
.mm .rel li{border-bottom:1px solid var(--mm-line);padding:8px 0;font-size:14px}
.mm .rel a{text-decoration:none;color:var(--mm-ink);display:flex;gap:8px;align-items:baseline}
.mm .rel small{color:var(--mm-mute);font-size:11px}
.mm .rel span{display:block;font-size:13px;color:#333}
.mm .note{font-size:11px;color:var(--mm-mute);margin:8px 0 0;line-height:1.5}
.mm .tail{font-size:12px;color:var(--mm-mute);margin:28px 0 8px;line-height:1.6;border-top:1px solid var(--mm-line);padding-top:10px}
/* 聞いた記事 */
.mm .kicker{font-size:12px;color:var(--mm-red);margin:12px 0 0;font-weight:500}
.mm .sub2{font-size:14px;color:var(--mm-mute);margin:2px 0 4px}
.mm .meta{font-size:11px;color:var(--mm-mute);margin:0 0 12px}
.mm .lead{font-size:15px;margin:0 0 6px}
.mm .srcline{font-size:12px;color:var(--mm-mute);margin:0 0 6px;word-break:break-all}
.mm .points{margin:0;padding-left:20px;font-size:15px}.mm .points li{margin:4px 0}
.mm .article p{margin:0 0 10px}
.mm blockquote.voice{margin:10px 0;padding:8px 12px;border-left:3px solid var(--mm-line);background:var(--mm-cream);font-size:14px}
.mm blockquote.voice p{margin:0}
.mm blockquote.voice footer{font-size:12px;color:var(--mm-mute);margin-top:4px}
/* 固定ページ(about 等) */
.mm.page h1{margin:12px 0 8px}
.mm.page h2{display:block;border-bottom:1px solid var(--mm-line)}
