/* スマホだけ：指定ラベルに縦赤棒＋太字 */
@media (max-width: 768px) {
  body.home .label-1.headline .text,
  body.home .label-4.headline .text,
  body.home .label-7.headline .text,
  body.home .label-8.headline .text,
  body.home .label-11.headline .text,
  body.home .labelx-1.headline .text,
  /* .headline が無い場合の保険 */
  body.home .label-1 .text,
  body.home .label-4 .text,
  body.home .label-7 .text,
  body.home .label-8 .text,
  body.home .label-11 .text,
  body.home .labelx-1 .text {
    font-weight: 700;
    border-left: 4px solid #e60012; /* 縦の赤棒 */
    padding-left: 8px;              /* 棒と文字の間 */
    display: inline-block;          /* 幅を文字に合わせる */
    line-height: 1.4;
  }
}

@media screen and (max-width: 768px) {
  .single-post h2 {
    position: relative;
    background-color: #ffffff; /* 下地白 */
    padding: 0.5em 0.8em;
    font-weight: bold;
    margin-bottom: 1em;
  }

  .single-post h2::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 5px; /* 縦ラインの太さ */
    height: 100%;
    background-color: red; /* 赤縦ライン */
  }
}

@media screen and (max-width: 768px) {
  .single-post h2 {
    position: relative;
    background-color: #ffffff; /* 下地白 */
    padding: 0.5em 0.8em;
    font-weight: bold;
    margin-bottom: 1em;
  }

  .single-post h2::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 5px; /* 縦ラインの太さ */
    height: 100%;
    background-color: red; /* 赤縦ライン */
  }
}

/* h2 メイク */
h2 {
  position: relative;
  font-weight: bold;
  padding: 0.5em 0.8em;
  background: linear-gradient(to bottom, #f0f0f0 0%, #ffffff 100%);
  margin-bottom: 1em;
}

/* 左赤ライン */
h2::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 5px; /* 赤ラインの太さ */
  height: 100%;
  background-color: red;
}