@import url("https://fonts.googleapis.com/css2?family=Condiment&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100;200;300;400;500;600;700;800;900&display=swap");
h2 {
  font-family: "Condiment", cursive;
  font-weight: 400;
  font-style: normal;
  color: #fff;
  line-height: none;
  margin: 0;
  border-bottom: solid #fff;
}
@media only screen and (min-width: 768px) {
  h2 {
    font-size: 60px;
    line-height: 40px;
  }
}
@media only screen and (max-width: 767px) {
  h2 {
    font-size: 30px;
  }
}

.sns-twitter::before {
  content: "\e61b";
}

.sns-instagram::before {
  content: "\f16d";
}

@media only screen and (max-width: 767px) {
  .pconly {
    display: none;
  }
}

@media only screen and (min-width: 768px) {
  .sponly {
    display: none;
  }
}

body {
  position: relative;
  margin: 0;
  font-family: "Noto Sans JP", sans-serif;
  background-color: #000000;
}
body::before {
  content: "";
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 0;
  position: absolute;
  background-image: url(../img/poster.JPG);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  background-attachment: fixed;
  filter: blur(10px);
  opacity: 0.1;
}

.langbox {
  position: relative;
  max-width: 1500px;
  width: 100%;
  margin: 0 auto;
  z-index: 5000;
}

.lang {
  display: flex;
  position: absolute;
}
@media only screen and (max-width: 767px) {
  .lang {
    top: 35px;
    right: 10px;
  }
}
@media only screen and (min-width: 768px) {
  .lang {
    top: 20px;
    right: 20px;
  }
}
.lang .lang_item {
  text-align: center;
  box-sizing: border-box;
  color: #fae720;
  font-weight: bold;
  letter-spacing: 0.1em;
}
@media only screen and (min-width: 768px) {
  .lang .lang_item {
    font-size: 1.25rem;
  }
}
.lang .lang_item a {
  color: #fae720;
  text-decoration: none;
}
.lang .lang_item a:hover {
  text-decoration: underline;
}
.lang .lang_item:first-child::after {
  content: "/";
  display: inline-block;
  color: #fae720;
  margin: 0 12px 0 7px;
  font-weight: normal;
}
.lang .select {
  color: #fd0f13;
  text-shadow: rgb(250, 231, 32) 5px 0px 0px, rgb(250, 231, 32) 4.90033px 0.993347px 0px, rgb(250, 231, 32) 4.60531px 1.94709px 0px, rgb(250, 231, 32) 4.12668px 2.82321px 0px, rgb(250, 231, 32) 3.48353px 3.58678px 0px, rgb(250, 231, 32) 2.70151px 4.20736px 0px, rgb(250, 231, 32) 1.81179px 4.6602px 0px, rgb(250, 231, 32) 0.849836px 4.92725px 0px, rgb(250, 231, 32) -0.145998px 4.99787px 0px, rgb(250, 231, 32) -1.13601px 4.86924px 0px, rgb(250, 231, 32) -2.08073px 4.54649px 0px, rgb(250, 231, 32) -2.94251px 4.04248px 0px, rgb(250, 231, 32) -3.68697px 3.37732px 0px, rgb(250, 231, 32) -4.28444px 2.57751px 0px, rgb(250, 231, 32) -4.71111px 1.67494px 0px, rgb(250, 231, 32) -4.94996px 0.7056px 0px, rgb(250, 231, 32) -4.99147px -0.291871px 0px, rgb(250, 231, 32) -4.83399px -1.27771px 0px, rgb(250, 231, 32) -4.48379px -2.2126px 0px, rgb(250, 231, 32) -3.95484px -3.05929px 0px, rgb(250, 231, 32) -3.26822px -3.78401px 0px, rgb(250, 231, 32) -2.4513px -4.35788px 0px, rgb(250, 231, 32) -1.53666px -4.75801px 0px, rgb(250, 231, 32) -0.560763px -4.96845px 0px, rgb(250, 231, 32) 0.437495px -4.98082px 0px, rgb(250, 231, 32) 1.41831px -4.79462px 0px, rgb(250, 231, 32) 2.34258px -4.41727px 0px, rgb(250, 231, 32) 3.17346px -3.86382px 0px, rgb(250, 231, 32) 3.87783px -3.15633px 0px, rgb(250, 231, 32) 4.4276px -2.32301px 0px, rgb(250, 231, 32) 4.80085px -1.39708px 0px, rgb(250, 231, 32) 4.98271px -0.415447px 0px;
}

@keyframes bob {
  0%, 100% {
    transform: translateY(0);
    top: 0;
    @media only screen and (max-width: 767px) {
      left: 0;
    }
  }
  50% {
    transform: translateY(-3px);
  }
}
@keyframes bobup {
  0%, 100% {
    transform: translateY(0);
    top: 0;
    @media only screen and (max-width: 767px) {
      left: 0;
    }
  }
  40%, 60% {
    transform: translateY(7px);
  }
}
.main {
  background-color: #000;
}
@media only screen and (max-width: 767px) {
  .main {
    overflow-x: hidden;
    width: 100vw;
  }
}
.main__ttl {
  position: relative;
  z-index: 1;
  max-width: 1000px;
  width: 100%;
  margin: 0 auto;
}
.main__ttl img {
  max-width: 1000px;
  width: 100%;
}
.main__poster .clr img {
  position: absolute;
  z-index: 0;
  top: 0;
  max-width: 1000px;
  width: 100%;
}
@media only screen and (max-width: 767px) {
  .main__poster .clr img {
    left: 0;
  }
}
.main__poster .date img, .main__poster .bttm img {
  position: absolute;
  z-index: 2;
  top: 0;
  max-width: 1000px;
  width: 100%;
}
@media only screen and (max-width: 767px) {
  .main__poster .date img, .main__poster .bttm img {
    left: 0;
  }
}
.main__move .body {
  top: 0;
  z-index: 1;
  position: absolute;
  animation: bob 4s ease-in-out infinite;
}
@media only screen and (max-width: 767px) {
  .main__move .body {
    left: 0;
  }
}
.main__move .head {
  top: 0;
  z-index: 3;
  position: absolute;
  animation: bobup 10s ease-in-out infinite;
}
@media only screen and (max-width: 767px) {
  .main__move .head {
    left: 0;
  }
}
.main__move img {
  max-width: 1000px;
  width: 100%;
}
.main__feature {
  color: #fff;
  position: relative;
  z-index: 10;
  font-weight: bolder;
  text-align: center;
}
@media only screen and (min-width: 768px) {
  .main__feature {
    max-width: 800px;
    margin: 0 auto;
    font-size: 20px;
    margin-top: -40px;
  }
}
@media only screen and (max-width: 767px) {
  .main__feature {
    max-width: 100vw;
    width: 90%;
    margin: 0 auto 50px;
    font-size: 20px;
    margin-top: 50px;
  }
}
@media only screen and (min-width: 768px) {
  .main__feature p {
    line-height: 35px;
  }
}
@media only screen and (max-width: 767px) {
  .main__feature p {
    line-height: 35px;
  }
}
.main__feature p span {
  color: #ff0000;
  font-weight: bolder;
}
.main__text {
  color: #fff;
  position: relative;
  z-index: 10;
  font-weight: bolder;
  text-align: center;
}
@media only screen and (min-width: 768px) {
  .main__text {
    max-width: 800px;
    margin: 0 auto;
    font-size: 20px;
  }
}
@media only screen and (max-width: 767px) {
  .main__text {
    max-width: 100vw;
    width: 90%;
    margin: 0 auto 50px;
    font-size: 20px;
    margin-top: 50px;
  }
}
@media only screen and (min-width: 768px) {
  .main__text p {
    line-height: 35px;
  }
}
@media only screen and (max-width: 767px) {
  .main__text p {
    line-height: 35px;
  }
}

.wrap {
  position: relative;
  z-index: 1;
  background-color: #000;
}
@media only screen and (min-width: 768px) {
  .wrap {
    max-width: 1000px;
    width: 100%;
    margin: 0 auto;
    padding-bottom: 50px;
  }
}

.mid {
  position: relative;
  z-index: 10;
  top: -35px;
  color: #fff;
  max-width: 800px;
  width: 100%;
  margin: 100px auto 0;
}
@media only screen and (max-width: 767px) {
  .mid {
    max-width: 100vw;
    width: 90%;
    margin: 0 auto 50px;
  }
}
.mid__date {
  margin-top: 50px;
}
.mid__date dl {
  margin-left: 25px;
  display: grid;
  grid-template-columns: max-content 1fr;
  gap: 0.5rem 1rem;
}
.mid__date dt {
  font-weight: bolder;
  color: #ffffff;
}
.mid__date dd {
  margin: 0;
  color: #ffffff;
}
.mid__date dd:last-child {
  text-align: right;
  font-weight: bolder;
}
.mid__join h3 {
  line-height: none;
  margin: 0;
}
@media only screen and (min-width: 768px) {
  .mid__join h3 {
    font-size: 30px;
    padding-left: 15px;
  }
}
@media only screen and (max-width: 767px) {
  .mid__join h3 {
    font-size: 20px;
  }
}
@media only screen and (min-width: 768px) {
  .mid__join h3 span {
    font-size: 20px;
  }
}
@media only screen and (max-width: 767px) {
  .mid__join h3 span {
    font-size: 15px;
  }
}
.mid__join img {
  width: 100%;
  margin-top: 25px;
}
.mid__join p {
  text-align: right;
}

.items {
  color: #fff;
}
@media only screen and (max-width: 767px) {
  .items {
    max-width: 100vw;
    width: 90%;
    margin: 0 auto 50px;
  }
}
@media only screen and (min-width: 768px) {
  .items {
    max-width: 800px;
    width: 100%;
    margin: 0 auto 50px;
  }
}
.items__items {
  margin-top: 50px;
}
@media only screen and (max-width: 767px) {
  .items__items {
    max-width: 100vw;
    width: 100%;
    margin: 0 auto 50px;
    min-height: 250px;
  }
}
@media only screen and (min-width: 768px) {
  .items__items {
    max-width: 800px;
    width: 100%;
    margin: 0 auto 50px;
    min-height: 250px;
  }
}
.items__items img {
  transition: 0.2s;
}
.items__items img:hover {
  opacity: 0.8;
}
@media only screen and (min-width: 768px) {
  .items__items img {
    padding-top: 25px;
    max-width: 800px;
  }
}
@media only screen and (max-width: 767px) {
  .items__items img {
    padding-top: 25px;
    max-width: 100vw;
    width: 100%;
    margin: 0 auto;
  }
}
.items__topics {
  margin-top: 50px;
}
@media only screen and (min-width: 768px) {
  .items__topics {
    min-height: 250px;
  }
}

.btm {
  color: #fff;
}
@media only screen and (min-width: 768px) {
  .btm {
    max-width: 800px;
    width: 100%;
    margin: 0 auto 50px;
  }
}
@media only screen and (max-width: 767px) {
  .btm {
    max-width: 100vw;
    width: 90%;
    margin: 0 auto 50px;
  }
}
.btm__contact {
  margin-top: 50px;
}
.btm__contact--info {
  margin-top: 10px;
  margin-left: 25px;
}
.btm__contact--info span {
  font-weight: bolder;
}

@media only screen and (min-width: 768px) {
  .global_foot {
    height: 284px;
  }
}

.global_head {
  margin: 0 !important;
}

header, footer {
  position: relative;
  z-index: 9999999999;
}

.modal {
  display: none;
  position: fixed;
  z-index: 1;
  left: 0;
  top: 0;
  width: 100vw;
  height: 100lvh;
  overflow: auto;
  background-color: rgba(0, 0, 0, 0.4);
}
@media only screen and (max-width: 767px) {
  .modal {
    left: 0;
  }
}

.modal-content {
  background-color: #fff;
  margin: 15% auto;
  padding: 20px;
  border: 1px solid #888;
  max-width: calc(100vw - 20%);
  width: 100%;
  text-align: center;
}

.close {
  color: #aaa;
  float: right;
  font-size: 24px;
  font-weight: bold;
  cursor: pointer;
}

.close:hover {
  color: black;
}

button {
  margin-top: 10px;
}

@media only screen and (max-width: 767px) {
  .topics {
    padding: 35px 0 28px;
  }
}
@media only screen and (min-width: 768px) {
  .topics {
    padding: 35px 0 28px;
  }
}
.topics__container {
  margin: 0 auto;
}
.topics__item {
  vertical-align: top;
  position: relative;
  scroll-snap-align: center;
  display: inline-block;
  white-space: normal;
  transition: 0.2s;
}
@media only screen and (max-width: 767px) {
  .topics__item {
    justify-content: center;
    width: 40%;
    margin: 0 5px 10px 5px;
    border: solid 4px #fff;
  }
}
@media only screen and (min-width: 768px) {
  .topics__item {
    border: solid 10px #fff;
    width: 200px;
    margin: 0 7px 10px;
  }
}
.topics__item:hover {
  opacity: 0.8;
}
.topics__pic {
  position: relative;
  overflow: hidden;
  width: 100%;
  background: #363939;
  position: relative;
  text-align: center;
  padding: 0;
}
@media only screen and (max-width: 767px) {
  .topics__pic {
    height: 120px;
    line-height: 115px;
  }
}
@media only screen and (min-width: 768px) {
  .topics__pic {
    min-height: 200px;
    height: fit-content;
    line-height: 160px;
  }
}
.topics__pic img {
  height: 100%;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
}
.topics__ttl {
  font-size: 0.9rem;
  background-color: #4e4e4e;
}
.topics__ttl a {
  color: #ffffff;
  font-weight: 600;
  text-decoration: none;
}
.topics__ttl a p {
  margin: 0;
  display: flex;
  height: 70px;
  justify-content: center;
  align-items: center;
  text-align: center;
  padding: 0;
}
.topics__ttl a::after {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1;
  content: "";
}/*# sourceMappingURL=style.css.map */