body {
  background-color: #e3f2fd; /* 例：オフホワイト */
  /* background-color: #e0e0e0; /* 例：ライトグレー */
  /* background-color: #f5f5dc; /* 例：ベージュ */
}

/* ナビゲーションバーの背景と文字の色 */
.navbar {
  background-color: rgba(255, 255, 255, 0.8) !important; /* 背景を白の半透明に */
  backdrop-filter: blur(10px); /* 背景をぼかす（オプション） */
}

.navbar .nav-link, .navbar .navbar-brand {
  color: #000000 !important; /* 文字を黒に */
}

.navbar .nav-link:hover, .navbar .navbar-brand:hover {
  color: #555555 !important; /* ホバー時の文字色を薄い黒に */
}

/* コピー可能なブロック */
.copy-block {
  cursor: pointer;
}

/* テキストのスタイル */
.text-white {
  color: #ffffff !important;
}

.text-center {
  text-align: center !important;
}

/* カードのスタイル */
.card {
  border-radius: 0.5rem;
  box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
}

/* ボタンのスタイル */
.btn-primary {
  background-color: #007bff;
  border-color: #007bff;
}

/* フッターを中央揃えにする */
footer {
  text-align: center;
  padding: 20px 0;
  background-color: #f8f9fa; /* 背景色を薄いグレーに設定（任意） */
  color: #000; /* テキスト色を黒に設定（任意） */
}

/* トップ画像のスタイル調整 */
.top-image-container {
  position: relative;
  min-height: 200px; /* 必要に応じて調整 */
  overflow: hidden; /* 必要に応じて */
}

.top-image {
  object-fit: cover; /* 画像を親要素にフィットさせる */
  width: 100%; /* 横幅を100%に設定 */
  height: auto; /* 高さを自動調整 */
  display: block; /* 画像の余計な隙間を防ぐ */
  object-position: center center; /* 必要に応じて調整 */
}

/* お知らせカードのスタイル */
.card-title {
  font-weight: bold; /* 太字 */
  font-family: 'Arial', 'Helvetica', 'sans-serif'; /* ゴシック体 */
}

.card-text {
  font-weight: bold; /* 太字 */
  font-family: 'Arial', 'Helvetica', 'sans-serif'; /* ゴシック体 */
  font-size: 1rem;
}

.text-end {
  text-align: right !important;
}

/* お知らせカードの緑の縁取り */
.card.notice {
  border: 2px solid #28a745; /* 緑色の縁取り */
  border-radius: 0.5rem; /* 角を丸くする */
}

/* トースト通知のスタイル */
#toast {
  animation: fadeInOut 4s ease-in-out;
}

@keyframes fadeInOut {
  0% {
      opacity: 0;
      transform: translateY(100%);
  }
  10%, 90% {
      opacity: 1;
      transform: translateY(0);
  }
  100% {
      opacity: 0;
      transform: translateY(100%);
  }
}

/* スマホ表示以下の場合に適用 */
@media (max-width: 991.98px) { /* Bootstrapのlgブレイクポイント以下 */
  .navbar-collapse.show .navbar-nav.justify-content-end {
      display: flex;
      flex-direction: row;
      justify-content: center; /* 必要に応じて調整 */
      align-items: center; /* 必要に応じて調整 */
      width: 100%; /* 親要素の幅いっぱいに広げる */
      margin-top: 10px; /* アイコンとメニュー項目の間に余白を追加 */
      margin-left: 0 !important; /* デフォルトのmargin-leftを打ち消す */
  }

  .navbar-collapse.show .navbar-nav.justify-content-end .nav-item {
      margin-left: 5px; /* アイコン同士の左右の余白 */
      margin-right: 5px;
      margin-bottom: 0; /* アイコン間の縦の余白をなくす */
  }
}