/*! Writen  by SCSS */
body:before {
  content: "";
  display: block;
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  height: 100dvh;
  z-index: -1;
  background: url("../images/event/bg.jpg") center top repeat-x; }
body .wrap {
  overflow: hidden; }

header,
.gnavi_wrap,
.nav_btn {
  display: none; }

.moon {
  position: absolute;
  left: 0;
  top: 0;
  width: 22.1%;
  transition: 0.8s transform ease-in-out 0s;
  transform: translate(-100%, -100%); }
  body.loaded .moon {
    transform: translate(0, 0); }
  @media screen and (max-width: 768px) {
    .moon {
      width: 32%; } }

.spider {
  position: absolute;
  right: 40px;
  top: 0;
  width: 12.7%;
  transition: 1.5s transform ease-in-out 0s;
  transform: translateY(-100%); }
  body.loaded .spider {
    transform: translateY(0); }
  @media screen and (max-width: 768px) {
    .spider {
      width: 20%; } }

.page_bg {
  position: absolute;
  top: 0; }

.bg_top {
  left: 0;
  right: 0;
  height: 100px;
  background: url("../images/event/bg_top.png") center top repeat-x; }
  @media screen and (max-width: 480px) {
    .bg_top {
      background-size: 250%; } }

.bg_left {
  left: 0;
  bottom: 0;
  width: 80px;
  background: url("../images/event/bg_left.png") left top/contain repeat-y; }
  @media screen and (max-width: 768px) {
    .bg_left {
      width: 60px; } }
  @media screen and (max-width: 480px) {
    .bg_left {
      width: 30px; } }

.bg_right {
  right: 0;
  bottom: 0;
  width: 80px;
  background: url("../images/event/bg_right.png") right top/contain repeat-y; }
  @media screen and (max-width: 768px) {
    .bg_right {
      width: 60px; } }
  @media screen and (max-width: 480px) {
    .bg_right {
      width: 30px; } }

.inner {
  max-width: 1200px;
  width: calc(100% - 120px);
  margin: 0 auto;
  position: relative; }
  @media screen and (max-width: 480px) {
    .inner {
      width: calc(100% - 60px); } }

.fix_img img {
  width: 100%; }

.title_wrap {
  padding: 140px 0 60px;
  text-align: center; }
  @media screen and (max-width: 480px) {
    .title_wrap {
      padding: 80px 0 40px;
      width: calc(100% - 30px); } }
  .title_wrap h2 {
    display: block;
    transform: scale(0);
    opacity: 0;
    transform-origin: center; }
    body.loaded .title_wrap h2 {
      animation: pop 1.5s cubic-bezier(0.75, 0, 0.25, 1) 0s forwards; }
@keyframes pop {
  0% {
    opacity: 0;
    transform: scale(0); }
  80% {
    opacity: 1;
    transform: scale(1.2); }
  100% {
    opacity: 1;
    transform: scale(1); } }
.event_wrap {
  flex-wrap: wrap;
  row-gap: clamp(20px, 3.334vw, 40px); }
  .event_wrap > figure {
    filter: drop-shadow(0 0px 10px rgba(152, 74, 204, 0.6)); }
  .event_wrap .ev01 {
    width: 48.75%; }
    @media screen and (max-width: 480px) {
      .event_wrap .ev01 {
        width: 100%; } }
  .event_wrap .ev02 {
    width: 46.67%; }
    @media screen and (max-width: 480px) {
      .event_wrap .ev02 {
        width: 100%; } }
  .event_wrap .ev03, .event_wrap .ev04 {
    width: 100%; }

.close_btn {
  position: relative;
  z-index: 2;
  display: block;
  max-width: 260px;
  margin: clamp(40px, 5vw, 60px) auto 0;
  display: flex;
  justify-content: center;
  align-items: center;
  background: #000;
  border-radius: 30px;
  text-align: center;
  font-size: 18px;
  color: #ff9000;
  padding: 10px; }
  @media screen and (max-width: 480px) {
    .close_btn {
      font-size: 16px;
      margin: 60px auto 0; } }

.foot_img {
  margin-top: -40px;
  position: relative; }
  @media screen and (max-width: 480px) {
    .foot_img {
      margin-top: 0; } }
  .foot_img .illust {
    position: absolute; }
    .foot_img .illust.illust01 {
      top: 25%;
      right: 30%;
      width: 13.32%;
      animation: wakuwaku 1s ease-in-out infinite alternate;
      animation-timing-function: steps(2, jump-none); }
    .foot_img .illust.illust02 {
      top: 35%;
      right: 18.13%;
      width: 8.07%;
      animation: wakuwaku 1s ease-in-out infinite alternate;
      animation-delay: 0.3s;
      animation-timing-function: steps(2, jump-none); }
@keyframes wakuwaku {
  0% {
    transform: rotate(6deg); }
  100% {
    transform: rotate(-6deg); } }
.sns_wrap {
  padding: clamp(80px, 10.834vw, 130px) 0 80px;
  position: relative;
  margin-top: -1px;
  z-index: 2;
  background: #000;
  color: #FFF; }
  @media screen and (max-width: 768px) {
    .sns_wrap {
      padding: 60px 0; } }
  @media screen and (max-width: 480px) {
    .sns_wrap {
      padding: 40px 0; } }
  .sns_wrap .charactor {
    align-items: flex-end;
    max-width: 1314px;
    margin: 0 auto 8.37%;
    width: calc(100% - 40px); }
    @media screen and (max-width: 768px) {
      .sns_wrap .charactor {
        width: 100%; } }
    .sns_wrap .charactor li {
      margin: 0 20px;
      opacity: 0;
      transform: translateY(20px);
      transition: 1s all ease-in-out 0s; }
      @media screen and (max-width: 768px) {
        .sns_wrap .charactor li {
          margin: 0 10px; } }
      @media screen and (max-width: 480px) {
        .sns_wrap .charactor li {
          margin: 0 5px; } }
      .sns_wrap .charactor li.delay02 {
        transition-delay: 0.3s; }
      .sns_wrap .charactor li.delay03 {
        transition-delay: 0.6s; }
      @media screen and (max-width: 768px) {
        .sns_wrap .charactor li:nth-child(2) {
          width: 18%; } }
      @media screen and (max-width: 480px) {
        .sns_wrap .charactor li:nth-child(2) {
          width: 35%; } }
    .sns_wrap .charactor.p-view li {
      opacity: 1;
      transform: translateY(0); }
  .sns_wrap .flow_image {
    width: 100%;
    position: relative;
    left: 0;
    right: 0;
    transition: all 1s ease-in-out 0s;
    height: 88px;
    margin-bottom: 120px; }
    @media screen and (max-width: 768px) {
      .sns_wrap .flow_image {
        margin-bottom: 100px; } }
    @media screen and (max-width: 480px) {
      .sns_wrap .flow_image {
        margin-bottom: 60px; } }
    .sns_wrap .flow_image .flow_list {
      position: absolute;
      top: 0;
      left: 0;
      right: 0;
      height: 100%;
      width: 100%;
      background: url("../images/top/flow_image.png") left top repeat-x;
      background-size: auto 100%; }
  .sns_wrap .sns_in {
    max-width: 1540px;
    margin: 0 auto;
    align-items: center;
    justify-content: center; }
    @media screen and (max-width: 480px) {
      .sns_wrap .sns_in {
        flex-wrap: wrap;
        align-items: flex-end;
        width: 100%; } }
    .sns_wrap .sns_in .sns_cont {
      width: 34.82%; }
      @media screen and (max-width: 480px) {
        .sns_wrap .sns_in .sns_cont {
          order: 1;
          width: 100%;
          margin-bottom: 30px;
          padding: 0 20px; } }
      .sns_wrap .sns_in .sns_cont .sns_ttl {
        font-size: 26px;
        text-align: center;
        line-height: 1.6;
        margin-bottom: 60px;
        filter: drop-shadow(0 0 10px #0f6cf1); }
        @media screen and (max-width: 1400px) {
          .sns_wrap .sns_in .sns_cont .sns_ttl {
            font-size: 1.8vw; } }
        @media screen and (max-width: 768px) {
          .sns_wrap .sns_in .sns_cont .sns_ttl {
            font-size: 16px;
            margin-bottom: 25px; } }
        @media screen and (max-width: 480px) {
          .sns_wrap .sns_in .sns_cont .sns_ttl {
            font-size: 26px;
            margin-bottom: 30px; } }
      .sns_wrap .sns_in .sns_cont .sns_icon {
        max-width: 500px;
        margin: 0 auto;
        justify-content: center; }
        .sns_wrap .sns_in .sns_cont .sns_icon li {
          width: 145px;
          filter: drop-shadow(0 0 10px rgba(15, 108, 241, 0.8)); }
          @media screen and (max-width: 1200px) {
            .sns_wrap .sns_in .sns_cont .sns_icon li {
              width: 120px; } }
          .sns_wrap .sns_in .sns_cont .sns_icon li a {
            display: block;
            border-radius: 20px;
            background: #000;
            overflow: hidden;
            position: relative; }
            .sns_wrap .sns_in .sns_cont .sns_icon li a:before {
              content: "";
              display: block;
              padding-bottom: 100%; }
            .sns_wrap .sns_in .sns_cont .sns_icon li a .icon_in {
              position: absolute;
              inset: 0;
              margin: auto;
              display: flex;
              justify-content: center;
              align-items: center;
              flex-direction: column; }
              .sns_wrap .sns_in .sns_cont .sns_icon li a .icon_in .icon {
                width: 44.14%;
                margin: 0 auto 15px; }
                @media screen and (max-width: 480px) {
                  .sns_wrap .sns_in .sns_cont .sns_icon li a .icon_in .icon {
                    margin-bottom: 10px; } }
                @media screen and (max-width: 480px) {
                  .sns_wrap .sns_in .sns_cont .sns_icon li a .icon_in .icon img {
                    width: 50px; } }
              .sns_wrap .sns_in .sns_cont .sns_icon li a .icon_in .icon_txt {
                line-height: 1;
                font-size: 14px; }
                @media screen and (max-width: 480px) {
                  .sns_wrap .sns_in .sns_cont .sns_icon li a .icon_in .icon_txt {
                    font-size: 12px; } }
    .sns_wrap .sns_in .chara {
      align-items: flex-end; }
      .sns_wrap .sns_in .chara.p-view li {
        opacity: 1;
        transform: translateY(0); }
      .sns_wrap .sns_in .chara li {
        opacity: 0;
        transform: translateY(20px);
        transition: 1s all ease-in-out 0s; }
        @media screen and (max-width: 480px) {
          .sns_wrap .sns_in .chara li {
            margin: 0 5px; } }
        .sns_wrap .sns_in .chara li.delay02 {
          transition-delay: 0.3s; }
        .sns_wrap .sns_in .chara li.delay03 {
          transition-delay: 0.6s; }
      .sns_wrap .sns_in .chara.chara_l {
        width: 32%; }
        @media screen and (max-width: 480px) {
          .sns_wrap .sns_in .chara.chara_l {
            order: 2;
            width: 54%; } }
        @media screen and (max-width: 480px) {
          .sns_wrap .sns_in .chara.chara_l li:nth-child(1) {
            width: 100%;
            margin-left: -7%; } }
      .sns_wrap .sns_in .chara.chara_r {
        width: 29.793%; }
        @media screen and (max-width: 480px) {
          .sns_wrap .sns_in .chara.chara_r {
            order: 2;
            width: 46%; } }

footer {
  background: #000; }
  @media screen and (max-width: 480px) {
    footer {
      padding: 40px 20px 80px; } }

.floating {
  position: fixed;
  right: 40px;
  bottom: 40px;
  z-index: 1010;
  max-width: 230px;
  transition: 1s opacity ease-in-out 0s;
  opacity: 0;
  filter: blur(55px) saturate(0%) contrast(0%) brightness(500%); }
  @media screen and (max-width: 1200px) {
    .floating {
      right: 20px;
      bottom: 20px; } }
  @media screen and (max-width: 768px) {
    .floating {
      width: 29.95%; } }
  @media screen and (max-width: 480px) {
    .floating {
      width: 100%;
      max-width: 100%;
      right: 0;
      left: 0;
      bottom: 0; } }
  @media screen and (max-width: 480px) {
    .floating:before {
      content: "";
      position: absolute;
      left: 0;
      right: 0;
      bottom: 100%;
      height: 14px;
      background: linear-gradient(to top, rgba(0, 0, 0, 0.3) 0%, rgba(0, 0, 0, 0) 100%); } }
  @media screen and (max-width: 480px) {
    .floating img {
      width: 100%; } }
  body.loaded .floating {
    filter: blur(0) saturate(100%) contrast(100%) brightness(100%);
    opacity: 1;
    transition: 1s opacity cubic-bezier(0.455, 0.03, 0.515, 0.955) 0s, 1s transform cubic-bezier(0.455, 0.03, 0.515, 0.955) 0s, 1s filter cubic-bezier(0.455, 0.03, 0.515, 0.955) 0s;
    will-change: opacity,transform,filter; }
  .floating.fadeout {
    transition: 0.5s opacity ease-in-out 0s !important;
    opacity: 0 !important;
    pointer-events: none !important; }
  .floating .float_close {
    position: absolute;
    right: 10px;
    top: 0;
    line-height: 0;
    cursor: pointer; }
    @media screen and (max-width: 480px) {
      .floating .float_close {
        top: auto;
        bottom: calc(100% + 5px); } }

/*# sourceMappingURL=event.css.map */
