@charset "UTF-8";
/* ブレイクポイント設定 */
/* 色設定 */
/* フォントサイズ */
/* 行間 */
/* 文字間隔 */
/* スタイル調整 */
/* transition */
/* ホバー */
/* main */
main {
  position: relative;
  overflow: hidden;
}

/* FV */
.p-FV {
  position: relative;
  height: 95rem;
  overflow: hidden;
}
@media screen and (max-width: 767px) {
  .p-FV {
    height: 131rem;
  }
}
.p-FV::before, .p-FV::after {
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  content: "";
}
.p-FV::before {
  top: 0;
  z-index: 1;
  background: url(../images/①FV/2x/アセット\ 6@2x.png) no-repeat 50% 0%/cover;
  width: 100%;
  height: 100%;
}
@media screen and (max-width: 767px) {
  .p-FV::before {
    height: 75rem;
    background: linear-gradient(to right, #009cff 0%, #009cff 50%, #05d1ff 100%);
  }
}
.p-FV::after {
  top: 42.6rem;
  z-index: 3;
  background: url(../images/①FV/2x/アセット\ 7@2x.png) no-repeat 50% 0%/contain;
  filter: hue-rotate(60deg) saturate(1.5) brightness(1.5) opacity(0.5);
  width: 100vw;
  height: 150vw;
}
@media screen and (max-width: 767px) {
  .p-FV::after {
    top: 63rem;
    left: 0;
    transform: translateX(0);
    background: url(../images/①FV/2x/アセット\ 1@2x.png) no-repeat 0% 0%/contain;
    width: 125vw;
    height: 80vw;
  }
}

.p-site__logo {
  position: absolute;
  top: 3rem;
  left: 2.8rem;
  z-index: 1;
  width: 22rem;
}
@media screen and (max-width: 767px) {
  .p-site__logo {
    top: 3.5rem;
    left: 4.2rem;
    width: 17rem;
  }
}

.p-FV__title {
  position: absolute;
  top: 4.95rem;
  left: 42%;
  transform: translateX(-50%);
  z-index: 3;
  width: 78rem;
  line-height: 180%;
  letter-spacing: 0.03em;
}
@media screen and (max-width: 767px) {
  .p-FV__title {
    top: 11rem;
    left: 54.5%;
    width: 70rem;
  }
}

.p-FV__title--first {
  width: 31rem;
  height: 9rem;
  font-size: 1.9rem;
  display: flex;
  justify-content: center;
  align-items: center;
  background: url(../images/①FV/FV-吹き出し.png) no-repeat 50% 50%/contain;
  padding-top: 0.4em;
  margin-left: 21rem;
}
@media screen and (max-width: 767px) {
  .p-FV__title--first {
    width: 26.9rem;
    font-size: 1.61rem;
    margin-left: 0;
  }
}

.p-FV__title--second {
  font-size: 3.1rem;
  text-align: center;
  margin-top: 4rem;
  margin-left: -1rem;
}
@media screen and (max-width: 767px) {
  .p-FV__title--second {
    font-size: 3.3rem;
    text-align: left;
    margin-top: 2.6rem;
  }
}

@media screen and (max-width: 767px) {
  .second01 {
    margin-left: 3rem;
  }
}

@media screen and (max-width: 767px) {
  .second02 {
    margin-left: 0.1rem;
    margin-top: 7rem;
  }
}

.fuwafuwa {
  width: 27.5rem;
  position: relative;
}
.fuwafuwa::before {
  position: absolute;
  top: -10%;
  left: 50%;
  transform: translate(-50%, -50%);
  content: "";
  background: url(../images/①FV/FVふわふわあしらい.png) no-repeat 50% 50%/contain;
  width: 100%;
  height: 9rem;
}
@media screen and (max-width: 767px) {
  .fuwafuwa::before {
    height: 9.2rem;
  }
}

.p-FV__title--third {
  font-size: 3rem;
  margin-top: 6rem;
  margin-left: 3rem;
}
@media screen and (max-width: 767px) {
  .p-FV__title--third {
    font-size: 3.1rem;
  }
}

@media screen and (max-width: 767px) {
  .third01 {
    margin-top: 8.2rem;
  }
}

@media screen and (max-width: 767px) {
  .third02 {
    font-size: 3.3rem;
    margin-top: 4rem;
    margin-left: -0.2rem;
  }
}

.p-FV__title--fourth {
  font-size: 7.5rem;
  margin-top: 10rem;
  margin-left: 4rem;
}
@media screen and (max-width: 767px) {
  .p-FV__title--fourth {
    font-size: 6.15rem;
    margin-top: 8.5rem;
  }
}

.p-FV__img {
  position: absolute;
  top: -12rem;
  left: 81.1%;
  transform: translateX(-50%);
  z-index: 2;
  width: 62rem;
  position: relative;
}
@media screen and (max-width: 767px) {
  .p-FV__img {
    top: -17.2rem;
    left: 73.5%;
    width: 68rem;
  }
}

.p-FV__phrase {
  position: absolute;
  top: calc(56rem + 10vw);
  left: 50%;
  transform: translateX(-50%);
  z-index: 6;
  width: 100%;
  line-height: 150%;
  letter-spacing: 0.03em;
  text-align: center;
}
@media screen and (max-width: 1280px) {
  .p-FV__phrase {
    top: 67rem;
  }
}
@media screen and (max-width: 767px) {
  .p-FV__phrase {
    top: 79rem;
  }
}

.p-phrase01 {
  position: relative;
  z-index: 7;
  font-size: 4.55rem;
  margin-bottom: 0.3rem;
  margin-left: -1rem;
}
@media screen and (max-width: 767px) {
  .p-phrase01 {
    font-size: 4.7rem;
    margin-left: -4rem;
  }
}

.p-phrase02 {
  font-size: 5rem;
  margin-left: 3.5rem;
}
@media screen and (max-width: 767px) {
  .p-phrase02 {
    font-size: 5.15rem;
    margin-left: 1rem;
  }
}
.p-phrase02 img {
  width: 21.5rem;
  vertical-align: -0.65em;
}
@media screen and (max-width: 767px) {
  .p-phrase02 img {
    width: 22rem;
  }
}

.p-FV__star--s {
  position: absolute;
}

.star05 {
  top: -7rem;
  left: 25.5rem;
  width: 2.4rem;
  height: 2.1rem;
}
@media screen and (max-width: 767px) {
  .star05 {
    top: -10.5rem;
    left: 17rem;
    width: 2.2rem;
    height: 1.9rem;
  }
}

.star06 {
  top: 1rem;
  left: 10.5rem;
  width: 3.1rem;
  height: 2.8rem;
}
@media screen and (max-width: 767px) {
  .star06 {
    top: -1rem;
    left: 3rem;
    width: 2.9rem;
    height: 2.6rem;
  }
}

.star07 {
  top: 9.5rem;
  left: 22rem;
  width: 3.1rem;
  height: 2.8rem;
}
@media screen and (max-width: 767px) {
  .star07 {
    top: 12rem;
    left: 9.3rem;
    width: 2.9rem;
    height: 2.6rem;
  }
}

.p-FV__star {
  position: absolute;
  z-index: 3;
}
@media screen and (max-width: 767px) {
  .p-FV__star {
    display: none;
  }
}

.star01 {
  top: 25rem;
  left: 11rem;
  width: 2.5rem;
  height: 2.2rem;
}

.star02 {
  top: 30.2rem;
  left: 44.8rem;
  width: 2.5rem;
  height: 2.2rem;
}

.star03 {
  top: 58rem;
  left: 16.8rem;
  width: 1.9rem;
  height: 1.6rem;
  transform: rotate(15deg);
}

.star04 {
  top: 64rem;
  left: 48.5rem;
  width: 3.3rem;
  height: 3rem;
  transform: rotate(5deg);
}

.p-FV__ashirai {
  position: absolute;
  content: "";
  z-index: -1;
  filter: brightness(1.5) opacity(0.3);
  animation: randomAnime 10s ease forwards infinite;
}

.ashirai_1 {
  top: 18.7rem;
  left: -8.6rem;
  width: 4rem;
}
@media screen and (max-width: 767px) {
  .ashirai_1 {
    top: 19.8rem;
    left: 16.5rem;
    width: 2.5rem;
  }
}

@media screen and (max-width: 767px) {
  .ashirai_1-2 {
    top: 55.2rem;
    left: 16rem;
    width: 2.5rem;
  }
}

.ashirai_2 {
  top: 14.5rem;
  left: -0.5rem;
  width: 8rem;
}
@media screen and (max-width: 767px) {
  .ashirai_2 {
    top: 17.8rem;
    left: 21.2rem;
    width: 5rem;
  }
}

.ashirai_3 {
  top: 14rem;
  left: 12.5rem;
  width: 2.7rem;
}
@media screen and (max-width: 767px) {
  .ashirai_3 {
    top: 17.5rem;
    left: 28.9rem;
    width: 1.69rem;
  }
}

.ashirai_4 {
  top: 18.5rem;
  left: 17rem;
  width: 5rem;
}
@media screen and (max-width: 767px) {
  .ashirai_4 {
    top: 20rem;
    left: 31.3rem;
    width: 3.125rem;
  }
}

.ashirai_5 {
  top: 16rem;
  left: 29rem;
  width: 5rem;
}
@media screen and (max-width: 767px) {
  .ashirai_5 {
    top: 18.3rem;
    left: 38.5rem;
    width: 3.125rem;
  }
}

.ashirai_6 {
  top: 15.8rem;
  left: 41.8rem;
  width: 9rem;
}
@media screen and (max-width: 767px) {
  .ashirai_6 {
    top: 18.5rem;
    left: 46.4rem;
    width: 5.8rem;
  }
}

.ashirai_7 {
  top: 34.2rem;
  left: 0.8rem;
  width: 3rem;
}
@media screen and (max-width: 767px) {
  .ashirai_7 {
    top: 30.2rem;
    left: 21.7rem;
    width: 1.78rem;
  }
}

.ashirai_8 {
  top: 32.3rem;
  left: 3.8rem;
  width: 6rem;
}
@media screen and (max-width: 767px) {
  .ashirai_8 {
    top: 30.2rem;
    left: 25rem;
    width: 3.75rem;
  }
}

.ashirai_9 {
  top: 36.3rem;
  left: 16.2rem;
  width: 7.5rem;
}
@media screen and (max-width: 767px) {
  .ashirai_9 {
    top: 30.2rem;
    left: 37rem;
    width: 4.6875rem;
  }
}

.ashirai_10 {
  top: 35rem;
  left: 47rem;
  width: 6rem;
}
@media screen and (max-width: 767px) {
  .ashirai_10 {
    top: 30.4rem;
    left: 49.8rem;
    width: 3.75rem;
  }
}

@media screen and (max-width: 767px) {
  .ashirai_10-2 {
    top: 65.2rem;
    left: 49.8rem;
    width: 3.75rem;
  }
}

.ashirai_11 {
  top: 42rem;
  left: -5rem;
  width: 7rem;
}
@media screen and (max-width: 767px) {
  .ashirai_11 {
    top: 35.2rem;
    left: 18.5rem;
    width: 4.3rem;
  }
}

.ashirai_12 {
  top: 49.7rem;
  left: -13.3rem;
  width: 5.7rem;
}
@media screen and (max-width: 767px) {
  .ashirai_12 {
    top: 39.3rem;
    left: 13.5rem;
    width: 3.5625rem;
  }
}

.ashirai_13 {
  top: 59rem;
  left: -10.3rem;
  width: 10rem;
}
@media screen and (max-width: 767px) {
  .ashirai_13 {
    top: 45rem;
    left: 15.2rem;
    width: 6.25rem;
  }
}

@media screen and (max-width: 767px) {
  .ashirai_13-2 {
    top: 79.9rem;
    left: 15rem;
    width: 6.25rem;
  }
}

.ashirai_14 {
  top: 55.8rem;
  left: 5.6rem;
  width: 4.5rem;
}
@media screen and (max-width: 767px) {
  .ashirai_14 {
    top: 42.8rem;
    left: 24.8rem;
    width: 2.81rem;
  }
}

.ashirai_15 {
  top: 57rem;
  left: 44.1rem;
  width: 11rem;
}
@media screen and (max-width: 767px) {
  .ashirai_15 {
    top: 43.2rem;
    left: 48.1rem;
    width: 6.875rem;
  }
}

@media screen and (max-width: 767px) {
  .ashirai_15-2 {
    top: 78.5rem;
    left: 48.1rem;
    width: 6.875rem;
  }
}

.delay1 {
  animation-delay: -1s;
}

.delay2 {
  animation-delay: -0.3s;
}

.delay3 {
  animation-delay: 0.7s;
}

.delay4 {
  animation-delay: 1s;
}

/* onayamiセクション */
.p-onayami {
  position: relative;
  height: calc(101.5rem + 17vw);
}
@media screen and (max-width: 1280px) {
  .p-onayami {
    height: 119rem;
  }
}
@media screen and (max-width: 767px) {
  .p-onayami {
    height: 120.6rem;
    margin-top: -51rem;
  }
}
.p-onayami::before, .p-onayami::after {
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  content: "";
}
.p-onayami::before {
  top: calc(-45rem + 0.5vw);
  z-index: 3;
  background: url(../images/②お悩み部分/2x/アセット\ 5@2x.png) no-repeat 50% 0%/cover;
  width: 100vw;
  height: 50vw;
}
@media screen and (max-width: 1280px) {
  .p-onayami::before {
    top: -47rem;
  }
}
@media screen and (max-width: 767px) {
  .p-onayami::before {
    top: -14.4rem;
    left: 0;
    transform: translateX(0);
    background: url(../images/②お悩み部分/2x/アセット\ 8@2x.png) no-repeat 0% 0%/contain;
    width: 125vw;
    height: 100vw;
  }
}
.p-onayami::after {
  top: calc(-15rem + 0.5vw);
  z-index: 4;
  background: url(../images/②お悩み部分/2x/アセット\ 4@2x.png) no-repeat 50% 0%/cover;
  width: 100vw;
  height: calc(63rem + 17vw);
}
@media screen and (max-width: 1280px) {
  .p-onayami::after {
    top: -17rem;
    height: 85rem;
  }
}
@media screen and (max-width: 767px) {
  .p-onayami::after {
    top: 11.7rem;
    left: 49.3%;
    background: url(../images/②お悩み部分/2x/アセット\ 1@2x.png) no-repeat 50% 0%/contain;
    width: 102%;
    height: 120rem;
  }
}

.p-onayami__main {
  position: relative;
  height: 100%;
}
.p-onayami__main::before, .p-onayami__main::after {
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  content: "";
}
.p-onayami__main::before {
  top: calc(48.5rem + 17vw);
  z-index: 1;
  background: url(../images/②お悩み部分/2x/アセット\ 2@2x.png) no-repeat 50% 0%/contain;
  width: 20rem;
  height: 10rem;
}
@media screen and (max-width: 1280px) {
  .p-onayami__main::before {
    top: 68rem;
  }
}
@media screen and (max-width: 767px) {
  .p-onayami__main::before {
    display: none;
  }
}
.p-onayami__main::after {
  top: 10rem;
  z-index: 5;
  background: url(../images/②お悩み部分/2x/アセット\ 6@2x.png) no-repeat 50% 0%/contain;
  width: 110rem;
  height: 100rem;
}
@media screen and (max-width: 767px) {
  .p-onayami__main::after {
    display: none;
  }
}

.p-onayami__title {
  position: absolute;
  top: calc(-15rem + 17vw);
  left: 0;
  z-index: 5;
  text-align: center;
  font-size: 4.05rem;
  position: relative;
}
@media screen and (max-width: 1280px) {
  .p-onayami__title {
    top: 4rem;
  }
}
@media screen and (max-width: 767px) {
  .p-onayami__title {
    top: 26.7rem;
    font-size: 3.3rem;
  }
}
.p-onayami__title::before, .p-onayami__title::after {
  position: absolute;
  content: "";
  top: 50%;
  transform: translateY(-50%);
  background: url(../images/②お悩み部分/水色-線.png) no-repeat 50% 50%/cover;
  width: 28rem;
  height: 0.4rem;
}
@media screen and (max-width: 767px) {
  .p-onayami__title::before, .p-onayami__title::after {
    width: 10rem;
    height: 0.2rem;
  }
}
.p-onayami__title::before {
  left: 0;
}
.p-onayami__title::after {
  right: 0;
}

.p-onayami__contents {
  position: absolute;
  top: calc(-8rem + 17vw);
  left: 50%;
  transform: translateX(-50%);
  z-index: 6;
  width: 100%;
  height: 56rem;
  position: relative;
}
@media screen and (max-width: 1280px) {
  .p-onayami__contents {
    top: 11rem;
  }
}
@media screen and (max-width: 767px) {
  .p-onayami__contents {
    top: 31.5rem;
  }
}
.p-onayami__contents::before, .p-onayami__contents::after {
  position: absolute;
  content: "";
  bottom: -2rem;
  width: 22rem;
  height: 34rem;
}
@media screen and (max-width: 767px) {
  .p-onayami__contents::before, .p-onayami__contents::after {
    width: 11rem;
    height: 23rem;
  }
}
.p-onayami__contents::before {
  bottom: -3rem;
  left: -1rem;
  background: url(../images/②お悩み部分/お悩み男の子.webp) no-repeat 50% 50%/contain;
}
@media screen and (max-width: 767px) {
  .p-onayami__contents::before {
    bottom: -0.3rem;
    left: 18rem;
  }
}
.p-onayami__contents::after {
  bottom: -3.5rem;
  right: -1rem;
  background: url(../images/②お悩み部分/お悩み女の子.webp) no-repeat 50% 50%/contain;
}
@media screen and (max-width: 767px) {
  .p-onayami__contents::after {
    bottom: -0.7rem;
    right: 18rem;
  }
}

.p-onayami__lists {
  width: 70rem;
  margin: 0 auto;
}
@media screen and (max-width: 767px) {
  .p-onayami__lists {
    width: 70%;
  }
}

.p-onayami__list {
  font-size: 2.35rem;
  height: 5.8rem;
  background: url(../images/②お悩み部分/質問部分背景.png) no-repeat 50% 50%/contain;
  padding-left: 3.8rem;
  margin-bottom: 0.9rem;
}
@media screen and (max-width: 767px) {
  .p-onayami__list {
    font-size: 1.82rem;
    padding-left: 2rem;
    margin-bottom: -0.5rem;
  }
}
.p-onayami__list p {
  display: flex;
  align-items: center;
  height: 100%;
  position: relative;
  padding-left: 4.1rem;
}
@media screen and (max-width: 767px) {
  .p-onayami__list p {
    padding-left: 3.1rem;
    padding-top: 0.15em;
  }
}
.p-onayami__list p::before {
  width: 3rem;
  height: 3rem;
}
@media screen and (max-width: 767px) {
  .p-onayami__list p::before {
    width: 2.4rem;
    height: 2.4rem;
  }
}

.font-adjust_m {
  font-size: 2.15rem;
}
@media screen and (max-width: 767px) {
  .font-adjust_m {
    font-size: 1.72rem;
  }
}

.font-adjust_s {
  font-size: 2.05rem;
}
@media screen and (max-width: 767px) {
  .font-adjust_s {
    font-size: 1.63rem;
  }
}

.p-onayami__announcement {
  position: absolute;
  top: calc(-8rem + 16.8vw);
  left: 50%;
  transform: translateX(-50%);
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: 80%;
  height: 53rem;
  position: relative;
  padding-top: 7rem;
}
@media screen and (max-width: 1280px) {
  .p-onayami__announcement {
    top: 9rem;
  }
}
@media screen and (max-width: 767px) {
  .p-onayami__announcement {
    top: 37.5rem;
    width: 75%;
    height: 20rem;
    padding-top: 0;
  }
}
.p-onayami__announcement::before {
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  content: "";
  background: #F7F5F3;
  width: 100vw;
  height: 100%;
}
@media screen and (max-width: 767px) {
  .p-onayami__announcement::before {
    display: none;
  }
}
.p-onayami__announcement::after {
  position: absolute;
  top: 3rem;
  left: -3rem;
  content: "";
  background: url(../images/③お悩み解決/悩み解決部分星-グループ.png) no-repeat 50% 50%/contain;
  width: 100%;
  height: 50rem;
}
@media screen and (max-width: 767px) {
  .p-onayami__announcement::after {
    top: -3rem;
    left: -1rem;
    height: 24.5rem;
  }
}

.p-announcement__img {
  flex-basis: 45%;
}
@media screen and (max-width: 767px) {
  .p-announcement__img {
    flex-basis: 40%;
    margin-left: 4rem;
  }
}

.p-announcement__phrase {
  flex-basis: 50%;
  font-size: 6.3rem;
}
@media screen and (max-width: 767px) {
  .p-announcement__phrase {
    flex-basis: 47%;
    font-size: 3.8rem;
  }
}
.p-announcement__phrase p {
  margin-bottom: 3.5rem;
}
@media screen and (max-width: 767px) {
  .p-announcement__phrase p {
    margin-bottom: 2rem;
  }
}
.p-announcement__phrase p img {
  width: 26rem;
  margin-right: 0.5rem;
}
@media screen and (max-width: 767px) {
  .p-announcement__phrase p img {
    width: 15.5rem;
    margin-right: 0.3rem;
  }
}
.p-announcement__phrase p .border {
  position: relative;
  margin-right: 1.4rem;
}
@media screen and (max-width: 767px) {
  .p-announcement__phrase p .border {
    margin-right: 1rem;
  }
}
.p-announcement__phrase p .border::before {
  position: absolute;
  content: "";
  top: 0;
  left: 50%;
  transform: translate(-50%, -50%);
  background: url(../images/③お悩み解決/解決文字枠.png) no-repeat 50% 50%/contain;
  width: 7.4rem;
  height: 7.4rem;
}
@media screen and (max-width: 767px) {
  .p-announcement__phrase p .border::before {
    top: 0.05em;
    width: 4.4rem;
    height: 4.4rem;
  }
}
.p-announcement__phrase .phrase_last {
  margin-left: 3rem;
}
@media screen and (max-width: 767px) {
  .p-announcement__phrase .phrase_last {
    margin-left: 2rem;
    margin-top: -2.3rem;
  }
}

/* present01セクション */
.p-present01 {
  height: 32.5rem;
  background: url(../images/④CTAバナー①/背景.png) no-repeat 50% 50%/cover;
  display: flex;
  justify-content: center;
  align-items: center;
}
@media screen and (max-width: 767px) {
  .p-present01 {
    height: 45rem;
    align-items: flex-start;
    padding-top: 3rem;
  }
}

.p-present01__contents {
  text-align: center;
}

.p-present01__fukidashi {
  position: relative;
  width: 45rem;
  height: 7rem;
  background: url(../images/④CTAバナー①/吹き出し.png) no-repeat 50% 50%/contain;
  color: #3eb157;
  font-size: 2.55rem;
  letter-spacing: 0.03em;
  padding: 2.5rem 0 2.5rem 2rem;
  margin: 0 auto 0.4rem;
}
@media screen and (max-width: 767px) {
  .p-present01__fukidashi {
    width: 100%;
    height: 8.5rem;
    font-size: 2.8rem;
    padding: 3.4rem 0 3.4rem 2rem;
    margin: 0 auto 1.8rem;
  }
}
.p-present01__fukidashi .fukidashi-massage {
  position: relative;
  padding-left: 3.5rem;
}
@media screen and (max-width: 767px) {
  .p-present01__fukidashi .fukidashi-massage {
    padding-left: 3.9rem;
  }
}
.p-present01__fukidashi .fukidashi-massage::before {
  position: absolute;
  top: 0;
  left: 0;
  transform: translateY(-50%);
  content: "";
  background: url(../images/④CTAバナー①/CTA/ラインアイコン①.png) no-repeat 50% 50%/contain;
  width: 3rem;
  height: 3rem;
}
@media screen and (max-width: 767px) {
  .p-present01__fukidashi .fukidashi-massage::before {
    width: 3.5rem;
    height: 3.5rem;
  }
}

.p-present01__massage {
  font-size: 3.1rem;
  line-height: 150%;
  letter-spacing: 0.03em;
  height: 4.1rem;
  margin-bottom: 3rem;
}
@media screen and (max-width: 767px) {
  .p-present01__massage {
    font-size: 3.45rem;
    margin-bottom: 8rem;
  }
}
.p-present01__massage .white-bg {
  position: relative;
  z-index: 1;
  height: 100%;
  font-size: 3.15rem;
  padding: 0 0.2rem;
  margin-left: 0.8rem;
  margin-right: 1.2rem;
}
@media screen and (max-width: 767px) {
  .p-present01__massage .white-bg {
    margin-left: 1.8rem;
  }
}
.p-present01__massage .white-bg::before {
  position: absolute;
  top: 55%;
  left: 0;
  transform: translateY(-50%);
  z-index: -1;
  content: "";
  background: #fff;
  width: 100%;
  height: 100%;
}

.p-present01__submassage {
  font-size: 1.7rem;
  letter-spacing: 0.03em;
  width: -moz-fit-content;
  width: fit-content;
  margin: 0 auto;
}
.p-present01__submassage::before, .p-present01__submassage::after {
  height: 1.8rem;
}
@media screen and (max-width: 767px) {
  .p-present01__submassage::before, .p-present01__submassage::after {
    height: 1.6rem;
  }
}

.p-present01__banner {
  margin: 1.5rem auto 0;
}

/* introductionセクション */
.p-introduction {
  position: relative;
  z-index: 2;
  padding-top: 2.758vw;
  padding-bottom: 2.364vw;
}
.p-introduction::before {
  position: absolute;
  top: 1.2608vw;
  left: 58.312vw;
  content: "";
  z-index: 4;
  background: url(../images/⑤塾長紹介/塾長さん写真.webp) no-repeat 50% 50%/contain;
  width: 25.216vw;
  height: 33.096vw;
}
@media screen and (max-width: 767px) {
  .p-introduction::before {
    top: 3.8rem;
    left: 38.5rem;
    background: url(../images/⑤塾長紹介/2x/アセット\ 3@2x.png) no-repeat 50% 50%/contain;
    width: 22.5rem;
    height: 25rem;
  }
}
@media screen and (max-width: 767px) {
  .p-introduction::after {
    position: absolute;
    top: 17.8rem;
    left: 8.5rem;
    content: "";
    z-index: -1;
    background: url(../images/⑤塾長紹介/背景-水色.png) no-repeat 50% 50%/cover;
    width: 63rem;
    height: 33.5rem;
  }
}

.p-introduction__contents {
  position: relative;
  width: 67vw;
  height: 33.9vw;
  margin: 0 auto;
}
@media screen and (max-width: 767px) {
  .p-introduction__contents {
    width: 64rem;
    height: 39.5rem;
    margin: 8rem auto 0;
  }
}
.p-introduction__contents::before {
  position: absolute;
  top: 0;
  left: 2.364vw;
  content: "";
  background: url(../images/⑤塾長紹介/背景-全部セット.png) no-repeat 50% 50%/contain;
  width: 100%;
  height: 100%;
}
@media screen and (max-width: 767px) {
  .p-introduction__contents::before {
    left: 50%;
    transform: translateX(-50%);
    border: solid 2.5px #224960;
    clip-path: polygon(0 0, 0 100%, 100% 100%, 100% 23.8%, 84.5% 0, 0 0);
    background: repeating-linear-gradient(90deg, #b3e2e8 0 0.1rem, transparent 0.1rem 3.5rem), repeating-linear-gradient(0deg, #b3e2e8 0 0.1rem, transparent 0.1rem 3.5rem), #fff;
  }
}
@media screen and (max-width: 767px) {
  .p-introduction__contents::after {
    position: absolute;
    top: 4.6rem;
    right: -1.75rem;
    content: "";
    background: #224960;
    width: 13.5rem;
    height: 2.5px;
    transform: rotate(43deg);
  }
}

.p-introduction__title {
  position: absolute;
  top: 7rem;
  left: 3.546vw;
  z-index: 4;
  width: -moz-fit-content;
  width: fit-content;
  font-size: 3.9rem;
  letter-spacing: 0.08em;
  transform: rotate(-15deg);
  position: relative;
}
@media screen and (max-width: 767px) {
  .p-introduction__title {
    top: 4rem;
    left: 3.3rem;
    font-size: 2.9rem;
  }
}
.p-introduction__title::before {
  position: absolute;
  top: -12.4rem;
  left: -7rem;
  content: "";
  z-index: -1;
  width: 31rem;
  height: 24rem;
  background: url(../images/⑤塾長紹介/タグ.png) no-repeat 50% 50%/contain;
  transform: rotate(14deg);
}
@media screen and (max-width: 767px) {
  .p-introduction__title::before {
    top: -12rem;
    left: -7.5rem;
    width: 24.2rem;
  }
}

.p-jukuchou__name {
  position: relative;
  z-index: 3;
  width: -moz-fit-content;
  width: fit-content;
  font-size: 3.152vw;
  line-height: 1;
  letter-spacing: 0.08em;
  margin-top: 9.456vw;
  margin-left: 8vw;
}
@media screen and (max-width: 767px) {
  .p-jukuchou__name {
    font-size: 3.45rem;
    margin-top: 11rem;
    margin-left: 11rem;
  }
  .p-jukuchou__name::after {
    position: absolute;
    top: -9.8rem;
    left: 43.3rem;
    content: "";
    background: url(../images/⑤塾長紹介/折り目-あしらい.png) no-repeat 50% 50%/contain;
    width: 6.8rem;
    height: 6.8rem;
  }
}
.p-jukuchou__name::before {
  position: absolute;
  top: 50%;
  left: 21.1vw;
  transform: translate(-50%, -50%);
  z-index: -1;
  content: "";
  background: url(../images/⑤塾長紹介/名前部分-背景.png) no-repeat 50% 50%/contain;
  width: 52.796vw;
  height: 4.728vw;
}
@media screen and (max-width: 767px) {
  .p-jukuchou__name::before {
    top: 45%;
    left: 21rem;
    background: url(../images/⑤塾長紹介/名前部分-背景.png) no-repeat 50% 50%/cover;
    width: 63.2rem;
    height: 9.5rem;
  }
}
.p-jukuchou__name .jukuchou__name--english {
  font-size: 2.21vw;
  transform: scaleX(1.1);
  letter-spacing: -0.01em;
  margin-left: 1.182vw;
}
@media screen and (max-width: 767px) {
  .p-jukuchou__name .jukuchou__name--english {
    display: block;
    font-size: 2.57rem;
    margin-top: 0.5rem;
    margin-left: 1.2rem;
  }
}

.p-jukuchou__career {
  position: absolute;
  top: 16.6268vw;
  left: 11.426vw;
  font-size: 1.7336vw;
  line-height: 160%;
}
@media screen and (max-width: 767px) {
  .p-jukuchou__career {
    top: 21.6rem;
    left: 13rem;
    font-size: 2.12rem;
    line-height: 150%;
  }
}

.disc {
  padding-left: 0.4em;
}
.disc::marker {
  content: "・";
  color: #224960;
}

.nodisc {
  margin-top: 0.7rem;
  margin-left: -2rem;
}
@media screen and (max-width: 767px) {
  .nodisc {
    margin-bottom: 0.3rem;
  }
}

/* explanationセクション */
.p-explanation {
  position: relative;
  z-index: 1;
}
.p-explanation::before {
  position: absolute;
  top: -19.7vw;
  left: 0;
  content: "";
  z-index: -1;
  background: url(../images/⑥理由解説部分/2x/アセット\ 3@2x.png) no-repeat 50% 0%/cover;
  width: 100vw;
  height: 75vw;
}
@media screen and (max-width: 767px) {
  .p-explanation::before {
    top: -32.2rem;
    background: url(../images/⑥理由解説部分/背景グループ.png) no-repeat 50% 50%/cover;
    clip-path: polygon(0 0, 0 30%, 100% 30%, 100% 0);
    width: 100%;
    height: 185rem;
  }
}

.p-explanation__main {
  position: relative;
  z-index: 1;
  width: 100%;
  height: 106.5rem;
  margin-bottom: -3.94vw;
}
@media screen and (max-width: 767px) {
  .p-explanation__main {
    height: 175rem;
    margin-top: 2.2rem;
    margin-bottom: -3rem;
  }
}
.p-explanation__main::before, .p-explanation__main::after {
  position: absolute;
  content: "";
  height: 18rem;
}
@media screen and (max-width: 767px) {
  .p-explanation__main::before, .p-explanation__main::after {
    height: 11rem;
  }
}
.p-explanation__main::before {
  top: 0;
  left: 0;
  background: url(../images/⑥理由解説部分/あしらい上.png) no-repeat 50% 50%/contain;
  width: 100%;
}
@media screen and (max-width: 767px) {
  .p-explanation__main::before {
    left: 50%;
    transform: translateX(-50%);
    background: url(../images/⑥理由解説部分/2x/アセット\ 6@2x.png) no-repeat 50% 50%/contain;
    width: calc(100% - 110px);
  }
}
.p-explanation__main::after {
  bottom: 0;
  left: 0;
  background: url(../images/⑥理由解説部分/あしらい下.png) no-repeat 50% 50%/contain;
  width: 100%;
}
@media screen and (max-width: 767px) {
  .p-explanation__main::after {
    left: 50%;
    transform: translateX(-50%);
    background: url(../images/⑥理由解説部分/2x/アセット\ 7@2x.png) no-repeat 50% 50%/contain;
    width: calc(100% - 110px);
  }
}

.p-explanation__title {
  font-size: 3.5rem;
  text-align: center;
  padding-top: 6rem;
  padding-left: 6rem;
  margin-bottom: 6.5rem;
}
@media screen and (max-width: 767px) {
  .p-explanation__title {
    font-size: 2.65rem;
    line-height: 150%;
    padding-top: 1.5rem;
    padding-left: 3.8rem;
  }
}

.p-arrow01 {
  width: 6rem;
}

.p-arrow02 {
  width: 5.7rem;
}
@media screen and (max-width: 767px) {
  .p-arrow02 {
    width: 4.7rem;
  }
}

.p-arrow03 {
  width: 5.7rem;
}
@media screen and (max-width: 767px) {
  .p-arrow03 {
    width: 4.7rem;
  }
}

.p-explanation__contents--1 {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  padding-left: 5rem;
  margin-top: -1rem;
}
@media screen and (max-width: 767px) and (max-width: 767px) {
  .p-explanation__contents--1 {
    display: flex;
    flex-direction: column;
    align-items: center;
    row-gap: 4rem;
    padding-left: 3rem;
    margin-top: -5rem;
  }
}

.p-contents01__img {
  flex-basis: 44%;
}
@media screen and (max-width: 767px) {
  .p-contents01__img {
    flex-basis: auto;
    width: 88%;
  }
}

.p-contents01__texts {
  flex-basis: 49%;
  margin-bottom: 2rem;
  margin-left: -2rem;
}

.p-contents01__maintext {
  font-size: 4.6rem;
  line-height: 150%;
  margin-bottom: 3.7rem;
}

.p-maintext01 {
  position: relative;
  width: -moz-fit-content;
  width: fit-content;
  height: 7.2rem;
  padding-top: 0.6rem;
  padding-left: 0.6rem;
  padding-right: 0.5rem;
}
.p-maintext01::before {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  content: "";
  z-index: -1;
  width: 100%;
  height: 100%;
  background: url(../images/⑥理由解説部分/①偏差値ごとに勉強法を変えていないから/言葉背景①.png) no-repeat 50% 50%/contain;
}

.p-maintext02 {
  position: relative;
  width: -moz-fit-content;
  width: fit-content;
  height: 7rem;
  padding-top: 0.4rem;
  padding-left: 0.9rem;
  padding-right: 1.2rem;
}
.p-maintext02::before {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  content: "";
  z-index: -1;
  width: 100%;
  height: 100%;
  background: url(../images/⑥理由解説部分/①偏差値ごとに勉強法を変えていないから/言葉背景②.png) no-repeat 50% 50%/contain;
}

.p-contents01__subtext {
  font-size: 3rem;
  line-height: 150%;
  letter-spacing: 0.01em;
  margin-left: -0.2rem;
}

.underline {
  position: relative;
  width: -moz-fit-content;
  width: fit-content;
}
.underline::before {
  position: absolute;
  bottom: 0.2em;
  left: 0;
  content: "";
  z-index: -1;
  width: 100%;
  height: 0.9rem;
}

.underline02 {
  position: relative;
  width: -moz-fit-content;
  width: fit-content;
}
.underline02::before {
  position: absolute;
  bottom: 0;
  left: 0;
  content: "";
  z-index: -1;
  width: 100%;
  height: 1.8rem;
}

.underline03 {
  position: relative;
  width: -moz-fit-content;
  width: fit-content;
}
.underline03::before {
  position: absolute;
  left: 0;
  content: "";
  z-index: -1;
  width: 100%;
  height: 2.2rem;
}

.line01::before {
  background: url(../images/⑥理由解説部分/①偏差値ごとに勉強法を変えていないから/黄色アンダーライン①.png) no-repeat 0% 50%/cover;
}

.line02::before {
  background: url(../images/⑥理由解説部分/①偏差値ごとに勉強法を変えていないから/黄色アンダーライン②.png) no-repeat 0% 50%/cover;
}

.line03::before {
  background: url(../images/⑥理由解説部分/③偏差値ごとに勉強法が変わる/黄色アンダーライン③.png) no-repeat 0% 50%/cover;
}

@media screen and (max-width: 767px) {
  .line04 {
    margin-top: 3rem;
  }
}
.line04::before {
  background: url(../images/⑥理由解説部分/③偏差値ごとに勉強法が変わる/黄色アンダーライン④.png) no-repeat 0% 50%/cover;
}

.line05::before {
  bottom: -0.6em;
  background: url(../images/⑦実績部分/黄色アンダーライン①.png) no-repeat 0% 50%/cover;
}

.line06::before {
  bottom: 0.23em;
  background: url(../images/⑦実績部分/黄色アンダーライン②.png) no-repeat 0% 50%/cover;
}

.line07::before {
  bottom: 0.33em;
  height: 1.2rem;
  background: url(../images/⑧実績②/アンダーライン黄色①.png) no-repeat 0% 50%/cover;
}
@media screen and (max-width: 767px) {
  .line07::before {
    bottom: 0.2em;
    height: 1.9rem;
  }
}

.line08::before {
  bottom: 0.34em;
  height: 0.8rem;
  background: url(../images/⑧実績②/アンダーライン黄色③.png) no-repeat 0% 50%/cover;
}

.line09::before {
  width: 98.5%;
  bottom: 0.22em;
  height: 0.8rem;
  background: url(../images/⑧実績②/アンダーライン黄色③.png) no-repeat 0% 50%/cover;
}

.p-explanation__contents--2 {
  display: flex;
  justify-content: space-between;
  padding-left: 8rem;
  padding-right: 8.5rem;
  margin-top: 5.5rem;
}
@media screen and (max-width: 767px) {
  .p-explanation__contents--2 {
    display: flex;
    flex-direction: column;
    align-items: center;
    row-gap: 6.5rem;
    padding-left: 9rem;
    padding-right: 7.5rem;
  }
}

.p-contents02__texts {
  margin-top: 2rem;
}

.p-contents02__maintext01 {
  margin-bottom: 0.7rem;
}
.p-contents02__maintext01 p {
  line-height: 180%;
}

.p-maintext01__01 {
  position: relative;
  display: inline-block;
  font-size: 2.2rem;
  margin-left: 1.5rem;
}

.fukidashi-text {
  position: absolute;
  top: -0.15em;
  right: -1em;
  font-size: 2.25rem;
  position: relative;
}
.fukidashi-text::before {
  position: absolute;
  bottom: -1.5em;
  left: 50%;
  transform: translateX(-50%);
  content: "";
  background: url(../images/⑥理由解説部分/2x/アセット\ 9_1@2x.png) no-repeat 50% 50%/contain;
  width: 135%;
  height: 5rem;
}

.p-maintext01__02 {
  font-size: 3.65rem;
}

.p-contents02__maintext02 {
  font-size: 3.1rem;
  letter-spacing: 0.03em;
}
@media screen and (max-width: 767px) {
  .p-contents02__maintext02 {
    font-size: 2.74rem;
  }
}
.p-contents02__maintext02 p {
  line-height: 2.2;
  height: 7rem;
  padding-top: 1.3rem;
  padding-left: 2rem;
}

.p-maintext02__first {
  position: relative;
  width: 55.2rem;
  padding-right: 1rem;
}
@media screen and (max-width: 767px) {
  .p-maintext02__first {
    width: 51rem;
  }
}
.p-maintext02__first::before {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  content: "";
  z-index: -1;
  width: 100%;
  height: 100%;
  background: url(../images/⑥理由解説部分/②アンケート/言葉背景③.png) no-repeat 50% 50%/contain;
}

.p-maintext02__second {
  position: relative;
  width: -moz-fit-content;
  width: fit-content;
  padding-right: 2.5rem;
}
@media screen and (max-width: 767px) {
  .p-maintext02__second {
    padding-right: 2.3rem;
  }
}
.p-maintext02__second::before {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  content: "";
  z-index: -1;
  width: 100%;
  height: 100%;
  background: url(../images/⑥理由解説部分/②アンケート/言葉背景④.png) no-repeat 50% 50%/contain;
}

.p-contents02__img {
  position: relative;
  width: 28.7rem;
  height: 28.7rem;
}
@media screen and (max-width: 767px) {
  .p-contents02__img {
    width: 38rem;
    height: 38rem;
  }
}
.p-contents02__img::after {
  position: absolute;
  content: "";
  top: 52%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 9rem;
  height: 9rem;
  background: url(../images/⑥理由解説部分/②アンケート/円グラフ-グラデ文字.png) no-repeat 50% 50%/contain;
}

.gray {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 100%;
  height: 100%;
}

.blue {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 100%;
  height: 100%;
  border-radius: 50%;
}
.blue .circle {
  transform: rotate(-90deg);
}
.blue .circle circle {
  fill: none;
  stroke-width: 17px;
  stroke: url("#grad-vertical");
}

.p-explanation__sub {
  text-align: center;
  font-size: 2.049vw;
  position: relative;
  margin-top: 12vw;
}
@media screen and (max-width: 767px) {
  .p-explanation__sub {
    font-size: 2.8rem;
    padding-bottom: 8rem;
    margin-top: 2.5rem;
  }
}
.p-explanation__sub::before {
  position: absolute;
  left: 50%;
  transform: translate(-50%, -50%);
  content: "";
}
.p-explanation__sub::before {
  top: 46%;
  z-index: -1;
  background: url(../images/⑥理由解説部分/2x/アセット\ 8@2x.png) no-repeat 50% 50%/contain;
  width: 101vw;
  height: 90vw;
}
@media screen and (max-width: 767px) {
  .p-explanation__sub::before {
    top: 68%;
    background: url(../images/⑥理由解説部分/2x/アセット\ 1@2x.png) no-repeat 50% 50%/contain;
    width: 130vw;
    height: 100rem;
  }
}

.ashirai {
  position: absolute;
  animation: fuwafuwa 5s ease infinite;
}

.ashirai01 {
  top: -9.5rem;
  left: 23.7rem;
}
@media screen and (max-width: 767px) {
  .ashirai01 {
    top: 13rem;
    left: 8rem;
  }
}

.ashirai02 {
  top: -2.5rem;
  left: 87.5rem;
}
@media screen and (max-width: 767px) {
  .ashirai02 {
    top: 18rem;
    left: 60rem;
  }
}

.ashirai03 {
  top: 6.3rem;
  left: 23.7rem;
}
@media screen and (max-width: 767px) {
  .ashirai03 {
    top: 30.5rem;
    left: 16.5rem;
  }
}

.ashirai04 {
  top: 12.5rem;
  left: 93.5rem;
}
@media screen and (max-width: 767px) {
  .ashirai04 {
    top: 16.5rem;
    left: 67.7rem;
  }
}

.ashirai05 {
  top: 12rem;
  left: 13rem;
}
@media screen and (max-width: 767px) {
  .ashirai05 {
    display: none;
  }
}

.ashirai06 {
  top: 14.7rem;
  left: 7.5rem;
}
@media screen and (max-width: 767px) {
  .ashirai06 {
    top: 32rem;
  }
}

.ashirai07 {
  top: 27rem;
  left: 105rem;
}
@media screen and (max-width: 767px) {
  .ashirai07 {
    top: 32rem;
    left: 64.2rem;
  }
}

.ashirai08 {
  top: 37.5rem;
  left: 11.5rem;
}
@media screen and (max-width: 767px) {
  .ashirai08 {
    top: 45rem;
  }
}

.ashirai09 {
  top: 39.5rem;
  left: 98.5rem;
}
@media screen and (max-width: 767px) {
  .ashirai09 {
    top: 46.5rem;
    left: 62rem;
  }
}

.ashirai10 {
  top: 53.7rem;
  left: 4.8rem;
}
@media screen and (max-width: 767px) {
  .ashirai10 {
    top: 61rem;
  }
}

.ashirai11 {
  top: 55rem;
  left: 105.5rem;
}
@media screen and (max-width: 767px) {
  .ashirai11 {
    top: 59.5rem;
    left: 71.2rem;
  }
}

.size1 {
  width: 4.6rem;
  height: 4.6rem;
}
@media screen and (max-width: 767px) {
  .size1 {
    width: 3.16rem;
    height: 3.16rem;
  }
}

.size2 {
  width: 3.5rem;
  height: 3.5rem;
}
@media screen and (max-width: 767px) {
  .size2 {
    width: 2.4rem;
    height: 2.4rem;
  }
}

.size2-5 {
  width: 3.2rem;
  height: 3.2rem;
}
@media screen and (max-width: 767px) {
  .size2-5 {
    width: 2.2rem;
    height: 2.2rem;
  }
}

.size3 {
  width: 3rem;
  height: 3rem;
}
@media screen and (max-width: 767px) {
  .size3 {
    width: 2.058rem;
    height: 2.058rem;
  }
}

.size4 {
  width: 2.2rem;
  height: 2.2rem;
}
@media screen and (max-width: 767px) {
  .size4 {
    width: 1.51rem;
    height: 1.51rem;
  }
}

.size5 {
  width: 2.45rem;
  height: 2.45rem;
}
@media screen and (max-width: 767px) {
  .size5 {
    width: 1.68rem;
    height: 1.68rem;
  }
}

.size6 {
  width: 1.85rem;
  height: 1.85rem;
}
@media screen and (max-width: 767px) {
  .size6 {
    width: 1.27rem;
    height: 1.27rem;
  }
}

.size7 {
  width: 1.55rem;
  height: 1.55rem;
}
@media screen and (max-width: 767px) {
  .size7 {
    width: 1.06rem;
    height: 1.06rem;
  }
}

@keyframes fuwafuwa {
  0% {
    transform: translate(-50%, 0) rotate(0deg);
  }
  25% {
    transform: translate(-50%, 1rem) rotate(-7deg);
  }
  50% {
    transform: translate(-50%, 0) rotate(0deg);
  }
  75% {
    transform: translate(-50%, 1rem) rotate(7deg);
  }
  100% {
    transform: translate(-50%, 0) rotate(0deg);
  }
}
.p-sub__title {
  line-height: 180%;
  letter-spacing: 0.03em;
}

.p-title__second {
  font-size: 2.758vw;
  margin: 0 auto;
}
@media screen and (max-width: 767px) {
  .p-title__second {
    font-size: 3.6rem;
  }
}

.p-title__third {
  font-size: 1.89vw;
}
@media screen and (max-width: 767px) {
  .p-title__third {
    font-size: 2.55rem;
  }
}

.p-sub__text {
  line-height: 150%;
  letter-spacing: 0.03em;
  margin-bottom: 3.5rem;
}
@media screen and (max-width: 767px) {
  .p-sub__text {
    line-height: 1.35;
    margin-bottom: 3rem;
  }
}

@media screen and (max-width: 767px) {
  .sub__text--1 {
    font-size: 2.62rem;
  }
}

.p-sub__images {
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: 56.5rem;
  margin: 2rem auto 4rem;
}
@media screen and (max-width: 767px) {
  .p-sub__images {
    display: none;
  }
}
.p-sub__images div:last-child {
  margin-right: 0;
}

.p-sub__img {
  margin-right: -1.4rem;
}
@media screen and (max-width: 767px) {
  .p-sub__img {
    margin-right: -1.6rem;
  }
}

@media screen and (max-width: 767px) {
  .p-sub__images_sp {
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 35.5rem;
    margin: 1.5rem auto;
  }
  .p-sub__images_sp div:last-child {
    margin-right: 0;
  }
}

@media screen and (max-width: 767px) {
  .images02 {
    width: 36.5rem;
    margin-top: -2.7rem;
    margin-bottom: 5rem;
  }
  .images02 div:last-child {
    margin-right: 0.5rem;
  }
}

/* achieveセクション */
.p-achieve {
  position: relative;
  padding-top: 12vw;
}
@media screen and (max-width: 767px) {
  .p-achieve {
    padding-top: 9.5rem;
    margin-top: -5rem;
  }
}
.p-achieve::before {
  position: absolute;
  top: 0;
  left: 0;
  content: "";
  background: url(../images/⑦実績部分/格子背景.png) no-repeat 50% 50%/cover;
  width: 100%;
  height: 210rem;
}
@media screen and (max-width: 767px) {
  .p-achieve::before {
    height: 285rem;
  }
}

.p-achieve__title {
  width: 81.5%;
  font-size: 4.3rem;
  letter-spacing: 0.03em;
  position: relative;
  margin: 4vw auto 0;
}
@media screen and (max-width: 767px) {
  .p-achieve__title {
    width: 100%;
    font-size: 3.35rem;
    text-align: center;
    margin: 4.5rem auto 0;
  }
}
.p-achieve__title::before {
  position: absolute;
  top: 0;
  right: -2rem;
  content: "";
  background: url(../images/⑦実績部分/あしらいグループ.png) no-repeat 50% 50%/contain;
  width: 18rem;
  height: 39rem;
}
.p-achieve__title::after {
  position: absolute;
  top: 24.5rem;
  right: 6rem;
  content: "";
  z-index: 1;
  background: url(../images/①FV/星-青.png) no-repeat 50% 50%/contain;
  width: 1.55rem;
  height: 1.55rem;
  transform: rotate(15deg);
}
.p-achieve__title p {
  line-height: 120%;
}

.p-achieve__title--second {
  font-size: 6rem;
  margin-top: 2rem;
}
@media screen and (max-width: 767px) {
  .p-achieve__title--second {
    font-size: 4.674rem;
    margin-top: 1.5rem;
  }
}

.p-achieve__title--third {
  font-size: 5.8rem;
  margin-top: -3.8rem;
}
@media screen and (max-width: 767px) {
  .p-achieve__title--third {
    font-size: 4.519rem;
    margin-top: 0;
  }
}
@media screen and (max-width: 767px) {
  .p-achieve__title--third span {
    margin-top: 1rem;
  }
}
.p-achieve__title--third span img {
  width: 28.5rem;
  height: 12.5rem;
  vertical-align: -0.5em;
  margin-left: 2rem;
}
@media screen and (max-width: 767px) {
  .p-achieve__title--third span img {
    width: 24.5rem;
    height: 11.5rem;
    margin-left: 0;
  }
}

.border02 {
  color: #fff;
  background: url(../images/⑦実績部分/勉強法四角.png) no-repeat 50% 50%/contain;
  width: -moz-fit-content;
  width: fit-content;
  height: 6.8rem;
  padding: 0.6rem 0.3rem 0 0.3rem;
  margin-right: 0.5rem;
}
@media screen and (max-width: 767px) {
  .border02 {
    height: 6.3rem;
    padding: 0.9rem 0.3rem 0 0.3rem;
    margin-right: 0.3rem;
  }
}

.border-adjust {
  margin-right: 1rem;
}
@media screen and (max-width: 767px) {
  .border-adjust {
    margin-right: 0.7rem;
  }
}

.p-achieve__text {
  width: 81.5%;
  text-align: center;
  font-size: 3.2rem;
  margin: 7rem auto 0;
}

@media screen and (max-width: 767px) {
  .p-achieve__text_sp {
    width: 100%;
    text-align: center;
    font-size: 2.7rem;
    margin: 6rem auto 0;
  }
  .p-achieve__text_sp p {
    margin-bottom: 7rem;
  }
}

.p-achieve__contents {
  position: relative;
  z-index: 2;
  margin: 10rem auto 0;
}

.p-contents__title {
  width: -moz-fit-content;
  width: fit-content;
  font-size: 3.85rem;
  letter-spacing: 0.03em;
  position: relative;
  z-index: 1;
  padding: 1rem 1rem 0 6rem;
  margin: 0 auto -1.5rem;
}
@media screen and (max-width: 767px) {
  .p-contents__title {
    font-size: 4.5rem;
    padding: 1rem 1.2rem 0 6.7rem;
    margin: 0 auto -0.2rem;
  }
}
.p-contents__title::before {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  content: "";
  z-index: -1;
  background: url(../images/⑦実績部分/小見出し背景のみ.png) no-repeat 50% 50%/contain;
  width: 100%;
  height: 15rem;
}

.p-achieve__content {
  display: grid;
  grid-template-columns: repeat(2, 2fr);
  gap: 0.85rem;
}
@media screen and (max-width: 767px) {
  .p-achieve__content {
    grid-template-columns: 1fr;
  }
}

.p-content__item {
  background: url(../images/⑦実績部分/外枠.png) no-repeat 50% 50%/contain;
  height: 66rem;
  padding-top: 5.8rem;
}
@media screen and (max-width: 767px) {
  .p-content__item {
    height: 76.8rem;
    padding-top: 6.8rem;
  }
}

.item01 {
  transform: scale(-1, 1);
}

.p-item__img {
  width: 81.5%;
  margin: 0 auto;
}
@media screen and (max-width: 767px) {
  .p-item__img {
    width: 68%;
  }
}

.p-tap {
  width: 35.5%;
  margin: 1rem auto;
}
@media screen and (max-width: 767px) {
  .p-tap {
    width: 29.2%;
    margin: 1.2rem auto;
  }
}

.p-thought__title {
  font-size: 2.3rem;
  font-weight: 500;
  line-height: 180%;
  letter-spacing: 0.03em;
  color: #fff;
  height: 4.3rem;
  white-space: nowrap;
  padding-top: 0.2rem;
  margin-bottom: 0.5rem;
}
@media screen and (max-width: 767px) {
  .p-thought__title {
    font-size: 2.64rem;
    height: 5rem;
  }
}

.thought01 {
  font-size: 2.2rem;
  width: 95.5%;
  background: url(../images/⑦実績部分/女の子グラデあしらい①.png) no-repeat 50% 50%/cover;
  padding-left: 3rem;
  margin-left: 1.8rem;
}
@media screen and (max-width: 767px) {
  .thought01 {
    font-size: 2.55rem;
    width: 78.7%;
    padding-left: 3.5rem;
    margin-left: 9.15rem;
  }
}

.thought02 {
  width: 93.5%;
  background: url(../images/⑦実績部分/女の子グラデあしらい②.png) no-repeat 50% 50%/cover;
  padding-left: 3.3rem;
  margin-left: 2.9rem;
}
@media screen and (max-width: 767px) {
  .thought02 {
    width: 77.05%;
    padding-left: 3.9rem;
    margin-left: 10.4rem;
  }
}

.thought03 {
  width: 73%;
  background: url(../images/⑦実績部分/男の子グラデあしらい①.png) no-repeat 50% 50%/cover;
  padding-left: 4.8rem;
  margin-left: 0.6rem;
}
@media screen and (max-width: 767px) {
  .thought03 {
    width: 60.16%;
    padding-left: 5.5rem;
    margin-left: 7.1rem;
  }
}

.thought04 {
  width: 89.5%;
  background: url(../images/⑦実績部分/男の子グラデあしらい②.png) no-repeat 50% 50%/cover;
  padding-left: 4.8rem;
  margin-left: 0.6rem;
}
@media screen and (max-width: 767px) {
  .thought04 {
    width: 73.76%;
    padding-left: 5.5rem;
    margin-left: 7.1rem;
  }
}

.p-thought__text {
  font-weight: 600;
  letter-spacing: 0.03em;
  width: 81.5%;
  margin: 1.5rem auto 0;
}
@media screen and (max-width: 767px) {
  .p-thought__text {
    width: 67.5%;
    letter-spacing: 0.01em;
    margin: 1.6rem auto 0;
  }
}

.text01 {
  font-size: 1.74rem;
  line-height: 180%;
}
@media screen and (max-width: 767px) {
  .text01 {
    font-size: 2.01rem;
  }
}

.text02 {
  font-size: 1.69rem;
  line-height: 1.7;
  position: relative;
}
@media screen and (max-width: 767px) {
  .text02 {
    font-size: 1.98rem;
  }
}
.text02 .incidental {
  position: absolute;
  bottom: -2.5rem;
  right: 0;
}

.p-achieve__present {
  position: relative;
  z-index: 1;
}
.p-achieve__present::before {
  position: absolute;
  top: -33%;
  left: 50%;
  transform: translateX(-50%);
  content: "";
  background: url(../images/⑦実績部分/円グラデ背景.png) no-repeat 50% 50%/contain;
  width: 100%;
  height: 110rem;
}
@media screen and (max-width: 767px) {
  .p-achieve__present::before {
    top: -78%;
    width: 98.5%;
  }
}

.p-present__text {
  position: relative;
  z-index: 1;
  font-size: 3.8rem;
  line-height: 180%;
  letter-spacing: 0.03em;
  text-align: center;
  margin-top: 6rem;
}
@media screen and (max-width: 767px) {
  .p-present__text {
    font-size: 3rem;
    margin-top: 5rem;
  }
}

.p-present__text--1 {
  display: inline-block;
  white-space: nowrap;
  padding-left: 3rem;
  margin-bottom: 2rem;
}

.p-present__text--2 {
  font-size: 4.4rem;
  display: inline-block;
}
@media screen and (max-width: 767px) {
  .p-present__text--2 {
    font-size: 3.5rem;
  }
}

.p-present__text--3 {
  display: inline-block;
  padding-left: 3.5rem;
}

.p-present__submassage {
  position: relative;
  font-size: 2.05rem;
  letter-spacing: 0.03em;
  width: -moz-fit-content;
  width: fit-content;
  text-align: center;
  margin: 2.8rem auto 0;
}
@media screen and (max-width: 767px) {
  .p-present__submassage {
    font-size: 2.3rem;
    line-height: 150%;
    margin: 5rem auto 0;
  }
}
.p-present__submassage::before, .p-present__submassage::after {
  height: 1.8rem;
}
@media screen and (max-width: 767px) {
  .p-present__submassage::before, .p-present__submassage::after {
    height: 6rem;
    top: 48%;
  }
}
.p-present__submassage span {
  width: 2.8rem;
}
.p-present__submassage span img {
  vertical-align: -0.2em;
}

.p-present__banner {
  margin: 2rem auto 0;
}
@media screen and (max-width: 767px) {
  .p-present__banner {
    margin: 1.2rem auto 0;
  }
}

/* knowhowセクション */
.p-knowhow {
  position: relative;
  z-index: 1;
  overflow: hidden;
}
.p-knowhow::before, .p-knowhow::after {
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  content: "";
}
.p-knowhow::before {
  position: absolute;
  top: 0;
  z-index: -2;
  background: url(../images/⑧実績②/2x/アセット\ 8@2x.png) no-repeat 50% 0%/contain;
  filter: hue-rotate(60deg) saturate(1.5) brightness(1.2) opacity(0.7);
  width: 110vw;
  height: 150vw;
}
@media screen and (max-width: 767px) {
  .p-knowhow::before {
    top: 2.5rem;
    background: url(../images/⑧実績②/2x/アセット\ 3@2x.png) no-repeat 50% 0%/contain;
    z-index: -1;
  }
}
.p-knowhow::after {
  position: absolute;
  top: 4.2rem;
  z-index: -2;
  background: url(../images/⑧実績②/2x/アセット\ 9@2x.png) no-repeat 50% 0%/contain;
  width: 110vw;
  height: 150vw;
}
@media screen and (max-width: 767px) {
  .p-knowhow::after {
    top: 5.5rem;
  }
}

.p-knowhow__title {
  font-size: 4.1rem;
  line-height: 160%;
  text-align: right;
  margin-top: 15rem;
}
@media screen and (max-width: 767px) {
  .p-knowhow__title {
    font-size: 3.2rem;
    text-align: center;
  }
}

.p-knowhow__contents-block {
  margin-bottom: 8rem;
}

.p-knowhow__point01 {
  position: relative;
  z-index: 1;
  width: 29.3rem;
  margin-top: -9rem;
  margin-left: 4.2rem;
}
@media screen and (max-width: 767px) {
  .p-knowhow__point01 {
    width: 27rem;
    margin-top: 0.5rem;
    margin-left: 5.4rem;
  }
}

.point01 {
  position: relative;
  background: url(../images/⑧実績②/枠四角①.png) no-repeat 50% 0%/contain;
  width: 100%;
  height: 88.5rem;
  font-size: 1.75rem;
  padding: 3rem 4rem 0 4rem;
  margin-top: -8.3rem;
}
@media screen and (max-width: 767px) {
  .point01 {
    background: none;
    border: solid 0.25rem #224960;
    height: auto;
    font-size: 2.39rem;
    padding: 3.5rem 5rem 0 5rem;
    margin-top: -7.4rem;
  }
}
.point01::before, .point01::after {
  position: absolute;
  content: "";
}
.point01::before {
  top: 21.5rem;
  right: -1rem;
  background: url(../images/⑧実績②/階段グループ.png) no-repeat 50% 50%/contain;
  clip-path: polygon(0 100%, 0 30%, 90% 30%, 90% 100%);
  width: 61%;
  height: 70rem;
}
@media screen and (max-width: 767px) {
  .point01::before {
    display: none;
  }
}
.point01::after {
  top: 39.2rem;
  right: 26.3rem;
  z-index: 1;
  background: url(../images/⑧実績②/女の子イラスト.webp) no-repeat 50% 50%/contain;
  width: 20%;
  height: 28rem;
}
@media screen and (max-width: 767px) {
  .point01::after {
    display: none;
  }
}

.p-point__class {
  display: flex;
  justify-content: space-between;
}
@media screen and (max-width: 767px) {
  .p-point__class {
    display: flex;
    flex-direction: column;
  }
}

.p-class__text {
  line-height: 150%;
  margin-top: 3.3rem;
}

.p-class__text--emphasis {
  font-size: 2.7rem;
  color: #fff;
  width: -moz-fit-content;
  width: fit-content;
  height: 4.8rem;
  display: flex;
  justify-content: center;
  align-items: center;
  padding-top: 0.25em;
  padding-left: 0.2em;
}
@media screen and (max-width: 767px) {
  .p-class__text--emphasis {
    font-size: 3.6rem;
    height: 6rem;
    margin-left: 0.3rem;
  }
}

.class__text02 {
  position: relative;
  padding-right: 0.2em;
}
.class__text02::before {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  content: "";
  z-index: -1;
  width: 100%;
  height: 100%;
  background: url(../images/⑧実績②/グラデ-言葉背景-①.png) no-repeat 50% 50%/contain;
}

.class__text03 {
  position: relative;
}
@media screen and (max-width: 767px) {
  .class__text03 {
    padding-right: 0.1em;
  }
}
.class__text03::before {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  content: "";
  z-index: -1;
  width: 100%;
  height: 100%;
  background: url(../images/⑧実績②/グラデ-言葉背景-②.png) no-repeat 50% 50%/contain;
}

.class__text04 {
  margin-top: 0.7rem;
}

.p-class__explain {
  margin-top: 3.2rem;
}

@media screen and (max-width: 767px) {
  .p-class__explain_sp {
    line-height: 1.4;
    margin-top: 4.5rem;
  }
}

.p-class__graph {
  width: 68.5%;
}
@media screen and (max-width: 767px) {
  .p-class__graph {
    width: 100%;
    margin: 3rem auto;
    margin-top: 3rem;
  }
}

.p-class__summary {
  line-height: 180%;
  display: flex;
  flex-direction: column;
  row-gap: 3.2rem;
}
@media screen and (max-width: 767px) {
  .p-class__summary {
    row-gap: 4rem;
  }
}
.p-class__summary div p {
  line-height: 2.2;
}
@media screen and (max-width: 767px) {
  .p-class__summary div p {
    line-height: 1.7;
  }
}

@media screen and (max-width: 767px) {
  .p-summary01_sp {
    line-height: 180%;
    margin-top: 4rem;
  }
  .p-summary01_sp p {
    margin-bottom: 0.2rem;
  }
}

@media screen and (max-width: 767px) {
  .p-summary02_sp {
    margin-top: 2rem;
    margin-bottom: 0.5rem;
  }
  .p-summary02_sp p {
    margin-bottom: 1rem;
  }
}

@media screen and (max-width: 767px) {
  .line_adjust {
    line-height: 2.4;
  }
}

@media screen and (max-width: 767px) {
  .ls_adjust {
    letter-spacing: -0.01em;
  }
}

@media screen and (max-width: 767px) {
  .p-point01__illust {
    position: relative;
    width: 105%;
    margin-top: -9.8rem;
    margin-left: 1rem;
    margin-bottom: 0.5rem;
  }
  .p-point01__illust img {
    clip-path: polygon(0 100%, 0 26%, 89% 26%, 89% 100%);
  }
  .p-point01__illust::before {
    position: absolute;
    top: 44.5%;
    left: 43%;
    transform: translate(-50%, -50%);
    content: "";
    z-index: 1;
    background: url(../images/⑧実績②/女の子イラスト.webp) no-repeat 50% 50%/contain;
    width: 50%;
    height: 45.5%;
  }
}

.p-knowhow__point02 {
  position: relative;
  width: 32.5rem;
  margin: -6.9rem 4.2rem 0 auto;
}
@media screen and (max-width: 767px) {
  .p-knowhow__point02 {
    width: 29.8rem;
    margin: -4.8rem 5.4rem 0 auto;
  }
}

.point02 {
  position: relative;
  z-index: -1;
  background: url(../images/⑧実績②/枠四角②.png) no-repeat 50% 0%/contain;
  width: 100%;
  height: 45rem;
  font-size: 1.85rem;
  display: flex;
  justify-content: center;
  align-items: center;
  padding-left: 10rem;
  margin-top: -8.4rem;
}
@media screen and (max-width: 767px) {
  .point02 {
    background: none;
    border: solid 0.2rem #224960;
    height: 96rem;
    font-size: 2.24rem;
    padding: 2rem 5.5rem 0 4rem;
    margin-top: -7.5rem;
  }
}
.point02::before {
  position: absolute;
  top: -23.4rem;
  left: 50%;
  transform: translateX(-50%);
  content: "";
  background: #F7F5F3 no-repeat 50% 0%/cover;
  width: 100vw;
  height: 8rem;
}
@media screen and (max-width: 767px) {
  .point02::before {
    display: none;
  }
}

.p-point02__contents {
  display: flex;
  -moz-column-gap: 3.2rem;
       column-gap: 3.2rem;
}
@media screen and (max-width: 767px) {
  .p-point02__contents {
    flex-direction: column-reverse;
    align-items: center;
    row-gap: 3.5rem;
  }
}

.p-point02__img {
  width: 37%;
}
@media screen and (max-width: 767px) {
  .p-point02__img {
    width: 86%;
    margin-left: 4rem;
    margin-top: -1.3rem;
  }
}

.p-point02__text-block {
  line-height: 180%;
  margin-top: -0.7rem;
}
@media screen and (max-width: 767px) {
  .p-point02__text-block {
    margin-top: 5.5rem;
  }
}

.p-point02__title {
  position: relative;
  font-size: 2.67rem;
  letter-spacing: 0.03em;
  width: -moz-fit-content;
  width: fit-content;
  height: 4.5rem;
  display: flex;
  justify-content: center;
  align-items: center;
  padding-top: 0.2em;
  padding-left: 0.3em;
  padding-right: 0.3em;
}
@media screen and (max-width: 767px) {
  .p-point02__title {
    display: none;
  }
}
.p-point02__title::before {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  content: "";
  z-index: -1;
  width: 100%;
  height: 100%;
  background: url(../images/⑧実績②/グラデ-言葉背景-③.png) no-repeat 50% 50%/cover;
}

@media screen and (max-width: 767px) {
  .p-point02__title_sp {
    position: relative;
    font-size: 3.25rem;
    letter-spacing: 0.03em;
    width: -moz-fit-content;
    width: fit-content;
    height: 5.4rem;
    display: flex;
    justify-content: center;
    align-items: center;
    padding-top: 0.1em;
    padding-left: 0.3em;
    padding-right: 0.4em;
    margin-bottom: 0.4rem;
    margin-left: -0.5rem;
  }
  .p-point02__title_sp::before {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    content: "";
    z-index: -1;
    width: 100%;
    height: 100%;
    background: url(../images/⑧実績②/グラデ-言葉背景-③.png) no-repeat 50% 50%/cover;
  }
}

.p-point02__submassage {
  margin-top: 3.8rem;
  margin-left: 0.7rem;
}
@media screen and (max-width: 767px) {
  .p-point02__submassage {
    margin-top: 4.7rem;
  }
}
.p-point02__submassage p {
  position: relative;
}
.p-point02__submassage p::before {
  width: 2.4rem;
  height: 2.4rem;
}
@media screen and (max-width: 767px) {
  .p-point02__submassage p::before {
    width: 3rem;
    height: 3rem;
  }
}

.p-submassage__check {
  padding-left: 1.4em;
  margin-left: 0.1em;
}
@media screen and (max-width: 767px) {
  .p-submassage__check {
    padding-left: 1.6em;
    margin-left: 0;
  }
}

.p-point02__massage {
  margin-top: 3.4rem;
}
.p-point02__massage p {
  margin-bottom: 0.5rem;
}

.point02__massage02 {
  font-size: 2.22rem;
  letter-spacing: -0.03em;
}

.p-present02 {
  background: url(../images/⑨CTAバナー②-フッター/バナー背景.png) no-repeat 50% 50%/contain;
  width: 100%;
  height: 81rem;
  position: relative;
  z-index: -2;
  padding-top: 9rem;
  padding-left: 9.7rem;
  margin-bottom: 5rem;
}
@media screen and (max-width: 767px) {
  .p-present02 {
    height: auto;
    background: #009cff;
    border-radius: 3rem;
    padding: 8.5rem 3rem 6.5rem 3.5rem;
    margin-bottom: 6rem;
  }
}
.p-present02::before {
  position: absolute;
  top: -5rem;
  left: 9.2rem;
  content: "";
  background: url(../images/⑨CTAバナー②-フッター/吹き出しセット.png) no-repeat 50% 50%/contain;
  width: 29.8rem;
  height: 13rem;
  animation: poyoAnime 2.5s ease forwards infinite;
}
@media screen and (max-width: 767px) {
  .p-present02::before {
    top: -5.4rem;
    left: 3.5rem;
  }
}

.p-present02__title {
  font-size: 3.83rem;
  line-height: 160%;
}
@media screen and (max-width: 767px) {
  .p-present02__title {
    font-size: 4.1rem;
  }
}
.p-present02__title img {
  width: 4.8rem;
  vertical-align: -0.2em;
  margin-right: 0.1em;
}
@media screen and (max-width: 767px) {
  .p-present02__title img {
    width: 5.1rem;
  }
}
.p-present02__title .border-white {
  position: relative;
  z-index: 1;
}
@media screen and (max-width: 767px) {
  .p-present02__title .border-white {
    font-size: 4.25rem;
    transform: scaleX(1.02);
  }
}
.p-present02__title .border-white::before {
  position: absolute;
  top: 43%;
  left: 50%;
  transform: translate(-50%, -50%);
  content: "";
  z-index: -1;
  background: #fff no-repeat 50% 50%/cover;
  width: 39rem;
  height: 4.8rem;
}
@media screen and (max-width: 767px) {
  .p-present02__title .border-white::before {
    width: 43rem;
    height: 5.1rem;
  }
}

.p-present02__contents {
  width: 55%;
  font-size: 2.1rem;
  line-height: 180%;
  letter-spacing: 0.03em;
}
@media screen and (max-width: 767px) {
  .p-present02__contents {
    width: 100%;
    font-size: 2.5rem;
    margin-left: 0.5rem;
  }
}

@media screen and (max-width: 767px) {
  .p-contents__middle {
    display: flex;
    justify-content: space-between;
  }
}

@media screen and (max-width: 767px) {
  .p-present02__img_sp {
    width: 21rem;
  }
}

@media screen and (max-width: 767px) {
  .present02__text {
    width: 60%;
  }
}

.present02__text01 {
  margin-top: 2rem;
}
@media screen and (max-width: 767px) {
  .present02__text01 {
    margin-top: 1rem;
  }
}

.present02__text02 {
  margin-top: -0.5rem;
  margin-left: -1rem;
}
@media screen and (max-width: 767px) {
  .present02__text02 {
    margin-top: -0.3rem;
    margin-left: -1.5rem;
  }
}

.present02__text03 {
  margin-top: -0.3rem;
}

.p-present02__check {
  margin-top: 3.5rem;
}
@media screen and (max-width: 767px) {
  .p-present02__check {
    font-size: 2.55rem;
    line-height: 160%;
    margin-top: 4.5rem;
  }
}
.p-present02__check p {
  position: relative;
  padding-left: 1.7em;
}
.p-present02__check p::before {
  width: 2.9rem;
  height: 2.9rem;
}
@media screen and (max-width: 767px) {
  .p-present02__check p::before {
    width: 3.7rem;
    height: 3.7rem;
    top: 45%;
  }
}
.p-present02__check p::after {
  width: 2.1rem;
  height: 2.1rem;
}
@media screen and (max-width: 767px) {
  .p-present02__check p::after {
    width: 2.7rem;
    height: 2.7rem;
    top: 45.3%;
  }
}

.p-present02__massage {
  margin-top: 2.5rem;
}
@media screen and (max-width: 767px) {
  .p-present02__massage {
    font-size: 2.1rem;
    line-height: 150%;
    margin-top: 6.5rem;
  }
  .p-present02__massage::before {
    bottom: -0.1em;
    height: 1.6em;
    background: linear-gradient(transparent 60%, #f9d358 40%);
  }
}

.p-present02__submassage {
  width: -moz-fit-content;
  width: fit-content;
  margin-top: 1rem;
  margin-left: 10rem;
}
@media screen and (max-width: 767px) {
  .p-present02__submassage {
    font-size: 1.88rem;
    margin-top: 1.5rem;
    margin-left: 13.8rem;
  }
}
.p-present02__submassage::before, .p-present02__submassage::after {
  height: 1.8rem;
}
@media screen and (max-width: 767px) {
  .p-present02__submassage::before, .p-present02__submassage::after {
    top: 50%;
    height: 1.6rem;
  }
}

.p-present02__banner {
  margin-top: 0.5rem;
}
@media screen and (max-width: 767px) {
  .p-present02__banner {
    margin-top: 0;
    margin-left: 2.5rem;
  }
}

.p-present02__img {
  position: absolute;
  bottom: 0;
  right: 3.5rem;
  width: 44rem;
}
@media screen and (max-width: 767px) {
  .p-present02__img {
    display: none;
  }
}

/* conceptセクション */
.p-concept {
  position: relative;
  z-index: -1;
  height: 90rem;
  background: #fff;
  font-size: 1.55rem;
  line-height: 180%;
  letter-spacing: 0.03em;
  padding-top: 14rem;
}
@media screen and (max-width: 767px) {
  .p-concept {
    background: linear-gradient(to bottom, #009cff 0%, #009cff 30%, #05d1ff 100%);
    height: auto;
    font-size: 2.3rem;
    padding-top: 8rem;
    padding-bottom: 4rem;
    margin-top: 3.2rem;
  }
}
.p-concept::before {
  position: absolute;
  top: 0;
  left: 0;
  content: "";
  z-index: 3;
  background: url(../images/⑨CTAバナー②-フッター/活動理念背景部分.png) no-repeat 50% 50%/cover;
  width: 100vw;
  height: 90rem;
}
@media screen and (max-width: 767px) {
  .p-concept::before {
    top: -5rem;
    height: 65rem;
    background: url(../images/⑨CTAバナー②-フッター/活動理念背景部分.png) no-repeat 50% 50%/cover;
    clip-path: polygon(0 0, 0 8%, 100% 8%, 100% 0);
  }
}

.p-concept__inner {
  position: relative;
  z-index: 3;
}

@media screen and (max-width: 767px) {
  .p-concept__img_sp {
    width: 42rem;
    margin: -3.5rem auto 4rem;
  }
}

.p-concept__title {
  font-size: 3.45rem;
  margin-bottom: 4.8rem;
}
@media screen and (max-width: 767px) {
  .p-concept__title {
    font-size: 5.05rem;
    width: 100%;
    text-align: center;
    margin-left: 1.3rem;
    margin-bottom: 7rem;
  }
}

@media screen and (max-width: 767px) {
  .p-concept__text {
    padding-left: 1rem;
    margin: 0 auto;
  }
}
.p-concept__text p {
  margin-bottom: 2.6rem;
}
@media screen and (max-width: 767px) {
  .p-concept__text p {
    margin-bottom: 4rem;
  }
}

.p-concept__img {
  position: absolute;
  top: -0.8rem;
  right: 1.3rem;
  width: 25rem;
}
@media screen and (max-width: 767px) {
  .p-concept__img {
    display: none;
  }
}

/* footer */
.p-footer {
  position: relative;
  height: 24.5rem;
  padding-top: 9.5rem;
}
@media screen and (max-width: 767px) {
  .p-footer {
    height: 27.6rem;
  }
}
.p-footer .p-footer__logo {
  position: absolute;
  top: 54%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 27.8rem;
}
@media screen and (max-width: 767px) {
  .p-footer .p-footer__logo {
    top: 71.9%;
    left: 21.2%;
    width: 19.4rem;
  }
}

.p-footer__inner {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
}
@media screen and (max-width: 767px) {
  .p-footer__inner {
    position: relative;
  }
}

.p-footer__sns {
  display: flex;
  flex-direction: column;
  align-items: center;
  row-gap: 1rem;
}
@media screen and (max-width: 767px) {
  .p-footer__sns {
    position: absolute;
    top: -4.5rem;
    left: 6.4rem;
    row-gap: 0.8rem;
  }
}

.p-sns__massage {
  font-size: 1.7rem;
}
@media screen and (max-width: 767px) {
  .p-sns__massage {
    font-size: 1.43rem;
  }
}

.p-sns__logo {
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: 22rem;
}
@media screen and (max-width: 767px) {
  .p-sns__logo {
    width: 19.2rem;
    margin-left: 0.3rem;
  }
}

.p-logo__item {
  width: 6.5rem;
}
@media screen and (max-width: 767px) {
  .p-logo__item {
    width: 5.6rem;
  }
}
.p-logo__item img {
  transition: 0.3s;
}

.item-insta:hover {
  content: url(../images/⑨CTAバナー②-フッター/ホバー時Instagramアイコン.png);
}

.item-tiktok:hover {
  content: url(../images/⑨CTAバナー②-フッター/ホバー時TikTokアイコン.png);
}

.item-youtube:hover {
  content: url(../images/⑨CTAバナー②-フッター/ホバー時YouTubeアイコン.png);
}

.p-copyright {
  font-size: 1.55rem;
}
@media screen and (max-width: 767px) {
  .p-copyright {
    position: absolute;
    top: 12.6rem;
    right: 7.3rem;
    font-size: 2.15rem;
  }
}/*# sourceMappingURL=style.css.map */