
.news_article_contents > * {
  margin-top: 0;
}

.news_article_contents h2 {
  margin: 0.5rem 0 1.25rem;
  padding-bottom: 0.75rem;
  border-bottom: 2px solid #1d4ed8;
  font-size: 1.25rem;
  font-weight: 700;
  line-height: 1.6;
  letter-spacing: 0.06em;
  color: #0f172a;
}

.news_article_contents h3 {
  margin: 0.5rem 0 1rem;
  padding-left: 0.75rem;
  border-left: 4px solid #1d4ed8;
  font-size: 1.125rem;
  font-weight: 700;
  line-height: 1.6;
  letter-spacing: 0.06em;
  color: #0f172a;
}

.news_article_contents h4,
.news_article_contents h5,
.news_article_contents h6 {
  margin: 0.5rem 0 0.75rem;
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.6;
  letter-spacing: 0.06em;
  color: #0f172a;
}

.news_article_contents p {
  margin: 0 0 1.5rem;
}

.news_article_contents ul,
.news_article_contents ol {
  margin: 0 0 2.5rem;
  padding-left: 1.5rem;
}

.news_article_contents ul {
  list-style: disc;
}

.news_article_contents ol {
  list-style: decimal;
}

.news_article_contents li + li {
  margin-top: 0.5rem;
}

.news_article_contents li::marker {
  color: #1d4ed8;
}

.news_article_contents ol li::marker {
  font-weight: 700;
}

.news_article_contents a {
  color: #1d4ed8;
  text-decoration: underline;
}

.news_article_contents a:hover {
  opacity: 0.7;
}

.news_article_contents img {
  height: auto;
  max-width: 100%;
}

.news_article_contents figure {
  margin: 0 0 2.5rem;
}

.news_article_contents figcaption {
  margin-top: 0.5rem;
  font-size: 0.8125rem;
  color: #64748b;
}

.news_article_contents blockquote {
  margin: 0 0 2.5rem;
  padding: 1rem 1.25rem;
  border-left: 4px solid #cbd5e1;
  background: #f8fafc;
}

.news_article_contents blockquote > :last-child {
  margin-bottom: 0;
}

.news_article_contents table {
  width: 100%;
  margin: 0 0 2.5rem;
  border-collapse: collapse;
}

.news_article_contents th,
.news_article_contents td {
  padding: 0.75rem 1rem;
  border: 1px solid #e2e8f0;
  text-align: left;
}

.news_article_contents th {
  background: #f1f5f9;
  font-weight: 700;
}

.news_article_contents > :last-child {
  margin-bottom: 0;
}

@media (min-width: 768px) {
  .news_article_contents h2 {
    font-size: 1.5rem;
  }
  .news_article_contents h3 {
    font-size: 1.25rem;
  }
  .news_article_contents h4,
  .news_article_contents h5,
  .news_article_contents h6 {
    font-size: 1.125rem;
  }
}

.news_article_contents .wp-block-buttons {
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem;
}

.news_article_contents .wp-block-button__link {
  display: inline-block;
  background: #ea0002;
  color: #fff;
  font-weight: 700;
  padding: 0.75em 2em;
  text-decoration: none;
}

.news_article_contents .wp-block-button__link:hover {
  opacity: 0.8;
}
