/* ==========================================================================
   完全モバイルファースト：2個並びボタンの横幅（500px）を基準に完全統一
   ========================================================================== */

/* --------------------------------------------------
   1. ページ全体・各ブロックの共通横幅（PC/スマホ共通の器）
   -------------------------------------------------- */
.image.m_center,
.c-btn-flex-container,
.m_block,
.link-wrap {
  display: block !important;
  width: 100% !important;
  max-width: 500px !important; /* 2個並びボタンの500pxを絶対基準にする */
  margin-left: auto !important;
  margin-right: auto !important;
  box-sizing: border-box !important;
}

/* 2行以上の間隔（行間）を16pxに一元管理 */
.mb20 {
  margin-bottom: 16px !important;
}

/* --------------------------------------------------
   2. ファーストビュー画像
   -------------------------------------------------- */
.image.m_center img {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  height: auto !important;
  border-radius: 6px; 
}

/* --------------------------------------------------
   3. 2個並びボタンのコンテナと調整
   -------------------------------------------------- */
.c-btn-flex-container {
  display: flex !important;
  justify-content: space-between !important;
  flex-wrap: wrap !important;
}

/* 2カラム指定：親の500px（またはスマホ幅）に対して左右きれいに収まる％ */
.c-btn-flex-container.-col2 .c-btn-card {
  width: 48.4% !important;
}

/* --------------------------------------------------
   4. カード型ボタン本体（1個・2個並び共通）
   -------------------------------------------------- */
.c-btn-card {
  position: relative !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
  width: 100% !important; /* 基本は親要素の幅（100%）に完全に合わせる */
  max-width: 100% !important;
  text-align: center !important;
  text-decoration: none !important;
  padding: 0 24px 0 10px !important; 
  background-color: #1a4899 !important;
  border-radius: 6px !important;
  transition: all 0.3s !important;
  box-sizing: border-box !important;
  min-height: 74px !important;
}

.c-btn-card:hover {
  opacity: 0.85 !important;
}

/* フォント指定 */
.c-btn-card__title {
  display: block !important;
  font-size: 115% !important;
  font-weight: bold !important;
  color: #ffffff !important;             
  line-height: 1.35 !important;
  margin-bottom: 3px !important;
}
.c-btn-card__sub {
  display: block !important;
  font-size: 85% !important;
  font-weight: normal !important;       
  color: #e2f0fd !important;             
  line-height: 1.25 !important;
}

/* 矢印アイコン */
.c-btn-card .fa-position-right {
  position: absolute !important;
  top: calc(50% - 0.5em) !important;
  right: 8px !important;
  font-size: 100% !important;                   
  color: #ffffff !important;             
}

/* --------------------------------------------------
   5. その他パーツの最適化（箇条書き・最下部ボタン）
   -------------------------------------------------- */
/* 箇条書きリンクの間隔 */
.c-list--link {
  padding: 0 8px !important;
  box-sizing: border-box !important;
}
.c-list--link li {
  margin-bottom: 12px !important;
}
.c-list--link a {
  display: inline-block !important;
  color: #333333 !important;
  text-decoration: none !important;
}
/* 箇条書きアイコンのカラーを青に強制統一 */
.c-list--link .c-link__icon.c-list__icon {
  margin-right: 6px !important;
  color: #1a4899 !important;
}

/* よくあるご質問ボタン */
.link