/* ドライブガイド系の記事(portrisboa1〜3・espanaramancya・espanacoutruroad・terkytoroy1) 共通スタイル。Word書き出し(表組み・内部CSS)から、見出し・図・節の構造に作り直した。 */
body {
  background-color: #0b0231;
  color: #3b2412;
  margin: 0;
}

img {
  display: block;
  max-width: 100%;
  height: auto;
  margin-left: auto;
  margin-right: auto;
}

/* ページ全体を中央に。本文は幅760pxの中央カラムにそろえる */
.page-center {
  max-width: 960px;
  margin: 0 auto;
  padding: 16px 12px 72px;
  box-sizing: border-box;
  background-color: #ffffcc;
  border-radius: 14px;
  box-shadow: 0 4px 24px rgba(0, 0, 0, 0.35);
}

.chapter {
  max-width: 760px;
  margin: 0 auto;
  padding-top: 8px;
}

.chapter::after {
  content: "";
  display: block;
  clear: both;
}

.chapter:not(.intro) {
  margin-top: 36px;
  border-top: 2px solid #cc9933;
}

h1 {
  margin: 12px 0 16px;
  text-align: center;
  color: #1a3a8a;
  line-height: 1.4;
}

h2 {
  clear: both;
  margin: 20px 0 12px;
  padding: 4px 0 4px 14px;
  border-left: 6px solid #cc9933;
  color: #7a4a10;
  line-height: 1.4;
}

h3 {
  clear: both;
  margin: 26px 0 8px;
  font-size: 18px;
  color: #1a3a8a;
  line-height: 1.5;
}

p {
  line-height: 1.8;
  text-indent: 1em;
  margin: 10px 0;
}

.label {
  text-indent: 0;
  margin: 18px 0 4px;
  font-weight: 700;
  color: #7a4a10;
}

/* 図 */
figure {
  margin: 0;
  text-align: center;
}

figure img {
  border-radius: 4px;
}

figcaption {
  max-width: 260px;
  margin: 6px auto 0;
  font-size: 14px;
  line-height: 1.6;
  color: #5a3a1a;
}

/* 文章に回り込む写真(元の align=right) */
.fig-right {
  float: right;
  margin: 4px 0 12px 20px;
  max-width: 46%;
}

.fig-left {
  float: left;
  margin: 4px 20px 12px 0;
  max-width: 46%;
}

/* 写真が並ぶ行(サムネイル・2枚組) */
.photo-row {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: flex-start;
  gap: 14px 18px;
  margin: 18px 0;
}

/* 写真1枚＋本文が並ぶ行(表組みの2セルだった箇所) */
.split {
  display: flex;
  align-items: flex-start;
  gap: 20px;
  margin: 12px 0 18px;
}

.split > figure {
  flex: 0 0 auto;
  max-width: 46%;
}

.split-text {
  flex: 1 1 0;
  min-width: 0;
}

.split-text p:first-child {
  margin-top: 0;
}

@media (max-width: 600px) {
  .fig-right,
  .fig-left {
    float: none;
    max-width: 100%;
    margin: 14px auto;
  }

  .split {
    flex-direction: column;
    align-items: stretch;
  }

  .split-left > figure,
  .split-right > figure {
    max-width: 100%;
    align-self: center;
  }

  .split-right > figure {
    order: -1;
  }
}

/* 写真が元データに無く、説明文だけが残った箇所(terkytoroy1.html) */
.caption {
  text-indent: 0;
  text-align: center;
  margin: 4px 0;
  font-size: 14px;
  color: #5a3a1a;
}

.subtitle {
  text-indent: 0;
  text-align: center;
  margin: 0 0 14px;
  font-size: 18px;
  font-weight: 700;
  color: #7a4a10;
}

/* 見出しがロゴ画像のとき(hkbjral.html の副題ロゴ) */
.logo-title {
  margin: 4px 0 14px;
  padding: 0;
  border: 0;
  text-align: center;
  line-height: 1;
}

/* 話題ごとの記事(サムネイル＋見出し＋本文) */
.split-text h3 {
  margin: 0 0 8px;
}
