/* Only the two related-site cards, only on narrow screens. */
@media screen and (max-width: 830px) {
  .related-visual-links {
    display: block; clear: both; float: none; width: 100%; max-width: 100%;
    margin: 0; padding: 18px 12px; box-sizing: border-box; background: #f2f5f5;
  }
  .related-visual-links *, .related-visual-links *::before, .related-visual-links *::after {box-sizing: border-box;}
  .related-visual-links .related-visual-inner {
    display: grid; grid-template-columns: minmax(0, 1fr); gap: 12px;
    width: 100%; max-width: 560px; margin: 0 auto; padding: 0;
  }
  .related-visual-links a.related-visual-card {
    display: grid; grid-template-columns: 96px minmax(0, 1fr); align-items: center;
    position: relative; float: none; width: 100%; max-width: 100%;
    height: auto; min-height: 0; margin: 0; padding: 12px; gap: 12px;
    overflow: hidden; border: 1px solid #dce4e6; border-radius: 10px;
    background: #fff; color: #18394a; text-decoration: none;
    box-shadow: 0 3px 10px #1738470a;
  }
  .related-visual-links .related-visual-card > img {
    display: block; position: static; float: none; width: 96px; max-width: 100%;
    height: 96px; min-height: 0; max-height: 96px; margin: 0; padding: 0;
    object-fit: contain; border-radius: 6px; transform: none; transition: none;
  }
  .related-visual-links .haisha-card > img {object-fit: cover;}
  .related-visual-links .related-visual-copy {
    display: flex; flex-direction: column; justify-content: center;
    position: static; inset: auto; transform: none; width: auto; min-width: 0;
    height: auto; min-height: 0; margin: 0; padding: 0; text-align: left;
    background: none; color: #18394a; text-shadow: none; overflow-wrap: anywhere;
  }
  .related-visual-links .related-visual-copy > span {
    display: block; margin: 0 0 3px; padding: 0; color: #596e77;
    font-size: 11px; line-height: 1.4; letter-spacing: .04em;
  }
  .related-visual-links .related-visual-copy > strong {
    display: block; margin: 0; padding: 0; color: #18394a;
    font-size: 18px; line-height: 1.5; font-weight: 800; letter-spacing: 0;
  }
  .related-visual-links .related-visual-copy > p {
    margin: 5px 0 8px; padding: 0; color: #465b64; font-size: 12px;
    line-height: 1.6; letter-spacing: 0; white-space: normal;
  }
  .related-visual-links .related-visual-copy > b {
    display: block; align-self: stretch; margin: 0; padding: 7px 8px;
    background: #18394a; color: #fff; border-radius: 4px;
    font-size: 12px; line-height: 1.5; letter-spacing: 0; white-space: normal;
  }
  .related-visual-links .related-visual-card:focus-visible {outline: 3px solid #176aa3; outline-offset: 2px;}
}
@media screen and (max-width: 360px) {
  .related-visual-links a.related-visual-card {grid-template-columns: 72px minmax(0, 1fr); gap: 10px; padding: 10px;}
  .related-visual-links .related-visual-card > img {width: 72px; height: 84px; max-height: 84px;}
  .related-visual-links .related-visual-copy > strong {font-size: 17px;}
}
