@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans:wght@500;700;900&family=Noto+Serif+JP:wght@400;500;700;900&display=swap");
@import url("https://cdn.jsdelivr.net/npm/yakuhanjp@4.0.0/dist/css/yakuhanmp.css");
@import url("https://cdn.jsdelivr.net/npm/yakuhanjp@4.0.0/dist/css/yakuhanjp.css");
/*/////////////////////////
 reset
//////////////////////////*/
@import url("https://cdn.jsdelivr.net/npm/yakuhanjp@3.4.1/dist/css/yakuhanjp.min.css");
@import url("https://cdn.jsdelivr.net/npm/yakuhanjp@3.4.1/dist/css/yakuhanjp.min.css");
body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video {
  border: 0; /*font-size: 100%;font: inherit;*/
  vertical-align: baseline;
  margin: 0;
  padding: 0;
}

article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
  display: block;
}

body {
  line-height: 1;
}

ol, ul {
  list-style: none;
}

blockquote, q {
  quotes: none;
}

blockquote:before, blockquote:after, q:before, q:after {
  content: none;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

a, a:link, button {
  text-decoration: none;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  outline: none !important;
  color: inherit;
}

a:hover, a:active {
  text-decoration: none;
}

b {
  font-weight: bold;
}

img,
svg {
  display: block;
  width: 100%;
  height: auto;
  pointer-events: none;
}

* {
  box-sizing: border-box;
  outline: 0;
}

img {
  image-rendering: -webkit-optimize-contrast;
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;
}

iframe {
  max-width: 100%;
  height: auto;
}

/* 
================================================================================
tag
================================================================================
*/
img {
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;
  width: 100%;
  height: auto;
}

img,
input,
svg,
*:before,
*:after {
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;
}

a:hover img,
a:hover input {
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;
  image-rendering: -webkit-optimize-contrast;
}

h1, h2, h3, h4, h5, h6 {
  text-align: left;
}

a, a:link, a:active, a:visited {
  color: inherit;
  text-decoration: none;
}

svg {
  width: 100%;
  height: auto;
}
svg g path {
  stroke: #404040;
  fill: #404040;
  stroke-width: 0.05;
  stroke-dashoffset: 0;
}

/* $break-point以下の時に@contentを適用 */
/* $break-point以上の時に@contentを適用 */
/* $break-point-min以上、$break-point-max以下の時に@contentを適用 */
@keyframes flash {
  0% {
    filter: brightness(1);
  }
  30% {
    filter: brightness(3);
  }
  100% {
    filter: brightness(1);
  }
}
@keyframes decoflash {
  0% {
    opacity: 0;
  }
  10% {
    opacity: 1;
  }
  20% {
    opacity: 1;
  }
  30% {
    opacity: 0;
  }
  40% {
    opacity: 1;
  }
  50% {
    opacity: 1;
  }
  60% {
    opacity: 0;
  }
  70% {
    opacity: 0.5;
  }
  100% {
    opacity: 0.5;
  }
}
@keyframes snowAnimation {
  0% {
    transform: translateY(-100px);
  }
  100% {
    transform: translateY(30000px);
  }
}
@keyframes charaZoom {
  0% {
    opacity: 0;
    transform: scale(0.4);
  }
  20% {
    opacity: 2;
  }
  100% {
    opacity: 1;
    transform: scale(1);
  }
}
@keyframes fall {
  0% {
    top: -50px;
  }
  100% {
    top: 100%;
  }
}
@keyframes onpuAnime {
  0% {
    transform: translate(0, 0%);
  }
  100% {
    transform: translate(0, -30%);
  }
}
@keyframes navPreorderArrowLoop {
  0% {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
  50% {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
  60% {
    -webkit-transform: translate3d(0, 0.4166666667rem, 0);
    transform: translate3d(0, 0.4166666667rem, 0);
  }
  70% {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
  80% {
    -webkit-transform: translate3d(0, 0.4166666667rem, 0);
    transform: translate3d(0, 0.4166666667rem, 0);
  }
  90% {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
  100% {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
@keyframes productPreorderArrowLoop {
  0% {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
  50% {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
  60% {
    -webkit-transform: translate3d(0.4166666667rem, 0, 0);
    transform: translate3d(0.4166666667rem, 0, 0);
  }
  70% {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
  80% {
    -webkit-transform: translate3d(0.4166666667rem, 0, 0);
    transform: translate3d(0.4166666667rem, 0, 0);
  }
  90% {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
  100% {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
@keyframes heroRoboIn {
  0% {
    opacity: 0;
    transform: translate3d(-50%, 20%, 0) scale3d(1, 1, 1);
    filter: brightness(8);
  }
  50% {
    opacity: 1;
    transform: translate3d(-50%, 0, 0) scale3d(1, 1, 1);
    filter: brightness(1);
  }
  100% {
    opacity: 1;
    transform: translate3d(-50%, 0, 0) scale3d(1, 1, 1);
    filter: brightness(1);
  }
}
@keyframes thunderTitleIn {
  0% {
    opacity: 0;
    transform: translate3d(-50%, -16.6666666667rem, 0) scale(1, 0) rotate(0deg);
    filter: brightness(8);
    @media screen and (max-width: 768px) {
      transform: translate3d(-50%, -26.6666666667vw, 0) scale(1, 0) rotate(0deg);
    }
  }
  3% {
    opacity: 1;
    transform: translate3d(-40%, -12.5rem, 0) scale(1.8, 0.5) rotate(10deg);
    filter: brightness(1);
    @media screen and (max-width: 768px) {
      transform: translate3d(-40%, -20vw, 0) scale(1.8, 0.5) rotate(10deg);
    }
  }
  6% {
    opacity: 1;
    transform: translate3d(-60%, -20.8333333333rem, 0) scale(0.8, 1.2) rotate(-10deg);
    filter: brightness(10);
    @media screen and (max-width: 768px) {
      transform: translate3d(-60%, -33.3333333333vw, 0) scale(0.8, 1.2) rotate(-10deg);
    }
  }
  9% {
    opacity: 1;
    transform: translate3d(-50%, -14.1666666667rem, 0) scale(1.8, 0.2) rotate(10deg);
    filter: brightness(1);
    @media screen and (max-width: 768px) {
      transform: translate3d(-50%, -22.6666666667vw, 0) scale(1.8, 0.2) rotate(10deg);
    }
  }
  12% {
    opacity: 1;
    transform: translate3d(-40%, -19.1666666667rem, 0) scale(0.2, 0.8) rotate(-10deg);
    filter: brightness(10);
    @media screen and (max-width: 768px) {
      transform: translate3d(-40%, -30.6666666667vw, 0) scale(0.2, 0.8) rotate(-10deg);
    }
  }
  100% {
    opacity: 1;
    transform: translate3d(-50%, -20.8333333333rem, 0) scale(1, 1) rotate(0deg);
    filter: brightness(1);
    @media screen and (max-width: 768px) {
      transform: translate3d(-50%, -33.3333333333vw, 0) scale(1, 1) rotate(0deg);
    }
  }
}
@keyframes thunderTitleIn2 {
  0% {
    opacity: 0;
    transform: translate3d(-50%, -20.8333333333rem, 0) scale3d(1.5, 0, 1) rotate(0deg);
    @media screen and (max-width: 768px) {
      transform: translate3d(-50%, -26.6666666667vw, 0) scale3d(1, 1, 1) rotate(0deg);
    }
  }
  70% {
    opacity: 1;
    transform: translate3d(-50%, -20.8333333333rem, 0) scale3d(0.2, 0.1, 1) rotate(0deg);
    @media screen and (max-width: 768px) {
      transform: translate3d(-50%, -26.6666666667vw, 0) scale3d(1, 1, 1) rotate(0deg);
    }
  }
  100% {
    opacity: 1;
    transform: translate3d(-50%, -20.8333333333rem, 0) scale3d(1, 1, 1) rotate(0deg);
    @media screen and (max-width: 768px) {
      transform: translate3d(-50%, -33.3333333333vw, 0) scale(1, 1) rotate(0deg);
    }
  }
}
/* 
================================================================================
sample
================================================================================
*/
div.sample {
  width: 200px;
  height: 200px;
}
body.sample div.sample {
  text-align: center;
}
div.sample:before {
  content: "";
  display: block;
  width: 300px;
  height: 150px;
  background: blue;
}
.sample-1 {
  width: 100px;
}

.sample-2 {
  width: 200px;
}

.sample-3 {
  width: 300px;
}

@keyframes anim {
  0% {
    transform: scale(0);
    opacity: 0;
  }
  50% {
    opacity: 1;
  }
  100% {
    transform: scale(2);
    opacity: 0;
  }
}
.sans {
  font-family: YakuHanJP, "Noto Sans JP", sans-serif;
}

.lang-en {
  font-family: "DM Sans", sans-serif;
}

.text-center {
  text-align: center;
}
.text-left {
  text-align: left;
}
.text-right {
  text-align: right;
}

.wBlack {
  font-weight: 900;
}

.tLeft {
  text-align: left;
}

.tCenter {
  text-align: center;
}

.cWhite {
  color: #FFFCF0;
}

.cBlack {
  color: #3E3737;
}

.inView {
  transition: all 1000ms cubic-bezier(0.36, 0.36, 0.2, 1.06);
}
.inView.is--stby {
  transform: translate3d(0, 2em, 0);
  opacity: 0;
}

@media screen and (min-width: 768px) {
  .only-pc {
    display: inline-block;
  }
}
@media screen and (max-width: 768px) {
  .only-pc {
    display: none;
  }
}
@media screen and (min-width: 768px) {
  .only-sp {
    display: none;
  }
}
@media screen and (max-width: 768px) {
  .only-sp {
    display: inline-block;
  }
}

.attention-scrolldown {
  width: fit-content;
  height: 4.5833333333rem;
  color: #FFFCF0;
  font-size: 1rem;
  letter-spacing: 0.05em;
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translate(-50%, 0);
  z-index: 10;
}
.attention-scrolldown .arrow {
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translate(-50%, 0);
  width: 3px;
  height: 2.5rem;
  opacity: 0.5;
  overflow: hidden;
}
.attention-scrolldown .arrow::before {
  content: "";
  position: absolute;
  top: 0;
  left: 50%;
  transform: translate(-50%, 0);
  width: 1px;
  height: 100%;
  background-color: #FFFCF0;
}
.attention-scrolldown .arrow::after {
  content: "";
  position: absolute;
  top: 0;
  left: 50%;
  transform: translate(-50%, -100%);
  width: 3px;
  height: 100%;
  background-color: #FFFCF0;
  animation: scrolldown 2s infinite ease-in-out;
}

.btns-item {
  display: flex;
  justify-content: center;
}
.btns-item .btn {
  min-width: 13.3333333333rem;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  border-radius: 0.4166666667rem;
  margin: auto;
  background-color: #fff;
  color: #3E3737;
  height: 3.6666666667rem;
  padding: 0 1.25rem;
  font-size: 1.5rem;
  font-weight: 700;
  letter-spacing: 0.05em;
  font-family: "DM Sans", sans-serif;
}
.btns-item .btn span {
  transform: translate(0, 5%);
}
.btns-item .btn.playgame {
  background: url("../img/common/parts/btn_playgame.png") center center/cover no-repeat;
  aspect-ratio: 320/88;
}
.btns-item .btn.playgame span {
  display: none;
}
.btns-item .btn.playgame.deactive {
  pointer-events: none;
  cursor: default;
  background: url("../img/common/parts/btn_info.png") center center/cover no-repeat;
}

.shareWrap ul {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  font-family: "DM Sans", sans-serif;
  font-family: "DM Sans", sans-serif;
  font-weight: 700;
}
.shareWrap ul::before {
  content: "FOLLOW US";
  display: block;
  text-align: center;
  width: 100%;
  margin-bottom: 1.25rem;
  font-size: 1.5rem;
}
.shareWrap ul li {
  margin: 0 0rem;
}
.shareWrap ul li a {
  display: block;
  width: 3.3333333333rem;
  aspect-ratio: 1/1;
  background-color: #333;
}
.shareWrap ul li a span {
  display: none;
}
.shareWrap ul li.facebook a {
  background: url("../img/common/icon/facebook.png") center center/contain no-repeat;
}
.shareWrap ul li.x a {
  background: url("../img/common/icon/x.png") center center/contain no-repeat;
}
.shareWrap ul li.instagram a {
  background: url("../img/common/icon/instagram.png") center center/contain no-repeat;
}
.shareWrap ul li.line a {
  background: url("../img/common/icon/line.png") center center/contain no-repeat;
}
.shareWrap ul li.youtube a {
  background: url("../img/common/icon/youtube.png") center center/contain no-repeat;
}

@keyframes scrolldown {
  0% {
    transform: translate(-50%, -100%);
  }
  50% {
    transform: translate(-50%, 100%);
  }
  100% {
    transform: translate(-50%, 100%);
  }
}
/* 
================================================================================
html body
================================================================================
*/
html {
  height: 100%;
  font-size: 12px;
}
html.scrollMode_onepage {
  overflow: hidden;
}
@media screen and (max-width: 768px) {
  html {
    font-size: 3.2vw;
  }
}

body {
  font-family: YakuHanJP, "Noto Sans JP", sans-serif;
  font-weight: 500;
  font-size: 1rem;
  font-feature-settings: "palt";
  line-height: 1.8;
  letter-spacing: 0.1em;
  text-align: center;
  width: 100%;
  height: auto;
  overflow-x: hidden;
  color: #3E3737;
  background: #f2f2f2;
}
body::after {
  content: "";
  display: none;
  position: absolute;
  width: 100%;
  height: 20px;
  top: 100%;
  left: 0;
  background: #ff7300;
}
@media screen and (max-width: 768px) {
  body {
    background-size: 100% auto;
  }
}
body.scrollMode_onepage {
  -webkit-overflow-scrolling: touch;
}
body.modal-active {
  touch-action: none;
  -webkit-overflow-scrolling: none;
  overflow: hidden;
  overscroll-behavior: none;
}
body.lang_zh {
  font-family: "Noto Sans JP", "Noto Sans TC", sans-serif;
  font-weight: 900;
}

/* 
================================================================================
maintenance
================================================================================
*/
#maintenanceContents {
  display: flex;
  height: calc(var(--vh, 1vh) * 100);
  align-content: center;
  flex-wrap: wrap;
  justify-content: center;
  text-align: center;
}
#maintenanceContents h3 {
  margin-bottom: 4.1666666667rem;
  color: #999;
}
#maintenanceContents p {
  text-align: center;
  font-size: 0.8333333333rem;
  line-height: 1.4;
}

/* 
================================================================================
Wrapper
================================================================================
*/
#scrollBody {
  position: relative;
}

#siteWrap {
  opacity: 0;
  pointer-events: none;
}
body.loadingFinish #siteWrap {
  opacity: 1;
  pointer-events: all;
}

/* 
================================================================================
MENU
================================================================================
*/
/* 
================================================================================
frameWrap 枠
================================================================================
*/
/* 
================================================================================
lang
================================================================================
*/
.lang-mode {
  position: fixed;
  top: 0rem;
  right: 3.3333333333rem;
  width: 15.4166666667rem;
  z-index: 2100;
  pointer-events: all;
}
@media screen and (min-width: 768px) and (max-height: 800px) {
  .lang-mode {
    top: 0rem;
    right: 1.6666666667rem;
  }
}
@media screen and (max-width: 768px) {
  .lang-mode {
    top: 50%;
    left: 0rem;
    right: auto;
    transform: translateY(-50%);
    width: 9.3333333333vw;
    height: 34.6666666667vw;
    border-radius: 0 4vw 4vw 0;
    background-color: #ff7300;
  }
}
.lang-mode dl {
  display: flex;
  justify-content: flex-end;
  flex-wrap: wrap;
}
@media screen and (max-width: 768px) {
  .lang-mode dl {
    display: grid;
    grid-template-columns: 9.3333333333vw 32vw;
    grid-gap: 0vw;
    align-items: center;
    height: 100%;
    position: absolute;
    left: 0;
    justify-content: flex-start;
  }
}
.lang-mode dl dt {
  display: flex;
  align-items: center;
  height: 3.3333333333rem;
  color: #FFFCF0;
  cursor: pointer;
}
@media screen and (max-width: 768px) {
  .lang-mode dl dt {
    width: 100%;
    height: 100%;
    border-radius: 0rem 2.6666666667vw 2.6666666667vw 0rem;
    background-color: #ff7300;
  }
}
@media screen and (min-width: 768px) and (max-height: 800px) {
  .lang-mode dl dt {
    align-items: flex-start;
    height: 1.6666666667rem;
  }
}
.lang-mode dl dt span {
  font-size: 1rem;
  font-weight: 900;
  letter-spacing: 0;
  display: inline-flex;
  padding-left: 2.5rem;
  padding-right: 2.5rem;
  line-height: 1;
  position: relative;
}
.lang-mode dl dt span::before {
  content: "";
  display: block;
  width: 1.6666666667rem;
  height: 1.6666666667rem;
  background: url(../img/common/parts/icon_lang.png) center center/contain no-repeat;
  position: absolute;
  left: 0rem;
  top: 50%;
  transform: translate(0, -50%);
}
.lang-mode dl dt span::after {
  content: "▼";
  display: block;
  font-size: 1rem;
  width: 1.4166666667rem;
  height: 1.4166666667rem;
  position: absolute;
  right: 0rem;
  top: 60%;
  transform: translate(0, -50%);
}
@media screen and (min-width: 768px) and (max-height: 800px) {
  .lang-mode dl dt span {
    height: 1.6666666667rem;
    line-height: 1.6666666667rem;
    padding-right: 1.6666666667rem;
  }
  .lang-mode dl dt span::before {
    display: none;
  }
  .lang-mode dl dt span::after {
    top: 40%;
  }
}
@media screen and (max-width: 768px) {
  .lang-mode dl dt span {
    font-size: 3.2vw;
    transform: translate(4.6666666667vw, 14.6666666667vw) rotate(-90deg);
    transform-origin: left center;
    padding-left: 6vw;
    padding-right: 4.6666666667vw;
  }
  .lang-mode dl dt span::before {
    width: 3.7333333333vw;
    height: 3.7333333333vw;
    top: 50%;
    transform: translate(0, -50%);
  }
  .lang-mode dl dt span::after {
    font-size: 2.4vw;
    top: 50%;
  }
}
.lang-mode dl dd {
  display: flex;
  justify-content: center;
  padding-top: 0.8333333333rem;
}
@media screen and (max-width: 768px) {
  .lang-mode dl dd {
    display: flex;
    align-items: center;
    padding: 0;
    height: 100%;
    justify-content: flex-start;
  }
}
.lang-mode dl dd ul {
  width: 12.5rem;
  background-color: #000;
  border-radius: 0.8333333333rem;
  font-size: 1.4166666667rem;
  overflow: hidden;
  color: #ff7300;
  font-weight: 900;
  letter-spacing: 0;
  transform: translate(0.8333333333rem, 0);
}
.lang-mode dl dd ul li {
  cursor: pointer;
}
.lang-mode dl dd ul li a {
  display: block;
  padding: 0.8333333333rem;
}
.lang-mode dl dd ul li:not(:last-child) {
  border-bottom: solid 1px #666;
}
.lang-mode dl dd ul li:hover {
  background-color: #333;
}
.lang-mode dl dd ul li.active {
  background-color: #fff;
  color: #000;
  cursor: default;
  pointer-events: none;
}
.lang-mode.is--stby dl dd {
  display: none;
}

/* 
================================================================================
#container
================================================================================
*/
#scrolldummy {
  display: none;
}
@media screen and (max-width: 768px) {
  #scrolldummy {
    display: none;
  }
}

@media screen and (min-width: 768px) {
  #wrapper::before {
    content: "";
    display: block;
    position: fixed;
    inset: 0;
    height: 100vh;
    background: #FACC95;
    background: linear-gradient(0deg, rgb(250, 204, 149) 0%, rgb(245, 217, 181) 10%, rgb(245, 217, 181) 90%, rgb(250, 204, 149) 100%);
  }
}
#wrapper #base {
  position: relative;
}
#wrapper #base #global-frame {
  min-height: 100dvh;
  display: flex;
  justify-content: center;
  align-items: center;
}
@media screen and (min-width: 768px) {
  #wrapper #base #global-frame {
    position: sticky;
    top: 0;
    width: 90vw;
    max-width: 113.3333333333rem;
    margin: auto;
    display: grid;
    grid-template-columns: 240px 414px 1fr;
    grid-gap: 40px;
  }
}
@media screen and (max-width: 1000px) {
  #wrapper #base #global-frame {
    width: fit-content;
    grid-template-columns: 240px 414px;
  }
}
#wrapper #base #global-frame .pc_area_left {
  order: 1;
  display: none;
}
@media screen and (min-width: 768px) {
  #wrapper #base #global-frame .pc_area_left {
    display: block;
    height: 688px;
    filter: drop-shadow(0px 0px 4.1666666667rem rgba(234, 167, 87, 0.8));
  }
  #wrapper #base #global-frame .pc_area_left .pc_area_left-contents {
    display: grid;
    grid-template-rows: 14rem auto 7.25rem;
    background-color: #FFFCF0;
    height: 38.5833333333rem;
    border-radius: 3.3333333333rem;
    overflow: hidden;
  }
  #wrapper #base #global-frame .pc_area_left .pc_area_left-contents-item:nth-of-type(1)::before {
    content: "";
    display: block;
    position: absolute;
    top: 4.6666666667rem;
    left: 50%;
    transform: translate(-50%, 0);
    width: 12.9166666667rem;
    height: 6rem;
    background: url("../img/common/parts/ttl.png") center center/contain no-repeat;
  }
  #wrapper #base #global-frame .pc_area_left .pc_area_left-contents-item:nth-of-type(2) ul {
    width: fit-content;
    padding-top: 1.6666666667rem;
    margin: auto;
  }
  #wrapper #base #global-frame .pc_area_left .pc_area_left-contents-item:nth-of-type(2) ul li {
    position: relative;
    text-align: left;
    font-size: 1.5rem;
    line-height: 1;
    font-family: "DM Sans", sans-serif;
    font-weight: 700;
    cursor: pointer;
  }
  #wrapper #base #global-frame .pc_area_left .pc_area_left-contents-item:nth-of-type(2) ul li:not(:last-child) {
    margin-bottom: 2.0833333333rem;
  }
  #wrapper #base #global-frame .pc_area_left .pc_area_left-contents-item:nth-of-type(2) ul li::before {
    content: "";
    display: block;
    width: 0;
    height: 0;
    border-style: solid;
    border-top: 4px solid transparent;
    border-bottom: 4px solid transparent;
    border-left: 8px solid #3E3737;
    border-right: 0;
    position: absolute;
    top: 0.3em;
    left: -1.25rem;
    visibility: hidden;
  }
  #wrapper #base #global-frame .pc_area_left .pc_area_left-contents-item:nth-of-type(2) ul li:hover::before {
    visibility: visible;
  }
  #wrapper #base #global-frame .pc_area_left .pc_area_left-contents-item:nth-of-type(3) {
    background: #F1E5D4;
    display: flex;
    justify-content: center;
    align-items: center;
  }
  #wrapper #base #global-frame .pc_area_left .pc_area_left-contents-item:nth-of-type(3) .dytnapark {
    line-height: 0;
    display: block;
    margin-bottom: 0.8333333333rem;
  }
  #wrapper #base #global-frame .pc_area_left .pc_area_left-contents-item:nth-of-type(3) .dytnapark img {
    height: 2rem;
  }
  #wrapper #base #global-frame .pc_area_left .pc_area_left-contents-item:nth-of-type(3) .copyright {
    width: auto;
    height: 1.4166666667rem;
  }
}
#wrapper #base #global-frame .pc_area_right {
  background-color: burlywood;
  order: 3;
  display: none;
}
@media screen and (min-width: 768px) {
  #wrapper #base #global-frame .pc_area_right {
    display: block;
    height: 688px;
    border-radius: 3.3333333333rem;
    overflow: hidden;
    background: url("../img/common/parts/illust.png") center center/cover no-repeat;
    filter: drop-shadow(0px 0px 4.1666666667rem rgba(234, 167, 87, 0.8));
  }
}
@media screen and (max-width: 1000px) {
  #wrapper #base #global-frame .pc_area_right {
    display: none;
  }
}
#wrapper #base #global-header {
  display: none;
}
#wrapper #base #global-main {
  position: relative;
  order: 2;
}
@media screen and (min-width: 768px) {
  #wrapper #base #global-main {
    display: flex;
    justify-content: center;
    height: 688px;
    transform: translate(0, 13px);
  }
  #wrapper #base #global-main::before {
    content: "";
    display: block;
    width: 845px;
    height: 1081px;
    position: absolute;
    top: -63px;
    left: 365px;
    transform: translate(-50%, 0%);
    background: url("../img/top/phone_frame_cable.png") center center/contain no-repeat;
  }
}
@media screen and (min-width: 768px) {
  #wrapper #base #global-main-scrollbody {
    position: relative;
    min-height: initial;
    width: 390px;
    height: 664px;
    border-radius: 40px;
    overflow: hidden;
  }
}
#wrapper #base #global-main-frame {
  background-color: #3E3737;
}
#wrapper #base #global-main::after {
  content: "";
  display: none;
  position: absolute;
  pointer-events: none;
  opacity: 0.5;
  top: 0rem;
  left: 0;
  width: 100%;
  height: 833.3333333333rem;
  background: url("../img/_design.png") center top no-repeat;
  background-size: 100% auto;
  z-index: 100;
}
#wrapper #base #global-footer {
  margin: auto;
  padding: 1.25rem 0 1.25rem 0;
  background-color: #3E3737;
  color: #FFFCF0;
  overflow: hidden;
  text-align: center;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  font-size: 0.8333333333rem;
  width: 100vw;
}
#wrapper #base #global-footer .dytnapark {
  width: 17rem;
  margin-bottom: 0.8333333333rem;
}
#wrapper #base #global-footer .dytnapark span {
  display: block;
}
@media screen and (min-width: 768px) {
  #wrapper #base #global-footer {
    width: 100%;
  }
}
@media screen and (max-width: 768px) {
  #wrapper #base #global-footer {
    overflow: hidden;
  }
}
#wrapper #base #global-footer .copyright {
  display: block;
  width: 100%;
  font-family: "Lato", sans-serif;
  font-weight: bold;
  font-size: 10px;
}

/* 
================================================================================
keyframes
================================================================================
*/
@keyframes loading_bg {
  30% {
    opacity: 0;
  }
  45% {
    opacity: 1;
  }
  70% {
    opacity: 1;
    transform: translate(-50%, -50%) scale(1);
  }
  90% {
    opacity: 1;
    transform: translate(-50%, -50%) scale(0);
  }
  100% {
    opacity: 0;
    transform: translate(-50%, -50%) scale(0);
  }
}
@keyframes loading_intro {
  0% {
    opacity: 0;
    transform: scale(0);
  }
  10% {
    opacity: 1;
    transform: scale(1);
  }
  30% {
    opacity: 1;
    transform: scale(1);
  }
  50% {
    opacity: 0;
    transform: scale(20);
  }
  60% {
    opacity: 0;
    transform: scale(0);
  }
  100% {
    opacity: 0;
    transform: scale(0);
  }
}
div.sample {
  width: 200px;
  height: 200px;
}
body.sample div.sample {
  text-align: center;
}
div.sample:before {
  content: "";
  display: block;
  width: 300px;
  height: 150px;
  background: blue;
}
.sample-1 {
  width: 100px;
}

.sample-2 {
  width: 200px;
}

.sample-3 {
  width: 300px;
}

@keyframes anim {
  0% {
    transform: scale(0);
    opacity: 0;
  }
  50% {
    opacity: 1;
  }
  100% {
    transform: scale(2);
    opacity: 0;
  }
}
@keyframes tenmetsu {
  0% {
    opacity: 0.1;
  }
  50% {
    opacity: 1;
  }
  100% {
    opacity: 0.1;
  }
}
/* 
================================================================================
sample
================================================================================
*/
div.sample {
  width: 200px;
  height: 200px;
}
body.sample div.sample {
  text-align: center;
}
div.sample:before {
  content: "";
  display: block;
  width: 300px;
  height: 150px;
  background: blue;
}
.sample-1 {
  width: 100px;
}

.sample-2 {
  width: 200px;
}

.sample-3 {
  width: 300px;
}

@keyframes anim {
  0% {
    transform: scale(0);
    opacity: 0;
  }
  50% {
    opacity: 1;
  }
  100% {
    transform: scale(2);
    opacity: 0;
  }
}
#video-wrapper {
  position: relative;
}
#video-wrapper #video-player {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
#video-wrapper #video-player-contents {
  width: 100%;
  height: 664px;
  position: sticky;
  top: 0;
  overflow: hidden;
}
#video-wrapper #video-player-contents::before {
  content: "";
  display: block;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 28.3333333333rem;
  opacity: 0;
  transition: opacity 1000ms ease;
  background: url(../img/top/bg_gradation_black.png) bottom center/100% auto no-repeat;
  z-index: 1;
  mix-blend-mode: multiply;
}
.headerActive #video-wrapper #video-player-contents::before {
  opacity: 1;
}
@media screen and (max-width: 768px) {
  #video-wrapper #video-player-contents {
    height: 100lvh;
  }
}
#video-wrapper #video-player-contents video {
  position: absolute;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center bottom;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
#video-wrapper #video-player-contents .chara {
  position: absolute;
  width: 13.5833333333rem;
  height: auto;
  right: -0.8333333333rem;
  bottom: 5.4166666667rem;
  transition: transform 2500ms ease-out 1500ms;
}
#video-wrapper #video-player-contents .chara.is--stby {
  transform: translate3d(100%, -30%, 0);
}

section {
  position: relative;
  text-align: left;
  overflow: hidden;
}
section img {
  max-width: 100%;
}
section .section-frame {
  width: 100%;
  padding: 0 3.3333333333rem;
}
section .section-frame .contents {
  width: 100%;
  position: relative;
  z-index: 2;
}
section#mainHeader {
  width: 100%;
  height: 5.3333333333rem;
  margin: auto;
  display: flex;
  align-items: center;
  justify-content: space-between;
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: 1000;
  overflow: visible;
  transition: all 500ms ease;
  transform: translate(0, -110%);
}
body.headerActive section#mainHeader {
  transform: translate(0, 0%);
}
@media screen and (min-width: 768px) {
  section#mainHeader {
    display: none;
  }
}
section#mainHeader::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 5.3333333333rem;
  background: #000;
  z-index: 3;
}
section#mainHeader::after {
  content: "";
  display: block;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 2.0833333333rem;
  background-size: 100% auto;
  z-index: 2;
}
section#mainHeader .siteLogo {
  width: 15.5833333333rem;
  margin: auto;
  z-index: 5;
  position: absolute;
  top: 50%;
  left: 1.25rem;
  transform: translate(0%, -50%);
  z-index: 10;
}
section#mainHeader .siteLogo span {
  display: block;
}
section#mainHeader .siteLogo img {
  width: 100%;
}
section#mainHeader .siteMenu {
  width: 5.3333333333rem;
  height: 5.3333333333rem;
  position: fixed;
  top: 0rem;
  right: 0rem;
  z-index: 1010;
}
section#mainHeader .siteMenu span {
  visibility: hidden;
}
section#mainHeader .siteMenu::before, section#mainHeader .siteMenu::after {
  content: "";
  display: block;
  width: 2.5rem;
  height: 0.3333333333rem;
  background-color: #fff;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
section#mainHeader .siteMenu::before {
  margin-top: -0.25rem;
}
section#mainHeader .siteMenu::after {
  margin-top: 0.4166666667rem;
}
body.menuOpen section#mainHeader .siteMenu .open {
  visibility: hidden;
}
section#mainHeader .siteMenu .close {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  visibility: hidden;
}
body.menuOpen section#mainHeader .siteMenu .close {
  visibility: visible;
}
section#mainHeader #mainMenu {
  position: absolute;
  top: 5.3333333333rem;
  left: 0;
  width: 100%;
  height: auto;
  max-height: 0rem;
  overflow: hidden;
  background-color: #FFFCF0;
  border-radius: 0 0 3.3333333333rem 3.3333333333rem;
  transition: all 300ms ease-in-out;
  display: flex;
  justify-content: center;
  align-items: center;
  pointer-events: none;
}
body.headerActive.menuOpen section#mainHeader #mainMenu {
  max-height: 20.3333333333rem;
  pointer-events: all;
}
section#mainHeader #mainMenu .menuUnit ul {
  padding: 4.1666666667rem 0;
}
section#mainHeader #mainMenu .menuUnit ul li {
  position: relative;
  font-size: 1.5rem;
}
section#mainHeader #mainMenu .menuUnit ul li:not(:last-child) {
  margin-bottom: 1.25rem;
}
section#mainHeader #mainMenu .menuUnit ul li.active::before {
  content: "";
  display: block;
  width: 0;
  height: 0;
  border-style: solid;
  border-top: 4px solid transparent;
  border-bottom: 4px solid transparent;
  border-left: 8px solid #3E3737;
  border-right: 0;
  position: absolute;
  top: 0.75em;
  left: -1.6666666667rem;
}
section#top {
  height: 664px;
  display: flex;
  align-items: flex-end;
  color: #FFFCF0;
  padding-bottom: 3.3333333333rem;
}
section#top .section-frame {
  padding: 0 1.6666666667rem;
}
section#top .contents {
  padding-bottom: 2.5rem;
}
section#top .contents.is--stby {
  transform: translate3d(0, 0, 0);
  opacity: 1;
}
section#top .contents.is--stby p {
  transform: translate3d(0, 2em, 0);
  opacity: 0;
}
section#top .contents.is--stby .face {
  transform: translate3d(2em, 2em, 0);
  opacity: 0;
}
section#top .contents p {
  font-size: 1.6666666667rem;
  line-height: 1.6;
  transition: all 1000ms cubic-bezier(0.36, 0.36, 0.2, 1.06);
  transition-delay: 0ms;
}
section#top .contents .text-bg {
  font-size: 1.3333333333rem;
  display: inline-block;
  background-color: #FFFCF0;
  color: #3E3737;
  font-weight: 700;
  line-height: 1.5;
  padding: 0 0.6666666667rem;
  margin-bottom: 0.3333333333rem;
  border-radius: 0.3333333333rem;
}
section#top .contents .face {
  width: 9.5rem;
  position: absolute;
  right: -1.6666666667rem;
  bottom: -1.5rem;
  transition: all 1000ms cubic-bezier(0.36, 0.36, 0.2, 1.06);
  transition-delay: 400ms;
}
section#about {
  height: 55.3333333333rem;
  display: flex;
  align-items: flex-end;
  color: #FFFCF0;
  padding-bottom: 3.3333333333rem;
}
@media screen and (max-width: 768px) {
  section#about {
    height: 100lvh;
  }
}
section#about .contents h2 {
  margin-bottom: 0.4166666667rem;
  transition: all 1000ms cubic-bezier(0.36, 0.36, 0.2, 1.06);
  transition-delay: 0ms;
}
section#about .contents .logo-chillhop {
  display: grid;
  grid-template-columns: 1fr 9.4166666667rem;
  grid-gap: 1.25rem;
  width: auto;
  margin-bottom: 1.6666666667rem;
  transition: all 1000ms cubic-bezier(0.36, 0.36, 0.2, 1.06);
  transition-delay: 100ms;
  align-content: center;
  align-items: center;
}
section#about .contents .logo-chillhop-item:nth-of-type(1) img {
  width: 100%;
  height: auto;
}
section#about .contents p {
  transition: all 1000ms cubic-bezier(0.36, 0.36, 0.2, 1.06);
  transition-delay: 200ms;
  text-align: justify;
}
section#game {
  aspect-ratio: 780/1328;
  overflow: hidden;
  display: flex;
}
section#game .bg {
  background: url(../img/game/frame.png) center center/contain no-repeat;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
section#game .section-frame {
  padding: 0rem 0rem 0rem;
}
section#game .section-frame > .contents {
  aspect-ratio: 780/1328;
  display: grid;
  grid-template-rows: auto auto 1fr;
}
section#game .chilltimekeeper {
  width: 17.5rem;
  height: auto;
  margin-left: -0.8333333333rem;
}
section#game h2 {
  font-size: 3rem;
  line-height: 1;
  display: flex;
  align-items: center;
  margin-bottom: 0.1666666667rem;
  padding: 2.8333333333rem 1.6666666667rem 0;
}
section#game h2 span.sub {
  display: inline-block;
  background-color: #fff;
  padding: 0.2em 0.4em 0.1em;
  margin-left: 0.6666666667rem;
  text-transform: uppercase;
  border-radius: 0.3333333333rem;
  line-height: 1;
  letter-spacing: 0.04em;
  font-size: 1.5rem;
}
section#game p {
  padding: 0 1.6666666667rem;
}
section#game .unit {
  position: relative;
  margin-top: 1.6666666667rem;
  display: flex;
  align-items: flex-end;
  flex-wrap: wrap;
  align-content: flex-end;
  overflow: hidden;
  padding: 3.3333333333rem 3.3333333333rem 5rem;
  border-radius: 0.4166666667rem;
  color: #FFFCF0;
}
section#game .unit h3 {
  font-size: 1.5rem;
  margin-bottom: 0.8333333333rem;
}
section#game .unit p {
  text-align: justify;
  padding: 0;
  margin-bottom: 2.0833333333rem;
}
section#campaign {
  padding-top: 17.9166666667rem;
  padding-bottom: 1.6666666667rem;
  background: url("../img/campaign/bg.png") top center/100% auto no-repeat #2A0B3F;
}
section#campaign::before {
  content: "";
  display: block;
  width: 100%;
  height: 72.75rem;
  position: absolute;
  bottom: 0;
  left: 0;
  background: linear-gradient(180deg, rgba(44, 27, 91, 0) 0%, rgb(44, 27, 91) 8%, rgb(42, 11, 63) 100%);
}
section#campaign .section-frame {
  padding-left: 1.3333333333rem;
  padding-right: 1.3333333333rem;
}
section#campaign h2 {
  width: 21.6666666667rem;
  margin: 0 auto 1.8333333333rem;
}
section#campaign h2 .title {
  margin-bottom: -0.6666666667rem;
}
section#campaign h2 .title-popup {
  position: absolute;
  top: 1rem;
  left: 50%;
  transform: translate(-50%, -100%);
  width: 21.3333333333rem;
}
section#campaign .boxarea {
  position: relative;
  background-color: #FFFCF0;
  border-radius: 0.4166666667rem;
  padding: 2.5rem 0 1.6666666667rem;
}
section#campaign .boxarea .play-tsuno, section#campaign .boxarea .play-neko {
  position: absolute;
  z-index: 5;
}
section#campaign .boxarea .play-tsuno {
  width: 12.3333333333rem;
  top: 12.0833333333rem;
  right: -1.9166666667rem;
  transition-delay: 500ms;
}
section#campaign .boxarea .play-tsuno img.is--stby {
  opacity: 0;
  transform: translate(-50%, 50%);
}
section#campaign .boxarea .play-neko {
  width: 14.3333333333rem;
  top: -4.5833333333rem;
  left: -5rem;
  transition-delay: 300ms;
}
section#campaign .boxarea .play-neko img.is--stby {
  opacity: 0;
  transform: translate(-50%, -20%);
}
section#campaign .boxarea .read {
  font-size: 1.3333333333rem;
  font-weight: 700;
  line-height: 1.8;
  margin-bottom: 1.6666666667rem;
}
section#campaign .boxarea .read strong {
  display: inline-block;
  border-bottom: solid 2px #3E3737;
  line-height: 1.5;
}
section#campaign .boxarea .days {
  margin: 0 1.6666666667rem 0rem;
  border-radius: 0.4166666667rem;
  display: flex;
  justify-content: center;
  align-items: center;
  line-height: 1;
  padding: 0.8333333333rem 0.8333333333rem 0.5833333333rem;
  background-color: #F1E5D4;
}
section#campaign .boxarea .days-item {
  letter-spacing: 0.04em;
  font-weight: 700;
  font-size: 1.1666666667rem;
}
section#campaign .boxarea .days-item .day {
  font-size: 2rem;
}
section#campaign .boxarea .days-item .week {
  display: inline-block;
  transform: translate(0, -10%);
}
section#campaign .boxarea .days-item:nth-of-type(2) {
  margin: 0 0rem;
  transform: translate(0, 10%);
}
section#campaign .boxarea .present {
  padding-top: 2.5rem;
}
section#campaign .boxarea .present h3 {
  letter-spacing: 0.04em;
  font-weight: 700;
  font-size: 1.5rem;
  margin-bottom: 1.25rem;
}
section#campaign .boxarea .present-swiper-frame {
  width: 100%;
  height: 100%;
  overflow: hidden;
  border: solid 1px #3E3737;
  border-radius: 0.3333333333rem;
}
section#campaign .boxarea .present-slides {
  position: relative;
  margin: 0 1.6666666667rem 2.5rem;
}
section#campaign .boxarea .present-slides .swiper-slide-card-body-image img {
  height: 20rem;
}
section#campaign .boxarea .present-slides .swiper-pagination {
  bottom: -1.25rem;
  height: 0.4166666667rem;
  padding: 0;
  line-height: 0;
}
section#campaign .boxarea .present-slides .swiper-pagination-bullet {
  border-radius: 0;
  width: 2.6666666667rem;
  height: 0.3333333333rem;
  background-color: transparent;
  border: solid 1px #3E3737;
  opacity: 1;
  margin: 0 0.1666666667rem;
}
section#campaign .boxarea .present-slides .swiper-pagination-bullet-active {
  width: 4.6666666667rem;
  background-color: #3E3737;
}
section#campaign .boxarea .present-slides .swiper-button-prev {
  display: none;
}
section#campaign .boxarea .present-slides .swiper-button-next {
  display: none;
}
section#campaign .boxarea .present .ex {
  font-size: 1.1666666667rem;
  line-height: 1.6;
  margin-bottom: 0.25rem;
}
section#campaign .boxarea .present .count {
  border: solid 1px #3E3737;
  margin: 0 auto 1.6666666667rem;
  border-radius: 0.4166666667rem;
  display: flex;
  width: fit-content;
  line-height: 1;
  height: 2rem;
  padding: 0 0.8333333333rem;
  align-items: center;
}
section#gamapark {
  height: 37.5rem;
  background: url("../img/daytona/bg.png") top center/cover no-repeat;
  color: #FFFCF0;
  display: flex;
  align-items: flex-end;
  padding-bottom: 14.5rem;
  overflow: hidden;
}
section#gamapark .chara-wrap {
  display: block;
  position: absolute;
  width: 100%;
  bottom: 0;
  height: auto;
  display: flex;
  justify-content: flex-end;
}
section#gamapark .chara-wrap .chara {
  width: 15.5rem;
  transform: translate(2.9166666667rem, 0);
  transition: all 1000ms ease 300ms;
}
section#gamapark .chara-wrap .freaksan {
  display: block;
  position: absolute;
  bottom: 0;
  right: 15rem;
  width: 6.9166666667rem;
  height: auto;
  transform: translate(0%, 5%);
  transition: all 500ms cubic-bezier(0, 1.01, 1, 1) 800ms;
}
section#gamapark .chara-wrap.is--stby {
  transform: translate(0, 0);
}
section#gamapark .chara-wrap.is--stby .chara {
  transform: translate(30%, 0);
}
section#gamapark .chara-wrap.is--stby .freaksan {
  transform: translate(0%, 100%);
}
section#gamapark h2 {
  letter-spacing: 0.04em;
  font-weight: 700;
  font-size: 3rem;
  margin-bottom: 1.25rem;
  line-height: 1;
}
section#gamapark .read {
  font-size: 1.1666666667rem;
  margin-bottom: 1.6666666667rem;
}
section#gamapark .btns-item {
  justify-content: flex-start;
}
section#gamapark .btns-item .btn {
  font-size: 1.3333333333rem;
  margin: 0;
}
section#share {
  text-align: center;
  padding-bottom: 5rem;
  background-color: #E6E5DF;
}
section#share::before {
  content: "";
  display: block;
  width: 100%;
  height: 28.5rem;
  background: url("../img/share/bg.png") center center/cover no-repeat;
  margin-bottom: 4.5833333333rem;
}
section#share p {
  font-size: 1.3333333333rem;
  font-weight: 600;
  margin-bottom: 1.25rem;
}
section#share .btns {
  margin-bottom: 4.1666666667rem;
}
section#share .btns-item .btn {
  letter-spacing: 0.1em;
  font-size: 1.3333333333rem;
  line-height: 1;
  background-color: #3E3737;
  color: #FFFCF0;
}
@keyframes revealMask {
  to {
    -webkit-mask-position: right center;
    mask-position: right center;
  }
}
/* 
================================================================================
loader
================================================================================
*/
#loader {
  display: block;
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: calc(var(--vh) * 100);
  background: rgb(245, 217, 181);
  overflow: hidden;
  z-index: 50000;
  transition: all 500ms ease 500ms;
}
body.loadingFinish #loader {
  opacity: 0;
  pointer-events: none;
}
#loader #loadingAnim {
  display: none;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 3.3333333333rem;
  height: 3.3333333333rem;
  transition: all 250ms ease;
}
body.loadingAnimFinish #loader #loadingAnim {
  opacity: 0;
}
#loader #loadingCircle {
  display: none;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -200%);
  width: 3.3333333333rem;
  height: 3.3333333333rem;
}
#loader #loadingCircle::before, #loader #loadingCircle::after {
  content: "";
  display: block;
  position: absolute;
  top: 0%;
  left: 0%;
  width: 100%;
  height: 100%;
  border-radius: 50%;
  border: solid 2px rgba(0, 187, 187, 0.3);
  opacity: 0;
  animation-name: loading_circle;
  animation-duration: 2s;
  animation-iteration-count: infinite;
  animation-fill-mode: forwards;
  animation-delay: 300ms;
}
#loader #loadingCircle::after {
  animation-delay: 600ms;
}

@keyframes loading_circle {
  0% {
    transform: scale(0);
    opacity: 0;
  }
  50% {
    opacity: 1;
  }
  100% {
    transform: scale(2);
    opacity: 0;
  }
}