@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=M+PLUS+Rounded+1c:wght@100;300;400;500;700;800;900&family=Noto+Sans+JP:wght@100..900&display=swap");
body {
  font-size: 16px;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 500;
  line-height: 1.75em;
  color: #fff; }

h1,
h2,
h3,
h4,
h5,
h6,
input,
button {
  font-size: 16px;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 600;
  line-height: 1.75em; }

.chara-name {
  font-size: 1.2em; }

.strong {
  font-size: 1.3em;
  font-weight: bold; }

.bld {
  font-weight: bold; }

.name-head {
  font-size: 1.5em; }

.begi-head {
  font-size: 1.5em;
  font-weight: bold; }

.min {
  font-size: .8em; }

.info-head {
  font-size: 1.8em;
  font-weight: bold; }

.shop-link {
  font-size: 1.2em;
  font-weight: bold; }

.how-head {
  font-size: 1.2em;
  font-weight: bold; }

table td {
  font-size: 1.3em; }
  table td .min {
    font-size: .7em; }

.ac-head {
  font-size: 1.5em; }

#about h3 {
  font-size: 1.5em; }

.play-flex-desc {
  font-size: 1.1em; }

.menu-link {
  font-weight: bold; }

.coming {
  font-size: 1.5em; }

.sub-head {
  font-size: 1.1em;
  font-weight: bold; }

#oniku {
  font-size: 18px;
  font-family: "M PLUS Rounded 1c", sans-serif;
  font-weight: 700;
  line-height: 1.75em; }
  #oniku .input-box {
    font-size: 2em; }
  #oniku .password-box {
    font-size: 1.8em;
    line-height: 1.75em; }
  #oniku .last-text {
    font-size: 1.3em;
    line-height: 1.7em; }

@media screen and (max-width: 540px) {
  body {
    font-size: 14px;
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 600;
    line-height: 1.75em; }

  table th {
    font-size: 13px; }
  table td {
    font-size: 1.2em; }
    table td .min {
      font-size: .7em; }

  #about h3 {
    font-size: 1.4em; }

  #oniku {
    font-size: 16px;
    font-family: "M PLUS Rounded 1c", sans-serif;
    font-weight: 700;
    line-height: 1.75em; } }
@keyframes fadeUpAnime {
  0% {
    opacity: 0;
    transform: translateY(100px); }
  100% {
    opacity: 1;
    transform: translateY(0); } }
@keyframes fadeUpIma {
  0% {
    margin-bottom: -100px; }
  100% {
    margin-bottom: 0; } }
@keyframes nextArrow {
  0% {
    right: 1.5em; }
  50% {
    right: 1em; }
  100% {
    right: 1.5em; } }
@keyframes clowdTop {
  0% {
    top: -100px; }
  50% {
    top: -95px; }
  100% {
    top: -100px; } }
@keyframes bugs {
  0% {
    transform: translateY(0); }
  50% {
    transform: translateY(2px); }
  100% {
    transform: translateY(0); } }
@keyframes thmFade {
  0% {
    opacity: 0; }
  100% {
    opacity: 1; } }
@keyframes gauge {
  0% {
    width: 18px; }
  100% {
    width: 82.5%; } }
@keyframes load_close {
  0% {
    opacity: 0;
    transform: scale(3); }
  50% {
    opacity: 1;
    transform: scale(1); }
  100% {
    opacity: 0;
    transform: scale(0); } }
@keyframes fadeins {
  0% {
    opacity: 0; }
  100% {
    opacity: 1; } }
@keyframes fadeout {
  0% {
    opacity: 1; }
  100% {
    opacity: 0; } }
@keyframes loadout {
  0% {
    top: 0; }
  100% {
    top: -50%; } }
@keyframes loadout2 {
  0% {
    bottom: 0; }
  100% {
    bottom: -50%; } }
@keyframes logoBounce {
  0% {
    width: 90%;
    max-width: 500px; }
  50% {
    width: 80%;
    max-width: 480px; }
  100% {
    width: 90%;
    max-width: 500px; } }
@keyframes noiseAnim {
  0% {
    opacity: .5; }
  50% {
    opacity: .48; }
  100% {
    opacity: .5; } }
@keyframes popupFadeDown {
  0% {
    opacity: 0;
    top: -50%; }
  70% {
    opacity: 1; }
  100% {
    top: 50%; } }
@keyframes popupBounceUp {
  0% {
    opacity: 1;
    top: 50%; }
  30% {
    opacity: 1;
    top: 55%; }
  100% {
    opacity: 0;
    top: -50%; } }
@keyframes scan {
  0% {
    left: -100%;
    opacity: 0; }
  20% {
    opacity: 1; }
  100% {
    left: 100%;
    opacity: 0; } }
@keyframes lock {
  0% {
    transform: translateY(0); }
  100% {
    transform: translateY(-45px); } }
@keyframes lockBounce {
  0% {
    transform: translateY(0); }
  50% {
    transform: translateY(25px); }
  100% {
    transform: translateY(0); } }
@keyframes lockBd {
  0% {
    width: 0;
    opacity: 0; }
  50% {
    opacity: 0; }
  100% {
    opacity: 1;
    width: 30px; } }
@keyframes lockBd2 {
  0% {
    width: 0;
    opacity: 0; }
  50% {
    opacity: 0; }
  100% {
    opacity: 1;
    width: 25px; } }
@keyframes scroll-anim {
  0% {
    left: 0; }
  25% {
    left: 25%; }
  50% {
    left: 0; }
  75% {
    left: -25%; }
  100% {
    left: 0; } }
.fade {
  opacity: 0; }

.fadeUp {
  animation-name: fadeUpAnime;
  animation-duration: 1s;
  animation-fill-mode: forwards;
  opacity: 0; }

html,
body {
  width: 100%;
  height: 100%;
  background-position: center;
  background-blend-mode: lighten;
  background-attachment: fixed;
  overflow-x: clip;
  background: #000; }

header {
  width: 100%;
  z-index: 2;
  position: relative; }

img {
  width: 100%;
  height: auto;
  display: block;
  margin: 0 auto; }

.link-btn,
.read-btn,
.read-box-btn {
  position: relative;
  display: block;
  color: #fff;
  max-width: 180px;
  width: 100%;
  margin: 1em auto;
  filter: drop-shadow(2px 2px 4px rgba(0, 0, 0, 0.5));
  cursor: pointer;
  background-image: url(../images/link-btn.svg);
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat; }
  .link-btn .link-btn-in,
  .read-btn .link-btn-in,
  .read-box-btn .link-btn-in {
    position: relative;
    display: block;
    width: calc(100% - 2em);
    padding: 1em;
    text-align: center; }
  .link-btn:hover,
  .read-btn:hover,
  .read-box-btn:hover {
    background-image: url(../images/link-btn-bg-p.svg);
    background-repeat: no-repeat; }

section {
  display: block;
  position: relative;
  z-index: 0;
  padding: 120px 0; }

.scroll-item {
  position: relative; }
  .scroll-item:after {
    content: "";
    position: absolute;
    top: 50%;
    left: -100%;
    width: 100%;
    height: 2px;
    background: linear-gradient(to right, transparent 0%, #fff785 50%, #ffb81e 100%);
    transform: skewX(-20deg);
    pointer-events: none;
    opacity: 0; }
  .scroll-item .left-slide {
    opacity: 0;
    transform: translateX(-200px); }
  .scroll-item.scroll-active:after {
    animation: scan 1s forwards; }
  .scroll-item.scroll-active .left-slide {
    opacity: 1;
    transform: translateX(0);
    transition-duration: 1s; }

.bg-main {
  background-color: #000;
  position: fixed;
  z-index: 0;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  --bg-y: -0; }
  .bg-main::after {
    content: "";
    position: fixed;
    left: 0;
    bottom: -600px;
    background: url(../images/bg-main.webp);
    background-position: center var(--bg-y);
    background-size: cover;
    background-repeat: no-repeat;
    width: 100%;
    height: calc(100% + 600px);
    z-index: -1;
    opacity: 0.3; }

main {
  position: relative;
  z-index: 3; }

.inner-wrap {
  padding: 0 1em;
  width: calc(100% - 2em);
  max-width: 1024px;
  margin: auto; }

.head-box {
  max-width: 480px;
  margin: 0 auto 40px; }

.menu-btn {
  position: fixed;
  max-width: 120px;
  right: 0;
  top: 0;
  z-index: 10;
  cursor: pointer; }
  .menu-btn .menu-close {
    display: none; }

.sns-box {
  position: fixed;
  right: 1em;
  bottom: 120px;
  width: 55px;
  z-index: 5; }
  .sns-box a {
    filter: drop-shadow(0px 0px 2px rgba(255, 180, 0, 0.8));
    display: block;
    margin: .5em auto;
    transition-duration: .3s; }
    .sns-box a:hover {
      opacity: .8; }

#menu {
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: 9;
  background: #000;
  display: none; }
  #menu::after {
    content: "";
    position: fixed;
    left: 0;
    bottom: 0;
    background: url(../images/bg-main.webp);
    background-position: center top;
    background-size: cover;
    background-repeat: no-repeat;
    width: 100%;
    height: 100%;
    z-index: -1;
    opacity: 0.75; }
  #menu .nav-in {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    max-width: 500px;
    width: 90%;
    display: block; }
    #menu .nav-in ul li a {
      padding: 1em;
      display: block;
      color: #ff0090;
      text-align: center;
      transition-duration: .3s;
      letter-spacing: 2px;
      position: relative; }
      #menu .nav-in ul li a:after {
        content: "";
        position: absolute;
        top: 50%;
        left: -100vw;
        width: 100%;
        height: 2px;
        background: linear-gradient(to right, transparent 0%, #fff785 50%, #ffb81e 100%);
        transform: skewX(-20deg);
        pointer-events: none;
        transition-duration: 1s;
        opacity: 0;
        animation: scan 1s backwards; }
      #menu .nav-in ul li a:hover {
        opacity: .8; }

.ti-btn {
  position: fixed;
  right: .5em;
  bottom: 30px;
  max-width: 240px;
  z-index: 5;
  width: 45%;
  transition-duration: .3s; }
  .ti-btn:hover {
    opacity: .8; }

#about {
  padding-top: 0;
  text-align: center;
  position: relative; }
  #about .sp {
    display: none; }
  #about .about-head-box {
    padding: 100px 0;
    position: relative;
    margin-bottom: 80px;
    background: #000; }
    #about .about-head-box h2 {
      max-width: 800px;
      margin: 0 auto; }
    #about .about-head-box::before {
      content: "";
      background: url(../images/about-bg.svg);
      background-position: left center;
      background-size: contain;
      background-repeat: no-repeat;
      width: 90%;
      position: absolute;
      height: 20px;
      top: 40px;
      left: -5%;
      opacity: .4;
      max-width: 800px; }
    #about .about-head-box::after {
      content: "";
      background: url(../images/about-bg.svg);
      background-position: right center;
      background-size: contain;
      background-repeat: no-repeat;
      width: 90%;
      position: absolute;
      height: 20px;
      bottom: 40px;
      right: -5%;
      opacity: .4;
      max-width: 800px; }
  #about .web-nazo-bnr {
    max-width: 680px;
    margin: 40px auto 80px; }
    #about .web-nazo-bnr a {
      transition-duration: .3s; }
      #about .web-nazo-bnr a:hover {
        opacity: .8; }
  #about .bnr-box {
    margin-bottom: 80px; }
    #about .bnr-box .bnr-item {
      position: relative; }
      #about .bnr-box .bnr-item .bnr-item-in {
        border-radius: 32px;
        background: #1a1a1a;
        position: relative;
        border: solid 6px #1a1a1a;
        width: calc(100% - 12px - 8px);
        padding: 0px 4px 0px;
        overflow: hidden; }
        #about .bnr-box .bnr-item .bnr-item-in:before {
          content: "";
          position: absolute;
          left: 0;
          top: 0;
          width: 100%;
          height: 27px;
          background-image: url(../images/bnr-y-tp.svg);
          background-repeat: no-repeat;
          background-position: center bottom; }
        #about .bnr-box .bnr-item .bnr-item-in::after {
          content: "";
          position: absolute;
          left: 0;
          top: 27px;
          width: 100%;
          height: calc(100% - 54px);
          background-image: url(../images/bnr-y-ct.svg);
          background-repeat: repeat-y; }
      #about .bnr-box .bnr-item .bnr-bt::after {
        content: "";
        position: absolute;
        left: 0;
        bottom: 0;
        width: 100%;
        height: 27px;
        background-image: url(../images/bnr-y-bt.svg);
        background-repeat: no-repeat;
        background-position: center top; }
      #about .bnr-box .bnr-item .bnr-bt img {
        position: absolute;
        right: 8%;
        bottom: 0;
        width: 14%;
        z-index: 5;
        transition-duration: .3s; }
      #about .bnr-box .bnr-item a {
        position: absolute;
        left: 0;
        top: 0;
        z-index: 1;
        width: 100%;
        height: 100%; }
      #about .bnr-box .bnr-item.bnr-item2 .bnr-item-in:before {
        background-image: url(../images/bnr-r-tp.svg); }
      #about .bnr-box .bnr-item.bnr-item2 .bnr-item-in::after {
        background-image: url(../images/bnr-r-ct.svg); }
      #about .bnr-box .bnr-item.bnr-item2 .bnr-bt::after {
        background-image: url(../images/bnr-r-bt.svg); }
      #about .bnr-box .bnr-item.bnr-item3 .bnr-item-in:before {
        background-image: url(../images/bnr-g-tp.svg); }
      #about .bnr-box .bnr-item.bnr-item3 .bnr-item-in::after {
        background-image: url(../images/bnr-g-ct.svg); }
      #about .bnr-box .bnr-item.bnr-item3 .bnr-bt::after {
        background-image: url(../images/bnr-g-bt.svg); }
      #about .bnr-box .bnr-item:hover .bnr-bt img {
        right: 7%; }
    #about .bnr-box .swiper-pagination {
      bottom: -50px; }
    #about .bnr-box .swiper-pagination-bullet {
      background-color: transparent;
      /* 背景色を透明に */
      background-image: url(../images/dots.svg);
      background-repeat: no-repeat;
      background-size: contain;
      border-radius: unset;
      opacity: 1;
      height: 15px;
      width: 15px;
      transition-duration: .3s; }
    #about .bnr-box .swiper-pagination-bullet-active {
      background-image: url(../images/dots-active.svg);
      background-repeat: no-repeat;
      background-size: contain;
      border-radius: unset;
      transform: scale(2); }
  #about .wh-flex {
    display: flex;
    align-items: center;
    justify-content: center; }
  #about .about-crazy {
    max-width: 540px;
    cursor: pointer;
    filter: drop-shadow(0px 0px 4px rgba(255, 180, 0, 0.3));
    transition-duration: .3s;
    width: 48%;
    margin: 1%; }
    #about .about-crazy:hover {
      filter: drop-shadow(0px 0px 0 rgba(255, 180, 0, 0)); }
  #about .about-rdg {
    max-width: 540px;
    cursor: pointer;
    filter: drop-shadow(0px 0px 4px rgba(0, 128, 255, 0.8));
    transition-duration: .3s;
    width: 48%;
    margin: 1%; }
    #about .about-rdg:hover {
      filter: drop-shadow(0px 0px 0 rgba(0, 128, 255, 0)); }

.photo-slider {
  width: 100%;
  position: relative;
  z-index: 2;
  padding: 7.5% 0; }
  .photo-slider::before {
    content: "";
    position: absolute;
    left: -10%;
    top: 0;
    width: 120%;
    height: 100%;
    background-image: url(../images/arrow-bg.svg);
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
    z-index: 1; }
  .photo-slider::after {
    content: "";
    position: absolute;
    left: -10%;
    top: 0;
    width: 120%;
    height: 100%;
    background-image: url(../images/arrow-bg.svg);
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
    z-index: 0;
    filter: blur(12px);
    opacity: .75; }

.chara-popup {
  width: 100%;
  position: fixed;
  inset: 0;
  background: rgba(0, 0, 0, 0.7);
  z-index: 10;
  color: #000;
  display: none; }
  .chara-popup .popup-in {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    max-width: 600px;
    width: 100%; }
  .chara-popup .chara-ima {
    display: none;
    animation-name: fadeUpIma;
    animation-duration: 1s;
    animation-fill-mode: both; }
    .chara-popup .chara-ima.chara-active {
      display: block; }
  .chara-popup .chara-close {
    text-align: center;
    color: #d26167;
    max-width: 180px;
    margin: 1em auto;
    position: relative;
    padding: .5em 1em;
    cursor: pointer;
    transition-duration: .3s; }
    .chara-popup .chara-close::after {
      content: "";
      position: absolute;
      left: 0;
      top: 0;
      width: 100%;
      height: 100%;
      border: solid 1px #d26167;
      transform: skewX(-45deg);
      pointer-events: none;
      transition-duration: .3s;
      z-index: -1; }
    .chara-popup .chara-close:hover {
      color: #fff; }
      .chara-popup .chara-close:hover:after {
        background: #d26167; }

#character .head-box {
  filter: drop-shadow(0px 0px 1px #d26167); }
#character .name-list {
  display: flex;
  justify-content: center;
  margin: 0 auto;
  flex-flow: wrap;
  max-width: 800px; }
  #character .name-list .chara-name {
    width: 31%;
    margin: 1%;
    position: relative;
    cursor: pointer; }
    #character .name-list .chara-name .name-thm {
      position: absolute;
      left: 0;
      top: 0;
      cursor: pointer;
      pointer-events: none; }
#character .chara-image {
  background: radial-gradient(circle, white 0%, #d4d2e7 100%);
  margin: 40px auto;
  max-width: 768px;
  padding: 1em; }
  #character .chara-image .chara-in {
    max-width: 500px;
    margin: 0 auto; }
    #character .chara-image .chara-in .chara-ima {
      display: none; }
      #character .chara-image .chara-in .chara-ima.chara-active {
        display: block;
        animation: thmFade .3s linear both; }
#character .chara-panel {
  margin: 1em auto;
  text-align: left;
  position: relative; }
  #character .chara-panel:before {
    content: "";
    position: absolute;
    background-image: url(../images/pop-cent.svg);
    background-position: left;
    background-size: contain;
    background-repeat: no-repeat;
    width: 90%;
    height: 90px;
    top: calc(50% - 45px);
    max-width: 670px;
    left: 0;
    right: 70px;
    margin: 0 auto; }
  #character .chara-panel:after {
    content: "";
    position: absolute;
    background-image: url(../images/pop-cent.svg);
    background-position: left;
    background-size: contain;
    background-repeat: no-repeat;
    width: 90%;
    height: 90px;
    top: calc(50% - 45px);
    max-width: 670px;
    left: 70px;
    right: 0;
    margin: 0 auto;
    transform: scale(-1, 1); }
  #character .chara-panel .panel-in {
    position: relative;
    border: solid 3px #d26167;
    background: rgba(210, 97, 103, 0.15);
    max-width: calc(568px - 4em);
    width: calc(80% - 4em);
    padding: 40px 2em;
    margin: 0 auto; }
    #character .chara-panel .panel-in .panel-tp {
      position: absolute;
      background-image: url(../images/pop-tp.svg);
      background-position: center;
      background-size: contain;
      background-repeat: no-repeat;
      top: -15px;
      left: 0;
      width: 100%;
      height: 15px; }
    #character .chara-panel .panel-in:before {
      content: "";
      position: absolute;
      background-image: url(../images/pop-bt.svg);
      background-position: left;
      background-size: contain;
      background-repeat: no-repeat;
      bottom: -28px;
      left: -6.5%;
      width: 100%;
      height: 100px; }
    #character .chara-panel .panel-in:after {
      content: "";
      position: absolute;
      background-image: url(../images/pop-bt.svg);
      background-position: left;
      background-size: contain;
      background-repeat: no-repeat;
      bottom: -28px;
      right: -6.5%;
      width: 100%;
      height: 100px;
      transform: scale(-1, 1); }
  #character .chara-panel .name-head {
    color: #d26167;
    margin-bottom: .5em; }

.bg-pink {
  background-color: #d26167;
  position: relative;
  z-index: 2; }
  .bg-pink .bg-dots-tp {
    background: linear-gradient(180deg, rgba(0, 0, 0, 0) 30%, #d26167 100%);
    width: 100%;
    height: 100px;
    position: absolute;
    left: 0;
    top: -100px;
    z-index: -1; }
    .bg-pink .bg-dots-tp:before {
      content: "";
      position: absolute;
      left: 0;
      top: 0;
      background: url(../images/bg-tp.svg);
      background-size: contain;
      background-repeat: repeat-x;
      background-position: center;
      width: 100%;
      height: 100px;
      z-index: 1; }
    .bg-pink .bg-dots-tp::after {
      content: "";
      position: absolute;
      left: 0;
      top: 0;
      background: url(../images/bg-tp.svg);
      background-size: contain;
      background-repeat: repeat-x;
      background-position: center;
      width: 100%;
      height: 100px;
      filter: blur(20px);
      z-index: 0; }
  .bg-pink .bg-dots-bt {
    background: linear-gradient(0deg, rgba(0, 0, 0, 0) 30%, #d26167 100%);
    width: 100%;
    height: 100px;
    position: absolute;
    left: 0;
    bottom: -100px;
    z-index: -1; }
    .bg-pink .bg-dots-bt:before {
      content: "";
      position: absolute;
      left: 0;
      bottom: 0;
      background: url(../images/bg-bt.svg);
      background-size: contain;
      background-repeat: repeat-x;
      background-position: center;
      width: 100%;
      height: 100px;
      z-index: 1; }
    .bg-pink .bg-dots-bt::after {
      content: "";
      position: absolute;
      left: 0;
      bottom: 0;
      background: url(../images/bg-bt.svg);
      background-size: contain;
      background-repeat: repeat-x;
      background-position: center;
      width: 100%;
      height: 100px;
      filter: blur(20px);
      z-index: 0; }

#story {
  padding: 20px 0 60px;
  margin: 120px auto;
  position: relative; }
  #story p {
    margin-bottom: 2em;
    letter-spacing: 2px; }
  #story .story-text {
    max-width: 700px;
    margin: 0 auto; }
  #story .blurs {
    filter: blur(5px);
    transition-duration: .3s; }
    #story .blurs.no-blur {
      filter: blur(0); }
  #story .story-disp {
    display: none; }

#howtoplay {
  padding-bottom: 0; }
  #howtoplay .head-box {
    filter: drop-shadow(0px 0px 1px #d26167); }
  #howtoplay .how-swiper {
    overflow: hidden;
    padding: 40px 0;
    padding-left: 15px;
    width: calc(100% - 15px); }
  #howtoplay .how-wrap {
    position: relative;
    width: calc(100% - 60px);
    margin: 0 auto; }
  #howtoplay .step-head {
    position: absolute;
    left: 0em;
    top: -20px;
    width: 80px;
    background: #000;
    padding: 0 1em; }
  #howtoplay .howto-item {
    width: calc(100% - 12px);
    max-width: 400px;
    position: relative; }
    #howtoplay .howto-item .bd1 {
      border: solid 2px #fff7df;
      border-radius: 15px;
      width: calc(100% - 4px);
      position: relative; }
    #howtoplay .howto-item legend {
      width: 80px;
      margin-left: 1em; }
      #howtoplay .howto-item legend img {
        width: 70px; }
    #howtoplay .howto-item .bd2 {
      border: solid 6px #ffbc00;
      border-radius: 15px;
      position: absolute;
      left: -4px;
      top: -34px;
      width: calc(100% - 4px);
      height: calc(100% + 26px);
      z-index: -1; }
      #howtoplay .howto-item .bd2 legend {
        width: 76px; }
    #howtoplay .howto-item .howto-in {
      position: relative;
      padding: 45px 1em; }
    #howtoplay .howto-item .how-head {
      margin: 1em auto; }
  #howtoplay .swiper-btn {
    position: absolute;
    right: -35px;
    top: 50%;
    background: url(../images/arrow-rt.svg);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    width: 35px;
    height: 35px;
    cursor: pointer;
    transition-duration: .3s; }
    #howtoplay .swiper-btn.swiper-prev {
      right: initial;
      left: -35px;
      transform: rotate(-180deg); }
    #howtoplay .swiper-btn.pc-no-active {
      opacity: 0;
      pointer-events: none; }

#beginner {
  position: relative;
  text-align: center;
  padding: 0;
  margin-top: 60px; }
  #beginner .begi-flex {
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 1em auto; }
  #beginner .begiiner-ico {
    max-width: 30px;
    margin-right: 1em; }
  #beginner .begi-head {
    color: #fcc121; }
  #beginner .sankajo {
    max-width: 768px;
    margin: 40px auto 0; }

#play {
  padding-bottom: 0; }
  #play .head-box {
    filter: drop-shadow(0px 0px 1px #00c7af); }
  #play .play-box {
    display: flex;
    flex-flow: wrap;
    max-width: 900px;
    margin: 0 auto;
    justify-content: center; }
    #play .play-box .play-item {
      width: 25%; }
  #play .play-line {
    padding: 30px;
    position: relative;
    max-width: 700px;
    margin: 80px auto 0; }
    #play .play-line .play-tp {
      position: absolute;
      left: 0;
      top: 0;
      width: 100%;
      height: 100%;
      z-index: -1;
      pointer-events: none; }
      #play .play-line .play-tp::before {
        content: "";
        width: 100px;
        height: 100px;
        background: url(../images/box-fr.webp);
        background-size: contain;
        background-repeat: no-repeat;
        background-position: center;
        position: absolute;
        left: -30px;
        top: -30px;
        filter: drop-shadow(0px 0px 6px #ffbc00); }
      #play .play-line .play-tp::after {
        content: "";
        width: 100px;
        height: 100px;
        background: url(../images/box-fr.webp);
        background-size: contain;
        background-repeat: no-repeat;
        background-position: center;
        position: absolute;
        right: -30px;
        top: -30px;
        transform: rotate(90deg);
        filter: drop-shadow(0px 0px 6px #ffbc00); }
    #play .play-line .play-bt {
      position: absolute;
      left: 0;
      bottom: 0;
      width: 100%;
      height: 100%;
      z-index: -1;
      pointer-events: none; }
      #play .play-line .play-bt::before {
        content: "";
        width: 100px;
        height: 100px;
        background: url(../images/box-fr.webp);
        background-size: contain;
        background-repeat: no-repeat;
        background-position: center;
        position: absolute;
        left: -30px;
        bottom: -30px;
        transform: rotate(270deg);
        filter: drop-shadow(0px 0px 6px #ffbc00); }
      #play .play-line .play-bt::after {
        content: "";
        width: 100px;
        height: 100px;
        background: url(../images/box-fr.webp);
        background-size: contain;
        background-repeat: no-repeat;
        background-position: center;
        position: absolute;
        right: -30px;
        bottom: -30px;
        transform: rotate(180deg);
        filter: drop-shadow(0px 0px 6px #ffbc00); }
    #play .play-line .play-flex {
      display: flex;
      align-items: center; }
      #play .play-line .play-flex .play-flex-desc {
        margin-bottom: 1rem; }
    #play .play-line .col-l {
      max-width: 100px;
      margin: 0 auto; }
    #play .play-line .col-r {
      width: calc(100% - 1em - 100px);
      margin-left: 1em; }

#info {
  padding-bottom: 160px; }
  #info .head-box {
    filter: drop-shadow(0px 0px 1px #b55ff6); }
  #info .info-head {
    text-align: center;
    color: #cc66d0;
    margin-bottom: calc(1rem + 20px);
    padding-bottom: calc(1rem + 20px);
    position: relative; }
    #info .info-head::after {
      content: "";
      position: absolute;
      left: 0;
      bottom: 0;
      width: 100%;
      height: 10px;
      background: url(../images/bg-line.svg);
      background-size: contain;
      background-repeat: repeat-x;
      z-index: 1; }
  #info .info-item {
    text-align: center;
    margin-bottom: 80px; }
  #info .shop-link {
    background: #cc66d0;
    padding: .5rem 2rem;
    border-radius: 50px;
    width: fit-content;
    margin: 40px auto 20px;
    display: block;
    border: solid 1px #cc66d0;
    transition-duration: .3s;
    color: #fff; }
    #info .shop-link:hover {
      color: #cc66d0;
      background: rgba(0, 0, 0, 0); }
  #info .info-in {
    padding-bottom: 40px;
    margin-bottom: 40px;
    border-bottom: solid 1px #fff; }
    #info .info-in:last-of-type {
      border-bottom: 0;
      margin-bottom: 0;
      padding-bottom: 0; }
  #info .sche-head {
    margin-bottom: 1em; }
  #info .u22 {
    max-width: 720px;
    margin: 80px auto 40px;
    padding: 10px;
    background: #1a1a1a;
    border-radius: 20px;
    text-align: left; }
    #info .u22 .u22-flex {
      display: flex;
      align-items: center;
      width: fit-content;
      margin: 0 auto; }
      #info .u22 .u22-flex .col-l {
        max-width: 250px;
        width: 100%; }
      #info .u22 .u22-flex .col-r {
        width: calc(100% - 250px - 1em);
        margin-left: 1em; }
    #info .u22 .u22-in {
      padding: 3em 1em;
      position: relative;
      z-index: 1; }
      #info .u22 .u22-in::before {
        content: "";
        position: absolute;
        left: 0;
        top: 0;
        width: 100%;
        height: 34px;
        background: url(../images/u22-tp.svg);
        background-repeat: no-repeat;
        background-position: center bottom;
        pointer-events: none; }
      #info .u22 .u22-in::after {
        content: "";
        position: absolute;
        left: 0;
        top: 34px;
        width: 100%;
        height: calc(100% - 68px);
        background: url(../images/u22-c.svg);
        background-repeat: repeat-y;
        pointer-events: none; }
      #info .u22 .u22-in .u22-bt a {
        position: absolute;
        right: 5.5%;
        bottom: 0;
        width: 20%;
        z-index: 5;
        transition-duration: .3s; }
        #info .u22 .u22-in .u22-bt a:hover {
          right: 5%; }
      #info .u22 .u22-in .u22-bt::after {
        content: "";
        position: absolute;
        left: 0;
        bottom: 0;
        width: 100%;
        height: 34px;
        background: url(../images/u22-bt.svg);
        background-repeat: no-repeat;
        background-position: center top; }
  #info .fk-wrap {
    max-width: 720px;
    margin: 0 auto 80px;
    text-align: left; }
    #info .fk-wrap .fk-notice {
      width: calc(100% - 2em);
      margin: 0 auto; }
  #info .forkids {
    max-width: 720px;
    margin: 0 auto 10px;
    padding: 10px;
    background: #1a1a1a;
    border-radius: 20px;
    text-align: left; }
    #info .forkids .fk-flex {
      display: flex;
      align-items: center;
      width: fit-content;
      margin: 0 auto; }
      #info .forkids .fk-flex .col-l {
        max-width: 250px;
        width: 100%; }
      #info .forkids .fk-flex .col-r {
        width: calc(100% - 250px - 1em);
        margin-left: 1em; }
    #info .forkids .fk-in {
      padding: 3em 1em;
      position: relative;
      z-index: 1; }
      #info .forkids .fk-in::before {
        content: "";
        position: absolute;
        left: 0;
        top: 0;
        width: 100%;
        height: 34px;
        background: url(../images/fk-tp.svg);
        background-repeat: no-repeat;
        background-position: center bottom;
        pointer-events: none; }
      #info .forkids .fk-in::after {
        content: "";
        position: absolute;
        left: 0;
        top: 34px;
        width: 100%;
        height: calc(100% - 68px);
        background: url(../images/fk-c.svg);
        background-repeat: repeat-y;
        pointer-events: none; }
      #info .forkids .fk-in .fk-bt a {
        position: absolute;
        right: 5.5%;
        bottom: 0;
        width: 20%;
        z-index: 5;
        transition-duration: .3s; }
        #info .forkids .fk-in .fk-bt a:hover {
          right: 5%; }
      #info .forkids .fk-in .fk-bt::after {
        content: "";
        position: absolute;
        left: 0;
        bottom: 0;
        width: 100%;
        height: 34px;
        background: url(../images/fk-bt.svg);
        background-repeat: no-repeat;
        background-position: center top; }
  #info .bnr-danin {
    text-align: center;
    max-width: 500px;
    margin: 40px auto 1em; }
    #info .bnr-danin p {
      margin-bottom: 1em; }
    #info .bnr-danin a {
      display: block; }
  #info .ti-tab {
    display: flex;
    align-items: center;
    max-width: 400px;
    margin: 0 auto 1em; }
    #info .ti-tab li {
      position: relative;
      display: block;
      color: #fff;
      max-width: 180px;
      width: 48%;
      margin: 1em auto;
      filter: drop-shadow(2px 2px 2px rgba(0, 0, 0, 0.5));
      cursor: pointer;
      background-image: url(../images/link-btn.svg);
      background-size: contain;
      background-position: center;
      background-repeat: no-repeat; }
      #info .ti-tab li .tab-in {
        position: relative;
        display: block;
        width: calc(100% - 2em);
        padding: 1em;
        text-align: center; }
      #info .ti-tab li:hover {
        background-image: url(../images/link-btn-bg-p.svg);
        background-repeat: no-repeat; }
      #info .ti-tab li.ti-active {
        background-image: url(../images/link-btn-bg-p.svg);
        background-repeat: no-repeat; }
  #info .ti-box {
    display: none;
    margin-bottom: .5em; }
    #info .ti-box.ti-active {
      display: block; }
  #info table {
    width: 100%;
    color: #fff;
    text-shadow: 1px 1px 2px #000;
    background: rgba(255, 255, 255, 0.5);
    padding: 1em 0 0;
    display: block; }
    #info table tbody,
    #info table thead,
    #info table tfoot {
      width: 100%;
      display: block; }
    #info table tfoot {
      background: #d26167;
      margin-top: .5em; }
    #info table tr {
      display: flex;
      justify-content: center;
      width: 100%; }
      #info table tr th,
      #info table tr td {
        width: 31%;
        padding: 2% 1%;
        display: flex;
        align-items: center;
        justify-content: center;
        text-align: center; }
        #info table tr th.col2,
        #info table tr td.col2 {
          width: 64%; }
    #info table tbody tr th,
    #info table tbody tr td,
    #info table tfoot tr th,
    #info table tfoot tr td {
      position: relative;
      flex-direction: column; }
      #info table tbody tr th:after,
      #info table tbody tr td:after,
      #info table tfoot tr th:after,
      #info table tfoot tr td:after {
        content: "";
        position: absolute;
        right: 0;
        top: 10%;
        width: 1px;
        height: 80%;
        background: #fff; }
      #info table tbody tr th:last-child::after,
      #info table tbody tr td:last-child::after,
      #info table tfoot tr th:last-child::after,
      #info table tfoot tr td:last-child::after {
        display: none; }
      #info table tbody tr th .one-person,
      #info table tbody tr td .one-person,
      #info table tfoot tr th .one-person,
      #info table tfoot tr td .one-person {
        display: block; }
  #info .ti-notice {
    margin: 40px auto; }
    #info .ti-notice .benefit {
      max-width: 768px;
      margin: 1em auto 2em; }
    #info .ti-notice .ticket-notice-head {
      /* color: #ffbc00;
      margin-bottom: 40px;
      position: relative;

      &::before {
        content: "";
        position: absolute;
        top: 50%;
        left: 0;
        width: calc(50% - 8em);
        height: 2px;
        background: #fff;
        border-radius: 2px;
        box-shadow: 0px 0px 0px 2px #ffbc00;
      }

      &::after {
        content: "";
        position: absolute;
        top: 50%;
        right: 0;
        width: calc(50% - 8em);
        height: 2px;
        background: #fff;
        border-radius: 2px;
        box-shadow: 0px 0px 0px 2px #ffbc00;
      } */
      position: relative;
      display: block;
      color: #fff;
      max-width: 320px;
      width: 100%;
      margin: 1em auto 2em;
      filter: drop-shadow(2px 2px 4px rgba(0, 0, 0, 0.5));
      cursor: pointer;
      background-image: url(../images/link-btn2.svg);
      background-size: contain;
      background-position: center;
      background-repeat: no-repeat; }
      #info .ti-notice .ticket-notice-head .link-btn-in {
        position: relative;
        display: block;
        width: calc(100% - 2em);
        text-align: left;
        padding: 1.5em 1em; }
        #info .ti-notice .ticket-notice-head .link-btn-in::after {
          content: "";
          position: absolute;
          right: 1rem;
          top: 50%;
          transform: translateY(-50%);
          background: url(../images/ac-arrow.svg);
          width: 1.25em;
          height: 1.25em;
          background-position: center;
          background-repeat: no-repeat;
          background-size: contain;
          transition-duration: .3s; }
      #info .ti-notice .ticket-notice-head.ac-active {
        background-image: url(../images/link-btn2-bg.svg);
        background-repeat: no-repeat; }
        #info .ti-notice .ticket-notice-head.ac-active .link-btn-in:after {
          transform: translateY(-50%) rotate(180deg); }
      #info .ti-notice .ticket-notice-head:hover {
        background-image: url(../images/link-btn2-bg.svg);
        background-repeat: no-repeat; }
    #info .ti-notice .ti-ac {
      display: none; }
      #info .ti-notice .ti-ac ul li {
        padding-left: 1.5em;
        position: relative;
        margin-bottom: 1em;
        border-bottom: solid 1px #fff;
        padding-bottom: 1em;
        text-align: left; }
        #info .ti-notice .ti-ac ul li::after {
          content: "※";
          position: absolute;
          left: 0;
          top: 0; }
  #info .ti-sche-box {
    max-width: 900px;
    margin: 40px auto; }

#goods .goods-box {
  display: flex;
  flex-flow: wrap; }
  #goods .goods-box .coming {
    text-align: center;
    width: 100%; }
  #goods .goods-box .goods-item {
    width: 23%;
    margin: 1%; }

#notice {
  text-align: center;
  padding: 120px 0 80px; }
  #notice .ac-item {
    margin-bottom: 40px; }
  #notice .ac-head {
    margin-bottom: 1rem;
    padding: 1rem 3rem;
    padding-top: 0;
    border-bottom: solid 1px #fff;
    position: relative;
    cursor: pointer; }
    #notice .ac-head::after {
      content: "";
      position: absolute;
      right: 1rem;
      top: 0;
      background: url(../images/ac-arrow.svg);
      width: 1em;
      height: 1em;
      background-position: center;
      background-repeat: no-repeat;
      background-size: contain;
      transition-duration: .3s; }
    #notice .ac-head.ti-active::after {
      transform: rotate(180deg); }
  #notice .ac-box {
    display: none;
    margin-bottom: 40px;
    background: rgba(0, 0, 0, 0.5);
    padding: 1.5em; }
    #notice .ac-box .notice-head {
      background: #d26167;
      padding: 1em;
      margin-bottom: 1em; }
      #notice .ac-box .notice-head.q-head {
        text-align: left; }
    #notice .ac-box .sub-head {
      border: solid 1px #fff;
      padding: .5em;
      border-radius: 50px;
      max-width: 120px;
      margin: 2em auto 1em; }
    #notice .ac-box .text-link {
      color: #d26167;
      text-decoration: underline; }
      #notice .ac-box .text-link:hover {
        text-decoration: none; }
    #notice .ac-box .notice-list {
      margin-bottom: 40px; }
      #notice .ac-box .notice-list li {
        padding-left: 1.5em;
        position: relative;
        margin-bottom: 1em;
        border-bottom: solid 1px #fff;
        padding-bottom: 1em;
        text-align: left; }
        #notice .ac-box .notice-list li::after {
          content: "・";
          position: absolute;
          left: 0;
          top: 0; }
        #notice .ac-box .notice-list li:last-child {
          border-bottom: 0;
          padding-bottom: 0;
          margin-bottom: 0; }
        #notice .ac-box .notice-list li.nomark::after {
          display: none; }
    #notice .ac-box .answer {
      margin-bottom: 2em;
      text-align: left; }

footer {
  background: #000;
  position: relative;
  z-index: 1;
  padding: 120px 0;
  text-align: center;
  --bg-y: -0; }
  footer::after {
    content: "";
    position: fixed;
    left: 0;
    bottom: -600px;
    background: url(../images/bg-footer.webp);
    background-position: center var(--bg-y);
    background-size: cover;
    background-repeat: no-repeat;
    width: 100%;
    height: calc(100% + 600px);
    z-index: -1;
    opacity: .5; }
  footer .rdg-box {
    max-width: 420px;
    margin: 0 auto 40px;
    cursor: pointer;
    transition-duration: .3s; }
    footer .rdg-box:hover {
      opacity: .8; }
  footer .logo-flex {
    max-width: 380px;
    display: flex;
    align-items: center;
    margin: 40px auto; }
    footer .logo-flex a {
      width: 35%;
      display: block;
      margin: 0 auto;
      transition-duration: .3s; }
      footer .logo-flex a:hover {
        opacity: .8; }

.frame-wrap {
  position: absolute;
  top: 50%;
  right: 50%;
  transform: translate(50%, -50%);
  z-index: 50;
  width: 90%; }
  .frame-wrap::before {
    content: "";
    position: absolute;
    left: 0;
    top: -1.5em;
    width: 100%;
    height: 100%;
    background: url(../images/frame-top.svg);
    background-repeat: no-repeat;
    background-position: center top;
    background-size: contain;
    z-index: -1; }
  .frame-wrap::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: -1.5em;
    width: 100%;
    height: 100%;
    background: url(../images/frame-bottom.svg);
    background-repeat: no-repeat;
    background-position: center bottom;
    background-size: contain;
    z-index: -1; }

.frame {
  --cut: 50px;
  position: relative;
  max-width: 500px;
  width: 96%;
  min-height: 420px;
  /* 外形（8角形） */
  clip-path: polygon(var(--cut) 0%, calc(100% - var(--cut)) 0%, 100% var(--cut), 100% calc(100% - var(--cut)), calc(100% - var(--cut)) 100%, var(--cut) 100%, 0% calc(100% - var(--cut)), 0% var(--cut));
  background: rgba(255, 255, 255, 0.85);
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 auto; }
  .frame .frame-content {
    position: relative;
    z-index: 2;
    padding: 4em 1em;
    text-align: left;
    overflow-x: auto;
    max-height: 55vh;
    max-height: 55dvh; }

.popup {
  width: 100%;
  position: fixed;
  inset: 0;
  background: rgba(0, 0, 0, 0.7);
  z-index: 10;
  display: none;
  color: #000; }
  .popup.pop-active {
    display: block; }
    .popup.pop-active .popup-box {
      opacity: 1;
      transform: translate(-50%, -50%);
      animation: popupFadeDown .4s ease forwards;
      position: fixed;
      width: 100%;
      max-width: 500px;
      top: 50%;
      left: 50%; }
  .popup.closing .popup-box {
    animation: popupBounceUp .5s ease forwards; }
  .popup .close-btn {
    padding: .5em 2em;
    color: #fff;
    cursor: pointer;
    border: 1px solid #fff;
    transition: all .3s linear;
    bottom: calc(-2em - 15%);
    text-align: center;
    left: 50%;
    position: absolute;
    transform: translateX(-50%); }
    .popup .close-btn:hover {
      filter: drop-shadow(0px 0px 6px #e60012);
      border: 1px solid #fff;
      box-shadow: 0 0 5px #e60012; }
  .popup .pop-link-btn {
    display: block;
    background: #000;
    color: #fff;
    padding: 1em;
    width: calc(100% - 2em - 2px);
    border: solid 1px #000;
    transition-duration: .3s;
    position: relative;
    z-index: 2;
    font-size: .8em;
    margin-top: 1rem;
    text-align: center; }
    .popup .pop-link-btn:hover {
      background: #fff;
      color: #000;
      border-color: #fff; }

.fes-bg {
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: url(../../crfes/images/bg.webp);
  background-repeat: no-repeat;
  background-position: center top;
  background-size: contain; }

.map {
  position: relative;
  cursor: pointer; }
  .map::after {
    content: "";
    width: 40px;
    height: 40px;
    background: url(../../crfes/images/ico-scale.svg);
    background-position: center;
    background-repeat: no-repeat;
    position: absolute;
    right: 5px;
    top: 5px;
    transition-duration: .3s; }
  .map:hover::after {
    transform: scale(1.2); }

.map-pop {
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.5);
  display: none; }
  .map-pop .map-in {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    z-index: 10;
    width: 90%;
    max-width: 900px; }
    .map-pop .map-in .map-box {
      max-width: 900px;
      width: 100%;
      overflow: auto;
      max-height: 70vh; }
      .map-pop .map-in .map-box img {
        width: 200%;
        max-width: 900px; }
    .map-pop .map-in .map-close {
      position: absolute;
      right: 10px;
      top: -60px;
      width: 30px; }
    .map-pop .map-in .sp-scroll {
      position: absolute;
      width: 120px;
      height: 120px;
      background: rgba(47, 55, 75, 0.9);
      border-radius: 120px;
      left: 50%;
      top: 50%;
      transform: translate(-50%, -50%);
      display: flex;
      align-items: center;
      justify-content: center;
      flex-direction: column; }
      .map-pop .map-in .sp-scroll .scroll-icon {
        display: block;
        width: 50px;
        height: 50px;
        position: relative; }
        .map-pop .map-in .sp-scroll .scroll-icon:before {
          content: "";
          background: url(../images/hand-arrow.svg);
          background-repeat: no-repeat;
          background-size: contain;
          background-position: center;
          width: 100%;
          height: 100%;
          position: absolute;
          opacity: .5;
          left: 0;
          top: 0;
          z-index: 0; }
        .map-pop .map-in .sp-scroll .scroll-icon:after {
          content: "";
          background: url(../images/hand.svg);
          background-repeat: no-repeat;
          background-size: contain;
          background-position: center;
          width: 100%;
          height: 100%;
          position: absolute;
          left: 0;
          top: 0;
          z-index: 1;
          animation: scroll-anim 3s linear infinite; }
      .map-pop .map-in .sp-scroll .sc-text {
        margin-top: .5em;
        color: #fff; }

#crfes,
#obonazo {
  max-width: 900px;
  margin: 0 auto;
  padding: 80px 0;
  position: relative;
  z-index: 0; }
  #crfes .inner-wrap,
  #obonazo .inner-wrap {
    max-width: 540px; }
  #crfes:after,
  #obonazo:after {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    background: url(../../crfes/images/bg.webp);
    background-repeat: no-repeat;
    background-position: center top;
    background-size: contain;
    z-index: -1;
    width: 100%;
    min-height: 100vh;
    min-height: 100dvh;
    pointer-events: none; }
  #crfes:before,
  #obonazo:before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    background: url(../../crfes/images/noise.webp);
    background-repeat: no-repeat;
    background-position: center top;
    background-size: contain;
    z-index: 2;
    width: 100%;
    min-height: 100vh;
    min-height: 100dvh;
    mix-blend-mode: soft-light;
    pointer-events: none; }
  #crfes .obo-box,
  #obonazo .obo-box {
    max-width: 800px;
    margin: 0 auto; }
  #crfes .obo-main,
  #obonazo .obo-main {
    margin-bottom: 40px;
    filter: drop-shadow(2px 2px 4px rgba(0, 0, 0, 0.5)); }
  #crfes p,
  #obonazo p {
    margin-bottom: 1em; }
  #crfes .fes-head,
  #obonazo .fes-head {
    position: absolute;
    left: 0;
    top: 1em;
    width: 50%;
    min-width: 320px;
    z-index: 3; }
  #crfes .fes-text-box,
  #obonazo .fes-text-box {
    position: relative;
    filter: drop-shadow(2px 2px 4px rgba(0, 0, 0, 0.5));
    width: calc(100% - 2em);
    margin: 0 auto;
    z-index: 5; }
    #crfes .fes-text-box.fes-obo-text,
    #obonazo .fes-text-box.fes-obo-text {
      margin-top: 40px; }
    #crfes .fes-text-box .fes-text-box-in,
    #obonazo .fes-text-box .fes-text-box-in {
      width: calc(100% - 2em - 4px);
      clip-path: polygon(0 0, calc(100% - 50px) 0, 100% 50px, 100% 100%, 0 100%, 0% 50%);
      background: rgba(0, 0, 0, 0.8);
      padding: 0 1em 1em;
      padding-top: calc(30px + 2em);
      margin: 0 auto;
      position: relative; }
    #crfes .fes-text-box .hilight,
    #obonazo .fes-text-box .hilight {
      color: #ffff00;
      font-weight: 900; }
    #crfes .fes-text-box .name-tag,
    #obonazo .fes-text-box .name-tag {
      position: absolute;
      left: 1em;
      top: -2em;
      width: 50%;
      z-index: 8;
      max-width: 200px; }
    #crfes .fes-text-box .fes-text-bdr,
    #obonazo .fes-text-box .fes-text-bdr {
      width: calc(100% + 16px);
      height: calc(100% + 16px);
      clip-path: polygon(0 0, calc(100% - 50px) 0, 100% 50px, 100% 100%, 0 100%, 0% 50%);
      border: solid 2px #68c7cb;
      position: absolute;
      left: -12px;
      top: -12px;
      z-index: 1;
      pointer-events: none; }
      #crfes .fes-text-box .fes-text-bdr:after,
      #obonazo .fes-text-box .fes-text-bdr:after {
        content: "";
        position: absolute;
        width: 80px;
        height: 2px;
        background: #68c7cb;
        right: -2px;
        top: 48px;
        transform: rotate(45deg);
        transform-origin: right top; }
    #crfes .fes-text-box .fes-text-tri,
    #obonazo .fes-text-box .fes-text-tri {
      position: absolute;
      right: -12px;
      top: -12px;
      background: url(../../crfes/images/fes-tri.svg);
      background-size: contain;
      background-position: center;
      background-repeat: no-repeat;
      width: 40px;
      height: 40px; }
    #crfes .fes-text-box .fes-text-btm,
    #obonazo .fes-text-box .fes-text-btm {
      position: absolute;
      left: calc(-15px + 3px);
      bottom: -12px;
      width: calc(100% + 20px);
      height: 20px;
      z-index: 1; }
      #crfes .fes-text-box .fes-text-btm::before,
      #obonazo .fes-text-box .fes-text-btm::before {
        content: "";
        position: absolute;
        left: 0;
        bottom: 0;
        background: url(../../crfes/images/frame-btm.svg);
        background-size: contain;
        background-position: center;
        background-repeat: no-repeat;
        height: 6px;
        width: 100px; }
      #crfes .fes-text-box .fes-text-btm::after,
      #obonazo .fes-text-box .fes-text-btm::after {
        content: "";
        position: absolute;
        right: 0;
        bottom: 0;
        background: url(../../crfes/images/frame-btm.svg);
        background-size: contain;
        background-position: center;
        background-repeat: no-repeat;
        height: 6px;
        width: 100px; }
    #crfes .fes-text-box .obo-r,
    #obonazo .fes-text-box .obo-r {
      width: calc(80% + 10px); }
    #crfes .fes-text-box .obo-r-bottom,
    #obonazo .fes-text-box .obo-r-bottom {
      position: absolute;
      right: -20px;
      bottom: -10px;
      width: 30%;
      max-width: 120px; }
  #crfes .next-btn,
  #obonazo .next-btn {
    display: block;
    width: calc(90% - 12px);
    margin: 40px auto 0;
    position: relative;
    z-index: 0; }
    #crfes .next-btn:after,
    #obonazo .next-btn:after {
      content: "";
      width: 100%;
      height: 100%;
      position: absolute;
      right: -3px;
      bottom: -3px;
      background: #68c7cb;
      filter: drop-shadow(3px 3px 3px #68c7cb);
      z-index: -1;
      transition-duration: .3s; }
    #crfes .next-btn:hover::after,
    #obonazo .next-btn:hover::after {
      right: 0;
      bottom: 0;
      filter: drop-shadow(3px 3px 0px #68c7cb); }
  #crfes .crfes-head,
  #obonazo .crfes-head {
    text-align: center;
    color: #68c7cb;
    margin-top: 40px;
    position: relative;
    z-index: 5;
    filter: drop-shadow(1px 1px 1px rgba(0, 0, 0, 0.5)); }
  #crfes .question,
  #obonazo .question {
    margin: 40px auto 20px;
    width: 110%;
    margin-left: -5%;
    position: relative;
    z-index: 3; }
  #crfes .advice,
  #obonazo .advice {
    position: relative;
    z-index: 3; }
  #crfes .ans-box,
  #obonazo .ans-box {
    margin: 40px auto;
    position: relative;
    z-index: 3;
    text-align: center; }
    #crfes .ans-box input,
    #obonazo .ans-box input {
      border: solid 2px #00c7af;
      border-radius: 4px;
      background: #fff;
      display: block;
      width: calc(100% - 2em);
      padding: 1em;
      max-width: 300px;
      margin: 1em auto;
      text-align: center; }
    #crfes .ans-box .ans-btn,
    #obonazo .ans-box .ans-btn {
      margin-top: 1em;
      display: block;
      position: relative;
      width: fit-content;
      padding: 0;
      max-width: 240px;
      margin: 1em auto; }
      #crfes .ans-box .ans-btn:after,
      #obonazo .ans-box .ans-btn:after {
        content: "";
        width: 100%;
        height: 100%;
        position: absolute;
        right: -3px;
        bottom: -3px;
        background: #68c7cb;
        filter: drop-shadow(3px 3px 3px #68c7cb);
        z-index: -1;
        transition-duration: .3s; }
      #crfes .ans-box .ans-btn:hover::after,
      #obonazo .ans-box .ans-btn:hover::after {
        right: 0;
        bottom: 0;
        filter: drop-shadow(3px 3px 0px #68c7cb); }
  #crfes .hint-box,
  #obonazo .hint-box {
    margin-bottom: 2em;
    position: relative;
    z-index: 3;
    filter: drop-shadow(2px 2px 4px rgba(0, 0, 0, 0.5)); }
    #crfes .hint-box .hint-head,
    #obonazo .hint-box .hint-head {
      border-bottom: solid 1px #00c7af;
      padding-bottom: .5em;
      margin-bottom: .5em;
      position: relative;
      font-size: 1.2em;
      background: #00c7af;
      padding: .5em;
      padding-right: 2em; }
      #crfes .hint-box .hint-head::after,
      #obonazo .hint-box .hint-head::after {
        content: "";
        position: absolute;
        right: 0;
        top: 50%;
        background: url(../images/ac-arrow.svg);
        width: 1em;
        height: 1em;
        background-position: center;
        background-repeat: no-repeat;
        background-size: contain;
        transition-duration: .3s;
        transform: translate(-50%, -50%); }
      #crfes .hint-box .hint-head.hi-active::after,
      #obonazo .hint-box .hint-head.hi-active::after {
        transform: translate(-50%, -50%) rotate(180deg); }
    #crfes .hint-box .hint-ac,
    #obonazo .hint-box .hint-ac {
      display: none; }
    #crfes .hint-box .hint-box,
    #obonazo .hint-box .hint-box {
      display: none; }
      #crfes .hint-box .hint-box.hint-1,
      #obonazo .hint-box .hint-box.hint-1 {
        display: block; }

.ans-pop {
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: 10;
  background: radial-gradient(circle, #2b4262 0%, #1d2e44 100%);
  display: none; }
  .ans-pop:before {
    content: "";
    position: absolute;
    right: 0;
    margin: 0 auto;
    left: 0;
    top: 0;
    background: url(../../crfes/images/noise2.webp);
    background-repeat: no-repeat;
    background-position: center top;
    background-size: cover;
    z-index: 2;
    width: 100%;
    min-height: 100vh;
    min-height: 100dvh;
    mix-blend-mode: soft-light;
    pointer-events: none;
    opacity: .5;
    animation: noiseAnim .2s ease infinite; }
  .ans-pop .true {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    width: 80%;
    z-index: 10;
    display: none;
    max-width: 500px;
    animation: popupFadeDown .4s ease forwards; }
  .ans-pop .false {
    display: none;
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    width: 80%;
    z-index: 10;
    max-width: 500px;
    animation: popupFadeDown .4s ease forwards; }
  .ans-pop.true-pop .true {
    display: block; }
  .ans-pop.true-pop .false {
    display: none; }
  .ans-pop.false-pop .true {
    display: none; }
  .ans-pop.false-pop .false {
    display: block; }

.conect-load {
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: url(../../crfes/images/connect-bg.webp);
  background-repeat: no-repeat;
  background-position: center top;
  background-size: cover;
  z-index: 2; }
  .conect-load .connect-box {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    width: 90%;
    filter: drop-shadow(2px 2px 2px rgba(0, 0, 0, 0.5));
    max-width: 900px; }
    .conect-load .connect-box .gauge-anim {
      position: absolute;
      left: 0;
      top: 0;
      width: 100%; }
      .conect-load .connect-box .gauge-anim .cls-1 {
        animation: gauge 3s linear both;
        animation-delay: .3s; }
  .conect-load .connect-2 {
    position: fixed;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background: #000;
    opacity: 0;
    animation: fadeins .5s linear both;
    animation-delay: 3.3s; }
    .conect-load .connect-2 .close-box {
      position: absolute;
      left: 50%;
      top: 50%;
      transform: translate(-50%, -50%);
      width: 100%; }
    .conect-load .connect-2 img {
      width: 90%;
      transform-origin: center;
      animation: load_close .2s linear both;
      animation-delay: 3.8s; }

@keyframes clowdTop {
  0% {
    top: -50px; }
  50% {
    top: -45px; }
  100% {
    top: -50px; } }
#oniku-loading {
  position: fixed;
  left: 0;
  top: 0;
  z-index: 50;
  width: 100%;
  height: 100%; }
  #oniku-loading .load-top {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 50%;
    background: #f5dcdd;
    z-index: -1;
    animation: loadout .2s linear both;
    animation-delay: 2.5s; }
  #oniku-loading .load-bottom {
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 50%;
    background: #f5dcdd;
    z-index: -1;
    animation: loadout2 .2s linear both;
    animation-delay: 2.5s; }
  #oniku-loading .load-logo {
    max-width: 500px;
    width: 80%;
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    z-index: 5;
    transform-origin: center;
    animation: logoBounce 1s linear infinite; }

#oniku {
  background: #d26167;
  width: 100%;
  padding-top: 250px;
  position: relative;
  z-index: 0; }
  #oniku:before {
    content: "";
    position: absolute;
    left: -10%;
    top: -100px;
    width: 120%;
    height: 250px;
    background: url(../../obo/images/oniku-top.svg);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center bottom;
    animation: clowdTop 2s infinite; }
  #oniku:after {
    content: "";
    background: url(../../obo/images/oniku-bg.svg);
    position: absolute;
    background-size: 30px;
    z-index: -1;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%; }
  #oniku .oniku-box {
    max-width: 600px;
    margin: 0 auto;
    padding: 0 0 60px;
    position: relative; }
    #oniku .oniku-box .oniku-text-box {
      position: relative;
      padding-top: 50px; }
    #oniku .oniku-box .types {
      visibility: hidden; }
    #oniku .oniku-box .bug {
      display: none;
      position: absolute;
      left: 0;
      top: 0;
      width: 100%;
      height: 100%;
      z-index: 10;
      pointer-events: none; }
      #oniku .oniku-box .bug .bug-item {
        position: absolute;
        width: 50px;
        z-index: 10;
        animation: bugs 2s infinite; }
        #oniku .oniku-box .bug .bug-item:nth-of-type(2n) {
          animation: bugs 1s infinite; }
      #oniku .oniku-box .bug .bug-1 {
        top: 15%;
        left: -25px; }
      #oniku .oniku-box .bug .bug-2 {
        top: 60%;
        left: 25%;
        width: 20px; }
      #oniku .oniku-box .bug .bug-3 {
        bottom: 15%;
        left: 5%;
        width: 40px; }
      #oniku .oniku-box .bug .bug-4 {
        bottom: 15%;
        right: -25px;
        width: 40px; }
      #oniku .oniku-box .bug .bug-5 {
        bottom: -5%;
        right: 25%;
        width: 20px; }
      #oniku .oniku-box .bug .bug-6 {
        top: 15%;
        right: 10%;
        width: 20px; }
    #oniku .oniku-box .oniku-logo {
      position: absolute;
      left: 0;
      top: -115px;
      width: 65%;
      z-index: 2; }
    #oniku .oniku-box .karubi {
      position: absolute;
      right: 0;
      top: -115px;
      width: 50%;
      z-index: 0; }
    #oniku .oniku-box .oniku-text {
      width: calc(100% - 4em - 6px);
      padding: 2em;
      border: solid 3px #000;
      border-radius: 20px;
      background: #f0cbcc;
      color: #333;
      position: relative;
      z-index: 1;
      transition-duration: 2.5s; }
      #oniku .oniku-box .oniku-text::before {
        content: "";
        width: calc(100% - 1em);
        height: calc(100% - 1em);
        left: .5em;
        top: .5em;
        background: #fff;
        position: absolute;
        z-index: -1;
        border-radius: 20px;
        filter: blur(5px); }
      #oniku .oniku-box .oniku-text::after {
        content: "";
        width: calc(100% - 2em);
        height: calc(100% - 2em);
        left: 1em;
        top: 1em;
        background: #fff;
        position: absolute;
        z-index: -1;
        border-radius: 20px; }
      #oniku .oniku-box .oniku-text p {
        margin-bottom: 2em; }
        #oniku .oniku-box .oniku-text p:last-of-type {
          margin-bottom: 0; }
      #oniku .oniku-box .oniku-text .oniku-text-in {
        display: none;
        min-height: 300px; }
        #oniku .oniku-box .oniku-text .oniku-text-in.q-active {
          display: block; }
      #oniku .oniku-box .oniku-text .folder {
        max-width: 200px;
        margin: 60px auto;
        pointer-events: none; }
        #oniku .oniku-box .oniku-text .folder.folder-on {
          pointer-events: auto; }
      #oniku .oniku-box .oniku-text .q1,
      #oniku .oniku-box .oniku-text .q2,
      #oniku .oniku-box .oniku-text .q3,
      #oniku .oniku-box .oniku-text .q4,
      #oniku .oniku-box .oniku-text .q5,
      #oniku .oniku-box .oniku-text .q6 {
        text-align: center; }
        #oniku .oniku-box .oniku-text .q1 .password-box,
        #oniku .oniku-box .oniku-text .q2 .password-box,
        #oniku .oniku-box .oniku-text .q3 .password-box,
        #oniku .oniku-box .oniku-text .q4 .password-box,
        #oniku .oniku-box .oniku-text .q5 .password-box,
        #oniku .oniku-box .oniku-text .q6 .password-box {
          margin: 40px auto;
          text-align: center; }
        #oniku .oniku-box .oniku-text .q1 .password-box-q6,
        #oniku .oniku-box .oniku-text .q2 .password-box-q6,
        #oniku .oniku-box .oniku-text .q3 .password-box-q6,
        #oniku .oniku-box .oniku-text .q4 .password-box-q6,
        #oniku .oniku-box .oniku-text .q5 .password-box-q6,
        #oniku .oniku-box .oniku-text .q6 .password-box-q6 {
          display: flex;
          flex-flow: wrap;
          justify-content: center;
          padding: 20px 0;
          margin: 0 auto; }
          #oniku .oniku-box .oniku-text .q1 .password-box-q6 .pass-q6-1,
          #oniku .oniku-box .oniku-text .q2 .password-box-q6 .pass-q6-1,
          #oniku .oniku-box .oniku-text .q3 .password-box-q6 .pass-q6-1,
          #oniku .oniku-box .oniku-text .q4 .password-box-q6 .pass-q6-1,
          #oniku .oniku-box .oniku-text .q5 .password-box-q6 .pass-q6-1,
          #oniku .oniku-box .oniku-text .q6 .password-box-q6 .pass-q6-1 {
            margin-top: -20px;
            transform: rotate(-5deg);
            position: relative;
            width: 1.5em; }
            #oniku .oniku-box .oniku-text .q1 .password-box-q6 .pass-q6-1::after,
            #oniku .oniku-box .oniku-text .q2 .password-box-q6 .pass-q6-1::after,
            #oniku .oniku-box .oniku-text .q3 .password-box-q6 .pass-q6-1::after,
            #oniku .oniku-box .oniku-text .q4 .password-box-q6 .pass-q6-1::after,
            #oniku .oniku-box .oniku-text .q5 .password-box-q6 .pass-q6-1::after,
            #oniku .oniku-box .oniku-text .q6 .password-box-q6 .pass-q6-1::after {
              content: "";
              position: absolute;
              width: 100%;
              height: 100%;
              background: url(../../obo/images/bake1.svg);
              background-position: center;
              background-repeat: no-repeat;
              left: 0;
              top: 0; }
          #oniku .oniku-box .oniku-text .q1 .password-box-q6 .pass-q6-2,
          #oniku .oniku-box .oniku-text .q2 .password-box-q6 .pass-q6-2,
          #oniku .oniku-box .oniku-text .q3 .password-box-q6 .pass-q6-2,
          #oniku .oniku-box .oniku-text .q4 .password-box-q6 .pass-q6-2,
          #oniku .oniku-box .oniku-text .q5 .password-box-q6 .pass-q6-2,
          #oniku .oniku-box .oniku-text .q6 .password-box-q6 .pass-q6-2 {
            margin-top: -20px;
            font-size: 1.5em;
            transform: rotate(-5deg); }
          #oniku .oniku-box .oniku-text .q1 .password-box-q6 .pass-q6-3,
          #oniku .oniku-box .oniku-text .q2 .password-box-q6 .pass-q6-3,
          #oniku .oniku-box .oniku-text .q3 .password-box-q6 .pass-q6-3,
          #oniku .oniku-box .oniku-text .q4 .password-box-q6 .pass-q6-3,
          #oniku .oniku-box .oniku-text .q5 .password-box-q6 .pass-q6-3,
          #oniku .oniku-box .oniku-text .q6 .password-box-q6 .pass-q6-3 {
            margin-top: -20px;
            font-size: 1.1em;
            transform: rotate(-5deg); }
          #oniku .oniku-box .oniku-text .q1 .password-box-q6 .pass-q6-4,
          #oniku .oniku-box .oniku-text .q2 .password-box-q6 .pass-q6-4,
          #oniku .oniku-box .oniku-text .q3 .password-box-q6 .pass-q6-4,
          #oniku .oniku-box .oniku-text .q4 .password-box-q6 .pass-q6-4,
          #oniku .oniku-box .oniku-text .q5 .password-box-q6 .pass-q6-4,
          #oniku .oniku-box .oniku-text .q6 .password-box-q6 .pass-q6-4 {
            margin-top: 10px;
            margin-left: -5px;
            font-size: 1.1em;
            transform: rotate(0); }
          #oniku .oniku-box .oniku-text .q1 .password-box-q6 .pass-q6-5,
          #oniku .oniku-box .oniku-text .q2 .password-box-q6 .pass-q6-5,
          #oniku .oniku-box .oniku-text .q3 .password-box-q6 .pass-q6-5,
          #oniku .oniku-box .oniku-text .q4 .password-box-q6 .pass-q6-5,
          #oniku .oniku-box .oniku-text .q5 .password-box-q6 .pass-q6-5,
          #oniku .oniku-box .oniku-text .q6 .password-box-q6 .pass-q6-5 {
            margin-top: -20px;
            font-size: 1.1em;
            transform: rotate(-5deg); }
          #oniku .oniku-box .oniku-text .q1 .password-box-q6 .pass-q6-6,
          #oniku .oniku-box .oniku-text .q2 .password-box-q6 .pass-q6-6,
          #oniku .oniku-box .oniku-text .q3 .password-box-q6 .pass-q6-6,
          #oniku .oniku-box .oniku-text .q4 .password-box-q6 .pass-q6-6,
          #oniku .oniku-box .oniku-text .q5 .password-box-q6 .pass-q6-6,
          #oniku .oniku-box .oniku-text .q6 .password-box-q6 .pass-q6-6 {
            margin-top: -30px;
            font-size: 1.1em;
            transform: rotate(0deg); }
          #oniku .oniku-box .oniku-text .q1 .password-box-q6 .pass-q6-7,
          #oniku .oniku-box .oniku-text .q2 .password-box-q6 .pass-q6-7,
          #oniku .oniku-box .oniku-text .q3 .password-box-q6 .pass-q6-7,
          #oniku .oniku-box .oniku-text .q4 .password-box-q6 .pass-q6-7,
          #oniku .oniku-box .oniku-text .q5 .password-box-q6 .pass-q6-7,
          #oniku .oniku-box .oniku-text .q6 .password-box-q6 .pass-q6-7 {
            margin-top: -35px;
            font-size: 1.1em;
            transform: rotate(5deg); }
          #oniku .oniku-box .oniku-text .q1 .password-box-q6 .pass-q6-8,
          #oniku .oniku-box .oniku-text .q2 .password-box-q6 .pass-q6-8,
          #oniku .oniku-box .oniku-text .q3 .password-box-q6 .pass-q6-8,
          #oniku .oniku-box .oniku-text .q4 .password-box-q6 .pass-q6-8,
          #oniku .oniku-box .oniku-text .q5 .password-box-q6 .pass-q6-8,
          #oniku .oniku-box .oniku-text .q6 .password-box-q6 .pass-q6-8 {
            margin-top: -35px;
            font-size: 1.3em;
            transform: rotate(5deg);
            font-weight: 900; }
          #oniku .oniku-box .oniku-text .q1 .password-box-q6 .pass-q6-9,
          #oniku .oniku-box .oniku-text .q2 .password-box-q6 .pass-q6-9,
          #oniku .oniku-box .oniku-text .q3 .password-box-q6 .pass-q6-9,
          #oniku .oniku-box .oniku-text .q4 .password-box-q6 .pass-q6-9,
          #oniku .oniku-box .oniku-text .q5 .password-box-q6 .pass-q6-9,
          #oniku .oniku-box .oniku-text .q6 .password-box-q6 .pass-q6-9 {
            margin-top: -20px;
            font-size: 1.1em;
            transform: rotate(5deg); }
          #oniku .oniku-box .oniku-text .q1 .password-box-q6 .pass-q6-10,
          #oniku .oniku-box .oniku-text .q2 .password-box-q6 .pass-q6-10,
          #oniku .oniku-box .oniku-text .q3 .password-box-q6 .pass-q6-10,
          #oniku .oniku-box .oniku-text .q4 .password-box-q6 .pass-q6-10,
          #oniku .oniku-box .oniku-text .q5 .password-box-q6 .pass-q6-10,
          #oniku .oniku-box .oniku-text .q6 .password-box-q6 .pass-q6-10 {
            margin-top: -10px;
            font-size: 1.1em;
            transform: rotate(-5deg); }
          #oniku .oniku-box .oniku-text .q1 .password-box-q6 .pass-q6-11,
          #oniku .oniku-box .oniku-text .q2 .password-box-q6 .pass-q6-11,
          #oniku .oniku-box .oniku-text .q3 .password-box-q6 .pass-q6-11,
          #oniku .oniku-box .oniku-text .q4 .password-box-q6 .pass-q6-11,
          #oniku .oniku-box .oniku-text .q5 .password-box-q6 .pass-q6-11,
          #oniku .oniku-box .oniku-text .q6 .password-box-q6 .pass-q6-11 {
            margin-top: -10px;
            font-size: .9em;
            transform: rotate(-5deg);
            margin-left: 5px; }
          #oniku .oniku-box .oniku-text .q1 .password-box-q6 .pass-q6-12,
          #oniku .oniku-box .oniku-text .q2 .password-box-q6 .pass-q6-12,
          #oniku .oniku-box .oniku-text .q3 .password-box-q6 .pass-q6-12,
          #oniku .oniku-box .oniku-text .q4 .password-box-q6 .pass-q6-12,
          #oniku .oniku-box .oniku-text .q5 .password-box-q6 .pass-q6-12,
          #oniku .oniku-box .oniku-text .q6 .password-box-q6 .pass-q6-12 {
            margin-top: 0px;
            font-size: 1.5em;
            transform: rotate(5deg); }
          #oniku .oniku-box .oniku-text .q1 .password-box-q6 .pass-q6-13,
          #oniku .oniku-box .oniku-text .q2 .password-box-q6 .pass-q6-13,
          #oniku .oniku-box .oniku-text .q3 .password-box-q6 .pass-q6-13,
          #oniku .oniku-box .oniku-text .q4 .password-box-q6 .pass-q6-13,
          #oniku .oniku-box .oniku-text .q5 .password-box-q6 .pass-q6-13,
          #oniku .oniku-box .oniku-text .q6 .password-box-q6 .pass-q6-13 {
            margin-top: -10px;
            font-size: 1.2em;
            transform: rotate(-5deg);
            margin-left: 5px; }
          #oniku .oniku-box .oniku-text .q1 .password-box-q6 .pass-q6-14,
          #oniku .oniku-box .oniku-text .q2 .password-box-q6 .pass-q6-14,
          #oniku .oniku-box .oniku-text .q3 .password-box-q6 .pass-q6-14,
          #oniku .oniku-box .oniku-text .q4 .password-box-q6 .pass-q6-14,
          #oniku .oniku-box .oniku-text .q5 .password-box-q6 .pass-q6-14,
          #oniku .oniku-box .oniku-text .q6 .password-box-q6 .pass-q6-14 {
            margin-top: 0px;
            font-size: 1em;
            transform: rotate(-5deg);
            margin-left: 5px; }
          #oniku .oniku-box .oniku-text .q1 .password-box-q6 .pass-q6-15,
          #oniku .oniku-box .oniku-text .q2 .password-box-q6 .pass-q6-15,
          #oniku .oniku-box .oniku-text .q3 .password-box-q6 .pass-q6-15,
          #oniku .oniku-box .oniku-text .q4 .password-box-q6 .pass-q6-15,
          #oniku .oniku-box .oniku-text .q5 .password-box-q6 .pass-q6-15,
          #oniku .oniku-box .oniku-text .q6 .password-box-q6 .pass-q6-15 {
            margin-top: -20px;
            transform: rotate(-5deg);
            position: relative;
            width: 1.5em; }
            #oniku .oniku-box .oniku-text .q1 .password-box-q6 .pass-q6-15::after,
            #oniku .oniku-box .oniku-text .q2 .password-box-q6 .pass-q6-15::after,
            #oniku .oniku-box .oniku-text .q3 .password-box-q6 .pass-q6-15::after,
            #oniku .oniku-box .oniku-text .q4 .password-box-q6 .pass-q6-15::after,
            #oniku .oniku-box .oniku-text .q5 .password-box-q6 .pass-q6-15::after,
            #oniku .oniku-box .oniku-text .q6 .password-box-q6 .pass-q6-15::after {
              content: "";
              position: absolute;
              width: 100%;
              height: 100%;
              background: url(../../obo/images/bake1.svg);
              background-position: center;
              background-repeat: no-repeat;
              left: 0;
              top: 0; }
          #oniku .oniku-box .oniku-text .q1 .password-box-q6 .pass-q6-16,
          #oniku .oniku-box .oniku-text .q2 .password-box-q6 .pass-q6-16,
          #oniku .oniku-box .oniku-text .q3 .password-box-q6 .pass-q6-16,
          #oniku .oniku-box .oniku-text .q4 .password-box-q6 .pass-q6-16,
          #oniku .oniku-box .oniku-text .q5 .password-box-q6 .pass-q6-16,
          #oniku .oniku-box .oniku-text .q6 .password-box-q6 .pass-q6-16 {
            margin-top: -20px;
            margin-left: -20px;
            transform: rotate(-5deg);
            position: relative;
            width: 1.5em; }
            #oniku .oniku-box .oniku-text .q1 .password-box-q6 .pass-q6-16::after,
            #oniku .oniku-box .oniku-text .q2 .password-box-q6 .pass-q6-16::after,
            #oniku .oniku-box .oniku-text .q3 .password-box-q6 .pass-q6-16::after,
            #oniku .oniku-box .oniku-text .q4 .password-box-q6 .pass-q6-16::after,
            #oniku .oniku-box .oniku-text .q5 .password-box-q6 .pass-q6-16::after,
            #oniku .oniku-box .oniku-text .q6 .password-box-q6 .pass-q6-16::after {
              content: "";
              position: absolute;
              left: 0;
              top: 0;
              width: 100%;
              height: 100%;
              background: url(../../obo/images/bake2.svg);
              background-position: center;
              background-repeat: no-repeat; }
          #oniku .oniku-box .oniku-text .q1 .password-box-q6 .pass-q6-17,
          #oniku .oniku-box .oniku-text .q2 .password-box-q6 .pass-q6-17,
          #oniku .oniku-box .oniku-text .q3 .password-box-q6 .pass-q6-17,
          #oniku .oniku-box .oniku-text .q4 .password-box-q6 .pass-q6-17,
          #oniku .oniku-box .oniku-text .q5 .password-box-q6 .pass-q6-17,
          #oniku .oniku-box .oniku-text .q6 .password-box-q6 .pass-q6-17 {
            margin-top: -10px;
            font-size: 1em;
            transform: rotate(5deg); }
          #oniku .oniku-box .oniku-text .q1 .password-box-q6 .pass-q6-18,
          #oniku .oniku-box .oniku-text .q2 .password-box-q6 .pass-q6-18,
          #oniku .oniku-box .oniku-text .q3 .password-box-q6 .pass-q6-18,
          #oniku .oniku-box .oniku-text .q4 .password-box-q6 .pass-q6-18,
          #oniku .oniku-box .oniku-text .q5 .password-box-q6 .pass-q6-18,
          #oniku .oniku-box .oniku-text .q6 .password-box-q6 .pass-q6-18 {
            margin-top: 0px;
            font-size: 1.2em;
            transform: rotate(5deg); }
          #oniku .oniku-box .oniku-text .q1 .password-box-q6 .pass-q6-19,
          #oniku .oniku-box .oniku-text .q2 .password-box-q6 .pass-q6-19,
          #oniku .oniku-box .oniku-text .q3 .password-box-q6 .pass-q6-19,
          #oniku .oniku-box .oniku-text .q4 .password-box-q6 .pass-q6-19,
          #oniku .oniku-box .oniku-text .q5 .password-box-q6 .pass-q6-19,
          #oniku .oniku-box .oniku-text .q6 .password-box-q6 .pass-q6-19 {
            margin-top: 0px;
            font-size: 1.2em;
            transform: rotate(5deg); }
          #oniku .oniku-box .oniku-text .q1 .password-box-q6 .pass-q6-20,
          #oniku .oniku-box .oniku-text .q2 .password-box-q6 .pass-q6-20,
          #oniku .oniku-box .oniku-text .q3 .password-box-q6 .pass-q6-20,
          #oniku .oniku-box .oniku-text .q4 .password-box-q6 .pass-q6-20,
          #oniku .oniku-box .oniku-text .q5 .password-box-q6 .pass-q6-20,
          #oniku .oniku-box .oniku-text .q6 .password-box-q6 .pass-q6-20 {
            margin-top: 10px;
            font-size: 1.2em;
            transform: rotate(5deg); }
          #oniku .oniku-box .oniku-text .q1 .password-box-q6 .pass-q6-21,
          #oniku .oniku-box .oniku-text .q2 .password-box-q6 .pass-q6-21,
          #oniku .oniku-box .oniku-text .q3 .password-box-q6 .pass-q6-21,
          #oniku .oniku-box .oniku-text .q4 .password-box-q6 .pass-q6-21,
          #oniku .oniku-box .oniku-text .q5 .password-box-q6 .pass-q6-21,
          #oniku .oniku-box .oniku-text .q6 .password-box-q6 .pass-q6-21 {
            margin-top: 20px;
            font-size: 0.9em;
            transform: rotate(5deg); }
        #oniku .oniku-box .oniku-text .q1 .key-q6-box,
        #oniku .oniku-box .oniku-text .q2 .key-q6-box,
        #oniku .oniku-box .oniku-text .q3 .key-q6-box,
        #oniku .oniku-box .oniku-text .q4 .key-q6-box,
        #oniku .oniku-box .oniku-text .q5 .key-q6-box,
        #oniku .oniku-box .oniku-text .q6 .key-q6-box {
          display: flex;
          flex-flow: wrap;
          justify-content: center;
          padding: 10px 0;
          margin: 0 auto; }
          #oniku .oniku-box .oniku-text .q1 .key-q6-box .pass-q6-1,
          #oniku .oniku-box .oniku-text .q2 .key-q6-box .pass-q6-1,
          #oniku .oniku-box .oniku-text .q3 .key-q6-box .pass-q6-1,
          #oniku .oniku-box .oniku-text .q4 .key-q6-box .pass-q6-1,
          #oniku .oniku-box .oniku-text .q5 .key-q6-box .pass-q6-1,
          #oniku .oniku-box .oniku-text .q6 .key-q6-box .pass-q6-1 {
            margin-top: -6px;
            transform: rotate(-5deg); }
          #oniku .oniku-box .oniku-text .q1 .key-q6-box .pass-q6-2,
          #oniku .oniku-box .oniku-text .q2 .key-q6-box .pass-q6-2,
          #oniku .oniku-box .oniku-text .q3 .key-q6-box .pass-q6-2,
          #oniku .oniku-box .oniku-text .q4 .key-q6-box .pass-q6-2,
          #oniku .oniku-box .oniku-text .q5 .key-q6-box .pass-q6-2,
          #oniku .oniku-box .oniku-text .q6 .key-q6-box .pass-q6-2 {
            margin-top: 6px;
            transform: rotate(0deg); }
          #oniku .oniku-box .oniku-text .q1 .key-q6-box .pass-q6-3,
          #oniku .oniku-box .oniku-text .q2 .key-q6-box .pass-q6-3,
          #oniku .oniku-box .oniku-text .q3 .key-q6-box .pass-q6-3,
          #oniku .oniku-box .oniku-text .q4 .key-q6-box .pass-q6-3,
          #oniku .oniku-box .oniku-text .q5 .key-q6-box .pass-q6-3,
          #oniku .oniku-box .oniku-text .q6 .key-q6-box .pass-q6-3 {
            margin-top: -5px;
            transform: rotate(0deg); }
          #oniku .oniku-box .oniku-text .q1 .key-q6-box .pass-q6-4,
          #oniku .oniku-box .oniku-text .q2 .key-q6-box .pass-q6-4,
          #oniku .oniku-box .oniku-text .q3 .key-q6-box .pass-q6-4,
          #oniku .oniku-box .oniku-text .q4 .key-q6-box .pass-q6-4,
          #oniku .oniku-box .oniku-text .q5 .key-q6-box .pass-q6-4,
          #oniku .oniku-box .oniku-text .q6 .key-q6-box .pass-q6-4 {
            margin-top: 5px;
            transform: rotate(0deg); }
          #oniku .oniku-box .oniku-text .q1 .key-q6-box .pass-q6-5,
          #oniku .oniku-box .oniku-text .q2 .key-q6-box .pass-q6-5,
          #oniku .oniku-box .oniku-text .q3 .key-q6-box .pass-q6-5,
          #oniku .oniku-box .oniku-text .q4 .key-q6-box .pass-q6-5,
          #oniku .oniku-box .oniku-text .q5 .key-q6-box .pass-q6-5,
          #oniku .oniku-box .oniku-text .q6 .key-q6-box .pass-q6-5 {
            margin-top: 0px;
            transform: rotate(-5deg); }
          #oniku .oniku-box .oniku-text .q1 .key-q6-box .pass-q6-6,
          #oniku .oniku-box .oniku-text .q2 .key-q6-box .pass-q6-6,
          #oniku .oniku-box .oniku-text .q3 .key-q6-box .pass-q6-6,
          #oniku .oniku-box .oniku-text .q4 .key-q6-box .pass-q6-6,
          #oniku .oniku-box .oniku-text .q5 .key-q6-box .pass-q6-6,
          #oniku .oniku-box .oniku-text .q6 .key-q6-box .pass-q6-6 {
            margin-top: -5px;
            transform: rotate(5deg); }
          #oniku .oniku-box .oniku-text .q1 .key-q6-box .pass-q6-8,
          #oniku .oniku-box .oniku-text .q2 .key-q6-box .pass-q6-8,
          #oniku .oniku-box .oniku-text .q3 .key-q6-box .pass-q6-8,
          #oniku .oniku-box .oniku-text .q4 .key-q6-box .pass-q6-8,
          #oniku .oniku-box .oniku-text .q5 .key-q6-box .pass-q6-8,
          #oniku .oniku-box .oniku-text .q6 .key-q6-box .pass-q6-8 {
            margin-top: -5px;
            transform: rotate(5deg); }
          #oniku .oniku-box .oniku-text .q1 .key-q6-box .pass-q6-9,
          #oniku .oniku-box .oniku-text .q2 .key-q6-box .pass-q6-9,
          #oniku .oniku-box .oniku-text .q3 .key-q6-box .pass-q6-9,
          #oniku .oniku-box .oniku-text .q4 .key-q6-box .pass-q6-9,
          #oniku .oniku-box .oniku-text .q5 .key-q6-box .pass-q6-9,
          #oniku .oniku-box .oniku-text .q6 .key-q6-box .pass-q6-9 {
            margin-top: 3px;
            transform: rotate(-5deg); }
    #oniku .oniku-box.bug-q6 .oniku-logo {
      transform: rotate(15deg); }
    #oniku .oniku-box.bug-q6 .oniku-text {
      transform: rotate(-2deg); }
  #oniku .next-arrow {
    position: absolute;
    right: 1.5em;
    bottom: 1.5em;
    width: 1.5em;
    cursor: pointer;
    animation: nextArrow 2s infinite;
    display: none; }
    #oniku .next-arrow.next-last {
      display: block; }
  #oniku .oniku-key-box {
    background: #f5dcdd;
    padding: 60px 0;
    position: relative;
    z-index: 0; }
    #oniku .oniku-key-box::after {
      content: "";
      position: absolute;
      left: -10%;
      top: -100px;
      width: 120%;
      height: 250px;
      background: url(../../obo/images/oniku-bottom.svg);
      background-repeat: no-repeat;
      background-size: cover;
      background-position: center top;
      z-index: -1;
      animation: clowdTop 2s infinite; }
    #oniku .oniku-key-box.no-active .oniku-key .key-item,
    #oniku .oniku-key-box.no-active .ans-box {
      pointer-events: none;
      filter: grayscale(1); }
  #oniku .ans-box {
    display: flex;
    max-width: 600px;
    margin: 0 auto 40px; }
    #oniku .ans-box .reset {
      width: 60px;
      text-align: center;
      color: #d26167; }
      #oniku .ans-box .reset .min {
        display: block;
        font-weight: 900; }
      #oniku .ans-box .reset .reset-btn {
        cursor: pointer; }
      #oniku .ans-box .reset.reset-q6 img {
        transform: rotate(245deg); }
      #oniku .ans-box .reset.reset-q6 .min {
        display: none; }
    #oniku .ans-box .inp {
      width: calc(100% - 180px - 2em);
      margin: 0 1em; }
      #oniku .ans-box .inp .input-box {
        width: calc(100% - 2rem - 4px);
        padding: 1rem;
        display: flex;
        align-items: center;
        justify-content: center;
        pointer-events: none;
        user-select: none;
        background: #fff;
        border-radius: 4px;
        border: solid 2px #d26167;
        min-height: 36px;
        color: #d26167;
        text-align: center; }
      #oniku .ans-box .inp.q6-inp {
        transform: rotate(15deg); }
    #oniku .ans-box .enter {
      width: 120px; }
      #oniku .ans-box .enter .enter-btn {
        cursor: pointer; }
      #oniku .ans-box .enter.enter-q6 {
        transform: rotate(-15deg); }
  #oniku .oniku-key {
    max-width: 600px;
    margin: 0 auto;
    position: relative;
    z-index: 0; }
    #oniku .oniku-key .bug {
      position: absolute;
      z-index: 10;
      left: 0;
      top: 0;
      width: 100%;
      height: 100%;
      display: none;
      pointer-events: none; }
      #oniku .oniku-key .bug .bug-item {
        position: absolute;
        z-index: 10;
        width: 30px;
        animation: bugs 2s infinite; }
        #oniku .oniku-key .bug .bug-item:nth-of-type(2n) {
          animation: bugs 1s infinite; }
      #oniku .oniku-key .bug .bug-1 {
        left: 60px;
        top: 60px; }
      #oniku .oniku-key .bug .bug-2 {
        left: -20px;
        top: 50px; }
      #oniku .oniku-key .bug .bug-3 {
        left: 30px;
        top: 120px;
        width: 25px; }
      #oniku .oniku-key .bug .bug-4 {
        right: 90px;
        bottom: -30px;
        width: 30px; }
      #oniku .oniku-key .bug .bug-5 {
        right: -20px;
        top: 30px;
        width: 40px; }
      #oniku .oniku-key .bug .bug-6 {
        right: 30px;
        bottom: 15px;
        width: 40px; }
    #oniku .oniku-key .key-item-box {
      display: flex;
      justify-content: center;
      align-items: center; }
      #oniku .oniku-key .key-item-box .key-item {
        background: url(../../obo/images/key/key-bg.svg);
        background-position: center;
        background-repeat: no-repeat;
        background-size: contain;
        width: calc(100% / 10);
        cursor: pointer;
        transition-duration: 2s;
        filter: grayscale(0.75); }
        #oniku .oniku-key .key-item-box .key-item.key-item2 {
          width: calc(100% / 10 * 1.5);
          background: url(../../obo/images/key/key-bg-2.svg);
          background-position: center;
          background-repeat: no-repeat;
          background-size: contain; }
        #oniku .oniku-key .key-item-box .key-item.key-space {
          width: calc(100% / 10 * 4);
          background: none; }
    #oniku .oniku-key.q1-key .key-item {
      pointer-events: none; }
      #oniku .oniku-key.q1-key .key-item img {
        opacity: .5; }
      #oniku .oniku-key.q1-key .key-item.key-space img {
        opacity: 1; }
      #oniku .oniku-key.q1-key .key-item.key-q1 {
        pointer-events: auto;
        filter: grayscale(0); }
        #oniku .oniku-key.q1-key .key-item.key-q1 img {
          opacity: 1; }
    #oniku .oniku-key.q2-key .key-item {
      pointer-events: none; }
      #oniku .oniku-key.q2-key .key-item img {
        opacity: .5; }
      #oniku .oniku-key.q2-key .key-item.key-space img {
        opacity: 1; }
      #oniku .oniku-key.q2-key .key-item.key-q2 {
        pointer-events: auto;
        filter: grayscale(0); }
        #oniku .oniku-key.q2-key .key-item.key-q2 img {
          opacity: 1; }
    #oniku .oniku-key.q3-key .key-item {
      pointer-events: none; }
      #oniku .oniku-key.q3-key .key-item img {
        opacity: .5; }
      #oniku .oniku-key.q3-key .key-item.key-space img {
        opacity: 1; }
      #oniku .oniku-key.q3-key .key-item.key-q3 {
        pointer-events: auto;
        filter: grayscale(0); }
        #oniku .oniku-key.q3-key .key-item.key-q3 img {
          opacity: 1; }
    #oniku .oniku-key.q4-key .key-item {
      pointer-events: none; }
      #oniku .oniku-key.q4-key .key-item img {
        opacity: .5; }
      #oniku .oniku-key.q4-key .key-item.key-space img {
        opacity: 1; }
      #oniku .oniku-key.q4-key .key-item.key-q4 {
        pointer-events: auto;
        filter: grayscale(0); }
        #oniku .oniku-key.q4-key .key-item.key-q4 img {
          opacity: 1; }
    #oniku .oniku-key.q5-key .key-item {
      pointer-events: none; }
      #oniku .oniku-key.q5-key .key-item img {
        opacity: .5; }
      #oniku .oniku-key.q5-key .key-item.key-space img {
        opacity: 1; }
      #oniku .oniku-key.q5-key .key-item.key-q5 {
        pointer-events: auto;
        filter: grayscale(0); }
        #oniku .oniku-key.q5-key .key-item.key-q5 img {
          opacity: 1; }
    #oniku .oniku-key.q6-key .key-item {
      pointer-events: none; }
      #oniku .oniku-key.q6-key .key-item img {
        opacity: .5; }
      #oniku .oniku-key.q6-key .key-item.key-space img {
        opacity: 1; }
      #oniku .oniku-key.q6-key .key-item.key-q5 {
        pointer-events: auto; }
        #oniku .oniku-key.q6-key .key-item.key-q5 img {
          opacity: 1; }
      #oniku .oniku-key.q6-key .key-item.key-1 {
        margin-left: -45px;
        margin-right: 10px; }
      #oniku .oniku-key.q6-key .key-item.key-2 {
        margin-top: -15px;
        margin-right: 5px; }
      #oniku .oniku-key.q6-key .key-item.key-3 {
        margin-bottom: -10px;
        margin-right: -10px; }
      #oniku .oniku-key.q6-key .key-item.key-4 {
        margin-bottom: 5px;
        margin-right: 5px; }
      #oniku .oniku-key.q6-key .key-item.key-5 {
        margin-top: 5px;
        margin-right: -5px; }
      #oniku .oniku-key.q6-key .key-item.key-6 {
        transform: rotate(5deg);
        margin-top: 5px; }
      #oniku .oniku-key.q6-key .key-item.key-7 {
        margin-left: -5px;
        transform: rotate(-5deg); }
      #oniku .oniku-key.q6-key .key-item.key-8 {
        margin-left: 5px; }
      #oniku .oniku-key.q6-key .key-item.key-9 {
        margin-top: -5px;
        margin-right: -20px;
        margin-left: 20px; }
      #oniku .oniku-key.q6-key .key-item.key-0 {
        margin-top: 5px;
        margin-right: -50px;
        margin-left: 40px; }
      #oniku .oniku-key.q6-key .key-item.key-q {
        margin-left: -15px; }
      #oniku .oniku-key.q6-key .key-item.key-w {
        margin-top: 5px; }
      #oniku .oniku-key.q6-key .key-item.key-e {
        margin-top: -5px;
        transform: rotate(-5deg); }
      #oniku .oniku-key.q6-key .key-item.key-r {
        margin-top: -5px;
        transform: rotate(-5deg); }
      #oniku .oniku-key.q6-key .key-item.key-t {
        transform: rotate(5deg); }
      #oniku .oniku-key.q6-key .key-item.key-y {
        margin-top: -5px;
        transform: rotate(-5deg); }
      #oniku .oniku-key.q6-key .key-item.key-u {
        margin-top: 5px; }
      #oniku .oniku-key.q6-key .key-item.key-i {
        margin-top: -5px;
        transform: rotate(5deg); }
      #oniku .oniku-key.q6-key .key-item.key-o {
        margin-top: 5px; }
      #oniku .oniku-key.q6-key .key-item.key-p {
        margin-top: -5px;
        margin-right: -20px;
        margin-left: 10px; }
      #oniku .oniku-key.q6-key .key-item.key-a {
        margin-top: -5px;
        margin-left: 10px; }
      #oniku .oniku-key.q6-key .key-item.key-s {
        margin-top: 5px; }
      #oniku .oniku-key.q6-key .key-item.key-d {
        margin-top: -5px;
        transform: rotate(5deg); }
      #oniku .oniku-key.q6-key .key-item.key-f {
        margin-top: 5px; }
      #oniku .oniku-key.q6-key .key-item.key-g {
        margin-top: 5px;
        transform: rotate(-5deg); }
      #oniku .oniku-key.q6-key .key-item.key-h {
        margin-left: -5px;
        transform: rotate(-15deg); }
      #oniku .oniku-key.q6-key .key-item.key-j {
        margin-top: -5px;
        transform: rotate(-5deg); }
      #oniku .oniku-key.q6-key .key-item.key-l {
        margin-top: 5px;
        margin-left: 10px; }
      #oniku .oniku-key.q6-key .key-item.key-bikkuri {
        margin-right: 25px; }
      #oniku .oniku-key.q6-key .key-item.key-z {
        margin-right: 25px; }
      #oniku .oniku-key.q6-key .key-item.key-x {
        margin-top: 5px; }
      #oniku .oniku-key.q6-key .key-item.key-c {
        margin-top: -5px;
        margin-right: -5px; }
      #oniku .oniku-key.q6-key .key-item.key-v {
        margin-top: 5px;
        margin-left: -20px;
        transform: rotate(-5deg); }
      #oniku .oniku-key.q6-key .key-item.key-b {
        transform: rotate(5deg); }
      #oniku .oniku-key.q6-key .key-item.key-n {
        margin-top: 5px;
        margin-left: 10px; }
      #oniku .oniku-key.q6-key .key-item.key-m {
        margin-right: 25px;
        transform: rotate(-15deg); }
      #oniku .oniku-key.q6-key .key-item.key-ques {
        margin-right: -30px; }
      #oniku .oniku-key.q6-key .key-item.key-ctrl {
        margin-left: -50px; }
      #oniku .oniku-key.q6-key .key-item.key-alt {
        margin-top: -15px; }
      #oniku .oniku-key.q6-key .key-item.key-hash {
        margin-bottom: -15px;
        transform: rotate(-15deg); }
      #oniku .oniku-key.q6-key .key-item.key-sp {
        margin-right: -30px; }
      #oniku .oniku-key.q6-key .key-item.key-and {
        margin-top: -5px;
        margin-right: -5px; }
      #oniku .oniku-key.q6-key .key-item.key-pasent {
        margin-bottom: -35px; }
      #oniku .oniku-key.q6-key .key-item.key-doru {
        margin-top: 5px; }
  #oniku .obo-box {
    position: fixed;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    z-index: 100;
    display: none; }
    #oniku .obo-box:before {
      content: "";
      position: absolute;
      left: 0;
      top: 0;
      background: url(../../crfes/images/noise.webp);
      background-repeat: no-repeat;
      background-position: center top;
      background-size: cover;
      z-index: 2;
      width: 100%;
      min-height: 100vh;
      min-height: 100dvh;
      mix-blend-mode: soft-light;
      opacity: 0.4; }
    #oniku .obo-box .last-text {
      margin: 3em auto 0;
      text-align: center;
      color: #fff; }
    #oniku .obo-box .lock-box {
      position: relative; }
      #oniku .obo-box .lock-box svg .st0 {
        fill: #d26167; }
      #oniku .obo-box .lock-box svg .st1 {
        fill: #f5dcdd; }
      #oniku .obo-box .lock-box svg .lk-top {
        animation: lock .5s ease forwards;
        animation-delay: 1s; }
      #oniku .obo-box .lock-box .lock {
        position: absolute;
        left: 0;
        top: 0;
        width: calc(100% - 2em);
        height: calc(100% - 2em);
        background: #fff;
        z-index: 1;
        padding: 1em;
        display: none; }
        #oniku .obo-box .lock-box .lock .lock-item {
          right: 0;
          left: 0;
          bottom: 0;
          width: 30%;
          margin: 0 auto; }
        #oniku .obo-box .lock-box .lock .bdr {
          position: absolute;
          left: 0;
          top: 0;
          z-index: -1;
          width: 100%;
          height: 100%; }
          #oniku .obo-box .lock-box .lock .bdr .bd {
            width: 30px;
            height: 5px;
            background: #d26167;
            position: absolute;
            left: 50%;
            top: 50%;
            border-radius: 5px;
            width: 0;
            opacity: 0; }
          #oniku .obo-box .lock-box .lock .bdr .bd1 {
            transform: rotate(65deg) translate(-50%, -50%);
            left: 33%;
            top: 25%;
            animation: lockBd .5s ease forwards;
            animation-delay: 1s; }
          #oniku .obo-box .lock-box .lock .bdr .bd2 {
            transform: rotate(5deg) translate(-50%, -50%);
            left: 32%;
            top: 32%;
            width: 25px;
            animation: lockBd2 .5s ease forwards;
            animation-delay: 1s; }
          #oniku .obo-box .lock-box .lock .bdr .bd3 {
            transform: rotate(-45deg) translate(-50%, -50%);
            left: 32%;
            top: 40%;
            animation: lockBd .5s ease forwards;
            animation-delay: 1s; }
    #oniku .obo-box .obo-text-1 {
      padding-bottom: 65px; }
    #oniku .obo-box p {
      margin-top: 1em; }
    #oniku .obo-box .obo-in {
      max-width: 600px;
      margin: 0 auto;
      width: calc(100% - 2em);
      position: relative;
      z-index: 5;
      overflow-y: auto;
      max-height: calc(100% - 2em);
      padding: 1em 0; }
      #oniku .obo-box .obo-in .obo-main {
        margin-bottom: 60px; }
      #oniku .obo-box .obo-in .next-arrow {
        z-index: 10; }
  #oniku .fes-text-box {
    position: relative;
    filter: drop-shadow(2px 2px 4px rgba(0, 0, 0, 0.5));
    width: calc(100% - 2em);
    margin: 0 auto;
    z-index: 5; }
    #oniku .fes-text-box.fes-obo-text {
      margin-top: 40px; }
    #oniku .fes-text-box .fes-text-box-in {
      width: calc(100% - 2em - 4px);
      clip-path: polygon(0 0, calc(100% - 50px) 0, 100% 50px, 100% 100%, 0 100%, 0% 50%);
      background: rgba(0, 0, 0, 0.8);
      padding: 0 1em 1em;
      padding-top: calc(30px + 2em);
      margin: 0 auto;
      position: relative; }
    #oniku .fes-text-box .hilight {
      color: #ffff00;
      text-decoration: underline; }
    #oniku .fes-text-box .name-tag {
      position: absolute;
      left: 1em;
      top: -2em;
      width: 50%;
      z-index: 8;
      max-width: 200px; }
    #oniku .fes-text-box .fes-text-bdr {
      width: calc(100% + 16px);
      height: calc(100% + 16px);
      clip-path: polygon(0 0, calc(100% - 50px) 0, 100% 50px, 100% 100%, 0 100%, 0% 50%);
      border: solid 2px #68c7cb;
      position: absolute;
      left: -12px;
      top: -12px;
      z-index: 1;
      pointer-events: none; }
      #oniku .fes-text-box .fes-text-bdr:after {
        content: "";
        position: absolute;
        width: 80px;
        height: 2px;
        background: #68c7cb;
        right: -2px;
        top: 48px;
        transform: rotate(45deg);
        transform-origin: right top; }
    #oniku .fes-text-box .fes-text-tri {
      position: absolute;
      right: -12px;
      top: -12px;
      background: url(../../crfes/images/fes-tri.svg);
      background-size: contain;
      background-position: center;
      background-repeat: no-repeat;
      width: 40px;
      height: 40px; }
    #oniku .fes-text-box .fes-text-btm {
      position: absolute;
      left: calc(-15px + 3px);
      bottom: -12px;
      width: calc(100% + 20px);
      height: 20px;
      z-index: 1; }
      #oniku .fes-text-box .fes-text-btm::before {
        content: "";
        position: absolute;
        left: 0;
        bottom: 0;
        background: url(../../crfes/images/frame-btm.svg);
        background-size: contain;
        background-position: center;
        background-repeat: no-repeat;
        height: 6px;
        width: 100px; }
      #oniku .fes-text-box .fes-text-btm::after {
        content: "";
        position: absolute;
        right: 0;
        bottom: 0;
        background: url(../../crfes/images/frame-btm.svg);
        background-size: contain;
        background-position: center;
        background-repeat: no-repeat;
        height: 6px;
        width: 100px; }
    #oniku .fes-text-box .obo-r {
      width: calc(80% + 10px); }
    #oniku .fes-text-box .obo-r-bottom {
      position: absolute;
      right: -20px;
      bottom: -10px;
      width: 30%;
      max-width: 120px; }
  #oniku .next-btn {
    display: block;
    width: calc(100% - 12px);
    margin: 40px auto 0;
    position: relative;
    z-index: 0; }
    #oniku .next-btn:after {
      content: "";
      width: 100%;
      height: 100%;
      position: absolute;
      right: -3px;
      bottom: -3px;
      background: #68c7cb;
      filter: drop-shadow(3px 3px 3px #68c7cb);
      z-index: -1;
      transition-duration: .3s; }
    #oniku .next-btn:hover::after {
      right: 0;
      bottom: 0;
      filter: drop-shadow(3px 3px 0px #68c7cb); }

@media screen and (max-width: 900px) {
  #howtoplay .how-wrap {
    max-width: 600px;
    margin: 0 auto; }
  #howtoplay .howto-item {
    max-width: 600px; }
  #howtoplay .swiper-btn.pc-no-active {
    opacity: 1;
    pointer-events: auto; }
  #howtoplay .swiper-btn.sp-no-active {
    opacity: 0;
    pointer-events: none; }

  #goods .goods-box {
    max-width: 600px;
    margin: 0 auto; }
    #goods .goods-box .goods-item {
      width: 46%;
      margin: 2%; } }
@media screen and (max-width: 540px) {
  @keyframes lockBd {
    0% {
      width: 0;
      opacity: 0; }
    50% {
      opacity: 0; }
    100% {
      opacity: 1;
      width: 20px; } }
  @keyframes lockBd2 {
    0% {
      width: 0;
      opacity: 0; }
    50% {
      opacity: 0; }
    100% {
      opacity: 1;
      width: 15px; } }
  #main-v {
    /*  img {
      object-fit: cover;
      height: 65vh;
      height: 65dvh;
    } */ }

  section {
    padding: 60px 0; }

  .menu-btn {
    max-width: 90px; }

  .head-box {
    max-width: 340px;
    width: 90%;
    margin: 0 auto 20px; }

  #character .chara-panel .panel-in {
    width: calc(80% - 2em - 6px);
    padding: 2em 1em; }
    #character .chara-panel .panel-in .panel-tp {
      top: -13px; }
    #character .chara-panel .panel-in:before {
      bottom: -40px; }
    #character .chara-panel .panel-in:after {
      bottom: -40px; }
  #character .chara-panel::before {
    max-width: 50px;
    margin: 0;
    left: -10px;
    right: initial; }
  #character .chara-panel::after {
    max-width: 50px;
    margin: 0;
    left: calc(100% - 40px);
    right: initial; }

  #about .about-head-box {
    padding: 60px 0; }
    #about .about-head-box:before {
      top: 20px; }
    #about .about-head-box:after {
      bottom: 20px; }
  #about .sp {
    display: block; }
  #about .bnr-box .bnr-item .bnr-item-in {
    border-radius: 16px;
    position: relative; }
    #about .bnr-box .bnr-item .bnr-item-in:before {
      background-position: center top; }
    #about .bnr-box .bnr-item .bnr-item-in:after {
      top: 10px;
      height: calc(100% - 20px); }
  #about .bnr-box .bnr-item .bnr-bt::after {
    background-position: center bottom; }

  #howtoplay .how-swiper {
    padding: 15px 0; }
  #howtoplay .howto-item {
    width: calc(100% - 16px);
    padding-left: 12px;
    margin: 0 auto; }
    #howtoplay .howto-item .bd2 {
      top: -34px; }
  #howtoplay .how-wrap {
    width: calc(100% - 40px); }
  #howtoplay .swiper-btn {
    width: 25px;
    height: 25px;
    right: -25px; }
    #howtoplay .swiper-btn.swiper-prev {
      left: -25px; }

  #beginner {
    padding: 0px 0 30px; }
    #beginner .begiiner-ico {
      max-width: 25px; }

  #play .play-box .play-item {
    width: 50%;
    margin: 0; }
    #play .play-box .play-item.play-item-100 {
      width: 100%; }
      #play .play-box .play-item.play-item-100 img {
        width: 50%; }
  #play .play-line {
    margin: 40px auto 0; }
  #play .play-line {
    padding: 15px; }
    #play .play-line .col-l {
      width: 80px; }
    #play .play-line .col-r {
      width: calc(100% - 1em - 80px); }
    #play .play-line .play-tp {
      top: -15px; }
    #play .play-line .play-bt {
      bottom: -15px; }

  #info {
    padding-bottom: 120px; }
    #info .info-item {
      margin-bottom: 60px; }
    #info .u22 .u22-flex {
      flex-direction: column; }
      #info .u22 .u22-flex .col-l {
        max-width: 200px; }
      #info .u22 .u22-flex .col-r {
        width: 100%;
        margin: 1em auto; }
    #info .u22 .u22-in {
      padding: 2em 1em; }
      #info .u22 .u22-in:before {
        background-position: center top; }
      #info .u22 .u22-in::after {
        top: 14px;
        width: 100%;
        height: calc(100% - 28px); }
      #info .u22 .u22-in .u22-bt:after {
        background-position: center bottom; }
      #info .u22 .u22-in .u22-bt a {
        background: #1a1a1a;
        padding: 0px 5px;
        width: 30%;
        right: 4.5%;
        bottom: -5px; }
        #info .u22 .u22-in .u22-bt a:hover {
          right: 3.5%; }
    #info .forkids .fk-flex {
      flex-direction: column; }
      #info .forkids .fk-flex .col-l {
        max-width: 200px; }
      #info .forkids .fk-flex .col-r {
        width: 100%;
        margin: 1em auto; }
    #info .forkids .fk-in {
      padding: 2em 1em; }
      #info .forkids .fk-in:before {
        background-position: center top; }
      #info .forkids .fk-in::after {
        top: 14px;
        width: 100%;
        height: calc(100% - 28px); }
      #info .forkids .fk-in .fk-bt:after {
        background-position: center bottom; }
      #info .forkids .fk-in .fk-bt a {
        background: #1a1a1a;
        padding: 0px 5px;
        width: 30%;
        right: 4.5%;
        bottom: -5px; }
        #info .forkids .fk-in .fk-bt a:hover {
          right: 3.5%; }
    #info .ti-notice .ticket-notice-head {
      max-width: 280px; }

  #goods .goods-box .goods-item {
    width: 48%;
    margin: 1%; }

  #notice {
    padding: 80px 0 60px; }

  @keyframes popupFadeDown {
    0% {
      opacity: 0;
      top: -45%; }
    70% {
      opacity: 1; }
    100% {
      top: 45%; } }
  .frame-wrap {
    width: 90%; }

  .frame .frame-content {
    padding: 3em 1em; }

  .popup .popup-box {
    max-width: 400px; }

  .sns-box {
    width: 45px;
    right: .5em;
    bottom: 90px; }

  #oniku {
    padding-top: 160px; }
    #oniku:before {
      height: 150px;
      top: -50px; }
    #oniku .oniku-box {
      padding: 0 0 80px; }
      #oniku .oniku-box .oniku-text-box {
        padding-top: 0; }
      #oniku .oniku-box .oniku-logo {
        display: flex;
        align-items: flex-end;
        top: -115px;
        width: calc(100% - 135px);
        height: 140px;
        transition-duration: 1s; }
      #oniku .oniku-box .karubi {
        top: -115px;
        width: 180px; }
    #oniku .oniku-key-box::after {
      height: 150px;
      top: -50px; }
    #oniku .ans-box {
      margin-bottom: 20px; } }
/*=========ticketapi===========*/
.ticketWrap {
  margin: 0 auto;
  padding: 20px 6%;
  position: relative;
  width: 88%;
  transition: height 0.7s;
  background: rgba(0, 0, 0, 0.5); }

.ticketWrap .naviBox {
  height: 80px;
  margin: 0;
  padding: 0 0 0 0;
  overflow: hidden; }

.ticketWrap .naviBox .prevBtn {
  width: 50px;
  height: 84px;
  background: #d26167;
  z-index: 5;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  cursor: pointer;
  position: absolute;
  top: 40px;
  left: 0%; }

.ticketWrap .naviBox .prevBtn:after {
  content: "";
  width: 12px;
  height: 12px;
  border: 0;
  border-top: solid 3px #fff;
  border-right: solid 3px #fff;
  top: 50%;
  left: 50%;
  -webkit-transform: translate3d(-50%, -50%, 0);
  transform: translate3d(-50%, -50%, 0);
  -webkit-transform: rotate(-135deg);
  transform: rotate(-135deg);
  margin: -8px 0 0 -3px;
  position: absolute; }

.ticketWrap .naviBox .nextBtn {
  width: 50px;
  height: 84px;
  background: #d26167;
  z-index: 5;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  cursor: pointer;
  position: absolute;
  top: 40px;
  right: 0%; }

.ticketWrap .naviBox .nextBtn:after {
  content: "";
  width: 12px;
  height: 12px;
  border: 0;
  border-top: solid 3px #fff;
  border-right: solid 3px #fff;
  top: 50%;
  left: 50%;
  -webkit-transform: translate3d(-50%, -50%, 0);
  transform: translate3d(-50%, -50%, 0);
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  margin: -8px 0 0 -10px;
  position: absolute; }

.ticketWrap .naviBox .prevBtn:hover,
.ticketWrap .naviBox .nextBtn:hover {
  opacity: 0.7; }

.ticketWrap .naviBox .prevBtn span,
.ticketWrap .naviBox .nextBtn span {
  display: none; }

.ticketWrap .naviBox .comm {
  width: 100%;
  top: 25px;
  font-size: 14px;
  color: #ffffff;
  text-align: center;
  font-weight: bold;
  position: relative;
  display: none; }

.ticketWrap .naviBox ul {
  background: rgba(0, 0, 0, 0.2);
  height: 80px;
  list-style: none;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  /* overflow-x: scroll; */
  width: 100%;
  margin: 0;
  padding: 0;
  z-index: 3;
  position: relative; }

.ticketWrap .naviBox ul::-webkit-scrollbar {
  height: 0; }

.ticketWrap .naviBox ul li {
  margin: 0 2px 0 0;
  position: relative;
  cursor: pointer;
  opacity: 0.85;
  width: 80px;
  height: 80px; }

.ticketWrap .naviBox ul li .scheduleBox {
  background: #ffffff;
  display: block;
  width: 80px;
  height: 80px;
  text-align: center;
  cursor: pointer;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  position: relative;
  color: #676767;
  text-align: center;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-direction: column;
  flex-direction: column;
  -webkit-justify-content: center;
  justify-content: center;
  -webkit-align-items: center;
  align-items: center; }

.ticketWrap .naviBox ul li.cr {
  opacity: 1; }

.ticketWrap .naviBox ul li.cr .scheduleBox {
  background: #fbe663; }

.ticketWrap .naviBox ul li .scheduleBox:hover {
  opacity: 0.7; }

.ticketWrap .naviBox ul li .scheduleBox .date {
  width: 100%;
  font-size: 14px;
  font-weight: 500;
  line-height: 1;
  top: 28px; }

.ticketWrap .naviBox ul li .scheduleBox .state {
  bottom: 10px;
  width: 100%;
  font-size: 10px;
  font-weight: 500;
  line-height: 1;
  color: #676767;
  margin-top: 10px; }

.ticketWrap .naviBox ul li .scheduleBox .state span {
  font-size: 10px;
  font-weight: 500; }

.ticketWrap .naviBox ul li .scheduleBox.present .state span {
  color: #32b16c; }

.ticketWrap .naviBox ul li .scheduleBox.present .state span:before {
  content: "○"; }

.ticketWrap .naviBox ul li .scheduleBox.sold .state {
  color: #9d9d9d; }

.ticketWrap .naviBox ul li .scheduleBox.sold .state span:before {
  content: "✕"; }

.ticketWrap .naviBox ul li .scheduleBox.few .state {
  color: #960b0b; }

.ticketWrap .naviBox ul li .scheduleBox.few .state span:before {
  content: "△"; }

.ticketWrap .detailsWrap {
  overflow: hidden;
  opacity: 1;
  transition: opacity 0.7s 0.2s; }

.ticketWrap .detailsWrap.loading {
  opacity: 0;
  transition-duration: 0s;
  transition-delay: 0s; }

.ticketWrap .detailsBox .tit {
  margin: 0;
  padding: 20px 0 20px 0;
  font-size: 20px;
  letter-spacing: 0.1em;
  line-height: 1;
  color: #FFE200;
  font-weight: 500;
  text-align: center;
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: center;
  justify-content: center;
  -webkit-align-items: flex-end;
  align-items: flex-end;
  -webkit-box-align: baseline;
  -ms-flex-align: baseline;
  align-items: baseline; }
  .ticketWrap .detailsBox .tit p {
    margin-bottom: 0; }

.ticketWrap .detailsBox .tit .tit01 {
  font-size: 25px;
  margin-right: 5px;
  padding-bottom: 2px; }

.ticketWrap .detailsBox .details {
  background: #d26167;
  padding: 2%;
  color: #fff; }
  .ticketWrap .detailsBox .details h4:after {
    display: none; }

.ticketWrap .detailsBox .details h4 {
  margin: 0 0 0 0;
  padding: 0 0 5px 0;
  font-size: 15px;
  letter-spacing: 0;
  line-height: 1;
  border-bottom: 2px solid #bfbfbf;
  position: relative; }

.ticketWrap .detailsBox .details a.scrap {
  position: absolute;
  top: 0;
  right: 0;
  padding-right: 15px;
  color: #FFE200;
  font-size: 15px; }

.ticketWrap .detailsBox .details .no_events {
  text-align: center;
  margin: 50px auto;
  opacity: 0.5; }

/*===================sp=*/
@media screen and (max-width: 860px) {
  .ticketWrap .naviBox ul li .scheduleBox:hover {
    opacity: 1; }

  .ticketWrap .detailsBox .details h4 {
    margin: 0 0 0 0;
    padding: 0 0 5px 0;
    font-size: 15px;
    letter-spacing: 0;
    line-height: 1;
    border-bottom: 2px solid #bfbfbf;
    position: relative;
    line-height: 2; }

  .ticketWrap .detailsBox .details a.scrap {
    position: relative;
    right: 0;
    text-align: right; }

  .ticketWrap .naviBox .prevBtn:hover,
  .ticketWrap .naviBox .nextBtn:hover {
    opacity: 1; } }
/*====================*/
.ticketWrap .detailsBox .details a.scrap:after {
  content: "";
  width: 8px;
  height: 8px;
  border: 0;
  border-top: solid 2px #FFE200;
  border-right: solid 2px #FFE200;
  top: 50%;
  right: 0;
  -webkit-transform: translate3d(-50%, -50%, 0);
  transform: translate3d(-50%, -50%, 0);
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  margin: -5px 0 0 0px;
  position: absolute; }

.ticketWrap .detailsBox .details a.scrap:hover {
  text-decoration: none;
  opacity: 0.7; }

.ticketWrap .detailsBox .details ul {
  /*
                          margin-left: -15px;
                          margin-right: -15px;
                          list-style: none;
                          display: block;
                          margin: 0 -5px;
                          padding: 0;
                          margin-bottom: 50px;
  */
  width: 102%;
  list-style: none;
  display: block;
  margin-bottom: 50px;
  margin-top: 2%; }

.ticketWrap .detailsBox .details ul:before,
.ticketWrap .detailsBox .details ul:after {
  content: " ";
  display: table; }

.ticketWrap .detailsBox .details ul:after {
  clear: both; }

.ticketWrap .detailsBox .details ul li {
  /*
                          position: relative;
                          float: left;
                          width: 23%;
                          min-height: 1px;
                          padding-left: 15px;
                          padding-right: 15px;
                          padding: 0 0 0 5px;
                          margin: 15px 10px 0 0;
  */
  position: relative;
  float: left;
  width: 23%;
  min-height: 1px;
  margin-right: 2%;
  margin-top: 2%; }

/*===================sp=*/
@media screen and (max-width: 860px) {
  .ticketWrap .detailsBox .details ul li {
    position: relative;
    float: left;
    width: 94%;
    min-height: 1px;
    padding-left: 3%;
    padding-right: 3%;
    margin: 15px auto 0 auto; }

  .ticketWrap .detailsBox .details a.scrap:hover {
    text-decoration: none;
    opacity: 1; } }
/*====================*/
.ticketWrap .detailsBox .details ul li .scheduleBox {
  position: relative;
  padding: 1em 8%;
  background: #fff;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  z-index: 1;
  color: #ffffff;
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  -webkit-align-items: center;
  align-items: center; }

.ticketWrap .detailsBox .details ul li .scheduleBox a {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  right: 0;
  left: 0;
  bottom: 0;
  color: #ffffff; }

.ticketWrap .detailsBox .details ul li .scheduleBox .time {
  font-size: 14px;
  font-weight: 600;
  line-height: 1;
  margin-right: 10px; }

.ticketWrap .detailsBox .details ul li .scheduleBox .state {
  font-size: 14px;
  font-weight: 500;
  line-height: 1;
  /* 							margin-left: 10px; */ }

.ticketWrap .detailsBox .details ul li .scheduleBox:hover {
  opacity: 0.7; }

.ticketWrap .detailsBox .details ul li .scheduleBox.present {
  background: #32b16c; }

.ticketWrap .detailsBox .details ul li .scheduleBox.present .state span:before {
  content: "○"; }

.ticketWrap .detailsBox .details ul li .scheduleBox.sold {
  background: #969696; }

.ticketWrap .detailsBox .details ul li .scheduleBox.sold .state span:before {
  content: "✕"; }

.ticketWrap .detailsBox .details ul li .scheduleBox.few {
  background: #960b0b; }

.ticketWrap .detailsBox .details ul li .scheduleBox.few .state span:before {
  content: "△"; }

.ticketWrap .detailsBox .details ul li .scheduleBox.remaining {
  color: #f84141; }

.ticketWrap .detailsBox .details .buyWrap {
  width: 100%;
  margin: 20px auto 0 auto;
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  justify-content: space-between; }

.ticketWrap .detailsBox .details .buyWrap .ticketBox {
  width: 48%; }

/*===================sp=*/
@media screen and (max-width: 860px) {
  .ticketWrap .detailsBox .details .buyWrap {
    width: 100%;
    margin: 20px auto 0 auto;
    display: block; }

  .ticketWrap .detailsBox .details .buyWrap .ticketBox {
    width: 100%;
    margin: 0 0 0 0; }

  .ticketWrap .detailsBox .details ul li .scheduleBox:hover {
    opacity: 1; } }
/*====================*/
.ticketWrap .detailsBox .details .ticketBox {
  margin-left: -15px;
  margin-right: -15px;
  margin: 0 -7px 0 -7px; }

.ticketWrap .detailsBox .details .ticketBox:before,
.ticketWrap .detailsBox .details .ticketBox:after {
  content: " ";
  display: table; }

.ticketWrap .detailsBox .details .ticketBox:after {
  clear: both; }

.ticketWrap .detailsBox .details .ticketBox .ticketItem {
  position: relative;
  min-height: 1px;
  padding-left: 15px;
  padding-right: 15px;
  margin: 0 0 15px;
  padding: 0 7px 0 7px; }

.ticketWrap .detailsBox .details .ticketBox .ticket-item:last-child {
  margin-bottom: 0; }

.ticketWrap .detailsBox .details .ticketBox .ticketItem:nth-of-type(2n) + div.ticketItem {
  clear: left; }

.ticketWrap .detailsBox .details .ticketBox .ticketItem p {
  font-size: 10px;
  margin: 0; }

.ticketWrap .detailsBox .details .ticketBox .ticketItem a.ticket {
  display: block;
  margin: 0 0 15px 0;
  padding: 10px 2% 10px 2%;
  width: 96%;
  color: #fff;
  font-size: 12px;
  font-weight: 500;
  line-height: 1;
  text-align: center;
  text-decoration: none;
  border: none;
  background: #ffffff; }

.ticketWrap .detailsBox .details .ticketBox .ticketItem a.ticket:hover {
  opacity: 0.7; }

.ticketWrap .detailsBox .details .ticketBox .ticketItem a.ticket.scrap {
  background: #f34f49; }

.ticketWrap .detailsBox .details .ticketBox .ticketItem a.ticket.scrap:hover {
  opacity: 0.7; }

.ticketWrap .detailsBox .details .ticketBox .ticketItem a.ticket.eplus {
  background: #e85298; }

.ticketWrap .detailsBox .details .ticketBox .ticketItem a.ticket.eplus:hover {
  opacity: 0.7; }

.ticketWrap .detailsBox .details .ticketBox .ticketItem a.ticket.pia {
  background: #36c; }

.ticketWrap .detailsBox .details .ticketBox .ticketItem a.ticket.pia:hover {
  opacity: 0.7; }

.ticketWrap .detailsBox .details .ticketBox .ticketItem a.ticket.lawson {
  background: #1a9fdd; }

.ticketWrap .detailsBox .details .ticketBox .ticketItem a.ticket.lawson:hover {
  opacity: 0.7; }

._scheduler_container ._description_container ._description_item {
  padding: 0 0.7em; }

._scheduler_container ._scheduler_event_wrapper ._scheduler_event_timeBox_text ._timeBox_symbol {
  margin: initial !important; }

/*===================sp=*/
@media screen and (max-width: 860px) {
  .ticketWrap .detailsBox .details .ticketBox .ticketItem a.ticket:hover,
  .ticketWrap .detailsBox .details .ticketBox .ticketItem a.ticket.scrap:hover,
  .ticketWrap .detailsBox .details .ticketBox .ticketItem a.ticket.eplus:hover,
  .ticketWrap .detailsBox .details .ticketBox .ticketItem a.ticket.pia:hover,
  .ticketWrap .detailsBox .details .ticketBox .ticketItem a.ticket.lawson:hover {
    opacity: 1; } }
/*====================*/
@media screen and (max-width: 540px) {
  .ticketWrap .naviBox {
    width: calc(100% - 60px);
    margin: 0 auto; } }

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