/* 基本レイアウト非表示系 */
.site-title,
.site-description,
header,
h1,
h2,
.entry-title,
.entry-meta,
.posted-on,
.byline {
  display: none;
}

.site-content {
  padding-top: 10px;
}

/* ダッシュボードカード */
/* --------------------
  ダッシュボードグリッド
-------------------- */
.dashboard_grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr); /* デフォルト：4列 */
  gap: 12px;
  justify-items: center;
  padding: 20px;
  margin-top: 70px; /* ホームボタンと重ならないように */
}

/* カード */

/* ヘッダー */
.dashboard_header {
  background-color: #029688; /* BASEカラー */
  color: white;
  padding: 20px;
  text-align: center;
  font-size: 24px;
  font-weight: bold;
}

.dashboard_card {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  border-radius: 20px;
  padding: 10px;
  box-shadow: 0 6px 16px rgba(0,0,0,0.08);
  transition: transform 0.2s, box-shadow 0.2s;
  cursor: pointer;
  text-align: center;
  aspect-ratio: 1 / 1; /* 正方形 */
  width: 100%;
  max-width: 180px; /* カード幅の最大値 */
  background-color: #fff; /* 個別でカラー指定可能 */
}

.dashboard_card:hover {
  transform: translateY(-5px);
  box-shadow: 0 10px 24px rgba(0,0,0,0.12);
}

/* カード内画像 */
.dashboard_card img {
  width: 80%;   /* カード幅の80% */
  height: auto;
  margin-bottom: 10px;
  object-fit: contain;
}

/* カード内テキスト */
.dashboard_card p {
  font-size: 16px;
  font-weight: bold;
  margin: 0;
  color: #02BCD4;
}

/* --------------------
  フッター固定＋レスポンシブ
-------------------- */

/* フッターメニュー */
.footer_menu {
  position: fixed;
  bottom: 0;
  width: 100%;
  display: flex;
  justify-content: space-around; /* 左右に配置 */
  padding: 8px 0;
  background: #ffffff;
  box-shadow: 0 -2px 8px rgba(0,0,0,0.1);
  z-index: 999;
}

/* フッター内画像 */
.footer_icon_img {
  width: 40px;   /* アイコンの幅 */
  height: 40px;  /* アイコンの高さ */
  object-fit: contain; /* アスペクト比を維持 */
  transition: 0.2s;
}

.footer_icon_img:hover {
  transform: scale(1.1); /* ホバーで少し拡大 */
}


/* ボタンカラー */
button {
  background-color: #02BCD4; /* ボタンカラー */
  color: white;
  padding: 10px 16px;
  border: none;
  border-radius: 12px;
  cursor: pointer;
}

button:hover {
  background-color: #01a3b5;
}

/* 全体背景 */
body {
  background: #f5f7fb;
  margin: 0;
  padding: 0;
}

/* ステップグリッド */
.steps_grid {
  display: grid;
  grid-template-columns: repeat(10, 1fr);
  gap: 6px;
}

.step_cell {
  aspect-ratio: 1 / 1;
  background: #e5e7eb;
  border-radius: 8px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 12px;
}

/* ホームボタン */
.home-button {
  position: fixed;
  top: 20px;
  left: 20px;
  background: white;
  padding: 8px 12px;
  border-radius: 8px;
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.2);
  z-index: 999;
}

.home_icon_img {
  width: 40px;   /* アイコンの幅 */
  height: 40px;  /* アイコンの高さ */
  object-fit: contain; /* アスペクト比を維持 */
  transition: 0.2s;
}

.home_icon_img:hover {
  transform: scale(1.1); /* ホバーで少し拡大 */
}

/* --------------------
  レスポンシブ対応
-------------------- */
@media screen and (max-width: 1200px) {
  .dashboard_grid {
    grid-template-columns: repeat(3, 1fr); /* 3列に */
  }
}

@media screen and (max-width: 900px) {
  .dashboard_grid {
    grid-template-columns: repeat(2, 1fr); /* 2列に */
  }
}

@media screen and (max-width: 600px) {
  .dashboard_grid {
    grid-template-columns: 1fr; /* 1列に */
  }
  .dashboard_card {
    max-width: 80%; /* スマホでは少し小さく */
  }
}

