@charset "UTF-8";
* {
  padding: 0;
  margin: 0;
  box-sizing: border-box;
  list-style: none;
}
*:before, *:after {
  box-sizing: border-box;
}
*:focus {
  outline: none;
}

html {
  font-size: 62.5%;
  min-height: 100%;
  -webkit-overflow-scrolling: touch;
  position: relative;
  scrollbar-width: none;
  -ms-overflow-style: none;
}
html::-webkit-scrollbar {
  display: none;
}

body {
  font-family: "noto-sans-cjk-jp", sans-serif;
  font-weight: 700;
  font-style: normal;
  font-size: 1.25vw;
  line-height: 1.2;
  font-weight: 700;
  color: #efefef;
  background-color: #000000;
}
body.body_en {
  font-family: "roboto", "noto-sans-cjk-jp", sans-serif;
}
body img {
  max-width: 100%;
  width: 100%;
}
@media screen and (max-width: 1024px) {
  body {
    font-size: 4.2vw;
  }
  body img {
    pointer-events: none;
  }
}

section {
  position: relative;
}

.inner-stamp_rally {
  max-width: 70.833vw;
}
@media screen and (max-width: 1024px) {
  .inner-stamp_rally {
    width: 100%;
    max-width: 95.327vw;
  }
}
.inner-ar {
  max-width: 70.833vw;
}
@media screen and (max-width: 1024px) {
  .inner-ar {
    width: 100%;
    max-width: 92.523vw;
  }
}
.inner-goods {
  max-width: 70.833vw;
}
@media screen and (max-width: 1024px) {
  .inner-goods {
    width: 100%;
    max-width: 89.019vw;
  }
}
.inner-info {
  max-width: 70.833vw;
}
@media screen and (max-width: 1024px) {
  .inner-info {
    width: 100%;
    max-width: 92.523vw;
  }
}

.txt_shadow {
  text-shadow: 0px 0px 10px rgb(51, 207, 255);
}

.btn_path a {
  border: 2px solid #ffffff;
  display: flex;
  justify-content: center;
  align-items: center;
  overflow: hidden;
  position: relative;
  z-index: 0;
  transition: all 0.4s;
}
@media screen and (max-width: 1024px) {
  .btn_path a {
    border: 1px solid #ffffff;
  }
}
.btn_path a span {
  display: inline-block;
  width: 1.042vw;
  height: 0.625vw;
  background-image: url(../images/osaka_special/icon_btn-arrow.svg);
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  top: 50%;
  right: 1.302vw;
  transform: translateY(-50%);
}
@media screen and (max-width: 1024px) {
  .btn_path a span {
    width: 2.57vw;
    height: 1.402vw;
    right: 3.972vw;
  }
}
.btn_path.mv_link_li.en a {
  font-size: 0.833vw;
}
@media screen and (max-width: 1024px) {
  .btn_path.mv_link_li.en a {
    font-size: 2.804vw;
  }
}
.btn_path.mv_link_li a {
  width: 16.458vw;
  height: 3.646vw;
  font-size: 1.042vw;
  background-color: #000000;
  border-radius: 1.823vw;
  box-shadow: inset 0px 0px 10px 0px rgb(122, 234, 255);
  filter: drop-shadow(0px 0px 4px #7aeaff) drop-shadow(0px 0px 4px #7aeaff);
  transform: translateZ(0);
  will-change: filter;
}
@media screen and (min-width: 1024px) {
  .btn_path.mv_link_li a:hover {
    filter: drop-shadow(0px 0px 6px #7aeaff) drop-shadow(0px 0px 6px #7aeaff);
  }
  .btn_path.mv_link_li a:hover::before {
    background-position-y: 0;
    opacity: 1;
  }
}
@media screen and (max-width: 1024px) {
  .btn_path.mv_link_li a {
    width: 45.093vw;
    height: 10.047vw;
    font-size: 2.804vw;
    border-radius: 10.514vw;
    overflow: visible;
    filter: drop-shadow(0px 0px 6px #7aeaff) drop-shadow(0px 0px 6px #7aeaff);
  }
}
.btn_path.mv_link_li a span {
  filter: brightness(0) invert(1);
}
.btn_path.mv_link_li a::before {
  content: "";
  width: 100%;
  height: 100%;
  background: #33cfff;
  background: linear-gradient(180deg, rgba(51, 207, 255, 0) 0%, rgb(51, 207, 255) 100%);
  background-repeat: no-repeat;
  background-position-y: 2.604vw;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  opacity: 0;
  transition: all 0.4s;
}
.btn_path.mv_link_li-ar a {
  box-shadow: inset 0px 0px 9px 0px rgb(255, 123, 170);
  filter: drop-shadow(0px 0px 4px #ff7baa) drop-shadow(0px 0px 4px #ff7baa);
}
@media screen and (min-width: 1024px) {
  .btn_path.mv_link_li-ar a:hover {
    filter: drop-shadow(0px 0px 6px #ff7baa) drop-shadow(0px 0px 6px #ff7baa);
  }
}
.btn_path.mv_link_li-ar a::before {
  background: #ff7baa;
  background: linear-gradient(180deg, rgba(255, 123, 170, 0) 0%, rgb(255, 123, 170) 100%);
}
.btn_path.mv_link_li-goods a {
  box-shadow: inset 0px 0px 9px 0px rgb(255, 246, 22);
  filter: drop-shadow(0px 0px 4px #fff616) drop-shadow(0px 0px 4px #fff616);
}
@media screen and (min-width: 1024px) {
  .btn_path.mv_link_li-goods a:hover {
    filter: drop-shadow(0px 0px 6px #fff616) drop-shadow(0px 0px 6px #fff616);
  }
}
.btn_path.mv_link_li-goods a::before {
  background: #fff616;
  background: linear-gradient(180deg, rgba(255, 246, 22, 0) 0%, rgb(255, 246, 22) 100%);
}
.btn_path.mv_link_li-info a {
  box-shadow: inset 0px 0px 9px 0px rgb(237, 64, 74);
  filter: drop-shadow(0px 0px 4px #ed404a) drop-shadow(0px 0px 4px #ed404a);
}
@media screen and (min-width: 1024px) {
  .btn_path.mv_link_li-info a:hover {
    filter: drop-shadow(0px 0px 6px #ed404a) drop-shadow(0px 0px 6px #ed404a);
  }
}
.btn_path.mv_link_li-info a::before {
  background: #ed404a;
  background: linear-gradient(180deg, rgba(237, 64, 74, 0) 0%, rgb(237, 64, 74) 100%);
}
.btn_path.stamp_rally_link_box {
  margin-bottom: 5.729vw;
  position: relative;
  left: 50%;
  transform: translateX(-50%);
}
.btn_path.stamp_rally_link_box.pc {
  display: inline-block;
}
.btn_path.stamp_rally_link_box.sp {
  display: none;
}
@media screen and (max-width: 1024px) {
  .btn_path.stamp_rally_link_box {
    margin-bottom: 19vw;
  }
  .btn_path.stamp_rally_link_box.pc {
    display: none;
  }
  .btn_path.stamp_rally_link_box.sp {
    display: inline-block;
  }
}
.btn_path.stamp_rally_link_box a {
  width: 23.438vw;
  height: 4.688vw;
  font-size: 1.25vw;
  font-weight: 900;
  border-color: #fff5a2;
  border-radius: 2.604vw;
  box-shadow: inset 0px 0px 10px 0px rgb(255, 247, 20), 0px 0px 3px 0px rgba(255, 247, 20, 0);
}
@media screen and (min-width: 1024px) {
  .btn_path.stamp_rally_link_box a:hover {
    box-shadow: inset 0px 0px 10px 0px rgb(255, 247, 20), 0px 0px 3px 0px rgb(255, 247, 20);
    filter: drop-shadow(0px 0px 2px #fff714);
  }
  .btn_path.stamp_rally_link_box a:hover::before {
    height: 140%;
    opacity: 0.6;
  }
}
@media screen and (max-width: 1024px) {
  .btn_path.stamp_rally_link_box a {
    width: 69.159vw;
    height: 14.953vw;
    font-size: 3.738vw;
    border-radius: 11.682vw;
  }
}
.btn_path.stamp_rally_link_box a::before {
  content: "";
  width: 100%;
  height: 100%;
  background: #000000;
  background: linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, rgba(255, 247, 20, 0.6) 100%);
  background-repeat: no-repeat;
  background-position-y: 0;
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: -1;
  transition: all 0.4s;
}
.btn_path.stamp_rally_link_box span {
  width: 5.729vw;
  height: 5.625vw;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  pointer-events: none;
}
.btn_path.stamp_rally_link_box span:first-of-type {
  left: -6.771vw;
}
.btn_path.stamp_rally_link_box span:last-of-type {
  right: -6.771vw;
  transform: translateY(-50%) scale(-1, 1);
}
.btn_path.stamp_rally_link_box span::before, .btn_path.stamp_rally_link_box span::after {
  content: "";
  width: 3.646vw;
  height: 100%;
  background-image: url(../images/osaka_special/mv_deco-arrow-yellow.webp);
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  animation: load 1.54s ease infinite;
}
.btn_path.stamp_rally_link_box span::before {
  left: 0;
}
.btn_path.stamp_rally_link_box span::after {
  right: 0;
  animation-delay: 0.24s;
}
@media screen and (max-width: 1024px) {
  .btn_path.stamp_rally_link_box span {
    width: 11.916vw;
    height: 11.682vw;
  }
  .btn_path.stamp_rally_link_box span:first-of-type {
    left: -12.85vw;
  }
  .btn_path.stamp_rally_link_box span:last-of-type {
    right: -12.85vw;
  }
  .btn_path.stamp_rally_link_box span::before, .btn_path.stamp_rally_link_box span::after {
    content: "";
    width: 7.477vw;
    height: 100%;
  }
}
.btn_path.btn-ar_map a {
  width: 22.396vw;
  height: 4.167vw;
  margin: 0 auto;
  background-color: #0d0d0d;
  border-color: #ff7baa;
  border-radius: 2.24vw;
  font-size: 1.25vw;
}
@media screen and (min-width: 1024px) {
  .btn_path.btn-ar_map a:hover {
    color: #ff7baa;
  }
}
@media screen and (max-width: 1024px) {
  .btn_path.btn-ar_map a {
    width: 69.159vw;
    height: 12.85vw;
    border-radius: 10.047vw;
    font-size: 3.738vw;
  }
  .btn_path.btn-ar_map a span {
    width: 3.271vw;
    height: 1.869vw;
  }
}
.btn_path.btn-ar_sns a {
  width: 22.396vw;
  height: 4.167vw;
  margin: 0 auto;
  margin-left: 13.2vw;
  background-color: #0d0d0d;
  border-color: #ff7baa;
  border-radius: 2.24vw;
  font-size: 1.25vw;
}
@media screen and (min-width: 1024px) {
  .btn_path.btn-ar_sns a:hover {
    color: #ff7baa;
  }
}
@media screen and (max-width: 1024px) {
  .btn_path.btn-ar_sns a {
    width: 69.159vw;
    height: 12.85vw;
    border-radius: 10.047vw;
    font-size: 3.738vw;
    margin: 0 auto;
  }
}
.btn_path.btn-ar_googlemap a {
  width: 22.396vw;
  height: 4.167vw;
  margin: 0 auto;
  background-color: #0d0d0d;
  border-color: #7aeaff;
  border-radius: 2.24vw;
  font-size: 1.25vw;
}
@media screen and (min-width: 1024px) {
  .btn_path.btn-ar_googlemap a:hover {
    color: #7aeaff;
  }
}
@media screen and (max-width: 1024px) {
  .btn_path.btn-ar_googlemap a {
    width: 69.159vw;
    height: 12.85vw;
    border-radius: 10.047vw;
    font-size: 3.738vw;
  }
}
.btn_path.btn-goods_link a {
  width: 12.917vw;
  height: 3.229vw;
  font-size: 0.938vw;
  font-weight: 900;
  border-color: #fff5a2;
  border-radius: 2.604vw;
  box-shadow: inset 0px 0px 10px 0px rgb(255, 247, 20), 0px 0px 3px 0px rgba(255, 247, 20, 0);
}
@media screen and (min-width: 1024px) {
  .btn_path.btn-goods_link a:hover {
    box-shadow: inset 0px 0px 10px 0px rgb(255, 247, 20), 0px 0px 3px 0px rgb(255, 247, 20);
    filter: drop-shadow(0px 0px 2px #fff714);
  }
  .btn_path.btn-goods_link a:hover::before {
    height: 140%;
    opacity: 0.6;
  }
}
@media screen and (max-width: 1024px) {
  .btn_path.btn-goods_link a {
    width: 60.514vw;
    height: 13.084vw;
    font-size: 3.738vw;
    border-radius: 11.682vw;
  }
}
.btn_path.btn-goods_link a::before {
  content: "";
  width: 100%;
  height: 100%;
  background: #000000;
  background: linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, rgba(255, 247, 20, 0.6) 100%);
  background-repeat: no-repeat;
  background-position-y: 0;
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: -1;
  transition: all 0.4s;
}
.btn_path.btn-share a {
  width: 22.396vw;
  height: 4.167vw;
  margin: 0 auto;
  background-color: #0d0d0d;
  border-color: #7aeaff;
  border-radius: 2.24vw;
  font-size: 1.25vw;
}
@media screen and (min-width: 1024px) {
  .btn_path.btn-share a:hover {
    color: #7aeaff;
  }
}
@media screen and (max-width: 1024px) {
  .btn_path.btn-share a {
    width: 69.159vw;
    height: 12.85vw;
    font-size: 3.738vw;
    border-radius: 10.047vw;
  }
}

.mark_kome {
  position: relative;
}
.mark_kome::before {
  content: "※";
}

dl .dl_inner {
  display: flex;
  align-items: baseline;
  border-bottom: 1px solid #33cfff;
  padding-bottom: 1.042vw;
  margin-bottom: 1.563vw;
}
dl .dl_dt {
  width: 50%;
  font-size: 1.25vw;
  color: #33cfff;
}
dl .dl_dd {
  width: 50%;
}
@media screen and (max-width: 1024px) {
  dl .dl_inner {
    flex-direction: column;
    padding-bottom: 2.336vw;
    margin-bottom: 7.009vw;
  }
  dl .dl_inner:last-of-type {
    margin-bottom: 0;
  }
  dl .dl_dt {
    width: 100%;
    font-size: 3.738vw;
    margin-bottom: 2.336vw;
  }
  dl .dl_dd {
    width: 100%;
  }
}
dl.benefits_dl .benefits_dd {
  font-size: 1.667vw;
}
@media screen and (max-width: 1024px) {
  dl.benefits_dl .benefits_dd {
    font-size: 4.673vw;
  }
}
dl.sns_dl {
  padding-left: 5.208vw;
}
dl.sns_dl .sns_dl_inner {
  border-color: #ff7baa;
}
dl.sns_dl .sns_dt {
  width: 15%;
  color: #ff7baa;
}
dl.sns_dl .sns_dd {
  width: 85%;
  font-size: 0.938vw;
  line-height: 2.16;
}
dl.sns_dl .sns_dd span {
  font-size: 1.563vw;
}
dl.sns_dl.en .sns_dt {
  width: 23%;
}
dl.sns_dl.en .sns_dd {
  width: 77%;
}
@media screen and (max-width: 1024px) {
  dl.sns_dl.en .sns_dt {
    width: 100%;
  }
  dl.sns_dl.en .sns_dd {
    width: 100%;
  }
}
@media screen and (max-width: 1024px) {
  dl.sns_dl {
    width: 96%;
    margin: 0 auto;
    padding-left: 0;
  }
  dl.sns_dl .sns_dt {
    width: 100%;
  }
  dl.sns_dl .sns_dd {
    width: 100%;
    font-size: 3.271vw;
    line-height: 1.64;
  }
  dl.sns_dl .sns_dd span {
    font-size: 4.673vw;
  }
}

header .menu {
  color: #efefef;
}
header .menu::after {
  background-image: url(../images/osaka_special/menu_bg.webp);
}
header .menu .menu_inner {
  width: 34.6vw;
  padding-top: 2.6vw;
}
@media screen and (max-width: 1024px) {
  header .menu .menu_inner {
    width: 85.748vw;
    padding-top: 16vw;
  }
}
header .menu .menu_ul {
  margin-bottom: 4.688vw;
}
@media screen and (max-width: 1024px) {
  header .menu .menu_ul {
    width: 87%;
    margin-bottom: 20.5vw;
  }
}
header .menu .menu_ul::before {
  display: none;
}
header .menu .menu_ul::after {
  background-image: url(../images/osaka_special/menu_bg_deco.webp);
  bottom: -6vw;
}
@media screen and (max-width: 1024px) {
  header .menu .menu_ul::after {
    background-image: url(../images/osaka_special/sp/menu_bg_deco.webp);
    bottom: -21vw;
  }
}
header .menu .menu_ul.en li {
  font-size: 1.4vw;
}
@media screen and (max-width: 1024px) {
  header .menu .menu_ul.en li {
    font-size: 4.8vw;
  }
}
header .menu .menu_ul li {
  padding-left: 1.8vw;
  margin-bottom: 1.667vw;
}
@media screen and (max-width: 1024px) {
  header .menu .menu_ul li {
    padding-left: 7.009vw;
    margin-bottom: 3.505vw;
  }
}
header .menu .menu_ul li::before {
  width: 1.042vw;
  height: 1.25vw;
  background-image: url(../images/osaka_special/icon-stamprally.svg);
}
@media screen and (max-width: 1024px) {
  header .menu .menu_ul li::before {
    width: 4.206vw;
    height: 4.439vw;
  }
}
@media screen and (min-width: 767px) {
  header .menu .menu_ul li a:hover {
    color: #6ed6e9;
  }
}
header .menu .menu_ul li.-ar::before {
  background-image: url(../images/osaka_special/icon-ar.svg);
}
@media screen and (min-width: 767px) {
  header .menu .menu_ul li.-ar a:hover {
    color: #ff7baa;
  }
}
header .menu .menu_ul li.-goods::before {
  background-image: url(../images/osaka_special/icon-goods.svg);
}
@media screen and (min-width: 767px) {
  header .menu .menu_ul li.-goods a:hover {
    color: #e1d88e;
  }
}
header .menu .menu_ul li.-info::before {
  background-image: url(../images/osaka_special/icon-place.svg);
}
@media screen and (min-width: 767px) {
  header .menu .menu_ul li.-info a:hover {
    color: #d53942;
  }
}
header .menu .share_box {
  margin-bottom: 0;
}
@media screen and (max-width: 1024px) {
  header .menu .share_box {
    margin-bottom: 0;
    margin-left: 4.673vw;
  }
}
header .menu .share_box p.share_title {
  color: #79eaff;
}
@media screen and (max-width: 1024px) {
  header .menu .share_box p {
    font-size: 2.57vw;
  }
  header .menu .share_box p.share_title {
    font-size: 4.907vw;
  }
}
header .menu .share_box .share_link_btn {
  filter: drop-shadow(0px 0px 3px #79eaff);
}
@media screen and (min-width: 767px) {
  header .menu .share_box .share_link_btn:hover {
    background-color: #79eaff;
  }
}
@media screen and (max-width: 1024px) {
  header .menu .share_box .share_link_btn {
    width: 224px;
    height: 47px;
    font-size: 13px;
    border-radius: 28px;
  }
}
@media screen and (max-width: 1024px) {
  header .menu.en .x_box_link .x_box .x_box_info {
    font-size: 2.7vw;
  }
}
@media screen and (min-width: 767px) {
  header .menu .x_box_link:hover {
    color: #6ed6e9;
  }
}
header .menu .x_box_link .x_box {
  background-color: #000000;
  margin-bottom: 2.083vw;
}
@media screen and (max-width: 1024px) {
  header .menu .x_box_link .x_box {
    margin-bottom: 9.346vw;
    margin-left: 5.841vw;
  }
}
@media screen and (max-width: 1024px) {
  header .menu .x_box_link .x_box .x_box_img {
    width: 12.617vw;
  }
}
header .menu .x_box_link .x_box .x_box_info {
  border: 1px solid #efefef;
}
@media screen and (max-width: 1024px) {
  header .menu .x_box_link .x_box .x_box_info {
    width: 59.112vw;
    font-size: 2.804vw;
  }
}
header .menu .area_link {
  margin-bottom: 0.521vw;
}
@media screen and (max-width: 1024px) {
  header .menu .area_link {
    margin-bottom: 3.505vw;
  }
}
header .menu .area_link.en .area_link_btn {
  font-size: 1vw;
}
@media screen and (max-width: 1024px) {
  header .menu .area_link.en .area_link_btn {
    font-size: 3.505vw;
  }
}
header .menu .area_link .area_link_btn {
  width: 19.167vw;
  height: 3.333vw;
  font-size: 1.25vw;
  background-image: url(../images/osaka_special/btn_share.webp);
  background-repeat: no-repeat;
  background-size: contain;
  display: flex;
  justify-content: center;
  align-items: center;
  transition: all 0.4s;
}
@media screen and (max-width: 1024px) {
  header .menu .area_link .area_link_btn {
    width: 71.495vw;
    height: 12.617vw;
    font-size: 3.505vw;
    margin-left: auto;
  }
}
@media screen and (min-width: 767px) {
  header .menu .area_link .area_link_btn:hover {
    color: #6b56ef;
  }
  header .menu .area_link .area_link_btn:hover span {
    animation: tikatika-Menu 0.1s linear infinite;
  }
}
header .menu .osaka_link {
  margin-bottom: 0.521vw;
}
@media screen and (max-width: 1024px) {
  header .menu .osaka_link {
    margin-bottom: 3.505vw;
  }
}
header .menu .osaka_link .osaka_link_btn {
  width: 19.167vw;
  height: 3.333vw;
  font-size: 1.042vw;
  background-image: url(../images/osaka_special/btn_menu_osaka.webp);
  background-repeat: no-repeat;
  background-size: contain;
  display: flex;
  justify-content: center;
  align-items: center;
  transition: all 0.4s;
}
@media screen and (max-width: 1024px) {
  header .menu .osaka_link .osaka_link_btn {
    width: 71.495vw;
    height: 12.617vw;
    font-size: 3.505vw;
    margin-left: auto;
  }
}
@media screen and (min-width: 767px) {
  header .menu .osaka_link .osaka_link_btn:hover {
    animation: tikatika-Menu 0.1s linear infinite;
  }
}

main::before {
  background-image: url(../images/osaka_special/main_bg_01.webp);
}
@media screen and (max-width: 1024px) {
  main::before {
    background-image: url(../images/osaka_special/sp/main_bg_01.webp);
  }
}
main::after {
  background-image: url(../images/osaka_special/main_bg_02.webp);
}
@media screen and (max-width: 1024px) {
  main::after {
    background-image: url(../images/osaka_special/sp/main_bg_02.webp);
  }
}
main .active h2 {
  opacity: 1;
  transform: translateY(0%);
}
main .active h2::after {
  animation: lineExtendScale 1.5s ease-in-out 0.5s infinite;
}
main h2 {
  font-family: vdl-logojrblack, sans-serif;
  font-weight: 900;
  font-size: 3.125vw;
  letter-spacing: 0.06em;
  text-shadow: 0px 0px 10px rgb(51, 207, 255);
  text-align: center;
  padding-bottom: 4.688vw;
  position: relative;
  opacity: 0;
  transform: translateY(10%);
  transition: all 0.4s;
}
main h2 span {
  font-family: "abolition", sans-serif;
  font-weight: 400;
  font-size: 2.604vw;
  letter-spacing: 0.05em;
  color: #79eaff;
  text-shadow: 0px 0px 6px rgb(51, 207, 255);
  display: block;
}
main h2::after {
  content: "";
  width: 0.156vw;
  height: 3.646vw;
  background-color: #79eaff;
  position: absolute;
  bottom: 0;
  left: 50%;
  transform-origin: top;
  transform: translateX(-50%) translateZ(0) scaleY(0);
  will-change: transform;
}
@media screen and (max-width: 1024px) {
  main h2 {
    font-size: 7.009vw;
    padding-bottom: 14.019vw;
  }
  main h2 span {
    font-size: 5.607vw;
    letter-spacing: 0.05em;
    margin-bottom: 1.168vw;
  }
  main h2::after {
    width: 0.701vw;
    height: 9.346vw;
  }
}
main h2.en {
  font-size: 2.917vw;
}
@media screen and (max-width: 1024px) {
  main h2.en {
    font-size: 5.607vw;
  }
}
main h2.h2-ar {
  text-shadow: 0px 0px 10px rgb(255, 123, 170);
}
main h2.h2-ar span {
  color: #ff7baa;
  text-shadow: 0px 0px 6px rgb(255, 123, 170);
}
main h2.h2-ar::after {
  background-color: #ff7baa;
}
main h2.h2-goods {
  text-shadow: 0px 0px 10px rgb(149, 144, 0);
}
main h2.h2-goods::after {
  background-color: #fff714;
}
main h2.h2-info {
  text-shadow: 0px 0px 10px rgb(237, 64, 74);
}
main h2.h2-info::after {
  background-color: #ed404a;
}
main h2.h2-share {
  padding-bottom: 0;
  opacity: 1;
  transform: translateY(0%);
}
main h2.h2-share span {
  color: #33cfff;
  letter-spacing: 0;
  text-shadow: none;
}
main h2.h2-share::after {
  content: none;
}
@media screen and (max-width: 1024px) {
  main h2.h2-share span {
    font-size: 7.009vw;
  }
}
main h3 {
  font-family: vdl-logojrblack, sans-serif;
  font-weight: 900;
  font-size: 2.083vw;
  text-align: center;
}
main h3::before, main h3::after {
  content: none;
}
main h3 span {
  position: relative;
  padding: 0 3.125vw;
}
main h3 span::before, main h3 span::after {
  content: "";
  width: 2.083vw;
  height: 2.083vw;
  background-image: url(../images/osaka_special/icon_target-blue.svg);
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
}
main h3 span::before {
  left: 0;
  background-color: transparent;
}
main h3 span::after {
  right: 0;
}
@media screen and (max-width: 1024px) {
  main h3 {
    font-size: 5.607vw;
  }
  main h3 span {
    padding: 0 9.813vw;
  }
  main h3 span::before, main h3 span::after {
    width: 6.308vw;
    height: 6.308vw;
  }
}
main h3.h3-stamp_rally {
  opacity: 0;
  transform: translateY(10%);
  transition: all 0.4s;
}
main h3.h3-stamp_rally.active {
  opacity: 1;
  transform: translateY(0%);
}
main h3.h3-benefits {
  font-size: 3.125vw;
  text-align: left;
}
main h3.h3-benefits span {
  padding: 0 4.167vw;
}
main h3.h3-benefits span::before, main h3.h3-benefits span::after {
  width: 3.177vw;
  height: 3.177vw;
}
main h3.h3-benefits span.benefits_shadow {
  padding: 0;
  background: linear-gradient(348deg, #ffe825 0%, #fffcee 45%, #ffe825 100%);
  color: transparent;
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  text-fill-color: transparent;
  filter: drop-shadow(0px 0px 5px #c17700);
}
main h3.h3-benefits span.benefits_shadow::before, main h3.h3-benefits span.benefits_shadow::after {
  content: none;
}
main h3.h3-benefits.en {
  text-align: center;
  display: inline-block;
  position: relative;
  padding: 0 4.167vw;
}
main h3.h3-benefits.en span {
  position: static;
  padding: 0;
}
@media screen and (max-width: 1024px) {
  main h3.h3-benefits.en {
    padding: 0 9.346vw;
    margin-left: -2.336vw;
  }
}
@media screen and (max-width: 1024px) {
  main h3.h3-benefits {
    font-size: 7.477vw;
    text-align: center;
  }
  main h3.h3-benefits span {
    padding: 0 9.346vw;
  }
  main h3.h3-benefits span::before, main h3.h3-benefits span::after {
    width: 8.411vw;
    height: 8.411vw;
  }
  main h3.h3-benefits span.benefits_shadow {
    background: linear-gradient(0deg, #ffe825 0%, #fffcee 50%, #ffe825 100%);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
    text-fill-color: transparent;
  }
}
main h3.h3-ar_sns {
  font-family: "noto-sans-cjk-jp", sans-serif;
  font-size: 1.563vw;
  font-weight: 700;
  text-shadow: 0px 0px 10px rgb(51, 207, 255);
}
main h3.h3-ar_sns img {
  display: block;
  width: 26.198vw;
  margin: 0 auto;
  margin-top: 0.521vw;
}
@media screen and (max-width: 1024px) {
  main h3.h3-ar_sns {
    font-size: 4.907vw;
  }
  main h3.h3-ar_sns img {
    width: 88.785vw;
    margin-top: 2.336vw;
  }
  main h3.h3-ar_sns.en {
    font-size: 3.8vw;
  }
}
main h3.h3-ar_entry {
  color: #ff7baa;
}
main h3.h3-ar_entry span::before, main h3.h3-ar_entry span::after {
  background-image: url(../images/osaka_special/icon_target-pink.svg);
}
main h3.h3-ar_map {
  color: #79eaff;
}
main h3.h3-info_access {
  font-size: 1.667vw;
}
main h3.h3-info_access span::before, main h3.h3-info_access span::after {
  background-image: url(../images/osaka_special/icon_target-red.svg);
}
main h3.h3-info_access.en span {
  padding: 0;
  display: block;
  width: 68%;
  margin: 0 auto;
}
@media screen and (max-width: 1024px) {
  main h3.h3-info_access {
    font-size: 4.673vw;
    margin-bottom: 4.673vw;
  }
  main h3.h3-info_access span {
    padding: 0 7vw;
    display: inline-block;
  }
  main h3.h3-info_access.en span {
    width: 100%;
    font-size: 3.271vw;
    line-height: 1.7;
  }
  main h3.h3-info_access.en span::before, main h3.h3-info_access.en span::after {
    display: none;
  }
}
main .main_bg {
  width: 100%;
  height: 100vh;
  position: fixed;
  z-index: -1;
  pointer-events: none;
}
main .main_bg::before {
  content: "";
  width: 100%;
  height: 100%;
  background-image: url(../images/osaka_special/main_bg-pattern.webp);
  background-size: 150%;
  position: absolute;
  top: 0;
  left: 0;
}
@media screen and (max-width: 1024px) {
  main .main_bg {
    display: none;
  }
}
main #mv-osaka_special {
  background: url(../images/osaka_special/mv_bg-filter.webp?20260216) no-repeat center top/contain;
  padding-top: 5.729vw;
  padding-bottom: 7.813vw;
  text-align: center;
  overflow: hidden;
  position: relative;
  z-index: 0;
}
main #mv-osaka_special::before {
  content: "";
  width: 107.552vw;
  height: 11.042vw;
  background-image: url(../images/osaka_special/line-blue.webp);
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  z-index: 1;
  pointer-events: none;
  animation: neon-random-blink 10s step-end infinite;
}
main #mv-osaka_special.en {
  background: url(../images/osaka_special/mv_bg-filter_en.webp) no-repeat center top/contain;
}
@media screen and (max-width: 1024px) {
  main #mv-osaka_special.en {
    background: url(../images/osaka_special/sp/mv_bg-filter.webp) no-repeat center top/55%;
  }
}
@media screen and (max-width: 1024px) {
  main #mv-osaka_special {
    background: url(../images/osaka_special/sp/mv_bg-filter.webp) no-repeat center top/55%;
    padding-top: 30.374vw;
    padding-bottom: 21vw;
  }
  main #mv-osaka_special::before {
    width: 121.729vw;
    height: 25.935vw;
    background-image: url(../images/osaka_special/sp/line-blue.webp);
  }
}
main #mv-osaka_special .mv_title {
  width: 42.292vw;
  margin: 0 auto;
  margin-bottom: -1.042vw;
}
@media screen and (max-width: 1024px) {
  main #mv-osaka_special .mv_title {
    width: 93.458vw;
    margin-bottom: -1.168vw;
  }
}
@media screen and (max-width: 1024px) {
  main #mv-osaka_special .mv_title.en {
    width: 96.729vw;
  }
}
main #mv-osaka_special .mv_title.en .mv_title-sub span {
  font-size: 1.146vw;
}
@media screen and (max-width: 1024px) {
  main #mv-osaka_special .mv_title.en .mv_title-sub {
    margin-bottom: 7.5vw;
  }
  main #mv-osaka_special .mv_title.en .mv_title-sub span {
    font-size: 3.271vw;
  }
}
main #mv-osaka_special .mv_title.en h1::before, main #mv-osaka_special .mv_title.en h1::after {
  top: 35%;
}
@media screen and (max-width: 1024px) {
  main #mv-osaka_special .mv_title.en h1::before, main #mv-osaka_special .mv_title.en h1::after {
    top: 20%;
  }
}
main #mv-osaka_special .mv_title-sub {
  margin-bottom: -0.521vw;
}
main #mv-osaka_special .mv_title-sub span {
  display: block;
  font-size: 1.563vw;
  font-weight: 900;
  letter-spacing: 0.1em;
}
main #mv-osaka_special .mv_title-sub span:first-of-type {
  margin-bottom: 0.677vw;
}
main #mv-osaka_special .mv_title-sub span img {
  width: 26.198vw;
}
@media screen and (max-width: 1024px) {
  main #mv-osaka_special .mv_title-sub {
    margin-bottom: 3.505vw;
  }
  main #mv-osaka_special .mv_title-sub span {
    font-size: 4.439vw;
  }
  main #mv-osaka_special .mv_title-sub span:first-of-type {
    margin-bottom: 3.037vw;
  }
  main #mv-osaka_special .mv_title-sub span img {
    width: 63.084vw;
  }
}
main #mv-osaka_special h1 {
  position: relative;
}
main #mv-osaka_special h1 img {
  will-change: opacity, filter;
  transform: translateZ(0);
  animation: 2s linear 1s infinite normal none running flicker;
}
main #mv-osaka_special h1::before, main #mv-osaka_special h1::after {
  content: "";
  width: 8.333vw;
  height: 4.792vw;
  background-image: url(../images/osaka_special/mv_title-deco.webp);
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  top: 35%;
  transform: translateY(-50%);
  will-change: opacity, filter;
  transform: translateZ(0);
  animation: 2s linear infinite normal none running flicker;
}
main #mv-osaka_special h1::before {
  left: 0;
}
main #mv-osaka_special h1::after {
  right: 0;
}
@media screen and (max-width: 1024px) {
  main #mv-osaka_special h1 {
    margin-bottom: 3.505vw;
  }
  main #mv-osaka_special h1::before, main #mv-osaka_special h1::after {
    width: 17.991vw;
    height: 10.28vw;
  }
}
main #mv-osaka_special .mv_date {
  font-family: vdl-logojrblack, sans-serif;
  font-weight: 900;
  font-size: 1.927vw;
  width: 40.833vw;
  margin: 0 auto;
  margin-bottom: 1.563vw;
  padding: 0.781vw 0 1.042vw;
  border-top: 1px solid #7aeaff;
  border-bottom: 1px solid #7aeaff;
}
main #mv-osaka_special .mv_date span {
  font-family: "noto-sans-cjk-jp", sans-serif;
  font-size: 1.25vw;
  font-weight: 900;
  padding-right: 1.042vw;
}
main #mv-osaka_special .mv_date small {
  font-size: 65%;
}
@media screen and (max-width: 1024px) {
  main #mv-osaka_special .mv_date {
    font-size: 4.673vw;
    width: 91.121vw;
    margin-bottom: 7.009vw;
    padding: 2.336vw 0;
  }
  main #mv-osaka_special .mv_date span {
    font-size: 2.804vw;
    padding-right: 4.673vw;
  }
  main #mv-osaka_special .mv_date small {
    font-size: 65%;
  }
}
main #mv-osaka_special .mv_copy {
  font-size: 1.458vw;
  line-height: 2;
  font-weight: 900;
  margin-bottom: 2.083vw;
}
main #mv-osaka_special .mv_copy span {
  font-size: 1.667vw;
}
@media screen and (max-width: 1024px) {
  main #mv-osaka_special .mv_copy {
    font-size: 4.673vw;
    line-height: 1.7;
    font-weight: 700;
    margin-bottom: 7.009vw;
  }
  main #mv-osaka_special .mv_copy span {
    font-size: 5.607vw;
  }
}
main #mv-osaka_special .mv_link_ul {
  width: 70.833vw;
  margin: 0 auto;
  grid-template-columns: repeat(4, 1fr);
}
@media screen and (max-width: 1024px) {
  main #mv-osaka_special .mv_link_ul {
    width: 91.822vw;
    grid-template-columns: repeat(2, 1fr);
    gap: 4.673vw 2.336vw;
  }
}
main #mv-osaka_special .mv_deco_li {
  position: absolute;
  pointer-events: none;
  will-change: opacity, filter;
  transform: translateZ(0);
}
main #mv-osaka_special .mv_deco_li-arrow {
  width: 12.552vw;
  height: 9.271vw;
  top: 4.688vw;
  left: 18.229vw;
  animation: 2s linear infinite normal none running flicker;
}
main #mv-osaka_special .mv_deco_li-arrow .mv_deco-arrow {
  display: inline-block;
  width: 5.885vw;
  height: 100%;
  background-image: url(../images/osaka_special/mv_deco-arrow-pink.webp);
  background-repeat: no-repeat;
  background-size: contain;
  margin-right: -2.865vw;
  animation: load 1.54s ease infinite;
}
main #mv-osaka_special .mv_deco_li-arrow .mv_deco-arrow-blue {
  background-image: url(../images/osaka_special/mv_deco-arrow-blue.webp);
  animation-delay: 0.24s;
}
main #mv-osaka_special .mv_deco_li-arrow .mv_deco-arrow-yellow {
  background-image: url(../images/osaka_special/mv_deco-arrow-yellow.webp);
  animation-delay: 0.42s;
}
@media screen and (max-width: 1024px) {
  main #mv-osaka_special .mv_deco_li-arrow {
    width: 17.991vw;
    height: 13.318vw;
    top: 42.523vw;
    left: 1.729vw;
  }
  main #mv-osaka_special .mv_deco_li-arrow .mv_deco-arrow {
    width: 8.411vw;
    height: 100%;
    margin-right: -4.5vw;
  }
}
main #mv-osaka_special .mv_deco_li-star {
  width: 12.292vw;
  height: 10.99vw;
  top: 17.188vw;
  left: 14.583vw;
}
main #mv-osaka_special .mv_deco_li-star::before, main #mv-osaka_special .mv_deco_li-star::after {
  content: "";
  background-image: url(../images/osaka_special/mv_deco-star.webp);
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  will-change: opacity, filter;
  transform: translateZ(0);
}
main #mv-osaka_special .mv_deco_li-star::before {
  width: 10.104vw;
  height: 10.104vw;
  top: 0;
  left: 0;
  animation: 2s linear infinite normal none running flicker;
}
main #mv-osaka_special .mv_deco_li-star::after {
  width: 6.302vw;
  height: 6.302vw;
  bottom: 0;
  right: 0;
  animation: 2s linear 1s infinite normal none running flicker;
}
@media screen and (max-width: 1024px) {
  main #mv-osaka_special .mv_deco_li-star {
    width: 11.916vw;
    height: 10.28vw;
    top: 63.785vw;
    left: 0.467vw;
  }
  main #mv-osaka_special .mv_deco_li-star::before {
    width: 9.813vw;
    height: 9.813vw;
  }
  main #mv-osaka_special .mv_deco_li-star::after {
    width: 6.075vw;
    height: 6.075vw;
  }
}
main #mv-osaka_special .mv_deco_li-target {
  width: 8.073vw;
  top: 5.729vw;
  right: 29.167vw;
  animation: 2s linear infinite normal none running flicker;
}
@media screen and (max-width: 1024px) {
  main #mv-osaka_special .mv_deco_li-target {
    width: 8.645vw;
    top: 46.262vw;
    right: 18.692vw;
  }
  main #mv-osaka_special .mv_deco_li-target.en {
    top: 44.2vw;
    right: 17.6vw;
  }
}
main #mv-osaka_special .mv_deco_li-mark {
  width: 7.083vw;
  top: 7.292vw;
  right: 20.833vw;
  animation: 2s linear 1s infinite normal none running flicker;
}
@media screen and (max-width: 1024px) {
  main #mv-osaka_special .mv_deco_li-mark {
    width: 12.15vw;
    top: 19.393vw;
    right: 9.346vw;
    animation: 2s linear infinite normal none running flicker;
  }
}
main #mv-osaka_special .mv_deco_li-tsutenkaku {
  width: 11.927vw;
  top: 7.292vw;
  right: 13.021vw;
  animation: 2s linear 1s infinite normal none running flicker;
}
@media screen and (max-width: 1024px) {
  main #mv-osaka_special .mv_deco_li-tsutenkaku {
    width: 15.888vw;
    top: 27.336vw;
    right: 2.336vw;
  }
}
main #mv-osaka_special .mv_deco_li-x {
  width: 2.969vw;
  height: 8.125vw;
  display: flex;
  flex-direction: column;
  top: 19.271vw;
  right: 10.417vw;
}
main #mv-osaka_special .mv_deco_li-x .mv_deco-x {
  width: 100%;
  height: 2.969vw;
  background-image: url(../images/osaka_special/mv_deco-x.webp);
  background-repeat: no-repeat;
  background-size: contain;
  will-change: opacity, filter;
  transform: translateZ(0);
}
main #mv-osaka_special .mv_deco_li-x .mv_deco-x:nth-of-type(2n + 1) {
  animation: 2s linear infinite normal none running flicker;
}
main #mv-osaka_special .mv_deco_li-x .mv_deco-x:nth-of-type(2n) {
  animation: 2s linear 1s infinite normal none running flicker;
}
@media screen and (max-width: 1024px) {
  main #mv-osaka_special .mv_deco_li-x {
    display: none;
  }
}
@media screen and (max-width: 1024px) {
  main #stamp_rally {
    margin-top: 14.019vw;
  }
}
main #stamp_rally.active .stamp_rally_copy {
  opacity: 1;
  transform: translateY(0%);
  transition-delay: 0.4s;
}
main #stamp_rally .stamp_rally_copy {
  font-size: 1.458vw;
  line-height: 1.75;
  text-align: center;
  margin-top: 1.563vw;
  margin-bottom: 4.167vw;
  opacity: 0;
  transform: translateY(10%);
  transition: all 0.4s;
}
main #stamp_rally .stamp_rally_copy span {
  font-size: 1.667vw;
  color: #79eaff;
}
@media screen and (max-width: 1024px) {
  main #stamp_rally .stamp_rally_copy {
    font-size: 4.673vw;
    line-height: 2;
    margin-top: 4.673vw;
    margin-bottom: 14.019vw;
  }
  main #stamp_rally .stamp_rally_copy span {
    font-size: 5.607vw;
  }
}
main #stamp_rally .stamp_rally_step_ul {
  grid-template-columns: repeat(3, 1fr);
  gap: 0 1.458vw;
  margin-bottom: 3.125vw;
  opacity: 0;
  transition: all 0.4s;
}
@media screen and (max-width: 1024px) {
  main #stamp_rally .stamp_rally_step_ul {
    grid-template-columns: repeat(1, 1fr);
    gap: 9.346vw 0;
    max-width: 81.308vw;
    margin: 0 auto;
    margin-bottom: 14.019vw;
  }
}
main #stamp_rally .stamp_rally_step_ul.active {
  opacity: 1;
}
main #stamp_rally .stamp_rally_step_li {
  opacity: 0;
  transform: translateY(10%);
  transition: all 0.4s;
}
main #stamp_rally .stamp_rally_step_li.active {
  opacity: 1;
  transform: translateY(0%);
}
main #stamp_rally .stamp_rally_step_li.active:nth-child(1) {
  transition-delay: 0.3s;
}
main #stamp_rally .stamp_rally_step_li.active:nth-child(2) {
  transition-delay: 0.6s;
}
main #stamp_rally .stamp_rally_step_li.active:nth-child(3) {
  transition-delay: 0.9s;
}
@media screen and (max-width: 1024px) {
  main #stamp_rally .stamp_rally_step_li.active {
    transition-delay: 0s !important;
  }
}
main #stamp_rally .stamp_rally_step_li_img {
  max-width: 100%;
  height: auto;
  aspect-ratio: 430/414;
  background: url(../images/osaka_special/stamprally_img_frame.webp) no-repeat center center/contain;
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
}
main #stamp_rally .stamp_rally_step_li_img::before, main #stamp_rally .stamp_rally_step_li_img::after {
  content: "";
  width: 4.479vw;
  height: 6.823vw;
  background-image: url(../images/osaka_special/mv_deco-arrow-blue.webp);
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  animation: load 1.54s ease infinite;
}
main #stamp_rally .stamp_rally_step_li_img::before {
  right: -2.083vw;
}
main #stamp_rally .stamp_rally_step_li_img::after {
  right: -4.427vw;
  animation-delay: 0.24s;
}
main #stamp_rally .stamp_rally_step_li_img img {
  width: 40%;
}
@media screen and (max-width: 1024px) {
  main #stamp_rally .stamp_rally_step_li_img {
    aspect-ratio: 339/326;
    margin-bottom: -5vw;
  }
  main #stamp_rally .stamp_rally_step_li_img::before, main #stamp_rally .stamp_rally_step_li_img::after {
    display: none;
  }
  main #stamp_rally .stamp_rally_step_li_img img {
    width: 38%;
  }
}
main #stamp_rally .stamp_rally_step_li_img .step_number {
  font-family: "abolition", sans-serif;
  font-weight: 400;
  font-style: italic;
  font-size: 2.604vw;
  letter-spacing: 0.05em;
  color: #79eaff;
  position: absolute;
  top: 2.083vw;
  left: 3.125vw;
}
@media screen and (max-width: 1024px) {
  main #stamp_rally .stamp_rally_step_li_img .step_number {
    font-size: 9.346vw;
    top: 7.009vw;
    left: 15.187vw;
  }
}
main #stamp_rally .stamp_rally_step_li_txt .step-title {
  font-size: 1.667vw;
  line-height: 1.4;
  color: #79eaff;
  text-align: center;
  margin-bottom: 1.563vw;
}
@media screen and (max-width: 1024px) {
  main #stamp_rally .stamp_rally_step_li_txt .step-title {
    font-size: 5.607vw;
    margin-bottom: 4.673vw;
    line-height: 1.625;
  }
}
main #stamp_rally .stamp_rally_step_li_txt .step-description {
  font-size: 1.042vw;
  line-height: 1.45;
  font-weight: 500;
}
main #stamp_rally .stamp_rally_step_li_txt .step-description span {
  font-size: 1.25vw;
  font-weight: 700;
}
@media screen and (max-width: 1024px) {
  main #stamp_rally .stamp_rally_step_li_txt .step-description {
    font-size: 3.738vw;
    line-height: 1.625;
  }
  main #stamp_rally .stamp_rally_step_li_txt .step-description span {
    font-size: 4.673vw;
  }
}
main #stamp_rally .stamp_rally_step_li.en .stamp_rally_step_li_txt .step-title {
  font-size: 1.51vw;
}
@media screen and (max-width: 1024px) {
  main #stamp_rally .stamp_rally_step_li.en .stamp_rally_step_li_txt .step-title {
    font-size: 5.14vw;
  }
}
main #stamp_rally .stamp_rally_step_li.-step02 .stamp_rally_step_li_img img {
  width: 50%;
}
main #stamp_rally .stamp_rally_step_li:last-of-type .stamp_rally_step_li_img::before, main #stamp_rally .stamp_rally_step_li:last-of-type .stamp_rally_step_li_img::after {
  display: none;
}
main #stamp_rally .stamp_rally_benefits_box {
  position: relative;
  padding: 3.802vw 2.344vw 3.125vw;
  margin-bottom: 3.125vw;
  border: 3px solid #7aeaff;
  border-radius: 1.042vw;
  box-shadow: 0px 0px 10px 0px rgb(51, 207, 255), 0px 0px 10px 0px rgb(51, 207, 255);
  opacity: 0;
  transform: translateY(10%);
  transition: all 0.4s;
}
@media screen and (max-width: 1024px) {
  main #stamp_rally .stamp_rally_benefits_box {
    max-width: 92.523vw;
    padding: 9.346vw 5.607vw 11.215vw;
    margin: 0 auto;
    margin-bottom: 9.346vw;
    border: 2px solid #7aeaff;
    border-radius: 4.673vw;
  }
}
main #stamp_rally .stamp_rally_benefits_box.active {
  opacity: 1;
  transform: translateY(0%);
}
main #stamp_rally .benefits_box_contents {
  padding: 0 3.646vw;
}
main #stamp_rally .benefits_box_contents .big_txt {
  font-size: 1.667vw;
  line-height: 1.55;
  font-weight: 900;
  margin-top: 2.604vw;
  margin-bottom: 2.604vw;
}
main #stamp_rally .benefits_box_contents .big_txt span {
  font-size: 2.083vw;
  color: #33cfff;
}
@media screen and (max-width: 1024px) {
  main #stamp_rally .benefits_box_contents {
    padding: 0;
  }
  main #stamp_rally .benefits_box_contents .big_txt {
    font-size: 5.607vw;
    line-height: 1.62;
    margin-top: 0px;
    margin-bottom: 7.009vw;
    text-align: center;
  }
  main #stamp_rally .benefits_box_contents .big_txt span {
    font-size: 6.542vw;
  }
  main #stamp_rally .benefits_box_contents .big_txt.en {
    font-size: 4.907vw;
  }
  main #stamp_rally .benefits_box_contents .big_txt.en span {
    font-size: 5.841vw;
  }
}
main #stamp_rally .benefits_img_box {
  width: 21.458vw;
  position: absolute;
  top: 0.573vw;
  right: 4.792vw;
  z-index: -1;
  pointer-events: none;
}
main #stamp_rally .benefits_img_box::before {
  content: "";
  width: 6.198vw;
  height: 5.469vw;
  background-image: url(../images/osaka_special/benefits_deco-01.webp);
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  top: 0;
  right: -2.083vw;
  z-index: 1;
  pointer-events: none;
}
main #stamp_rally .benefits_img_box.en {
  top: 5.9vw;
  right: 6.5vw;
}
@media screen and (max-width: 1024px) {
  main #stamp_rally .benefits_img_box.en {
    top: 0;
    left: 0;
  }
}
@media screen and (max-width: 1024px) {
  main #stamp_rally .benefits_img_box {
    width: 81.776vw;
    margin-top: 2.336vw;
    position: relative;
    top: 0;
    left: 0;
  }
  main #stamp_rally .benefits_img_box::before {
    width: 21.495vw;
    height: 19.159vw;
    right: -4.673vw;
  }
}
main #stamp_rally .benefits_caution_ul {
  font-size: 1.042vw;
  line-height: 1.95;
  font-weight: 500;
  margin-bottom: 2.604vw;
}
@media screen and (max-width: 1024px) {
  main #stamp_rally .benefits_caution_ul {
    font-size: 3.738vw;
    line-height: 1.625;
    margin-bottom: 7.009vw;
  }
}
main #stamp_rally .benefits_caution_ul.en {
  width: 57%;
}
@media screen and (max-width: 1024px) {
  main #stamp_rally .benefits_caution_ul.en {
    width: 100%;
  }
}
main #ar {
  padding-top: 8.073vw;
  margin-bottom: 5.729vw;
}
main #ar::before {
  content: "";
  width: 73.75vw;
  height: 4.271vw;
  background-image: url(../images/osaka_special/line-pink.webp);
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  top: -1.042vw;
  left: 50%;
  transform: translateX(-50%);
  animation: neon-random-blink 10s step-end infinite;
}
@media screen and (max-width: 1024px) {
  main #ar {
    padding-top: 19.86vw;
    margin-bottom: 19vw;
    overflow: hidden;
  }
  main #ar::before {
    width: 330.841vw;
    height: 19.159vw;
    top: -2.7vw;
  }
}
main #ar .ar_intro {
  margin-bottom: 4.427vw;
}
@media screen and (max-width: 1024px) {
  main #ar .ar_intro {
    margin-bottom: 16.355vw;
  }
}
main #ar .ar_intro_ul {
  margin-bottom: 2.344vw;
}
@media screen and (max-width: 1024px) {
  main #ar .ar_intro_ul {
    margin-top: -9.346vw;
    margin-bottom: -4.673vw;
    flex-direction: column;
  }
}
main #ar .ar_intro_li {
  position: relative;
  width: 50%;
}
@media screen and (max-width: 1024px) {
  main #ar .ar_intro_li {
    width: 100%;
  }
}
main #ar .ar_intro_li .ar_intro_img {
  opacity: 0;
  transform: translateY(10%);
  transition: all 0.4s;
}
main #ar .ar_intro_li .ar_intro_description {
  width: 23.125vw;
  font-size: 1.25vw;
  line-height: 1.91;
  letter-spacing: 0.03em;
  text-shadow: 0px 0px 10px rgb(255, 123, 170);
  text-align: center;
  position: absolute;
  z-index: -1;
  opacity: 0;
  transition: all 0.4s;
}
main #ar .ar_intro_li .ar_intro_description::before {
  content: "";
  width: 100%;
  height: 23.958vw;
  background-image: url(../images/osaka_special/ar_frame.webp);
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  z-index: -1;
}
main #ar .ar_intro_li .ar_intro_description.en p {
  width: 65%;
  margin: 0 auto;
}
@media screen and (max-width: 1024px) {
  main #ar .ar_intro_li .ar_intro_description {
    width: 56.542vw;
    font-size: 3.271vw;
    line-height: 1.5;
  }
  main #ar .ar_intro_li .ar_intro_description::before {
    height: 53.738vw;
    background-image: url(../images/osaka_special/sp/ar_frame.webp);
  }
}
main #ar .ar_intro_li.ar_intro_01 .ar_intro_img {
  width: 24.844vw;
  margin-left: auto;
  margin-right: -4.687vw;
}
main #ar .ar_intro_li.ar_intro_01 .ar_intro_description {
  padding-top: 5.729vw;
  top: 4.688vw;
  left: 0;
  transform: translateX(10%);
}
main #ar .ar_intro_li.ar_intro_01 .ar_intro_description::before {
  top: 0;
  left: 0;
}
main #ar .ar_intro_li.ar_intro_01 .ar_intro_description.en {
  padding-top: 4vw;
}
main #ar .ar_intro_li.ar_intro_01.active .ar_intro_img {
  opacity: 1;
  transform: translateY(0%);
}
main #ar .ar_intro_li.ar_intro_01.active .ar_intro_description {
  opacity: 1;
  transform: translateX(0%);
  transition-delay: 0.4s;
}
@media screen and (max-width: 1024px) {
  main #ar .ar_intro_li.ar_intro_01 .ar_intro_img {
    width: 85.047vw;
    margin-left: -14.019vw;
    margin-right: auto;
  }
  main #ar .ar_intro_li.ar_intro_01 .ar_intro_description {
    padding-top: 16.355vw;
    padding-left: 1.168vw;
    top: 24.533vw;
    left: auto;
    right: -4.439vw;
    transform: translateX(-10%);
  }
  main #ar .ar_intro_li.ar_intro_01 .ar_intro_description::before {
    transform: scale(-1, 1);
  }
  main #ar .ar_intro_li.ar_intro_01 .ar_intro_description.en {
    padding-top: 12.5vw;
  }
}
main #ar .ar_intro_li.ar_intro_02 .ar_intro_img {
  width: 23.906vw;
  margin-left: -3.646vw;
}
main #ar .ar_intro_li.ar_intro_02 .ar_intro_description {
  padding-bottom: 4.688vw;
  padding-left: 0.521vw;
  bottom: 0.521vw;
  right: 0;
  transform: translateX(-10%);
}
main #ar .ar_intro_li.ar_intro_02 .ar_intro_description::before {
  bottom: 0;
  right: 0;
  transform: scale(-1, -1);
}
main #ar .ar_intro_li.ar_intro_02.active .ar_intro_img {
  opacity: 1;
  transform: translateY(0%);
}
main #ar .ar_intro_li.ar_intro_02.active .ar_intro_description {
  opacity: 1;
  transform: translateX(0%);
  transition-delay: 0.4s;
}
@media screen and (max-width: 1024px) {
  main #ar .ar_intro_li.ar_intro_02 {
    margin-top: -46.729vw;
  }
  main #ar .ar_intro_li.ar_intro_02 .ar_intro_img {
    width: 75.2vw;
    margin-left: auto;
    margin-right: -11.682vw;
  }
  main #ar .ar_intro_li.ar_intro_02 .ar_intro_description {
    padding-bottom: 0;
    padding-left: 0;
    bottom: auto;
    right: auto;
    top: 37.383vw;
    left: -4.673vw;
    padding-top: 16.355vw;
    transform: translateX(10%);
  }
  main #ar .ar_intro_li.ar_intro_02 .ar_intro_description::before {
    top: 0;
    left: 0;
    transform: scale(1, 1);
  }
}
main #ar .ar_sns_box {
  opacity: 0;
  transform: translateY(5%);
  transition: all 0.6s;
}
main #ar .ar_sns_box.active {
  opacity: 1;
  transform: translateY(0);
}
main #ar .ar_sns_copy {
  font-size: 1.458vw;
  line-height: 1.65;
  font-weight: 500;
  letter-spacing: 0.03em;
  text-align: center;
  margin-top: 1.563vw;
  margin-bottom: 1.563vw;
}
main #ar .ar_sns_copy span {
  font-size: 2.083vw;
  font-weight: 700;
}
@media screen and (max-width: 1024px) {
  main #ar .ar_sns_copy {
    font-size: 4.673vw;
    line-height: 2;
    margin-top: 7.009vw;
    margin-bottom: 4.673vw;
  }
  main #ar .ar_sns_copy span {
    font-size: 5.607vw;
  }
}
main #ar .ar_sns_img {
  text-align: center;
  margin-bottom: 3.125vw;
}
main #ar .ar_sns_img img {
  width: 45.052vw;
}
@media screen and (max-width: 1024px) {
  main #ar .ar_sns_img {
    margin-bottom: 10.514vw;
  }
  main #ar .ar_sns_img img {
    width: 81.308vw;
  }
}
main #ar .ar_entry_inner {
  max-width: 59.062vw;
  margin: 0 auto;
  margin-top: 2.604vw;
  margin-bottom: 5.729vw;
}
@media screen and (max-width: 1024px) {
  main #ar .ar_entry_inner {
    max-width: 88.785vw;
    margin-top: 7.009vw;
    margin-bottom: 16.355vw;
  }
}
main #ar .sns_step_ol {
  counter-reset: step;
  padding: 0;
}
main #ar .sns_step_li {
  position: relative;
  counter-increment: step;
  padding-left: 5.208vw;
  margin-bottom: 2.604vw;
  font-size: 0.938vw;
  font-weight: 500;
  line-height: 1.62;
}
main #ar .sns_step_li::before {
  content: "0" counter(step);
  font-family: "abolition", sans-serif;
  font-weight: 400;
  font-size: 1.875vw;
  letter-spacing: 0.05em;
  text-align: center;
  color: #ff7baa;
  font-style: italic;
  width: 3.281vw;
  height: 2.813vw;
  background-image: url(../images/osaka_special/ar_sns_frame.svg);
  background-repeat: no-repeat;
  background-size: contain;
  display: flex;
  justify-content: center;
  align-items: center;
  position: absolute;
  left: 0;
  top: 0;
  z-index: -1;
}
@media screen and (max-width: 1024px) {
  main #ar .sns_step_li {
    padding-left: 0;
    margin-bottom: 7.009vw;
    font-size: 3.738vw;
  }
  main #ar .sns_step_li::before {
    font-size: 4.673vw;
    width: 9.346vw;
    height: 7.944vw;
  }
}
main #ar .sns_step_li .step_title {
  font-size: 1.667vw;
  font-weight: 700;
  margin-bottom: 1.042vw;
  color: #ff7baa;
}
@media screen and (max-width: 1024px) {
  main #ar .sns_step_li .step_title {
    font-size: 4.673vw;
    margin-bottom: 3.505vw;
    padding-left: 11.682vw;
  }
}
@media screen and (max-width: 1024px) {
  main #ar .sns_step_li .step_description {
    width: 96%;
    margin: 0 auto;
  }
}
main #ar .sns_step_li .present_character_box {
  margin-top: 1.042vw;
  margin-bottom: 1.042vw;
}
main #ar .sns_step_li .present_character_box p {
  margin-bottom: 0.521vw;
}
main #ar .sns_step_li .present_character_box p.txt_character {
  font-size: 1.25vw;
  font-weight: 700;
}
@media screen and (max-width: 1024px) {
  main #ar .sns_step_li .present_character_box {
    margin-top: 7.009vw;
    margin-bottom: 4.673vw;
    position: relative;
  }
  main #ar .sns_step_li .present_character_box p.txt_character_title {
    font-size: 3.505vw;
    position: absolute;
    top: -3.037vw;
    left: 50%;
    transform: translateX(-50%);
    width: 100%;
    text-align: center;
  }
  main #ar .sns_step_li .present_character_box p.txt_character {
    font-size: 4.206vw;
    text-align: center;
    width: 85.28vw;
    height: 24.766vw;
    display: flex;
    justify-content: center;
    align-items: center;
    margin: 0 auto;
    margin-bottom: 4.673vw;
    position: relative;
    z-index: 0;
  }
  main #ar .sns_step_li .present_character_box p.txt_character::before {
    content: "";
    width: 100%;
    height: 100%;
    background-image: url(../images/osaka_special/sp/ar_sns_character_frame.webp);
    background-repeat: no-repeat;
    background-size: contain;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: -1;
  }
}
@media screen and (max-width: 1024px) {
  main #ar .sns_step_li .present_caution_ul {
    font-size: 3.271vw;
    font-weight: 500;
  }
}
main #ar .sns_step_li.-sns_step01 small {
  font-size: 56%;
}
@media screen and (max-width: 1024px) {
  main #ar .sns_step_li.-sns_step01 small {
    font-size: 70%;
  }
}
main #ar #ar_map {
  scroll-margin-top: 5vw;
}
main #ar .ar_map_box {
  opacity: 0;
  transform: translateY(5%);
  transition: all 0.6s;
}
main #ar .ar_map_box.active {
  opacity: 1;
  transform: translateY(0);
}
main #ar .ar_map_box .map_img {
  pointer-events: none;
  margin-top: 1.563vw;
  margin-bottom: 1.563vw;
}
@media screen and (max-width: 1024px) {
  main #ar .ar_map_box .map_img {
    margin-top: 4.673vw;
    margin-bottom: 7.009vw;
    pointer-events: all;
    position: relative;
  }
  main #ar .ar_map_box .map_img a {
    display: block;
  }
  main #ar .ar_map_box .map_img a::before {
    content: "";
    width: 10.981vw;
    height: 10.981vw;
    background-image: url(../images/osaka_special/sp/map_icon.webp);
    background-repeat: no-repeat;
    background-size: contain;
    position: absolute;
    top: -2.336vw;
    right: -0.701vw;
    z-index: 1;
    pointer-events: none;
  }
}
main #ar .ar_map_box p {
  font-size: 1.042vw;
  line-height: 1.6;
  text-align: center;
  margin-top: 1.563vw;
}
@media screen and (max-width: 1024px) {
  main #ar .ar_map_box p {
    font-size: 3.738vw;
    font-weight: 500;
    text-align: left;
    margin-top: 4.673vw;
  }
  main #ar .ar_map_box p.sp {
    font-size: 3.271vw;
  }
  main #ar .ar_map_box p.sp span {
    text-decoration: underline;
  }
}
main #goods {
  padding-top: 8.073vw;
  margin-bottom: 5.729vw;
}
main #goods::before {
  content: "";
  width: 73.75vw;
  height: 4.271vw;
  background-image: url(../images/osaka_special/line-yellow.webp);
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  top: -1.042vw;
  left: 50%;
  transform: translateX(-50%);
  animation: neon-random-blink 10s step-end infinite;
}
@media screen and (max-width: 1024px) {
  main #goods {
    padding-top: 19.86vw;
    margin-bottom: 19vw;
    overflow: hidden;
  }
  main #goods::before {
    width: 257vw;
    height: 15vw;
    top: -2.7vw;
  }
}
main #goods .goods_box {
  justify-content: space-between;
  align-items: center;
}
@media screen and (max-width: 1024px) {
  main #goods .goods_box {
    flex-direction: column;
    margin-top: 4.673vw;
  }
}
main #goods .goods_box-img {
  width: 32.5vw;
  position: relative;
  text-align: center;
  opacity: 0;
  transform: translateY(10%);
  transition: all 0.6s;
}
main #goods .goods_box-img.active {
  opacity: 1;
  transform: translateY(0%);
}
@media screen and (max-width: 1024px) {
  main #goods .goods_box-img {
    width: 100%;
    text-align: right;
  }
}
main #goods .goods_box-img .goods_img {
  width: 30.208vw;
}
@media screen and (max-width: 1024px) {
  main #goods .goods_box-img .goods_img {
    width: 82.71vw;
  }
}
main #goods .goods_box-img .goods_img_deco_li {
  position: absolute;
  will-change: opacity, filter;
  transform: translateZ(0);
}
main #goods .goods_box-img .goods_img_deco_li-doro {
  width: 12.2vw;
  height: 10.7vw;
  top: 3vw;
  left: 0;
  animation: 2s linear 1s infinite normal none running flicker;
}
main #goods .goods_box-img .goods_img_deco_li-doro span {
  content: "";
  display: inline-block;
  width: 100%;
  height: 4.948vw;
  background-image: url(../images/osaka_special/goods_deco-doro.webp);
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  left: 0;
  animation: doro-text-Move 1.5s ease-in-out infinite;
}
main #goods .goods_box-img .goods_img_deco_li-doro span:first-of-type {
  top: 0;
}
main #goods .goods_box-img .goods_img_deco_li-doro span:nth-of-type(2) {
  top: 50%;
  animation-delay: 0.5s;
  transform: translateY(-50%);
}
main #goods .goods_box-img .goods_img_deco_li-doro span:last-of-type {
  bottom: 0;
  animation-delay: 1s;
}
@media screen and (max-width: 1024px) {
  main #goods .goods_box-img .goods_img_deco_li-doro {
    width: 36.6vw;
    height: 31.4vw;
    top: 3vw;
  }
  main #goods .goods_box-img .goods_img_deco_li-doro span {
    width: 100%;
    height: 13.551vw;
  }
}
main #goods .goods_box-img .goods_img_deco_li-accent {
  width: 8.49vw;
  top: 8.333vw;
  right: 3.646vw;
  animation: 2s linear infinite normal none running flicker;
}
@media screen and (max-width: 1024px) {
  main #goods .goods_box-img .goods_img_deco_li-accent {
    width: 23.364vw;
    top: 21.028vw;
    right: 4.673vw;
  }
}
main #goods .goods_box-img .goods_img_deco_li-heart {
  width: 6.25vw;
  top: 19.271vw;
  right: 2.604vw;
  animation: 2s linear 1s infinite normal none running flicker;
}
@media screen and (max-width: 1024px) {
  main #goods .goods_box-img .goods_img_deco_li-heart {
    width: 17.056vw;
    top: 46.729vw;
    right: 0;
  }
}
main #goods .goods_box-img .goods_img_deco_li-takoyaki {
  width: 8.594vw;
  top: 16.146vw;
  left: 0;
  animation: 2s linear infinite normal none running flicker;
}
@media screen and (max-width: 1024px) {
  main #goods .goods_box-img .goods_img_deco_li-takoyaki {
    width: 23.364vw;
    top: 39.72vw;
  }
}
main #goods .goods_box-description {
  width: 35vw;
  padding-top: 2.604vw;
  opacity: 0;
  transform: translateY(10%);
  transition: all 0.6s;
}
main #goods .goods_box-description.active {
  opacity: 1;
  transform: translateY(0%);
}
main #goods .goods_box-description.en {
  width: 39vw;
}
main #goods .goods_box-description.en .goods_name p:last-of-type {
  font-size: 2.604vw;
  margin-left: 0;
}
main #goods .goods_box-description.en .goods_name p:last-of-type::before {
  display: none;
}
@media screen and (max-width: 1024px) {
  main #goods .goods_box-description.en {
    width: 100%;
  }
  main #goods .goods_box-description.en .goods_name p:last-of-type {
    font-size: 6.075vw;
  }
  main #goods .goods_box-description.en .goods_detail-price {
    line-height: 0.9;
  }
  main #goods .goods_box-description.en .goods_detail-price small {
    margin-left: 0;
  }
}
@media screen and (max-width: 1024px) {
  main #goods .goods_box-description {
    width: 100%;
    padding-top: 7.009vw;
  }
}
main #goods .goods_box-description .goods_name {
  margin-bottom: 1.042vw;
  align-items: flex-end;
  text-shadow: 0px 0px 10px rgb(149, 144, 0), 0px 0px 10px rgb(149, 144, 0);
}
main #goods .goods_box-description .goods_name p {
  font-weight: 800;
}
main #goods .goods_box-description .goods_name p:first-of-type {
  font-size: 2.604vw;
  line-height: 1.36;
}
main #goods .goods_box-description .goods_name p:last-of-type {
  font-size: 4.688vw;
  position: relative;
  margin-left: 0.521vw;
}
main #goods .goods_box-description .goods_name p:last-of-type::before {
  content: "";
  width: 7.344vw;
  height: 3.854vw;
  background-image: url(../images/osaka_special/goods_deco-accent-blue.webp);
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  top: -3.125vw;
  left: 50%;
  transform: translateX(-50%) translateZ(0);
  will-change: opacity, filter;
  animation: 2s linear infinite normal none running flicker;
}
@media screen and (max-width: 1024px) {
  main #goods .goods_box-description .goods_name {
    margin-bottom: 2.336vw;
  }
  main #goods .goods_box-description .goods_name p:first-of-type {
    font-size: 6.776vw;
  }
  main #goods .goods_box-description .goods_name p:last-of-type {
    font-size: 12.383vw;
    margin-left: 2.336vw;
  }
  main #goods .goods_box-description .goods_name p:last-of-type::before {
    width: 19.626vw;
    height: 10.28vw;
    top: -9.346vw;
  }
}
main #goods .goods_box-description .txt_box-pre {
  align-items: center;
  margin-bottom: 0.521vw;
}
@media screen and (max-width: 1024px) {
  main #goods .goods_box-description .txt_box-pre {
    margin-bottom: 2.336vw;
  }
}
main #goods .goods_box-description .txt_pre-sale {
  font-size: 1.25vw;
  text-align: center;
  color: #fff5a2;
  text-shadow: 0px 0px 6px rgb(149, 144, 0);
  border: 2px solid #fff5a2;
  border-radius: 0.313vw;
  background-color: #000000;
  width: 10vw;
  height: 2.865vw;
  display: flex;
  justify-content: center;
  align-items: center;
}
@media screen and (max-width: 1024px) {
  main #goods .goods_box-description .txt_pre-sale {
    font-size: 3.738vw;
    border-radius: 1.402vw;
    width: 29.907vw;
    height: 9.346vw;
  }
  main #goods .goods_box-description .txt_pre-sale.en {
    width: 22.43vw;
  }
}
main #goods .goods_box-description .txt_sale-restrictions {
  font-size: 1.042vw;
  color: #fff5a2;
  margin-left: 0.521vw;
}
@media screen and (max-width: 1024px) {
  main #goods .goods_box-description .txt_sale-restrictions {
    font-size: 4.206vw;
    margin-left: 2.336vw;
  }
}
main #goods .goods_box-description .goods_detail {
  justify-content: space-between;
  align-items: flex-end;
  margin-bottom: 1.042vw;
}
@media screen and (max-width: 1024px) {
  main #goods .goods_box-description .goods_detail {
    margin-bottom: 2.336vw;
  }
}
main #goods .goods_box-description .goods_detail-about {
  font-size: 1.042vw;
  line-height: 1.45;
  font-weight: 400;
}
@media screen and (max-width: 1024px) {
  main #goods .goods_box-description .goods_detail-about {
    font-size: 3.271vw;
    line-height: 1.64;
  }
}
main #goods .goods_box-description .goods_detail-price {
  font-size: 3.021vw;
}
main #goods .goods_box-description .goods_detail-price small {
  font-size: 55%;
  margin-left: 0.417vw;
}
@media screen and (max-width: 1024px) {
  main #goods .goods_box-description .goods_detail-price {
    font-size: 7.477vw;
  }
  main #goods .goods_box-description .goods_detail-price small {
    margin-left: 1.869vw;
  }
}
main #goods .goods_box-description .txt_sell {
  font-size: 1.875vw;
  font-weight: 900;
  margin-bottom: 1vw;
}
main #goods .goods_box-description .txt_sell span {
  font-size: 2.135vw;
  color: #fff5a2;
  text-shadow: 0px 0px 6px rgb(149, 144, 0);
}
main #goods .goods_box-description .txt_sell.en {
  font-size: 1.4vw;
}
main #goods .goods_box-description .txt_sell.en span {
  font-size: 1.7vw;
}
@media screen and (max-width: 1024px) {
  main #goods .goods_box-description .txt_sell {
    font-size: 4.907vw;
    margin-bottom: 2.336vw;
  }
  main #goods .goods_box-description .txt_sell span {
    font-size: 5.607vw;
  }
  main #goods .goods_box-description .txt_sell.en {
    font-size: 4.907vw;
  }
  main #goods .goods_box-description .txt_sell.en span {
    font-size: 5.607vw;
  }
}
main #goods .goods_box-description .txt_sale-start {
  font-size: 1.042vw;
  margin-bottom: 2.083vw;
}
main #goods .goods_box-description .txt_sale-start span {
  font-size: 2.135vw;
  padding: 0 0.521vw;
  color: #fff5a2;
  text-shadow: 0px 0px 6px rgb(149, 144, 0);
}
main #goods .goods_box-description .txt_sale-start.en span {
  font-size: 1.7vw;
}
@media screen and (max-width: 1024px) {
  main #goods .goods_box-description .txt_sale-start {
    font-size: 3.738vw;
    margin-bottom: 7.009vw;
  }
  main #goods .goods_box-description .txt_sale-start span {
    font-size: 5.607vw;
    padding: 0 1.168vw;
  }
  main #goods .goods_box-description .txt_sale-start.en span {
    font-size: 5.607vw;
  }
}
main #goods .goods_box-description .goods_link {
  padding-top: 2.135vw;
  position: relative;
  justify-content: space-between;
  align-items: center;
}
main #goods .goods_box-description .goods_link::before {
  content: "";
  width: 100%;
  height: 1px;
  background-color: #fff5a2;
  position: absolute;
  top: 0;
  left: 0;
  filter: drop-shadow(0px 0px 6px #fcf3a0);
}
@media screen and (max-width: 1024px) {
  main #goods .goods_box-description .goods_link {
    flex-direction: column;
    padding-top: 7.009vw;
  }
}
main #goods .goods_box-description .goods_link-caution {
  width: 60%;
  font-size: 1.042vw;
  line-height: 1.65;
}
main #goods .goods_box-description .goods_link-caution p:first-of-type {
  margin-bottom: 0.7vw;
}
@media screen and (max-width: 1024px) {
  main #goods .goods_box-description .goods_link-caution {
    width: 100%;
    font-size: 4.206vw;
    line-height: 1.77;
    margin-bottom: 4.673vw;
  }
  main #goods .goods_box-description .goods_link-caution p:first-of-type {
    margin-bottom: 1.5vw;
  }
}
main #info {
  padding-top: 8.073vw;
  margin-bottom: 5.729vw;
}
main #info::before {
  content: "";
  width: 73.75vw;
  height: 4.271vw;
  background-image: url(../images/osaka_special/line-red.webp);
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  top: -1.042vw;
  left: 50%;
  transform: translateX(-50%);
  animation: neon-random-blink 10s step-end infinite;
}
@media screen and (max-width: 1024px) {
  main #info {
    padding-top: 19.86vw;
    margin-bottom: 0;
    overflow: hidden;
  }
  main #info::before {
    width: 257vw;
    height: 15vw;
    top: -2.7vw;
  }
}
main #info .info_box {
  justify-content: space-between;
  margin-top: 1.563vw;
  margin-bottom: 3.125vw;
  opacity: 0;
  transform: translateY(10%);
  transition: all 0.6s;
}
main #info .info_box.active {
  opacity: 1;
  transform: translateY(0%);
}
@media screen and (max-width: 1024px) {
  main #info .info_box {
    flex-direction: column;
    max-width: 88.785vw;
    margin: 0 auto;
    margin-top: 4.673vw;
    margin-bottom: 7.009vw;
  }
}
@media screen and (max-width: 1024px) {
  main #info .info_box_left {
    max-width: 81.308vw;
    margin: 0 auto;
  }
}
main #info .info_txt_li span {
  font-size: 1.042vw;
  font-weight: 500;
  display: block;
  margin-bottom: 0.26vw;
}
@media screen and (max-width: 1024px) {
  main #info .info_txt_li span {
    font-size: 3.738vw;
    margin-bottom: 1.168vw;
  }
}
main #info .info_txt_li-venue {
  font-size: 1.563vw;
  font-weight: 900;
  margin-bottom: 1.042vw;
}
@media screen and (max-width: 1024px) {
  main #info .info_txt_li-venue {
    font-size: 4.673vw;
    margin-bottom: 4.673vw;
  }
}
main #info .info_txt_li-date {
  font-size: 1.406vw;
  margin-bottom: 1.042vw;
}
@media screen and (max-width: 1024px) {
  main #info .info_txt_li-date {
    font-size: 4.206vw;
    margin-bottom: 4.673vw;
  }
}
main #info .info_txt_li-add, main #info .info_txt_li-time, main #info .info_txt_li-time_stamp_rally {
  font-size: 1.25vw;
  margin-bottom: 0.26vw;
}
main #info .info_txt_li-add small, main #info .info_txt_li-time small, main #info .info_txt_li-time_stamp_rally small {
  font-size: 67%;
}
@media screen and (max-width: 1024px) {
  main #info .info_txt_li-add, main #info .info_txt_li-time, main #info .info_txt_li-time_stamp_rally {
    font-size: 3.738vw;
    margin-bottom: 1.168vw;
  }
  main #info .info_txt_li-add small, main #info .info_txt_li-time small, main #info .info_txt_li-time_stamp_rally small {
    font-size: 88%;
  }
}
main #info .info_txt_li-kome {
  font-size: 1.042vw;
  color: #ed404a;
}
@media screen and (max-width: 1024px) {
  main #info .info_txt_li-kome {
    font-size: 3.738vw;
    margin-bottom: 4.673vw;
  }
}
main #info .info_box_right {
  position: relative;
  width: 100%;
  height: 0;
  max-width: 35.365vw;
  padding-top: 33%;
}
@media screen and (max-width: 1024px) {
  main #info .info_box_right {
    max-width: 100%;
    padding-top: 63%;
    margin-bottom: 7.009vw;
  }
}
main #info .info_box_right iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
main #info .access_box {
  position: relative;
  padding: 3.125vw 5.833vw;
  margin-bottom: 3.125vw;
  border: 3px solid #ed404a;
  background-color: #000000;
  border-radius: 1.042vw;
  box-shadow: 0px 0px 10px 0px rgb(237, 64, 74), 0px 0px 10px 0px rgb(237, 64, 74);
  opacity: 0;
  transform: translateY(10%);
  transition: all 0.6s;
}
main #info .access_box.active {
  opacity: 1;
  transform: translateY(0%);
}
main #info .access_box.en {
  padding: 6.042vw 2.969vw;
}
main #info .access_box.en img {
  margin-top: 2.604vw;
}
@media screen and (max-width: 1024px) {
  main #info .access_box.en {
    padding: 7.009vw 5.607vw 9.346vw;
  }
  main #info .access_box.en img {
    margin-top: 2.336vw;
  }
}
@media screen and (max-width: 1024px) {
  main #info .access_box {
    padding: 7.009vw 5.607vw 9.346vw;
    margin-bottom: 14.019vw;
    border: 2px solid #ed404a;
    border-radius: 2.336vw;
    box-shadow: 0px 0px 5px 0px rgb(237, 64, 74), 0px 0px 5px 0px rgb(237, 64, 74);
  }
}
main #share {
  text-align: center;
  margin-bottom: 6.25vw;
}
main #share p {
  font-size: 1.563vw;
  margin-top: 1.042vw;
  margin-bottom: 1.823vw;
}
@media screen and (max-width: 1024px) {
  main #share {
    margin-bottom: 14.019vw;
  }
  main #share p {
    font-size: 4.673vw;
    margin-top: 2.336vw;
    margin-bottom: 5.841vw;
  }
}
main .footer_back {
  position: relative;
  margin-bottom: -1.562vw;
}
@media screen and (max-width: 1024px) {
  main .footer_back {
    margin-bottom: -2.336vw;
  }
}
main .footer_back .footer_character_ul {
  align-items: flex-end;
  position: absolute;
  bottom: 3.125vw;
  left: 50%;
  transform: translateX(-50%);
  z-index: 1;
}
@media screen and (max-width: 1024px) {
  main .footer_back .footer_character_ul {
    bottom: 5.841vw;
  }
}
main .footer_back .footer_character_li-01 {
  width: 11.979vw;
}
@media screen and (max-width: 1024px) {
  main .footer_back .footer_character_li-01 {
    width: 18.925vw;
  }
}
main .footer_back .footer_character_li-02 {
  width: 13.125vw;
}
@media screen and (max-width: 1024px) {
  main .footer_back .footer_character_li-02 {
    width: 20.561vw;
  }
}
main .footer_back .footer_character_li-03 {
  width: 10.208vw;
}
@media screen and (max-width: 1024px) {
  main .footer_back .footer_character_li-03 {
    width: 16.121vw;
  }
}
main .footer_back .footer_character_li-04 {
  width: 9.427vw;
}
@media screen and (max-width: 1024px) {
  main .footer_back .footer_character_li-04 {
    width: 14.72vw;
  }
}
main .footer_back .footer_character_li-05 {
  width: 14.271vw;
}
@media screen and (max-width: 1024px) {
  main .footer_back .footer_character_li-05 {
    width: 22.43vw;
  }
}
main .footer_back .footer_character_li.is-jumping {
  animation: pyonpyon 0.8s ease-out; /* 0.8秒で2回跳ねる */
}
main .footer_back .scroll-video-container {
  width: 100%;
  position: relative;
  overflow: hidden;
}
main .footer_back .scroll-video-container video {
  width: 100%;
  height: auto;
  display: block;
}
@media screen and (max-width: 1024px) {
  main .footer_back .scroll-video-container {
    overflow-x: auto;
    overflow-y: hidden;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
    -ms-overflow-style: none;
  }
  main .footer_back .scroll-video-container::-webkit-scrollbar {
    display: none;
  }
  main .footer_back .scroll-video-container video {
    width: 300%;
    max-width: none;
  }
}
main .bg_deco_left::before {
  width: 2.604vw;
  height: 25.208vw;
  background-image: url(../images/osaka_special/point_deco_left.webp);
}
main .bg_deco_right::before {
  width: 4.167vw;
  height: 19.792vw;
  background-image: url(../images/osaka_special/point_deco_right.webp);
}

.floating {
  position: fixed;
  z-index: 88;
}
.floating a {
  display: block;
}
.floating-areamap {
  width: 9.896vw;
  bottom: 11.458vw;
  right: 1.5vw;
}
@media screen and (max-width: 1024px) {
  .floating-areamap {
    width: 26.168vw;
    bottom: 23.364vw;
    right: 1.5vw;
  }
}
.floating-osaka {
  width: 8.333vw;
  bottom: 2.083vw;
  left: 3.6vw;
}
.floating-osaka .close_btn {
  width: 1.094vw;
  position: absolute;
  top: -0.781vw;
  right: -0.521vw;
  cursor: pointer;
}
@media screen and (max-width: 1024px) {
  .floating-osaka {
    width: 25.935vw;
    bottom: 4.673vw;
    left: 2vw;
  }
  .floating-osaka .close_btn {
    width: 4.907vw;
    top: -3.505vw;
    right: -2.336vw;
  }
}

.modal_box {
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.5);
  position: fixed;
  top: 0;
  right: 0;
  z-index: 99;
}
.modal_box .modal_inner {
  width: 90%;
  max-width: 48.958vw;
  height: 36.458vw;
  background-color: #000000;
  border: 3px solid #7aeaff;
  border-radius: 1.042vw;
  box-shadow: 0px 0px 10px 0px rgb(122, 234, 255), 0px 0px 10px 0px rgb(122, 234, 255);
  margin: 0 auto;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  display: flex;
  justify-content: center;
  align-items: center;
}
.modal_box .modal_inner_box {
  text-align: center;
}
.modal_box .modal_inner_box .qr_box {
  width: 19.167vw;
  margin: 0 auto;
  border: 0.313vw solid #33cfff;
}
.modal_box .modal_inner_box p {
  font-size: 1.667vw;
  line-height: 1.62;
  color: #efefef;
  margin-top: 1.719vw;
}
.modal_box .close_btn {
  width: 3.333vw;
  height: 3.333vw;
  background-image: url(../images/osaka_special/btn_close-blue.svg);
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  top: 2vw;
  right: 2vw;
  cursor: pointer;
}
@media screen and (max-width: 1024px) {
  .modal_box-map {
    overflow: hidden;
  }
  .modal_box-map .modal_inner {
    width: 100%;
    max-width: none;
    height: auto;
    background: none;
    border: none;
    border-radius: 0;
    box-shadow: none;
  }
  .modal_box-map .modal_inner_contents {
    position: relative;
  }
  .modal_box-map .modal_inner_box {
    overflow-x: scroll;
  }
  .modal_box-map .modal_map {
    width: 190%;
  }
  .modal_box-map .scroll_icon {
    width: 30.841vw;
    height: 30.841vw;
    background-image: url(../images/osaka_special/sp/map_scroll.webp);
    background-repeat: no-repeat;
    background-size: contain;
    position: absolute;
    bottom: -10vw;
    right: 17vw;
    z-index: 10;
    pointer-events: none;
    transform: translateX(0);
    opacity: 0;
  }
  .modal_box-map .scroll_icon.is-animating {
    animation: slideRight 1s ease-in-out 2 forwards;
  }
  .modal_box-map .scroll_icon.is-fading {
    animation: fadeOut 0.5s ease-out forwards;
  }
  .modal_box-map .close_btn {
    width: 7.477vw;
    height: 7.477vw;
    top: auto;
    bottom: -10vw;
    left: 50%;
    right: auto;
    transform: translateX(-50%);
  }
}/*# sourceMappingURL=osaka_special-style.css.map */