/* WordPress integration. Design tokens and mobile cards come from the approved prototype. */
.article-summary{padding:26px 24px;background:var(--ll-soft);border-top:3px solid var(--ll-ocean)}
.brand-wordmark{overflow-wrap:anywhere}.brand-caption{max-width:35em}.custom-logo-link img{max-width:240px;height:auto;max-height:75px;object-fit:contain}
.quick-links a{display:flex;align-items:center;min-height:44px;text-decoration:none;font-size:.8125rem}.quick-links a:hover{text-decoration:underline;text-underline-offset:4px}.text-action{text-decoration:none}
.purpose-filters a{display:inline-flex;align-items:center;background:transparent;border:1px solid var(--ll-rule);padding:7px 15px;border-radius:2px;font-size:.8125rem;min-height:44px;text-decoration:none}.purpose-filters a[aria-current]{background:var(--ll-ocean);border-color:var(--ll-ocean);color:#fff}
.small-action{padding:6px 10px;border:1px solid var(--ll-rule);background:#fff;color:var(--ll-ocean-dark);min-height:44px;white-space:nowrap}.store-link,.primary-button{text-decoration:none}.hero-no-photo{display:block;max-width:800px;padding-block:48px}.hero-no-photo h1{max-width:20em}.hero-no-photo .hero-copy{padding-block:10px}
.card-description{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.card-read-more{display:block;margin-top:18px;font-size:.75rem;color:var(--ll-ocean)}.card-meta{flex-wrap:wrap}.card-date{overflow-wrap:anywhere}
.pagination{display:flex;gap:8px;justify-content:center;margin-top:28px;flex-wrap:wrap}.pagination .page-numbers{padding:9px 16px;border:1px solid var(--ll-rule);text-decoration:none;min-height:44px}.pagination .current{background:var(--ll-ocean);color:#fff}.archive-view{padding:35px 0 65px}.archive-view .content-grid{margin-top:25px}
.entry-content{font-size:1rem;line-height:2;overflow-wrap:anywhere}.entry-content p{margin:0 0 1.5em}.entry-content h2{font-size:1.35rem;margin:2em 0 1em}.entry-content h3{font-size:1.12rem;margin:1.6em 0 .7em}.entry-content ul,.entry-content ol{padding-left:1.5em;margin:1em 0 1.5em}.entry-content li{margin:.45em 0}.entry-content a,.information-list a{text-decoration:underline;text-underline-offset:4px;color:var(--ll-ocean-dark)}.entry-content blockquote{border-left:3px solid var(--ll-rule);padding:1em 1.5em;margin:1.5em 0}.entry-content img{max-width:100%;height:auto}.entry-content figure{margin:1.5em 0}.entry-content table{border-collapse:collapse;width:100%}.entry-content td,.entry-content th{border:1px solid var(--ll-rule);padding:.75em}.entry-content .wp-block-table{overflow-x:auto}.entry-content iframe{max-width:100%}.entry-content pre{overflow:auto}.entry-content .alignwide{max-width:100%}
.article-summary .information-list>div{display:block}.article-summary .information-list dt{margin-bottom:5px}.article-summary .primary-button{width:100%;margin-top:20px;text-align:center}.summary-note{font-size:.75rem;line-height:1.9;color:var(--ll-muted);margin-top:14px}.source-section{background:var(--ll-soft);padding:22px;font-size:.8125rem}.source-section p+p{margin-top:10px}
.fixed-page-layout{display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:60px;align-items:start}.fixed-page-nav{background:var(--ll-soft);padding:24px}.fixed-page-nav h2{font-size:1rem;margin-bottom:12px}.fixed-page-nav a{display:block;font-size:.8125rem;padding:12px 0;border-bottom:1px solid var(--ll-rule);text-underline-offset:4px}.fixed-page-nav a[aria-current]{font-weight:700}
.footer-links ul{list-style:none;padding:0;margin:0;display:contents}.footer-links li{list-style:none}.wp-caption{max-width:100%}.wp-caption-text,.gallery-caption{font-size:.75rem;color:var(--ll-muted)}.alignleft{float:left;margin-right:20px}.alignright{float:right;margin-left:20px}.aligncenter{margin-inline:auto}.screen-reader-text{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip-path:inset(50%)}
@media(max-width:1000px){.article-layout{gap:30px;grid-template-columns:minmax(0,1fr) 290px}.fixed-page-layout{gap:30px;grid-template-columns:minmax(0,1fr) 230px}}
@media(max-width:800px){.article-layout,.fixed-page-layout{grid-template-columns:1fr}.article-summary{grid-column:1;grid-row:auto;position:static}.article-main{grid-column:1;grid-row:auto}.fixed-page-nav{margin-top:25px}}
@media(max-width:560px){
  .site-header{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px}.brand-wordmark{font-size:1.625rem}.brand-caption{line-height:1.7}.header-tools{width:100%;margin-top:4px}
  /* Navigation remains visible if JavaScript fails or is disabled. */
  body .header-tools{display:grid}.mobile-menu-toggle{display:none}.js .mobile-menu-toggle{display:block}.js body[data-menu-open="false"] .header-tools{display:none}
  .quick-links a{font-size:.75rem}.purpose-filters a{font-size:.75rem;padding:7px 10px}.hero-no-photo{padding-block:25px}.hero-no-photo h1{font-size:1.75rem}.archive-view .content-grid{background:#edf3f4;padding:12px}.footer-links{margin-top:25px}.article-summary{margin-bottom:0}.fixed-page-nav{padding:20px}
  html:not(.js) body[data-view][data-menu-open] .header-tools{display:grid}
  html:not(.js) body[data-view] .mobile-menu-toggle{display:none}
  .js body[data-view] .mobile-menu-toggle{display:flex;align-items:center;border:1px solid var(--ll-rule);background:white;min-height:44px;padding:8px 10px;font-size:.75rem}
}

/* living section: the hub link stands out, category-scoped list below */
.living-links a.living-hub{border-left:3px solid var(--ll-ocean);background:var(--ll-soft)}
.living-section .section-note{margin-top:14px}
/* photos woven into article bodies */
.entry-content .wp-block-image{margin:1.6em 0}.entry-content .wp-block-image img{width:100%;height:auto;border-radius:6px;display:block}.entry-content .wp-element-caption{font-size:.75rem;color:var(--ll-muted);margin-top:6px;line-height:1.6}
/* hero: copy and upcoming events side by side, licensed photos beneath (no compositing, no text overlay) */
.hero.hero-with-strip{order:-1;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(260px,.85fr);gap:28px 36px;align-items:start;padding-block:40px}
.hero.hero-with-strip .hero-copy{padding-block:4px}
.hero-events{border-left:3px solid var(--ll-ocean);padding:2px 0 2px 16px}
.hero-events>.eyebrow{margin:0 0 10px}
.hero-events ul{list-style:none;margin:0;padding:0;display:grid;gap:2px}
.hero-events li+li{border-top:1px solid var(--ll-rule)}
.hero-events a{display:grid;grid-template-columns:6.8em 1fr;grid-template-areas:"day title" "day place";gap:0 14px;padding:9px 0;text-decoration:none;color:inherit;min-height:44px;align-content:center}
/* 0.9.26（2026-09-24 運営者指摘）：日付の列を固定幅にして縦を揃える。期間は2行（〜の前で折る）。題名は2行で切る */
.hero-events .hero-event-day{grid-area:day;white-space:normal;line-height:1.45;align-self:start;padding-top:1px}
.hero-events .hero-event-title{grid-area:title;overflow-wrap:anywhere;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.hero-events .hero-event-place{grid-area:place;font-size:.75rem}
/* 0.9.27（2026-09-24 運営者）：UPCOMING EVENT の文字を一回り大きく */
.hero-events>.eyebrow{font-size:.75rem;letter-spacing:.12em}
.hero-events .hero-event-title{font-size:.9375rem;line-height:1.6}
.hero-events .hero-event-day{font-size:.8125rem}
.hero-events>.text-action{font-size:.875rem}
.hero-events a:hover .hero-event-title{text-decoration:underline}
.hero-event-day{grid-area:day;font-size:.75rem;font-weight:700;color:var(--ll-ocean-dark);white-space:nowrap;align-self:center}
.hero-event-title{grid-area:title;font-size:.8125rem;font-weight:600;line-height:1.45;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.hero-event-place{grid-area:place;font-size:.6875rem;color:var(--ll-muted)}
.hero-events>.text-action{margin-top:12px;display:inline-block;font-size:.8125rem}
.hero-strip{grid-column:1/-1;margin:4px 0 0}
.hero-strip-grid{display:grid;grid-template-columns:repeat(6,1fr);grid-auto-rows:150px;gap:8px}
.hero-strip-photo{width:100%;height:100%;object-fit:cover;display:block;border-radius:4px;background:var(--ll-soft)}
.hero-strip-grid img:nth-child(1){grid-column:span 2}
.hero-strip-grid img:nth-child(2){grid-column:span 2}
.hero-strip-grid img:nth-child(3){grid-column:span 2}
.hero-strip-grid img:nth-child(4){grid-column:span 4}
.hero-strip-grid img:nth-child(5){grid-column:span 2}
.hero-strip figcaption{font-size:.6875rem;color:var(--ll-muted);margin-top:8px}
@media(max-width:860px){
  .hero.hero-with-strip{grid-template-columns:1fr;gap:20px;padding-block:22px}
  .hero-strip{order:2;margin-top:0}
  .hero-events{order:3;border-left:0;border-top:0;padding:18px 18px 16px}   /* 0.9.26：スマホは枠の縁から文字まで18px */
  /* 0.9.28（2026-09-24 運営者）：スマホは地域を日付の下に置き、題名は4行まで */
  .hero-events a{grid-template-columns:6.4em 1fr;grid-template-areas:"day title" "place title";align-content:start}
  .hero-events .hero-event-place{grid-area:place;align-self:start;margin-top:4px}
  .hero-events .hero-event-title{-webkit-line-clamp:4}
  .hero-strip-grid{grid-auto-rows:112px;gap:6px}
  .hero-strip-grid img:nth-child(1),.hero-strip-grid img:nth-child(2){grid-column:span 3}
  .hero-strip-grid img:nth-child(3),.hero-strip-grid img:nth-child(4),.hero-strip-grid img:nth-child(5){grid-column:span 2}
}
@media(max-width:560px){.hero-strip-grid{grid-auto-rows:100px;gap:5px}.hero.hero-with-strip{gap:14px;padding-block:14px 20px}.hero.hero-with-strip h1{font-size:1.625rem;line-height:1.35}.hero.hero-with-strip .hero-description{font-size:.875rem}}



/* filtered views: the articles come first and the hero block sits at the end */
.hero.hero-bottom{order:99}
.hero.hero-with-strip.hero-bottom{margin-top:8px;border-top:1px solid var(--ll-rule);padding-top:34px}
@media(max-width:560px){.hero.hero-with-strip.hero-bottom{padding-top:20px}}

/* article-foot promo slot: the disclosure is part of the block, never optional */
.promo-block{margin:2em 0 0;padding:20px 22px 18px;border:1px solid var(--ll-rule);border-top:3px solid var(--ll-ocean);border-radius:6px;background:var(--ll-soft)}
.promo-block .promo-cta{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:14px;padding:14px 18px;min-height:52px;background:var(--ll-ocean);color:#fff;border-radius:4px;text-decoration:none;font-weight:600;font-size:.9375rem;line-height:1.5}
.promo-block .promo-cta:hover{background:var(--ll-ocean-dark);text-decoration:none}
.promo-block .promo-cta-arrow{flex-shrink:0;font-size:1.0625rem}
.promo-block .promo-provider{margin:10px 0 0;font-size:.75rem;color:var(--ll-muted);line-height:1.7}
.promo-block .promo-label{margin:0 0 8px;font-size:.6875rem;letter-spacing:.08em;color:var(--ll-muted)}
.promo-block p{margin:0 0 .8em;font-size:.875rem;line-height:1.9}
.promo-block p:last-child{margin-bottom:0}
.promo-block a{color:var(--ll-ocean-dark);text-decoration:underline;text-underline-offset:4px}

/* 自作の模式図（本文に直接置いたSVG） */
.entry-content .yatai-map-figure,.entry-content .ll-map-figure{margin:1.8em 0}
.entry-content .yatai-map-figure svg,.entry-content .ll-map-figure svg{width:100%;height:auto;display:block;border:1px solid var(--ll-rule);border-radius:6px;background:#fff}
/* 屋台MAPの図の配色（SVG内の<style>はwpautopに壊されるためここに置く） */
.entry-content .yatai-map-figure svg .f{font-family: "Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif;}
.entry-content .yatai-map-figure svg .ink{fill:#192b30;}
.entry-content .yatai-map-figure svg .muted{fill:#56676b;}
.entry-content .yatai-map-figure svg .ocean{fill:#006078;}
.entry-content .yatai-map-figure svg .h1{font-size:26px; font-weight:700;}
.entry-content .yatai-map-figure svg .lead{font-size:14px;}
.entry-content .yatai-map-figure svg .area{font-size:19px; font-weight:700; text-anchor:middle;}
.entry-content .yatai-map-figure svg .num{font-size:14px; text-anchor:middle;}
.entry-content .yatai-map-figure svg .sta{font-size:13px;}
.entry-content .yatai-map-figure svg .riv{font-size:13px;}
.entry-content .yatai-map-figure svg .leg{font-size:13px;}
.entry-content .yatai-map-figure svg .cap{font-size:12px;}
.entry-content .yatai-map-figure svg .bubble{fill:#006078; fill-opacity:.13; stroke:#006078; stroke-width:1.2;}
.entry-content .yatai-map-figure svg .cnt{fill:#004556; font-size:21px; font-weight:700; text-anchor:middle;}
.entry-content .yatai-map-figure svg .dot{fill:#af3d22;}
.entry-content .yatai-map-figure svg .thin{stroke:#98bcc5; stroke-width:1; fill:none;}
/* 一覧の表（屋台・まとめ記事）。スマホは横スクロールで読ませる */
.entry-content .ll-table{margin:1.4em 0;overflow-x:auto;-webkit-overflow-scrolling:touch;max-width:100%}
.entry-content .ll-table-wrap>table{margin:0}
.entry-content .ll-table table{font-size:.9rem;min-width:520px}
.entry-content .ll-table td,.entry-content .ll-table th{padding:.5em .7em;vertical-align:top}
.entry-content .ll-table th{background:var(--ll-soft);font-weight:600;white-space:nowrap;text-align:left}
.entry-content .ll-table td:first-child{white-space:nowrap;font-weight:600}
.entry-content .ll-table .na{color:var(--ll-muted)}
@media(max-width:640px){.entry-content .ll-table{overflow-x:auto;-webkit-overflow-scrolling:touch}
.entry-content .ll-table table{font-size:.82rem}
/* 0.9.22（2026-09-24 運営者指摘「表がオーバーフローしてる」）：3〜4列の表はスマホで画面幅に収める。1列目も折り返す。5列以上は従来どおり横スクロール＋1列目固定 */
.entry-content .ll-table--cols-2 table,.entry-content .ll-table--cols-3 table,.entry-content .ll-table--cols-4 table{min-width:0;width:100%;table-layout:fixed}
.entry-content .ll-table--cols-2 td,.entry-content .ll-table--cols-3 td,.entry-content .ll-table--cols-4 td,.entry-content .ll-table--cols-2 th,.entry-content .ll-table--cols-3 th,.entry-content .ll-table--cols-4 th{white-space:normal;overflow-wrap:anywhere;padding:.45em .5em}
.entry-content .ll-table--cols-2 td:first-child,.entry-content .ll-table--cols-3 td:first-child,.entry-content .ll-table--cols-4 td:first-child,.entry-content .ll-table--cols-2 th:first-child,.entry-content .ll-table--cols-3 th:first-child,.entry-content .ll-table--cols-4 th:first-child{white-space:normal}
.entry-content .ll-table--cols-3 tr>:first-child{width:34%}
.entry-content .ll-table--cols-4 tr>:first-child{width:30%}
.entry-content .ll-table--cols-4 tr>:last-child{width:19%}}
.footer-disclosure{margin:14px 0 8px;font-size:.75rem;line-height:1.8;color:var(--ll-muted);max-width:44em}
.promo-block .promo-lead{font-weight:600}
/* 写真2枚までの枠（2026-09-28、楽天トラベル）。画像は楽天の直リンク、左下にクレジット。枠は 4:3 */
.promo-block .promo-photos{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:0 0 12px}
.promo-block .promo-photos--1{grid-template-columns:minmax(0,1fr);max-width:360px}
.promo-block .promo-photo{position:relative;display:block;aspect-ratio:4/3;overflow:hidden;border-radius:6px;background:#efe9df;text-decoration:none}
.promo-block .promo-photo img{display:block;width:100%;height:100%;object-fit:contain;background:#f1efe9}
.promo-block .promo-photo-credit{position:absolute;left:4px;bottom:4px;max-width:calc(100% - 8px);font-size:10px;line-height:1.2;padding:3px 5px;background:rgba(0,0,0,.62);color:#fff;border-radius:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;pointer-events:none}
.promo-block .promo-name{margin:0 0 .3em;font-size:1rem;font-weight:700;line-height:1.6}
.footer-credit{margin:10px 0 6px;line-height:0}
.footer-credit img{max-width:100%;height:auto}
.promo-block--banner{padding:14px 14px 12px;background:#fff}
.promo-block .promo-banner{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;margin-top:6px;padding:26px 20px;min-height:110px;background:#bf0000;color:#fff;border-radius:8px;text-align:center;text-decoration:none;box-shadow:inset 0 0 0 3px rgba(255,255,255,.18)}
.promo-block .promo-banner:hover{background:#a30000;text-decoration:none;color:#fff}
.promo-block .promo-banner-brand{font-size:1.375rem;font-weight:800;letter-spacing:.02em;line-height:1.3}
.promo-block .promo-banner-text{font-size:.9375rem;font-weight:600;line-height:1.5;opacity:.95}
@media(max-width:560px){.promo-block .promo-banner{padding:22px 16px;min-height:96px}.promo-block .promo-banner-brand{font-size:1.2rem}}
/* AdSense の枠。広告と本文の境目をはっきりさせる（自動広告はOFFで、位置はこちらで決めている） */
.ll-ad{margin:2em 0;clear:both}
.ll-ad-label{margin:0 0 6px;font-size:.6875rem;letter-spacing:.08em;color:var(--ll-muted)}
.ll-ad ins{display:block;min-height:1px}
.entry-content .ll-ad{margin:2.2em 0}
.promo-block + .ll-ad{margin-top:1.4em}
/* サイドの縦長。PCではカードの下に置き、スクロールしても追従する。
   狭い画面ではカードが本文の上に来るので出さない（JS側でも要求しない） */
.ll-ad-side{margin-top:24px}
@media(max-width:900px){.ll-ad-side{display:none}}

/* 記事末尾の「あなたにこれもおすすめ」。トップの固定枠と同じ横スライダー。PCは幅に関係なく3枚を一行、スマホは横に送る */
.related-section{margin-top:44px;padding-top:30px;border-top:1px solid var(--ll-rule)}
.related-section .section-heading{margin-bottom:0}
.related-rail .content-card{border-bottom:0;padding-bottom:0}
@media(min-width:901px){
  .related-section .section-heading{display:flex;flex-direction:row;align-items:flex-end;justify-content:space-between;gap:16px}
  .related-section .card-rail{grid-auto-columns:calc((100% - 48px) / 3);gap:24px}
}

/* 最近見た記事（閲覧履歴）。PCは右カラムの要約と広告のあいだ（箱ごと付いてくる）。スマホは「おすすめ」の下に出す */
.history-block{margin-top:22px;padding-top:18px;border-top:1px solid var(--ll-rule)}
.history-block .eyebrow{margin-bottom:6px}
.history-heading{font-size:1rem;line-height:1.5;letter-spacing:.03em;font-weight:700}
.history-list{list-style:none;margin:12px 0 0;padding:0;display:grid;gap:0}
.history-item+.history-item{border-top:1px dotted #9fb3ba;padding-top:12px;margin-top:12px}
.history-item a{display:grid;grid-template-columns:64px minmax(0,1fr);gap:12px;align-items:center;color:inherit;text-decoration:none}
.history-item--text a{grid-template-columns:minmax(0,1fr)}
.history-thumb{width:64px;height:64px;object-fit:cover;background:#fff;display:block}
.history-thumb.is-contain{object-fit:contain}
.history-text{min-width:0}
.history-meta{display:block;font-size:.625rem;color:var(--ll-muted);margin-bottom:3px}
.history-meta b{color:var(--ll-ocean);font-weight:700}
.history-title{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-size:.8125rem;line-height:1.6}
.history-item a:hover .history-title{text-decoration:underline;text-underline-offset:3px}
.history-clear{margin-top:12px;background:none;border:0;padding:0;font-size:.6875rem;color:var(--ll-muted);text-decoration:underline;cursor:pointer;min-height:32px}
.history-block--bottom{margin-top:36px;padding-top:28px}
.history-block--bottom .history-thumb{background:var(--ll-soft)}
@media(min-width:801px){.history-block--bottom{display:none}}
@media(max-width:800px){.history-block--side{display:none}}

/* フッターのカテゴリ一覧（親→子）とエリアのタグ。内部リンクの受け皿 */
.footer-explore{grid-column:1/-1;display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:22px 24px;padding-bottom:24px;margin-bottom:6px;border-bottom:1px solid #2b4a54}
.footer-group-title{display:block;font-size:.8125rem;font-weight:700;color:#fff;margin-bottom:8px}
.footer-group ul{list-style:none;margin:0;padding:0}
.footer-group li{font-size:.75rem;line-height:1.5;margin-top:7px}
.footer-group li a{color:#d7e3e6}
.footer-group a:hover{text-decoration:underline;text-underline-offset:3px}
.footer-tags{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:8px;align-items:center;padding-bottom:22px;margin-bottom:10px;border-bottom:1px solid #2b4a54}
.footer-tags-label{font-size:.6875rem;color:#bed0d5;margin-right:4px}
.footer-tag{display:inline-block;font-size:.75rem;color:#eaf1f3;border:1px solid #3b5c66;border-radius:999px;padding:5px 12px;line-height:1.4}
.footer-tag:hover{background:#1f3d47}
.footer-tag--map{border-color:#e0a48c;color:#f6d7c9}
@media(max-width:560px){.footer-explore{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 16px;margin-bottom:18px}.footer-tags{margin-bottom:18px}}

/* 広い表（5列以上）。折り返せる列だけが1文字幅に潰れないよう最小幅を持たせ、1列目の折り返し禁止を外し、表全体は最小幅で横スクロールにする */
.entry-content .ll-table--wide table{min-width:860px;font-size:.85rem}
.entry-content .ll-table--wide th{white-space:normal;min-width:6em}
.entry-content .ll-table--wide td{min-width:6.5em}
.entry-content .ll-table--wide td:first-child,.entry-content .ll-table--wide th:first-child{white-space:normal;width:24%;min-width:9em;max-width:15em}
/* 1列目が伸びて他の列が見えなくなるのを防ぐ（2026-09-23 運営者指摘：手土産の表）。auto レイアウトでは max-width が効かないので width で抑える。
   スマホでは1列目を固定して、横に送っても品名が見えるようにする */
@media(max-width:640px){
  /* スマホ：列幅を固定レイアウトで決める。1列目は 8.5em（約120px）で画面の1/3、残りの列は均等。
     auto レイアウトのままだと、長い品名の1列目が表の4割＝画面のほぼ全幅を取って他の列が隠れる（2026-09-23 に手土産の表で実測） */
  .entry-content .ll-table--wide table{table-layout:fixed}
  .entry-content .ll-table--wide td:first-child,.entry-content .ll-table--wide th:first-child{position:sticky;left:0;z-index:1;background:#fff;box-shadow:2px 0 0 var(--ll-rule);width:8.5em;min-width:0;max-width:none;overflow-wrap:anywhere}
  .entry-content .ll-table--wide th:first-child{background:var(--ll-soft)}
  .entry-content .ll-table--wide td,.entry-content .ll-table--wide th{overflow-wrap:anywhere}
}
.entry-content .ll-table--cols-6 table{min-width:920px}
.entry-content .ll-table--cols-7 table{min-width:1000px}

/* hero: illustrated background from the customizer (0.6.45／0.9.1 で見え方を直した)。
   影を濃くかけすぎて、選んだ福岡タワーと街並みが暗く潰れていた（2026-09-23 運営者指摘）。
   影は見出しが乗る左側だけにして、右の街並みと海はそのまま見せる。画像の高さも確保する。 */
.hero{min-height:440px;align-content:center}
.hero .hero-bg-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 58%;z-index:-2;display:block;border-radius:0}
.hero .hero-shade{position:absolute;inset:0;z-index:-1;background:linear-gradient(95deg,rgba(4,34,46,.76) 0%,rgba(4,34,46,.58) 26%,rgba(4,34,46,.24) 46%,rgba(4,34,46,.06) 62%,rgba(4,34,46,0) 78%)}
.hero .hero-copy{text-shadow:0 1px 14px rgba(3,28,38,.45)}
.hero .hero-credit{position:absolute;right:14px;bottom:9px;font-size:.625rem;line-height:1;color:rgba(255,255,255,.8);text-shadow:0 1px 6px rgba(3,28,38,.6);letter-spacing:.04em}
@media(max-width:900px){
  /* スマホは全面背景にしない。横長の絵を縦長の枠に敷くと、タワーの中ほどだけの細い帯になってしまう。
     写真は1枚の帯として上に置き、見出しは濃い青緑の地の上に出す（2026-09-23） */
  .hero{min-height:0;background:linear-gradient(180deg,#0b4d60 0%,#063846 100%);padding:14px 18px 22px;gap:16px}
  .hero .hero-bg-photo{position:static;order:-1;width:100%;height:auto;aspect-ratio:2.4;object-fit:cover;object-position:50% 55%;border-radius:8px;z-index:auto}
  .hero .hero-shade{display:none}
  .hero .hero-copy{text-shadow:none}
  .hero .hero-credit{position:static;order:-1;display:block;margin:-10px 2px 0;text-align:right;color:rgba(255,255,255,.66);text-shadow:none}
}
@media(max-width:560px){.hero{padding:12px 16px 20px}.hero .hero-bg-photo{aspect-ratio:2.1}}

/* front page: supermarket brands as buttons (0.6.46). Branch articles no longer appear here; the layout is provisional until the redesign. */
.brand-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:18px}
.brand-button{display:flex;flex-direction:column;justify-content:center;gap:3px;min-height:64px;padding:12px 16px;border:1px solid var(--ll-rule);border-left:4px solid var(--ll-ocean);border-radius:6px;background:#fff;color:inherit;text-decoration:none}
.brand-button:hover,.brand-button:focus-visible{background:var(--ll-soft);border-color:var(--ll-ocean)}
.brand-button b{font-size:1rem;line-height:1.4}
.brand-button small{font-size:.75rem;color:var(--ll-muted);line-height:1.5}
@media(max-width:900px){.brand-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:560px){.brand-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.brand-button{padding:10px 12px;min-height:56px}.brand-button b{font-size:.9375rem}}

/* ===== 記事探索ナビ（A案 第1段階、2026-09-23、テーマ 0.9.0） =====
   親7つは名前だけのタブ、子は選んだ親のものだけ、条件は一覧の上の1つのフォーム。
   ここが唯一の定義。design.css の .category-nav button / small は試作の名残で、WP の a 要素には効かない。 */
.site-header{gap:18px}
.brand-wrap{flex:1 1 auto;min-width:0}
.header-side{display:flex;align-items:center;gap:16px;flex-shrink:0}
.header-tools{flex-shrink:0}
.utility-links{display:flex;gap:14px;flex-shrink:0}
.utility-links a{display:inline-flex;align-items:center;min-height:44px;font-size:.8125rem;font-weight:600;color:var(--ll-ocean-dark);text-decoration:none;border-bottom:1px solid transparent}
.utility-links a:hover{border-bottom-color:var(--ll-ocean-dark)}
.category-nav{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:0;padding:0;margin-block:0;border-block:1px solid var(--ll-rule)}
.category-nav a{display:flex;align-items:center;justify-content:center;min-height:52px;padding:6px 6px 4px;border:0;border-bottom:3px solid transparent;font-size:.9375rem;font-weight:700;line-height:1.4;text-align:center;text-decoration:none;color:var(--ll-ink);background:transparent;white-space:nowrap}
.category-nav a:hover{background:var(--ll-soft)}
.category-nav a[aria-current]{border-bottom-color:var(--ll-ocean);color:var(--ll-ocean-dark);background:var(--ll-soft)}
@media(min-width:801px) and (max-width:1020px){.category-nav a{font-size:.875rem;padding-inline:2px}}
.subcategory-row{display:flex;align-items:flex-start;gap:12px;padding:6px 0;border-bottom:1px solid var(--ll-rule)}
.subcategory-caption{flex-shrink:0;font-size:.6875rem;color:var(--ll-muted);letter-spacing:.06em;padding-top:11px}
.subcategory-nav{display:flex;flex-wrap:wrap;gap:4px 6px;min-width:0}
.subcategory-nav a{display:inline-flex;align-items:center;min-height:36px;padding:4px 11px;border:1px solid transparent;border-radius:6px;font-size:.8125rem;line-height:1.5;text-decoration:none;color:var(--ll-muted);background:transparent}
.subcategory-nav a:hover{background:var(--ll-soft);color:var(--ll-ocean-dark)}
.subcategory-nav a[aria-current]{background:var(--ll-ocean);border-color:var(--ll-ocean);color:#fff}
.subcategory-more{display:none}
/* 一覧の見出し：対象と件数、右に地図 */
.listing-heading{align-items:flex-end;margin-bottom:10px}
/* 絞り込み中は記事へ早く着くように、一覧の上の余白を詰める（条件なしのトップはヒーローがあるので従来どおり） */
.home-layout.is-filtered .discover-section{padding-top:16px}
.listing-heading-text{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap}
.listing-heading-text .eyebrow{flex-basis:100%;margin-bottom:0}
.listing-heading h2{margin:0}
.result-count{font-size:.8125rem;color:var(--ll-muted)}
.heading-map{color:var(--ll-accent,#af3d22);font-weight:600;padding:8px 0}
/* 条件欄：地域と条件（when の単一選択）を1つの GET フォームに。JS なしで動く */
.filter-bar{display:flex;align-items:flex-end;gap:14px;flex-wrap:wrap;padding:9px 14px 10px;margin-bottom:16px;background:#f5f8f8;border:1px solid var(--ll-rule);border-radius:8px}
.filter-field{display:flex;flex-direction:column;gap:4px;min-width:0}
.filter-field label{font-size:.6875rem;color:var(--ll-muted);letter-spacing:.04em}
.filter-field select{min-height:44px;min-width:11em;padding:6px 28px 6px 10px;border:1px solid #b8cbd0;border-radius:6px;background:#fff;font-size:.9375rem;color:var(--ll-ink)}
.filter-apply{position:relative;z-index:1;min-height:44px;padding:8px 18px;border:1px solid var(--ll-ocean);border-radius:6px;background:var(--ll-ocean);color:#fff;font-size:.875rem;font-weight:600;white-space:nowrap}
.filter-apply:hover{background:var(--ll-ocean-dark)}
.filter-apply[disabled]{opacity:.75}
.active-filters{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin:-10px 0 20px}
.filter-chip{display:inline-flex;align-items:center;gap:6px;min-height:36px;padding:4px 10px 4px 12px;border-radius:6px;background:var(--ll-soft);color:var(--ll-ocean-dark);font-size:.8125rem;text-decoration:none}
.filter-chip:hover{background:#dcebef}
.filter-chip-x{font-size:1rem;line-height:1}
.filter-reset{font-size:.8125rem;color:var(--ll-muted);text-decoration:underline;text-underline-offset:4px;min-height:36px;display:inline-flex;align-items:center;padding:0 4px}
@media(max-width:800px){
  /* 親7つは「3＋4」の2段。上に貼り付き、下へスクロールすると隠れる（フォーカスがある間は隠さない） */
  .category-nav{grid-template-columns:repeat(12,minmax(0,1fr));gap:4px;padding:5px 0;position:sticky;top:0;z-index:60;background:#fff;transition:transform .22s ease,opacity .22s ease}
  .category-nav a{grid-column:span 4;min-height:44px;padding:4px 3px 2px;border-bottom-width:2px;border-radius:4px 4px 0 0;font-size:.8125rem;font-weight:600;line-height:1.25;white-space:normal;overflow-wrap:anywhere}
  .category-nav a:nth-child(n+4){grid-column:span 3}
  body[data-nav-hidden="true"] .category-nav{transform:translateY(-110%);opacity:0;pointer-events:none}
  body[data-nav-hidden="true"] .category-nav:focus-within{transform:none;opacity:1;pointer-events:auto}
  body[data-nav-hidden="true"] .subcategory-row{display:none}
  .subcategory-row{gap:0;padding:6px 0}
  .subcategory-caption{display:none}
  .subcategory-nav{gap:4px}
  .subcategory-nav a{min-height:44px;padding:6px 10px;border-color:var(--ll-rule);font-size:.8125rem;color:var(--ll-ink);background:#fff}
  .js .subcategory-nav a[data-extra="true"]{display:none}
  .js .subcategory-nav[data-expanded="true"] a[data-extra="true"]{display:inline-flex}
  .js .subcategory-more{display:inline-flex;align-items:center;min-height:44px;padding:6px 10px;border:1px dashed var(--ll-rule);border-radius:6px;background:#fff;font-size:.8125rem;color:var(--ll-ocean-dark)}
  .content-card.with-photo{grid-row:auto}
  .filter-bar{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px;padding:10px;margin-bottom:16px}
  .filter-field select{min-width:0;width:100%;font-size:1rem}
  .filter-apply{grid-column:1/-1;width:100%}
  .listing-heading{flex-direction:column;align-items:flex-start;gap:4px;margin-bottom:12px}
  .heading-map{padding:4px 0}
}
@media(max-width:560px){
  /* スマホのヘッダー：1行目＝サイト名｜チラシ・暮らし案内・検索ボタン、2行目＝検索欄（ボタンで開く） */
  .site-header{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:6px 10px}
  .brand-wrap{min-width:0}
  .header-side{gap:10px;justify-content:flex-end}
  .utility-links{gap:10px}
  .utility-links a{font-size:.75rem}
  .header-tools{grid-column:1/-1;width:100%;margin-top:0}
  .js body[data-view] .mobile-menu-toggle{display:flex;align-items:center;border:1px solid var(--ll-rule);background:white;min-height:44px;padding:8px 10px;font-size:.75rem}
}
@media(max-width:360px){
  .brand-wordmark{font-size:1.5rem}
  .category-nav a{font-size:.75rem;letter-spacing:-.02em;padding-inline:2px}
  .subcategory-nav a{font-size:.75rem;padding:6px 8px}
}

/* カードの構造（0.9.7）：写真とカテゴリ・地域を .card-side にまとめた。PC は写真→カテゴリ→タイトルの順で従来どおり。
   スマホは .card-side が左の列になり、カテゴリ・地域は写真の下に付く。 */
.card-side{display:flex;flex-direction:column;min-width:0}
.card-side .card-meta{margin:14px 0 0}
.content-card.text-only .card-side .card-meta{margin-top:0}
.card-side+.card-body{padding-top:8px}
/* ===== スマホの記事カード：横長（案C、2026-09-23 運営者採用、テーマ 0.9.6） =====
   写真を左42%に置き、タイトルは3行で切る。説明文と「記事を読む」は出さない。催しは日付をタイトルの上に色付きで。
   pages.css が #content-grid 付きの強い指定で縦積みにしていたので、同じ接頭辞で上書きする。1件およそ150px。 */
@media(max-width:800px){
  body[data-layout="editorial"] #content-grid .content-card .card-button{display:flex;flex-direction:row;align-items:flex-start;gap:14px;padding:12px}
  /* 左の列＝写真と、その下にカテゴリ・地域（2026-09-23 運営者指示）。右の列＝日付・タイトル4行・印 */
  body[data-layout="editorial"] #content-grid .card-side{width:42%;flex:0 0 42%}
  body[data-layout="editorial"] #content-grid .photo-wrap{display:block;width:100%}
  body[data-layout="editorial"] #content-grid .card-photo{aspect-ratio:3/2;width:100%;height:auto;border-radius:6px;background:var(--ll-soft)}
  body[data-layout="editorial"] #content-grid .card-body{display:flex;flex-direction:column;padding:0;min-width:0;flex:1 1 auto}
  body[data-layout="editorial"] #content-grid .card-side .card-meta{margin:8px 0 0;gap:3px 6px;font-size:.6875rem;flex-wrap:wrap;line-height:1.5}
  body[data-layout="editorial"] #content-grid .category-label{background:var(--ll-soft);padding:1px 6px;border-radius:3px}
  body[data-layout="editorial"] #content-grid h3{font-size:.9375rem;line-height:1.5;letter-spacing:0;display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}
  /* 写真が無い記事は縦に（カテゴリ→タイトル） */
  body[data-layout="editorial"] #content-grid .content-card.text-only .card-button{flex-direction:column;gap:6px}
  body[data-layout="editorial"] #content-grid .content-card.text-only .card-side{width:auto;flex:0 0 auto}
  body[data-layout="editorial"] #content-grid .content-card.text-only .card-side .card-meta{margin-top:0}
  body[data-layout="editorial"] #content-grid .card-description,body[data-layout="editorial"] #content-grid .card-read-more{display:none}
  body[data-layout="editorial"] #content-grid .card-bottom{margin-top:6px;gap:6px}
  body[data-layout="editorial"] #content-grid .card-bottom .tag{font-size:.625rem;padding:1px 6px}
  body[data-layout="editorial"] #content-grid .card-date{order:-1;margin:0 0 3px;font-size:.75rem;font-weight:700;color:var(--ll-accent,#af3d22);line-height:1.4}
  body[data-layout="editorial"] #content-grid .content-card.text-only .card-button{border-left:3px solid var(--ll-ocean)}
  body[data-layout="editorial"] #content-grid .content-card.is-ended{opacity:.7}
  body[data-layout="editorial"] #content-grid .content-card.is-ended .card-date{color:var(--ll-muted)}
}
@media(max-width:560px){
  body[data-layout="editorial"] #content-grid{gap:12px}
  body[data-layout="editorial"] #content-grid .card-body{padding:0}
}
/* PC でも終わった催しは薄くし、日付は「終了・9/21（月）」の形（ll_card_date） */
.content-card.is-ended{opacity:.75}
.content-card.is-ended .card-date{color:var(--ll-muted)}

/* フッターの公式X（0.9.12）。読み込めない環境でも「@名前で見る」のリンクは残る */
.footer-sns{grid-column:1/-1;padding-bottom:22px;margin-bottom:10px;border-bottom:1px solid #2b4a54}
.footer-sns-title{margin:0 0 10px;font-size:.8125rem;font-weight:700;color:#fff}
.footer-sns-handle{color:#bcd9e2;margin-left:10px;font-weight:400}
.footer-sns-handle:hover{text-decoration:underline;text-underline-offset:3px}
.footer-sns-timeline{max-width:520px;border-radius:8px;overflow:hidden;background:#0f2b34;min-height:0}
.footer-sns-timeline:empty{display:none}
@media(max-width:560px){.footer-sns-timeline{max-width:none}}

/* 同じ列数の表は列幅を揃える（0.9.14）。内容で列幅が決まると、まとめ記事の表ごとに列の境目がずれる（ラーメン120選の8表で指摘）。
   PCでも table-layout:fixed にし、1列目と最後の列を固定、残りを等分する。セルの中は折り返す。 */
@media(min-width:641px){
  .entry-content .ll-table--cols-3 table,.entry-content .ll-table--cols-4 table,.entry-content .ll-table--cols-5 table,.entry-content .ll-table--cols-6 table{table-layout:fixed;width:100%}
  .entry-content .ll-table--cols-3 td,.entry-content .ll-table--cols-4 td,.entry-content .ll-table--cols-5 td,.entry-content .ll-table--cols-6 td,
  .entry-content .ll-table--cols-3 th,.entry-content .ll-table--cols-4 th,.entry-content .ll-table--cols-5 th,.entry-content .ll-table--cols-6 th{overflow-wrap:anywhere;white-space:normal;min-width:0}
  .entry-content .ll-table--cols-3 tr>:first-child{width:30%}
  .entry-content .ll-table--cols-4 tr>:first-child{width:26%}
  .entry-content .ll-table--cols-4 tr>:last-child{width:18%}
  .entry-content .ll-table--cols-5 tr>:first-child{width:22%}
  .entry-content .ll-table--cols-5 tr>:last-child{width:16%}
  .entry-content .ll-table--cols-6 tr>:first-child{width:20%}
  .entry-content .ll-table--cols-6 tr>:last-child{width:14%}
  .entry-content .ll-table--wide table{min-width:0}
}

/* まとめ記事の目次（0.9.15） */
.summary-toc{margin:14px 0 6px;padding-top:12px;border-top:1px solid var(--ll-line,#dfe6e9)}
.summary-toc-title{margin:0 0 6px;font-size:.75rem;font-weight:700;letter-spacing:.04em;color:var(--ll-muted,#5b6b72)}
.summary-toc ol{margin:0;padding-left:1.3em;font-size:.9rem;line-height:1.55}
.summary-toc li{margin:2px 0}
.summary-toc a{text-decoration:none}.summary-toc a:hover{text-decoration:underline;text-underline-offset:3px}
.entry-content h2[id],.entry-content h3[id],.entry-content h4[id]{scroll-margin-top:72px}

/* 楽天の商品カード（0.9.18）。画像＋商品名＋店名＋ボタン。画像が無いときは文字だけで成立する */
.entry-content .ll-rcards{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:14px;margin:18px 0 22px}
.entry-content .ll-rcard{margin:0;border:1px solid var(--ll-line,#dfe6e9);border-radius:10px;overflow:hidden;background:#fff}
.entry-content .ll-rcard a{display:block;color:inherit;text-decoration:none}
.entry-content .ll-rcard-img{display:block;aspect-ratio:1/1;background:#f3f5f6;overflow:hidden}
.entry-content .ll-rcard-img img{width:100%;height:100%;object-fit:contain;display:block}
.entry-content .ll-rcard-img:empty{display:none}
.entry-content .ll-rcard-body{display:block;padding:10px 12px 12px}
.entry-content .ll-rcard-name{display:block;font-size:.92rem;font-weight:600;line-height:1.45;max-height:2.9em;overflow:hidden}
.entry-content .ll-rcard-shop{display:block;font-size:.78rem;color:var(--ll-muted,#5b6b72);margin-top:4px}
.entry-content .ll-rcard-cta{display:inline-block;margin-top:8px;font-size:.8rem;font-weight:700;color:#bf0000;border:1px solid #bf0000;border-radius:999px;padding:4px 12px}
.entry-content .ll-rcard a:hover .ll-rcard-cta{background:#bf0000;color:#fff}
@media(max-width:560px){.entry-content .ll-rcards{grid-template-columns:repeat(2,1fr);gap:10px}.entry-content .ll-rcard-body{padding:8px 9px 10px}.entry-content .ll-rcard-name{font-size:.84rem}}

/* 0.9.23：一覧の説明文とタグ */
.archive-intro{margin:.6em 0 0;max-width:46em;font-size:.9375rem;line-height:1.9;color:var(--ll-muted)}
.post-tags{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:1.6em 0 0}
.post-tags-label{font-size:.6875rem;letter-spacing:.08em;color:var(--ll-muted)}
.post-tag{display:inline-block;padding:6px 12px;border:1px solid var(--ll-ocean);border-radius:999px;font-size:.875rem;font-weight:600;color:var(--ll-ocean-dark);text-decoration:none;background:var(--ll-soft)}
.post-tags--top{margin:.9em 0 0}
.post-tags--top .post-tag{background:#fff}
.post-tag:hover{background:var(--ll-soft);text-decoration:none}
/* ===== 0.9.30（2026-09-25 運営者決定 案B：フクリパ型）サイドバー・黄色マーカー ===== */
.ll-sidebar{min-width:0}
.ll-side-box+.ll-side-box{margin-top:30px}
.ll-side-head{display:flex;flex-direction:column;gap:3px;margin:0 0 8px;padding-bottom:8px;border-bottom:2px solid var(--ll-ink);font:inherit}
.ll-side-head .en{font:700 .8125rem/1 "Helvetica Neue",Arial,sans-serif;letter-spacing:.12em;color:var(--ll-ocean)}
.ll-side-head .ja{font-size:.75rem;line-height:1.4;color:var(--ll-muted)}
.ll-rank{list-style:none;margin:0;padding:0}
.ll-rank li{border-bottom:1px solid var(--ll-rule)}
.ll-rank li:last-child{border-bottom:0}
.ll-rank a{position:relative;display:flex;gap:10px;align-items:flex-start;padding:10px 0 10px 4px;color:var(--ll-ink);text-decoration:none}
.ll-rank .n{position:absolute;left:-4px;top:5px;width:26px;height:26px;border-radius:50%;background:var(--ll-ocean);color:#fff;font:700 .8125rem/26px "Helvetica Neue",Arial,sans-serif;text-align:center;z-index:1;box-shadow:0 0 0 2px #fff}
.ll-rank li:first-child .n{background:#c8a437}
.ll-rank-thumb{flex:none;width:104px;aspect-ratio:16/9;border-radius:3px;overflow:hidden;background:var(--ll-soft)}
.ll-rank-thumb img{width:100%;height:100%;object-fit:cover;display:block}
.ll-rank-body{min-width:0;display:block}
.ll-rank .t{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;font-size:.8125rem;line-height:1.5;font-weight:700}
.ll-rank .c{display:block;margin-top:3px;font-size:.6875rem;font-weight:700;color:var(--ll-ocean)}
.ll-rank a:hover .t,.ll-rank a:focus-visible .t{text-decoration:underline}
.ll-tags{display:flex;flex-wrap:wrap;gap:7px 8px;margin:0;padding:4px 0 0;list-style:none}
.ll-tags a{display:inline-block;padding:4px 11px;border:1px solid var(--ll-rule);border-radius:999px;background:#fff;color:var(--ll-ink);font-size:.8125rem;line-height:1.6;text-decoration:none}
.ll-tags a:hover,.ll-tags a:focus-visible{border-color:var(--ll-ocean);color:var(--ll-ocean)}
.ll-cats{list-style:none;margin:0;padding:0}
.ll-cats a{display:flex;justify-content:space-between;align-items:baseline;gap:10px;padding:9px 2px;border-bottom:1px dashed var(--ll-rule);color:var(--ll-ink);text-decoration:none;font-size:.875rem}
.ll-cats a:hover,.ll-cats a:focus-visible{color:var(--ll-ocean)}
.ll-cats .k{font-size:.75rem;color:var(--ll-muted)}
/* 記事ページ：右カラムの要約の下にサイドバー。本文は2行ぶんをまたぐ（右が長くても本文の上端は動かない） */
@media(min-width:801px){
 .article-layout{grid-template-rows:auto 1fr}
 .article-layout>.article-main{grid-column:1;grid-row:1 / span 2}
 .article-layout>.article-summary{grid-column:2;grid-row:1;position:static}
 .article-layout>.ll-sidebar{grid-column:2;grid-row:2;align-self:start}
}
@media(max-width:800px){.article-layout>.ll-sidebar{grid-column:1;grid-row:auto}}
/* 一覧：カードの横にサイドバー。PCはカード2列（フクリパと同じ） */
.listing-layout{display:grid;grid-template-columns:minmax(0,1fr) 290px;gap:40px;align-items:start;margin-top:25px}
.listing-layout .content-grid{margin-top:0}
@media(min-width:801px){.listing-layout .content-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:1050px){.listing-layout{grid-template-columns:minmax(0,1fr) 250px;gap:28px}}
@media(max-width:800px){.listing-layout{grid-template-columns:1fr;gap:36px}}
/* 黄色マーカー：各節の結論の1文（1記事4〜6か所まで） */
.entry-content .ll-marker{background:linear-gradient(transparent 55%,#ffe93b 55%,#ffe93b 92%,transparent 92%);font-weight:700;-webkit-box-decoration-break:clone;box-decoration-break:clone}
/* 0.9.31 一覧のPC表示（カード2列）はフクリパと同じく説明文を出さず、題名は3行で切る。スマホの横長カードは変えない */
@media(min-width:801px){
 body[data-layout="editorial"] .listing-layout #content-grid .card-description,
 body[data-layout="editorial"] .listing-layout #content-grid .card-read-more{display:none}
 body[data-layout="editorial"] .listing-layout #content-grid h3{font-size:1rem;line-height:1.6;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
 body[data-layout="editorial"] .listing-layout #content-grid .card-body{padding:14px 18px 16px}
}
/* 0.9.32（2026-09-25 運営者指示）人気のタグとカテゴリー一覧は、PCでは一覧・本文の終わりまで追従する。
   サイドバーの列を本文の高さまで伸ばし、その中で .ll-side-sticky を sticky にする（列の終わり＝次の区画に当たると止まる） */
.ll-side-sticky>.ll-side-box:first-child{margin-top:30px}
@media(min-width:801px){
 .listing-layout>.ll-sidebar,.article-layout>.ll-sidebar{align-self:stretch}
 .ll-side-sticky{position:sticky;top:20px}
}
/* ===== 英語版（KONOMACHI English, 2026-09-25）。英語のページにだけ効く ===== */
.is-en .en-nav{justify-content:flex-start;gap:6px 22px}
.is-en .en-lang a{font-weight:700}
.en-ja-name{margin:6px 0 0;color:var(--ll-muted);font-size:.9375rem}
.en-ja-name span:first-child{font-size:.75rem;letter-spacing:.04em;text-transform:uppercase;margin-right:4px}
.en-layout{max-width:760px}
.kf-facts{margin:22px 0 26px;padding:18px 20px;border:1px solid var(--ll-rule);border-top:3px solid var(--ll-ocean);background:#fff;border-radius:4px}
.kf-facts-title{margin:0 0 10px;font-size:1rem;letter-spacing:.02em}
.kf-facts-list{margin:0}
.kf-fact{display:grid;grid-template-columns:190px minmax(0,1fr);gap:12px;padding:9px 0;border-top:1px solid var(--ll-rule)}
.kf-fact:first-child{border-top:0}
.kf-fact dt{font-weight:700;font-size:.875rem;color:var(--ll-ink)}
.kf-fact dd{margin:0;font-size:.9375rem;line-height:1.7}
.kf-fact.is-unknown dd{color:var(--ll-muted)}
.kf-unknown{font-style:italic}
.kf-note{display:block;font-size:.8125rem;color:var(--ll-muted)}
.kf-list{margin:0;padding-left:1.1em}
.kf-ja{color:var(--ll-muted);font-size:.875rem}
.kf-map{font-size:.8125rem;margin-left:6px}
.kf-facts-checked{margin:12px 0 0;font-size:.8125rem;color:var(--ll-muted)}
.en-relations{margin:0 0 22px}
.en-relations>div{display:flex;gap:10px;font-size:.9375rem}
.en-relations dt{font-weight:700;min-width:110px}
.en-relations dd{margin:0}
.en-cta{margin:26px 0}
.en-listed{margin-top:34px}
.en-card{margin:18px 0 26px}
.en-card h3{margin:0 0 6px;font-size:1.125rem}
.en-card .kf-facts{margin:8px 0 0}
.en-hub-list{list-style:none;margin:20px 0;padding:0}
.en-hub-list li{padding:12px 0;border-bottom:1px solid var(--ll-rule)}
.en-hub-list a{font-weight:700;text-decoration:none;color:var(--ll-ink)}
.en-hub-kind{display:inline-block;margin-right:8px;padding:1px 7px;border-radius:3px;background:var(--ll-soft);color:var(--ll-ocean);font-size:.75rem}
.en-hub-list p{margin:4px 0 0;font-size:.875rem;color:var(--ll-muted)}
.en-footer-note{max-width:760px;font-size:.8125rem;line-height:1.7}
@media(max-width:600px){.kf-fact{grid-template-columns:1fr;gap:2px}.kf-facts{padding:14px 14px}}
/* 英語の入口メニューはスマホでも常に見せる（日本語の「記事ページではメニューを閉じる」決まりを英語では使わない） */
body.is-en[data-view] .category-nav.en-nav{display:flex;flex-wrap:wrap;gap:2px 22px;grid-template-columns:none;position:static;transform:none;opacity:1;pointer-events:auto;padding:8px 0}
body.is-en[data-view] .category-nav.en-nav a{padding:6px 2px}
.en-footer .footer-disclosure{color:rgba(255,255,255,.72)}

/* 2026-09-28 表のはみ出し：見出しと1列目の折り返し禁止（nowrap）で、長い名前が隣の列にはみ出していた（長崎の秋・九州の鉄道の秋ほか）。折り返してよいことにし、1列目は最低幅を持たせる */
.entry-content .ll-table th,.entry-content .ll-table td:first-child{white-space:normal!important;overflow-wrap:anywhere;word-break:normal}
.entry-content .ll-table td:first-child{min-width:6.5em}

/* 記事カードの投稿日（2026-09-28 運営者「読者がどれが最新記事か見れるように」）。カテゴリ・地域の行の右端に小さく。催しは「公開」を付けて開催日と見分ける */
.posted-date{position:relative;font-size:.625rem;line-height:1.4;color:var(--ll-muted);font-variant-numeric:tabular-nums;letter-spacing:.02em;white-space:nowrap;font-weight:400}
.posted-date-pre{margin-right:3px}
.card-meta .card-posted{margin-left:auto}
/* 写真のあるカード：締切のバッジは左上、投稿日は右下に重ねる（高さを変えない）。写真の無いカードはカテゴリ・地域の行の先頭と右端 */
.dl-badge{display:inline-block;padding:2px 6px;border-radius:2px;background:#b3263a;color:#fff;font-size:.625rem;font-weight:700;line-height:1.45;letter-spacing:.01em;white-space:nowrap;position:relative}
.photo-wrap .card-badge{position:absolute;left:6px;top:6px;z-index:1;box-shadow:0 1px 3px rgba(0,0,0,.18)}
.photo-wrap .card-posted.is-on-photo{position:absolute;right:6px;bottom:6px;margin:0;padding:0 5px;border-radius:2px;background:rgba(255,255,255,.92);color:#3f4d46;font-size:.5625rem;line-height:1.6;z-index:1}
/* 写真の無いカードでバッジが入ったときは、行を2行にしない（地域・カテゴリが長ければ「…」で詰める） */
.content-card .card-meta:has(.card-badge),body[data-layout] #content-grid .content-card .card-side .card-meta:has(.card-badge){flex-wrap:nowrap;min-width:0}
.content-card .card-meta:has(.card-badge)>span:not(.dl-badge){min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.content-card .card-meta:has(.card-badge)>.dl-badge,.content-card .card-meta:has(.card-badge)>.card-posted{flex-shrink:0}

/* 写真のあるカードの投稿日：本文の右下（題名・印の下、右寄せ）。余白に置き、カードの高さは増やさない（2026-09-28） */
.card-body .card-posted.is-in-body{display:block;margin-top:auto;align-self:flex-end;text-align:right;padding-top:4px}
/* 催しのカード：PC は開催日の行の右端、スマホは本文の右下（カードの高さを増やさないため置き場を分ける） */
.card-date.has-posted{display:flex;justify-content:space-between;align-items:baseline;gap:4px 10px;flex-wrap:wrap}
.card-body .card-posted.is-in-body.for-event{display:none}
@media(max-width:800px){
  body[data-layout="editorial"] #content-grid .card-date.has-posted .card-posted.is-in-date{display:none}
  body[data-layout="editorial"] #content-grid .card-body .card-posted.is-in-body.for-event{display:block}
}
/* 一覧の見出しを H1 にしたページ（2ページ目以降・絞り込み・検索。2026-09-28）：見た目は今までの h2 と同じ */
.listing-heading h1{margin:0;font-size:1.5rem;letter-spacing:.035em;line-height:1.5;font-weight:700}
@media(max-width:800px){.listing-heading h1{font-size:1.375rem}}
@media(max-width:560px){.listing-heading h1{font-size:1.25rem;letter-spacing:.025em}}
/* 締切のバッジ：デスクトップ（768px 以上）だけ約2px 大きく（2026-09-28 運営者）。スマホはそのまま */
@media(min-width:768px){.dl-badge{font-size:.75rem;padding:3px 8px;line-height:1.4}.card-meta .dl-badge{padding:1px 7px;line-height:1.35}}

/* スマホのヘッダー：英字の名前を隠し、暮らし案内・検索をロゴと同じ行に。記事のシェアは中央に（2026-09-29 運営者） */
.brand-caption:has(.brand-caption-en){gap:0}
@media(max-width:560px){.brand-caption-en{display:none}body:not([data-view="home"]) .site-header{flex-wrap:wrap;align-items:center;justify-content:space-between}body:not([data-view="home"]) .site-header>.brand-wrap{flex:1 1 0;min-width:0;width:auto}body:not([data-view="home"]) .site-header>.header-side{flex:0 0 auto;margin-left:auto}body:not([data-view="home"]) .site-header>.header-tools{flex-basis:100%}}
/* 2026-09-29 運営者：スマホは記事上部のシェアボタンを出さない（下の「この記事をシェアする」だけ）。PC は右上と下のまま */
@media(max-width:800px){.ll-share.ll-share--top{display:none}}
/* スマホのヘッダーとパンくずの余白・パンくずとシェアの余白を詰める（2026-09-29 運営者「余白が大きすぎる」） */
@media(max-width:560px){body:not([data-view="home"]) .site-header{padding-bottom:10px}.detail-view{margin-top:0}.detail-view .breadcrumbs{margin:8px 0 12px}}
/* スマホのメニュー・検索ボタン：黒い丸い錠剤型に虫めがね、開いたら CLOSE。検索欄も丸い枠に（2026-09-29 運営者の見本に合わせた） */
.js body[data-view] .mobile-menu-toggle{border:0;background:var(--ll-ink);color:#fff;border-radius:999px;min-height:40px;padding:0 20px;font-weight:700;font-size:.75rem;letter-spacing:.08em;line-height:1;cursor:pointer}
.mobile-menu-toggle .mmt-open{display:inline-flex;align-items:center;gap:10px}
.mobile-menu-toggle .mmt-close{display:none;font-size:.6875rem;letter-spacing:.06em}
body[data-menu-open="true"] .mobile-menu-toggle{padding:0 16px}
body[data-menu-open="true"] .mobile-menu-toggle .mmt-open{display:none}
body[data-menu-open="true"] .mobile-menu-toggle .mmt-close{display:inline}
@media(max-width:800px){.js body[data-view] .site-search{border:1px solid var(--ll-rule);border-radius:999px;padding:3px 4px 3px 16px;background:#fff;max-width:none}.js body[data-view] .site-search input{padding-left:0}.js body[data-view] .site-search button{background:var(--ll-ink);color:#fff;border-radius:999px;min-width:56px;min-height:38px;font-size:.75rem;font-weight:700}}
/* スマホの検索欄：入力中の枠線は欄全体（丸い枠）に付け、入力欄の四角い枠線でボタンに重ならないようにする（2026-09-29 運営者指摘） */
@media(max-width:800px){.js body[data-view] .site-search input:focus-visible{outline:none}.js body[data-view] .site-search:focus-within{border-color:var(--ll-ocean);box-shadow:0 0 0 2px var(--ll-ocean)}}
/* スマホのカード（2026-09-29 運営者）：左下はカテゴリだけ。地域は右側の札（タグと同じ見た目）。右側は タイトル→地域の札→無料などの札→投稿日。投稿日は左のカテゴリと同じ高さ（下端）。札は2段で打ち切り */
.tag-area{display:none}
@media(max-width:800px){
  body[data-layout="editorial"] #content-grid .content-card.with-photo .card-button{align-items:stretch}
  body[data-layout="editorial"] #content-grid .content-card.with-photo .card-side{justify-content:space-between}
  body[data-layout="editorial"] #content-grid .content-card.with-photo .card-side .card-area-text{display:none}
  body[data-layout="editorial"] #content-grid .content-card.with-photo .card-side .card-meta{margin-top:6px}
  body[data-layout="editorial"] #content-grid .content-card.with-photo .card-bottom{display:flex;flex-wrap:wrap;gap:4px 5px;margin-top:8px;max-height:calc(2 * 1.45em + 4px);overflow:hidden;align-content:flex-start;align-items:flex-start}
  body[data-layout="editorial"] #content-grid .content-card.with-photo .card-bottom .tag{line-height:1.45;padding:0 6px}
  body[data-layout="editorial"] #content-grid .content-card.with-photo .card-bottom .tag-area{display:inline-block}
  body[data-layout="editorial"] #content-grid .content-card.with-photo .card-body .card-posted.is-in-body{margin-top:auto;padding-top:6px;line-height:1.5}
}
/* カードのリンク構造（2026-09-29 運営者「カテゴリをクリックできるように」）：カード全体を包んでいた a をやめ、タイトルの a（.card-link）を ::after で広げる。カテゴリは別の a で、その上に置く */
.content-card{position:relative}
.card-button{text-decoration:none;color:inherit;height:100%;display:flex}
.card-link{color:inherit;text-decoration:none}
.card-link::after{content:"";position:absolute;inset:0;z-index:1}
.card-button:hover .card-link{text-decoration:underline;text-underline-offset:4px}
a.category-label{position:relative;z-index:2;text-decoration:none}
a.category-label:hover,a.category-label:focus-visible{text-decoration:underline;text-underline-offset:3px}
.card-link:focus-visible{outline:none}
.content-card:has(.card-link:focus-visible){outline:3px solid var(--ll-ocean);outline-offset:-4px}
/* 記事のパンくず（2026-09-29 運営者）：ホーム／親／子（または地域）／記事名。2行まで（はみ出しは…）。文字は従来より 2px 小さく（PC 12→10px、スマホ 11→9px） */
.detail-view .breadcrumbs{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;font-size:.625rem;line-height:1.9}
.detail-view .breadcrumbs>*{display:inline}
.detail-view .breadcrumbs>span[aria-hidden]{margin:0 .6em}
.detail-view .breadcrumbs a{text-underline-offset:3px}
@media(max-width:560px){.detail-view .breadcrumbs{font-size:.5625rem}}
/* スマホの記事の文字（ウォーカープラスに合わせる。2026-09-29 運営者）：本文 15px・行の高さ 24px、記事タイトル 20px 太字、見出しはそのまま、左右の余白 12px（記事ページだけ） */
@media(max-width:560px){
  body:has(.detail-view) .page-width{width:calc(100% - 24px)}
  body .detail-view .article-main p,body .detail-view .article-main li,body .detail-view .article-introduction>p{font-size:15px;line-height:24px}
  body .detail-view .article-heading h1{font-size:20px;font-weight:700;line-height:1.5}
}
/* タグの見た目を右欄の「人気のタグ」に統一（2026-09-29 運営者。記事タイトル下・記事下とも。PC・スマホ共通） */
.post-tags{gap:7px 8px}
.post-tag,.post-tags--top .post-tag{padding:4px 11px;border:1px solid var(--ll-rule);border-radius:999px;background:#fff;color:var(--ll-ink);font-size:.8125rem;font-weight:400;line-height:1.6;text-decoration:none}
.post-tag:hover,.post-tag:focus-visible{background:#fff;border-color:var(--ll-ocean);color:var(--ll-ocean);text-decoration:none}
/* 「この記事に載せた場所」：地図しか無い場所は1行（2026-09-29 運営者） */
.place-cards .place-card.is-compact{padding:12px 16px;margin-top:8px}
.place-cards .place-card.is-compact+.place-card.is-compact{margin-top:6px}
.place-card-line{margin:0;font-size:15px;line-height:24px}
.place-card-name{font-weight:600}
/* スマホの記事の項目表（利用する前に知っておきたいこと・場所・アクセスなど）の縦を詰める（2026-09-29 運営者「余白多い」） */
@media(max-width:560px){
  body .detail-view .article-main .information-list>div{padding:8px 0;gap:10px}
  body .detail-view .article-main .information-list dt{line-height:1.6}
  body .detail-view .article-main .information-list dd{line-height:1.6}
  body .detail-view .article-main .prose-section{margin-top:24px}
  body .detail-view .article-main .prose-section h2{margin-bottom:6px}
}
/* 終わった公演・催しのサムネイルに「公開終了済み」（元の写真が透けて見える。2026-09-29 運営者） */
.content-card.is-ended .photo-wrap::after,.article-photo.is-ended::after{content:"公開終了済み";position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:rgba(25,43,48,.55);color:#fff;font-weight:700;letter-spacing:.12em;font-size:.875rem;z-index:1;pointer-events:none}
.article-photo.is-ended{position:relative}
.article-photo.is-ended::after{font-size:1.25rem;bottom:auto;aspect-ratio:auto;height:100%}
/* PC の記事まわり（2026-09-29 運営者）。スマホの見た目は変えない */
.content-card .category-main,.content-card .card-posted.is-in-meta,.content-card .card-tags{display:none}
@media(min-width:801px){
  /* 4) 検索：丸い枠＋右に濃い色のボタン（虫めがねの下に「検索」） */
  .site-header .site-search{border:1px solid #d3d6d6;border-radius:999px;padding:0 0 0 22px;background:#fff;max-width:420px;height:48px;overflow:hidden;align-items:stretch}
  .site-header .site-search input{width:260px;padding:0 10px 0 0;font-size:.875rem;border:0;outline:none}
  .site-header .site-search:focus-within{border-color:var(--ll-ocean);box-shadow:0 0 0 2px var(--ll-ocean)}
  .site-header .site-search button{min-width:72px;min-height:0;height:100%;background:#333;color:#fff;border-radius:0 999px 999px 0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;font-size:.6875rem;font-weight:700;letter-spacing:.06em;padding:0 14px 0 10px}
  .site-header .site-search button::before{content:"";width:18px;height:18px;background:no-repeat center/contain url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Ccircle cx='10.5' cy='10.5' r='6.5' fill='none' stroke='white' stroke-width='2.4'/%3E%3Cpath d='M15.5 15.5 21 21' stroke='white' stroke-width='2.4' stroke-linecap='round'/%3E%3C/svg%3E")}
  /* 5) ヘッダー〜パンくず〜タイトルの余白を少し詰める */
  .detail-view .breadcrumbs{margin:14px 0 20px}
  /* 6) タイトルとシェアを左右に分ける（右の列 300px。右上の広告はこの列に入れる予定） */
  .detail-view .article-heading{display:grid;grid-template-columns:minmax(0,1fr) 300px;column-gap:32px;position:relative}
  .detail-view .article-heading>*{grid-column:1}
  .detail-view .article-heading>.ll-share--top{grid-column:2;grid-row:1/span 8;position:static;align-self:start;justify-content:center} /* 2026-09-30 右の列の中で中央揃え */
  .detail-view .article-heading .article-kicker,.detail-view .article-heading h1{padding-right:0}
  /* 7) 記事タイトル：2px 小さく、太字 */
  .detail-view .article-heading h1{font-size:calc(clamp(1.75rem,3vw,2.5rem) - 2px);font-weight:700}
  /* 8) 項目表の縦を詰める */
  .detail-view .article-main .information-list>div{padding:11px 0}
  .detail-view .article-main .information-list dd{line-height:1.75}
  /* 9) カード：写真の下の左にメインカテゴリ、右に投稿日 → タイトル → 入るだけタグ（#xx、囲みなし・小さめ） */
  .content-card .card-side .card-meta{display:flex;flex-wrap:nowrap;justify-content:space-between;align-items:center;gap:8px}
  .content-card .card-side .card-meta>.category-label,.content-card .card-side .card-meta>.card-area-text{display:none}
  .content-card .category-main{display:inline-block;color:var(--ll-ocean);font-weight:700;text-decoration:none;position:relative;z-index:2;background:var(--ll-soft);padding:1px 7px;border-radius:3px;font-size:.75rem}
  .content-card .category-main:hover{text-decoration:underline;text-underline-offset:3px}
  .content-card .card-posted.is-in-meta{display:inline-block;margin:0 0 0 auto;font-size:.75rem;color:var(--ll-muted);white-space:nowrap}
  .content-card .card-body .card-posted.is-in-body,.content-card .card-date .card-posted.is-in-date{display:none}
  .content-card.with-photo .card-description,.content-card.with-photo .card-read-more,.content-card.with-photo .card-bottom{display:none}
  .content-card .card-tags{display:flex;flex-wrap:wrap;gap:0 10px;margin:6px 0 0;font-size:.75rem;line-height:1.7;color:var(--ll-muted);max-height:1.7em;overflow:hidden}
}
/* PC：記事更新・公式情報の確認の行を、タイトルの上のカテゴリの行の右端へ（2026-09-30 運営者） */
@media(min-width:801px){
  .detail-view .article-heading{grid-template-columns:minmax(0,1fr) auto 300px}
  .detail-view .article-heading>*{grid-column:1/3}
  .detail-view .article-heading>.ll-share--top{grid-column:3}
  .detail-view .article-heading>.article-kicker{grid-column:1;grid-row:1;margin-bottom:10px}
  .detail-view .article-heading>.article-byline{grid-column:2;grid-row:1;justify-self:end;align-self:center;margin:0 0 10px;text-align:right;white-space:nowrap}
  .detail-view .article-heading>h1{grid-row:2}
}
/* 見出しの直後に項目表が来る節は、見出しの下の余白をなくす（1行目だけ上が空いていた。2026-09-30 運営者） */
body .detail-view .article-main .prose-section>h2:has(+ .information-list){margin-bottom:0}
/* ASP バナー枠（2026-09-30）：300×250 の右上（PC のみ）・記事の終わり・PC の右のスティッキー欄 */
.ll-bn{margin:0 auto 18px;text-align:center}
.ll-bn .ll-ad-label{font-size:.625rem;color:var(--ll-muted);letter-spacing:.08em;margin:0 0 4px;text-align:center}
.ll-bn-body{display:flex;justify-content:center}
.ll-bn-body img{max-width:100%;height:auto}
.ll-bn-body img[width="1"],.ll-bn-body img[height="1"]{position:absolute;width:1px;height:1px}
.ll-bn-top{display:none}
.ll-bn-end{margin:32px auto}
@media(min-width:801px){
  .detail-view .article-heading>.ll-bn-top{display:block;grid-column:3;grid-row:1;margin:0 0 12px;width:300px}
  .detail-view .article-heading:has(>.ll-bn-top)>.ll-share--top{grid-row:2/span 8}
  .article-summary .ll-bn-side{margin-top:20px}
}
/* 右上の広告とシェアを1つの箱に（2026-09-30）。スマホは箱を無いものとして扱う */
.heading-aside{display:contents}
@media(min-width:801px){
  .detail-view .article-heading>.heading-aside{display:flex;flex-direction:column;align-items:center;gap:12px;grid-column:3;grid-row:1/span 8;align-self:start}
  .detail-view .article-heading>.heading-aside>.ll-bn-top{display:block;margin:0;width:300px}
  .detail-view .article-heading>.heading-aside>.ll-share--top{position:static;justify-content:center;margin:0}
}
/* タイトルのまとまりを左の列（本文と同じ列）へ、右上の広告とシェアは右の欄の先頭へ（2026-09-30 運営者「余白が大きすぎる」） */
@media(min-width:801px){
  .detail-view .article-main>.article-heading{display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:24px}
  .detail-view .article-main>.article-heading>*{grid-column:1/-1}
  .detail-view .article-main>.article-heading>.article-kicker{grid-column:1;grid-row:1}
  .detail-view .article-main>.article-heading>.article-byline{grid-column:2;grid-row:1}
  .detail-view .article-main>.article-heading>h1{grid-row:2}
  .article-summary>.heading-aside{display:flex;flex-direction:column;align-items:center;gap:12px;margin:0 0 24px}
  .article-summary>.heading-aside>.ll-bn-top{display:block;margin:0;width:300px;max-width:100%}
  .article-summary>.heading-aside>.ll-share--top{display:flex;position:static;justify-content:center;margin:0}
}
/* 本文の途中の広告（スマホだけ。PC は右上に同じ第1候補があるので出さない。PC 用の横長は別途） 2026-09-30 */
.ll-bn-mid{margin:28px auto}
@media(min-width:801px){.ll-bn-mid{display:none}}
/* PC：右の欄の先頭（広告・シェア）は白地に。青い背景と上の線は「まず、ここをチェック」からにする／カテゴリメニュー〜パンくずの余白（記事の上マージンと重なっていた）を詰める 2026-09-30 */
@media(min-width:801px){
  .article-summary>.heading-aside{margin:-29px -24px 26px;padding:0 0 22px;background:var(--ll-paper,#fff);border-bottom:3px solid var(--ll-ocean)}
  .detail-view{margin-top:0}
  .detail-view .breadcrumbs{margin:12px 0 18px}
}
/* 2026-09-30 運営者：「まず、ここをチェック」の箱の上端をサムネイルの上端にそろえる。
   左列1行目＝パンくず・タイトル、右列1行目＝広告、2行目＝本文（サムネイルから）と青い箱（シェア→AT A GLANCE） */
.article-head-col{min-width:0}
.article-ad-col{display:none}
@media(min-width:801px){
  .detail-view .article-layout{grid-template-rows:auto auto 1fr;row-gap:0} /* 本文の長さの余りは3行目が受ける（ランキングを青い箱のすぐ下に） */
  .detail-view .article-head-col{grid-column:1;grid-row:1}
  .detail-view .article-ad-col{display:flex;justify-content:center;align-items:flex-start;grid-column:2;grid-row:1;padding-bottom:18px}
  .detail-view .article-ad-col .ll-bn-top{display:block;margin:0;width:300px;max-width:100%}
  .detail-view .article-main{grid-column:1;grid-row:2/span 2}
  .detail-view .article-summary{grid-column:2;grid-row:2}
  .detail-view .article-layout>.ll-sidebar{grid-column:2;grid-row:3;align-self:stretch} /* 右の欄の続き（ランキング等）は青い箱の下。stretch で本文の終わりまで伸ばし、タグ・カテゴリーを追従させる（2026-10-02 修正：start で追従が止まっていた） */
  .detail-view .article-head-col>.article-heading{display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:24px}
  .detail-view .article-head-col>.article-heading>*{grid-column:1/-1}
  .detail-view .article-head-col>.article-heading>.article-kicker{grid-column:1;grid-row:1}
  .detail-view .article-head-col>.article-heading>.article-byline{grid-column:2;grid-row:1}
  .detail-view .article-head-col>.article-heading>h1{grid-row:2}
  .article-summary>.ll-share--top{display:flex;justify-content:center;position:static;margin:0 0 18px;padding-bottom:16px;border-bottom:1px solid var(--ll-rule)}
}
@media(max-width:800px){.detail-view .article-layout{display:block}.article-ad-col{display:none}}

/* 2026-09-30 運営者：スマホの関連記事は縦に5件の小さめの一覧（サイドバーの WEEKLY RANKING の上）。PC は従来の3枚の横並び */
.related-sp{display:none}
@media(max-width:800px){
  .related-pc{display:none}
  .related-sp{display:block;margin:36px 0 8px;padding-top:24px;border-top:1px solid var(--ll-rule)}
  .related-sp .eyebrow{margin:0 0 2px}
  .related-sp-title{font-size:1.0625rem;line-height:1.4;margin:0 0 10px}
  .related-sp-list{list-style:none;margin:0;padding:0}
  .related-sp-item{border-bottom:1px solid var(--ll-rule)}
  .related-sp-item:last-child{border-bottom:0}
  .related-sp-link{display:flex;gap:12px;align-items:flex-start;padding:12px 0;color:inherit;text-decoration:none}
  .related-sp-thumb{flex:0 0 104px;width:104px;height:70px;border-radius:6px;overflow:hidden;background:var(--ll-soft)}
  .related-sp-thumb img{width:100%;height:100%;display:block}
  .related-sp-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:6px}
  .related-sp-name{font-size:.875rem;line-height:1.45;font-weight:700;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
  .related-sp-meta{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:.6875rem;color:var(--ll-muted)}
  .related-sp-cat{color:var(--ll-ocean-dark);font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .related-sp-date{flex:0 0 auto}
}

/* 2026-10-02 運営者：右の追従枠にバナーを入れるため、カテゴリーの行を詰める（44px→32px）。バナーは 300×100／320×50 を想定。見える高さが 680px 未満の画面では下が切れるので隠す */
@media(min-width:801px){
 .ll-side-sticky .ll-cats a{padding-top:3px;padding-bottom:3px}
 .ll-side-sticky .ll-bn-sticky{margin:14px 0 0;text-align:center}
 .ll-side-sticky .ll-side-box+.ll-side-box{margin-top:22px}
 .ll-side-sticky .ll-side-head{margin-bottom:6px} /* 2026-10-04 300×250 を入れるため、追従枠の中の余白を 16px 詰める */
 .ll-side-sticky .ll-bn-sticky img{display:block;max-width:100%;height:auto;margin:0 auto}
}
/* 2026-10-04 運営者「タグを増やし、広告の枠を高く」：バナーは 300×250。低い画面で隠していた決まり（高さ600px未満）はやめ、
   枠を画面に合わせる処理（helpers.php の ll_sidebar_build の 5）でタグの行を減らすか、枠の下端を画面の下にそろえる */
@media(max-width:800px){.ll-bn-sticky{display:none}}
/* 2026-10-04 運営者「東京はこの街手帖東京版…どこが対象かわかるように左上のロゴを」：地域のページは文字のロゴの右に版の札 */
.brand--region .brand-wordmark{display:inline-block;vertical-align:middle}
.brand-edition{display:inline-block;vertical-align:middle;margin-left:10px;padding:3px 10px 4px;border-radius:999px;background:var(--ll-accent);color:#fff;font:700 1rem/1.2 var(--ll-font);letter-spacing:.04em;white-space:nowrap}
@media(max-width:800px){.brand-edition{margin-left:8px;padding:2px 8px 3px;font-size:.8125rem}} /* スマホもタグは40個（2026-10-04 運営者「タグの数はスマホも同じく増やして」。スマホの右の欄はページの下で、画面に合わせる必要がない） */
/* 版の切り替え（2026-10-04 運営者「A案」）：版の札（summary）を押すと版の一覧。JS なしで開閉でき、外を押す・Esc で閉じる。色は墨・海・朱・罫・薄青だけ */
.brand-line{position:relative;display:flex;align-items:center;min-width:0}
.brand-wrap--ed{position:relative;z-index:70} /* 分類の行（.category-nav：sticky・z-index 60）より上に一覧を開く */
.edition-switch{flex:none}
.edition-switch>summary{list-style:none;position:relative;display:inline-flex;align-items:center;gap:5px;cursor:pointer;user-select:none}
.edition-switch>summary::-webkit-details-marker{display:none}
.edition-switch>summary::after{content:"";position:absolute;inset:-12px -6px} /* 押せる範囲を 44px 前後に広げる（見た目はそのまま） */
.edition-switch>summary svg{width:11px;height:11px;flex:none}
.edition-switch[open]>summary svg{transform:rotate(180deg)}
.edition-switch>summary:focus-visible{outline:2px solid var(--ll-ocean,#006078);outline-offset:2px}
.es-panel{position:absolute;left:0;top:calc(100% + 8px);width:300px;background:#fff;border:1px solid #192b30;border-radius:2px;box-shadow:0 8px 18px rgba(25,43,48,.14);padding:6px 0 4px;text-align:left}
.es-head{margin:0;padding:6px 16px 8px;font-size:.75rem;color:#5b6b70;border-bottom:1px solid #d6e0e2}
.es-panel ul{list-style:none;margin:0;padding:0}
.es-panel li+li{border-top:1px solid #d6e0e2}
.es-panel a{display:grid;grid-template-columns:auto 1fr auto;gap:2px 12px;align-items:baseline;padding:11px 16px;min-height:44px;box-sizing:border-box;text-decoration:none;color:#192b30}
.es-panel a b{font-size:.9375rem;font-weight:700;color:#006078}
.es-panel a span{font-size:.75rem;color:#5b6b70}
.es-panel a em{font-style:normal;font-size:.6875rem;color:#5b6b70}
.es-panel a[aria-current]{box-shadow:inset 3px 0 0 #192b30;background:#eef5f6}
.es-panel a[aria-current] b{color:#192b30}
.es-panel a:hover b,.es-panel a:focus-visible b{text-decoration:underline}
.es-panel a:focus-visible{outline:2px solid #006078;outline-offset:-2px}
@media(max-width:800px){.edition-switch>summary{gap:4px}.edition-switch>summary svg{width:9px;height:9px}}
@media(max-width:560px){.es-panel{width:calc(100vw - 32px)}}
/* 版の札を少し大きく、ロゴの文字の上下の中央にそろえる（2026-10-04 運営者「もう少し大きく」「上下でセンターにアライン」） */
.brand-line .brand{display:flex;align-items:center}
.brand-line .brand-wordmark{line-height:1}
.edition-switch>summary.brand-edition{margin-left:12px;padding:5px 12px 6px 13px;font-size:1.125rem;line-height:1.2;gap:6px}
.edition-switch>summary svg{width:12px;height:12px}
@media(max-width:800px){.edition-switch>summary.brand-edition{margin-left:8px;padding:4px 9px 5px 10px;font-size:.9375rem;gap:5px}.edition-switch>summary svg{width:10px;height:10px}}
/* ヘッダーは全部の画面で同じ形（2026-10-04 運営者「全部の画面でヘッダー部分は統一」「ウェブタイトルもトップと詳細でフォントサイズが異なる…全部パーツ統一」）。
   それまでスマホはトップ（grid・ロゴ26px・上下19/12px）と記事など（flex・ロゴ28px・上下22/10px）で違っていた。記事などの形にそろえる。
   スマホは「暮らし案内」を出さない（トップで消した指示を全画面に）。左右の余白だけは各ページの本文に合わせる（トップ16px・記事12px） */
@media(max-width:800px){body[data-view] .utility-links{display:none}}
@media(max-width:560px){
  body[data-view] .site-header{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;padding-block:22px 10px}
  body[data-view] .site-header>.brand-wrap{flex:1 1 0;min-width:0;width:auto}
  body[data-view] .site-header>.header-side{flex:0 0 auto;margin-left:auto}
  body[data-view] .site-header>.header-tools{flex-basis:100%}
  body[data-view] .site-header .brand-wordmark{font-size:1.75rem;letter-spacing:-1.4px}
}
@media(max-width:360px){body[data-view] .site-header .brand-wordmark{font-size:1.5rem}}
/* まとめ記事の店の節の中の表（名前・住所・電話・地図・公式サイト。2026-10-07 案A）：見出しの列を細く、スマホでも2列のまま */
.entry-content .ll-place-table th{width:7.5em;white-space:nowrap}
@media(max-width:800px){.entry-content .ll-place-table th{width:6.5em;white-space:nowrap!important}}
/* 同じ表：前の「この記事に載せた店」と同じ薄い地の色、次の見出しとの間を空ける（2026-10-07 運営者「余白が少なすぎて見づらい」「今までの背景色を継続」） */
.entry-content .ll-place-table{margin:24px 0 56px;width:100%;background:#f7f8f7}.entry-content .ll-place-table th,.entry-content .ll-place-table td{background:#f7f8f7}
@media(max-width:800px){.entry-content .ll-place-table{margin:20px 0 44px}}
