/* グループヘッダ */
.list-group-header {
  font-size: 24px;
  font-weight: bold;
  cursor: pointer;
  margin: 0px 0 10px;
  border-bottom: 3px solid;
  padding-bottom: 6px;
}
/* グループ開閉 */
.list-group-body {
  display: block;
}
.list-group-body.closed {
  display: none;
}

/* 年ヘッダ */
.list-year-header {
  font-size: 18px;
  font-weight: bold;
  cursor: pointer;
  margin: 20px 0 8px;
  border-bottom: 2px solid #eee;
  padding-bottom: 4px;
}
/* 年開閉 */
.list-year-body {
  display: block;
}
.list-year-body.closed {
  display: none;
}

/* トグル */
.toggle-triangle {
  font-size: 0.9em;
  width: 14px;
  display: inline-block;
}

/* テーブル */
.live-table {
  table-layout: fixed;
}
.live-table th,
.live-table td {
  border-bottom: 1px solid #eee;
  padding: 6px 6px;
  font-size: 14px;
}
.live-table th:nth-child(1),
.live-table td:nth-child(1) {
  width: 50%;
}
.live-table th:nth-child(2),
.live-table td:nth-child(2) {
  width: 30%;
}
.live-table th:nth-child(3),
.live-table td:nth-child(3) {
  width: 20%;
}
@media (max-width: 767px) {
  .live-table th:nth-child(1),
  .live-table td:nth-child(1) {
    width: 37%;
  }
  .live-table th:nth-child(2),
  .live-table td:nth-child(2) {
    width: 30%;
  }
  .live-table th:nth-child(3),
  .live-table td:nth-child(3) {
    width: 33%;
  }
}

/* 背景交互（ツアー単位） */
.live-table tr.tour-even td {
  background: #fcfcfc;
}
.live-table tr.tour-odd td {
  background: #f7f7f7;
}
/* 通常行（そのまま） */
.live-table td {
  border-bottom: 1px solid #ccc;
}
/* 会場切り替わり */
.live-table tr.venue-start td {
  border-top: 1px solid #ccc;
}
/* ツアー切り替わり（濃い） */
.live-table tr.tour-start td {
  border-top: 2px solid #ccc;
}

/* テーブルヘッダー色分け */
/* 櫻坂（薄ピンク） */
.live-table.group-2 thead th {
  background: var(--sakura-soft);
  border-bottom: 2px solid var(--sakura-main);
}
/* 欅坂（薄グリーン） */
.live-table.group-4 thead th {
  background: var(--keyaki-soft);
  border-bottom: 2px solid var(--keyaki-main);
}
/* 共通：少しだけ見やすく */
.live-table thead th {
  font-weight: bold;
  border-bottom: 2px solid #ddd;
}
