.sitemap-content {
  width: min(1100px, calc(100% - 128px));
  margin: 0 auto;
  padding: 72px 0 120px;
}

.sitemap-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 48px 40px;
}

.sitemap-group h2 {
  margin: 0 0 18px;
  padding-bottom: 12px;
  border-bottom: 3px solid #f9ad00;
  color: #172b45;
  font-size: 20px;
}

.sitemap-group ul { margin: 0; padding: 0; list-style: none; }
.sitemap-group li + li { border-top: 1px solid #e4e4e4; }
.sitemap-group a { display: block; position: relative; padding: 13px 24px 13px 0; color: #2b2b2f; }
.sitemap-group a::after { position: absolute; top: 50%; right: 4px; color: #f9ad00; content: "→"; transform: translateY(-50%); }
.sitemap-group a:hover { color: #f19f00; }

@media (max-width: 900px) {
  .sitemap-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 767px) {
  .sitemap-content { width: calc(100% - 32px); padding: 48px 0 72px; }
  .sitemap-grid { grid-template-columns: 1fr; gap: 36px; }
  .sitemap-group h2 { font-size: 18px; }
  .sitemap-group a { font-size: 14px; }
}
