/* mv */

.mv {
  position: relative;
  aspect-ratio: 375 / 687;
  background: #b1bdc6;
}

.mv__img {
  opacity: 0;
  animation: fadeIn 1s forwards ease-out;
}

.mv__title {
  position: absolute;
  top: calc(257 / 687 * 100%);
  right: calc(11 / 375 * 100%);
  z-index: 2;
  width: calc(285 / 375 * 100%);
  opacity: 0;
  animation: fadeIn 1s 1s forwards ease-out;
}

.mv__logo {
  position: absolute;
  bottom: calc(14 / 687 * 100%);
  right: calc(14 / 375 * 100%);
  z-index: 2;
  width: calc(138 / 375 * 100%);
  opacity: 0;
  animation: fadeIn 1s 1s forwards ease-out;
}

@media (min-width: 801px) {
  .mv {
    aspect-ratio: 1512 / 800;
  }

  .mv__title {
    top: calc(74 / 800 * 100%);
    right: calc(66 / 1512 * 100%);
    width: calc(259 / 1512 * 100%);
  }

  .mv__logo {
    top: calc(74 / 800 * 100%);
    left: calc(83 / 1512 * 100%);
    width: calc(215 / 1512 * 100%);
  }
}

@keyframes fadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}

/* yodogawa */
.yodogawa {
  padding: 3.2rem 2.2rem;
  background: #fbfbe9;
}

.yodogawa__text {
  font-family: "Shuei KakuGo Gin M";
  font-size: 1.6rem;
  line-height: 2;
  letter-spacing: 0.02em;
}

@media (min-width: 801px) {
  .yodogawa {
    padding: 8rem 4rem;
    background: #fbfbe9;
  }

  .yodogawa__container {
    display: grid;
    justify-items: center;
  }

  .yodogawa__text {
    font-family: "Shuei KakuGo Gin B";
    font-size: 1.5rem;
    letter-spacing: 0;
  }
}

/* content */

.content {
  display: grid;
  gap: 3.2rem;
  grid-template-columns: minmax(0, 1fr);
  margin-top: 2rem;
}

.contentBlock {
  padding-inline: 1.5rem;
  font-size: 1.6rem;
  line-height: 2;
}

.contentBlock__name {
  font-family: "Shuei KakuGo Gin B";
  letter-spacing: -0.01em;
}

.contentBlock__text {
  font-family: "Shuei KakuGo Gin M";
  letter-spacing: 0.02em;
}

.contentBlock__text p + p {
  margin-top: 2em;
}

.content__credit {
  margin-block: 2.4rem;
  font-size: 1.4rem;
  letter-spacing: 0.03em;
  line-height: 2;
  text-align: center;
}

.content__more {
  margin-block: 2.4rem 5rem;
  font-size: 1.4rem;
  letter-spacing: 0.03em;
  line-height: 2;
  text-align: center;
}

@media (min-width: 801px) {
  .content {
    gap: 6.4rem;
    margin-top: 9.6rem;
    margin-inline: auto;
    max-width: 750px;
    width: var(--pc-width);
  }

  .contentBlock {
    display: grid;
    gap: 4.8rem;
    grid-template-columns: 12rem minmax(0, 1fr);
    padding-inline: 0;
  }

  .contentBlock__name {
    text-align: right;
  }

  .content__credit {
    margin-top: 4.8rem;
    margin-bottom: 2.4rem;
  }

  .content__more {
    margin-bottom: 7.2rem;
  }
}
