.page-kaisetsu-index .pillrow{
  margin-top: 10px;
  display:flex;
  flex-wrap:wrap;
  gap: 8px;
}

.page-kaisetsu-index .pill{
  display:inline-flex;
  align-items:center;
  gap:6px;
  padding: 6px 10px;
  border-radius: 999px;
  border: 1px solid rgba(15,23,42,.10);
  background: rgba(241,243,249,.75);
  color: #1f2937;
  font-size: calc(12px + var(--size-bump));
  font-weight: 650;
  width: fit-content;
}

@media (max-width: 1100px){
  .page-kaisetsu-index .links .linkcard{
    grid-column: span 6;
  }
}
/* quick nav buttons */
.quick-nav{
  display:flex;
  gap:10px;
  margin-top:14px;
  flex-wrap:wrap;
}
.qbtn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:10px 12px;
  border-radius:14px;
  border:1px solid rgba(15,23,42,.10);
  background: rgba(255,255,255,.85);
  font-weight:650;
}

/* steps */
.steps{
  display:grid;
  grid-template-columns: repeat(3, 1fr);
  gap:12px;
}
.step-title{
  margin:0 0 6px;
  font-size:14px;
}
.step-desc{
  margin:0;
  color: var(--muted);
  line-height:1.7;
}

/* group headings */
.group-head{
  margin: 14px 0 10px;
}
.group-head h3{
  margin:0 0 4px;
  font-size: 15px;
}
.group-head p{
  margin:0;
  color: var(--muted);
  font-size: 13px;
  line-height: 1.7;
}

@media (max-width: 980px){
  .steps{ grid-template-columns: 1fr; }
}

/* 歴史・公民：2×2配置（theme.cssの12列＆span指定を打ち消す） */
.links.grid-2x2{
  grid-template-columns: repeat(2, 1fr);
}

.links.grid-2x2 > .linkcard{
  grid-column: auto;     /* ← span 4 を解除 */
}

/* スマホは縦並び */
@media (max-width: 980px){
  .links.grid-2x2{
    grid-template-columns: 1fr;
  }
  .links.grid-2x2 > .linkcard{
    grid-column: auto;
  }
}

/* kaisetsu-index.css */
.section-gap{
  margin-top: 24px; /* 1行分〜少し余裕 */
}
