/* トップの最新話と、これまでの1コマ一覧で共有する。 */
.yumetora-section { margin-top: 44px; scroll-margin-top: 72px; }
.yumetora-section h2:not(.section-title) { font-size: 20px; line-height: 1.5; color: #333; margin: 0 0 10px; }
.yumetora-intro { color: #555; font-size: 14px; line-height: 1.9; margin: 0 0 18px; }
.yumetora-card {
  display: grid;
  grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr);
  align-items: center;
  gap: 28px;
  padding: 0;
}
.yumetora-figure { margin: 0; min-width: 0; }
.yumetora-figure a { display: block; }
.yumetora-figure img { display: block; width: 100%; height: auto; }
.yumetora-figure figcaption { margin-top: 8px; font-size: 12px; line-height: 1.7; color: #666; text-align: center; }
.yumetora-copy { min-width: 0; }
.yumetora-copy h3 { margin: 8px 0 14px; font-size: 18px; line-height: 1.7; color: #333; }
.yumetora-eyebrow { margin: 0; font-size: 12px; font-weight: 700; color: #666; }
.yumetora-dialogue { margin: 0 0 16px; padding-left: 14px; border-left: 2px solid #d7dee8; }
.yumetora-dialogue p { margin: 0; font-size: 14px; line-height: 1.9; color: #555; }
.yumetora-copy > p:not(.yumetora-eyebrow) { font-size: 14px; line-height: 1.9; color: #555; }
.yumetora-steps-title { margin: 20px 0 8px; font-size: 14px; line-height: 1.7; color: #333; }
.yumetora-steps { margin: 0 0 16px; padding-left: 1.5em; font-size: 14px; line-height: 1.9; color: #555; }
.yumetora-steps li + li { margin-top: 7px; }
.yumetora-copy > p a { color: #0b72d9; text-underline-offset: 3px; }
.yumetora-links { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 20px; }
.yumetora-links a {
  display: inline-block; color: #0b72d9;
  font-size: 13px; font-weight: 700; text-decoration: none; line-height: 1.6;
}
.yumetora-links a:hover { text-decoration: underline; }
.yumetora-more { margin: 16px 0 0; text-align: right; font-size: 14px; }
.yumetora-more a { color: #0b72d9; text-underline-offset: 3px; }
.yumetora-section a:focus-visible { outline: 3px solid #0b72d9; outline-offset: 4px; }
@media (max-width: 700px) {
  .yumetora-card { grid-template-columns: minmax(0, 1fr); gap: 20px; }
  .yumetora-more { text-align: left; }
}
