@charset "utf-8";
/* CSS Document */

.visual {
  position: relative;
  text-align: center; /* 🔸中の文字を中央に */
  padding: 60px 20px;
  background-color: #f5f5f5;
}

.visual-text h1,
.visual-text p {
  margin: 0 auto;
}

.message {
  text-align: center;
  padding: 40px 20px 10px; /* ← これだけで自然な余白になります */
}

.message h1,
.message p {
  margin: 0 auto;
  max-width: 800px; /* 🔸中央寄せ＋行の読みやすさを意識 */
}

.page-nav {
  background-color: #f5f5f5;
  border-left: 6px solid #007acc;
  padding: 0.5em 1em 1em; /* 🔸 上だけ0.5emにして詰める */
  margin: 0.5em 0;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.08);
  border-radius: 8px;
}

.page-nav h2 {
  font-size: 1.2em;
  margin-top: 0;           /* 🔸 上マージンを消す */
  margin-bottom: 0.5em;    /* 🔸 少し狭める */
  padding: 0;
  color: #333;
  font-weight: bold;
}

.page-nav ul {
  list-style: none;
  padding-left: 1em;
}

.page-nav li {
  margin-bottom: 0.6em;
  position: relative;
  padding-left: 1em;
}

.page-nav li::before {
  content: \"▶\";
  color: #007acc;
  position: absolute;
  left: 0;
}

.page-nav a {
  text-decoration: none;
  color: #007acc;
}

.page-nav a:hover {
  text-decoration: underline;
}

/* h2：セクションタイトル（カード風） */
.main h2 {
  background-color: #eaf4fb; /* 薄い水色 */
  color: #004b85;             /* 濃い青文字 */
  padding: 1em 1.2em;
  margin-top: 2em;
  margin-bottom: 1em;
  border-left: 6px solid #007acc; /* 青アクセントライン */
  border-radius: 6px;
  font-size: 1.4em;
  font-weight: bold;
}

/* h3：小見出し（すこし小さいカード風） */
.main h3 {
  background-color: #f0f8fc; /* より薄い青背景 */
  color: #000000;
  padding: 0.6em 1em;
  margin-top: 1.5em;
  margin-bottom: 0.6em;
  border-left: 4px solid #7dbbe6;
  border-radius: 4px;
  font-size: 1.15em;
  font-weight: bold;
}


