:root {
  --f-stack: "Stack Sans Text", sans-serif;
  --f-zen: "Zen Kaku Gothic New", sans-serif;
}

.pc-b {
  display: block !important;
}
@media screen and (max-width: 768px) {
  .pc-b {
    display: none !important;
  }
}

.sp-b {
  display: none !important;
}
@media screen and (max-width: 768px) {
  .sp-b {
    display: block !important;
  }
}

.pc-ib {
  display: inline-block !important;
}
@media screen and (max-width: 768px) {
  .pc-ib {
    display: none !important;
  }
}

.sp-ib {
  display: none !important;
}
@media screen and (max-width: 768px) {
  .sp-ib {
    display: inline-block !important;
  }
}

.pc-f {
  display: flex !important;
}
@media screen and (max-width: 768px) {
  .pc-f {
    display: none !important;
  }
}

.sp-f {
  display: none !important;
}
@media screen and (max-width: 768px) {
  .sp-f {
    display: flex !important;
  }
}

.bg-area {
  transition: color 0.3s, background 0.3s;
}
.bg-area.is-active {
  background: #262626;
  color: #fff;
}

.new-insight {
  padding-top: 16.6666666667vw;
  padding-bottom: 13.3333333333vw;
  color: #fff;
  background: linear-gradient(to bottom, #35ab84, #6bb247, #fbdd00);
}
@media screen and (max-width: 768px) {
  .new-insight {
    padding-block: 12rem 9rem;
  }
}
.new-insight__inner {
  width: 90%;
  margin: 0 auto;
}
.new-insight__title {
  width: max(20rem, 30vw);
  margin: 0 auto max(6rem, 10vw);
  position: relative;
}
.new-insight__sub-title {
  line-height: 1.5;
  letter-spacing: 0.04em;
  font-size: max(2.2rem, 2.6666666667vw);
  margin: 0 auto max(4rem, 5.3333333333vw);
  text-align: center;
  width: fit-content;
  font-weight: bold;
  color: transparent;
  background-image: linear-gradient(90deg, white 50%, rgba(255, 255, 255, 0.3) 50%);
  background-size: 200% 100%;
  background-position: 100% 0;
  -webkit-background-clip: text;
  background-clip: text;
}
.new-insight__sub-title::before, .new-insight__sub-title::after {
  content: "";
  display: block flow;
  inline-size: 0;
  block-size: 1px;
}
.new-insight__sub-title::before {
  margin-block-end: calc((1 - 1.5) * 0.5em);
}
.new-insight__sub-title::after {
  margin-block-start: calc((1 - 1.5) * 0.5em);
}
.new-insight__sub-title.is-active {
  animation: fill 1.5s ease forwards;
}
.new-insight__text {
  line-height: 2.4444444444;
  letter-spacing: 0.04em;
  font-size: max(1.4rem, 1.2vw);
}
.new-insight__text::before, .new-insight__text::after {
  content: "";
  display: block flow;
  inline-size: 0;
  block-size: 1px;
}
.new-insight__text::before {
  margin-block-end: calc((1 - 2.4444444444) * 0.5em);
}
.new-insight__text::after {
  margin-block-start: calc((1 - 2.4444444444) * 0.5em);
}
.new-insight__text span {
  font-weight: bold;
  text-align: center;
  margin-inline: auto;
  width: fit-content;
  display: block;
  color: transparent;
  background-image: linear-gradient(90deg, white 50%, rgba(255, 255, 255, 0.3) 50%);
  background-size: 200% 100%;
  background-position: 100% 0;
  -webkit-background-clip: text;
  background-clip: text;
}
.new-insight__text span.is-active {
  animation: fill 1.5s ease forwards;
}

.feature {
  padding-bottom: 4vw;
  padding-top: 8vw;
}
@media screen and (max-width: 768px) {
  .feature {
    padding-top: 6rem;
    padding-bottom: 0;
  }
}
.feature__sub-title {
  line-height: 1.5;
  letter-spacing: 0.04em;
  font-size: max(2rem, 2.6666666667vw);
  font-weight: bold;
  margin-bottom: max(3rem, 2.6666666667vw);
  transition-duration: 2s;
}
.feature__sub-title::before, .feature__sub-title::after {
  content: "";
  display: block flow;
  inline-size: 0;
  block-size: 1px;
}
.feature__sub-title::before {
  margin-block-end: calc((1 - 1.5) * 0.5em);
}
.feature__sub-title::after {
  margin-block-start: calc((1 - 1.5) * 0.5em);
}
.feature__text {
  line-height: 2;
  letter-spacing: 0.04em;
  font-size: max(1.4rem, 1.0666666667vw);
}
.feature__text::before, .feature__text::after {
  content: "";
  display: block flow;
  inline-size: 0;
  block-size: 1px;
}
.feature__text::before {
  margin-block-end: calc((1 - 2) * 0.5em);
}
.feature__text::after {
  margin-block-start: calc((1 - 2) * 0.5em);
}
.feature__top {
  margin: 0 auto max(4rem, 5.3333333333vw);
  width: 86.6666666667vw;
}
@media screen and (max-width: 768px) {
  .feature__top {
    width: 90%;
  }
}
.feature__fixed {
  width: 86.6666666667vw;
  margin-inline: auto;
}
@media screen and (max-width: 768px) {
  .feature__fixed {
    width: 90%;
  }
}
.feature__fixed-nav {
  display: flex;
  align-items: center;
  border-bottom: solid 1px #737373;
  gap: max(2rem, 2vw);
  margin-bottom: max(4rem, 4vw);
  padding-bottom: max(2rem, 2vw);
}
.feature__fixed-nav-item-link {
  line-height: 1;
  letter-spacing: 0.04em;
  margin-block: calc((1em - 1lh) / 2);
  font-size: max(1.6rem, 1.2vw);
  font-weight: bold;
  opacity: 0.3;
  transition: opacity 0.3s;
}
@media screen and (max-width: 768px) {
  .feature__fixed-nav-item-link {
    opacity: 1;
  }
}
.feature__fixed-nav-item-link.is-active {
  opacity: 1;
}
.feature__fixed-nav-item-link span {
  font-family: var(--f-stack);
  margin-right: max(0.5rem, 0.3333333333vw);
}
.feature__fixed-wrapper {
  position: relative;
  height: 34.6666666667vw;
}
@media screen and (max-width: 768px) {
  .feature__fixed-wrapper {
    height: auto;
  }
}
.feature__fixed-contents {
  display: flex;
  gap: 10vw;
  position: absolute;
  top: 0;
  left: 0;
}
@media screen and (max-width: 768px) {
  .feature__fixed-contents {
    gap: 5rem;
    flex-direction: column;
    position: static;
  }
}
.feature__fixed-content {
  display: flex;
  align-items: flex-end;
  gap: max(3rem, 2.6666666667vw);
}
@media screen and (max-width: 768px) {
  .feature__fixed-content {
    flex-direction: column-reverse;
    align-items: center;
  }
}
.feature__fixed-content-left {
  width: 23.3333333333vw;
}
@media screen and (max-width: 768px) {
  .feature__fixed-content-left {
    width: 100%;
  }
}
.feature__fixed-content-right {
  height: 34.6666666667vw;
}
@media screen and (max-width: 768px) {
  .feature__fixed-content-right {
    height: auto;
    max-width: 30rem;
  }
}
.feature__fixed-content-right img {
  height: 100%;
  width: auto;
}
@media screen and (max-width: 768px) {
  .feature__fixed-content-right img {
    height: auto;
    width: 100%;
  }
}
.feature__fixed-content-top {
  display: flex;
  align-items: center;
  margin-bottom: max(1.5rem, 2vw);
  gap: max(1rem, 0.6666666667vw);
  font-weight: bold;
  font-family: var(--f-stack);
  line-height: 1;
  letter-spacing: 0.04em;
  font-size: max(1.2rem, 0.8vw);
  position: relative;
}
.feature__fixed-content-top::before, .feature__fixed-content-top::after {
  content: "";
  display: block flow;
  inline-size: 0;
  block-size: 1px;
}
.feature__fixed-content-top::before {
  margin-block-end: calc((1 - 1) * 0.5em);
}
.feature__fixed-content-top::after {
  margin-block-start: calc((1 - 1) * 0.5em);
}
.feature__fixed-content-top::before {
  content: "";
  width: 2px;
  height: max(1.2rem, 0.8vw);
  display: block;
  background: linear-gradient(to bottom, #35ab84, #6bb247, #fbdd00);
}
.feature__fixed-content-title {
  font-weight: bold;
  line-height: 1;
  letter-spacing: 0.04em;
  font-size: max(2rem, 2.6666666667vw);
  margin-bottom: max(1.5rem, 2.3333333333vw);
}
.feature__fixed-content-title::before, .feature__fixed-content-title::after {
  content: "";
  display: block flow;
  inline-size: 0;
  block-size: 1px;
}
.feature__fixed-content-title::before {
  margin-block-end: calc((1 - 1) * 0.5em);
}
.feature__fixed-content-title::after {
  margin-block-start: calc((1 - 1) * 0.5em);
}
.feature__fixed-content-text {
  line-height: 2;
  letter-spacing: 0.04em;
  font-size: max(1.4rem, 1.0666666667vw);
}
.feature__fixed-content-text::before, .feature__fixed-content-text::after {
  content: "";
  display: block flow;
  inline-size: 0;
  block-size: 1px;
}
.feature__fixed-content-text::before {
  margin-block-end: calc((1 - 2) * 0.5em);
}
.feature__fixed-content-text::after {
  margin-block-start: calc((1 - 2) * 0.5em);
}

.back-section {
  padding-top: 8vw;
  padding-bottom: 10vw;
}
@media screen and (max-width: 768px) {
  .back-section {
    padding-top: 6rem;
    padding-bottom: 6rem;
  }
}
@media screen and (max-width: 768px) and (max-width: 768px) {
  .back-section--pt {
    padding-top: 10rem;
  }
}
.back-section--gray {
  background: #f2f2f2;
  margin-bottom: 13.3333333333vw;
}
@media screen and (max-width: 768px) {
  .back-section--gray {
    margin-bottom: 10rem;
  }
}
.back-section__inner {
  margin: 0 auto;
  width: 86.6666666667vw;
}
.back-section .scroll-area {
  width: 100%;
}
.back-section .scroll-area img {
  min-width: 100rem;
}
.back-section__sub-title {
  line-height: 1.35;
  letter-spacing: 0.04em;
  font-size: max(2rem, 2.6666666667vw);
  font-weight: bold;
  margin-bottom: max(2rem, 2.6666666667vw);
  transition-duration: 2s;
}
.back-section__sub-title::before, .back-section__sub-title::after {
  content: "";
  display: block flow;
  inline-size: 0;
  block-size: 1px;
}
.back-section__sub-title::before {
  margin-block-end: calc((1 - 1.35) * 0.5em);
}
.back-section__sub-title::after {
  margin-block-start: calc((1 - 1.35) * 0.5em);
}
.back-section__text {
  line-height: 2;
  letter-spacing: 0.04em;
  font-size: max(1.4rem, 1.0666666667vw);
  margin-bottom: max(4rem, 5.3333333333vw);
}
.back-section__text::before, .back-section__text::after {
  content: "";
  display: block flow;
  inline-size: 0;
  block-size: 1px;
}
.back-section__text::before {
  margin-block-end: calc((1 - 2) * 0.5em);
}
.back-section__text::after {
  margin-block-start: calc((1 - 2) * 0.5em);
}
.back-section__img-02 {
  display: block;
  margin: 0 auto;
  width: 73.3333333333vw;
}
@media screen and (max-width: 768px) {
  .back-section__img-02 {
    width: 100%;
  }
}

/*# sourceMappingURL=style.css.map */
