@charset "UTF-8";
:root {
  --headerHeight: 90px;
  --paddingSection: 120px;
  --paddingLR: 24px;
}
@media screen and (max-width: 959px) {
  :root {
    --headerHeight: 80px;
    --paddingSection: 40px;
  }
}

/*========== フォントの指定 ==========*/
@font-face {
  font-family: "duke";
  src: url("../fonts/Duke_Charming_DEMO.otf") format("opentype");
  font-weight: 400 700;
  font-style: normal;
}
/*========== トップページ ==========*/
/*==========
メインビジュアル
==========*/
#mv {
  padding: calc(var(--paddingSection) / 2) 0;
}
#mv .img_area {
  max-width: 640px;
  margin-left: auto;
  margin-right: auto;
}
#mv .img_area img {
  width: 100%;
}
#mv [onclick] {
  cursor: pointer;
}

.movie_section {
  height: calc(100vh - var(--headerHeight));
  position: relative;
}
.movie_section video {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.movie_section .logo {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  z-index: 10;
  width: 25%;
  aspect-ratio: 1/1;
}
.movie_section .logo img {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}
@media screen and (max-width: 959px) {
  .movie_section .logo {
    width: 50%;
  }
}

/*==========
first_announced
==========*/
#first_announced .list_lineup {
  gap: 0 30px;
  margin-bottom: -32px;
}
#first_announced .list_lineup > * {
  width: 400px;
  margin-bottom: 32px;
}
#first_announced .br {
  width: 100%;
  margin: 0;
}
#first_announced .name {
  font-family: "Noto Sans JP";
  font-size: 1.5625rem;
  font-weight: 700;
  letter-spacing: 0.04em;
}
#first_announced .country {
  font-size: 1.3125rem;
}
@media screen and (max-width: 959px) {
  #first_announced .list_lineup {
    gap: 0 30px;
    margin-bottom: -24px;
  }
  #first_announced .list_lineup > * {
    width: calc((100% - 30px) / 2);
    margin-bottom: 24px;
  }
  #first_announced .list_lineup .name {
    font-size: 1rem;
  }
  #first_announced .list_lineup .country {
    font-size: 0.875rem;
  }
}

/*==========
index_info
==========*/
#index_info.anchor {
  padding-top: calc(var(--headerHeight) * 2);
  margin-top: calc(var(--headerHeight) * -2);
}