@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&display=swap");
/*--------- common --------*/
* {
  padding: 0;
  margin: 0;
  box-sizing: border-box;
}
html {
  scroll-behavior: smooth;
}
body.lp-amazon {
  position: relative;
  line-height: 1.5;
  --bright-red: #e60012;
  --yellow: #ffc312;
  --glay: #eee;
  --black: #000;
  --white: #fff;
  --fs-xl: clamp(18px, calc(-18px + 4.8vw), 30px);
  --fs-l: clamp(14px, calc(-16px + 4vw), 24px);
  --fs-m: clamp(14px, calc(-4px + 2.4vw), 20px);
  --fs-s: clamp(12px, calc(0px + 1.6vw), 16px);
  --fs-xs: clamp(11px, calc(2px + 1.2vw), 14px);
  --clip: polygon(0 30%, 100% 0, 100% 100%, 0 100%);
}
.l-wrapper {
  font-family: "Noto Sans JP", sans-serif;
}
.l-container-l {
  max-width: 1400px;
  width: 95vw;
  margin: 0 auto;
}
.l-container-m {
  max-width: 1000px;
  width: 90vw;
  margin: 0 auto;
}
.l-wrapper p {
  font-size: var(--fs-s);
}
.l-wrapper p.fsl {
  font-size: var(--fs-l);
}
.l-wrapper sup {
  font-size: var(--fs-xs);
  vertical-align: bottom;
}
.l-wrapper sub {
  font-size: var(--fs-xs);
  vertical-align: bottom;
}
.l-h3 {
  display: flex;
  justify-content: center;
  font-size: var(--fs-xl);
  font-weight: bold;
  text-align: center;
}
.l-h3 span {
  position: relative;
}
.l-h3 span::before,
.l-h3 span::after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  width: 21px;
  height: 33px;
  margin: auto 0;
  background: url(../images/box_shot2_exercise/icon_header.svg) center center no-repeat;
}
.l-h3 span::before {
  left: -40px;
}
.l-h3 span::after {
  right: -40px;
}
@media (max-width: 768px) {
  .l-h3 span::before,
  .l-h3 span::after {
    width: 3.333vw;
    height: 5.333vw;
  }
  .l-h3 span::before {
    left: -6vw;
  }
  .l-h3 span::after {
    right: -6vw;
  }
}
ul.notes {
  padding-left: 0;
}
ul.notes li {
  font-size: var(--fs-xs);
  text-indent: -1em;
  padding-left: 1em;
}
.t-c {
  text-align: center;
}
@media (min-width: 769px) {
  .sp {
    display: none;
  }
}
@media (max-width: 768px) {
  .pc {
    display: none;
  }
}

/*-- link --*/
.l-wrapper a {
  text-decoration: none !important;
}
/*-- subsc --*/
.subsc {
  position: relative;
  background: #fef1f0;
  padding-top: 152px;
}
.subsc_bg {
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: #fef1f0;
  transform: skewY(-7deg);
  transform-origin: bottom left;
}
.subsc img {
  position: absolute;
  bottom: clamp(160px, calc(136.92307692307693px + 3.076923076923077vw), 160px);
  left: 0;
  right: 0;
  margin: 0 auto;
  max-width: 1021px;
  width: 80.857vw;
  z-index: 2;
}
.subsc-btn {
  position: relative;
  padding: 50px 0 55px;
  z-index: 1;
  background: var(--bright-red);
}
.subsc-btn a {
  display: block;
  max-width: 600px;
  color: var(--black);
  font-size: var(--fs-l);
  text-align: center;
  padding: 14px 10px;
  margin: 0 auto;
  background: url(../images/box_shot2_exercise/icon_arrow_b.svg) center right 40px no-repeat, linear-gradient(to bottom, #fff367 1%, #ffbf46 98%);
  background-size: 10px auto;
  border-radius: 50px;
  box-shadow: 0 2px 10px rgba(35, 24, 21, 0.77);
  transition: all 0.5s;
}
.subsc-btn a:hover {
  opacity: 0.8;
}
.subsc-btn a span {
  font-weight: 600;
}
@media (max-width: 768px) {
  .subsc {
    padding-top: 19.333vw;
  }
  .subsc img {
    top: -17vw;
    bottom: initial;
    max-width: initial;
    width: 98.133vw;
  }
  .subsc-btn {
    padding: 5.333vw 0;
  }
  .subsc-btn a {
    max-width: initial;
    width: 93.333vw;
    line-height: 1.3;
    padding: 3.733vw 0 4.267vw;
    background-position: center right 5.867vw;
    background-size: 1.6vw auto;
  }
}

/*--------- //common --------*/
/*--------- kv --------*/
.kv {
  position: relative;
  padding-bottom: 80px;
}
.kv-logo {
  position: absolute;
  top: -26px;
  left: 0;
  max-width: 1200px;
  width: 90vw;
  max-height: 158px;
  height: 17.167vw;
  padding: clamp(40px, 2vw, 15px) 0 10px clamp(20px, 5vw, 40px);
  background: var(--bright-red);
  clip-path: polygon(0 0, 0 100%, 120% 0);
  z-index: 1;
}
.kv-logo img {
  max-width: 254px;
  width: 24.063vw;
}
.kv .kv-title {
  position: absolute;
  top: 60px;
  left: clamp(370px, calc(-36.15384615384619px + 52.88461538461539vw), 810px);
  max-width: 676px;
  width: 48.286vw;
}
.kv-img {
  max-width: 961px;
  width: 73.052vw;
}
@media (max-width: 768px) {
  .kv {
    padding-bottom: 7.2vw;
    overflow-x: hidden;
  }
  .kv-logo {
    top: 0;
    max-width: initial;
    width: 185vw;
    max-height: initial;
    height: 18.733vw;
    padding: clamp(7px, 3vw, 18px) 0 10px clamp(20px, 5vw, 40px);
    clip-path: polygon(0 0, 0 100%, 76% 0);
    z-index: 1;
  }
  .kv-logo img {
    max-width: initial;
    width: 31.733vw;
  }
  .kv .kv-title {
    top: 16.146vw;
    left: 2vw;
    right: 0;
    max-width: initial;
    width: 55vw;
    /* margin: 0 auto; */
  }
  .kv-img {
    min-width: initial;
    width: 100%;
  }
}
@media (max-width: 430px) {
  .kv .kv-title {
    top: 14.146vw;
    left: 0;
    right: 0;
    max-width: initial;
    width: 94vw;
    margin: 0 auto;
  }
}
/*--------- box --------*/
.box {
  overflow-x: hidden;
}
/*-- box-title --*/
@media (min-width: 769px) {
  .box-title {
    position: relative;
    max-width: 1920px;
    width: 100vw;
    margin: 0 auto;
  }
  .box-title h2 {
    position: relative;
    margin: 0 auto;
    z-index: 2;
  }
  .box-title::before {
    position: absolute;
    content: "";
    top: 211px;
    display: block;
    width: calc(100% - 13%);
    height: 124px;
    background: var(--yellow);
    transform: skewY(-7deg);
    transform-origin: top center;
    z-index: 1;
  }
  .box-title::after {
    position: absolute;
    content: "";
    top: 245px;
    right: 0;
    display: block;
    width: calc(100% - 13%);
    height: 278px;
    background: var(--bright-red);
    transform: skewY(-7deg);
    transform-origin: top center;
  }
  .box-title p {
    width: 100%;
    font-size: var(--fs-xs);
    text-align: right;
    margin-top: -25px;
  }
}
@media (min-width: 1301px) {
  .box-title h2 {
    width: 1019px;
  }
}
@media (max-width: 1300px) and (min-width: 769px) {
  .box-title::before {
    width: 100%;
  }
  .box-title::after {
    width: 100%;
  }
  h2 {
    width: 900px;
    padding-top: 30px;
  }
}

@media (max-width: 900px) {
  .box-title h2 {
    width: 100%;
  }
}
/*-- box-period--*/
.box-period {
  margin: 62px auto 60px;
}
.box-period .l-container-m {
  border-bottom: #aaa solid 1px;
  padding-bottom: 36px;
}
.box-period h4 {
  position: relative;
  font-size: var(--fs-xl);
  font-weight: 600;
  text-align: center;
  margin-bottom: 15px;
}
.box-period h4 span {
  position: relative;
  padding: 0 10px;
  background: var(--white);
  z-index: 1;
}
.box-period h4::after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  display: block;
  width: 100%;
  height: 1px;
  margin: auto 0;
  background: #aaa;
}
.box-period .period {
  font-size: clamp(19px, calc(-41px + 8vw), 39px);
  font-weight: 700;
  text-align: center;
  margin-bottom: 15px;
}
.box-period .period span {
  font-size: clamp(33px, calc(-66px + 13.200000000000001vw), 66px);
}
.box-period .period span.year {
  font-size: clamp(25px, calc(-50px + 10vw), 50px);
}
.box-period .notes {
  max-width: 760px;
  width: 76vw;
  margin: 0 auto;
}
.box-period .notes li {
  text-align: center;
  padding: 7px 0;
  margin-top: 24px;
  background: var(--glay);
  border-radius: 50px;
}
@media (max-width: 768px) {
  .box-period {
    margin: 8.667vw auto 7.733vw;
  }
  .box-period .l-container-m {
    padding-bottom: 8.667vw;
  }
  .box-period h4 {
    margin-bottom: 2.2vw;
  }
  .box-period .period {
    margin-bottom: 3.733vw;
  }
  .box-period .notes {
    max-width: initial;
    width: 100%;
  }
  .box-period .notes li {
    margin-top: 4.8vw;
  }
}

/*-- box-list --*/
.box-list {
  position: relative;
}
.box-list::after {
  position: absolute;
  top: 0;
  bottom: 0;
  content: "";
  display: block;
  width: 100%;
  height: 85%;
  margin: auto 0;
  background: var(--glay);
  transform: skewY(-7deg);
  transform-origin: top center;
  z-index: 1;
}
.box-list .l-container-m {
  position: relative;
  z-index: 2;
}
.box-list .box-list-img {
  margin-top: 28px;
}
@media (max-width: 768px) {
  .box-list .box-list-img {
    margin-top: 5.2vw;
  }
}
/*-- box-details --*/
.box-details {
  margin-top: 50px;
}
.box-details ol {
  margin-top: 20px;
}
.box-details ol > li {
  font-size: var(--fs-s);
  text-indent: -1em;
  padding-left: 1em;
  margin-bottom: 10px;
}
/*-- box-get --*/
.box-get {
  padding-bottom: 250px;
  margin-top: 72px;
}
.box-get ul li {
  text-align: center;
}
.box-get-list {
  display: flex;
  justify-content: space-between;
  margin-top: 24px;
}
.swiper-box {
  margin-bottom: 38px;
}
.swiper-box .swiper-slide {
  max-width: 300px;
  width: 30.6%;
}
.swiper-box .slide-01,
.swiper-box .slide-02 {
  position: relative;
}
.swiper-box .slide-01::after,
.swiper-box .slide-02::after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 45px;
  right: -30px;
  display: block;
  width: 10px;
  height: 31px;
  margin: auto 0;
  background: url(../images/box_shot2_exercise/icon_arrow_b.svg) center center no-repeat;
}
.swiper-slide > p {
  font-size: var(--fs-xs);
  text-align: center;
}
.box-get-item {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  max-width: 300px;
  width: 27.429vw;
  max-height: 300px;
  height: 27.429vw;
  padding: 20px 10px 10px;
  margin-bottom: 15px;
  background: var(--yellow);
  border-radius: 150px;
}
.slide-03 .box-get-item {
  padding: 22px 10px 10px;
}
.box-get-item > p {
  font-size: var(--fs-m);
  font-weight: 600;
  text-align: center;
  line-height: 1.2;
}
.slide-01 .box-get-item img {
  max-width: 144px;
  width: 10.286vw;
  margin-bottom: 24px;
}
.slide-02 .box-get-item img {
  max-width: 89px;
  width: 6.357vw;
  margin-bottom: 24px;
}
.slide-03 .box-get-item img {
  max-width: 163px;
  width: 11.643vw;
  margin-bottom: 11px;
}
@media (max-width: 768px) {
  .swiper-box .slide-01::after,
  .swiper-box .slide-02::after {
    right: -3vw;
  }
}
@media (max-width: 430px) {
  .box-get {
    padding-bottom: 16vw;
    margin-top: 9.467vw;
    overflow: hidden;
  }
  .box-get-list {
    margin-top: 2vw;
  }
  .swiper-box {
    width: 100vw;
    margin: 0 calc(50% - 50vw);
  }
  .swiper-box .swiper-slide {
    width: 100%;
    height: auto;
  }
  .box-get-item {
    width: 55vw;
    height: 55vw;
    padding: 20px 10px 10px;
    margin: 0 auto 15px;
  }
  .slide-01 .box-get-item img {
    width: 23.067vw;
    margin-bottom: 4.133vw;
  }
  .slide-02 .box-get-item img {
    width: 14.133vw;
    margin-bottom: 4.133vw;
  }
  .slide-03 .box-get-item img {
    width: 26vw;
    margin-bottom: 1.133vw;
  }
  .swiper-box .slide-01::after,
  .swiper-box .slide-02::after {
    bottom: 13vw;
    right: -5vw;
  }
  .box-get ul li {
    text-align: left;
  }
}
/*--------- what --------*/
.what {
  padding-top: 90px;
  background: var(--glay);
}
.what .l-h3 span::before,
.what .l-h3 span::after {
  background: url(../images/box_shot2_exercise/icon_header_w.svg) center center no-repeat;
}
.what-value-icon {
  position: absolute;
  top: -50px;
  left: 0;
  right: 0;
  max-width: 249px;
  width: 17.786vw;
  margin: 0 auto;
}
.what-value h3 {
  color: var(--bright-red);
  font-size: clamp(22px, calc(-20px + 5.6000000000000005vw), 36px);
  font-weight: 700;
  text-align: center;
}
.what-value h3 span.boder {
  border-bottom: var(--bright-red) 2px solid;
}
.what-list {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.what-item {
  background: var(--white);
  border: var(--glay) solid 1px;
}
.what-item.col-3 {
  max-width: 320px;
  width: 30%;
}
@media (max-width: 768px) {
  .what {
    padding-top: 9.867vw;
  }
  .what-value-icon {
    position: absolute;
    top: -11.667vw;
    left: 0;
    right: 0;
    max-width: initial;
    width: 44.933vw;
    margin: 0 auto 0;
  }
  .what-value-icon img {
    width: 100%;
  }
  .what-item.col-3 {
    max-width: initial;
    width: 48.5%;
  }
}
/*-- what-main --*/
.what-main {
  position: relative;
  padding-bottom: 95px;
  z-index: 2;
}
.what-copy {
  margin: 0 auto 30px;
}
.what-title {
  max-width: 592px;
  margin: 0 auto;
}
.what_question {
  max-width: 532px;
  margin: 0 auto 20px;
}
@media (max-width: 768px) {
  .what-main {
    padding-bottom: 15vw;
  }
  .what-copy {
    width: 100vw;
    margin: 0 calc(50% - 50vw) 5vw;
  }
  .what-title {
    max-width: initial;
    width: 78.933vw;
  }
  .what_question {
    max-width: initial;
    width: 70.667vw;
    margin: 0 auto 3.2vw;
  }
}
/*-- value-01 --*/
.what-value.value-01 {
  position: relative;
  margin-bottom: 150px;
}
.what-value.value-01::after {
  position: absolute;
  top: 0;
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background: var(--white);
  transform: skewY(-7deg);
  transform-origin: top center;
  z-index: 1;
}
.what-value.value-01 .l-container-l {
  position: relative;
  padding-top: 100px;
  z-index: 2;
}
.what-value.value-01 h3 {
  color: var(--black);
  font-size: clamp(25px, calc(16px + 1.2vw), 28px);
}
.what-value.value-01 h3 span.block {
  display: block;
  margin-top: -40px;
}
.what-value.value-01 span.week {
  position: absolute;
  top: -60px;
  right: 0;
  display: block;
  width: 63px;
}
.what-value.value-01 span.max {
  position: relative;
  font-size: clamp(18px, calc(-15px + 4.3999999999999995vw), 29px);
  margin-right: 10px;
}
.what-value.value-01 span.cost {
  color: var(--bright-red);
  font-size: clamp(59px, calc(-58px + 15.6vw), 98px);
}
.what-value.value-01 span.unit {
  color: var(--bright-red);
  font-size: clamp(34px, calc(-32px + 8.799999999999999vw), 56px);
  margin-left: 10px;
}
.what-value.value-01 span.ticket {
  color: var(--bright-red);
  font-size: clamp(33px, calc(-33px + 8.799999999999999vw), 55px);
}
@media (max-width: 768px) {
  .what-value.value-01 {
    margin-bottom: 15vw;
  }
  .what-value.value-01::after {
    height: 95%;
  }
  .what-value.value-01 .l-container-l {
    padding-top: 10.533vw;
  }
  .what-value.value-01 h3 span.block {
    margin-top: -2vw;
    line-height: 1.3;
  }
  .what-value.value-01 span.week {
    top: -9vw;
    width: 10.133vw;
  }
}
/*-- value-01 what-ticket  --*/
.what-ticket {
  position: relative;
  padding-bottom: 40px;
  border-bottom: var(--white) 2px solid;
  z-index: 2;
}
.what-ticket .what-list {
  margin: 34px auto 17px;
}
.what-ticket img {
  display: block;
  margin: 0 auto;
}
.what-ticket .what-item {
  padding: 35px 25px;
}
.what-ticket .item-03 {
  text-align: center;
  font-weight: 600;
}
.what-ticket .item-01 img {
  max-width: 234px;
}
.what-ticket .item-02 img {
  max-width: 230px;
}
.what-ticket .item-03 img {
  max-width: 170px;
  margin-top: 20px;
}
@media (max-width: 768px) {
  .what-ticket {
    padding-bottom: 10.133vw;
  }
  .what-ticket .what-list {
    margin: 4.267vw auto 2.933vw;
  }
  .what-ticket .what-item {
    padding: 5.867vw 3.333vw;
  }
  .what-ticket .item-03 {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    margin-top: 2.667vw;
  }
  .what-ticket .item-01 img {
    max-width: initial;
    width: 31.2vw;
  }
  .what-ticket .item-02 img {
    max-width: initial;
    width: 30.533vw;
  }
  .what-ticket .item-03 img {
    max-width: initial;
    width: 22.667vw;
    margin: 0 0 0 2vw;
  }
}
/*-- value-01 what-flow  --*/
.what-flow {
  position: relative;
  padding: 36px 0 50px;
}
.what-flow::after {
  position: absolute;
  top: -155px;
  content: "";
  display: block;
  width: 100%;
  height: 150%;
  background: var(--yellow);
  transform: skewY(-7deg);
  transform-origin: top center;
  z-index: 1;
}
.what-flow .l-container-m {
  position: relative;
  z-index: 3;
}
.what-flow-img {
  max-width: 998px;
  width: 71.286vw;
  margin: 15px auto 0;
}
@media (max-width: 768px) {
  .what-flow {
    padding: 10.133vw 0 50px;
  }
  .what-flow::after {
    top: -30vw;
    height: 115%;
  }
  .what-flow-img {
    max-width: initial;
    width: 79.333vw;
    margin: 15px auto 0;
  }
}
/*-- value-02 --*/
.what-value.value-02 {
  position: relative;
  margin-bottom: 80px;
}
.what-value.value-02::after {
  position: absolute;
  top: 0;
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background: var(--white);
  transform: skewY(-7deg);
  transform-origin: top center;
  z-index: 1;
}
.what-value.value-02 .l-container-m {
  position: relative;
  max-width: 890px;
  padding: 100px 0;
  z-index: 2;
}
.what-value.value-02 h3 {
  color: var(--black);
  font-size: clamp(22px, calc(-20px + 5.6000000000000005vw), 36px);
}
.what-value.value-02 h3 span.block {
  display: block;
  margin-top: -20px;
}
.what-value.value-02 span.max {
  font-size: clamp(19px, calc(-23px + 5.6000000000000005vw), 33px);
  margin-right: 10px;
}
.what-value.value-02 span.discount {
  color: var(--bright-red);
  font-size: clamp(73px, calc(41.58974358974359px + 4.188034188034187vw), 122px);
}
.what-value.value-02 span.off {
  color: var(--bright-red);
  font-size: clamp(50px, calc(28.846153846153847px + 2.8205128205128207vw), 83px);
}
.what-value.value-02 .what-item {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  padding: 35px 40px 39px;
  margin: 29px auto 15px;
}
.what-value.value-02 .what-item p {
  font-size: var(--fs-m);
  font-weight: 600;
  line-height: 1.3;
  text-align: center;
}
.what-value.value-02 .what-item img {
  max-width: 615px;
  margin: 0 auto;
}
@media (max-width: 768px) {
  .what-value.value-02 {
    margin-bottom: 18.133vw;
  }
  .what-value.value-02 .l-container-m {
    max-width: initial;
    padding: 12.4vw 0;
  }
  .what-value.value-02 h3 {
    line-height: 1.3;
  }
  .what-value.value-02 h3 span.block {
    margin-top: -2vw;
  }
  .what-value.value-02 .what-item {
    padding: 5.6vw 4vw 5.2vw;
    margin: 6.133vw auto 2.667vw;
  }
  .what-value.value-02 .what-item p {
    width: 100%;
    margin-bottom: 4vw;
  }
  .what-value.value-02 .what-item img {
    max-width: initial;
    width: 84.533vw;
  }
}

/*-- value-03 --*/
.what-value.value-03 {
  position: relative;
}
.what-value.value-03::after {
  position: absolute;
  top: 0;
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background: var(--white);
  transform: skewY(-7deg);
  transform-origin: top center;
  z-index: 1;
}
.what-value.value-03 .l-container-m {
  position: relative;
  padding: 100px 0;
  z-index: 2;
}
.what-value.value-03 .what-list {
  margin-top: 26px;
}
.what-value.value-03 .what-item {
  padding: 35px 25px;
}
.what-value.value-03 .what-item img {
  display: block;
  margin: 0 auto;
}
.what-value.value-03 .item-01 img {
  max-width: 239px;
}
.what-value.value-03 .item-02 img {
  max-width: 240px;
}
.what-value.value-03 .item-03 img {
  max-width: 178px;
}
@media (max-width: 768px) {
  .what-value.value-03 {
    margin-bottom: 18.133vw;
  }
  .what-value.value-03 .l-container-m {
    padding: 12.4vw 0;
  }
  .what-value.value-03 .what-list {
    margin-top: 26px;
  }
  .what-value.value-03 .what-item {
    width: 100%;
    padding: 5.6vw 4vw 5.2vw;
  }
  .what-value.value-03 .item-02 {
    margin: 4vw 0;
  }
  .what-value.value-03 .what-item img {
    margin: 0 auto 0 0;
  }
  .what-value.value-03 .item-01 img {
    max-width: initial;
    width: 82.4vw;
  }
  .what-value.value-03 .item-02 img {
    max-width: initial;
    width: 82.4vw;
  }
  .what-value.value-03 .item-03 img {
    max-width: initial;
    width: 69.2vw;
  }
}
/*-- value-04 --*/
.what-value.value-04 {
  padding-top: 40px;
  margin-bottom: 250px;
}
.what-value.value-04 .what-value-icon {
  position: static;
}
.what-value.value-04 h3 span {
  display: block;
  color: var(--black);
  font-size: clamp(21px, calc(0px + 2.8000000000000003vw), 28px);
}
.what-value.value-04 .what-app {
  max-width: 121px;
  margin: 34px auto 0;
}
@media (max-width: 768px) {
  .what-value.value-04 {
    position: relative;
    padding-top: 0;
    margin-bottom: 20.533vw;
  }
  .what-value.value-04 .l-container-m {
    position: relative;
    padding: 12.4vw 0;
  }
  .what-value.value-04 .what-value-icon {
    position: absolute;
    top: -10.667vw;
    left: 0;
    right: 0;
  }
  .what-value.value-04::after {
    position: absolute;
    top: 0;
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    background: var(--white);
    transform: skewY(-7deg);
    transform-origin: top center;
    z-index: 1;
  }
  .what-value.value-04 .l-container-m {
    position: relative;
    z-index: 2;
  }
  .what-value.value-04 .what-app {
    max-width: initial;
    width: 24vw;
    margin: 6.933vw auto 0;
  }
  .what-value.value-04 .what-app img {
    width: 100%;
  }
}

/*--------- program --------*/
.program {
  padding-top: 55px;
  padding-bottom: 75px;
}
.program h3 {
  max-width: 879px;
  margin: 0 auto;
}
.program ul.notes li {
  text-indent: -1.8em;
  padding-left: 1.8em;
}
.program-list {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin: 27px auto 15px;
}
.program-ltem {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  max-width: 280px;
  width: 30%;
  padding: 40px 23px;
  background: var(--white);
  border: var(--glay) solid 1px;
}
.program-ltem.item-03 {
  max-width: 400px;
  width: 35%;
}
.program-ltem img {
  display: block;
  max-width: 200px;
  margin: 37px auto 0;
}
.program-ltem.item-03 img {
  max-width: 338px;
}
.program-ltem p {
  font-size: clamp(13px, calc(7.230769230769231px + 0.7692307692307693vw), 22px);
  font-weight: 600;
  line-height: 1.3;
}
@media (max-width: 768px) {
  .program {
    padding-top: 10vw;
    padding-bottom: 8vw;
  }
  .program h3 {
    max-width: initial;
    width: 92vw;
  }
  .program-list {
    margin: 2.267vw auto 4.133vw;
  }
  .program-ltem {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    max-width: initial;
    width: 48.5%;
    padding: 6.267vw 2.933vw;
  }
  .program-ltem.item-03 {
    max-width: initial;
    width: 100%;
    margin-top: 2.8vw;
  }
  .program-ltem img {
    max-width: initial;
    width: 32vw;
    margin: 5.2vw auto 0;
  }
  .program-ltem.item-03 img {
    max-width: initial;
    width: 53.733vw;
  }
}
/*--------- voice --------*/
.voice {
  position: relative;
}
.voice .l-container-l {
  padding: 50px 0 240px;
}
.voice::after {
  position: absolute;
  top: 0;
  content: "";
  display: block;
  width: 100%;
  height: 95%;
  background: #fff6da;
  transform: skewY(-7deg);
  transform-origin: top center;
  z-index: -1;
}
.voice h3 {
  max-width: 904px;
  margin: 0 auto -20px;
}
.voice .t-c {
  color: var(--bright-red);
  font-size: var(--fs-l);
  font-weight: 700;
  margin-bottom: 15px;
}
.voice ul.notes {
  margin-left: 175px;
  margin-top: 35px;
}
.voice-list {
  max-width: 1210px;
  display: flex;
  justify-content: space-between;
  margin: 0 auto;
}
.voice-item {
  display: flex;
  flex-direction: column;
  max-width: 385px;
  width: 30.6%;
}
@media (min-width: 769px) {
  .voice-item.item-01 {
    margin-top: -5px;
  }
  .voice-item.item-03 {
    margin-top: -60px;
  }
}
.voice-item img {
  max-width: 343px;
  width: 24.5vw;
}
@media (min-width: 769px) {
  .voice-item.item-02 img {
    margin: 0 auto;
  }
  .voice-item.item-03 img {
    margin: 0 0 0 auto;
  }
}
.voice-item .voice-text {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 275px;
  height: 217px;
  background: var(--bright-red);
  transform: skewY(-7deg);
  transform-origin: top center;
}
.voice-item p {
  color: var(--white);
  font-size: var(--fs-s);
  text-align: center;
  transform: skewY(7deg);
}
@media (min-width: 769px) {
  .voice-item.item-01 .voice-text {
    margin: 9px 0 0 auto;
  }
  .voice-item.item-02 .voice-text {
    margin: 0 auto 25px;
  }
  .voice-item.item-03 .voice-text {
    margin: 25px auto 0 0;
  }
}
@media (max-width: 768px) {
  .voice {
    overflow-x: hidden;
  }
  .voice .l-container-l {
    padding: 8.267vw 0 18.133vw;
  }
  .voice h3 {
    max-width: initial;
    width: 77.6vw;
    margin: 0 auto 4.533vw;
  }
  .voice .t-c {
    margin-bottom: 4vw;
  }
  .voice ul.notes {
    margin-left: 0;
    margin-top: 3.467vw;
  }
  .voice-list {
    max-width: initial;
    flex-direction: column;
    justify-content: center;
    margin: 0 auto;
  }
  .voice-item {
    display: flex;
    justify-content: space-between;
    flex-direction: row-reverse;
    align-items: flex-end;
    max-width: initial;
    width: 100%;
  }
  .voice-item .voice-text {
    width: 44.933vw;
    height: auto;
    padding: 5vw 0;
  }
  .voice-item.item-02 {
    align-items: flex-start;
    margin: 3.733vw 0 0;
  }
  .voice-item.item-03 {
    align-items: center;
  }
  .voice-item img {
    max-width: initial;
    width: 45.733vw;
  }
}
@media (max-width: 430px) {
  .voice ul.notes {
    margin-left: 0;
    margin-top: 7.467vw;
  }
  .voice-item .voice-text {
    width: 54.933vw;
    padding: 7vw 0;
  }
  .voice-item.item-02 {
    margin: 4.733vw 0 12.733vw;
  }
  .voice-item.item-01,
  .voice-item.item-03 {
    align-items: flex-end;
  }
  .voice-item.item-01 img,
  .voice-item.item-03 img {
    margin-right: -9vw;
  }
  .voice-item.item-02 img {
    margin-left: -9vw;
  }
}

/*--------- conditions --------*/
.procedure {
  padding-top: 89px;
  padding-bottom: 70px;
  background: var(--white);
}
.procedure ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  max-width: 1010px;
  margin: 36px auto 0;
}
.procedure ul li {
  max-width: 310px;
  width: 30.6%;
}
.procedure ul li.slide-01,
.procedure ul li.slide-02 {
  position: relative;
}
.procedure ul li.slide-01::after,
.procedure ul li.slide-02::after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  right: -30px;
  display: block;
  width: 10px;
  height: 31px;
  margin: auto 0;
  background: url(../images/box_shot2_exercise/icon_arrow_b.svg) center center no-repeat;
}
@media (max-width: 768px) {
  .procedure ul li.slide-01::after,
  .procedure ul li.slide-02::after {
    right: -3vw;
  }
}
@media (max-width: 430px) {
  .procedure {
    padding-top: 11.2vw;
    padding-bottom: 11.2vw;
  }
  .procedure .swiper {
    width: 100vw;
    margin: 0 calc(50% - 50vw);
  }
  .procedure .swiper-wrapper {
    flex-wrap: nowrap;
    max-width: initial;
    width: 100%;
    margin: 4.267vw auto 0;
  }
  .procedure .swiper-slide {
    width: 100%;
    height: 100%;
  }
  .procedure .swiper-slide img {
    width: 100%;
  }
  .procedure ul li.slide-01::after,
  .procedure ul li.slide-02::after {
    right: -5vw;
  }
}

/*--------- program_terms --------*/
.read {
  padding-bottom: 75px;
}
.read h3 {
  margin-bottom: 31px;
}
.read ul {
  margin-bottom: 37px;
}
.read ul:last-child {
  margin-bottom: 0;
}
.read ul li {
  font-size: var(--fs-xs);
  line-height: 1.8;
  text-indent: -1em;
  padding-left: 1em;
}
.read-terms,
.read-note {
  padding: 40px 55px;
  margin-top: 13px;
  background: var(--glay);
  border-radius: 10px;
}
.read-note h4 {
  font-weight: 700;
}
.read-terms {
  margin-bottom: 42px;
}
.read ul li a {
  color: #000;
  border-bottom: #000 solid 1px;
  transition: all 0.5s;
}
.read ul li a:hover {
  color: var(--bright-red);
  border-bottom: var(--bright-red) solid 1px;
}
@media (max-width: 768px) {
  .read {
    padding-bottom: 8.8vw;
  }
  .read h3 {
    margin-bottom: 4.4vw;
  }
  .read ul {
    margin-bottom: 7.2vw;
  }
  .read-terms,
  .read-note {
    padding: 6.667vw;
    margin-top: 3.2vw;
  }
  .read-terms {
    margin-bottom: 6vw;
  }
}

/*--------- conditions --------*/
.conditions {
  padding-bottom: 58px;
}
.conditions-list {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-top: 32px;
}
.conditions-item {
  width: 30%;
  margin-bottom: 20px;
}
.conditions-item a {
  display: flex;
  justify-content: center;
  align-items: center;
  height: 70px;
  font-size: var(--fs-s);
  font-weight: bold;
  line-height: 1.3;
  text-align: center;
  padding: 11px;
  background: var(--white) url(../images/box_shot2_exercise/icon_arrow_r.svg) center right 21px no-repeat;
  background-size: 5px auto;
  border: var(--bright-red) solid 1px;
  border-radius: 36px;
  transition: all 0.5s;
}
.conditions-item a:hover {
  color: var(--white);
  background: var(--bright-red) url(../images/box_shot2_exercise/icon_arrow_w.svg) center right 21px no-repeat;
  background-size: 5px auto;
}
@media (max-width: 768px) {
  .conditions {
    padding-bottom: 16.267vw;
  }
  .conditions-list {
    margin-top: 6vw;
  }
  .conditions-item {
    width: 100%;
    margin-bottom: 3.733vw;
  }
  .conditions-item a {
    padding: 11px;
    height: 14vw;
  }
}

/*--------- lp-btn-top --------*/
.lp-btn-top {
  position: absolute;
  bottom: 80px;
  right: 20%;
  width: 60px;
  height: 60px;
  transition: all 0.5s;
}
.lp-btn-top:hover {
  opacity: 0.5;
}
@media (max-width: 768px) {
  .lp-btn-top {
    bottom: 11.067vw;
    right: 3.333vw;
    width: 10.667vw;
    height: 10.667vw;
  }
}

/*--------- lp-footer --------*/
#footer {
  display: none !important;
}
.lp-footer {
  position: relative;
  padding: 27px 0;
  color: var(--white);
  background-color: var(--bright-red);
}
.lp-footer .copy-right {
  font-size: clamp(10px, calc(7.435897435897436px + 0.3418803418803419vw), 14px);
  text-align: center;
}
@media (max-width: 768px) {
  .lp-footer {
    padding: 2.8vw 0;
  }
}
