@charset "UTF-8";

@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500;700&display=swap");

/*レイアウト（PC）*/

.c-present-block .l-inner {
  width: 90.233%;
  max-width: 1000px;
  margin: 0 auto;
}

.c-present-block .c-present__sec {
  font-family: "Noto Sans JP", serif;
  letter-spacing: .06em;
}

.c-present-block .m-btn-01 {
  display: block;
  max-width: fit-content;
  margin: 4px auto 0;
  text-align: center;
  transition: opacity .3s ease;
}

.c-present-block .m-btn-01:hover {
  opacity: .8;
}

/*モジュール（PC）*/
.c-present-block .m-heading-01 {
  margin-bottom: 36px;
  color: #333;
  text-align: center;
}

.c-present-block .m-heading-01__large {
  font-size: clamp(38px, 4.94vw, 45px);
  font-weight: 500;
  text-align: center;
}

.c-present-block .m-heading-01__small {
  color: #189c88;
  font-size: clamp(14px, 1.8vw, 16px);
  letter-spacing: .1em;
}

.c-present-block .benefits__txt {
  text-align: center;
  margin-bottom: 6px;
  display: block;
}

.c-present-block .benefits__txt img {
  max-width: 100%;
  width: auto;
  height: auto;
  backface-visibility: hidden;
}

/*キャンペーン概要(PC)*/
.c-present-block .summary {
  margin: 75px 0 0;
}

.c-present-block .summary .m-btn-01 {
  margin-bottom: 50px;
}

.c-present-block .summary__txt {
  font-size: clamp(14px, 1.78vw, 16px);
  line-height: 2;
  letter-spacing: .12em;
}

.c-present-block .summary__txt .is-bold {
  font-weight: 700;
}

.c-present-block .summary__txt li {
  font-size: clamp(14px, 1.78vw, 16px);
  line-height: 2;
}

.c-present-block .summary__indent li {
  padding-left: 2em;
  text-indent: -1em;
}

.c-present-block .summary__desc:not(:last-child) {
  margin-bottom: 30px;
}

.c-present-block .summary__note a, .summary__txt a {
  border-bottom: 1px solid #333;
  color: #333;
  padding-bottom: 0;
}

.c-present-block .summary__txt a.is-color01 {
  border-bottom: 1px solid #189c88;
  color: #189c88;
}

.c-present-block .summary__list-wrap {
  margin-top: 78px;
}

.c-present-block .summary__list {
  margin-bottom: 85px;
}

.c-present-block .summary__lead {
  margin-bottom: 12px;
  color: #189c88;
  font-size: clamp(26px, 3.33vw, 30px);
}

.c-present-block .is-left .summary__txt {
  margin-bottom: 2em;
  text-align: left;
}

.c-present-block .summary__note ul {
  margin-left: 4px;
}

.c-present-block .summary__note li {
  padding-left: calc(19 / 900 * 100%);
  font-size: clamp(14px, 1.78vw, 16px);
  line-height: 2;
}

/*ここからスマホ*/
@media screen and (max-width: 767px) {

  /*レイアウト（SP）*/
  .c-present-block .l-inner {
    width: 92%;
    max-width: 87vw;
  }

  /*モジュール（SP）*/
  .c-present-block .m-heading-01 {
    margin-bottom: calc(66 / 750 * 100%);
  }

  .c-present-block .m-heading-01__large {
    font-size: calc(50 / 750 * 100vw);
  }

  .c-present-block .m-heading-01__small {
    font-size: calc(24 / 750 * 100vw);
  }

  .c-present-block .m-btn-01 {
    display: block;
    width: 96.5%;
    max-width: none;
    margin: 6px 0 0 2%;
  }
  
  .c-present-block .benefits__txt {
    width: calc(523 / 750 * 100%);
    max-width: none;
    margin: 0 auto;
  }

  /*キャンペーン概要(SP)*/
  .c-present-block .summary {
    margin: calc(80 / 750 * 100%) 0 0;
  }

  .c-present-block .summary__txt {
    font-size: calc(26 / 750 * 100vw);
    line-height: 1.75;
    letter-spacing: .025em;
  }

  .c-present-block .summary__txt li {
    font-size: calc(26 / 750 * 100vw);
    line-height: 1.75;
  }

  .c-present-block .summary__indent li {
    padding-left: 0;
    text-indent: 0;
  }

  .c-present-block .summary__list-wrap {
    margin-top: calc(100 / 750 * 100%);
  }

  .c-present-block .summary__list {
    margin-bottom: calc(100 / 750 * 100%);
  }

  .c-present-block .summary__lead {
    margin-bottom: calc(40 / 750 * 100%);
    font-size: calc(45 / 750 * 100vw);
    line-height: 1;
  }

  .c-present-block .is-left .summary__txt {
    margin-bottom: calc(50 / 750 * 100%);

    line-break: anywhere;
  }

  .c-present-block .summary__note .summary__indent {
    text-indent: 0;
  }

  .c-present-block .summary__note ul {
    margin-left: 0;
  }

  .c-present-block .summary__note li {
    margin-left: 1em;
    padding-left: 1em;
    font-size: calc(24 / 750 * 100vw);
    text-indent: -1em;
  }

}