@charset "utf-8";
/* ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝
SP版
＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝*/

.sp-px {
  padding-inline: var(--sp-2);
}

/* --------------------------------- Common --------------------------------- */
.cmn-py {
  padding-block: var(--sp-5);
}

.cmn-header {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-flow: column nowrap;
  gap: var(--sp-05) var(--sp-2);
  font-weight: var(--bold);
  margin-bottom: var(--sp-3);

  p,
  h3 {
    font-weight: inherit;
  }

  p {
    font-size: var(--h4-fz);
    color: var(--clr-sub01);
  }

  h3 {
    font-size: var(--body-fz);
  }
}

.cmn-header2 {
  padding-left: var(--sp-2);
  margin-bottom: var(--sp-1);
  position: relative;

  &::before {
    content: '';
    position: absolute;
    inset: 0 auto 0 0;
    margin-block: auto;
    width: 11px;
    height: 100%;
    background-color: var(--clr-sub01);
    border-radius: 5px;
  }

  h4 {
    font-weight: var(--bold);
    font-size: calc((19 / 390) * 100vw);
    color: var(--clr-sub01);
  }
}

.cmn-cta {
  margin-inline: var(--sp-2);
  padding-bottom: var(--sp-4);
  margin-bottom: var(--sp-2);
  background: no-repeat bottom center / 1100px 17px url('../img/cmn-cta.webp');

  p {
    font-weight: var(--bold);
    color: var(--clr-sub01);
    text-align: center;
    font-size: var(--body-fz);

    em {
      font-weight: inherit;
      color: inherit;
      font-style: normal;
      font-size: calc((20 / 390) * 100vw);
    }
  }
}

/* ---------------------------------- Sec00 --------------------------------- */
.sec00 {
  .sec00__header {
    background: no-repeat center / cover url('../img/sp/sec00_bg.webp') !important;
    height: calc((346 / 390) * 100vw);
    display: flex;
    justify-content: center;
    align-items: center;

    img {
      width: calc((357 / 390) * 100vw);
      height: auto;
      margin: auto;
    }
  }

  .sec00__box {
    position: relative;
  }

  .sec00__img {
    width: 100%;
    height: auto;
  }

  .sec00__tel {
    position: absolute;
    inset: auto var(--sp-2) var(--sp-1) auto;

    span {
      font-size: 46px;
      letter-spacing: -0.03em;
      color: var(--clr-white);
      font-weight: var(--bold);
    }
  }
}

/* ---------------------------------- Sec01 --------------------------------- */
.sec01 {
  .sec01__header {
    margin-bottom: var(--sp-3);

    h3 {
      text-align: center;
      font-weight: var(--bold);
      font-size: var(--h5-fz);

      em {
        font-style: normal;
        font-weight: inherit;
        font-size: var(--h4-fz);
        color: var(--clr-red);
      }
    }
  }

  .sec01__list {
    display: flex;
    justify-content: space-between;
    align-items: end;
    flex-flow: row wrap;
    gap: var(--sp-1);
    margin-bottom: var(--sp-4);
  }

  .sec01__item {
    width: calc((173 / 390) * 100vw);

    &:nth-child(3) {
      p {
        margin-bottom: calc((35 / 390) * 100vw);
      }
    }
  }

  .sec01__item-text {
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
    color: var(--clr-main);
    font-weight: var(--bold);
    font-size: var(--body-fz);
    margin-bottom: calc((12 / 390) * 100vw);
  }

  .sec01__item-text--small {
    font-size: var(--h6-fz);
  }

  .sec01__arrow {
    display: block;
    margin: 0 auto var(--sp-2) auto;
  }

  /* .sec01__textbox {
    margin-bottom: var(--sp-5);

    p {
      text-align: center;
      font-weight: var(--bold);
      font-size: var(--h4-fz);

      em {
        font-style: normal;
        font-weight: inherit;
        font-size: var(--h3-fz);
        color: var(--clr-red);
      }
    }
  } */

  .sec01__header2 {
    background-color: var(--clr-sub01);
    text-align: left;
    padding: var(--sp-2);

    h4 {
      width: fit-content;
      margin-inline: auto;
      color: var(--clr-white);
      font-size: var(--h5-fz);
      font-weight: var(--bold);
      position: relative;
      padding-inline: calc(var(--sp-1) * 6) 0;

      &::before {
        content: '';
        position: absolute;
        margin-block: auto;
        width: 45px;
        height: 42px;
        background: no-repeat center / contain url('../img/sp/sec01_deco3.webp');
        inset: 0 auto 0 0;
      }
    }
  }

  .sec01__list2 {
    padding: calc((12 / 390) * 100vw);
    background-color: var(--clr-bg);
    margin-bottom: var(--sp-2);
  }

  .sec01__item2 {
    position: relative;
    padding-left: var(--sp-3);
    font-size: var(--small-fz);
    font-weight: var(--bold);

    span {
      font-weight: inherit;
      background-color: var(--clr-accent);
    }

    &::before {
      content: '';
      position: absolute;
      inset: 0 auto 0 0;
      margin-block: auto;
      background: no-repeat center / contain url('../img/sec01_deco2.webp');
      width: 18px;
      height: 17px;
    }

    &:not(:last-child) {
      margin-bottom: calc(var(--sp-1) * 1.5);
    }
  }
}

/* ---------------------------------- Sec02 --------------------------------- */
.sec02 {
  padding-top: 0;

  .sec02__box {
    background-color: #f3f5f9;
    /* padding-block: 28px 20px; */
    padding-inline: calc(50% - 550px);
    margin-bottom: var(--sp-2);
    position: relative;
  }

  .sec02__img {
    position: absolute;
    inset: var(--sp-2) var(--sp-2) auto auto;
    width: calc((74 / 390) * 100vw);
    height: calc((304 / 390) * 100vw);
  }

  .sec02__list {
    /* width: min(100%, 1100px);
    margin-inline: auto; */
    display: flex;
    justify-content: center;
    align-items: center;
    flex-flow: column nowrap;
    gap: calc((20 / 390) * 100vw);
    counter-reset: count;
    /* margin-bottom: 10px; */
    padding: var(--sp-2);
    padding-bottom: calc((26 / 390) * 100vw);
    position: relative;
  }

  .sec02__item {
    width: 100%;
    background-color: var(--clr-white);
    position: relative;
    box-shadow: 0 4px 7px rgba(0, 0, 0, 0.25);
    display: flex;
    justify-content: start;
    align-items: stretch;
    flex-flow: row nowrap;

    &:not(:last-child) {
      &::before {
        content: '';
        position: absolute;
        inset: auto 0 0 0;
        margin-inline: auto;
        width: calc((28 / 390) * 100vw);
        height: calc((28 / 390) * 100vw);
        background: no-repeat center / contain url('../img/sp/sec02_deco5.webp');
        transform: translateY(90%);
      }
    }
  }

  .sec02__item-count {
    display: block;
    width: calc((30 / 390) * 100vw);
    background-color: var(--clr-sub01);
    counter-increment: count;
    content: counter(count, decimal-leading-zero) '.';
    font-size: var(--h5-fz);
    color: var(--clr-white);
    text-align: center;
    padding: calc((10 / 390) * 100vw) var(--sp-05);
    font-weight: var(--bold);
  }

  .sec02__item-header {
    width: 100%;

    h5 {
      margin: 0;
      color: var(--clr-sub01);
      font-weight: var(--bold);
      font-size: calc((20 / 390) * 100vw);
      position: relative;
      line-height: 1.5;
      letter-spacing: 0;
    }
  }

  .sec02__item-box {
    /* height: 190px; */
    width: calc((230 / 390) * 100vw);
    padding: var(--sp-1) var(--sp-1) calc((29 / 390) * 100vw) var(--sp-1);
    display: flex;
    justify-content: start;
    align-items: start;
    flex-flow: column nowrap;
    flex-shrink: 0;

    p {
      line-height: 1.5;
      letter-spacing: 0;
      font-size: var(--small-fz);
      margin-bottom: 0;
    }
  }

  .sec02__item-img {
    display: block;
    margin: calc((10 / 390) * 100vw);
    margin-left: 0;
  }

  .sec02__item-img1 {
    width: calc((60 / 390) * 100vw);
    height: calc((44 / 390) * 100vw);
  }

  .sec02__item-img2 {
    width: calc((86 / 390) * 100vw);
    height: calc((84 / 390) * 100vw);
  }

  .sec02__item-img3 {
    width: calc((56 / 390) * 100vw);
    height: calc((56 / 390) * 100vw);
    margin-inline: auto;
  }

  .sec02__item-img4 {
    width: calc((55 / 390) * 100vw);
    height: calc((55 / 390) * 100vw);
    margin-inline: auto;
  }

  .sec02__item-box--tel {
    height: calc((199 / 390) * 100vw);

    p {
      font-weight: var(--medium);
      font-size: var(--body-fz);
    }

    .sec02__item-header {
      margin-bottom: var(--sp-2);
    }
  }

  .sec02__tel {
    padding-left: var(--sp-4);
    position: relative;
    margin-bottom: calc((20 / 390) * 100vw);

    &::before {
      content: '';
      position: absolute;
      inset: 0 auto 0 0;
      margin-block: auto;
      width: calc((25 / 390) * 100vw);
      height: calc((25 / 390) * 100vw);
      background: no-repeat center / contain url('../img/sp/sec02_deco1.webp');
      transform: translateY(2px);
    }

    span {
      white-space: nowrap;
      font-size: calc((22 / 390) * 100vw);
      font-weight: var(--bold);
    }
  }

  .sec02__mail {
    width: calc((206 / 390) * 100vw);
    height: calc((35 / 390) * 100vw);
    background-color: #ff544b;
    display: flex;
    justify-content: center;
    align-items: center;
    box-shadow: 0 4px 0 rgba(16, 62, 118, 0.25);
    border-radius: var(--sp-5);

    span {
      position: relative;
      color: var(--clr-white);
      font-weight: var(--bold);
      font-size: var(--small-fz);
      padding-left: var(--sp-3);

      &::before {
        content: '';
        position: absolute;
        inset: 0 auto 0 0;
        margin-block: auto;
        width: calc((16 / 390) * 100vw);
        height: calc((16 / 390) * 100vw);
        background: no-repeat center / contain url('../img/sp/sec02_deco6.webp');
      }
    }
  }

  .sec02__textbox {
    p {
      font-size: var(--small-fz);
      font-weight: var(--medium);
    }
  }

  .sec02__textbox1 {
    margin-bottom: var(--sp-5);
  }

  .sec02__textbox2 {
    margin-bottom: var(--sp-1);
  }

  .sec02__list2,
  .sec02__item2 {
    display: flex;
    justify-content: start;
    align-items: center;
    gap: calc((12 / 390) * 100vw);
  }

  .sec02__list2 {
    /* width: min(100%, 880px); */
    margin-inline: auto;
    flex-flow: row nowrap;
    background-color: var(--clr-bg);
    padding: calc((12 / 390) * 100vw);
    padding-bottom: var(--sp-2);
    overflow: auto;
  }

  .sec02__item2 {
    width: calc((158 / 390) * 100vw);
    height: calc((128 / 390) * 100vw);
    flex-shrink: 0;
    border: 1px solid #eaeaea;
    background-color: var(--clr-white);
    flex-flow: column nowrap;
    padding: var(--sp-1);

    h5 {
      text-align: center;
      font-size: var(--body-fz);
      font-weight: var(--bold);

      small {
        font-size: var(--small-fz);
        font-weight: inherit;
      }
    }
  }

  .sec02__deco {
    display: block;
    padding-block: calc((12 / 390) * 100vw);
    margin-inline: auto;
  }

  .sec02__box2 {
    background-color: var(--clr-bg);
    padding: var(--sp-2);
    margin-bottom: var(--sp-2);
  }

  .sec02__box2-header {
    margin-bottom: var(--sp-1);

    h4 {
      text-align: center;
      font-size: calc((20 / 390) * 100vw);
      font-weight: var(--bold);
    }
  }

  .sec02__box2-textbox {
    margin-bottom: var(--sp-1);

    p {
      text-align: left;
      font-weight: var(--medium);
      font-size: var(--small-fz);
    }
  }

  .sec02__list3 {
    display: flex;
    justify-content: center;
    align-items: stretch;
    flex-flow: column nowrap;
    gap: calc((12 / 390) * 100vw);
    counter-reset: count;
    margin-bottom: var(--sp-3);
  }

  .sec02__item3 {
    /* width: min(100%, 329px); */
    width: 100%;
    border-radius: var(--sp-2);
    overflow: hidden;
    background-color: var(--clr-white);
  }

  .sec02__item3-header {
    background-color: #30a9cc;
    padding: calc(var(--sp-1) * 1.5);

    h5 {
      text-align: center;
      font-weight: var(--bold);
      font-size: var(--h5-fz);
      color: var(--clr-white);

      &::before {
        counter-increment: count;
        content: counter(count, decimal-leading-zero) '. ';
      }
    }
  }

  .sec02__item3-box {
    display: flex;
    justify-content: start;
    align-items: center;
    flex-flow: column nowrap;
    gap: var(--sp-2);
    padding: calc((12 / 390) * 100vw);

    p {
      font-weight: var(--bold);
      font-size: var(--small-fz);
    }
  }

  .sec02__img2 {
    display: block;
    width: 100%;
    height: auto;
    margin: 0 auto calc((30 / 390) * 100vw) auto;
  }
}

/* ---------------------------------- Sec03 --------------------------------- */
.sec03 {
  padding-top: 0;

  .sec03__textbox {
    margin-bottom: calc((12 / 390) * 100vw);

    p {
      text-align: center;
      font-weight: var(--bold);
      font-size: calc((19 / 390) * 100vw);
    }
  }

  .sec03__list {
    counter-reset: count;
  }

  .sec03__item {
    &:not(:last-child) {
      margin-bottom: var(--sp-2);
    }
  }

  .sec03__item-header {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-flow: row nowrap;
    gap: calc(var(--sp-1) * 1.5);
    border-radius: 15px 15px 0 0;
    background-color: var(--clr-sub01);
    padding: calc((12 / 390) * 100vw);

    h4,
    p {
      text-align: center;
      font-weight: var(--bold);
    }

    p {
      flex-shrink: 0;
      width: calc((93 / 390) * 100vw);
      height: calc((32 / 390) * 100vw);
      display: flex;
      justify-content: center;
      align-items: center;
      background-color: var(--clr-white);
      color: var(--clr-sub01);
      font-weight: var(--bold);
      font-size: var(--body-fz);
      border-radius: 15px;

      &::after {
        counter-increment: count;
        content: counter(count, decimal-leading-zero);
      }
    }

    h4 {
      color: var(--clr-white);
      font-size: var(--body-fz);
      text-align: left;
    }
  }

  .sec03__item-content {
    width: 100%;
    background-color: #f0f0f0;
    border-radius: 0 0 15px 15px;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-flow: column nowrap;
  }

  .sec03__item-lbox,
  .sec03__item-rbox {
    display: flex;
    justify-content: center;
  }

  .sec03__item-lbox {
    align-items: center;
    flex-shrink: 0;
    padding: calc((12 / 390) * 100vw);
  }

  .sec03__item-rbox {
    align-items: stretch;
    flex-flow: column nowrap;
    padding: calc((12 / 390) * 100vw);
    padding-top: 0;
    gap: calc((12 / 390) * 100vw);
  }

  .sec03__item-box {
    /* width: min(100%, 430px); */
    width: 100%;
    background-color: var(--clr-white);
    padding: var(--sp-2);

    &:nth-child(1) {
      h5 {
        background-color: var(--clr-sub01);
      }
    }

    &:nth-child(2) {
      h5 {
        background-color: #30a9cc;
      }
    }

    h5 {
      width: fit-content;
      display: block;
      font-size: var(--body-fz);
      color: var(--clr-white);
      font-weight: var(--bold);
      margin-bottom: calc(var(--sp-1) * 1.5);
      padding: var(--sp-05) var(--sp-1);
    }

    p {
      font-weight: var(--medium);
      font-size: var(--small-fz);
    }
  }
}

/* ---------------------------------- Sec04 --------------------------------- */
.sec04 {
  padding-top: 0;

  .sec04__box {
    background-color: #f3f5f9;
    /* padding: var(--sp-5) calc(50% - 550px); */
    padding: calc((20 / 390) * 100vw) var(--sp-2);
    margin-bottom: var(--sp-5);

    .cmn-header2 {
      margin-bottom: var(--sp-3);
    }
  }

  .sec04__list {
    padding: 0;
    display: flex;
    justify-content: start;
    align-items: stretch;
    flex-flow: row nowrap;
    gap: var(--sp-3);
    /* padding-bottom: var(--sp-5); */
    position: relative;
    margin-bottom: var(--sp-2);
    overflow: auto;
    padding-top: var(--sp-2);

    /* 
    &::before {
      content: '';
      position: absolute;
      inset: auto 0 0 0;
      margin-inline: auto;
      width: calc(var(--sp-1) * 6);
      height: 20px;
      background: no-repeat center / contain url('../img/sec04_deco1.webp');
    } */
  }

  .sec04__deco {
    display: block;
    margin: 0 auto var(--sp-2);
  }

  .sec04__item-count {
    position: absolute;
    inset: 0 0 auto 0;
    width: fit-content;
    margin-inline: auto;
    transform: translateY(-50%);

    span {
      color: #30a9cc;
      font-weight: var(--bold);
      font-size: 28px;
      text-align: center;
      position: relative;

      &::before {
        content: '';
        position: absolute;
        inset: auto 0 0 0;
        margin-inline: auto;
        width: 19px;
        height: 3px;
        background-color: #30a9cc;
        transform: translateY(var(--sp-1));
      }
    }
  }

  .sec04__item {
    /* width: min(100%, 345px); */
    width: calc((335 / 390) * 100vw);
    background-color: var(--clr-white);
    padding: 50px 29px 25px 29px;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-flow: column nowrap;
    position: relative;
    flex-shrink: 0;

    &:not(:last-child) {
      &::before {
        content: '';
        position: absolute;
        inset: 0 0 0 auto;
        width: 51px;
        height: 35px;
        margin-block: auto;
        background: no-repeat center / contain url('../img/sec04_deco6.webp');
        transform: translateX(35px);
      }
    }
  }

  .sec04__item-header {
    width: 100%;
    /* height: 66px; */
    margin-bottom: var(--sp-2);

    h5 {
      font-weight: var(--bold);
      font-size: var(--h5-fz);
      text-align: left;
    }
  }

  .sec04__item-textbox {
    margin-bottom: var(--sp-2);

    p {
      line-height: 1.5;
      letter-spacing: 0;
      font-size: var(--small-fz);
      font-weight: var(--medium);
    }
  }

  .sec04__item-img {
    display: block;
    width: 100%;
    height: auto;
    margin: auto auto 0 auto;
  }

  .sec04__textbox {
    padding: var(--sp-3) var(--sp-2);
    background-color: #41b3dd;

    p {
      font-size: calc((24 / 390) * 100vw);
      font-weight: var(--bold);
      text-align: left;
      color: var(--clr-white);
      margin-bottom: 0;

      span {
        font-weight: inherit;
        color: #fff833;
      }
    }
  }

  .sec04__list2 {
    margin-bottom: var(--sp-4);
  }

  .sec04__item2 {
    /* height: 205px; */
    background-color: var(--clr-bg);
    display: flex;
    justify-content: center;
    align-items: center;
    flex-flow: row nowrap;
    gap: var(--sp-3);
    padding: var(--sp-2);
    padding-left: calc((47 / 390) * 100vw);
    position: relative;

    &:not(:last-child) {
      margin-bottom: var(--sp-2);
    }

    &:last-child {
      .sec04__item2-deco {
        height: auto;
      }
    }

    &:nth-child(1) {
      height: calc((203 / 390) * 100vw);
    }

    &:nth-child(2) {
      height: calc((217 / 390) * 100vw);
    }

    &:nth-child(3) {
      height: calc((283 / 390) * 100vw);
    }

    &:nth-child(4) {
      height: calc((250 / 390) * 100vw);
    }
  }

  .sec04__item2-deco {
    position: absolute;
    inset: 0 auto 0 0;
    width: calc((30.5 / 390) * 100vw);
    height: auto;
  }

  .sec04__item2-box {
    flex-grow: 1;
  }

  .sec04__item2-header {
    width: 100%;
    border-bottom: 3px solid #206ba9;
    padding-bottom: var(--sp-1);
    margin-bottom: var(--sp-1);

    h5 {
      color: #206ba9;
      font-weight: var(--bold);
      font-size: var(--h5-fz);
    }
  }

  .sec04__item2-textbox {
    p {
      font-weight: var(--medium);
      font-size: var(--small-fz);

      &:not(:last-child) {
        margin-bottom: var(--sp-05);
      }

      em {
        font-weight: var(--bold);
        font-size: var(--body-fz);
        font-style: normal;
        color: inherit;
      }
    }

    span {
      background-color: #fff833;
    }
  }
}

/* ---------------------------------- Sec05 --------------------------------- */
.sec05 {
  padding-top: 0;

  .sec05__box {
    background-color: #f3f5f9;
    /* padding: var(--sp-5) calc(50% - 550px); */
    padding: var(--sp-3) var(--sp-2);
    margin-bottom: var(--sp-5);
  }

  .sec05__textbox {
    p {
      font-weight: var(--bold);
      font-size: var(--small-fz);
      margin-bottom: calc((12 / 390) * 100vw);
    }
  }

  .sec05__list {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-flow: column nowrap;
    gap: calc((36 / 390) * 100vw);
    /* margin-bottom: var(--sp-5); */
  }

  .sec05__item {
    /* width: min(100%, calc((286 / 390) * 100vw)); */
    width: 100%;
    padding: var(--sp-2) var(--sp-3);
    display: flex;
    justify-content: start;
    align-items: center;
    flex-flow: column nowrap;
    /* gap: var(--sp-1); */
    background-color: var(--clr-white);
  }

  .sec05__item-header {
    /* height: calc(var(--sp-1) * 9); */
    margin-bottom: calc((12 / 390) * 100vw);

    h5 {
      font-weight: var(--bold);
      font-size: calc((20 / 390) * 100vw);
      text-align: center;
    }
  }

  .sec05__item-textbox {
    p {
      font-weight: var(--medium);
      font-size: var(--small-fz);
      line-height: 1.5;
      letter-spacing: 0;
    }
  }

  .sec05__box1 {
    display: flex;
    justify-content: center;
    align-items: start;
    flex-flow: column nowrap;
    gap: calc((20 / 390) * 100vw);
    margin-bottom: var(--sp-4);
  }

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

  .sec05__box1-list {
    font-size: var(--small-fz);
    list-style: outside '※ ';
    padding-left: var(--sp-2);
  }

  .sec05__box1-textbox {
    /* width: min(100%, 643px); */

    p {
      font-weight: var(--medium);
      font-size: var(--body-fz);
      line-height: 1.5;
      letter-spacing: 0;

      margin-bottom: calc((12 / 390) * 100vw);
      span {
        background: linear-gradient(
          to bottom,
          transparent 0%,
          var(--clr-accent) 30%,
          var(--clr-accent) 70%,
          transparent 100%
        );
      }

      em {
        font-weight: var(--bold);
        font-size: var(--h5-fz);
        color: inherit;
        font-style: normal;
        line-height: inherit;
        letter-spacing: inherit;
      }
    }
  }

  .sec05__list2 {
    counter-reset: count;
  }

  .sec05__item2 {
    &:not(:last-child) {
      margin-bottom: var(--sp-5);
    }
  }

  .sec05__item2-header {
    width: 100%;
    display: flex;
    justify-content: start;
    align-items: stretch;
    flex-flow: column nowrap;
    gap: var(--sp-05);
    border-block: 3px solid #206ba9;
    margin-bottom: var(--sp-3);
    background-color: #f3f5f9;

    p,
    h4 {
      padding-block: var(--sp-05);
    }

    p {
      width: calc((125 / 390) * 100vw);
      height: 100%;
      display: block;
      background-color: #206ba9;
      margin-inline: auto;
      text-align: center;
      border-radius: 0 0 30px 30px;
      color: var(--clr-white);
      font-weight: var(--bold);
      font-size: var(--h5-fz);
      position: relative;

      &::after {
        counter-increment: count;
        content: counter(count, decimal-leading-zero);
        font-size: var(--h4-fz);
      }
    }

    h4 {
      padding-inline: var(--sp-05);
      font-weight: var(--bold);
      font-size: var(--h5-fz);
      color: #206ba9;
      /* letter-spacing: -0.04em; */
    }
  }

  .sec05__list3 {
    display: flex;
    justify-content: start;
    align-items: stretch;
    flex-flow: row wrap;
    gap: calc((12 / 390) * 100vw) var(--sp-2);
  }

  .sec05__item3 {
    /* width: min(100%, 220px); */
    width: calc((170 / 390) * 100vw);
    display: flex;
    justify-content: center;
    align-items: center;
    flex-flow: column nowrap;
    gap: calc((12 / 390) * 100vw);

    img {
      width: calc((87 / 390) * 100vw);
      height: calc((87 / 390) * 100vw);
    }

    h5 {
      text-align: center;
      font-size: var(--small-fz);
      font-weight: var(--bold);
    }
  }

  .sec05__item2-small {
    font-size: calc((10 / 390) * 100vw);
    text-align: right;
    margin-bottom: var(--sp-1);
  }

  .sec05__box2 {
    width: min(100%, 943px);
    margin-inline: auto;
  }

  .sec05__box2-header {
    background-color: #dd0505;
    padding: var(--sp-1);
    position: relative;

    &::before {
      content: '';
      position: absolute;
      inset: auto 0 0 0;
      margin-inline: auto;
      width: 62px;
      height: 26px;
      background: no-repeat center / contain url('../img/sec05_deco2.webp');
      transform: translateY(90%);
    }

    h5 {
      text-align: center;
      color: var(--clr-white);
      font-weight: var(--bold);
      font-size: var(--h5-fz);

      em {
        /* font-size: var(--h4-fz); */
      }
    }
  }

  .sec05__box2-box {
    background-color: var(--clr-bg);
    padding: var(--sp-2) calc((22 / 390) * 100vw);
    margin-bottom: var(--sp-4);

    p {
      text-align: center;
      font-weight: var(--bold);
      font-size: 20px;
      line-height: 1.8em;

      small {
        font-size: var(--small-fz);
        position: relative;
        padding-inline: var(--sp-3);

        &:not(:last-child) {
          margin-bottom: var(--sp-1);
        }

        &::before,
        &::after {
          content: '';
          position: absolute;
          margin-block: auto;
          width: var(--sp-2);
          height: var(--sp-2);
          background: no-repeat center / contain url('../img/sec05_deco1.webp');
        }

        &::before {
          inset: 0 auto 0 0;
        }

        &::after {
          inset: 0 0 0 auto;
        }
      }

      span {
        background-color: #fff833;
      }
    }
  }

  .sec05__list4 {
    display: flex;
    justify-content: space-between;
    align-items: stretch;
    flex-flow: row nowrap;
    gap: var(--sp-05);
  }

  .sec05__item4 {
    width: calc((176 / 390) * 100vw);
    background-color: var(--clr-bg);
    display: flex;
    justify-content: start;
    align-items: center;
    flex-flow: column nowrap;
    gap: var(--sp-2);
    position: relative;
    padding: var(--sp-5) var(--sp-2) var(--sp-05) var(--sp-2);

    &:not(:last-child) {
      &::before {
        content: '';
        position: absolute;
        inset: 0 0 0 auto;
        margin-block: auto;
        width: calc((7 / 390) * 100vw);
        height: calc((21 / 390) * 100vw);
        background: no-repeat center / contain url('../img/sp/sec05_deco3.webp');
        transform: translateX(100%);
        z-index: 100;
        flex-shrink: 0;
      }
    }

    p {
      font-weight: var(--medium);
      font-size: calc((12 / 390) * 100vw);

      &:nth-child(2) {
        text-align: center;
      }

      strong {
        font-size: var(--body-fz);
        font-weight: var(--bold);
      }

      em {
        font-size: calc((26 / 390) * 100vw);
        font-weight: var(--bold);
      }

      span {
        background-color: #fff833;
      }
    }
  }

  .sec05__item4-banner {
    /* width: fit-content; */
    width: calc((149 / 390) * 100vw);
    margin-inline: auto;
    position: absolute;
    inset: 0 0 auto 0;
    background-color: var(--clr-main);
    padding: var(--sp-05) calc((14 / 390) * 100vw);
    transform: translateY(-50%);

    p {
      color: var(--clr-white);
      font-weight: var(--bold);
      font-size: var(--small-fz);
      text-align: center;

      em {
        font-size: calc((20 / 390) * 100vw);
      }
    }
  }

  .sec05__box3 {
    width: min(100%, 943px);
    margin-inline: auto;
    margin-bottom: var(--sp-4);
  }

  .sec05__box3-textbox {
    margin-bottom: var(--sp-3);

    p {
      font-weight: var(--bold);
      font-size: var(--small-fz);

      &:not(:last-child) {
        margin-bottom: var(--sp-2);
      }

      span {
        background-color: #fff833;
      }

      em {
        font-size: var(--h5-fz);
      }
    }
  }

  .sec05__box3-img {
    display: block;
    margin-inline: auto;
    width: 100%;
    height: auto;
  }
}

/* ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝
既存パーツ調整
＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝*/
#faq {
}
#faq .inner {
  padding: 0;
}
#faq .sec_cta {
  margin-bottom: var(--sp-5);
}
.qa-list dt {
  padding-right: 20px;
  padding-left: 25px !important;
}
.section-ttl-box {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: var(--sp-2);
  font-size: var(--h3-fz);
  font-weight: var(--medium);
  margin-bottom: var(--sp-4);
}

.sec-ttle {
  color: var(--clr-main);
}

#faq .qa-list dd::before {
  top: 25px;
}
.qa-list .in-dl {
  padding-right: 5vw;
}

#media {
  padding-top: var(--sp-10);
}

/* .more_btn_2011 */
.more_btn_2011 {
  /* zoom: 80%; */
}
.more_btn_2011 a {
  width: fit-content;
  display: block;
  margin: 0 auto;
}

/* cta調整 */
/* .sec_cta */
.sec_cta__box-wrap {
  margin-bottom: var(--sp-10);
}
/* .sec_cta */
.sec_cta__box {
  position: relative;
  line-height: 1.5;
  padding: calc((16 / 390) * 100vw) calc((5 / 390) * 100vw)
    calc((16 / 390) * 100vw);
  background: no-repeat bottom center/contain url('../img/sp_sec_cta__box.webp');
  background-size: cover;
  display: flex;
  margin-bottom: calc((65 / 390) * 100vw);
}
/* .sec_cta__box::after {
  position: absolute;
  bottom: calc((-18 / 390) * 100vw - (25 / 390) * 100vw);
  left: calc(50% - (22 / 390) * 100vw);
  content: "";
  display: block;
  background: url("../img/icon_tr_cta.webp") no-repeat;
  background-size: contain;
  width: calc((44 / 390) * 100vw);
  height: calc((25 / 390) * 100vw);
} */

.sec_cta__box-header {
  width: 100%;
  /* margin-inline: auto; */
  margin-bottom: calc((270 / 390) * 100vw);
}
.sec_cta__box-header h4 {
  width: fit-content;
  font-size: calc((26 / 390) * 100vw);
  color: #e8e428;
  font-weight: 700;
  letter-spacing: 0.06em;
  /* margin: 0 auto; */
  padding-left: var(--sp-1);
  margin-bottom: calc((16 / 390) * 100vw);
}
.sec_cta__box-header p {
  font-size: calc((18 / 390) * 100vw);
  font-weight: 600;
  color: #ffffff;
  letter-spacing: 0.02em;
  padding-left: var(--sp-1);
  margin-bottom: var(--sp-1);
}

.sec_cta__box-header h4 small {
  font-size: calc((20 / 390) * 100vw);
  color: #ffffff;
}
.sec_cta__box-header p sup {
  font-size: 10px;
  top: 0;
}
.sec_cta__box-header small {
  position: relative;
  width: calc((350 / 390) * 100vw);
  display: block;
  font-size: 10px;
  padding-left: 22px;
  color: #ffffff;
  /* zoom: 0.6; */
  transform: scale(0.6);
  transform-origin: right top; /* 基準点の調整 */
  margin-left: auto;
}
.sec_cta__box-header small:nth-of-type(1)::before {
  position: absolute;
  left: 0;
  top: 0;
  content: '※1';
}
.sec_cta__box-header small:nth-of-type(2)::before {
  position: absolute;
  left: 0;
  top: 0;
  content: '※2';
}
