/* article.css（本文専用の別CSS） */
.article{
  width:min(100%, 980px);
  margin:clamp(12px,2.5vw,24px) auto;
  padding:clamp(8px,2vw,16px);
}
.article h3{
  font-size:clamp(1.2rem, 2.4vw, 1.6rem);
  margin:.5em 0 .25em;
}
.article p{
  line-height:1.6;          /* 必要に応じて 1.4〜1.8 で調整 */
  margin:.4em 0;
}
.article b{ font-weight:700 }

/* 箇条書き（ダッシュ風） */
.article .dash-list{
  list-style:none;
  padding-left:0;
  margin:.3em 0 .8em;
}
.article .dash-list li{
  position:relative;
  padding-left:1.1em;
  margin:.25em 0;
}
.article .dash-list li::before{
  content:"—";
  position:absolute;
  left:0;
}

/* レスポンシブ微調整 */
@media (max-width: 600px){
  .article{ padding:12px }
  .article p{ line-height:1.55 }
}
.dash-list{
  list-style:none;
  padding-left:0;
  margin:.3em 0 .8em;
}
.dash-list li{
  position:relative;
  padding-left:1.1em;
  margin:.25em 0;
}
.dash-list li::before{
  content:"—";
  position:absolute;
  left:0;
}

/* 目次 (toc) */
.toc {
  background:#f9f9f9;
  border:1px solid #ddd;
  border-radius:8px;
  padding:1em 1.2em;
  margin:1.5em 0;
}
.toc h3 {
  font-size:1.1rem;
  margin-top:0;
  margin-bottom:.6em;
  color:#333;
}
.toc ul {
  list-style:none;
  padding-left:0;
  margin:0;
}
.toc li {
  margin:.4em 0;
}
.toc a {
  text-decoration:none;
  color:#567d46;
  transition:color .25s ease;
}
.toc a:hover {
  color:#333;
  text-decoration:underline;
}
