.mv {
  text-align: center;
  background-color: #c5e0d5;
  background-image: url(../img/top/mv_bg.jpg);
  background-size: contain;
  background-position: bottom center;
  background-repeat: no-repeat;
  position: relative;
  padding-block: 5px 21px;
}
.mv__jlc {
  position: absolute;
  top: 7px;
  left: 7px;
}
.mv__logo {
  margin-inline: auto;
}
.mv__logo--ptrn2 {
  padding-bottom: 0.8em;
}
.mv__nozoe {
  margin-top: -20px;
  margin-left: 13px;
}
.mv-name {
  padding: 16px 13px;
  background-color: #fff;
  border: 1px solid #3f3f3f;
  position: absolute;
  top: 176px;
  right: 32px;
}
.mv-name .m-animation-mask::before {
  animation-delay: 2s;
}
.mv-name::before, .mv-name::after {
  content: "";
  display: block;
  width: 10px;
  height: 48px;
  background-repeat: no-repeat;
  background-size: 26px auto;
  transition: height 1s;
}
.mv-name::before {
  background-image: url(../img/flame_orange2.png);
  position: absolute;
  top: -5px;
  left: 38px;
}
.mv-name::after {
  background-image: url(../img/frame_green.png);
  background-position: right bottom;
  position: absolute;
  bottom: -5px;
  right: 38px;
}
.mv-name.is-scroll::before, .mv-name.is-scroll::after {
  animation: flame-anime2 0.5s linear forwards;
  animation-delay: 2s;
}
.mv-message {
  background-color: #fff;
  border: 1px solid #3f3f3f;
  padding: 4px;
  position: absolute;
  top: 315px;
  left: 26px;
}
.mv-message-inner {
  padding: 23px 16px;
  background-color: #3f3f3f;
  position: relative;
  z-index: 1;
}
.mv-message-inner .m-animation-mask::before {
  background-color: #3f3f3f;
  animation-delay: 2s;
}
.mv-message::before, .mv-message::after {
  content: "";
  display: block;
  transition: height 1s;
}
.mv-message::before {
  width: 43px;
  height: 10px;
  background-color: #cbc5ad;
  border-left: 1px solid #3f3f3f;
  border-bottom: 1px solid #3f3f3f;
  position: absolute;
  top: 0;
  right: 0;
}
.mv-message::after {
  width: 43px;
  height: 10px;
  background-color: #c6ece6;
  border-right: 1px solid #3f3f3f;
  border-top: 1px solid #3f3f3f;
  position: absolute;
  bottom: 0;
  left: 0;
}
.mv-message.is-scroll::before, .mv-message.is-scroll::after {
  animation: flame-anime 0.5s linear forwards;
  animation-delay: 2s;
}

@keyframes flame-anime {
  0% {
    height: 10px;
  }
  100% {
    height: 48px;
  }
}
@keyframes flame-anime2 {
  0% {
    width: 10px;
  }
  100% {
    width: 26px;
  }
}
@keyframes flame-anime3 {
  0% {
    width: 10px;
  }
  100% {
    width: 48px;
  }
}
.latest {
  padding-block: 50px;
  overflow: hidden;
  position: relative;
}
.latest::before {
  content: "";
  display: block;
  width: 200%;
  height: 200%;
  background-image: url(../img/top/latest_bg.png);
  background-repeat: no-repeat;
  background-size: cover;
  position: absolute;
  top: -50%;
  left: -50%;
  z-index: 0;
  animation: bgcnca 15s linear 0s infinite;
}
.latest .m-wrapper {
  position: relative;
}
.latest-heading {
  text-align: center;
}
.latest-heading__date {
  width: -moz-fit-content;
  width: fit-content;
  font-size: min(13px, 26vw / (750 / 100));
  line-height: 1;
  letter-spacing: 0.04em;
  background-color: #fff;
  border-radius: 100vw;
  padding: 3px 7px 3px 25px;
  margin-inline: auto;
  position: relative;
}
.latest-heading__date span {
  font-size: min(12px, 24vw / (750 / 100));
  letter-spacing: 0.04em;
}
.latest-heading__date::before {
  content: "";
  display: block;
  width: 30px;
  aspect-ratio: 1;
  background-image: url(../img/ico_newmark.png);
  background-size: contain;
  background-repeat: no-repeat;
  position: absolute;
  top: -6px;
  left: -9px;
}

@keyframes bgcnca {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
.about {
  padding-block: 50px;
}
.about__title {
  text-align: center;
  position: relative;
}
.about-borderbox {
  margin-top: 30px;
}
.about-borderbox .m-borderbox-inner {
  text-align: center;
  padding: 30px 10px 0;
  position: relative;
}
.about-borderbox__text {
  padding-top: 30px;
}
.about-borderbox-nozoe {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 4px;
  padding-top: 14px;
}
.about__obj {
  position: absolute;
}
.about__obj--01 {
  top: 26px;
  right: 19px;
  animation: swing 1.5s linear infinite;
}
.about__obj--02 {
  top: -30px;
  left: 3px;
  animation: swing2 1.5s linear infinite;
}
.about__obj--03 {
  top: 89px;
  right: -13px;
  animation: swing 1.5s linear infinite;
}

@keyframes swing {
  0%, 100% {
    rotate: 0deg;
  }
  50% {
    rotate: 15deg;
  }
}
@keyframes swing2 {
  0%, 100% {
    rotate: 15deg;
  }
  50% {
    rotate: 0deg;
  }
}
.intro {
  background-image: url(../img/top/intro_bg.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  padding: 15px;
  overflow: hidden;
}
.intro-wrapper {
  padding: 20px 0 25px 25px;
  background-color: rgba(63, 63, 63, 0.9);
  position: relative;
}
.intro__subtitle {
  padding-top: 25px;
}
.intro__text {
  width: min(175px, 44.8vw);
  color: #fff;
  font-size: min(10.5px, 3.4666666667vw);
  letter-spacing: 0.04em;
  padding-top: 20px;
  position: relative;
  z-index: 1;
}
.intro-name {
  height: 187px;
  width: min(59.5px, 119vw / (750 / 100));
  background-color: #fff;
  padding: 17px 12px;
  position: absolute;
  top: 16px;
  right: 26px;
  opacity: 1;
  transition: height 1s;
}
.intro-name::before {
  content: "";
  display: block;
  width: 25px;
  height: 48px;
  background-image: url(../img/flame_orange2.png);
  background-repeat: no-repeat;
  background-size: 26px auto;
  position: absolute;
  top: -5px;
  right: -5px;
}
.intro-name.is-scroll {
  height: calc(100% - 30px);
}
.intro__nozoe {
  position: absolute;
  right: -15px;
  bottom: -40px;
}

.form {
  text-align: center;
  padding-block: 50px;
}
.form img {
  animation: boing 1.5s ease-out infinite;
  transform-origin: center;
}

@keyframes boing {
  0%, 100% {
    transform: scale(1);
  }
  50% {
    transform: scale(0.98);
  }
}
.search {
  text-align: center;
  background-color: #f2f1eb;
  padding-block: 40px;
}
.search-categories {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: 10px 5px;
  padding-top: 20px;
}
.search-categories__link {
  color: var(--color-text);
  font-size: min(12px, 24vw / (750 / 100));
  letter-spacing: 0.04em;
  line-height: 1;
  padding: 4px 8px;
  background-color: #fff;
  border: 1px solid #3f3f3f;
  border-radius: 4px;
  transition: background 0.2s;
}
.search-categories__link.--current, .search-categories__link:hover {
  background-color: #c6ece6;
}

.youtube {
  background-image: url(../img/top/youtube_bg.png);
  background-size: contain;
  background-position: top center;
  background-repeat: no-repeat;
  padding-block: 60px 50px;
}
.youtube__title {
  text-align: center;
  padding-bottom: 20px;
}

.special {
  background-image: url(../img/top/special_bg.png);
  background-position: top center;
  background-repeat: no-repeat;
  background-color: #fef3e7;
  padding-block: 60px 0;
}
.special-title {
  text-align: center;
  padding-bottom: 29px;
  position: relative;
}
.special-title img {
  position: relative;
  z-index: 1;
}
.special-title img:nth-of-type(2) {
  position: absolute;
  top: -5px;
  left: 20px;
  z-index: 0;
}
.special-item {
  padding-bottom: 50px;
}
.special-item:nth-of-type(even) {
  border-image-source: linear-gradient(#e5fcf7, #e5fcf7);
  border-image-slice: 0 fill;
  border-image-outset: 0 100vw;
}
.special-item-thumnail {
  position: relative;
  margin-inline: -15px;
}
.special-item-thumnail-name {
  width: min(187.5px, 375vw / (750 / 100));
  background-color: #fff;
  border: 1px solid #3f3f3f;
  padding: 5px;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.special-item-thumnail-name::before, .special-item-thumnail-name::after {
  content: "";
  display: block;
  width: 15px;
  height: 25px;
  background-repeat: no-repeat;
  background-size: cover;
  transition: height 1s;
}
.special-item-thumnail-name::before {
  background-image: url(../img/flame_orange3.png);
  position: absolute;
  top: 0;
  left: 0;
}
.special-item-thumnail-name::after {
  background-image: url(../img/frame_gray2.png);
  background-position: right bottom;
  position: absolute;
  bottom: 0;
  right: 0;
}
.special-item-thumnail-name.is-scroll::before, .special-item-thumnail-name.is-scroll::after {
  animation: flame-anime3 0.5s linear forwards;
  animation-delay: 1s;
}
.special-item-thumnail-name-inner {
  display: grid;
  place-items: center;
  background-color: #fff;
  border: 1px solid #3f3f3f;
  padding: 18px;
}
.special-item__name {
  display: inline-block;
  font-size: min(18px, 36vw / (750 / 100));
  font-weight: bold;
  letter-spacing: 0.04em;
  line-height: 1.3;
  background-color: #fff;
  margin-top: 32px;
  margin-inline: 10px;
}
.special-item__text {
  font-size: min(13px, 26vw / (750 / 100));
  letter-spacing: 0.04em;
  padding-top: 5px;
  margin-inline: 10px;
}/*# sourceMappingURL=top.css.map */