.col.g-3 {
  flex: 0 0 auto;
}

#upcomingVkisen .card,
#liveVSCC .card,
#nowLiveShogi .card,
#nowLiveOther .card,
#loadingProcess .card,
#comingVSCC .card,
#comingLive .card {
  height: 650px;
}

#upcomingVkisen .card-body,
#liveVSCC .card-body,
#nowLiveShogi .card-body,
#nowLiveOther .card-body,
#loadingProcess .card-body,
#comingVSCC .card-body,
#comingLive .card-body {
  flex: 0 0 auto;
  height: 140px;
  justify-content: flex-start;
}

#upcomingVkisen .card-title,
#liveVSCC .card-title,
#nowLiveShogi .card-title,
#nowLiveOther .card-title,
#loadingProcess .card-title,
#comingVSCC .card-title,
#comingLive .card-title {
  margin-bottom: 6px;
  max-height: 2.6em;
  -webkit-line-clamp: 2;
}

#upcomingVkisen .card-img-bottom,
#liveVSCC .card-img-bottom,
#nowLiveShogi .card-img-bottom,
#nowLiveOther .card-img-bottom,
#loadingProcess .card-img-bottom,
#comingVSCC .card-img-bottom,
#comingLive .card-img-bottom {
  min-height: 200px;
}

#declaration,
#notifications {
  text-align: center;
  font-size: 1.0em;
}

/* ストリーマー一覧用 */
#streamers .col.g-3 {
  height: 450px; /* カード外側の余白を詰める */
}

#streamers .card {
  height: 430px; /* カード全体の高さをさらに縮小 */
  border: 1px solid #eee;
}






#streamers .card-img-top {
  height: 300px; /* 画像の高さを固定 */
  object-fit: cover; /* 切り抜き表示 */
}

#streamers .card-body {
  flex: 1;
  display: flex;
  flex-direction: column;
  padding: 1rem; /* パディングを標準に戻す */
}

#streamers .card-title {
  text-align: center;
  font-size: 1.35rem;
  font-weight: bold;
  margin-bottom: 0.5rem; /* 適度な余白を与える */
}

#streamers .social-icon {
  width: 60px; /* 一回り小さく調整 */
  height: 60px;
  object-fit: contain;
}

#streamers .card-link {
  margin: 0; /* Bootstrapデフォルトのmarginをリセット */
}

/* --- カードデザインの個別調整 (sites/main 専用) --- */

/* リンク全体の装飾解除 */
.card-link-wrapper, 
.card-link-wrapper:hover, 
.card-link-wrapper:active, 
.card-link-wrapper:focus {
  text-decoration: none !important;
  color: #212529 !important; /* 通常のテキスト色 */
}

/* カード内のフォントサイズ拡大 */
.card-title {
  font-size: 1.45rem !important;
  font-weight: bold;
  line-height: 1.3;
}

.card-text {
  font-size: 1.15rem !important;
  -webkit-line-clamp: unset !important; /* 行数制限を解除 */
  display: block !important;
}

/* 配信開始時刻（インラインスタイル）の補正 */
.card-text[style*="font-size: 0.8rem"] {
  font-size: 1.05rem !important;
  color: #6c757d !important;
}

/* 不要な改行の削除 */
.card-body br {
  display: none !important;
}

/* カードボディの高さ調整（内容が増えても大丈夫なように） */
#upcomingVkisen .card-body,
#nowLiveShogi .card-body,
#nowLiveOther .card-body,
#loadingProcess .card-body,
#comingLive .card-body {
  height: auto !important;
  min-height: 140px;
}

#upcomingVkisen .card,
#nowLiveShogi .card,
#nowLiveOther .card,
#loadingProcess .card,
#comingLive .card {
  height: auto !important;
  min-height: 500px;
}

/* 行（row）の中央配置修正 */
.row {
  margin-left: auto !important;
  margin-right: auto !important;
  justify-content: center !important;
}