.discover,
.identity,
.growth,
.voice,
.song {
  position: sticky;
  overflow: hidden;
}

.discover {
  z-index: 1;
}

.identity {
  z-index: 2;
}

.growth {
  z-index: 3;
}

.voice {
  z-index: 4;
}

.song {
  z-index: 5;
}

.footer {
  position: relative;
  z-index: 10;
}

.song__wrap, .voice__wrap, .growth__wrap, .identity__wrap, .discover__wrap {
  border: 0.7vw solid #000;
  padding: 0 6.4vw;
}
@media (min-width: 768px) {
  .song__wrap, .voice__wrap, .growth__wrap, .identity__wrap, .discover__wrap {
    border-width: 0.2vw;
    padding: 0 12.8vw;
  }
}

.song__heading, .voice__heading, .growth__heading, .identity__heading, .discover__heading {
  text-align: center;
  line-height: 1;
  border-bottom: 1px solid #fff;
}

.song__heading-category, .voice__heading-category, .growth__heading-category, .identity__heading-category, .discover__heading-category {
  display: block;
  color: #fff;
  text-decoration: underline;
  letter-spacing: 0.05em;
  font-size: 4vw;
}
@media (min-width: 768px) {
  .song__heading-category, .voice__heading-category, .growth__heading-category, .identity__heading-category, .discover__heading-category {
    font-size: 2.6vw;
  }
}

.song__heading-en, .voice__heading-en, .growth__heading-en, .identity__heading-en, .discover__heading-en {
  display: inline-block;
  font-family: "EB Garamond", serif;
  font-size: 13.33vw;
  font-weight: 400;
  line-height: 1;
  margin: 0.2em 0 0.1em 0;
  color: #fff;
  letter-spacing: 0.04em;
  position: relative;
}
@media (min-width: 768px) {
  .song__heading-en, .voice__heading-en, .growth__heading-en, .identity__heading-en, .discover__heading-en {
    font-size: 10.21vw;
    margin-bottom: 1vw;
  }
}
.song__heading-en::before, .voice__heading-en::before, .growth__heading-en::before, .identity__heading-en::before, .discover__heading-en::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  transform: translateX(-88%) translateY(-32%);
  width: 8vw;
  height: 8vw;
  background-image: url("../img/common/deco1.svg");
  background-repeat: no-repeat;
  background-size: contain;
}
@media (min-width: 768px) {
  .song__heading-en::before, .voice__heading-en::before, .growth__heading-en::before, .identity__heading-en::before, .discover__heading-en::before {
    transform: translateX(-112%) translateY(-24%);
    width: 5vw;
    height: 5vw;
  }
}
.song__heading-en::after, .voice__heading-en::after, .growth__heading-en::after, .identity__heading-en::after, .discover__heading-en::after {
  content: "";
  position: absolute;
  bottom: 0;
  right: 0;
  transform: translateX(120%) translateY(-20%);
  width: 6.4vw;
  height: 6.4vw;
  background-image: url("../img/common/deco2.svg");
  background-repeat: no-repeat;
  background-size: contain;
}
@media (min-width: 768px) {
  .song__heading-en::after, .voice__heading-en::after, .growth__heading-en::after, .identity__heading-en::after, .discover__heading-en::after {
    transform: translateX(112%) translateY(-20%);
    width: 4.3vw;
    height: 4.3vw;
  }
}

.song__heading-ja, .voice__heading-ja, .growth__heading-ja, .identity__heading-ja, .discover__heading-ja {
  display: block;
  font-size: 5.3vw;
  color: #fff;
  letter-spacing: 0.05em;
  text-align: center;
}
@media (min-width: 768px) {
  .song__heading-ja, .voice__heading-ja, .growth__heading-ja, .identity__heading-ja, .discover__heading-ja {
    font-size: 2.1vw;
    text-align: left;
  }
}

.song__text, .voice__text, .growth__text, .identity__text, .discover__text {
  font-size: 3.6vw;
  line-height: 2;
  color: #fff;
  text-align: justify;
  padding: 1em 0 2em 0;
}
@media (min-width: 768px) {
  .song__text, .voice__text, .growth__text, .identity__text, .discover__text {
    font-size: 1.04vw;
    line-height: 2.5;
    padding: 1em 0 0 0;
    font-weight: 300;
  }
}
@media (min-width: 768px) {
  .song__text span, .voice__text span, .growth__text span, .identity__text span, .discover__text span {
    display: block;
  }
}

.song, .voice, .growth, .identity, .discover {
  background-color: #fff;
  background-repeat: no-repeat;
  background-position: top center;
  background-size: cover;
  padding: 2.7vw;
  overflow: hidden;
}
@media (min-width: 768px) {
  .song, .voice, .growth, .identity, .discover {
    padding: 1.41vw;
  }
}

.song__inner, .voice__inner, .growth__inner, .identity__inner, .discover__inner {
  padding: 12.8vw 0 0;
}
@media (min-width: 768px) {
  .song__inner, .voice__inner, .growth__inner, .identity__inner, .discover__inner {
    padding-top: 5.87vw;
  }
}

.song__body, .voice__body, .growth__body, .identity__body, .discover__body {
  margin-top: 1.5em;
  margin-bottom: 13.33vw;
}
@media (min-width: 768px) {
  .song__body, .voice__body, .growth__body, .identity__body, .discover__body {
    display: grid;
    width: 60.1vw;
    grid-template-columns: 26.98vw auto;
    column-gap: 2.29vw;
    margin: 4.56vw auto 5.42vw auto;
  }
}

@media (min-width: 768px) {
  .song__body-text, .voice__body-text, .growth__body-text, .identity__body-text, .discover__body-text {
    grid-column: 2;
    grid-row: 1;
    align-self: end;
    margin-bottom: -0.8em;
  }
}

@media (min-width: 768px) {
  .song__intro-image, .voice__intro-image, .growth__intro-image, .identity__intro-image, .discover__intro-image {
    grid-column: 1;
    grid-row: 1;
    align-self: end;
  }
}
.song__intro-image img, .voice__intro-image img, .growth__intro-image img, .identity__intro-image img, .discover__intro-image img {
  width: 100%;
}

.identity__preview-diagnose, .identity__preview-example {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.2em;
  width: fit-content;
}
.identity__preview-diagnose::before, .identity__preview-example::before, .identity__preview-diagnose::after, .identity__preview-example::after {
  content: "";
  position: absolute;
  top: 24%;
  width: 0.6em;
  height: 1.42em;
  background-image: url("../img/common/line.svg");
  background-repeat: no-repeat;
  background-size: contain;
}
.identity__preview-diagnose::before, .identity__preview-example::before {
  left: -0.7em;
}
.identity__preview-diagnose::after, .identity__preview-example::after {
  right: -0.7em;
  transform: scaleX(-1);
}

.hero {
  position: relative;
  width: 100%;
}
.hero__swiper {
  width: 100%;
  height: 100%;
}
.hero .swiper-slide {
  overflow: hidden;
}
.hero .swiper-slide picture,
.hero .swiper-slide img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center top;
}
.hero__content {
  position: absolute;
  bottom: 2.7vw;
  left: 0;
  z-index: 10;
  width: 100%;
}
@media (min-width: 768px) {
  .hero__content {
    bottom: 2.1vw;
  }
}
.hero__title {
  font-family: "EB Garamond", serif;
  font-size: 16vw;
  font-weight: 500;
  color: #fff;
  line-height: 1;
  margin: 0 auto;
  width: fit-content;
}
@media (min-width: 768px) {
  .hero__title {
    font-size: 9.5vw;
  }
}

.about {
  padding: 8.5vw 0 0;
  background-color: #fff;
  background-image: url("../img/top/bg-intro-sp.svg");
  background-repeat: no-repeat;
  background-position: top center;
  background-size: cover;
  position: relative;
}
@media (min-width: 768px) {
  .about {
    padding-top: 5vw;
  }
}
.about__scroll {
  margin: 0 auto;
  width: 14.9vw;
  padding-bottom: 8.5vw;
}
@media (min-width: 768px) {
  .about__scroll {
    width: 3.8vw;
    padding-bottom: 4.2vw;
  }
}
.about__inner {
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  align-items: center;
}
@media (min-width: 768px) {
  .about__inner {
    flex-direction: row;
  }
}
.about__image {
  display: none;
  flex-shrink: 0;
}
@media (min-width: 768px) {
  .about__image {
    display: block;
    position: absolute;
    bottom: 0;
  }
}
.about__image img {
  width: 100%;
  height: auto;
}
.about__image--left {
  order: 1;
  width: 40%;
  left: 0;
}
.about__image--right {
  order: 3;
  width: 41.7%;
  right: 0;
}
.about__image-sp {
  width: 94.6%;
  margin: -2.5vw auto 0;
}
.about__image-sp img {
  width: 100%;
  height: auto;
}
@media (min-width: 768px) {
  .about__image-sp {
    display: none;
  }
}
.about__content {
  order: 2;
  text-align: center;
}
@media (min-width: 768px) {
  .about__content {
    flex: 1;
  }
}
.about__heading {
  font-family: "EB Garamond", serif;
  font-size: 6.9vw;
  letter-spacing: 0.06em;
  line-height: 1.25;
}
@media (min-width: 768px) {
  .about__heading {
    font-size: 2.1vw;
  }
}
.about__text {
  font-size: 4vw;
  line-height: 2;
  letter-spacing: 0.08em;
  color: #000;
  text-align: justify;
  padding: 1em 9.3vw 0;
}
@media (min-width: 768px) {
  .about__text {
    font-size: 1vw;
    line-height: 2.75;
    text-align: center;
    font-weight: 300;
    padding: 2em 0 11em;
  }
  .about__text span {
    display: block;
    white-space: nowrap;
  }
}

.discover {
  background-image: url("../img/discover/bg-discover-sp.svg");
}
@media (min-width: 768px) {
  .discover {
    background-image: url("../img/discover/bg-discover.svg");
  }
}
.discover__heading-en {
  letter-spacing: 0;
}
@media (min-width: 768px) {
  .discover__heading-en {
    letter-spacing: 0.04em;
  }
}
.discover__body {
  margin-bottom: 13.87vw;
}
@media (min-width: 768px) {
  .discover__body {
    margin-bottom: 5.21vw;
  }
}
.discover__heading-ja {
  letter-spacing: 0;
}
@media (min-width: 768px) {
  .discover__heading-ja {
    letter-spacing: 0.05em;
  }
}
.discover__text {
  padding-top: 1em;
}
@media (min-width: 768px) {
  .discover__text-nowrap {
    white-space: nowrap;
  }
}
.discover__themes {
  margin-bottom: 13.33vw;
  display: flex;
  flex-direction: column;
  gap: 5.33vw;
}
@media (min-width: 768px) {
  .discover__themes {
    margin-bottom: 7.5vw;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 2.08vw;
  }
}

.discover-theme {
  display: flex;
  align-items: center;
  color: #fff;
  text-decoration: none;
  background-color: #000;
  padding: 3.2vw 0 3.2vw 3.2vw;
}
@media (min-width: 768px) {
  .discover-theme {
    padding: 1.35vw 0 1.35vw 1.25vw;
  }
}
.discover-theme__number {
  padding: 5.33vw 2.67vw 5.33vw 0;
  margin-right: 3.2vw;
  border-right: 1px solid rgba(255, 255, 255, 0.5);
  font-family: "EB Garamond", serif;
}
@media (min-width: 768px) {
  .discover-theme__number {
    padding: 0.83vw 1.25vw 0.83vw 0;
    margin-right: 0.63vw 0;
    margin-right: 1.35vw;
  }
}
.discover-theme__label {
  display: block;
  font-weight: 400;
  font-size: 2.4vw;
  line-height: 1;
}
@media (min-width: 768px) {
  .discover-theme__label {
    font-size: 0.94vw;
  }
}
.discover-theme__num {
  display: block;
  font-size: 8.53vw;
  font-weight: 400;
  line-height: 1;
  letter-spacing: 0.06em;
}
@media (min-width: 768px) {
  .discover-theme__num {
    font-size: 3.33vw;
  }
}
.discover-theme__text {
  flex: 1;
  font-size: 4vw;
  line-height: 1.6;
  letter-spacing: 0.05em;
}
@media (min-width: 768px) {
  .discover-theme__text {
    font-size: 1.35vw;
    letter-spacing: 0;
  }
}
.discover-theme__text span {
  font-size: 2.93vw;
  display: block;
  margin-bottom: 0.3em;
}
@media (min-width: 768px) {
  .discover-theme__text span {
    font-size: 1.04vw;
  }
}
.discover-theme__arrow {
  display: flex;
  align-items: center;
  padding-right: 5.33vw;
  flex-shrink: 0;
}
@media (min-width: 768px) {
  .discover-theme__arrow {
    padding-right: 1.35vw;
  }
}
.discover-theme__arrow img {
  width: auto;
  height: 6.4vw;
}
@media (min-width: 768px) {
  .discover-theme__arrow img {
    height: 2.29vw;
  }
}
.discover-theme--soon .discover-theme__text {
  letter-spacing: 0.05em;
}

.identity {
  background-image: url("../img/identity/bg-identity-sp.svg");
}
@media (min-width: 768px) {
  .identity {
    background-image: url("../img/identity/bg-identity.svg");
  }
}
@media (min-width: 768px) {
  .identity__body {
    width: 64.58vw;
    margin-bottom: 6.25vw;
  }
}
.identity__preview {
  position: relative;
  margin: 0 auto 13.33vw;
}
@media (min-width: 768px) {
  .identity__preview {
    margin: 0 auto 9.8vw;
  }
}
.identity__preview-lead {
  position: relative;
  z-index: 2;
  background-color: #000;
  color: #fff;
  text-align: center;
  font-size: 4.53vw;
  line-height: 1.4;
  letter-spacing: 0.05em;
  padding: 2.13vw 0;
  width: 64vw;
  margin: 0 auto -12.27vw;
}
@media (min-width: 768px) {
  .identity__preview-lead {
    font-size: 1.77vw;
    width: 50vw;
    padding: 1.2vw 0;
    margin: 0 auto -2vw;
  }
}
.identity__preview-lead::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translate(-50%, 100%);
  width: 0;
  height: 0;
  border-left: 2.13vw solid transparent;
  border-right: 2.13vw solid transparent;
  border-top: 4.27vw solid #000;
}
@media (min-width: 768px) {
  .identity__preview-lead::after {
    border-left-width: 0.73vw;
    border-right-width: 0.73vw;
    border-top-width: 1.56vw;
  }
}
.identity__preview-card {
  background-image: url("../img/identity/bg-preview-sp.svg");
  background-size: cover;
  padding: 25.07vw 5.33vw 13.33vw;
  border: 1px solid #000;
}
@media (min-width: 768px) {
  .identity__preview-card {
    background-image: url("../img/identity/bg-preview.svg");
    padding: 7.08vw 5.21vw 5.83vw;
    display: grid;
    grid-template-columns: 1fr auto 1fr;
    column-gap: 1.25vw;
  }
}
.identity__preview-example {
  display: flex;
  color: #000;
  font-size: 3.73vw;
  line-height: 1.5;
  letter-spacing: 0.05em;
  margin: 0 auto 2.4vw;
}
@media (min-width: 768px) {
  .identity__preview-example {
    font-size: 1.46vw;
    margin-bottom: 0.5em;
    grid-column: 1;
    grid-row: 1;
  }
}
.identity__preview-q {
  width: 10.67vw;
  height: auto;
}
@media (min-width: 768px) {
  .identity__preview-q {
    width: 4.17vw;
  }
}
.identity__preview-list {
  display: flex;
  flex-direction: column;
  gap: 3.2vw;
  margin-bottom: 5.33vw;
}
@media (min-width: 768px) {
  .identity__preview-list {
    gap: 1.25vw;
    margin-bottom: 0;
    grid-column: 1;
    grid-row: 2;
  }
}
.identity__preview-item {
  position: relative;
}
.identity__preview-item-frame {
  display: block;
  width: 100%;
  height: auto;
}
.identity__preview-item-content {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  gap: 3.47vw;
  padding: 0 4vw;
}
@media (min-width: 768px) {
  .identity__preview-item-content {
    gap: 1.35vw;
    padding: 0 1.5vw;
  }
}
.identity__preview-item-q {
  width: 4.53vw;
  height: auto;
  flex-shrink: 0;
}
@media (min-width: 768px) {
  .identity__preview-item-q {
    width: 1.7vw;
  }
}
.identity__preview-item-text {
  font-size: 3.2vw;
  font-weight: 700;
  line-height: 1.58;
  color: #00A73C;
  letter-spacing: 0.05em;
}
@media (min-width: 768px) {
  .identity__preview-item-text {
    font-size: 1.25vw;
  }
}
.identity__preview-arrow {
  display: block;
  width: 6.4vw;
  height: auto;
  margin: 6.4vw auto 3.2vw;
}
.identity__preview-arrow img {
  width: 100%;
}
@media (min-width: 768px) {
  .identity__preview-arrow {
    position: relative;
    width: 2.5vw;
    margin: 0 auto;
    grid-column: 2;
    grid-row: 1/span 2;
  }
  .identity__preview-arrow img {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%) rotate(-90deg);
  }
}
.identity__preview-diagnose {
  display: flex;
  color: #000;
  font-size: 3.73vw;
  letter-spacing: 0.05em;
  margin: 0 auto 2.4vw;
}
@media (min-width: 768px) {
  .identity__preview-diagnose {
    font-size: 1.46vw;
    margin-bottom: 0.5em;
    grid-column: 3;
    grid-row: 1;
  }
}
.identity__preview-result img {
  width: 100%;
  height: auto;
  display: block;
}
@media (min-width: 768px) {
  .identity__preview-result {
    grid-column: 3;
    grid-row: 2;
  }
}
.identity__btn {
  display: flex;
  align-items: center;
  width: 100%;
  aspect-ratio: 527/94;
  margin: 6.4vw auto 0;
  background-image: url("../img/identity/btn-identity-sp.svg");
  background-size: 100% 100%;
  background-repeat: no-repeat;
  color: #000;
  font-size: 4.27vw;
  text-decoration: none;
  justify-content: center;
  padding-left: 1.8em;
}
@media (min-width: 768px) {
  .identity__btn {
    width: 100%;
    aspect-ratio: 1072/94;
    background-image: url("../img/identity/btn-identity.svg");
    margin: 3.75vw auto 0;
    font-size: 1.67vw;
    grid-column: 1/-1;
  }
}

.growth {
  background-image: url("../img/growth/bg-growth-sp.svg");
}
@media (min-width: 768px) {
  .growth {
    background-image: url("../img/growth/bg-growth.svg");
  }
}
@media (min-width: 768px) {
  .growth__intro-image {
    align-self: auto;
    padding-top: 1vw;
  }
}
.growth__episodes {
  margin-top: 21.33vw;
  padding-bottom: 21.33vw;
}
@media (min-width: 768px) {
  .growth__episodes {
    margin-top: 8.33vw;
    padding-bottom: 8.33vw;
  }
}
.growth__episodes-section + .growth__episodes-section {
  margin-top: 0;
}
.growth__episodes-label {
  color: #fff;
  font-family: "EB Garamond", serif;
  font-size: 10.4vw;
  letter-spacing: 0.05em;
  margin-bottom: 6.4vw;
  border-bottom: 1px solid #fff;
  text-align: center;
  line-height: 1.3;
}
@media (min-width: 768px) {
  .growth__episodes-label {
    font-size: 4.58vw;
    margin-bottom: 3.13vw;
  }
}
.growth__episodes-arrow {
  width: 0;
  height: 0;
  border-top: 7.47vw solid #fff;
  border-left: 6.13vw solid transparent;
  border-right: 6.13vw solid transparent;
  margin: 16vw auto 12.27vw;
}
@media (min-width: 768px) {
  .growth__episodes-arrow {
    border-top-width: 2.92vw;
    border-left: 2.34vw solid transparent;
    border-right: 2.34vw solid transparent;
    margin: 6.25vw auto 5.21vw;
  }
}
.growth__episode-grid {
  display: grid;
  gap: 10.67vw;
}
@media (min-width: 768px) {
  .growth__episode-grid {
    gap: 2.71vw;
  }
}
@media (min-width: 768px) {
  .growth__episode-grid--before {
    grid-template-columns: repeat(3, 1fr);
  }
}
@media (min-width: 768px) {
  .growth__episode-grid--after {
    grid-template-columns: repeat(2, 1fr);
    gap: 4.58vw 5.21vw;
  }
}
.growth__episode-num {
  color: #fff;
  font-family: "EB Garamond", serif;
  font-size: 5.33vw;
  letter-spacing: 0.04em;
}
@media (min-width: 768px) {
  .growth__episode-num {
    font-size: 1.56vw;
  }
}
.growth__episode-image {
  position: relative;
}
.growth__episode-image img:first-child {
  width: 100%;
}
.growth__episode-play {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 11.73vw;
  height: 11.73vw;
  pointer-events: none;
}
@media (min-width: 768px) {
  .growth__episode-play {
    width: 2.92vw;
    height: 2.92vw;
  }
}
.growth__episode-body {
  margin-top: 3.2vw;
}
@media (min-width: 768px) {
  .growth__episode-body {
    margin-top: 1.77vw;
  }
}
.growth__episode-department {
  display: inline-block;
  color: #893CA0;
  background-color: #fff;
  font-size: 3.33vw;
  width: 21.87vw;
  padding: 0.4em 0;
  margin-bottom: 1.44em;
  text-align: center;
  line-height: 1;
}
@media (min-width: 768px) {
  .growth__episode-department {
    font-size: 0.94vw;
    width: 7.08vw;
    margin-bottom: 1em;
  }
}
.growth__episode-title {
  color: #fff;
  font-size: 4vw;
  letter-spacing: 0.08em;
  line-height: 1.43;
  margin-bottom: 1em;
}
@media (min-width: 768px) {
  .growth__episode-title {
    font-size: 1.35vw;
    margin-bottom: 0.8em;
  }
}
.growth__episode-text {
  color: #fff;
  font-size: 3.2vw;
  font-weight: 300;
  line-height: 2;
}
@media (min-width: 768px) {
  .growth__episode-text {
    font-size: 0.89vw;
  }
}

.voice {
  background-image: url("../img/voice/bg-voice-sp.svg");
}
@media (min-width: 768px) {
  .voice {
    background-image: url("../img/voice/bg-voice.svg");
  }
}
.voice__swiper {
  overflow: visible !important;
  width: 100vw;
  margin-left: calc(50% - 50vw);
  padding-bottom: 15.5vw !important;
}
@media (min-width: 768px) {
  .voice__swiper {
    padding-bottom: 4.2vw !important;
  }
}
.voice__swiper .swiper-pagination-bullet {
  background-color: #000;
  opacity: 1;
  width: 2vw;
  height: 2vw;
  margin: 0 2.4vw !important;
}
@media (min-width: 768px) {
  .voice__swiper .swiper-pagination-bullet {
    width: 0.5vw;
    height: 0.5vw;
    margin: 0 0.6vw !important;
  }
}
.voice__swiper .swiper-pagination-bullet-active {
  background-color: #fff;
}

.voice-card {
  position: relative;
  overflow: hidden;
}
.voice-card__image {
  width: 100%;
  aspect-ratio: 1/1;
}
.voice-card__image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.4s ease;
}
.voice-card__body {
  position: absolute;
  inset: 0;
  display: flex;
  flex-direction: column;
  padding: 2.7vw 0 3.7vw 2vw;
}
@media (min-width: 768px) {
  .voice-card__body {
    padding: 0.8vw 0 1.4vw 0.8vw;
  }
}
.voice-card__number {
  font-family: "EB Garamond", serif;
  font-size: 8.5vw;
  line-height: 1;
  margin-bottom: 0.4em;
}
@media (min-width: 768px) {
  .voice-card__number {
    font-size: 3.1vw;
  }
}
.voice-card__quote {
  letter-spacing: 0;
  margin-left: 0.5vw;
}
@media (min-width: 768px) {
  .voice-card__quote {
    margin-left: 0.2vw;
    font-weight: 300;
  }
}
.voice-card__quote span {
  display: block;
  width: fit-content;
  background-color: #000;
  font-size: 4vw;
  line-height: 1.4;
  color: #fff;
  margin-bottom: 1.1vw;
  padding: 0 0 0.1em 0.2em;
}
@media (min-width: 768px) {
  .voice-card__quote span {
    font-size: 1.1vw;
    margin-bottom: 0.4vw;
    letter-spacing: -0.05em;
  }
}
.voice-card__info {
  flex: 1;
  margin-left: 0.5vw;
}
@media (min-width: 768px) {
  .voice-card__info {
    margin-left: 0.3vw;
  }
}
.voice-card__name {
  font-size: 3.5vw;
  margin-bottom: 0.2em;
  border-bottom: 1px solid #000;
  padding-top: 0.4em;
  width: 58.3%;
}
@media (min-width: 768px) {
  .voice-card__name {
    font-size: 1vw;
    width: 43.6%;
  }
}
.voice-card__name span {
  font-size: 2.7vw;
}
@media (min-width: 768px) {
  .voice-card__name span {
    font-size: 0.6vw;
  }
}
.voice-card__dept {
  font-size: 3.2vw;
}
@media (min-width: 768px) {
  .voice-card__dept {
    font-size: 0.73vw;
  }
}
.voice-card__school {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 2.7vw;
}
@media (min-width: 768px) {
  .voice-card__school {
    font-size: 0.63vw;
  }
}
.voice-card__btn {
  appearance: none;
  border: none;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  gap: 1.5em;
  align-self: flex-start;
  font-family: "Oswald", sans-serif;
  font-size: 3.2vw;
  letter-spacing: 0.05em;
  padding: 0.5em 1em;
  margin-left: 0.5vw;
  background-color: #fff;
}
@media (min-width: 768px) {
  .voice-card__btn {
    font-size: 0.8vw;
    margin-left: 0.3vw;
  }
}
.voice-card__btn::after {
  content: "";
  display: block;
  background-image: url("../img/common/arrow.svg");
  background-repeat: no-repeat;
  width: 4.5vw;
  height: 1.8vw;
}
@media (min-width: 768px) {
  .voice-card__btn::after {
    width: 1.3vw;
    height: 0.5vw;
  }
}

.voice__nav {
  position: absolute;
  top: 38%;
  z-index: 10;
  width: 6.7vw;
  height: 6.7vw;
  display: flex;
  align-items: center;
  justify-content: center;
}
@media (min-width: 768px) {
  .voice__nav {
    width: 2.1vw;
    height: 2.1vw;
  }
}
.voice__nav img {
  height: auto;
}
.voice__nav--prev {
  left: 7vw;
}
.voice__nav--prev img {
  transform: rotate(180deg);
}
@media (min-width: 768px) {
  .voice__nav--prev {
    left: 34.4vw;
  }
}
.voice__nav--next {
  right: 7vw;
}
@media (min-width: 768px) {
  .voice__nav--next {
    right: 34.4vw;
  }
}

.song {
  background-image: url("../img/song/bg-song-sp.svg");
}
@media (min-width: 768px) {
  .song {
    background-image: url("../img/song/bg-song.svg");
  }
}
.song__heading-en {
  font-size: 10.13vw;
  letter-spacing: -0.01em;
}
@media (min-width: 768px) {
  .song__heading-en {
    font-size: 8.33vw;
  }
}
@media (min-width: 768px) {
  .song__body {
    width: 64.58vw;
    margin-bottom: 6.25vw;
  }
}
.song__btn {
  display: flex;
  align-items: center;
  width: 47.47vw;
  aspect-ratio: 356/81;
  margin: 13.33vw auto 13.33vw;
  background-image: url("../img/song/btn-song.svg");
  background-size: 100% 100%;
  background-repeat: no-repeat;
  color: #000;
  font-size: 3.47vw;
  text-decoration: none;
  justify-content: center;
  padding-left: 0;
}
@media (min-width: 768px) {
  .song__btn {
    width: 18.54vw;
    background-image: url("../img/song/btn-song.svg");
    margin: 3.75vw auto 6.25vw;
    font-size: 1.35vw;
    grid-column: 1/-1;
  }
}

.voice-modal {
  display: flex;
  position: fixed;
  inset: 0;
  z-index: 200;
  align-items: center;
  justify-content: center;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: opacity 0.4s, visibility 0.4s;
}
.voice-modal.is-open {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
}
.voice-modal__overlay {
  position: absolute;
  inset: 0;
}
.voice-modal__dialog {
  position: relative;
  z-index: 1;
  width: 100%;
  height: 100%;
  display: flex;
  flex-direction: column;
  overflow: hidden;
  background-image: url("../img/voice/bg-voice-modal-sp.jpg");
  background-size: cover;
  background-position: center;
  padding: 2.7vw;
}
@media (min-width: 768px) {
  .voice-modal__dialog {
    width: 96%;
    height: auto;
    max-height: 96vh;
    background-image: url("../img/voice/bg-voice-modal.jpg");
    padding: 1.6vw;
  }
}
@media (min-width: 1024px) {
  .voice-modal__dialog {
    width: 88%;
  }
}
@media (min-width: 1280px) {
  .voice-modal__dialog {
    width: 88%;
  }
}
@media (min-width: 1536px) {
  .voice-modal__dialog {
    width: 75%;
  }
}
.voice-modal__wrap {
  position: relative;
  flex: 1;
  min-height: 0;
  display: flex;
  flex-direction: column;
  border: 0.5vw solid #000;
}
@media (min-width: 768px) {
  .voice-modal__wrap {
    border-width: 0.2vw;
  }
}
.voice-modal__close {
  position: absolute;
  top: 5.3vw;
  right: 5.3vw;
  z-index: 20;
  width: 4.8vw;
  height: 4.8vw;
  color: #000;
}
.voice-modal__close::before, .voice-modal__close::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 100%;
  height: 1px;
  background: currentColor;
}
.voice-modal__close::before {
  transform: translate(-50%, -50%) rotate(45deg);
}
.voice-modal__close::after {
  transform: translate(-50%, -50%) rotate(-45deg);
}
@media (min-width: 768px) {
  .voice-modal__close {
    top: 2.9vw;
    right: 2.9vw;
    width: 1.6vw;
    height: 1.6vw;
  }
}
.voice-modal__body {
  flex: 1;
  min-height: 0;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
  padding: 6.4vw 6.4vw 0 6.4vw;
}
@media (min-width: 768px) {
  .voice-modal__body {
    padding: 5.2vw 5.8vw 0 5.2vw;
  }
}
.voice-modal__header {
  display: flex;
  flex-direction: column;
  margin-bottom: 11.2vw;
}
@media (min-width: 768px) {
  .voice-modal__header {
    display: grid;
    grid-template-columns: 1fr 56.8%;
    grid-template-rows: min-content 1fr;
    align-items: start;
    position: relative;
    margin-bottom: 2.5vw;
  }
}
.voice-modal__header-left {
  order: 1;
}
@media (min-width: 768px) {
  .voice-modal__header-left {
    grid-column: 1;
    grid-row: 1;
  }
}
.voice-modal__header-image {
  order: 2;
}
@media (min-width: 768px) {
  .voice-modal__header-image {
    grid-column: 2;
    grid-row: 1/3;
    margin-top: 0;
  }
}
.voice-modal__header-image img {
  width: 100%;
}
.voice-modal__number {
  display: block;
  font-family: "EB Garamond", serif;
  font-size: 9.3vw;
  font-weight: 500;
  line-height: 1;
  margin-bottom: 1em;
}
@media (min-width: 768px) {
  .voice-modal__number {
    font-size: 4.2vw;
    margin-bottom: 0.7em;
  }
}
.voice-modal__quote {
  margin-bottom: 4vw;
}
@media (min-width: 768px) {
  .voice-modal__quote {
    margin-bottom: 1.7vw;
  }
}
.voice-modal__quote span {
  display: block;
  width: fit-content;
  background-color: #000;
  padding: 0 0 0.1em 0.2em;
  font-size: 5.3vw;
  line-height: 1.6;
  color: #fff;
  margin-bottom: 1.6vw;
  white-space: nowrap;
}
@media (min-width: 768px) {
  .voice-modal__quote span {
    font-size: 1.7vw;
    margin-bottom: 0.7vw;
    letter-spacing: -0.05em;
  }
}
.voice-modal__profile {
  order: 3;
  margin-top: 2.1vw;
  width: 56.8%;
}
@media (min-width: 768px) {
  .voice-modal__profile {
    grid-column: 1;
    grid-row: 2;
    margin-top: 0;
  }
}
.voice-modal__name {
  font-size: 4vw;
  margin-bottom: 0.3em;
  border-bottom: 1px solid #000;
  padding-bottom: 0.2em;
}
@media (min-width: 768px) {
  .voice-modal__name {
    font-size: 1.04vw;
  }
}
.voice-modal__name span {
  font-size: 2.7vw;
}
@media (min-width: 768px) {
  .voice-modal__name span {
    font-size: 0.78vw;
  }
}
.voice-modal__dept {
  font-size: 3.2vw;
}
@media (min-width: 768px) {
  .voice-modal__dept {
    font-size: 0.89vw;
  }
}
.voice-modal__school {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 2.7vw;
}
@media (min-width: 768px) {
  .voice-modal__school {
    font-size: 0.78vw;
  }
}
.voice-modal__section-heading span {
  display: block;
  width: fit-content;
  background-color: #000;
  padding: 0 0 0.1em 0.2em;
  font-size: 4vw;
  line-height: 1.6;
  color: #fff;
  margin-bottom: 1.6vw;
  text-align: justify;
  letter-spacing: -0.05em;
}
@media (min-width: 768px) {
  .voice-modal__section-heading span {
    display: inline-block;
    font-size: 1.3vw;
    margin-bottom: 0.6vw;
    letter-spacing: initial;
  }
}
.voice-modal__section-heading span.pr-adjust {
  padding-right: 0.2em;
}
@media (min-width: 768px) {
  .voice-modal__section-heading span.pr-adjust {
    padding-right: 0em;
  }
}
.voice-modal__section-text {
  font-size: 3.2vw;
  line-height: 2;
  margin-bottom: 1.5em;
  text-align: justify;
}
@media (min-width: 768px) {
  .voice-modal__section-text {
    font-size: 0.9vw;
    margin-bottom: 1.2em;
    margin-bottom: 4em;
  }
}
.voice-modal__bottom {
  display: flex;
  flex-direction: column;
  gap: 13.3vw;
}
@media (min-width: 768px) {
  .voice-modal__bottom {
    flex-direction: row;
    align-items: flex-start;
    gap: 2.1vw;
    padding-bottom: 4vw;
  }
}
.voice-modal__bottom-image {
  width: 100%;
}
@media (min-width: 768px) {
  .voice-modal__bottom-image {
    width: 48.2%;
    flex-shrink: 0;
  }
}
.voice-modal__bottom-image img {
  width: 100%;
}
.voice-modal__bottom-content {
  flex: 1;
  min-width: 0;
}
.voice-modal__bottom-content .voice-modal__section {
  margin-bottom: 0;
}
.voice-modal__footer {
  display: flex;
  align-items: center;
  justify-content: center;
  column-gap: 6.7vw;
  border-top: 0.5vw solid #000;
  margin-inline: -6.4vw;
  padding: 4.8vw 0;
}
@media (min-width: 768px) {
  .voice-modal__footer {
    column-gap: 2vw;
    margin-inline: -5.2vw;
    padding: 2vw 0;
    border-width: 0.2vw;
  }
}
.voice-modal__nav {
  font-family: "Oswald", sans-serif;
  font-size: 3.3vw;
  letter-spacing: 0.05em;
  display: flex;
  align-items: center;
  gap: 1.1vw;
  transition: opacity 0.3s;
}
@media (min-width: 768px) {
  .voice-modal__nav {
    font-size: 0.8vw;
  }
}
.voice-modal__nav img {
  width: 4.3vw;
  height: auto;
}
@media (min-width: 768px) {
  .voice-modal__nav img {
    width: 1.4vw;
  }
}
.voice-modal__nav--back img {
  transform: rotate(180deg);
}
.voice-modal__nav:hover {
  opacity: 0.6;
}

.coming-soon {
  padding: 20vw 0 13.9vw;
}
@media (min-width: 768px) {
  .coming-soon {
    padding: 12.5vw 0 10.4vw;
  }
}
.coming-soon__inner {
  margin: 0 auto;
}
.coming-soon__heading {
  font-family: "EB Garamond", serif;
  font-size: 9.3vw;
  color: #fff;
  text-align: center;
  letter-spacing: 0.04em;
  line-height: 1;
}
@media (min-width: 768px) {
  .coming-soon__heading {
    font-size: 2.9vw;
  }
}
.coming-soon__text {
  font-size: 3.6vw;
  color: #fff;
  line-height: 2;
  letter-spacing: 0.05em;
  margin: 1.5em auto;
  width: fit-content;
}
@media (min-width: 768px) {
  .coming-soon__text {
    font-size: 1.3vw;
  }
}
.coming-soon__sns {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 8.5vw;
  margin-bottom: 14.4vw;
}
@media (min-width: 768px) {
  .coming-soon__sns {
    gap: 2.3vw;
    margin-bottom: 3.3vw;
  }
}
.coming-soon__sns-link {
  display: block;
  transition: opacity 0.3s;
}
.coming-soon__sns-link img {
  width: 8vw;
  height: 8vw;
}
@media (min-width: 768px) {
  .coming-soon__sns-link img {
    width: 2.2vw;
    height: 2.2vw;
  }
}
.coming-soon__sns-link:hover {
  opacity: 0.6;
}
.coming-soon__grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 4.8vw 4vw;
}
@media (min-width: 768px) {
  .coming-soon__grid {
    grid-template-columns: repeat(4, 1fr);
    gap: 2vw 1.1vw;
  }
}
.coming-soon__item picture,
.coming-soon__item img {
  width: 100%;
}/*# sourceMappingURL=top.css.map */