/* === KSC Jr. layout.css === */

/* ── 最大幅制限ラッパー ── */
.container { width: 100%; max-width: 1200px; margin: 0 auto; padding: 0 24px; }

/* ── Section base ── */
.sec { padding: 24px 16px; max-width: 1200px; margin-left: auto; margin-right: auto; }
.sec + .sec { border-top: 0.5px solid var(--color-border); }
.sec-head { display: flex; align-items: center; gap: 8px; margin-bottom: 16px; }
.sec-accent { width: 3px; height: 16px; background: var(--color-primary); border-radius: 2px; flex-shrink: 0; }
.sec-title  { font-size: 15px; font-weight: 500; }
.sec-more   { margin-left: auto; color: var(--color-primary); font-size: 12px; }

/* ── Two-column section (Calendar + Right) ── */
.two-col-sec {
  padding: 24px 16px;
  border-top: 0.5px solid var(--color-border);
  max-width: 1200px;
  margin-left: auto;
  margin-right: auto;
}
.two-col-sec__head { display: flex; align-items: center; gap: 8px; margin-bottom: 16px; }
.sec-range { margin-left: auto; font-size: 11px; color: var(--color-text-muted); }

/* 2カラムグリッド：左=カレンダー 右=Map/SNS/リンク */
.two-col-grid {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 24px;
  align-items: start;
}
.two-col-grid__right { display: flex; flex-direction: column; gap: 18px; }

/* ── アーカイブ・その他ページの幅制限 ── */
.archive-header,
.filter-bar,
.archive-list,
.navigation.pagination,
.contact-header,
.breadcrumb {
  max-width: 1200px;
  margin-left: auto;
  margin-right: auto;
}
.layout {
  display: grid;
  grid-template-columns: 1fr 240px;
  gap: 24px;
  padding: 20px 16px;
  max-width: 1200px;
  margin-left: auto;
  margin-right: auto;
}
.main { min-width: 0; }

/* ── Breadcrumb ── */
.breadcrumb {
  background: var(--color-bg-secondary);
  padding: 8px 16px;
  font-size: 12px;
  color: var(--color-text-muted);
  border-bottom: 0.5px solid var(--color-border);
}
.breadcrumb a { color: var(--color-primary); }

/* ── SP（767px以下）── */
@media (max-width: 767px) {
  .two-col-grid {
    grid-template-columns: 1fr !important;
  }
  .layout { grid-template-columns: 1fr; }
}
