@charset "UTF-8";

.sitemap-page {
  max-width: 800px;
  margin: 0 auto;
  padding: 40px 20px;
  font-size: 16px;
  line-height: 1.8;
}

.sitemap-page h1 {
  font-size: 28px;
  margin-bottom: 1em;
}

.sitemap-page h2 {
  font-size: 22px;
  margin-top: 2em;
  color: #444;
}

.sitemap-page ul {
  padding-left: 1.5em;
}

.sitemap-page li {
  margin-bottom: 0.5em;
}

/* ------- サイトマップ本体デザイン -------- */

.sitemap ul {
  list-style: none;
  padding-left: 0;
  font-family: sans-serif;
  line-height: 1.6;
}

/* 下層（子階層）のインデント */
.sitemap ul ul {
  margin-left: 4em;
}

/* 上位階層：先頭に「・」を付ける */
.sitemap > ul > li::before {
  content: "・";
  margin-right: 0.5em;
  /* color: #555; */
}

/* 下位階層：先頭に「>」を付ける */
.sitemap ul ul li::before {
  content: ">"; /* または ">" に変更してもOK */
  margin-right: 0.5em;
  /* color: #999; */
}

/* 下位階層の文字サイズ少し小さくする（任意） */
.sitemap ul ul li {
  font-size: 0.95em;
  /* color: #444; */
}

/* リンクの見た目 */
.sitemap a {
  /* color: #0066cc; */
  text-decoration: none;
}

.sitemap a:hover {
  text-decoration: underline;
  color: var(--hover-color);
}




@media screen and (max-width: 600px) {
  .sitemap ul ul {
    margin-left: 1em; /* インデントを控えめに */
  }

  .sitemap a {
    font-size: 1.1em; /* リンク文字を少し大きく */
    padding: 0.4em 0;  /* タップしやすい上下余白 */
    display: inline-block; /* クリック範囲を広げる */
  }

  .sitemap li {
    margin-bottom: 0.7em; /* 行間を少し広く */
  }
}
