/**
 * 旧静的サイトから移行した長文・LP向けの共通スタイル。
 *
 * 元サイトの固定幅・インライン装飾・JavaScript依存は持ち込まず、
 * テーマのトークンと本文幅に合わせる。
 */

.orwa-static figure {
  margin: 0 0 var(--orwa-sp-4);
}

.orwa-static__image,
.orwa-static__hero {
  display: block;
  width: 100%;
  height: auto;
  border-radius: var(--orwa-radius);
}

/* 画像は元の大きさまで。本文幅を超えるものだけ縮める */
.orwa-static__image {
  width: auto;
  max-width: 100%;
}

.orwa-static__hero {
  max-height: 680px;
  object-fit: cover;
}

.orwa-static table {
  display: block;
  width: 100%;
  overflow-x: auto;
  border-collapse: collapse;
}

.orwa-static th,
.orwa-static td {
  padding: var(--orwa-sp-2);
  border: 1px solid var(--orwa-border);
  vertical-align: top;
}

.orwa-static__plan {
  margin-top: var(--orwa-sp-5);
  padding-top: var(--orwa-sp-4);
  border-top: 1px solid var(--orwa-border);
}

.orwa-static__lead {
  font-size: var(--orwa-fs-lg);
}

.orwa-static__gallery {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--orwa-sp-2);
  margin-top: var(--orwa-sp-4);
}

.orwa-static__gallery figure {
  margin: 0;
}

.orwa-static__contact {
  margin-top: var(--orwa-sp-5);
  padding: var(--orwa-sp-4);
  border-radius: var(--orwa-radius);
  background: var(--orwa-bg-sub);
}

.orwa-static__contact > :first-child {
  margin-top: 0;
}

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

@media (min-width: 768px) {
  .orwa-static__plan {
    padding-top: var(--orwa-sp-5);
  }

  .orwa-static__gallery {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}
