@charset "UTF-8";
/* ===================================
VARIABLE
=================================== */
/* h1 40px */
/* h2 32px */
/* h3 28px */
/* h4 24px */
/* h5 20px */
/* h6 16px */
/* h7 14px */
/* h8 12px */
/* h9 10px */
/* 48px */
.h1 {
  font-size: 2.5rem; }

/* h1 40px */
.h2 {
  font-size: 2rem; }

/* h2 32px */
.h3 {
  font-size: 1.75rem; }

/* h3 28px */
.h4 {
  font-size: 1.5rem; }

/* h4 24px */
.h5 {
  font-size: 1.25rem; }

/* h5 20px */
.h6 {
  font-size: 1rem; }

/* h6 16px */
.h7 {
  font-size: 0.875rem; }

/* h7 14px */
.h8 {
  font-size: 0.75rem; }

/* h8 12px */
.h9 {
  font-size: 0.625rem; }

/* h9 10px */
.clh2h4 {
  font-size: clamp(1.5rem, 3vw, 2rem); }

.clh5h6 {
  font-size: clamp(1rem, 3vw, 1.25rem); }

.topSpace {
  padding-top: 60px; }

html {
  scroll-behavior: smooth; }

* {
  min-height: 0vw;
  min-height: 0; }

.notosansJPFont {
  font-family: 'Noto Sans JP', sans-serif; }

.btnFont {
  font-family: 'Poppins', sans-serif; }

.btnArea {
  text-align: center;
  margin-top: 3vmax; }

.btn_contact {
  font-size: clamp(1.5rem, 3vw, 2rem);
  background: white;
  border: 1px solid #1E1E1E;
  padding: 0.5rem 3vmax; }
  .btn_contact i {
    margin-left: 1rem; }
  .btn_contact:hover {
    border: 1px solid white;
    background-color: #1E1E1E;
    color: white; }

.btn:focus {
  box-shadow: none !important; }

.disable {
  background: gray !important;
  color: white !important;
  border: 1px solid gray !important;
  pointer-events: none !important; }

body {
  font-family: 'Oswald','Noto Sans JP', sans-serif;
  color: #1E1E1E !important;
  font-size: clamp(0.75rem, 3vw, 0.875rem);
  padding: 0;
  margin: 0; }

/* ===================================
COMMON
=================================== */
.main_container {
  margin: 0 auto;
  width: 95%;
  max-width: 1200px; }

.bold {
  font-weight: bold; }

p {
  margin: 0;
  padding: 0; }

table th, table td {
  margin: 0;
  font-weight: normal; }

ul {
  list-style: none;
  margin: 0;
  padding: 0; }
  ul li {
    margin: 0;
    padding: 0; }

dl {
  margin: 0; }
  dl dt, dl dd {
    margin: 0;
    font-weight: normal; }

a {
  color: #1E1E1E;
  text-decoration: none;
  transition: .5s all; }

a[href^="tel:"] {
  pointer-events: none;
  color: #1E1E1E; }

.width_95 {
  width: 95%;
  margin: 0 auto; }

.width_90 {
  width: 90%;
  margin: 0 auto; }

.width_80 {
  width: 80%;
  margin: 0 auto; }

.width_60 {
  width: 60%;
  margin: 0 auto; }

.width_70 {
  width: 70%;
  margin: 0 auto; }

.width_50 {
  width: 50%;
  margin: 0 auto; }

.width_30 {
  width: 30%;
  margin: 0 auto; }

.__w95 {
  width: clamp(330px, 85vw, calc(1200px * 0.95));
  margin: 0 auto; }

.__w90 {
  width: clamp(330px, 85vw, calc(1200px * 0.9));
  margin: 0 auto; }

.__w80 {
  width: clamp(330px, 85vw, calc(1200px * 0.8));
  margin: 0 auto; }

.__w70 {
  width: clamp(330px, 85vw, calc(1200px * 0.7));
  margin: 0 auto; }

.__w60 {
  width: clamp(330px, 85vw, calc(1200px * 0.6));
  margin: 0 auto; }

.__w50 {
  width: clamp(330px, 85vw, calc(1200px * 0.5));
  margin: 0 auto; }

.__w40 {
  width: clamp(330px, 85vw, calc(1200px * 0.4));
  margin: 0 auto; }

.__w30 {
  width: clamp(330px, 85vw, calc(1200px * 0.3));
  margin: 0 auto; }

.w520only {
  display: none !important; }

.w960only {
  display: none !important; }

.btn:hover {
  border-color: transparent; }

.btn_outline {
  display: inline-block;
  font-size: clamp(1rem, 3vw, 1.25rem);
  background: white;
  color: #A7A7A7;
  padding: 1rem 2rem;
  transition: all .5s;
  border-radius: 50px;
  border: 1px solid #A7A7A7; }
  .btn_outline:hover {
    background-color: #A7A7A7;
    color: white; }

.btn_gradation {
  font-size: clamp(1rem, 3vw, 1.25rem);
  background: linear-gradient(270deg, #ad00ff 0%, #fe8e26 100%);
  border-radius: 10px;
  padding: 2px; }
  .btn_gradation p {
    color: #1E1E1E;
    background: white;
    border-radius: 10px;
    padding: 0.5rem 3vmax; }
  .btn_gradation i {
    color: transparent;
    background: linear-gradient(180deg, #ad00ff 0%, #fe8e26 100%);
    -webkit-background-clip: text;
    background-clip: text;
    margin-right: 1vmax; }
  .btn_gradation:hover {
    transition: .5s all;
    background: radial-gradient(circle, #feec26 0%, #1600ff 100%);
    box-shadow: 2px 2px 2px #1E1E1E; }

.secPdg {
  padding: 3.5vmax 0; }

.bodyBox {
  padding: 7vmax clamp(2%, 5vw, 5vmax) 3vmax;
  word-break: break-all; }

/* ===================================
*HEADER
=================================== */
.logo {
  width: 3rem; }

.nav_logo {
  width: 2rem; }

/*----------------------------------------------------navigation */
.nav_brand {
  position: relative;
  width: 2.26rem; }

/*
.show_menu { height: 100%;
  overflow-y: scroll; }*/
.fixed_top {
  position: fixed;
  width: 100%;
  background: white;
  z-index: 1000;
  transition: 0.5s; }
  .fixed_top .nav_bar {
    display: flex;
    justify-content: space-between;
    padding: 0.5rem 1rem;
    align-items: center;
    max-width: 1600px;
    margin: auto; }
    .fixed_top .nav_bar .nav_menu {
      display: none; }
      .fixed_top .nav_bar .nav_menu.open {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        display: none;
        background: white;
        z-index: -1; }
        .fixed_top .nav_bar .nav_menu.open .itemBox {
          position: relative;
          z-index: 0; }
        .fixed_top .nav_bar .nav_menu.open .openArea {
          display: flex;
          flex-direction: column;
          align-items: center;
          justify-content: center;
          font-size: 1rem;
          padding: 10vmax 0 5vmax; }
        .fixed_top .nav_bar .nav_menu.open .menuListBox {
          display: flex;
          flex-direction: column;
          justify-content: space-around;
          height: 100%;
          width: 10rem; }
          .fixed_top .nav_bar .nav_menu.open .menuListBox .menuList {
            line-height: 3;
            text-align: center;
            padding: 0 0 1vmax 0; }
          .fixed_top .nav_bar .nav_menu.open .menuListBox a:hover {
            color: #A7A7A7; }

.fixed-hide {
  opacity: 0; }

.nav_button {
  display: flex;
  align-items: center; }
  .nav_button .openBtn {
    position: relative;
    cursor: pointer;
    width: 45px;
    height: 45px;
    border-radius: 5px; }
    .nav_button .openBtn span {
      display: inline-block;
      transition: all .4s;
      /*アニメーションの設定*/
      position: absolute;
      left: 14px;
      width: 70%;
      height: 2px;
      border-radius: 2px;
      background: #1E1E1E; }
      .nav_button .openBtn span:nth-of-type(1) {
        top: 16px; }
      .nav_button .openBtn span:nth-of-type(2) {
        top: 24px;
        opacity: 0; }
      .nav_button .openBtn span:nth-of-type(3) {
        top: 32px; }

.openBtn.active span:nth-of-type(1) {
  top: 16px;
  left: 18px;
  transform: translateY(-6px) rotate(45deg);
  width: 70%; }

.openBtn.active span:nth-of-type(2) {
  opacity: 0; }

.openBtn.active span:nth-of-type(3) {
  top: 26;
  left: 18px;
  transform: translateY(-6px) rotate(45deg);
  width: 70%; }

/* ===================================
*FOOTER
=================================== */
footer {
  background: #FCAE3A;
  text-align: center; }
  footer .footerBox {
    display: flex;
    justify-content: space-evenly; }
    footer .footerBox a:hover {
      filter: drop-shadow(1px 5px 1px #1E1E1E); }
    footer .footerBox img {
      height: min(60%, 4rem); }
  footer .copyright {
    color: white;
    font-size: 0.625rem; }

/* ===================================
*SITE COMMON
=================================== */
.stroke {
  color: transparent;
  -webkit-text-stroke: 0.75px white; }

.lineTitle {
  display: flex;
  font-size: clamp(1.5rem, 3vw, 2.5rem);
  color: white;
  align-items: center;
  margin-bottom: 6vmax;
  line-height: 1.5; }
  .lineTitle:before, .lineTitle:after {
    content: "";
    display: block;
    height: 1px;
    background: #1E1E1E; }
  .lineTitle:before {
    width: 10vw;
    margin-right: 2vmax; }
  .lineTitle:after {
    flex-grow: 1;
    margin-left: 2vmax; }
  .lineTitle span {
    background: #1E1E1E;
    padding: 0 2vmax; }

.lineSubTitle {
  display: flex;
  align-items: center;
  margin-bottom: 1rem;
  font-size: clamp(0.875rem, 3vw, 1rem); }
  .lineSubTitle:before {
    content: "";
    width: clamp(4rem, 8vw, 7rem);
    height: 1px;
    background-color: #1E1E1E;
    display: block;
    margin-right: 2vmax; }

.aboutBox {
  position: relative;
  border: 1px solid #1E1E1E;
  padding: 2vmax;
  text-align: center;
  margin-bottom: 3.5vmax; }
  .aboutBox .title {
    position: absolute;
    inset: -2.25rem 0 0 0;
    display: inline-block; }
    .aboutBox .title span {
      font-size: 2rem;
      background: white;
      letter-spacing: 3px;
      padding: 0 1vmax; }

.player_color {
  background: #A7A7A7; }

.creator_color {
  background: #5585BE; }

.collabo_color {
  background: linear-gradient(180deg, #5585BE 10%, #A7A7A7 100%); }

.notice {
  font-size: clamp(0.75rem, 3vw, 0.875rem);
  color: #727171; }

.title_UnderLine {
  position: relative;
  display: inline-block;
  font-size: clamp(1.25rem, 3vw, 1.5rem); }
  .title_UnderLine:before {
    content: '';
    position: absolute;
    left: 50%;
    bottom: -10px;
    /*下線の上下位置調整*/
    display: inline-block;
    width: 50px;
    /*下線の幅*/
    height: 4px;
    /*下線の太さ*/
    -moz-transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translate(-50%);
    /*位置調整*/
    background-color: #A7A7A7;
    /*下線の色*/ }

.title_UnderLine_creator:before {
  background-color: #5585BE; }

.title_underLine-Collabo:before {
  background: linear-gradient(115deg, #a7a7a7 10%, #5585be 100%); }

/* ===================================
*INDEX
=================================== */
/*----------------------------------------------------sectionIndexFv */
.sectionIndexFv {
  background: #F7F7F7; }
  .sectionIndexFv .fvImg {
    max-height: 700px;
    object-fit: contain; }
  .sectionIndexFv .heroBox {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    text-align: center;
    height: 100%;
    line-height: 2; }
    .sectionIndexFv .heroBox img {
      width: clamp(3rem, 7vw, 6rem);
      margin: 2rem auto 2vmax; }

/*----------------------------------------------------sectionIndexCreator */
.sectionIndexCreator .creatorBox {
  margin-bottom: 2vmax; }
  .sectionIndexCreator .creatorBox .imgBox {
    margin: auto auto 2vmax; }
  .sectionIndexCreator .creatorBox .text {
    margin-bottom: 2vmax;
    min-height: 5rem; }
  .sectionIndexCreator .creatorBox .snsBox {
    display: flex;
    justify-content: space-evenly;
    margin-bottom: 2vmax; }
    .sectionIndexCreator .creatorBox .snsBox a:hover {
      filter: drop-shadow(1px 3px 1px #1E1E1E); }
    .sectionIndexCreator .creatorBox .snsBox img {
      width: 2vmax; }
  .sectionIndexCreator .creatorBox .commentBox {
    border: 1px solid #1E1E1E;
    padding: 1vmax 2vmax;
    margin-bottom: 2rem;
    min-height: 90px;
    display: flex;
    align-items: center; }

/*----------------------------------------------------sectionIndexInformation */
.infoBox {
  margin: auto auto 3rem; }

.sectionIndexInformation .infoBox .date span {
  font-size: 1.75rem; }
.sectionIndexInformation .infoBox .text {
  margin: 1rem auto; }
.sectionIndexInformation .infoBox .route p:nth-child(2) {
  font-size: clamp(0.875rem, 3vw, 1rem); }
.sectionIndexInformation .infoBox .route p:not(:last-child) {
  margin-bottom: 1rem; }

.map iframe {
  width: 100%;
  aspect-ratio: 16 / 9; }

/*----------------------------------------------------sectionIndexContact */
.sectionIndexContact .twitterArea .twitter-tweet {
  justify-content: center !important;
  max-width: 350px !important;
  margin: auto; }

/*----------------------------------------------------sectionIndexTicket */
.sectionIndexTicket .ticketBox {
  margin-bottom: 2rem; }
  .sectionIndexTicket .ticketBox .ticket {
    display: flex;
    align-items: center; }
    .sectionIndexTicket .ticketBox .ticket p:first-child {
      font-weight: bold;
      color: white;
      width: 7rem;
      margin-right: 1rem;
      text-align: center; }
    .sectionIndexTicket .ticketBox .ticket p:nth-child(2) {
      font-size: 1.75rem; }
      .sectionIndexTicket .ticketBox .ticket p:nth-child(2) span {
        font-size: 1rem; }
  .sectionIndexTicket .ticketBox p span {
    font-size: 1.25rem; }
  .sectionIndexTicket .ticketBox .date span {
    font-size: 1.75rem; }
.sectionIndexTicket .benefitText {
  font-size: clamp(1rem, 3vw, 1.25rem); }
  .sectionIndexTicket .benefitText span {
    font-size: clamp(0.75rem, 3vw, 0.875rem) !important; }
.sectionIndexTicket .imgArea img {
  max-height: 260px;
  object-fit: contain; }

/*----------------------------------------------------sectionIndexGoods */
/*.05*/
.contentsBox {
  padding: 3.5rem 3.5vw;
  position: relative; }

.theme {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(1.25rem, 3vw, 1.5rem); }

.guestBtm, .guestBtm_creator {
  position: absolute;
  bottom: -6.5rem;
  right: 0;
  font-size: clamp(6.25rem, 15vw, 9.35rem);
  color: rgba(167, 167, 167, 0.08);
  z-index: -1; }

.guestBtm_creator {
  color: rgba(85, 133, 190, 0.08); }

.guestBox {
  position: relative; }
  .guestBox .guest, .guestBox .guest_kicori {
    position: absolute;
    top: -5.5rem;
    left: 0;
    font-size: clamp(6.25rem, 15vw, 9.35rem);
    color: rgba(167, 167, 167, 0.08);
    z-index: -1; }
  .guestBox .guest_kicori {
    color: creator_opacity; }

.sectionIndexGoods .collabo_color {
  background: linear-gradient(180deg, rgba(85, 133, 190, 0.08) 10%, rgba(167, 167, 167, 0.05) 100%); }
.sectionIndexGoods .player_color {
  background: rgba(167, 167, 167, 0.08); }
.sectionIndexGoods .creator_color {
  background: rgba(85, 133, 190, 0.08); }
.sectionIndexGoods .goodsBox .titleBox {
  text-align: center;
  margin: 5.5vmax auto 4vmax; }
.sectionIndexGoods .imgBox {
  display: flex;
  flex-direction: column;
  height: 100%; }
  .sectionIndexGoods .imgBox img {
    margin-top: auto; }
  .sectionIndexGoods .imgBox .theme {
    text-align: center;
    margin-bottom: 2vmax; }
.sectionIndexGoods .imgBoxCristal {
  margin-bottom: 2vmax; }
.sectionIndexGoods .detailBox {
  font-size: clamp(0.75rem, 3vw, 0.875rem);
  margin-bottom: 3.5vmax; }
  .sectionIndexGoods .detailBox .titleArea {
    display: flex;
    align-items: end;
    margin-bottom: 0.5rem; }
    .sectionIndexGoods .detailBox .titleArea .theme {
      font-size: clamp(1.25rem, 3vw, 1.5rem);
      font-family: "Noto Sans JP", sans-serif;
      margin-right: 2vmax; }
    .sectionIndexGoods .detailBox .titleArea .cost {
      display: flex;
      align-items: center; }
      .sectionIndexGoods .detailBox .titleArea .cost .ticket {
        background: #A7A7A7;
        color: white;
        padding: 0 0.5rem;
        margin-right: 0.5rem; }
      .sectionIndexGoods .detailBox .titleArea .cost .price {
        font-size: clamp(1rem, 3vw, 1.25rem); }
        .sectionIndexGoods .detailBox .titleArea .cost .price span {
          font-size: clamp(0.75rem, 3vw, 0.875rem); }
  .sectionIndexGoods .detailBox .titleArea_2 {
    margin: 3.5vmax auto 0; }
  .sectionIndexGoods .detailBox .size {
    font-size: clamp(0.75rem, 3vw, 0.875rem);
    color: #727171;
    font-weight: normal; }
  .sectionIndexGoods .detailBox .notice_2 {
    margin: 2vmax 0 0; }
  .sectionIndexGoods .detailBox .specBox {
    border: 1px solid #727171;
    padding: 1vmax 2vmax;
    margin-bottom: 1rem; }
  .sectionIndexGoods .detailBox .notice {
    font-size: clamp(0.625rem, 3vw, 0.75rem);
    margin-bottom: 1rem; }
  .sectionIndexGoods .detailBox .benefitBox {
    margin-bottom: 1rem; }
    .sectionIndexGoods .detailBox .benefitBox .benefit {
      font-size: clamp(0.875rem, 3vw, 1rem);
      text-decoration: underline;
      margin-bottom: 0.5rem; }
    .sectionIndexGoods .detailBox .benefitBox .gray, .sectionIndexGoods .detailBox .benefitBox .premium {
      display: inline-block;
      background: gray;
      color: white;
      padding: 0 1rem;
      margin-bottom: 0.5rem;
      text-align: center;
      border-radius: 50px; }
    .sectionIndexGoods .detailBox .benefitBox .premium {
      background: #5585BE; }
.sectionIndexGoods .priceBox_s {
  text-align: center;
  line-height: 2; }
  .sectionIndexGoods .priceBox_s .price {
    font-size: clamp(1rem, 3vw, 1.25rem); }
    .sectionIndexGoods .priceBox_s .price span {
      font-size: clamp(0.75rem, 3vw, 0.875rem); }

/*----------------------------------------------------sectionIndexPresents */
.sectionIndexPresents {
  margin-top: 3.5vmax; }
  .sectionIndexPresents .presentsBox {
    border: 1px solid #727171;
    padding: 2vmax 3vmax; }
    .sectionIndexPresents .presentsBox .title {
      font-size: clamp(1.5rem, 3vw, 2rem);
      margin-bottom: 2vmax;
      text-align: center; }
    .sectionIndexPresents .presentsBox .notice {
      display: flex;
      justify-content: center;
      margin-bottom: 2vmax; }
    .sectionIndexPresents .presentsBox .img {
      width: min(100%, 210px);
      margin: auto; }
    .sectionIndexPresents .presentsBox .stepBox {
      display: flex;
      flex-wrap: wrap;
      align-items: flex-start;
      margin-bottom: 1rem; }
      .sectionIndexPresents .presentsBox .stepBox .step {
        padding: 0.5px 2rem;
        margin-right: 2rem; }
      .sectionIndexPresents .presentsBox .stepBox .date {
        font-size: 1.5rem;
        line-height: 1; }
        .sectionIndexPresents .presentsBox .stepBox .date span {
          font-size: clamp(0.875rem, 3vw, 1rem); }

/*----------------------------------------------------sectionIndexBanner */
.sectionIndexBanner {
  margin-top: 3vmax; }
  .sectionIndexBanner a {
    display: inline-block;
    margin-bottom: 2rem; }
    .sectionIndexBanner a:hover {
      box-shadow: 1px 1px 5px #1E1E1E; }

/* ===================================
*MEDIA
=================================== */
/*960px以下　Tablet(mini)*/
@media screen and (max-width: 960px) {
  /*必要ならばここにコードを書く*/
  /*----------------------------------------------------common 960*/
  .w960only {
    display: block !important; }

  .w960none {
    display: none !important; }

  .width_90 {
    width: 95%; }

  /*----------------------------------------------------sectionIndexGoods 960*/
  .guestBox .guest, .guestBox .guest_kicori {
    top: -4.5rem; }

  .guestBtm, .guestBtm_creator {
    bottom: -5.5rem; } }
/*576-375px以下　SP*/
@media screen and (max-width: 520px) {
  /*必要ならばここにコードを書く*/
  /*----------------------------------------------------common 520*/
  .width_95, .width_90, .width_80, .width_60, .width_70, .width_50, .width_30 {
    width: 100%; }

  .w520only {
    display: block !important; }

  .w520none {
    display: none !important; }

  /*----------------------------------------------------header 520*/
  .fixed_top .nav_bar .nav_menu.open .openArea {
    display: flex;
    flex-direction: column;
    justify-content: flex-end; }
  .fixed_top .nav_bar .nav_menu.open .menuListBox {
    width: 80%;
    margin: auto; }

  /*----------------------------------------------------sectionIndexGoods 520*/
  .guestBox .guest, .guestBox .guest_kicori {
    top: -3.25rem; }

  .guestBtm, .guestBtm_creator {
    bottom: -4.5rem; }

  .sectionIndexGoods .detailBox {
    font-size: clamp(0.75rem, 3vw, 0.875rem); }

  /*----------------------------------------------------footer 520*/
  a[href^="tel:"] {
    pointer-events: auto;
    color: #007bff; } }

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