/* ご当地イベント（v3.2.4）。文字はテーマ本文と同じ大きさ。要素名つきで書く（詳細度で負けないように） */
div.gtd-gev [hidden], span.gtd-gev [hidden], div.gtd-gev[hidden] { display: none !important; }

/* 開催中・開催予定のカード */
div.gtd-gev-now div.gtd-gev-card { border: 1px solid #e3c4d2; border-left: 6px solid #d6336c; border-radius: 6px; padding: 10px 12px; margin: 0 0 12px; background: #fff; }
div.gtd-gev-now div.gtd-gev-sec[data-sec="pre"] div.gtd-gev-card { border-left-color: #f0a6c0; background: #fffafc; }
/* 「開催中」「開催予定」の小見出し（3.2.2 から p。目次に載せないため）。
   値はサイトの H3（Cocoon：22px・太字・下線 約2.7px #202020・余白 6px 15px）を写したもの。テーマの見出しを変えたらここも */
div.gtd-gev-now p.gtd-gev-sh { font-weight: 700; color: #333; line-height: 1.25; margin: 45px 0 1.62em; }
div.gtd-gev-now p.gtd-gev-sh-h3 { font-size: 1.2222em; padding: 6px 15px; border-bottom: 2.6667px solid #202020; }
div.gtd-gev-now p.gtd-gev-sh-h4 { font-size: 1.1em; padding: 4px 10px; border-left: 4px solid #202020; margin-top: 30px; }
div.gtd-gev-now p.gtd-gev-sh-h5 { font-size: 1em; margin: 20px 0 .8em; }
div.gtd-gev-now p.gtd-gev-ttl { margin: 0 0 4px; font-weight: 700; display: flex; flex-wrap: wrap; gap: 4px 10px; align-items: baseline; }
/* 3.2.4 母艦（split）：名前はカードの外の本物の見出し（テーマの H3 の見た目のまま）。リンクの色だけ見出しの色に */
div.gtd-gev-now .gtd-gev-name a { color: inherit; text-decoration: none; }
div.gtd-gev-now .gtd-gev-name a:hover { text-decoration: underline; }
div.gtd-gev-now div.gtd-gev-item div.gtd-gev-card { margin-bottom: 20px; }
div.gtd-gev-now .gtd-gev-name span.gtd-gev-left { font-size: .75em; font-weight: 700; vertical-align: middle; margin-left: .3em; padding: 2px 12px; white-space: nowrap; }   /* 3.2.10 前のカードの日数と同じくらいの大きさ */
div.gtd-gev-now span.gtd-gev-gleft { display: inline-block; margin-left: .6em; font-size: .9em; font-weight: 700; color: #fff; background: #d6336c; border-radius: 999px; padding: 0 10px; white-space: nowrap; }   /* 3.2.11 現地開催までの日数 */
div.gtd-gev-now span.gtd-gev-gleft:empty { display: none; }
div.gtd-gev-now p.gtd-gev-secempty { margin: 0 0 16px; }
div.gtd-gev-now span.gtd-gev-left { font-size: .9em; color: #fff; background: #d6336c; border-radius: 999px; padding: 0 10px; }
div.gtd-gev-now span.gtd-gev-left:empty { display: none; }
div.gtd-gev-now p.gtd-gev-st { margin: 0 0 6px; font-weight: 700; color: #a61e4d; }
div.gtd-gev-now p.gtd-gev-st:empty { display: none; }
div.gtd-gev-now dl.gtd-gev-dl { display: grid; grid-template-columns: auto 1fr; gap: 2px 10px; margin: 0; }
div.gtd-gev-now dl.gtd-gev-dl dt { color: #666; white-space: nowrap; }
div.gtd-gev-now dl.gtd-gev-dl dd { margin: 0; }
div.gtd-gev-now p.gtd-gev-map { margin: 6px 0 0; text-align: right; }
div.gtd-gev-now p.gtd-gev-empty, div.gtd-gev-now p.gtd-gev-one { margin: 0 0 12px; }
div.gtd-gev-now span.gtd-gev-usual { color: #666; font-size: .9em; }

/* 3.2.1 カードの画像（「◯◯とは」の最初の画像／アイキャッチ） */
div.gtd-gev-now div.gtd-gev-card.is-side { display: flex; gap: 12px; align-items: flex-start; }
div.gtd-gev-now div.gtd-gev-card.is-side a.gtd-gev-img { flex: 0 0 30%; max-width: 180px; }
div.gtd-gev-now div.gtd-gev-card.is-side div.gtd-gev-main { flex: 1 1 auto; min-width: 0; }
div.gtd-gev-now div.gtd-gev-card a.gtd-gev-img { display: block; line-height: 0; }
div.gtd-gev-now div.gtd-gev-card a.gtd-gev-img img { width: 100%; height: auto; max-height: 220px; object-fit: contain; border-radius: 4px; }
div.gtd-gev-now div.gtd-gev-card.is-wide a.gtd-gev-img { margin: 0 0 8px; }
div.gtd-gev-now div.gtd-gev-card.is-wide a.gtd-gev-img img { max-height: 160px; }
@media (max-width: 480px) { div.gtd-gev-now div.gtd-gev-card.is-side dl.gtd-gev-dl { grid-template-columns: 1fr; } div.gtd-gev-now div.gtd-gev-card.is-side dl.gtd-gev-dl dt { margin-top: 2px; } }

/* 各記事の冒頭の帯 */
div.gtd-gev-nav { margin: 0 0 16px; }
div.gtd-gev-nav p.gtd-gev-band { margin: 0 0 6px; padding: 8px 12px; border-radius: 6px; background: #f3f3f3; }
div.gtd-gev-nav p.gtd-gev-band.is-now { background: #fde8ef; border-left: 6px solid #d6336c; }
div.gtd-gev-nav p.gtd-gev-band.is-pre { background: #fff4f8; border-left: 6px solid #f0a6c0; }
div.gtd-gev-nav p.gtd-gev-band.is-end { background: #f3f3f3; border-left: 6px solid #aaa; }
div.gtd-gev-nav p.gtd-gev-about { margin: 0; font-size: .9em; color: #555; }

/* 表（横にはみ出すときは表だけが動く） */
div.gtd-gev-tbl div.gtd-gev-scroll { overflow-x: auto; -webkit-overflow-scrolling: touch; }
div.gtd-gev-tbl table { border-collapse: collapse; min-width: 100%; }
div.gtd-gev-tbl table th { background: #333; color: #fff; white-space: nowrap; }
div.gtd-gev-tbl table th, div.gtd-gev-tbl table td { border: 1px solid #ccc; padding: 6px 8px; vertical-align: top; }
div.gtd-gev-tbl table td.gtd-gev-c { text-align: center; }

/* 管理者だけの赤字 */
div.gtd-gev div.gtd-gev-adm { color: #a00; font-weight: 700; border: 2px solid #a00; padding: 8px; margin: 8px 0; font-size: .9em; }

/* 3.2.12 各記事の末尾「ほかの開催中・開催予定のご当地イベント」（題は見出しタグにしない＝目次に載せない） */
div.gtd-gev-more { margin: 32px 0 24px; padding: 14px 16px 4px; border: 1px solid #e3c4d2; border-radius: 8px; background: #fff7fa; }
div.gtd-gev-more p.gtd-gev-moreh { margin: 0 0 10px; font-size: 1.15em; font-weight: 700; color: #a61e4d; }
div.gtd-gev-more p.gtd-gev-moresh { margin: 0 0 6px; font-weight: 700; color: #666; font-size: .9em; }
div.gtd-gev-more p.gtd-gev-hub { margin: 0 0 10px; text-align: right; font-weight: 700; }
div.gtd-gev-more:has(> p.gtd-gev-one:not([hidden])) { padding-bottom: 0; background: none; border: 0; margin: 16px 0; }

/* 3.3.0 近くのご当地スポット */
div.gtd-gev-near { margin: 16px 0 24px; padding: 12px 14px; border: 1px solid #d9d2c4; border-radius: 8px; background: #fbf9f4; }
div.gtd-gev-near p.gtd-gev-nearh { margin: 0 0 8px; font-weight: 700; font-size: 1.1em; }
div.gtd-gev-near span.gtd-gev-nearsub { font-weight: 400; font-size: .85em; color: #666; margin-left: .3em; }
div.gtd-gev-near p.gtd-gev-neartabs { margin: 0 0 8px; display: flex; gap: 6px; }
div.gtd-gev-near p.gtd-gev-neartabs[hidden] { display: none; }
div.gtd-gev-near p.gtd-gev-neartabs button { font: inherit; font-size: .9em; padding: 2px 12px; border: 1px solid #b9ad94; border-radius: 999px; background: #fff; color: #555; cursor: pointer; }
div.gtd-gev-near p.gtd-gev-neartabs button.is-on { background: #6b5a3a; border-color: #6b5a3a; color: #fff; }
div.gtd-gev-near ol.gtd-gev-nearlist { margin: 0 0 6px; padding-left: 1.6em; }
div.gtd-gev-near ol.gtd-gev-nearlist li { margin: 0 0 4px; }
div.gtd-gev-near ol.gtd-gev-nearlist li a { font-weight: 700; }
div.gtd-gev-near span.gtd-gev-nearcat { margin-left: .5em; font-size: .85em; color: #666; }
div.gtd-gev-near span.gtd-gev-neark { margin-left: .5em; font-size: .9em; }
div.gtd-gev-near span.gtd-gev-nearv { margin-left: .5em; font-size: .8em; color: #2b8a3e; border: 1px solid #2b8a3e; border-radius: 4px; padding: 0 5px; white-space: nowrap; }
div.gtd-gev-near p.gtd-gev-nearnone { margin: 0 0 6px; }
div.gtd-gev-near p.gtd-gev-nearnote { margin: 0; font-size: .8em; color: #777; }

/* 3.4.0 鉄道コラボ：駅ごと（押して開く） */
div.gtd-gev-near details.gtd-gev-nearst { margin: 0 0 6px; border-top: 1px dashed #d9d2c4; padding-top: 6px; }
div.gtd-gev-near details.gtd-gev-nearst summary { cursor: pointer; font-weight: 700; padding: 2px 0; }
div.gtd-gev-near details.gtd-gev-nearst[open] summary { margin-bottom: 4px; }
