@font-face {
  font-family: "akaDora";
  src: url("../font/akaDora.otf") format("opentype");
}
.mv {
  background-color: #ffffff;
}
.mv.animation--is .mv__logo {
  opacity: 1;
}
.mv .c-inner {
  width: min(100%, 1150px);
}

.mv__content {
  position: relative;
  padding-top: 22px;
  padding-bottom: 28.6666666667vw;
}
@media (min-width: 768px) {
  .mv__content {
    padding-top: min(1.6vw, 16px);
    padding-bottom: min(8.2vw, 82px);
  }
}
.mv__content::before {
  content: "";
  position: absolute;
  display: block;
  background-image: url(../img/top/photo_mv.jpg);
  background-repeat: no-repeat;
  background-size: 100%;
  width: 144.5%;
  aspect-ratio: 2000/1320;
  bottom: 0;
  left: 50%;
}
@media (max-width: 767px) {
  .mv__content::before {
    margin-left: -72.25%;
  }
}
@media (min-width: 768px) {
  .mv__content::before {
    width: 100%;
    left: 0;
  }
}

.mv__logo {
  position: relative;
  width: 87.5%;
  margin-right: auto;
  margin-left: auto;
  opacity: 0;
  transition-property: opacity;
  transition-duration: 5s;
  transition-delay: 1s;
}
@media (min-width: 768px) {
  .mv__logo {
    width: 56.2%;
  }
}

.p-message {
  padding-top: clamp(33.5px, 4.1666666667vw, 75px);
}

.p-message__content {
  gap: clamp(35px, 3.8888888889vw, 70px);
}
@media (min-width: 768px) {
  .p-message__content {
    gap: clamp(20px, 2.2222222222vw, 40px);
  }
}

@media (min-width: 768px) {
  .p-message__box--left {
    flex: 1 1 300px;
    padding-top: clamp(29px, 3.2222222222vw, 58px);
  }
}

.p-message__title {
  margin-bottom: clamp(23.5px, 2.5vw, 45px);
}

@media (max-width: 767px) {
  .p-message__image {
    width: 50%;
    margin-right: auto;
    margin-left: auto;
  }
}

@media (min-width: 768px) {
  .p-message__box--right {
    flex: 1 1 520px;
  }
}

@media (min-width: 768px) {
  .p-message__heading {
    margin-right: -2em;
  }
}

.p-message__text-box {
  position: relative;
}
.p-message__text-box::before {
  content: "";
  position: absolute;
  display: block;
  background-image: url(../img/top/photo_message_02.png);
  background-repeat: no-repeat;
  background-size: 100%;
  width: 93.335%;
  aspect-ratio: 1120/1121;
  top: 68.2666666667vw;
  right: -18.33%;
}
@media (min-width: 768px) {
  .p-message__text-box::before {
    width: 107.695%;
    top: min(26.9306930693vw, 272px);
    right: -22.5%;
  }
}

.p-message__text {
  position: relative;
  margin-right: -2em;
  margin-bottom: clamp(30px, 2.6666666667vw, 48px);
  z-index: 1;
}
@media (min-width: 768px) {
  .p-message__text {
    margin-right: -6em;
  }
}

.p-message__author-name {
  position: relative;
  font-size: clamp(1.8rem, 0.9818181818rem + 1.6363636364vw, 3.6rem);
  line-height: clamp(3rem, 2.1818181818rem + 1.6363636364vw, 4.8rem);
}
@media (min-width: 768px) {
  .p-message__author-name {
    font-size: clamp(1.65rem, 0.9rem + 1.5vw, 3.3rem);
  }
}

.p-message__author-title {
  position: relative;
  font-family: "Yu Gothic", "Meiryo", sans-serif;
  font-size: clamp(1.1rem, 0.6rem + 1vw, 2.2rem);
  font-weight: 500;
  line-height: clamp(2rem, 1.0909090909rem + 1.8181818182vw, 4rem);
  margin-bottom: clamp(36.5px, 3.6111111111vw, 65px);
}
@media (min-width: 768px) {
  .p-message__author-title {
    font-size: clamp(0.6rem, 0.3272727273rem + 0.5454545455vw, 1.2rem);
  }
}

.p-message__button {
  width: 55%;
  margin-right: auto;
  margin-left: auto;
}
@media (min-width: 768px) {
  .p-message__button {
    width: 51.925%;
  }
}

.p-message2 {
  display: none;
  padding-top: clamp(63px, 7.2222222222vw, 130px);
}

.p-message2__content {
  gap: clamp(37.5px, 4.1666666667vw, 75px);
}
@media (min-width: 768px) {
  .p-message2__content {
    gap: clamp(12px, 1.3333333333vw, 24px);
  }
}

@media (min-width: 768px) {
  .p-message2__box--left {
    flex: 1 1 328px;
  }
}

@media (max-width: 767px) {
  .p-message2__image {
    width: 60%;
    margin-right: auto;
    margin-left: auto;
  }
}
@media (min-width: 768px) {
  .p-message2__image {
    margin-left: clamp(-36px, -2vw, -18px);
  }
}

@media (min-width: 768px) {
  .p-message2__box--right {
    flex: 1 1 508px;
  }
}

.p-message2__text {
  margin-right: -2em;
}

.insta {
  padding-top: clamp(66.5px, 7.3333333333vw, 132px);
}
.insta .c-inner {
  background-color: #ffffff;
  max-width: 860px;
  padding-top: clamp(15px, 1.6666666667vw, 30px);
  padding-right: clamp(24.5px, 2.7222222222vw, 49px);
  padding-bottom: clamp(25px, 2.7777777778vw, 50px);
  padding-left: clamp(24.5px, 2.7222222222vw, 49px);
}
@media (min-width: 768px) {
  .insta .c-inner {
    border-radius: clamp(10px, 1.1111111111vw, 20px);
    padding-top: clamp(26px, 2.8888888889vw, 52px);
    padding-right: clamp(11px, 1.2222222222vw, 22px);
    padding-bottom: clamp(11px, 1.2222222222vw, 22px);
    padding-left: clamp(11px, 1.2222222222vw, 22px);
  }
}

.insta__logo {
  width: 46.015%;
  margin-right: auto;
  margin-bottom: clamp(15.5px, 0.9444444444vw, 17px);
  margin-left: auto;
}
@media (min-width: 768px) {
  .insta__logo {
    width: 18.384%;
  }
}

.insta__icon {
  width: 15.955%;
  margin-right: auto;
  margin-bottom: clamp(14px, 2.5555555556vw, 46px);
  margin-left: auto;
}
@media (min-width: 768px) {
  .insta__icon {
    width: 6.129%;
  }
}

.insta__list {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: clamp(13px, 1.6666666667vw, 30px);
}