/* common
---------------------------------------------------------------------------- */
.p-7strength-inner {
  counter-reset: num;
}

.p-7strength-sec {
  padding: 6rem 10rem;
  position: relative;
}
.p-7strength-sec:not(:last-child) {
  margin-bottom: 10rem;
}
.p-7strength-sec::before {
  position: absolute;
  top: 0;
  left: 50%;
  transform: translate(-50%, -50%);
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  font-size: 4.3rem;
  line-height: 1;
  font-weight: 700;
  font-family: "Montserrat";
  width: 8rem;
  height: auto;
  aspect-ratio: 80/76;
  counter-increment: num;
  content: counter(num);
  mask-image: url("../../images/common/img_mask-02.svg");
  mask-size: contain;
  mask-repeat: no-repeat;
}
.p-7strength-sec:nth-child(odd) {
  background: #E4F8FC;
}
.p-7strength-sec:nth-child(odd)::before {
  background: rgb(81, 200, 213);
  background: linear-gradient(130deg, rgb(81, 200, 213) 0%, rgb(154, 229, 238) 100%);
}
.p-7strength-sec:nth-child(odd) .p-7strength-subttl {
  color: #13b8c9;
}
.p-7strength-sec:nth-child(odd) .p-7strength-subttl::before, .p-7strength-sec:nth-child(odd) .p-7strength-subttl::after {
  background: url(../../images/7strength/img_ttl-deco-01_lb.svg) no-repeat center/contain;
}
.p-7strength-sec:nth-child(odd) .p-7strength-ttl::before {
  background: url(../../images/7strength/img_ttl-deco-02_lb.svg) repeat-x center left/auto;
}
.p-7strength-sec:nth-child(odd) .p-7strength-lead span {
  color: #13b8c9;
}
.p-7strength-sec:nth-child(even) {
  background: #FFEEF4;
}
.p-7strength-sec:nth-child(even)::before {
  background: #FB73A2;
  background: linear-gradient(130deg, #FB73A2 0%, rgb(255, 188, 211) 100%);
}
.p-7strength-sec:nth-child(even) .p-7strength-subttl {
  color: #FB73A2;
}
.p-7strength-sec:nth-child(even) .p-7strength-subttl::before, .p-7strength-sec:nth-child(even) .p-7strength-subttl::after {
  background: url(../../images/7strength/img_ttl-deco-01_pk.svg) no-repeat center/contain;
}
.p-7strength-sec:nth-child(even) .p-7strength-ttl::before {
  background: url(../../images/7strength/img_ttl-deco-02_pk.svg) repeat-x center left/auto;
}
.p-7strength-sec:nth-child(even) .p-7strength-lead span {
  color: #FB73A2;
}

.p-7strength-subttl {
  font-size: 2.6rem;
  line-height: 1.5;
  letter-spacing: 0.06em;
  font-weight: 700;
  width: fit-content;
  padding: 0 3.2rem;
  margin: 0 auto 0.5rem;
  position: relative;
}
.p-7strength-subttl::before, .p-7strength-subttl::after {
  position: absolute;
  content: "";
  top: 50%;
  transform: translateY(-50%);
  width: 2rem;
  height: auto;
  aspect-ratio: 20/24;
}
.p-7strength-subttl::before {
  left: 0;
}
.p-7strength-subttl::after {
  right: 0;
  transform: translateY(-50%) scale(-1, 1);
}

.p-7strength-ttl {
  font-size: 3.5rem;
  line-height: 1.4857142857;
  letter-spacing: 0.06em;
  font-weight: 700;
  width: fit-content;
  padding: 0.1rem 1rem;
  margin: 0 auto 3.5rem;
  background-color: #fff;
  position: relative;
}
.p-7strength-ttl::before {
  position: absolute;
  content: "";
  bottom: 0;
  left: 0;
  transform: translateY(100%);
  width: 100%;
  height: 0.8rem;
}

.p-7strength-lead {
  text-align: center;
  font-weight: 700;
  margin-bottom: 2.5rem;
}

@media screen and (max-width: 767px) {
  .p-7strength-sec {
    padding: 10.6666666667vw 5.3333333333vw 8vw;
  }
  .p-7strength-sec:not(:last-child) {
    margin-bottom: 14.6666666667vw;
  }
  .p-7strength-sec::before {
    font-size: 8vw;
    width: 14.4vw;
  }
  .p-7strength-subttl {
    font-size: 4.8vw;
    text-align: center;
    padding: 0 9.3333333333vw;
    margin: 0 auto 2.6666666667vw;
  }
  .p-7strength-subttl::before, .p-7strength-subttl::after {
    top: 55%;
    width: 6.1333333333vw;
  }
  .p-7strength-ttl {
    font-size: 5.8666666667vw;
    text-align: center;
    padding: 1.3333333333vw 1.8666666667vw;
    margin: 0 auto 5.3333333333vw;
  }
  .p-7strength-ttl::before {
    height: 1.6vw;
  }
  .p-7strength-lead {
    text-align: left;
    margin-bottom: 6.6666666667vw;
  }
}
/* ancour
---------------------------------------------------------------------------- */
.p-7strength-anchour-list {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 5.5rem 6rem;
  counter-reset: anchour;
  margin: 2rem 0 16.5rem;
}

.p-7strength-anchour-item {
  position: relative;
}
.p-7strength-anchour-item::before, .p-7strength-anchour-item::after {
  position: absolute;
  left: 50%;
  width: 4.3rem;
  height: 4.3rem;
  border-radius: 9999px;
  pointer-events: none;
}
.p-7strength-anchour-item::before {
  top: 0;
  transform: translate(-50%, -50%);
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  font-size: 2.6rem;
  line-height: 1;
  font-family: "Montserrat";
  counter-increment: anchour;
  content: counter(anchour);
  z-index: 1;
}
.p-7strength-anchour-item::after {
  content: "";
  bottom: -1rem;
  transform: translate(-50%, 50%);
  background: url(../../images/common/icn_cicrcle-triangle-b_nv_wh.svg) no-repeat center/contain;
}
.p-7strength-anchour-item:nth-child(odd)::before,
.p-7strength-anchour-item:nth-child(odd) .p-7strength-anchour-img::before,
.p-7strength-anchour-item:nth-child(odd) .p-7strength-anchour-img::after,
.p-7strength-anchour-item:nth-child(odd) .p-7strength-anchour-txt span {
  background: #51C8D5;
}
.p-7strength-anchour-item:nth-child(odd) .p-7strength-anchour-img::before {
  background: repeating-linear-gradient(130deg, transparent, transparent 1.5rem, rgba(169, 232, 239, 0.5) 1.5rem, rgba(169, 232, 239, 0.5) 2.5rem), linear-gradient(120deg, #51c8d5 0%, #9ae5ee 100%);
}
.p-7strength-anchour-item:nth-child(even)::before,
.p-7strength-anchour-item:nth-child(even) .p-7strength-anchour-img::before,
.p-7strength-anchour-item:nth-child(even) .p-7strength-anchour-img::after,
.p-7strength-anchour-item:nth-child(even) .p-7strength-anchour-txt span {
  background: #FB73A2;
}
.p-7strength-anchour-item:nth-child(even) .p-7strength-anchour-img::before {
  background: repeating-linear-gradient(130deg, transparent, transparent 1.5rem, rgba(254, 195, 215, 0.5) 1.5rem, rgba(254, 195, 215, 0.5) 2.5rem), linear-gradient(120deg, #FB73A2 0%, rgb(255, 185, 209) 100%);
}
.p-7strength-anchour-item:nth-child(1) .p-7strength-anchour-txt {
  bottom: 3rem;
  right: -1rem;
  text-align: right;
}
.p-7strength-anchour-item:nth-child(2) .p-7strength-anchour-txt {
  bottom: 3rem;
  left: 50%;
  transform: translateX(-50%);
  text-align: center;
}
.p-7strength-anchour-item:nth-child(3) .p-7strength-anchour-txt {
  top: 4.5rem;
  left: -1rem;
}
.p-7strength-anchour-item:nth-child(4) .p-7strength-anchour-txt, .p-7strength-anchour-item:nth-child(7) .p-7strength-anchour-txt {
  bottom: 5rem;
  left: 50%;
  transform: translateX(-50%);
}
.p-7strength-anchour-item:nth-child(5) .p-7strength-anchour-txt, .p-7strength-anchour-item:nth-child(6) .p-7strength-anchour-txt {
  top: 4rem;
  left: 50%;
  transform: translateX(-50%);
  text-align: center;
}
.p-7strength-anchour-item a:hover .p-7strength-anchour-img img {
  scale: 1.1;
}
.p-7strength-anchour-item a:hover .p-7strength-anchour-img::after {
  opacity: 0.4;
}

.p-7strength-anchour-img {
  width: 25rem;
  height: auto;
  aspect-ratio: 1/1;
  position: relative;
}
.p-7strength-anchour-img::before, .p-7strength-anchour-img::after {
  position: absolute;
  content: "";
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  height: auto;
  aspect-ratio: 1/1;
  mask-image: url("../../images/common/img_mask-01.svg");
  mask-size: contain;
  mask-repeat: no-repeat;
}
.p-7strength-anchour-img::before {
  width: calc(100% + 2rem);
}
.p-7strength-anchour-img::after {
  width: 100%;
}

.p-7strength-anchour-img-inner {
  overflow: hidden;
  mask-size: contain;
  mask-image: url("../../images/common/img_mask-01.svg");
  mask-repeat: no-repeat;
}
.p-7strength-anchour-img-inner img {
  transition: all 0.3s;
}

.p-7strength-anchour-txt {
  position: absolute;
  color: #fff;
  font-size: 2.2rem;
  line-height: 1.6818181818;
  letter-spacing: 0.06em;
  font-weight: 700;
  white-space: nowrap;
}
.p-7strength-anchour-txt span {
  display: inline;
  padding: 0 0.4rem;
  box-decoration-break: clone;
  -webkit-box-decoration-break: clone;
}

@media screen and (max-width: 767px) {
  .p-7strength-anchour-list {
    gap: 20vw 8.8vw;
    margin: 4vw 0 41.3333333333vw;
  }
  .p-7strength-anchour-item::before {
    width: 8.5333333333vw;
    height: 8.5333333333vw;
    font-size: 5.3333333333vw;
  }
  .p-7strength-anchour-item::after {
    width: 6.4vw;
    height: 6.4vw;
    bottom: -8vw;
  }
  .p-7strength-anchour-item:nth-child(n+1) .p-7strength-anchour-txt {
    top: auto;
    right: auto;
    bottom: -4vw;
    left: 50%;
    transform: translateX(-50%);
    text-align: center;
  }
  .p-7strength-anchour-img {
    width: 38.6666666667vw;
  }
  .p-7strength-anchour-img::before {
    width: calc(100% + 3.2vw);
  }
  .p-7strength-anchour-img img {
    width: 100%;
    max-width: none;
  }
  .p-7strength-anchour-txt {
    font-size: 4.2666666667vw;
    line-height: 1.75;
  }
  .p-7strength-anchour-txt span {
    padding: 0 1.0666666667vw 0.2666666667vw;
  }
}
/* 01
---------------------------------------------------------------------------- */
.p-7strength01-box02 {
  padding: 5rem 20.5rem;
  margin-bottom: 3rem;
}

.p-7strength01-box02-txt {
  font-weight: 700;
  text-align: center;
  width: fit-content;
  position: relative;
}
.p-7strength01-box02-txt::before, .p-7strength01-box02-txt::after {
  position: absolute;
  content: "";
  width: 1.6rem;
  height: auto;
  aspect-ratio: 16/29;
}
.p-7strength01-box02-txt::before {
  background-color: #FFD8E6;
}
.p-7strength01-box02-txt::after {
  background-color: #fff;
}
.p-7strength01-box02-txt:nth-child(1) {
  margin-bottom: 2rem;
  margin-left: 2.5rem;
}
.p-7strength01-box02-txt:nth-child(1)::before, .p-7strength01-box02-txt:nth-child(1)::after {
  top: 50%;
  transform: translate(-100%, -50%);
  clip-path: polygon(100% 0, 0 50%, 100% 100%);
}
.p-7strength01-box02-txt:nth-child(1)::before {
  left: 0;
}
.p-7strength01-box02-txt:nth-child(1)::after {
  left: 0.7rem;
}
.p-7strength01-box02-txt:nth-child(1) .p-7strength01-box02-txt-inner::before {
  top: -0.5rem;
  left: 1rem;
  transform: translateX(-100%);
  width: 16.9rem;
  aspect-ratio: 169/187;
  background: url(../../images/7strength/img_sec01-deco01.png) no-repeat center/contain;
}
.p-7strength01-box02-txt:nth-child(1) .p-7strength01-box02-txt-inner::after {
  top: 50%;
  right: 1rem;
  transform: translate(100%, -50%);
  width: 11.8rem;
  aspect-ratio: 118/63;
  background: url(../../images/7strength/img_sec01-deco02.png) no-repeat center/contain;
}
.p-7strength01-box02-txt:nth-child(2) {
  width: 50rem;
  margin: 0 0.5rem 3rem auto;
}
.p-7strength01-box02-txt:nth-child(2)::before, .p-7strength01-box02-txt:nth-child(2)::after {
  top: 5rem;
  transform: translate(100%, -50%);
  clip-path: polygon(0 0, 100% 50%, 0 100%);
}
.p-7strength01-box02-txt:nth-child(2)::before {
  right: 0;
}
.p-7strength01-box02-txt:nth-child(2)::after {
  right: 0.7rem;
}
.p-7strength01-box02-txt:nth-child(2) .p-7strength01-box02-txt-inner::before {
  top: 3.5rem;
  left: 5rem;
  transform: translateX(-100%);
  width: 8rem;
  aspect-ratio: 80/75;
  background: url(../../images/7strength/img_sec01-deco03.png) no-repeat center/contain;
}
.p-7strength01-box02-txt:nth-child(2) .p-7strength01-box02-txt-inner::after {
  top: -5rem;
  right: -1.5rem;
  transform: translateX(100%);
  width: 14.5rem;
  aspect-ratio: 145/196;
  background: url(../../images/7strength/img_sec01-deco04.png) no-repeat center/contain;
}

.p-7strength01-box02-txt-inner {
  padding: 1.5rem 2rem;
  background-color: #fff;
  border: 0.4rem solid #FFD8E6;
  border-radius: 1rem;
  position: relative;
}
.p-7strength01-box02-txt-inner::before, .p-7strength01-box02-txt-inner::after {
  position: absolute;
  content: "";
  height: auto;
}

.p-7strength01-box {
  text-align: center;
  padding: 4rem;
  background: url(../../images/7strength/bg_sec01_pc.png) no-repeat center top/cover;
}

.p-7strength-flow {
  display: grid;
  grid-template-rows: repeat(5, 6.1rem);
  gap: 4rem;
  text-align: left;
  max-width: 84.5rem;
  margin: 8.5rem auto 7rem;
}

.p-7strength-flow-item {
  display: flex;
  align-items: center;
  justify-content: start;
  gap: 2rem;
  position: relative;
}
.p-7strength-flow-item:not(:last-child)::before {
  position: absolute;
  content: "";
  bottom: -1rem;
  left: 50%;
  transform: translate(-50%, 100%);
  width: 0.3rem;
  height: 1.8rem;
  border-radius: 9999px;
  background-color: #1A3667;
}
.p-7strength-flow-item:nth-child(even) {
  flex-direction: row-reverse;
  justify-content: end;
}
.p-7strength-flow-item:nth-child(even) .p-7strength-flow-item-txt {
  flex-direction: row-reverse;
}
.p-7strength-flow-item:nth-child(even) .p-7strength-flow-item-txt::before, .p-7strength-flow-item:nth-child(even) .p-7strength-flow-item-txt::after {
  right: auto;
  transform: translate(-100%, -50%) scale(-1, 1);
}
.p-7strength-flow-item:nth-child(even) .p-7strength-flow-item-txt::before {
  left: 0;
}
.p-7strength-flow-item:nth-child(even) .p-7strength-flow-item-txt::after {
  left: 1px;
}
.p-7strength-flow-item:nth-child(even) .p-7strength-flow-item-txt img {
  margin-left: 0;
  margin-right: -6rem;
}

.p-7strength-flow-clock {
  width: 6.6rem;
  height: auto;
  aspect-ratio: 66/62;
  margin: auto;
}

.p-7strength-flow-item-txt {
  display: flex;
  align-items: center;
  gap: 1.7rem;
  font-size: 1.5rem;
  line-height: 1.5333333333;
  letter-spacing: 0.06em;
  font-weight: 400;
  width: 37rem;
  min-width: 37rem;
  padding: 2rem;
  background-color: #fff;
  border: 0.4rem solid #DEDEFB;
  border-radius: 1rem;
  position: absolute;
}
.p-7strength-flow-item-txt::before, .p-7strength-flow-item-txt::after {
  position: absolute;
  content: "";
  top: 50%;
  transform: translate(100%, -50%);
  height: auto;
  aspect-ratio: 17/28;
  clip-path: polygon(100% 50%, 0 0, 0 100%);
}
.p-7strength-flow-item-txt::before {
  right: 0;
  width: 1.7rem;
  background-color: #DEDEFB;
}
.p-7strength-flow-item-txt::after {
  right: 1px;
  width: 1.2rem;
  background-color: #fff;
}
.p-7strength-flow-item-txt img {
  width: 16.7rem;
  margin-left: -6rem;
}

.p-7strength-flow-item-meta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 19.5rem;
  margin-bottom: 0.5rem;
}

.p-7strength-flow-item-time {
  color: #13b8c9;
  font-size: 2.4rem;
  line-height: 1;
  letter-spacing: 0.06em;
  font-weight: 700;
  font-family: "Montserrat";
}

.p-7strength-flow-item-schedule {
  color: #fff;
  font-size: 1.7rem;
  line-height: 1;
  letter-spacing: 0.06em;
  font-weight: 700;
  text-align: center;
  width: 10rem;
  padding: 0.5rem 0;
  background-color: #FB73A2;
}

.p-7strength01-item-wrap {
  display: flex;
  justify-content: center;
  gap: 3rem;
  margin: 11rem auto 0;
}

.p-7strength01-item {
  font-size: 1.6rem;
  line-height: 1.8125;
  letter-spacing: 0.06em;
  font-weight: 700;
  text-align: left;
  width: 37.8rem;
  height: auto;
  aspect-ratio: 378/253;
  padding: 5rem 2.5rem 4rem 4.5rem;
  background: url(../../images/7strength/bg_sketchbook_pc.png) no-repeat center/contain;
  position: relative;
}
.p-7strength01-item::before {
  position: absolute;
  content: "";
  width: 11.3rem;
  aspect-ratio: 166/248;
  background: url(../../images/common/img_deco-01.png) no-repeat center/contain;
}
.p-7strength01-item:nth-child(1)::before {
  left: -7.5rem;
  bottom: -1.5rem;
  rotate: -15deg;
}
.p-7strength01-item:nth-child(2)::before {
  right: -6rem;
  top: -4.5rem;
  rotate: 5deg;
}

.p-7strength01-item-ttl {
  font-size: 2.2rem;
  line-height: 1;
  letter-spacing: 0.06em;
  font-weight: 700;
  text-align: center;
  padding-right: 1.5rem;
  margin-bottom: 1.5rem;
}

@media screen and (max-width: 767px) {
  .p-7strength01-box02 {
    padding: 8vw 5.3333333333vw;
    margin-bottom: 8vw;
  }
  .p-7strength01-box02-txt::before, .p-7strength01-box02-txt::after {
    width: 4.2666666667vw;
    aspect-ratio: 23/34;
  }
  .p-7strength01-box02-txt:nth-child(1) {
    margin-bottom: 14.6666666667vw;
    margin-left: auto;
  }
  .p-7strength01-box02-txt:nth-child(1)::after {
    left: 1.6vw;
  }
  .p-7strength01-box02-txt:nth-child(1) .p-7strength01-box02-txt-inner::before {
    top: -1.3333333333vw;
    left: -2.6666666667vw;
    width: 27.2vw;
  }
  .p-7strength01-box02-txt:nth-child(1) .p-7strength01-box02-txt-inner::after {
    top: auto;
    bottom: 1.3333333333vw;
    right: 50%;
    transform: translate(50%, 100%);
    width: 20vw;
  }
  .p-7strength01-box02-txt:nth-child(2) {
    width: 100%;
    margin: 0 auto 30.6666666667vw;
  }
  .p-7strength01-box02-txt:nth-child(2)::before, .p-7strength01-box02-txt:nth-child(2)::after {
    top: auto;
    right: calc(50% - (4.2666666667vw));
    transform: translate(50%, 100%);
    rotate: 90deg;
    transform-origin: bottom;
  }
  .p-7strength01-box02-txt:nth-child(2)::before {
    bottom: 0;
  }
  .p-7strength01-box02-txt:nth-child(2)::after {
    bottom: 1.6vw;
  }
  .p-7strength01-box02-txt:nth-child(2) .p-7strength01-box02-txt-inner {
    padding: 2.6666666667vw;
  }
  .p-7strength01-box02-txt:nth-child(2) .p-7strength01-box02-txt-inner::before {
    top: auto;
    bottom: 5.3333333333vw;
    left: 1.3333333333vw;
    transform: translateY(100%);
    width: 18.4vw;
  }
  .p-7strength01-box02-txt:nth-child(2) .p-7strength01-box02-txt-inner::after {
    top: auto;
    bottom: 5.3333333333vw;
    right: -2.6666666667vw;
    transform: translateY(100%);
    width: 24.8vw;
  }
  .p-7strength01-box02-txt-inner {
    line-height: 1.6;
    padding: 2.6666666667vw 4vw;
    border: 0.8vw solid #FFD8E6;
    border-radius: 1.6vw;
  }
  .p-7strength01-box {
    text-align: left;
    padding: 8vw 5.3333333333vw;
    background: url(../../images/7strength/bg_sec01_sp.png) no-repeat center top/cover;
  }
  .p-7strength-flow {
    display: block;
    text-align: left;
    max-width: 100%;
    margin: 8vw auto 18.6666666667vw;
  }
  .p-7strength-flow-item {
    flex-direction: row-reverse;
    align-items: start;
    gap: 4.2666666667vw;
  }
  .p-7strength-flow-item:not(:last-child) {
    margin-bottom: 14.6666666667vw;
  }
  .p-7strength-flow-item:not(:last-child)::before {
    top: 17.3333333333vw;
    bottom: auto;
    left: 6.1333333333vw;
    transform: translate(0);
    width: 0.8vw;
    height: 97%;
  }
  .p-7strength-flow-item:nth-child(even) {
    flex-direction: row-reverse;
  }
  .p-7strength-flow-item:nth-child(even) .p-7strength-flow-item-txt {
    flex-direction: column-reverse;
  }
  .p-7strength-flow-item:nth-child(even) .p-7strength-flow-item-txt::before, .p-7strength-flow-item:nth-child(even) .p-7strength-flow-item-txt::after {
    transform: translateX(-100%) scale(-1, 1);
  }
  .p-7strength-flow-item:nth-child(even) .p-7strength-flow-item-txt::before {
    left: 18.1333333333vw;
  }
  .p-7strength-flow-item:nth-child(even) .p-7strength-flow-item-txt::after {
    left: 18.9333333333vw;
  }
  .p-7strength-flow-item:nth-child(even) .p-7strength-flow-item-txt img {
    margin-right: 0;
  }
  .p-7strength-flow-clock {
    width: 12.8vw;
    margin: 2.6666666667vw 0 0;
  }
  .p-7strength-flow-item-txt {
    flex-direction: column-reverse;
    gap: 1.3333333333vw;
    font-size: 3.4666666667vw;
    letter-spacing: 0;
    line-height: 1.7692307692;
    width: 50.9333333333vw;
    min-width: auto;
    padding: 4vw 2.4vw;
    border: 1.0666666667vw solid #DEDEFB;
    border-radius: 2.6666666667vw;
    position: static;
  }
  .p-7strength-flow-item-txt::before, .p-7strength-flow-item-txt::after {
    top: 5.3333333333vw;
    right: auto;
    transform: translateX(-100%) scale(-1, 1);
  }
  .p-7strength-flow-item-txt::before {
    left: 18.1333333333vw;
    width: 4.2666666667vw;
  }
  .p-7strength-flow-item-txt::after {
    top: 6.1333333333vw;
    left: 18.9333333333vw;
    width: 3.2vw;
  }
  .p-7strength-flow-item-txt img {
    width: 40vw;
    margin-left: 0;
    margin-bottom: -16vw;
  }
  .p-7strength-flow-item-meta {
    justify-content: start;
    gap: 1.3333333333vw;
    width: auto;
    margin-bottom: 2.6666666667vw;
  }
  .p-7strength-flow-item-time {
    font-size: 4.8vw;
    width: 16vw;
  }
  .p-7strength-flow-item-schedule {
    font-size: 3.7333333333vw;
    width: 20.8vw;
    padding: 1.3333333333vw 0;
  }
  .p-7strength01-item-wrap {
    flex-direction: column;
    gap: 6.6666666667vw;
    margin: 24vw auto 0;
  }
  .p-7strength01-item {
    font-size: 3.7333333333vw;
    line-height: 1.7142857143;
    width: 69.8666666667vw;
    aspect-ratio: 262/215;
    padding: 10.6666666667vw 5.3333333333vw 8vw 4vw;
    background: url(../../images/7strength/bg_sketchbook_sp.png) no-repeat center/contain;
  }
  .p-7strength01-item::before {
    width: 13.3333333333vw;
  }
  .p-7strength01-item:nth-child(1)::before {
    top: -4vw;
    left: -2.6666666667vw;
    bottom: auto;
  }
  .p-7strength01-item:nth-child(2)::before {
    right: 5.3333333333vw;
    top: -2.6666666667vw;
  }
  .p-7strength01-item-ttl {
    font-size: 4.2666666667vw;
    padding-right: 0;
    margin-bottom: 2.6666666667vw;
  }
}
/* p-7strength02
---------------------------------------------------------------------------- */
.p-7strength02-img-wrap {
  display: flex;
  align-items: center;
  gap: 6rem;
}
.p-7strength02-img-wrap picture {
  width: 44.1rem;
  min-width: 44.1rem;
}

@media screen and (max-width: 767px) {
  .p-7strength02-img-wrap {
    flex-direction: column-reverse;
    gap: 5.3333333333vw;
  }
  .p-7strength02-img-wrap picture {
    width: 100%;
    min-width: 100%;
  }
  .p-7strength02-img-wrap picture img {
    width: 100%;
  }
}
/* p-7strength03
---------------------------------------------------------------------------- */
.p-7strength03-img-wrap {
  display: flex;
  justify-content: space-between;
  gap: 6rem;
}
.p-7strength03-img-wrap picture {
  width: 44.1rem;
  min-width: 44.1rem;
}

.p-7strength03-txt {
  margin-top: 2.5rem;
}

.p-7strength03-box-ttl {
  color: #fff;
  font-weight: 700;
  text-align: center;
  width: 50rem;
  padding: 0.5rem 0;
  margin-top: 3rem;
  background-color: #1A3667;
  position: relative;
}
.p-7strength03-box-ttl::before {
  position: absolute;
  content: "";
  bottom: 1px;
  left: 50%;
  transform: translate(-50%, 100%);
  width: 2.8rem;
  height: auto;
  aspect-ratio: 28/16;
  clip-path: polygon(100% 0, 0 0, 50% 100%);
  background-color: #1A3667;
}

.p-7strength03-box-price {
  font-size: 3rem;
  line-height: 1;
  font-weight: 700;
  text-align: center;
  padding: 2.5rem 0 1.5rem;
  background-color: #fff;
}
.p-7strength03-box-price .m-wave {
  padding-bottom: 1.5rem;
}
.p-7strength03-box-price span {
  font-size: 4.4rem;
  line-height: 1;
  font-weight: 700;
  font-family: "Montserrat";
}

.p-7strength03-box-note {
  color: #919397;
  font-size: 1.5rem;
  line-height: 1.4666666667;
  letter-spacing: 0.06em;
  font-weight: 400;
  margin-top: 1rem;
}

@media screen and (max-width: 767px) {
  .p-7strength03-img-wrap {
    display: grid;
    gap: 4.8vw;
  }
  .p-7strength03-img-wrap p {
    order: 1;
  }
  .p-7strength03-img-wrap div {
    order: 3;
  }
  .p-7strength03-img-wrap picture {
    order: 2;
    width: 100%;
    min-width: 100%;
  }
  .p-7strength03-img-wrap picture img {
    width: 100%;
  }
  .p-7strength03-txt {
    display: contents;
  }
  .p-7strength03-box-ttl {
    width: 100%;
    padding: 2.6666666667vw 0;
    line-height: 1.5;
    margin-top: 0;
  }
  .p-7strength03-box-ttl::before {
    width: 5.8666666667vw;
  }
  .p-7strength03-box-price {
    font-size: 6.4vw;
    padding: 8vw 0 6.6666666667vw;
  }
  .p-7strength03-box-price .m-wave {
    padding-bottom: 4vw;
  }
  .p-7strength03-box-price span {
    font-size: 9.6vw;
  }
  .p-7strength03-box-note {
    font-size: 3.4666666667vw;
    margin-top: 2.6666666667vw;
  }
}
/* p-7strength04
---------------------------------------------------------------------------- */
.p-7strength04-img-wrap {
  display: flex;
  align-items: center;
  gap: 6rem;
}

.p-7strength04-img-list {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 0 1.7rem;
  width: 44.3rem;
  min-width: 44.3rem;
}

.p-7strength04-img-item {
  width: calc(33.3% - 1.1333333333rem);
  height: auto;
  aspect-ratio: 1/1;
  padding: 0.6rem;
  background: rgb(177, 237, 243);
  background: linear-gradient(145deg, rgb(177, 237, 243) 0%, rgb(255, 213, 227) 100%);
  mask-image: url("../../images/common/img_mask-03.svg");
  mask-size: contain;
  mask-repeat: no-repeat;
}

.p-7strength04-img-item-inner {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 1rem;
  color: #FB73A2;
  font-weight: 700;
  line-height: 1.3888888889;
  text-align: center;
  width: 100%;
  height: 100%;
  padding-top: 0.5rem;
  background-color: #fff;
  mask-image: url("../../images/common/img_mask-03.svg");
  mask-size: contain;
  mask-repeat: no-repeat;
}
.p-7strength04-img-item-inner img {
  max-height: 3.6rem;
}

.p-7strength04-note {
  color: #919397;
  font-size: 1.5rem;
  line-height: 1.4666666667;
  letter-spacing: 0.06em;
  font-weight: 400;
  margin-top: 1.5rem;
}

@media screen and (max-width: 767px) {
  .p-7strength04-img-wrap {
    flex-direction: column;
    gap: 5.3333333333vw;
  }
  .p-7strength04-img-list {
    gap: 0.8vw 1.3333333333vw;
    width: 100%;
    min-width: 100%;
  }
  .p-7strength04-img-item {
    width: 25.3333333333vw;
    padding: 1.0666666667vw;
  }
  .p-7strength04-img-item-inner {
    font-size: 3.7333333333vw;
    gap: 1.8666666667vw;
    line-height: 1.2142857143;
    padding-top: 0.8vw;
  }
  .p-7strength04-img-item-inner img {
    max-height: 6.6666666667vw;
  }
  .p-7strength04-note {
    font-size: 3.7333333333vw;
    margin-top: 2.6666666667vw;
  }
}
/* p-7strength05
---------------------------------------------------------------------------- */
.p-7strength05-table-wrap {
  margin-bottom: 4rem;
}

.p-7strength05-table {
  margin: auto;
}
.p-7strength05-table tr {
  border-bottom: 0.2rem solid #D8DADF;
}
.p-7strength05-table tr:last-child {
  border: none;
}
.p-7strength05-table th, .p-7strength05-table td {
  font-weight: 700;
  vertical-align: middle;
}
.p-7strength05-table th {
  color: #fff;
  width: 16.2rem;
  height: 5rem;
  background-color: #13b8c9;
}
.p-7strength05-table th:first-child {
  background-color: #1A3667;
}
.p-7strength05-table th:last-child {
  width: 22.4rem;
  background-color: #FB73A2;
}
.p-7strength05-table th:not(:last-child) {
  border-right: 1px solid #EBF6FE;
}
.p-7strength05-table td {
  text-align: center;
  line-height: 1.2;
  height: 7.7rem;
  background-color: #fff;
}
.p-7strength05-table td span {
  color: #919397;
  font-size: 1.5rem;
  line-height: 1;
  letter-spacing: 0.06em;
  font-weight: 400;
}
.p-7strength05-table td:last-child {
  font-size: 2.8rem;
  font-family: "Montserrat";
}
.p-7strength05-table td:not(:last-child) {
  border-right: 0.2rem dotted #D8DADF;
}

.p-7strength05-txt {
  text-align: center;
}
.p-7strength05-txt small {
  color: #919397;
  font-size: 1.5rem;
  line-height: 1.4666666667;
  letter-spacing: 0.06em;
  font-weight: 400;
}

@media screen and (max-width: 767px) {
  .p-7strength05-table-wrap {
    margin-bottom: 5.3333333333vw;
  }
  .p-7strength05-table {
    width: 91.2vw;
  }
  .p-7strength05-table tr {
    border-bottom: 0.5333333333vw solid #D8DADF;
  }
  .p-7strength05-table tr:last-child {
    border: none;
  }
  .p-7strength05-table th {
    font-size: 4vw;
    line-height: 1.4666666667;
    width: auto;
    height: 13.3333333333vw;
  }
  .p-7strength05-table th:first-child {
    width: 16.5333333333vw;
  }
  .p-7strength05-table th:last-child {
    width: 26.6666666667vw;
  }
  .p-7strength05-table th:not(:last-child) {
    border-right: 0.5333333333vw solid #EBF6FE;
  }
  .p-7strength05-table td {
    font-size: 3.7333333333vw;
    height: 21.0666666667vw;
  }
  .p-7strength05-table td span {
    font-size: 3.2vw;
  }
  .p-7strength05-table td:last-child {
    font-size: 5.6vw;
  }
  .p-7strength05-table td:not(:last-child) {
    border-right: 0.5333333333vw dotted #D8DADF;
  }
  .p-7strength05-txt {
    text-align: center;
  }
}
/* p-7strength06
---------------------------------------------------------------------------- */
.p-7strength06-box01 {
  margin-bottom: 2rem;
}

.p-7strength06-box01-ttl {
  color: #fff;
  font-size: 2.6rem;
  line-height: 1.5;
  letter-spacing: 0.06em;
  font-weight: 700;
  text-align: center;
  padding: 1rem 0;
  background: rgb(251, 115, 162);
  background: linear-gradient(170deg, rgb(251, 115, 162) 0%, rgb(255, 188, 211) 100%);
}

.p-7strength06-box01-txt {
  display: flex;
  justify-content: space-between;
  padding: 4rem 6.5rem;
  background-color: #fff;
}

.p-7strength06-box02-wrap {
  display: flex;
  justify-content: space-between;
  gap: 1rem;
}

.p-7strength06-box02 {
  width: fit-content;
}
.p-7strength06-box02._gray .p-7strength06-box02-ttl {
  display: flex;
  flex-direction: column;
  justify-content: center;
  font-size: 1.6rem;
  line-height: 1.5625;
  width: 16.5rem;
  height: 6rem;
  background-color: #919397;
}
.p-7strength06-box02._gray .p-7strength06-box02-ttl::before {
  background-color: #919397;
}
.p-7strength06-box02._gray .p-7strength06-box02-price {
  color: #919397;
  font-size: 2.6rem;
}

.p-7strength06-box02-ttl {
  color: #fff;
  font-size: 2rem;
  line-height: 1.8;
  letter-spacing: 0.06em;
  font-weight: 700;
  text-align: center;
  padding: 0.5rem 0;
  background-color: #1A3667;
  position: relative;
}
.p-7strength06-box02-ttl::before {
  position: absolute;
  content: "";
  bottom: 1px;
  left: 50%;
  transform: translate(-50%, 100%);
  width: 2.8rem;
  height: auto;
  aspect-ratio: 28/16;
  clip-path: polygon(100% 0, 0 0, 50% 100%);
  background-color: #1A3667;
}

.p-7strength06-box02-price {
  font-size: 3.5rem;
  line-height: 1;
  font-weight: 700;
  text-align: center;
  padding: 2.5rem 0 1.5rem;
  background-color: #fff;
}
.p-7strength06-box02-price .m-wave {
  padding-bottom: 1.5rem;
}
.p-7strength06-box02-price span {
  font-size: 5rem;
  line-height: 1;
  font-weight: 700;
  font-family: "Montserrat";
}

.p-7strength06-txt {
  font-size: 2.2rem;
  line-height: 1.5;
  letter-spacing: 0.06em;
  font-weight: 700;
  text-align: center;
  margin-top: 2.5rem;
}
.p-7strength06-txt span {
  color: #FB73A2;
  font-size: 2.6rem;
}

@media screen and (max-width: 767px) {
  .p-7strength06-box01 {
    margin-bottom: 5.3333333333vw;
  }
  .p-7strength06-box01-ttl {
    font-size: 5.3333333333vw;
    padding: 4vw 0;
  }
  .p-7strength06-box01-txt {
    flex-direction: column;
    gap: 8vw;
    padding: 5.3333333333vw 5.3333333333vw 6.6666666667vw;
  }
  .p-7strength06-box02-wrap {
    flex-direction: column;
    gap: 3.2vw;
  }
  .p-7strength06-box02 {
    width: 100%;
  }
  .p-7strength06-box02._gray .p-7strength06-box02-ttl {
    font-size: 4.2666666667vw;
    width: 100%;
    height: 16vw;
  }
  .p-7strength06-box02._gray .p-7strength06-box02-price {
    font-size: 6.9333333333vw;
    padding-top: 6.6666666667vw;
  }
  .p-7strength06-box02-ttl {
    font-size: 4.8vw;
    padding: 1.3333333333vw 0;
  }
  .p-7strength06-box02-ttl::before {
    width: 5.8666666667vw;
  }
  .p-7strength06-box02-price {
    font-size: 6.4vw;
    padding: 8vw 0 0;
  }
  .p-7strength06-box02-price .m-wave {
    padding-bottom: 4vw;
  }
  .p-7strength06-box02-price span {
    font-size: 9.6vw;
    letter-spacing: 0;
  }
  .p-7strength06-txt {
    font-size: 4.8vw;
    margin-top: 2.6666666667vw;
  }
  .p-7strength06-txt span {
    font-size: 5.3333333333vw;
  }
}
/* p-7strength07
---------------------------------------------------------------------------- */
.p-7strength07-box-wrap {
  display: flex;
  gap: 0.4rem;
}

.p-7strength07-box {
  flex: 1;
}

.p-7strength07-box-ttl {
  color: #fff;
  font-size: 2.6rem;
  line-height: 1.8076923077;
  letter-spacing: 0.06em;
  font-weight: 700;
  text-align: center;
  padding: 0.6rem 0;
  background-color: #1A3667;
  position: relative;
}
.p-7strength07-box-ttl::before {
  position: absolute;
  content: "";
  bottom: 1px;
  left: 50%;
  transform: translate(-50%, 100%);
  width: 2.8rem;
  height: auto;
  aspect-ratio: 28/16;
  clip-path: polygon(100% 0, 0 0, 50% 100%);
  background-color: #1A3667;
}

.p-7strength07-box-txt {
  display: flex;
  gap: 2.5rem;
  font-size: 2rem;
  line-height: 1.8;
  letter-spacing: 0.06em;
  font-weight: 700;
  padding: 4rem 3rem 3rem;
  padding-left: 7rem;
  background-color: #fff;
}

.p-7strength07-box-num {
  font-size: 3.7rem;
  line-height: 1;
  font-weight: 700;
}
.p-7strength07-box-num span {
  font-size: 5.4rem;
  font-family: "Montserrat";
  background: rgb(26, 54, 103);
  background: linear-gradient(0deg, rgb(26, 54, 103) 0%, rgb(26, 54, 103) 45%, rgb(121, 139, 169) 45%, rgb(26, 54, 103) 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}
.p-7strength07-box-num::after {
  position: absolute;
  content: "";
  top: 0;
  left: -0.9rem;
  transform: translateX(-100%);
  width: 2.8rem;
  height: auto;
  aspect-ratio: 28/47;
  background: url(../../images/7strength/icn_deco-01.svg) no-repeat center/contain;
}

@media screen and (max-width: 767px) {
  .p-7strength07-box-wrap {
    flex-direction: column;
    gap: 5.3333333333vw;
  }
  .p-7strength07-box-ttl {
    font-size: 4.8vw;
    padding: 2.6666666667vw 0;
  }
  .p-7strength07-box-ttl::before {
    width: 5.8666666667vw;
  }
  .p-7strength07-box-txt {
    flex-direction: column;
    align-items: center;
    gap: 2.1333333333vw;
    font-size: 4.8vw;
    line-height: 1.6666666667;
    text-align: center;
    padding: 8vw 8vw 5.3333333333vw;
  }
  .p-7strength07-box-num {
    font-size: 7.7333333333vw;
    padding-bottom: 4vw;
  }
  .p-7strength07-box-num span {
    font-size: 11.4666666667vw;
  }
  .p-7strength07-box-num::after {
    top: -1.8666666667vw;
    left: 0;
    width: 6.1333333333vw;
  }
}
/* p-7strength08
---------------------------------------------------------------------------- */
.p-7strength08 {
  padding: 2rem;
  background: #5CD3E1;
  background: linear-gradient(140deg, #5CD3E1 0%, #FFD8E6 60%, #FFA7C6 100%);
}

.p-7strength08-inner {
  padding: 6rem 14rem;
  background-color: #fff;
}
.p-7strength08-inner iframe {
  width: 100%;
  height: auto;
  aspect-ratio: 880/497;
  border-radius: 1rem;
}

.p-7strength08-ttl {
  font-size: 3.5rem;
  line-height: 1.4857142857;
  letter-spacing: 0.06em;
  font-weight: 700;
  width: fit-content;
  padding-left: 10.4rem;
  margin: auto;
  margin-bottom: 4rem;
  position: relative;
}
.p-7strength08-ttl::before {
  position: absolute;
  content: "";
  top: 50%;
  left: -4rem;
  transform: translateY(-50%);
  width: 13.4rem;
  height: auto;
  aspect-ratio: 134/112;
  background: url(../../images/7strength/img_ttl-deco-03.svg) no-repeat center/contain;
}

@media screen and (max-width: 767px) {
  .p-7strength08 {
    padding: 2.6666666667vw;
  }
  .p-7strength08-inner {
    padding: 6.6666666667vw 5.3333333333vw;
  }
  .p-7strength08-inner iframe {
    aspect-ratio: 880/497;
    border-radius: 1.3333333333vw;
  }
  .p-7strength08-ttl {
    font-size: 4.8vw;
    padding-left: 22.4vw;
    margin-bottom: 5.3333333333vw;
  }
  .p-7strength08-ttl::before {
    left: 0;
    width: 20.5333333333vw;
  }
}
