/* ご当地データ v1.7.0
   表づくりの決めごと準拠：ヘッダーは黒地に白抜き／空の値は全角の－／文字はテーマ本文と同じ大きさ
   詳細度の罠対策のため、セレクタには要素名を必ず付けている */

.gtd{ margin:1.4em 0; font-size:1rem; line-height:1.5; }
.gtd *{ box-sizing:border-box; }

/* ---- 横スクロールの器（左右の端に影／端まで来ると消える） ---- */
.gtd .gtd-scroll{
	position:relative; overflow-x:auto; -webkit-overflow-scrolling:touch;
	background:
		linear-gradient(90deg,#fff 30%,rgba(255,255,255,0)),
		linear-gradient(90deg,rgba(255,255,255,0),#fff 70%) 100% 0,
		radial-gradient(farthest-side at 0 50%,rgba(0,0,0,.16),transparent),
		radial-gradient(farthest-side at 100% 50%,rgba(0,0,0,.16),transparent) 100% 0;
	background-repeat:no-repeat;
	background-size:34px 100%,34px 100%,14px 100%,14px 100%;
	background-attachment:local,local,scroll,scroll;
}
.gtd p.gtd-hint{ display:none; margin:0 0 5px; font-size:.82em; font-weight:600; color:#8b3a3a; }
.gtd p.gtd-hint.is-on{ display:block; }

/* ---- 表の共通。幅は中身に合わせて縮める ---- */
.gtd table.gtd-t{
	width:auto; max-width:none; border-collapse:collapse; table-layout:auto; margin:0;
	font-size:1em;
}
.gtd table.gtd-t th{
	background:#333; color:#fff; font-weight:600; padding:8px;
	border:1px solid #555; line-height:1.3; text-align:center; white-space:nowrap;
}
.gtd table.gtd-t th.gtd-th-l{ text-align:left; }
.gtd table.gtd-t td{
	padding:6px 8px; border:1px solid #d8dce3; line-height:1.45;
	text-align:center; vertical-align:middle; background:#fff; white-space:nowrap;
}
.gtd table.gtd-t tbody tr:nth-child(even) td{ background:#fafbfc; }
.gtd table.gtd-t td.gtd-name{ text-align:left; }
.gtd table.gtd-t td.gtd-loc{ text-align:left; }
.gtd table.gtd-t td.gtd-hist{ text-align:left; white-space:normal; }
.gtd table.gtd-t td.gtd-none{ color:#9aa0aa; }
.gtd table.gtd-t .gtd-none{ color:#9aa0aa; }
.gtd table.gtd-t a{ color:#8b3a3a; text-decoration:none; }
.gtd table.gtd-t a:hover{ text-decoration:underline; }

/* ソートできる見出し */
.gtd table.gtd-t th[data-sort]{ cursor:pointer; user-select:none; }
.gtd table.gtd-t th[data-sort]:hover{ background:#444; }
.gtd table.gtd-t th .gtd-ar{ font-size:.78em; opacity:.5; margin-left:3px; }
.gtd table.gtd-t th.is-sorted .gtd-ar{ opacity:1; }

/* 種類＋Noの列。2段に積んで横幅を詰める */
.gtd table.gtd-t .gtd-l1{ display:block; line-height:1.25; }
.gtd table.gtd-t .gtd-l2{ display:block; line-height:1.25; }
.gtd table.gtd-t td.gtd-c-idno .gtd-l1{ font-size:.9em; }
.gtd table.gtd-t th.gtd-c-idno .gtd-ar{ display:block; margin:1px 0 0; }

/* 括弧付きのスポット名は2行 */
.gtd table.gtd-t .gtd-sub{ display:block; }

/* 武将セル */
.gtd table.gtd-t .gtd-bu{ display:inline-flex; flex-direction:column; align-items:center; gap:3px; }
.gtd table.gtd-t .gtd-bu img{
	display:block; width:92px; height:52px; object-fit:cover;
	border-radius:4px; background:#e9ebee; margin:0;
}
.gtd table.gtd-t .gtd-bu-nm{ line-height:1.25; }

/* 所在地の注記 */
.gtd table.gtd-t .gtd-mk{ color:#8b3a3a; font-size:.85em; vertical-align:super; cursor:help; }

/* ---- その他のマップ一覧 ---- */
.gtd table.gtd-t-maps .gtd-mapcell{ display:flex; flex-direction:column; align-items:center; gap:4px; }
.gtd table.gtd-t-maps .gtd-mapcell img{
	width:132px; aspect-ratio:16/9; object-fit:cover;
	border-radius:4px; background:#e9ebee; display:block; margin:0;
}
.gtd table.gtd-t-maps td.gtd-c-map{ max-width:180px; }
.gtd table.gtd-t-maps .gtd-mn{ white-space:normal; text-align:center; line-height:1.3; font-size:.92em; }
.gtd table.gtd-t-maps tbody tr.gtd-self td{ background:#fffbe0; }
.gtd table.gtd-t-maps .gtd-selfbadge{
	display:inline-block; background:#333; color:#fff; font-size:.72em;
	border-radius:3px; padding:1px 5px; vertical-align:middle; white-space:nowrap;
}
.gtd p.gtd-legend{ margin:8px 0 0; font-size:.82em; color:#6b7280; line-height:1.7; }

/* ---- 絞り込み ---- */
.gtd .gtd-filters{ display:flex; flex-wrap:wrap; align-items:flex-start; gap:8px; margin:0 0 10px; font-size:.85em; }
.gtd .gtd-filters label.gtd-f{ display:flex; align-items:center; gap:4px; color:#444; min-height:38px; }
.gtd .gtd-filters select{
	border:1px solid #d8dce3; border-radius:6px; padding:6px 8px; min-height:38px;
	font-size:1em; font-family:inherit; background:#fff; max-width:11em;
}
.gtd .gtd-filters input[type="search"]{
	border:1px solid #d8dce3; border-radius:6px; padding:6px 10px; min-height:38px;
	font-size:1em; font-family:inherit; background:#fff; width:22em; max-width:100%;
}
.gtd .gtd-f-q{ flex:1 1 16em; }

/* 都道府県のチェックボックス盤
   盤は浮かせない（position:absolute/fixed は使わない）。
   テーマ側の transform や overflow:hidden で、盤が隠れたり画面外に飛んだりするため。
   開いたときは行いっぱいに広がり、下の表を押し下げる。 */
.gtd details.gtd-pf{ flex:0 0 auto; }
.gtd details.gtd-pf[open]{ flex:1 1 100%; }

/* summary に display:flex を当てると、環境によって開閉が効かなくなる。
   summary は block のままにして、中の span で並べる */
.gtd summary.gtd-pf-btn{
	display:block; min-height:38px; padding:6px 10px;
	border:1px solid #d8dce3; border-radius:6px; background:#fff; cursor:pointer;
	list-style:none; -webkit-tap-highlight-color:rgba(0,0,0,.06); color:#444;
}
.gtd summary.gtd-pf-btn::-webkit-details-marker{ display:none; }
.gtd summary.gtd-pf-btn::marker{ content:''; }
.gtd summary.gtd-pf-btn:hover{ background:#f5f7fa; }
.gtd .gtd-pf-btn-in{ display:flex; align-items:center; gap:6px; min-height:26px; }
.gtd .gtd-pf-ttl{ white-space:nowrap; font-weight:600; }
.gtd .gtd-pf-sum{ color:#6b7280; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.gtd .gtd-pf-sum.is-on{ color:#8b3a3a; font-weight:600; }
.gtd details.gtd-pf .gtd-tri{
	flex:0 0 auto; width:0; height:0; margin-left:auto;
	border-left:6px solid #666; border-top:4px solid transparent; border-bottom:4px solid transparent;
	transition:transform .15s;
}
.gtd details.gtd-pf[open] .gtd-tri{ transform:rotate(90deg); }

.gtd .gtd-pf-panel{
	margin-top:6px; padding:12px;
	background:#fff; border:1px solid #ccd2da; border-radius:8px;
}
.gtd p.gtd-pf-note{ margin:0 0 10px; font-size:.92em; color:#6b7280; line-height:1.6; }
.gtd .gtd-pf-grp{ border-top:1px solid #edf0f3; padding:7px 0; }
.gtd .gtd-pf-grp:first-of-type{ border-top:0; padding-top:0; }
.gtd label.gtd-pf-rg{ display:inline-flex; align-items:center; gap:5px; min-height:34px; font-weight:700; color:#1f2430; cursor:pointer; }
.gtd .gtd-pf-list{ display:flex; flex-wrap:wrap; gap:2px 14px; margin-top:2px; padding-left:2px; }
.gtd label.gtd-pf-one{
	display:inline-flex; align-items:center; gap:5px; min-height:36px; color:#444; cursor:pointer;
}
.gtd .gtd-pf-panel input[type="checkbox"]{ width:18px; height:18px; margin:0; flex:0 0 auto; }
.gtd .gtd-pf-acts{
	display:flex; gap:8px; justify-content:flex-end;
	margin-top:10px; padding-top:10px; border-top:1px solid #edf0f3;
}
.gtd .gtd-pf-acts button{
	border:1px solid #d8dce3; background:#fff; border-radius:6px;
	padding:6px 14px; min-height:38px; cursor:pointer; font-size:1em; font-family:inherit; color:#333;
}
.gtd .gtd-pf-acts button:hover{ background:#f5f7fa; }

/* ---- ページ送り ---- */
.gtd .gtd-pager{
	display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between;
	gap:8px; margin-top:10px; font-size:.85em; color:#6b7280;
}
.gtd p.gtd-count{ margin:0; }
.gtd .gtd-pages{ display:flex; align-items:center; gap:8px; }
.gtd .gtd-pager button{
	border:1px solid #d8dce3; background:#fff; border-radius:6px;
	padding:6px 14px; min-height:36px; cursor:pointer; font-size:1em; font-family:inherit; color:#333;
}
.gtd .gtd-pager button:disabled{ opacity:.4; cursor:not-allowed; }

/* 非表示行。JSが動かない環境では全行が見える（インデックスにも影響しない） */
.gtd table.gtd-t tbody tr.gtd-hide{ display:none; }
.gtd table.gtd-t tbody tr.gtd-empty td{ color:#6b7280; padding:22px 8px; }

/* =========================================================
   地方別の表示
   ========================================================= */
.gtd-region h3.gtd-rg-h{
	margin:1.6em 0 .7em; padding:.35em .6em; font-size:1.15em; font-weight:700;
	border-left:6px solid #333; background:#f2f3f5;
}
.gtd-region h3.gtd-rg-h:first-child{ margin-top:0; }

/* ★ 地方も閉じた箱にする（中に都道府県の箱が入る）。
   開いた直後に見えるのは地方名9つだけ——47県が並ぶと、そこで画面が終わる。
   ★ 中の <h3>/<h4> は「記事の骨格としての見出し」。
   テーマの見出し装飾（余白・下線・大きな字）がそのまま出ると箱が崩れるので、
   ここで打ち消す。意味は見出しのまま、見た目は箱の一部にする */
.gtd-region details.gtd-rg-box{
	border:1px solid #b9c1cc; border-radius:8px; margin:0 0 10px; background:#fff; overflow:hidden;
}
.gtd-region summary.gtd-rg-h{
	display:flex; align-items:center; gap:8px;
	min-height:50px; padding:9px 12px; cursor:pointer;
	background:#e3e8ef !important; color:#1f2430 !important;
	list-style:none; user-select:none;
}
.gtd-region summary.gtd-rg-h::-webkit-details-marker{ display:none; }
.gtd-region summary.gtd-rg-h:hover{ background:#d9e0ea !important; }
.gtd-region .gtd-rg-nm{
	margin:0 !important; padding:0 !important; border:0 !important; background:none !important;
	font-size:1.06em !important; font-weight:700 !important; line-height:1.3 !important;
	color:#1f2430 !important; white-space:nowrap;
}
.gtd-region .gtd-rg-sub{ flex:1 1 auto; font-size:.8em; color:#5b6472; line-height:1.35; }
.gtd-region .gtd-rg-body{ padding:10px 10px 2px; }
.gtd-region .gtd-pref-nm{
	margin:0 !important; padding:0 !important; border:0 !important; background:none !important;
	font-size:1em !important; line-height:1.3 !important;
}

/* 都道府県：タップで開く。押せると気づかれないのが最大の失敗なので、
   枠・背景・46px以上の高さ・状態バッジ・回る三角をすべて付ける */
.gtd-region details.gtd-pref-box{
	border:1px solid #ccd2da; border-radius:8px; margin:0 0 8px; background:#fff; overflow:hidden;
}
/* ★ 地と字の色は両方こちらで決める。
   テーマが summary の色だけを決めていると、薄い地に薄い字＝見えない箱になる。
   「見えない」は「無い」と区別が付かない */
.gtd-region summary.gtd-pref-sum{
	display:flex; align-items:center; gap:8px;
	min-height:46px; padding:8px 12px; cursor:pointer;
	background:#eef1f5 !important; color:#1f2430 !important; font-size:1em;
	list-style:none; user-select:none;
}
.gtd-region summary.gtd-pref-sum .gtd-pref-nm{ color:#1f2430 !important; }
.gtd-region summary.gtd-pref-sum::-webkit-details-marker{ display:none; }
.gtd-region summary.gtd-pref-sum:hover{ background:#e5e9ef; }
.gtd-region .gtd-tri{
	flex:0 0 auto; width:0; height:0;
	border-left:7px solid #333; border-top:5px solid transparent; border-bottom:5px solid transparent;
	transition:transform .15s;
}
/* ★ 「>」で直下の summary に限る。子孫まで当てると、
   地方の箱を開いただけで【中の47県ぜんぶが開いた見た目】になる
   （三角が下を向き、バッジが「閉じる」になる。中身は閉じたまま）。
   入れ子のたたみを作った日から、この書き方は事故になる */
.gtd-region details[open] > summary .gtd-tri{ transform:rotate(90deg); }
.gtd-region .gtd-pref-nm{ font-weight:700; white-space:nowrap; }
.gtd-region .gtd-pref-sub{ flex:1 1 auto; font-size:.82em; color:#5b6472; line-height:1.35; }
.gtd-region .gtd-badge{
	flex:0 0 auto; background:#333; color:#fff; border-radius:4px;
	padding:3px 9px; font-size:.78em; white-space:nowrap;
}
.gtd-region .gtd-badge::after{ content:"開く"; }
.gtd-region details[open] > summary .gtd-badge::after{ content:"閉じる"; }

.gtd-region .gtd-pref-body{ padding:12px; }
.gtd-region .gtd-pref-body .gtd-tbl{ margin:0 0 14px; }
.gtd-region .gtd-pref-body .gtd-tbl:last-child{ margin-bottom:0; }

/* 武将が主役の地方別表示（都道府県で刻まない） */
.gtd-region-bu .gtd-tbl{ margin:0 0 16px; }
.gtd-region-bu h3.gtd-rg-h + .gtd-tbl{ margin-top:0; }

/* 武将が主役の表では、画面に余裕があるとき武将の画像を縦横2倍（面積4倍）にする。
   スマホでは横スクロールが増えるだけなので、601px以上のときだけ */
@media (min-width:601px){
	.gtd-region-bu table.gtd-t .gtd-bu img{ width:184px; height:104px; }
}

/* たたんで出すもの（更新履歴）。
   押せると気づかれないのが最大の失敗なので、都道府県の折りたたみと同じ作りにする */
.gtd details.gtd-fold{
	border:1px solid #ccd2da; border-radius:8px; background:#fff; overflow:hidden;
}
.gtd summary.gtd-fold-sum{
	display:flex; align-items:center; gap:8px;
	min-height:46px; padding:8px 12px; cursor:pointer;
	background:#eef1f5; font-size:1em; list-style:none; user-select:none;
	-webkit-tap-highlight-color:rgba(0,0,0,.06);
}
.gtd summary.gtd-fold-sum::-webkit-details-marker{ display:none; }
.gtd summary.gtd-fold-sum::marker{ content:''; }
.gtd summary.gtd-fold-sum:hover{ background:#e5e9ef; }
.gtd details.gtd-fold .gtd-tri{
	flex:0 0 auto; width:0; height:0;
	border-left:7px solid #333; border-top:5px solid transparent; border-bottom:5px solid transparent;
	transition:transform .15s;
}
.gtd details.gtd-fold[open] .gtd-tri{ transform:rotate(90deg); }
.gtd .gtd-fold-nm{ font-weight:700; white-space:nowrap; color:#1f2430; }
.gtd .gtd-fold-sub{ flex:1 1 auto; font-size:.82em; color:#5b6472; }
.gtd details.gtd-fold .gtd-badge{
	flex:0 0 auto; background:#333; color:#fff; border-radius:4px;
	padding:3px 9px; font-size:.78em; white-space:nowrap;
}
.gtd details.gtd-fold .gtd-badge::after{ content:"開く"; }
.gtd details.gtd-fold[open] .gtd-badge::after{ content:"閉じる"; }
.gtd .gtd-fold-body{ padding:12px; }

/* 表のキャプション。見出しに見えるが h タグではないので目次に載らない */
.gtd table.gtd-t caption.gtd-cap{
	caption-side:top; text-align:left; font-weight:700; font-size:.98em;
	padding:0 0 5px; color:#1f2430; white-space:nowrap;
}
.gtd p.gtd-nodata{
	margin:0 0 12px; padding:10px 12px; font-size:.92em; color:#6b7280;
	background:#f7f8fa; border:1px dashed #ccd2da; border-radius:6px;
}
.gtd p.gtd-nodata:last-child{ margin-bottom:0; }

/* 管理者にだけ出る注意書き */
.gtd-notice{
	border-left:4px solid #d63638; background:#fff5f5; padding:8px 12px;
	font-size:.9em; color:#a00;
}

/* スマホ */
@media (max-width:600px){
	.gtd .gtd-filters select{ max-width:9em; }
	/* 指で押す前提なので、狭い画面では1件あたりの高さを上げる */
	.gtd label.gtd-pf-one{ min-height:40px; }
	.gtd .gtd-pf-list{ gap:2px 16px; }
	.gtd .gtd-pf-panel{ padding:10px; }
	.gtd table.gtd-t th{ padding:7px 6px; }
	.gtd table.gtd-t td{ padding:5px 6px; }
	.gtd-region .gtd-pref-body{ padding:10px; }
	/* 狭い画面では内訳を2行目に落とす。消すと「何が入っているか」が分からなくなるため隠さない */
	.gtd-region summary.gtd-pref-sum{ flex-wrap:wrap; padding:9px 10px; }
	.gtd-region .gtd-pref-nm{ flex:1 1 auto; }
	.gtd-region .gtd-pref-sub{ flex:1 1 100%; order:3; margin-top:2px; }
}

/* ★ 目印。所在地の下に小さく出す。
   「どこに停めればいいか」は所在地より役に立つが、
   表の主役はスポット名なので、大きさで序列をつける */
.gtd .gtd-mark{
	display:block;
	margin-top:2px;
	font-size:.82em;
	line-height:1.35;
	color:#5b6472;
}

/* =========================================================
   街道一覧（大見出し → 街道ごとの見出し → 街道駅の表）

   ★ ここは【一覧側のCSS】に置く。地図側（gotouchi-map.css）に置いていたため、
   地図のショートコードが無いページ——出陣マップの記事がまさにそうだった——では
   1行も読み込まれず、色地に黒字・巨大な見出しという素のHTMLが出ていた。
   「どのショートコードで使う見た目か」ではなく
   【どのショートコードが無くても要る見た目か】で置き場所を決める。
   ========================================================= */
/* ---- 街道一覧（大見出し → 街道ごとの見出し → 街道駅の表） ---- */
.gtd h2.gtd-kd-h{
	margin:2em 0 .4em; padding:.35em 0 .3em;
	font-size:1.25em; font-weight:700; color:#5b3a1c;
	border-bottom:3px solid #8a5a2b; border-top:0;
	/* 県の箱から飛んできたときに見出しがヘッダーに隠れないようにする */
	scroll-margin-top:64px;
}
.gtd p.gtd-kd-note{ margin:.2em 0 1em; font-size:.86em; line-height:1.6; color:#5f6570; }

/* ★ 街道は1本ずつたたんでおく（都道府県の箱と同じ形）。
   見出しの地はその街道の色で、字は白。地図のピンと同じ色なので、
   表と地図のどちらを見ていても「どの道か」が色で分かる。
   色は行ごとに style="background:…" で入るので、ここでは既定色だけ置く */
.gtd details.gtd-kd-box{
	/* ★ 枠がその街道の色（太さ3px）。色は style="border-color:…" で行ごとに入る */
	border:3px solid #ccd2da; border-radius:8px; margin:0 0 8px; background:#fff; overflow:hidden;
}
/* ★ 色地の上の字は【必ず白】。!important を使う。
   テーマ側が見出しや summary の色を決めていると、こちらの color が負けて
   濃い赤の地に濃い赤の字——つまり読めない帯になる（実際そうなった）。
   ここは「好みの色」ではなく【読めるかどうか】なので、譲らない。
   背景色は行ごとに style="" で入るので、そちらは常に勝つ。 */
.gtd summary.gtd-kd-1{
	display:flex; align-items:center; gap:8px;
	min-height:46px; padding:8px 12px; cursor:pointer;
	color:#1f2430 !important; background:#eef1f5; font-size:1.02em; font-weight:700;
	list-style:none; user-select:none; text-shadow:none;
}
.gtd summary.gtd-kd-1 span{ color:#1f2430 !important; }
/* 中の <h3> は骨格としての見出し。テーマの見出し装飾は打ち消して、帯の一部として並べる */
.gtd summary.gtd-kd-1 .gtd-kd-nm{
	margin:0 !important; padding:0 !important; border:0 !important; background:none !important;
	font-size:1em !important; font-weight:700 !important; line-height:1.3 !important;
	color:#1f2430 !important; display:inline-block;
}
.gtd summary.gtd-kd-1::-webkit-details-marker{ display:none; }
/* ★ 道の名前と武将名は、それぞれの中では折らない。
   ただし2つの【間】では折れるようにしておく。
   まとめて nowrap にすると、豊前薩摩街道(甲斐宗運) のような長い組が
   狭い画面で「開く」バッジを押し出す */
.gtd summary.gtd-kd-1 .gtd-kd-nm{ white-space:normal; }
.gtd summary.gtd-kd-1 .gtd-kd-rn{ white-space:nowrap; }
.gtd summary.gtd-kd-1 .gtd-kd-sub{
	flex:1 1 auto; font-size:.8em; font-weight:400; color:#5b6472; line-height:1.35;
}
.gtd summary.gtd-kd-1 .gtd-kd-sub.is-hid{ display:none; }
.gtd summary.gtd-kd-1 .gtd-star{ margin-right:.1em; }
.gtd summary.gtd-kd-1 .gtd-prog-n{ margin-left:0; vertical-align:middle; }
/* 三角は黒（地が淡色になったので、白だと見えない） */
.gtd summary.gtd-kd-1 .gtd-tri{
	flex:0 0 auto; width:0; height:0;
	border-left:7px solid #333; border-top:5px solid transparent; border-bottom:5px solid transparent;
	transition:transform .15s;
}
.gtd details.gtd-kd-box[open] summary.gtd-kd-1 .gtd-tri{ transform:rotate(90deg); }
/* 「開く」は右端に寄せる。件数（flex:1 の帯）はJSが n/m を出すと消えるので、
   それに頼ると、進んでいる街道だけバッジが名前の横に来てそろわない */
.gtd summary.gtd-kd-1 .gtd-badge{
	flex:0 0 auto; margin-left:auto;
	/* 都道府県の箱と同じ黒いバッジにそろえる（テーマの装飾は打ち消す） */
	background:#333 !important; color:#fff !important;
	border:0; box-shadow:none;
	border-radius:4px; padding:3px 9px; font-size:.78em; font-weight:400; white-space:nowrap;
}
.gtd summary.gtd-kd-1 .gtd-badge::after{ content:"開く"; }
.gtd details.gtd-kd-box[open] summary.gtd-kd-1 .gtd-badge::after{ content:"閉じる"; }
.gtd .gtd-kd-body{ padding:12px; }
.gtd .gtd-kd-body .gtd-tbl{ margin:0; }
/* ★ 街道一覧をひとかたまりで閉じておく箱（出陣マップのように他の種類と並ぶページ用）。
   色は付けない。中の21本が色帯なので、外側まで色を持つと何が親か分からなくなる */
.gtd details.gtd-kd-all{
	border:2px solid #4a5160; border-radius:8px; margin:16px 0; background:#fff; overflow:hidden;
}
.gtd summary.gtd-kd-allsum{
	display:flex; align-items:center; gap:10px;
	min-height:52px; padding:10px 12px; cursor:pointer;
	color:#fff !important; background:#4a5160; font-size:1.08em; font-weight:700;
	list-style:none; user-select:none;
}
.gtd summary.gtd-kd-allsum span{ color:#fff !important; }
.gtd summary.gtd-kd-allsum::-webkit-details-marker{ display:none; }
.gtd summary.gtd-kd-allsum .gtd-tri{
	flex:0 0 auto; width:0; height:0;
	border-left:8px solid #fff; border-top:6px solid transparent; border-bottom:6px solid transparent;
	transition:transform .15s;
}
.gtd details.gtd-kd-all[open] summary.gtd-kd-allsum .gtd-tri{ transform:rotate(90deg); }
.gtd summary.gtd-kd-allsum .gtd-kd-allsub{ font-size:.8em; font-weight:400; opacity:.92; }
.gtd summary.gtd-kd-allsum .gtd-badge{
	flex:0 0 auto; margin-left:auto;
	background:rgba(255,255,255,.24) !important; color:#fff !important;
	border:0; box-shadow:none; border-radius:4px; padding:3px 9px;
	font-size:.78em; font-weight:400; white-space:nowrap;
}
.gtd summary.gtd-kd-allsum .gtd-badge::after{ content:"開く"; }
.gtd details.gtd-kd-all[open] summary.gtd-kd-allsum .gtd-badge::after{ content:"閉じる"; }
.gtd .gtd-kd-allbody{ padding:12px; }

/* 見出しに添える街道武将。道の名前より一段軽くする（主役は道の名前） */
.gtd summary.gtd-kd-1 .gtd-kd-bu2{ font-size:.86em; font-weight:400; color:#5b6472 !important; margin-left:.15em; }

/* ★ 街道武将は道に1人。表の列ではなく、箱の先頭に1回だけ出す */
.gtd p.gtd-kd-bu{
	display:flex; align-items:center; gap:10px; flex-wrap:wrap;
	margin:0 0 10px; padding:8px 10px;
	border:1px solid #e2e6ec; border-radius:6px; background:#f7f9fb;
}
.gtd p.gtd-kd-bu .gtd-kd-bul{
	flex:0 0 auto; font-size:.78em; font-weight:700; color:#fff; background:#5f6570;
	border-radius:4px; padding:2px 8px; letter-spacing:.04em;
}
.gtd p.gtd-kd-bu .gtd-bu{ display:inline-flex; align-items:center; gap:8px; }
.gtd p.gtd-kd-bu .gtd-bu img{ width:92px; height:52px; object-fit:cover; border-radius:4px; }
.gtd p.gtd-kd-bu .gtd-bu-nm{ font-weight:700; }
.gtd p.gtd-kd-jump{ margin:.5em 0; font-size:.9em; color:#5f6570; }
.gtd p.gtd-kd-jump a{ white-space:nowrap; }
