.single_img {
  margin: unset;
}
.single_content {
  margin-top: 2.67rem;
  display: flex;
  flex-direction: column;
  row-gap: 2.67rem;
}
.single_content_wrapper {
  display: flex;
  flex-direction: column;
  row-gap: 0.89rem;
}
.single_lead {
  font-size: 0.89rem;
  color: #000000;
  font-weight: 400;
}
.single_ttl--h3 {
  padding-bottom: 1.2rem;
  border-bottom: 3px solid #005bac;
  .txt {
    display: block;
    font-weight: 700;
    font-size: 1.33rem;
  }
}
.single_ttl--h4 {
  padding-left: 1.2rem;
  border-left: 3px solid #005bac;
  .txt {
    font-weight: 700;
    font-size: 1.11rem;
  }
}
.single_ttl--h5 {
  .txt {
    font-weight: 700;
    font-size: 1.11rem;
  }
}

/* 目次 */
.index_ttl {
  // margin-bottom: 0.83rem;
  padding-bottom: 0.83rem;
  font-size: 1.11rem;
  font-weight: 500;
  color: #000000;
  border-bottom: 1px solid #dedede;
}
.index_list {
  padding: unset;
  margin: unset;
  display: flex;
  flex-direction: column;
  row-gap: 0.33rem;
  list-style: decimal;
}
.index_item {
  display: flex;
  flex-direction: column;
  row-gap: 0.33rem;
}
.index_item_list_link {
  display: grid;
  grid-template-columns: max-content 1fr;
  column-gap: 0.4rem;
  color: #1658a0;
  font-weight: 700;
  &::before {
    display: block;
    content: "・";
    color: #1658a0;
    font-size: 0.89rem;
  }
}
.index_item_list_child_list {
  padding-left: 1.3rem;
  display: flex;
  flex-direction: column;
  row-gap: 0.33rem;
}
.index_item_list_child_list_item_link {
  display: grid;
  grid-template-columns: max-content 1fr;
  column-gap: 0.4rem;
  color: #1658a0;
  &::before {
    display: block;
    content: "ー";
    color: #1658a0;
    font-size: 0.89rem;
  }
}

/* 投稿 */
.single_content_wrapper {
  &.single_content_wrapper--gray {
    display: flex;
    flex-direction: column;
    row-gap: 1.78rem;
    background-color: #ececec;
    padding: 1rem;
    @media (min-width: 768px) {
      padding: 2.22rem 0.89rem;
    }
    .single_content_lead {
      @media (min-width: 768px) {
        width: 90%;
        margin-inline: auto;
      }
    }
  }
}
.single_content_h3 {
  margin-bottom: 1rem;
  display: grid;
  grid-template-columns: max-content 1fr;
  align-items: center;
  column-gap: 0.4rem;
  padding: 0.4rem;
  background-color: #ffffff;
  @media (min-width: 768px) {
    margin-bottom: 0.89rem;
    padding: 0.89rem 2.67rem;
  }
  .ico {
    display: block;
    width: 1rem;
    height: 1rem;
    @media (min-width: 768px) {
      width: 1.39rem;
      height: 1.39rem;
    }
  }
}
.single_content_btn_wrap {
  display: grid;
  row-gap: 1rem;
  @media (min-width: 768px) {
    grid-template-columns: max-content max-content;
    column-gap: 3.11rem;
    row-gap: unset;
    width: 90%;
    margin-inline: auto;
  }
}
.single_content_btn_content {
  display: flex;
  flex-direction: column;
}
.single_content_btn_ttl {
  margin-bottom: 0.4rem;
  font-size: 1rem;
  font-weight: 500;
  color: #000000;
  text-align: center;
  display: block;
  width: 100%;
  @media (min-width: 768px) {
    font-size: 1.11rem;
    text-align: left;
  }
}
.single_content_btn {
  padding: 0.72rem;
  width: 100%;
  color: $color_white;
  background: #005bac;
  text-align: center;
  min-width: 238px;
  max-width: 238px;
  display: grid;
  align-items: center;
  justify-content: center;
  place-content: center;
  letter-spacing: 0.05em;
  position: relative;
  opacity: 1;
  transition: 0.3s ease-in-out;
  text-decoration: none;
  span {
    color: #ffffff;
    font-size: 0.89rem;
    font-weight: 700;
    transition: 0.3s ease-in-out;
  }
  &::after {
    position: absolute;
    top: 50%;
    right: 0.89rem;
    transform: translateY(-50%);
    display: block;
    content: "";
    width: 0.44rem;
    height: 0.83rem;
    aspect-ratio: 1 / 1;
    background: url("https://46923556.fs1.hubspotusercontent-na1.net/hubfs/46923556/btn_arrow_white.svg") transparent no-repeat center / contain;
    transition: 0.3s right ease-in-out;
  }
  &:hover {
    opacity: 0.75;
    &::after {
      right: 0.91rem;
    }
  }
}
h4 {
  &.select_ttl {
    margin-bottom: 2rem;
    @media (min-width: 768px) {
      margin-bottom: 3.06rem;
    }
    &.type01 {
      display: grid;
      grid-template-columns: max-content 1fr;
      align-items: center;
      row-gap: 1rem;
      &::before {
        display: block;
        content: "";
        width: 6.67rem;
        height: 4px;
        border-radius: 4px;
        background-color: #005bac;
        grid-area: 1 / 1 / 2 / 2;
      }
      &::after {
        display: block;
        content: "";
        width: 100%;
        height: 1px;
        background-color: #cacaca;
        grid-area: 1 / 2 / 2 / 3;
      }
      .txt {
        font-weight: 700;
        font-size: 1.11rem;
        grid-area: 2 / 1 / 3 / 3;
      }
      &.text-align-left {
        .txt {
          text-align: left;
        }
      }
      &.text-align-center {
        .txt {
          text-align: center;
        }
      }
      &.text-align-right {
        .txt {
          text-align: right;
        }
      }
    }
    &.type02 {
      margin-inline: auto;
      width: fit-content;
      text-align: center;
      &::after {
        margin-top: 1rem;
        margin-inline: auto;
        display: block;
        content: "";
        width: 4.44rem;
        height: 4px;
        border-radius: 4px;
        background-color: #005bac;
      }
      .txt {
        font-weight: 700;
        font-size: 1.11rem;
      }
      &.text-align-left {
        width: fit-content;
        margin-left: 0;
        margin-right: auto;
      }
      &.text-align-center {
        width: fit-content;
        margin-inline: auto;
      }
      &.text-align-right {
        width: fit-content;
        margin-left: auto;
        margin-right: 0;
      }
    }
    &.type03 {
      width: 100%;
      padding-bottom: 1.2rem;
      border-bottom: 3px solid #005bac;
      .txt {
        display: block;
        font-weight: 700;
        font-size: 1.11rem;
      }
      &.text-align-left {
        .txt {
          text-align: left;
        }
      }
      &.text-align-center {
        .txt {
          text-align: center;
        }
      }
      &.text-align-right {
        .txt {
          text-align: right;
        }
      }
    }
    &.type04 {
      padding-left: 1.2rem;
      border-left: 3px solid #005bac;
      .txt {
        font-weight: 700;
        font-size: 1.11rem;
      }
      &.text-align-left {
        width: fit-content;
        margin-left: 0;
        margin-right: auto;
      }
      &.text-align-center {
        width: fit-content;
        margin-inline: auto;
      }
      &.text-align-right {
        width: fit-content;
        margin-left: auto;
        margin-right: 0;
      }
    }
  }
}
.single_content_img_wrap {
  margin-bottom: 1.11rem;
  display: grid;
  row-gap: 2rem;
  @media (min-width: 768px) {
    margin-bottom: unset;
    grid-template-columns: repeat(2, 1fr);
    column-gap: 2.33rem;
    row-gap: unset;
  }
}
.single_content_img {
  position: relative;
  width: 100%;
  margin: unset;
  img {
    width: 100%;
    height: auto;
    border-radius: 6px;
  }
  figcaption {
    display: block;
    margin-top: 0.44rem;
    font-weight: 400;
    font-size: 0.78rem;
  }
}