body.final {
  background-color: black !important;
  color: white;
}

main {
  margin-top: 22.35vw;
  display: flex;
  justify-content: center;
  flex-direction: column;
  align-items: center;
}
@media (min-width: 768px) {
  main {
    margin-top: 75px;
    margin-right: 35px;
    margin-left: 35px;
  }
}
main > * {
  max-width: 1107px;
}
main #header_curtain {
  display: flex;
  width: 100%;
}
main #header_curtain .belt {
  flex: 1;
  width: 20%;
  height: 240px;
  background-size: 40px;
  background-repeat: no-repeat;
  background-position: center 1rem;
}
@media (min-width: 768px) {
  main #header_curtain .belt {
    flex: unset;
    background-size: 50px;
    height: 355px;
    max-height: unset;
    background-position: center 2rem;
  }
}
main #header_curtain .belt.ng {
  background-image: url(../img_rn/top/top_ng.png);
}
main #header_curtain .belt.jo {
  background-image: url(../img_rn/top/top_eva1.png);
}
main #header_curtain .belt.ha {
  background-image: url(../img_rn/top/top_eva2.png);
}
main #header_curtain .belt.q {
  background-image: url(../img_rn/top/top_eva3.png);
}
main #header_curtain .belt.shin {
  background-image: url(../img_rn/top/top_eva3-1.png);
}
@media (min-width: 768px) {
  main #header_curtain .belt.shin {
    border-right: 1px solid;
  }
}
main #header_curtain .belt a {
  display: block;
  width: 100%;
  height: 100%;
}
main #main_container {
  width: 100%;
}
main #main_container h1 {
  margin: 0;
  padding: 0;
}
main #main_container #title {
  height: 30vw;
  margin-top: 20px;
  background-image: url(../img_rn/top/ttl_30th_sp.svg);
  background-size: 60%;
  background-repeat: no-repeat;
  background-position: center;
}
@media (min-width: 768px) {
  main #main_container #title {
    height: 80px;
    margin-top: 80px;
    background-size: 85%;
    background-image: url(../img_rn/top/ttl_30th_pc.png);
  }
}
main #main_container #link_container {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  margin-top: 1.5rem;
  gap: 8px;
  padding: 0 1rem;
}
@media (min-width: 768px) {
  main #main_container #link_container {
    margin-top: 3rem;
    padding: 0;
  }
}
@media (max-width: 767px) {
  main #main_container #link_container {
    justify-content: space-between;
    flex: 0 0 calc(50% - 4px);
  }
}
main #main_container #link_container .link {
  background-repeat: no-repeat;
  background-position: top center;
  background-size: 100%;
  flex: 1;
  height: 151px;
  margin-bottom: 1rem;
}
main #main_container #link_container .link#eva_30th {
  background-image: url(../img_rn/top/topbn_30th.png);
}
main #main_container #link_container .link#eva_event {
  background-image: url(../img_rn/top/topbn_event.png?ver=0001);
}
main #main_container #link_container .link#eva_movie {
  background-image: url(../img_rn/30th/topbn_30th.png);
}
main #main_container #link_container .link#eva_onceamonth {
  background-image: url(../img_rn/onceamonth/topbn_onceamonth.png);
}
@media (max-width: 1106px) {
  main #main_container #link_container .link {
    height: 26vw;
  }
}
@media (min-width: 768px) {
  main #main_container #link_container .link {
    max-height: 310px;
  }
}
@media (max-width: 767px) {
  main #main_container #link_container .link {
    width: calc(50% - 4px);
    margin-bottom: 8px;
    aspect-ratio: 540/301;
    flex: 0 0 calc(50% - 4px);
  }
}
main #main_container #link_container .link a {
  display: block;
  width: 100%;
  height: 100%;
}

.sns {
  margin-top: 10%;
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
}
@media (min-width: 768px) {
  .sns {
    margin-top: 65px;
  }
}

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