.article-detail :is(.reading-quick-guide, .reading-guide-contents, .reading-field-note) {
  margin: 1.25rem 0;
  padding: clamp(.85rem, 3vw, 1.35rem);
  border: 1px solid #d1e1d8;
  border-radius: .85rem;
  color: #17382b;
}

.article-detail .reading-quick-guide {
  background: #eff6f1;
}

.article-detail :is(.reading-quick-guide, .reading-guide-contents) h2 {
  margin: 0 0 .75rem;
  font-size: clamp(1.2rem, 3vw, 1.5rem);
}

.reading-quick-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: .65rem;
}

.reading-quick-choice {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  padding: .75rem;
  border: 1px solid #dce9e0;
  border-radius: .65rem;
  background: #fff;
}

.reading-quick-choice > span {
  font-size: .78rem;
  font-weight: 700;
  color: #486858;
}

.article-detail .reading-quick-choice h3 {
  margin: .25rem 0 .4rem;
  font-size: 1.05rem;
  line-height: 1.25;
}

.article-detail .reading-quick-choice p {
  margin: 0 0 .6rem;
  font-size: .92rem;
  line-height: 1.45;
}

.reading-quick-choice a {
  margin-top: auto;
  font-weight: 700;
}

.reading-guide-contents {
  background: #fff;
}

.article-detail .reading-guide-contents ul {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: .28rem 1.45rem;
  margin: 0;
  padding-left: 1.2rem;
}

.article-detail :is(.reading-quick-choice, .reading-guide-contents) a {
  color: #185f45;
  text-decoration: underline;
  text-underline-offset: .16em;
}

.article-detail .reading-field-note {
  border-left: .25rem solid #55886f;
  background: #f3f8f4;
}

.article-detail .reading-field-note p {
  margin: .25rem 0 0;
}

.reading-guide-target {
  scroll-margin-top: 7rem;
}

.reading-guide-target:target {
  text-decoration: underline;
  text-decoration-color: #78ad8e;
  text-underline-offset: .15em;
}

@media (max-width: 800px) {
  .reading-guide-target { scroll-margin-top: 13rem; }
}

@media (max-width: 630px) {
  .reading-quick-grid,
  .article-detail .reading-guide-contents ul { grid-template-columns: 1fr; }
}

.reading-guide-contents details { margin-top: .65rem; }
.reading-guide-contents summary { color: #185f45; cursor: pointer; font-weight: 700; }
.reading-guide-contents details ul { margin-top: .4rem; }
