@charset "UTF-8";
/*----------------------------------------------------------------------
mv
----------------------------------------------------------------------*/
.mv {
  background: #BAE3F9;
  background: url(../images/mv_bg_btm.png) no-repeat center bottom/100%, linear-gradient(0deg, rgb(186, 227, 249) 0%, rgb(89, 189, 237) 100%);
  position: relative;
  z-index: 0;
  height: calc(100vh - 120px);
  min-height: 950px;
  margin-top: -80px;
  padding: 40px 0 0;
}
@media screen and (max-width: 1440px) {
  .mv {
    padding: 50px 0 0;
    height: auto;
    min-height: auto;
  }
}
@media screen and (max-width: 834px) {
  .mv {
    padding: 80px 0 0;
  }
}

.mv_bg_town {
  position: absolute;
  z-index: -1;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  width: 100%;
}
@media screen and (max-width: 1440px) {
  .mv_bg_town {
    bottom: -5%;
    left: 50%;
    transform: translate(-50%, 0);
    width: 110%;
  }
}
.mv_bg_town img {
  width: 100%;
}

.mv_top-inner {
  width: min(800px, 90vw);
  margin: 0 auto;
  padding: 0 5vw;
}
@media screen and (max-width: 1440px) {
  .mv_top-inner {
    width: min(700px, 100vw);
  }
}

.catchWrap {
  position: relative;
  z-index: 0;
}

.catch_bg_item._01 {
  position: absolute;
  z-index: -1;
  width: 160%;
  aspect-ratio: 1246/638;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
@media screen and (max-width: 1440px) {
  .catch_bg_item._01 {
    width: 140%;
  }
}
.catch_bg_item._02 {
  position: absolute;
  z-index: -2;
  width: 150%;
  aspect-ratio: 1/1;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
@media screen and (max-width: 1440px) {
  .catch_bg_item._02 {
    width: 140%;
  }
}

.mv_item_list {
  display: flex;
  align-items: flex-end;
}
@media screen and (max-width: 1440px) {
  .mv_item_list {
    margin-top: -7vw;
  }
}
.mv_item_list .mv_item {
  position: relative;
  z-index: 0;
}
@media screen and (max-width: 1440px) {
  .mv_item_list .mv_item {
    bottom: -10vw;
  }
  .mv_item_list .mv_item._02 {
    width: 60%;
  }
  .mv_item_list .mv_item._01, .mv_item_list .mv_item._03 {
    width: 20%;
  }
}

.top_message_box {
  position: absolute;
  left: -25%;
  top: -15%;
  z-index: -1;
  width: 400px;
}
@media screen and (max-width: 1440px) {
  .top_message_box {
    width: 17vw;
    top: max(-40px, -1vw);
    left: max(-50px, -10vw);
  }
}
@media screen and (max-width: 834px) {
  .top_message_box {
    width: 30vw;
    top: max(-50px, -5vw);
    left: max(-80px, -15vw);
  }
}

.top_message {
  position: relative;
}

@media screen and (max-width: 1440px) {
  .top_message_txt {
    display: inline-block;
    width: min(180px, 13vw);
  }
}
@media screen and (max-width: 834px) {
  .top_message_txt {
    width: min(200px, 24vw);
  }
}

.top_message_bg {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  z-index: -1;
  width: 100%;
  filter: drop-shadow(3px 3px 0 rgba(206, 129, 33, 0.5));
}
.top_message_bg img {
  animation: spin 12s linear infinite;
}

@keyframes spin {
  from {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(360deg);
  }
}
.mv_btm-inner {
  width: min(1100px, 95vw);
  margin: 0 auto;
  position: absolute;
  bottom: 0;
  right: 0;
  left: 0;
}
@media screen and (max-width: 1440px) {
  .mv_btm-inner {
    position: inherit;
  }
}

/*----------------------------------------------------------------------
venue
----------------------------------------------------------------------*/
.balloon_anim1,
.balloon_anim2 {
  animation: float 6s ease-in-out infinite;
}

.balloon_anim1 {
  animation-duration: 6s;
}

.balloon_anim2 {
  animation-duration: 4s;
  animation-delay: 1s;
}

@keyframes float {
  0% {
    transform: translateY(0);
  }
  50% {
    transform: translateY(-30px);
    /* 上に30px移動 */
  }
  100% {
    transform: translateY(0);
  }
}
.venue {
  background: #FFEC3F;
}
@media screen and (max-width: 1440px) {
  .venue {
    padding-top: 15vw;
  }
}
.venue .ttl {
  font-size: clamp(2.6rem, 2.277rem + 1.44vw, 4rem);
  font-weight: 900;
  font-family: "M PLUS Rounded 1c";
  letter-spacing: 0.5em;
  margin-bottom: 6rem;
}
.venue .ttl span {
  color: #EA5541;
}
@media screen and (max-width: 834px) {
  .venue .ttl {
    letter-spacing: 0.15em;
    margin-bottom: 3rem;
  }
}

@media screen and (max-width: 834px) {
  .venue_list {
    width: 350px;
    max-width: 90%;
    margin: 0 auto;
  }
}
.venue_list ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  margin-left: -30px;
}
.venue_list ul li {
  width: calc(33.3333333333% - 30px);
  margin-left: 30px;
  background: white;
  border-radius: 25px;
}
@media screen and (max-width: 1440px) {
  .venue_list ul li {
    width: calc(50% - 30px);
    margin-bottom: 3rem;
  }
}
@media screen and (max-width: 834px) {
  .venue_list ul li {
    width: calc(100% - 30px);
    margin-bottom: 3rem;
  }
}

.venue_ttl {
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 25px 25px 0 0;
  font-size: clamp(2.4rem, 2.308rem + 0.41vw, 2.8rem);
  min-height: 100px;
  font-weight: 900;
  line-height: 1.2;
  color: white;
  background: #0079C3;
  padding: 1.5rem;
}
.venue_ttl ._new {
  margin-right: 1rem;
}

.venue_box {
  padding: 1rem 3rem 3rem;
}
@media screen and (max-width: 1440px) {
  .venue_box {
    padding: 1rem 2rem 3rem;
  }
}

.venue_name {
  font-size: clamp(3rem, 2.677rem + 1.44vw, 4.4rem);
  font-weight: 900;
  margin-bottom: 0.5rem;
}

.venue_time {
  font-weight: 500;
  line-height: 1.4;
  margin-bottom: 1.25rem;
}
.venue_time span {
  font-size: clamp(2rem, 1.908rem + 0.41vw, 2.4rem);
  display: block;
}

/*----------------------------------------------------------------------
movie
----------------------------------------------------------------------*/
.movie {
  background: #FFEC3F;
  padding: 40px 0 80px;
}
@media screen and (max-width: 834px) {
  .movie {
    padding: 0 0 60px;
  }
}
.movie .ttl {
  line-height: 0;
}
@media screen and (max-width: 1440px) {
  .movie .ttl {
    width: 300px;
    max-width: 80%;
    margin: 0 auto;
  }
}

.youtube_wrap {
  position: relative;
  width: 950px;
  max-width: 100%;
  margin: 0 auto;
  padding: 40px 0;
  background: #FFF3D3;
}
@media screen and (max-width: 834px) {
  .youtube_wrap {
    padding: 20px;
  }
}
@media screen and (max-width: 834px) {
  .youtube_wrap .youtube {
    position: relative;
    width: 100%;
    padding-top: 56.25%;
  }
}
.youtube_wrap .youtube iframe {
  max-width: 90%;
}
@media screen and (max-width: 834px) {
  .youtube_wrap .youtube iframe {
    position: absolute;
    top: 0;
    right: 0;
    width: 100%;
    max-width: 100%;
    height: 100%;
  }
}

@media screen and (max-width: 834px) {
  .subat {
    font-size: 1.3rem;
  }
}
@media screen and (max-width: 480px) {
  .more-btn {
    padding: 10px 0 7px;
  }
  .top-bg {
    top: -80vw;
  }
}/*# sourceMappingURL=index.css.map */