.page-voice {
  overflow: hidden;
}
@media screen and (max-width: 767px) {
  .page-voice .under-mv__text::after {
    content: none;
  }
  .page-voice .under-mv__text span {
    position: relative;
  }
  .page-voice .under-mv__text span::after {
    background: url(../img/common/under-mv-rainbow.svg) no-repeat center center/cover;
    content: "";
    width: 59px;
    height: 33px;
    top: 50%;
    -webkit-transform: translateY(-10%);
            transform: translateY(-10%);
    right: -47px;
    position: absolute;
    z-index: -1;
  }
}

.voice__movie {
  margin-top: min(100px, 8vw);
}
@media screen and (max-width: 767px) {
  .voice__movie {
    margin-top: 64px;
  }
}

.voice__movie-top {
  margin: auto;
  position: relative;
  text-align: center;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}
.voice__movie-top video, .voice__movie-top iframe {
  max-width: min(646px, 51.68vw);
}
@media screen and (max-width: 767px) {
  .voice__movie-top video, .voice__movie-top iframe {
    max-width: 100%;
  }
}
.voice__movie-top::before {
  background: url("../img/common/car-green.svg") no-repeat center center/cover;
  content: "";
  position: absolute;
  width: min(189px, 15.12vw);
  height: min(134px, 10.72vw);
  left: max(-144px, -11.52vw);
  bottom: max(-24px, -1.92vw);
}
@media screen and (max-width: 767px) {
  .voice__movie-top::before {
    content: none;
  }
}
.voice__movie-top::after {
  background: url("../img/voice/voice-human-01.webp") no-repeat center center/cover;
  content: "";
  position: absolute;
  width: min(211px, 16.88vw);
  height: min(253px, 20.24vw);
  right: max(-106px, -8.48vw);
  bottom: 0px;
}
@media screen and (max-width: 767px) {
  .voice__movie-top::after {
    width: 97px;
    height: 117px;
    right: -14px;
    bottom: 0;
  }
}

.voice__movie-bottom {
  margin-top: min(70px, 5.6vw);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: min(80px, 6.4vw);
}
@media screen and (max-width: 767px) {
  .voice__movie-bottom {
    margin-top: 32px;
    gap: 32px;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}

.voice__movie-wrapper {
  max-width: min(560px, 44.8vw);
  width: 100%;
  aspect-ratio: 16/9;
  position: relative;
}
@media screen and (max-width: 767px) {
  .voice__movie-wrapper {
    max-width: 100%;
  }
}
.voice__movie-wrapper iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: 0;
}

.voice {
  margin-top: min(100px, 8vw);
  margin-bottom: min(50px, 4vw);
}
@media screen and (max-width: 767px) {
  .voice {
    margin-top: 64px;
    margin-bottom: 80px;
    margin-inline: auto;
    max-width: 420px;
  }
  .voice .inner {
    max-width: calc(400px + 10.66%);
  }
}

.voice__block {
  border-radius: 10px;
  background: #FFF;
  border: 2px solid #013F98;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: min(20px, 1.6vw);
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  position: relative;
  z-index: 1;
}
@media screen and (max-width: 767px) {
  .voice__block {
    gap: 16px;
    max-width: 303px;
  }
}
.voice__block::before {
  background: url("../img/common/voice-bubble-icon.svg") no-repeat center/cover;
  content: "";
  position: absolute;
  width: min(72px, 5.76vw);
  height: min(32px, 2.56vw);
  bottom: max(-30px, -2.4vw);
  left: min(20px, 1.6vw);
}
@media screen and (max-width: 767px) {
  .voice__block::before {
    background: url("../img/common/voice-bubble-icon-sp.svg") no-repeat center/cover;
    width: 46px;
    height: 34px;
    bottom: -32px;
    left: 20px;
  }
}
.voice__block:nth-child(2n)::before {
  left: auto;
  right: min(20px, 1.6vw);
  -webkit-transform: scale(-1, 1);
          transform: scale(-1, 1);
}
@media screen and (max-width: 767px) {
  .voice__block:nth-child(2n)::before {
    right: 20px;
  }
}
.voice__block + .voice__block {
  margin-top: min(10px, 0.8vw);
}
@media screen and (max-width: 767px) {
  .voice__block + .voice__block {
    margin-top: 48px;
  }
}
.voice__block:nth-of-type(1) {
  padding: min(32px, 2.56vw) 0 min(20px, 1.6vw) min(40px, 3.2vw);
}
@media screen and (min-width: 768px) {
  .voice__block:nth-of-type(1) {
    border: 2px solid #013F98;
    background: #FFF;
  }
}
@media screen and (max-width: 767px) {
  .voice__block:nth-of-type(1) {
    padding: 24px 24px 20px;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}
.voice__block:nth-of-type(1) .voice__img {
  max-width: min(308px, 24.64vw);
}
@media screen and (max-width: 767px) {
  .voice__block:nth-of-type(1) .voice__img {
    max-width: 100%;
  }
}
.voice__block:nth-of-type(1) .voice__text {
  font-size: min(40px, 3.2vw);
}
@media screen and (max-width: 767px) {
  .voice__block:nth-of-type(1) .voice__text {
    font-size: 20px;
  }
}
.voice__block:nth-of-type(1)::after {
  background: url("../img/common/car-yellow.svg") no-repeat center center/cover;
  content: "";
  position: absolute;
  width: min(236px, 18.88vw);
  height: min(159px, 12.72vw);
  left: max(-48px, -3.84vw);
  bottom: max(-88px, -7.04vw);
}
@media screen and (min-width: 768px) {
  .voice__block:nth-of-type(1)::after {
    -webkit-transform: scale(-1, 1);
            transform: scale(-1, 1);
  }
}
@media screen and (max-width: 767px) {
  .voice__block:nth-of-type(1)::after {
    width: 73px;
    height: 55px;
    left: auto;
    right: -18px;
    bottom: -8px;
  }
}
.voice__block:nth-of-type(2) {
  margin-left: auto;
  padding: min(20px, 1.6vw) min(20px, 1.6vw) min(13px, 1.04vw) min(30px, 2.4vw);
  gap: min(50px, 4vw);
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
}
@media screen and (max-width: 767px) {
  .voice__block:nth-of-type(2) {
    padding: 24px 24px 20px;
    gap: 16px;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}
.voice__block:nth-of-type(2) .voice__img {
  max-width: min(260px, 20.8vw);
}
@media screen and (max-width: 767px) {
  .voice__block:nth-of-type(2) .voice__img {
    max-width: 100%;
  }
}
.voice__block:nth-of-type(2) .voice__text {
  font-size: min(32px, 2.56vw);
}
@media screen and (max-width: 767px) {
  .voice__block:nth-of-type(2) .voice__text {
    font-size: 20px;
  }
}
.voice__block:nth-of-type(3) {
  margin-right: auto;
  margin-left: min(80px, 6.4vw);
  padding: min(46px, 3.68vw) min(100px, 8vw) min(32px, 2.56vw) min(55px, 4.4vw);
}
@media screen and (max-width: 767px) {
  .voice__block:nth-of-type(3) {
    padding: 18px 20px 20px;
    margin-left: 0;
  }
}
.voice__block:nth-of-type(3) .voice__text {
  font-size: min(24px, 1.92vw);
  max-width: min(600px, 48vw);
}
@media screen and (max-width: 767px) {
  .voice__block:nth-of-type(3) .voice__text {
    font-size: 16px;
    max-width: 100%;
  }
}
@media screen and (max-width: 767px) {
  .voice__block:nth-of-type(3) .voice__text {
    position: relative;
  }
  .voice__block:nth-of-type(3) .voice__text::before {
    background: url("../img/common/car-pink.svg") no-repeat center center/cover;
    content: "";
    position: absolute;
    width: 72px;
    height: 46px;
    left: -34px;
    top: -50px;
    -webkit-transform: scale(-1, 1);
            transform: scale(-1, 1);
  }
}
.voice__block:nth-of-type(3)::after {
  background: url("../img/voice/voice-human-02.webp") no-repeat center center/cover;
  content: "";
  position: absolute;
  width: min(207px, 16.56vw);
  height: min(265px, 21.2vw);
  right: max(-73px, -5.84vw);
  bottom: max(-80px, -6.4vw);
  z-index: -1;
}
@media screen and (max-width: 767px) {
  .voice__block:nth-of-type(3)::after {
    width: 101px;
    height: 127px;
    right: -45px;
    bottom: -70px;
  }
}
.voice__block:nth-of-type(4) {
  margin-top: min(20px, 1.6vw);
  margin-left: auto;
  margin-right: min(60px, 4.8vw);
  padding: min(24px, 1.92vw) min(26px, 2.08vw) min(48px, 3.84vw) min(30px, 2.4vw);
}
@media screen and (max-width: 767px) {
  .voice__block:nth-of-type(4) {
    margin-top: 48px;
    margin-right: 0;
    padding: 10px 20px 16px 20px;
    gap: 5px;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}
.voice__block:nth-of-type(4) .voice__text {
  font-size: min(24px, 1.92vw);
  max-width: min(562px, 44.96vw);
}
@media screen and (max-width: 767px) {
  .voice__block:nth-of-type(4) .voice__text {
    font-size: 16px;
    max-width: 100%;
  }
}
.voice__block:nth-of-type(4) .voice__img {
  max-width: min(308px, 24.64vw);
}
@media screen and (max-width: 767px) {
  .voice__block:nth-of-type(4) .voice__img {
    max-width: 100%;
  }
}
.voice__block:nth-of-type(4)::after {
  background: url("../img/common/car-pink.svg") no-repeat center center/cover;
  content: "";
  position: absolute;
  width: min(174px, 13.92vw);
  height: min(129px, 10.32vw);
  right: max(-117px, -9.36vw);
  bottom: min(10px, 0.8vw);
}
@media screen and (max-width: 767px) {
  .voice__block:nth-of-type(4)::after {
    content: none;
  }
}
.voice__block:nth-of-type(5) {
  margin-right: auto;
  padding: min(56px, 4.48vw) min(60px, 4.8vw) min(56px, 4.48vw) min(172px, 13.76vw);
}
@media screen and (min-width: 768px) {
  .voice__block:nth-of-type(5) {
    border: 2px solid #013F98;
    background: #FFF;
  }
}
@media screen and (max-width: 767px) {
  .voice__block:nth-of-type(5) {
    margin-top: 45px;
    padding: 28px 20px 20px 20px;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}
.voice__block:nth-of-type(5) .voice__text {
  font-size: min(32px, 2.56vw);
}
@media screen and (max-width: 767px) {
  .voice__block:nth-of-type(5) .voice__text {
    font-size: 20px;
    position: relative;
  }
  .voice__block:nth-of-type(5) .voice__text::before {
    content: "";
    position: absolute;
    background: url("../img/common/voice-bubble-icon-sp.svg") no-repeat center/cover;
    width: 46px;
    height: 34px;
    bottom: -52px;
    left: 4px;
  }
}
.voice__block:nth-of-type(5)::before {
  background: url("../img/common/car-green.svg") no-repeat center center/cover;
  content: "";
  position: absolute;
  width: min(206px, 16.48vw);
  height: min(146px, 11.68vw);
  left: max(-45px, -3.6vw);
  bottom: max(-44px, -3.52vw);
}
@media screen and (max-width: 767px) {
  .voice__block:nth-of-type(5)::before {
    width: 70px;
    height: 48px;
    left: 5px;
    bottom: auto;
    top: -32px;
  }
}
.voice__block:nth-of-type(5)::after {
  background: url("../img/voice/voice-human-03.webp") no-repeat center center/cover;
  content: "";
  position: absolute;
  width: min(207px, 16.56vw);
  height: min(265px, 21.2vw);
  right: max(-73px, -5.84vw);
  bottom: max(-103px, -8.24vw);
  z-index: -1;
}
@media screen and (max-width: 767px) {
  .voice__block:nth-of-type(5)::after {
    width: 131px;
    height: 157px;
    right: -44px;
    bottom: -80px;
  }
}
.voice__block:nth-of-type(6) {
  margin-top: min(40px, 3.2vw);
  margin-left: auto;
  padding: min(20px, 1.6vw) min(60px, 4.8vw) min(18px, 1.44vw) min(66px, 5.28vw);
}
@media screen and (max-width: 767px) {
  .voice__block:nth-of-type(6) {
    margin-top: 40px;
    padding: 16px 20px;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}
.voice__block:nth-of-type(6) .voice__text {
  font-size: min(44px, 3.52vw);
  max-width: min(630px, 50.4vw);
}
@media screen and (max-width: 767px) {
  .voice__block:nth-of-type(6) .voice__text {
    font-size: 20px;
    max-width: 100%;
  }
}

.voice__img img {
  border-radius: 10px;
}
@media screen and (max-width: 767px) {
  .voice__img img {
    aspect-ratio: 255/170;
    -o-object-fit: cover;
       object-fit: cover;
  }
}

.voice__text {
  color: #013F98;
  font-weight: 700;
  line-height: normal;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  position: relative;
}