.icon-grid {
  /* 6列×自動折返し（12個で2段になる） */
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: clamp(12px, 2vw, 24px);
  align-items: start;
}

.icon-card {
  margin: 0;
  text-align: center;
}

.icon-title {
  font-size: 17px;
  font-weight: 600;
  margin: 0 0 10px;
  line-height: 1.3;
  color: #222;
}

.icon-img {
  width: 85px;
}

/* アイコングリッド内のリンクを下線なし＋色は継承 */
.icon-grid a {
  text-decoration: none;
  color: inherit;
  display: block;
}

/* ホバーやフォーカスでも下線を出さない */
.icon-grid a:hover,
.icon-grid a:focus,
.icon-grid a:active,
.icon-grid a:visited {
  text-decoration: none;
}

.icon-grid a .icon-title {
  text-decoration: none;
}

html {
  scroll-behavior: smooth;
}

h2.anchor-target {
  scroll-margin-top: 100px;
}
