/* =====================================
   archive：コラム一覧
===================================== */

/* --- トップビジュアル --- */
.archive-fv {
  height: 300px;
  background: url("../image/archive-column-fv.jpg") center / cover no-repeat;
  display: flex;
  align-items: center;
  justify-content: center;
}

.archive-fv-inner {
  background: rgba(255,255,255,0.85);
  padding: 20px 40px;
  border-radius: 8px;
}

.archive-fv-title {
  font-size: 28px;
  font-weight: 700;
}

/* --- 一覧全体 --- */
.archive-column {
  padding: 60px 5%;
}

.archive-column-inner {
  max-width: 1080px;
  margin: 0 auto;
}

/* --- グリッド --- */
.archive-column-list {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 30px;
}

/* --- カード --- */
.archive-column-item {
  background: #ffffff;
  border-radius: 12px;
  overflow: hidden;
  box-shadow: 0 6px 18px rgba(0,0,0,0.05);
}

.archive-column-item a {
  display: block;
  text-decoration: none;
  color: inherit;
}

.archive-column-thumb img {
  width: 100%;
  display: block;
}

/* タイトル */
.archive-column-title {
  font-size: 15px;
  font-weight: 700;
  padding: 14px;
  line-height: 1.5;
}

/* --- ページネーション --- */
.pagination {
  margin-top: 50px;
  text-align: center;
}

/* --- レスポンシブ --- */
@media (max-width: 1024px) {
  .archive-column-list {
    grid-template-columns: repeat(3, 1fr);
  }
}

@media (max-width: 768px) {
  .archive-column-list {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 480px) {
  .archive-column-list {
    grid-template-columns: 1fr;
  }

  .archive-fv {
    height: 220px;
  }
}

/* =====================================
   BLOG 固定ページ
===================================== */

.blog-page {
  max-width: 1080px;
  margin: 0 auto;
  padding: 60px 5%;
  text-align: center;
}

.blog-latest {
  margin-top: 40px;
}

.blog-more {
  margin-top: 40px;
}


.two-column {
  display: flex;
  gap: 40px;
}

.sidebar-area {
  width: 28%;
}

.main-content {
  width: 72%;
}

@media (max-width: 900px) {
  .two-column {
    flex-direction: column;
  }
  .sidebar-area,
  .main-content {
    width: 100%;
  }
}

/* PC：ヘッダー分だけ下げる（今のでOK） */
.single .container {
  margin-top: 120px !important;
}

/* スマホ：下げすぎ防止 */
@media (max-width: 768px) {
  .single .container {
    margin-top: 80px !important; /* ←ここだけ調整 */
  }
}