@charset "utf-8";

/*----------------------------------------------------------
  lab-story
----------------------------------------------------------*/
/* #mv */
.lab-story #mv {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  width: calc(var(--vw, 1vw) * 100);
  height: calc(var(--vh, 1vh) * 100);
  opacity: 0;
  transition: opacity .8s cubic-bezier(0.55, 0.06, 0.68, 0.19);
}
.is-loaded.lab-story #mv {
  opacity: 1;
  transition-delay: .5s;
}
.lab-story .mv__logo {
  width: min(50vh, 22.0rem);
  transform: scale(0.95);
  transition: transform .8s cubic-bezier(0.39, 0.58, 0.57, 1);
}
.is-loaded.lab-story .mv__logo {
  transform: scale(1);
  transition-delay: .5s;
}
.lab-story .mv__down {
  color: #585a60;
}
.lab-story .mv__down::after,
.lab-story .mv__down::before {
  background-color: #585a60;
}
@media screen and (min-width: 768px) {
  .lab-story .mv__logo {
    width: 25.8rem;
  }
}

/* #l-main */
.lab-story #l-main .inner {
  text-align: center;
}
.lab-story .section__image {
  display: block;
  padding-block: 6.4rem 5.8rem;
}
@media screen and (min-width: 768px) {
  .lab-story .head__title {
    margin: 0;
    padding-bottom: 1.9rem;
  }
  .lab-story .section__image {
    padding-block: 9.5rem 9.0rem;
  }
}

/* #intro */
.lab-story #intro {
  padding-top: 4.3rem;
}
.lab-story #intro .head__ttl {
  font-size: 1.8rem;
}
.lab-story #intro .intro__text {
  padding-top: 4.2rem;
  font-size: 1.5rem;
}
.lab-story #intro .intro__text p+p {
  margin-top: 1.05em;
}
.lab-story #intro .intro__title {
  padding-block: 1.7rem 1.5rem;
  font-size: 2.0rem;
  font-weight: 700;
}
@media screen and (min-width: 768px) {
  .lab-story #intro {
    padding-top: 9.0rem;
  }
  .lab-story #intro .head__ttl {
    font-size: 2.4rem;
  }
  .lab-story #intro .intro__text {
    padding-top: 3.8rem;
    font-size: 1.8rem;
  }
  .lab-story #intro .intro__text p+p {
    margin-top: 0.85em;
  }
  .lab-story #intro .intro__title {
    font-size: 3.0rem;
  }
}

/* #concept */
.lab-story #concept .concept__text .head__title {
  margin: 0 -1em 1.2rem -1em;
}
.lab-story #concept .concept__text .head__title+p {
  font-size: 1.6rem;
  line-height: 1.5;
  font-weight: 500;
  letter-spacing: 0.05em;
  text-indent: 0.05em;
}
.lab-story #concept .concept__text p+.head__title {
  margin-top: 5.4rem;
}
@media screen and (min-width: 768px) {
  .lab-story #concept .concept__text .head__title {
    margin: 0 0 0.7rem;
  }
  .lab-story #concept .concept__text .head__title+p {
    font-size: 2.0rem;
  }
  .lab-story #concept .concept__text p+.head__title {
    margin-top: 7.6rem;
  }
}

/* #act */
.lab-story #act .act__text h3 {
  padding-top: 0.2rem;
  font-size: 1.8rem;
  letter-spacing: 0.1em;
  text-indent: 0.1em;
}
.lab-story #act .act__text p {
  margin-top: 0.8rem;
  letter-spacing: 0.05em;
  text-indent: 0.05em;
}
.lab-story #act .act__text .act__title {
  font-weight: 700;
}
.lab-story #act .act__text p+.act__title {
  padding-top: 2.5rem;
}
@media screen and (min-width: 768px) {
  .lab-story #act .act__text h3 {
    font-size: 2.4rem;
  }
  .lab-story #act .act__text p+.act__title {
    padding-top: 2.1rem;
  }
}

/* #symbol */
.lab-story #symbol {
  margin-bottom: 1.0rem;
}
.lab-story #symbol .symbol__title h3 {
  margin-top: -0.2rem;
  font-size: 2.4rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-indent: 0.1em;
}
.lab-story #symbol .symbol__title p {
  margin-top: -0.5rem;
  font-size: 1.4rem;
  letter-spacing: 0.05em;
  text-indent: 0.05em;
}
.lab-story #symbol .Symbol__image {
  width: 14.5rem;
  margin: 3.0rem auto;
}
@media screen and (min-width: 768px) {
  .lab-story #symbol {
    margin-bottom: 0;
  }
  .lab-story #symbol .symbol__title h3 {
    font-size: 3.6rem;
  }
  .lab-story #symbol .symbol__title p {
    margin-top: -1.2rem;
    font-size: 1.6rem;
  }
  .lab-story #symbol .Symbol__image {
    margin-bottom: 3.2rem;
  }
}
