body {
  background-color: #0b0231;
  color: #3b2412;
  margin: 0;
}
img {
  display: block;
  max-width: 100%;
  height: auto;
  margin-left: auto;
  margin-right: auto;
}


.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);
}

.page-title {
  text-align: center;
  margin-bottom: 16px;
}

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

.illustration {
  text-align: center;
  margin: 20px 0;
}

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

.illustration-inline {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
}

.illustration-inline img {
  margin: 0;
}

.photo-row {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 16px;
  margin: 20px 0;
}

.photo-row figure {
  margin: 0;
  flex: 1 1 260px;
  max-width: 100%;
  text-align: center;
}

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

p {
  color: #3b2412;
  line-height: 1.8;
  text-indent: 1em;
  margin: 14px 0;
}

hr {
  border: none;
  border-top: 1px solid rgba(0, 0, 0, 0.2);
  margin: 32px auto;
  max-width: 640px;
}

/* 文字色 */
.c-white       { color: #3b2412; }
.c-yellow      { color: #997700; }
.c-green       { color: #2e7d0a; }
.c-yellowgreen { color: #5a8a00; }
.c-olive       { color: #7a7a00; }
.c-pink        { color: #b23a5c; }
.c-paleyellow  { color: #7a6a10; }
.c-blue        { color: #0033cc; }

/* 文字サイズ */
.fs-80  { font-size: 80%; }
.fs-100 { font-size: 100%; }
.fs-120 { font-size: 120%; }

/* 東京マラソン記事のコピペ由来の装飾（Webページからの貼り付けスタイルをそのまま再現） */
.paste-plain {
  color: #1a1a1a;
}
.paste-yellow {
  color: #997700;
}
