.river {
     padding:1em;
     margin:1em 0 3em;
     background-color:white;
     border-radius:1em;
     -webkit-box-shadow:2px 4px 8px #333;
     box-shadow:2px 4px 9px #333;
}

.b {
	font-size: 1.1em;
	font-weight: bold;
}

td b {
  font-size: 1em; /* 親要素のフォントサイズを継承する */
  font-weight: bold;  /* 太字を維持 */
}

br {
  display: block; /* brタグをブロック要素として扱う */
  margin-bottom: 10px; /* 下方向の余白を追加 */
}

p {
  line-height: 1.5; /* 行間を調整 (1.0が標準) */
}

p.sub {
    font-size: 1.2em;
    font-weight: bold;
}

p.middle-ws {
    font-weight: bold;
    font-size: 1.0em;
    margin: 10px 30px;
    line-height: 22px;
}

.wf-center {
    vertical-align: middle;
    text-align: center;
}

td.wf-center {
    border: solid 1px #ccc;
}

.wf-island {
    margin: 20px auto 20px;
    padding: 5px;
    background-color: white;
    border: none;
}

.tbl-x td:first-child {
    background: #fbf5f5;
}

.waterfall-supplement {
    font-size: xx-small;
    margin-left: 5px;
}

.waterfalls-100 {
    font-size: xx-small;
    font-weight: bold;
    margin-left: 5px;
}

.thead th {
    font-size: medium;
    font-weight: bold;
    background: #e9727e;
    border: solid 1px #ccc;
    color: #fff;
    padding: 10px;
    vertical-align: middle;
}


.wf-images-area {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  margin-bottom: 8px;
}

.wf-images-area img {
  width: 32.5%;
  margin: 5px 5px 0 0;
}

.article h4 {
  margin: 10px 0;
}

p.waterfall-visits {
    font-size: 1.0em;
    line-height: 22px;
    margin: 15px;
}

span.ws-distance-1 {
    font-size: small;
}

span.ws-distance-2 {
    font-size: small;
}

span.ws-distance-3 {
    font-size: small;
}

/* H3内のリンク色と装飾を変更 */
h3 a[name="suikei.html"] {
  color: inherit;        /* 親要素の色を継承（黒など） */
  text-decoration: none; /* 下線を消す */
}

/* ホバー時も色や下線を変えない */
h3 a[name="suikei.html"]:hover {
  color: inherit;
  text-decoration: none;
}

/* basin_intro の説明文を小さくする */
.basin-intro {
  font-size: 15px;     /* お好みのサイズに変更 */
  line-height: 1.2;    /* 行間も調整 */
}


/* color */
.red { color: #ff0000; }
.blue { color: #0000ff; }
.skyblue { color: #0091f2; }
.green { color: #009966; }
.yellow { color:#FFFF33; }
.purple{ color: #9400D3; }
.black { color: #000000; }
.plum { color: #942193; }
.brown{ color: #8B4513; }
.gray{ color: #696969; }
.bluegreen{ color: #339999; }
.kimidori{ color: #CCFF33; }
.orange { color: #ff9900; }
.pink{ color: #ff1493; }
.ruby{ color: #e73562; }
.sapphire{ color: #004C61; }
.emerald { color: #00fa9f; }
.cobalt{ color: #2CAAFF; }

/* 感動度リストの文字サイズを小さくする */
.island p span.ruby,
.island p span.plum,
.island p span.pink,
.island p span.red,
.island p span.blue,
.island p span.black {
    font-size: 16px; /* ここでお好みのサイズに調整 */
}

/* ついでに「本数」の数字部分も小さくするなら */
.island p {
    font-size: 16px;
}


@media screen and (max-width: 1255px){
  .main {
    width: 100%;
  }
  .sidebar {
    display: none;
  }
}

@media screen and (max-width: 767px){
  .wf-images-area {
    display: block;
  }
  .wf-images-area img {
    display: block;
    width: 90%;
  }
  .wf-images-area img.br-sp {
    display: none;
  }
}

@media screen and (min-width: 1256px){
  .main {
    width: 100%;
  }
  .sidebar {
    display: none;
  }
}

/* ---------- 強調タグ全般のサイズとウェイトを統一 ---------- */
.entry-content strong,
.entry-content b,
.entry-content em,
.entry-content i
{
  font-size: inherit !important;  /* サイズ拡大を抑止 */
  font-weight: 500;               /* 太字ベースで統一。em/iは見た目上も統一感 */
  font-style: normal;             /* em/i の斜体をオフ（必要であれば） */
}
