/* ================================
   NEWS：個別ページ（single-news）
================================ */

/* タイトル */
.news-title {
  font-size: 2rem;
  font-weight: 700;
  margin-bottom: 10px;
}

/* メタ情報 */
.news-meta {
  display: flex;
  gap: 10px;
  margin-bottom: 20px;
  align-items: center;
}

.news-date {
  color: #555;
  font-size: 14px;
}

.news-type-badge {
  background: #0073aa;
  color: #fff;
  padding: 4px 10px;
  border-radius: 6px;
  font-size: 13px;
}

/* アイキャッチ画像（最優先で上書き） */
.single-news .news-thumb img {
  width: 600px !important;     /* PCでは600px */
  max-width: 100% !important;  /* スマホでは縮む */
  height: auto !important;
  margin: 0 auto 20px !important;
  display: block !important;
  border-radius: 10px;
}

/* 本文 */
.news-content {
  font-size: 16px;
  line-height: 1.8;
  margin-bottom: 40px;
}

/* 外部リンクボタン */
.news-external-link {
  margin: 25px 0;
}

.external-link-btn {
  display: inline-block;
  background: #d9534f;
  color: #fff;
  padding: 10px 18px;
  border-radius: 6px;
  text-decoration: none;
}

.external-link-btn:hover {
  background: #b9443f;
}

/* 関連情報ブロック */
.news-related-block {
  margin-top: 40px;
}

.news-related-section {
  margin-bottom: 25px;
}

.related-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.related-tag {
  background: #eef5ff;
  color: #0056c7;
  padding: 4px 10px;
  border-radius: 4px;
  font-size: 0.8rem;
}

/* ================================
   NEWS：一覧ページ（archive-news）
================================ */

.news-archive-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(320px, 1fr));
  gap: 30px;
  margin-top: 40px;
}

/* カード */
.news-card {
  display: block;
  background: #fff;
  border-radius: 10px;
  overflow: hidden;
  box-shadow: 0 4px 12px rgba(0,0,0,0.08);
  transition: transform .2s, box-shadow .2s;
  text-decoration: none;
  color: inherit;
}

.news-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 6px 18px rgba(0,0,0,0.12);
}

/* サムネイル */
.news-card-thumb img {
  width: 100%;
  height: 180px;
  object-fit: cover;
}

/* 本文 */
.news-card-body {
  padding: 15px 18px 20px;
}

/* メタ情報 */
.news-card-meta {
  display: flex;
  gap: 10px;
  margin-bottom: 8px;
  align-items: center;
}

.news-card-date {
  font-size: 0.85rem;
  color: #666;
}

.news-card-type {
  background: #0073aa;
  color: #fff;
  padding: 2px 8px;
  border-radius: 4px;
  font-size: 0.75rem;
}

/* タイトル */
.news-card-title {
  font-size: 1.05rem;
  line-height: 1.4;
  margin: 0 0 10px;
  font-weight: 600;
}

/* 省庁タグ */
.ministry-tag {
  display: inline-block;
  background: #eef5ff;
  color: #0056c7;
  padding: 3px 8px;
  border-radius: 4px;
  font-size: 0.75rem;
  margin-right: 6px;
}

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

/* ================================
   NEWS：レスポンシブ
================================ */

@media (max-width: 768px) {
  .single-news .news-thumb img {
    width: 100% !important;
  }
}
