@charset "UTF-8";
/*******************************************************************/
/*******************************************************************/
/*******************************************************************/
/*******************************************************************/
/*******************************************************************/
/*******************************************************************/
#layer_playguide {
  z-index: 1001;
}

#layer_privacypolicy {
  z-index: 1001;
}

#layer_youtube-player {
  z-index: 1001;
}

#layer_notes {
  z-index: 1001;
}

#blackscreen {
  z-index: 1000;
}

#layer_loading {
  z-index: 80;
}

#layer_error {
  z-index: 60;
}

#layer_menu_help {
  z-index: 41;
}

#layer_title {
  z-index: 30;
}

#layer_game {
  z-index: 10;
}

#bg_character_guide {
  z-index: 11;
}

#box_character_guide {
  z-index: 12;
}

#layer_camera {
  z-index: 20;
}

#effect_found {
  z-index: 4;
}

#display_character {
  z-index: 3;
}

.focus_guide {
  z-index: 2;
}

.box_focus {
  z-index: 2;
}

#view_camera {
  z-index: 1;
}

#window_select_prize {
  z-index: 10001;
}

#layer_download {
  z-index: 10002;
}

/*******************************************************************/
/*******************************************************************/
#layer_loading {
  display: none;
}

#layer_error {
  display: none;
}

#layer_title {
  display: none;
}

#layer_game {
  display: none;
}

#effect_clear {
  display: none;
}

.box_effect_get {
  display: none;
}

#bingo_sound_play {
  display: none;
}

#layer_camera {
  display: none;
}

#layer_playguide {
  display: none;
}

#layer_youtube-player {
  display: none;
}

#blackscreen {
  display: none;
}

#display_character {
  display: none;
}

#layer_menu_help {
  display: none;
}

.area_bingo_card_1 {
  display: none;
}

.area_bingo_card_2 {
  display: none;
}

.area_bingo_card_3 {
  display: none;
}

.area_bingo_card_4 {
  display: none;
}

.area_bingo_card_5 {
  display: none;
}

.area_bingo_card_6 {
  display: none;
}

.area_bingo_card_7 {
  display: none;
}

.area_bingo_card_8 {
  display: none;
}

.area_bingo_card_9 {
  display: none;
}

/*******************************************************************/
/*******************************************************************/
html {
  font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", YuGothic, "ヒラギノ角ゴ ProN W3", Hiragino Kaku Gothic ProN, Arial, "メイリオ", Meiryo, sans-serif;
}

body {
  background-color: #000000;
  color: #ffffff;
  padding: 0px;
  font-size: 4.375vw;
}

p {
  margin: 0;
  padding: 0;
}

/**********************************************************************************************************/
/**********************************************************************************************************/
img {
  -moz-user-select: none;
  /* Firefox */
  -ms-user-select: none;
  /* Internet Explorer */
  -khtml-user-select: none;
  /* KHTML browsers (e.g. Konqueror) */
  -webkit-user-select: none;
  /* Chrome, Safari, and Opera */
  -webkit-touch-callout: none;
  /* Disable Android and iOS callouts*/
  user-select: none;
}

.touch_btn:hover {
  animation: scale-anime 0.5s ease-in-out 1 alternate;
}

.btn_bottom {
  position: absolute;
  left: 50%;
  bottom: 36px;
  width: 50%;
  margin-left: -25%;
  padding: 12px 0;
  background-color: #ff4f4a;
  text-align: center;
  font-size: 5.625vw;
  font-weight: bold;
  border-radius: 10px;
  box-shadow: 0 6px 0 0 rgba(0, 0, 0, 0.6);
  color: #ffffff;
}

.btn_normal {
  position: absolute;
  left: 50%;
  margin-left: -25%;
  width: 50%;
  padding: 12px 0;
  background-color: #ff4f4a;
  text-align: center;
  font-size: 5.625vw;
  font-weight: bold;
  border-radius: 10px;
}

#blackscreen {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.75);
}

.font_s {
  font-size: 3.125vw;
}

.btn_color_pink {
  background-color: #ff4f4a;
}

/**********************************************************************************************************/
/**********************************************************************************************************/
#layer_error {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: black;
}

.message_error {
  position: absolute;
  top: 10%;
  width: 100%;
}
.message_error p {
  margin-top: 14%;
  color: #ffffff;
  font-size: 6.25vw;
  text-align: center;
  padding: 0 5%;
}

.icon_error {
  background-image: url("https://smarally.hyper-cdn.jp/hokkaido2025/img/ui/icon_warning.png");
  background-repeat: no-repeat;
  background-size: 100% 100%;
  width: 12%;
  height: 0;
  padding-top: 12%;
  display: block;
  position: absolute;
  left: 50%;
  margin-left: -6%;
}

/**********************************************************************************************************/
/**********************************************************************************************************/
#layer_loading {
  position: fixed;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.8);
}

.loader {
  color: #ffffff;
  font-size: 10px;
  margin: 0 auto;
  width: 1em;
  height: 1em;
  border-radius: 50%;
  position: relative;
  text-indent: -9999em;
  -webkit-animation: load4 1.3s infinite linear;
  animation: load4 1.3s infinite linear;
  -webkit-transform: translateZ(0);
  -ms-transform: translateZ(0);
  transform: translateZ(0);
  position: absolute;
  top: 50%;
  left: 50%;
  margin-top: -5px;
  margin-left: -5px;
}

@-webkit-keyframes load4 {
  0%, 100% {
    box-shadow: 0 -3em 0 0.2em, 2em -2em 0 0em, 3em 0 0 -1em, 2em 2em 0 -1em, 0 3em 0 -1em, -2em 2em 0 -1em, -3em 0 0 -1em, -2em -2em 0 0;
  }
  12.5% {
    box-shadow: 0 -3em 0 0, 2em -2em 0 0.2em, 3em 0 0 0, 2em 2em 0 -1em, 0 3em 0 -1em, -2em 2em 0 -1em, -3em 0 0 -1em, -2em -2em 0 -1em;
  }
  25% {
    box-shadow: 0 -3em 0 -0.5em, 2em -2em 0 0, 3em 0 0 0.2em, 2em 2em 0 0, 0 3em 0 -1em, -2em 2em 0 -1em, -3em 0 0 -1em, -2em -2em 0 -1em;
  }
  37.5% {
    box-shadow: 0 -3em 0 -1em, 2em -2em 0 -1em, 3em 0em 0 0, 2em 2em 0 0.2em, 0 3em 0 0em, -2em 2em 0 -1em, -3em 0em 0 -1em, -2em -2em 0 -1em;
  }
  50% {
    box-shadow: 0 -3em 0 -1em, 2em -2em 0 -1em, 3em 0 0 -1em, 2em 2em 0 0em, 0 3em 0 0.2em, -2em 2em 0 0, -3em 0em 0 -1em, -2em -2em 0 -1em;
  }
  62.5% {
    box-shadow: 0 -3em 0 -1em, 2em -2em 0 -1em, 3em 0 0 -1em, 2em 2em 0 -1em, 0 3em 0 0, -2em 2em 0 0.2em, -3em 0 0 0, -2em -2em 0 -1em;
  }
  75% {
    box-shadow: 0em -3em 0 -1em, 2em -2em 0 -1em, 3em 0em 0 -1em, 2em 2em 0 -1em, 0 3em 0 -1em, -2em 2em 0 0, -3em 0em 0 0.2em, -2em -2em 0 0;
  }
  87.5% {
    box-shadow: 0em -3em 0 0, 2em -2em 0 -1em, 3em 0 0 -1em, 2em 2em 0 -1em, 0 3em 0 -1em, -2em 2em 0 0, -3em 0em 0 0, -2em -2em 0 0.2em;
  }
}
@keyframes load4 {
  0%, 100% {
    box-shadow: 0 -3em 0 0.2em, 2em -2em 0 0em, 3em 0 0 -1em, 2em 2em 0 -1em, 0 3em 0 -1em, -2em 2em 0 -1em, -3em 0 0 -1em, -2em -2em 0 0;
  }
  12.5% {
    box-shadow: 0 -3em 0 0, 2em -2em 0 0.2em, 3em 0 0 0, 2em 2em 0 -1em, 0 3em 0 -1em, -2em 2em 0 -1em, -3em 0 0 -1em, -2em -2em 0 -1em;
  }
  25% {
    box-shadow: 0 -3em 0 -0.5em, 2em -2em 0 0, 3em 0 0 0.2em, 2em 2em 0 0, 0 3em 0 -1em, -2em 2em 0 -1em, -3em 0 0 -1em, -2em -2em 0 -1em;
  }
  37.5% {
    box-shadow: 0 -3em 0 -1em, 2em -2em 0 -1em, 3em 0em 0 0, 2em 2em 0 0.2em, 0 3em 0 0em, -2em 2em 0 -1em, -3em 0em 0 -1em, -2em -2em 0 -1em;
  }
  50% {
    box-shadow: 0 -3em 0 -1em, 2em -2em 0 -1em, 3em 0 0 -1em, 2em 2em 0 0em, 0 3em 0 0.2em, -2em 2em 0 0, -3em 0em 0 -1em, -2em -2em 0 -1em;
  }
  62.5% {
    box-shadow: 0 -3em 0 -1em, 2em -2em 0 -1em, 3em 0 0 -1em, 2em 2em 0 -1em, 0 3em 0 0, -2em 2em 0 0.2em, -3em 0 0 0, -2em -2em 0 -1em;
  }
  75% {
    box-shadow: 0em -3em 0 -1em, 2em -2em 0 -1em, 3em 0em 0 -1em, 2em 2em 0 -1em, 0 3em 0 -1em, -2em 2em 0 0, -3em 0em 0 0.2em, -2em -2em 0 0;
  }
  87.5% {
    box-shadow: 0em -3em 0 0, 2em -2em 0 -1em, 3em 0 0 -1em, 2em 2em 0 -1em, 0 3em 0 -1em, -2em 2em 0 0, -3em 0em 0 0, -2em -2em 0 0.2em;
  }
}
/**********************************************************************************************************/
/**********************************************************************************************************/
#layer_title {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-image: url("https://smarally.hyper-cdn.jp/hokkaido2025/img/game/bg_top.png");
  background-repeat: no-repeat;
  background-size: 100% auto;
  background-position: left 0 bottom 0;
}

.title_top {
  position: fixed;
  top: 2%;
  left: 5%;
  width: 90%;
  height: 0;
  padding-top: 90%;
  background-image: url("https://smarally.hyper-cdn.jp/hokkaido2025/img/game/top.png");
  background-repeat: no-repeat;
  background-size: 100% auto;
  background-position: left 0 bottom 0;
}

.title_GameName {
  position: absolute;
  top: 5%;
  left: 0;
  width: 100%;
  height: 0;
  padding-top: 28.12%;
}
.title_GameName img {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.title_GameEnd {
  position: absolute;
  bottom: 10px;
  left: 10%;
  width: 80%;
  height: 0;
  padding-top: 48%;
  background-image: url("https://smarally.hyper-cdn.jp/hokkaido2025/img/game/box_holdingperiod.png");
  background-repeat: no-repeat;
  background-size: 100% 100%;
  display: none;
  z-index: 10;
}

.window_message {
  position: absolute;
  top: 20%;
  left: 50%;
  margin-left: -45%;
  width: 86%;
  padding: 2%;
  background-color: #ffffff;
  border: #e71f19 solid 8px;
  border-radius: 10px;
  color: #e71f19;
  text-align: center;
}

.title_window_messsage {
  margin: 0 0 24px 10%;
  width: 80%;
  color: #ffffff;
  background-color: #e71f19;
  text-align: center;
  font-size: 6.25vw;
  padding: 8px 0;
}

.copyright {
  position: absolute;
  width: 100%;
  text-align: center;
  bottom: 0px;
  left: 0;
  color: #fff;
  font-size: 10pt;
}

/**********************************************************************************************************/
/**********************************************************************************************************/
.title_img_main {
  width: 100%;
}
.title_img_main img {
  width: 100%;
}

.box_text_center {
  width: 90%;
  margin: 24px auto 0 auto;
  text-align: center;
}

.text_summary {
  font-size: 6vw;
  font-weight: bold;
  color: #000000;
}
.text_summary span {
  font-size: 4vw;
  font-weight: normal;
  display: block;
}

.text_sub_note {
  color: #000000;
  font-size: 3.5vw;
  width: 90%;
  margin: 12px auto 0 auto;
  text-align: left;
  padding-left: 1em;
  text-indent: -1em;
}

.title_text_top {
  width: 100%;
  font-size: 8vw;
  font-weight: bold;
  text-align: center;
  color: #000000;
}

.text_sub {
  font-size: 4vw;
}

.box_text_sub {
  padding-left: 1em;
  text-indent: -1em;
  font-size: 10px;
  text-align: left;
  margin-left: 5%;
  color: #000000;
  width: 90%;
}
.box_text_sub ul {
  width: 80%;
  list-style-type: none;
  font-size: 4vw;
  color: #ff0000;
  margin-left: -5%;
  margin-top: -20px;
}
.box_text_sub li {
  margin-bottom: 8px;
  font-weight: bold;
}

.img_present {
  width: 90%;
  margin: 4px auto;
}
.img_present img {
  width: 100%;
}

.text_top_main {
  color: #000000;
  line-height: 1.8;
  font-size: 4.5vw;
}

.box_img_prize {
  width: 100%;
  margin: 12px auto;
}
.box_img_prize img {
  width: 100%;
}

.btn_start {
  position: fixed;
  left: 12.5%;
  bottom: 28px;
  width: 75%;
  height: 0;
  padding-top: 15.6%;
  margin: 30px auto;
  background-image: url("https://smarally.hyper-cdn.jp/hokkaido2025/img/ui/btn_start.png");
  background-repeat: no-repeat;
  background-size: 100% 100%;
  background-position: 0 0;
}

.btn_map {
  width: 75%;
  height: 0;
  padding-top: 15%;
  margin: 40px auto;
  border: 4px solid white;
  border-radius: 10px;
  background-image: linear-gradient(0deg, #621105 0%, #ab1711 35%, #f31d1d 100%);
  box-shadow: inset 0px 3px 0px 0px rgba(176, 171, 150, 0.35);
  position: relative;
}
.btn_map p {
  font-family: "Anton", sans-serif;
  font-size: 5vw;
  text-align: center;
  position: absolute;
  top: 24%;
  left: 0;
  width: 100%;
  height: 100%;
  font-weight: bold;
}
.btn_map a {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: block;
}

.box_text_rink {
  text-align: center;
  font-size: 6vw;
  font-weight: bold;
  margin-bottom: 40px;
}

.dotted_line {
  width: 100%;
  border-top: 1px dotted #000000;
  margin: 24px 0;
}

.sponsor {
  width: 100%;
  max-width: 640px;
}
.sponsor img {
  width: 100%;
}

.box_text_sub_start {
  position: fixed;
  bottom: 4px;
  left: calc(5% - 2px);
  font-size: 10px;
  width: 90%;
  color: #333;
  background-color: rgba(255, 255, 255, 0.8);
  padding: 4px;
}
.box_text_sub_start ul {
  list-style-type: none;
  padding-left: 0;
  margin: 0;
}
.box_text_sub_start li {
  padding-left: 1em;
  text-indent: -1em;
}

/**********************************************************************************************************/
/**********************************************************************************************************/
#layer_game {
  position: fixed;
  width: 100%;
  height: 100%;
  background-image: url("https://smarally.hyper-cdn.jp/hokkaido2025/img/game/bg_main.png");
  background-repeat: no-repeat;
  background-size: 100% auto;
  background-position: center bottom 0;
}

.title_game {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 0;
  padding-top: 20%;
  margin: 0;
  background-image: url("https://smarally.hyper-cdn.jp/hokkaido2025/img/game/title_stampledger.png");
  background-repeat: no-repeat;
  background-size: 100% 100%;
  background-position: 0 0;
}

#bingo_game {
  max-height: 75%;
  overflow: scroll;
  -webkit-overflow-scrolling: touch;
}

.area_bingo_card_1 {
  position: absolute;
  left: 1%;
  top: 14%;
  width: 98%;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  gap: 2%;
}
.area_bingo_card_1 .box_square {
  position: relative;
  width: 100%;
  height: 0;
  padding-top: 100%;
  background-repeat: no-repeat;
  background-size: 100% 100%;
  background-position: 0 0;
}

.area_bingo_card_2 {
  position: absolute;
  left: 1%;
  top: 14%;
  width: 98%;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.area_bingo_card_2 .box_square {
  position: relative;
  width: 48%;
  height: 0;
  padding-top: 46.56%;
  background-repeat: no-repeat;
  background-size: 100% 100%;
  background-position: 0 0;
}

.area_bingo_card_3 {
  position: absolute;
  left: 1%;
  top: 14%;
  width: 98%;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}
.area_bingo_card_3 .box_square {
  position: relative;
  width: 48%;
  height: 0;
  padding-top: 46.56%;
  background-repeat: no-repeat;
  background-size: 100% 100%;
  background-position: 0 0;
  margin: 1%;
}

.area_bingo_card_4 {
  position: absolute;
  left: 1%;
  top: 14%;
  width: 98%;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.area_bingo_card_4 .box_square {
  position: relative;
  width: 48%;
  height: 0;
  padding-top: 46.56%;
  background-repeat: no-repeat;
  background-size: 100% 100%;
  background-position: 0 0;
}

.area_bingo_card_5 {
  position: absolute;
  left: 1%;
  top: 14%;
  width: 98%;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}
.area_bingo_card_5 .box_square {
  position: relative;
  width: 32%;
  height: 0;
  padding-top: 31%;
  background-repeat: no-repeat;
  background-size: 100% 100%;
  background-position: 0 0;
  margin: 0.5%;
}

.area_bingo_card_6 {
  position: absolute;
  left: 1%;
  top: 14%;
  width: 98%;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}
.area_bingo_card_6 .box_square {
  position: relative;
  width: 36%;
  height: 0;
  padding-top: 35%;
  background-repeat: no-repeat;
  background-size: 100% 100%;
  background-position: 0 0;
  margin: 2px 12px;
}

.area_bingo_card_7 {
  position: absolute;
  left: 1%;
  top: 14%;
  width: 98%;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}
.area_bingo_card_7 .box_square {
  position: relative;
  width: 32%;
  height: 0;
  padding-top: 31%;
  background-repeat: no-repeat;
  background-size: 100% 100%;
  background-position: 0 0;
  margin: 0.5%;
}

.area_bingo_card_8 {
  position: absolute;
  left: 1%;
  top: 14%;
  width: 98%;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}
.area_bingo_card_8 .box_square {
  position: relative;
  width: 32%;
  height: 0;
  padding-top: 31%;
  background-repeat: no-repeat;
  background-size: 100% 100%;
  background-position: 0 0;
  margin: 0.5%;
}

.area_bingo_card_9 {
  position: absolute;
  left: 1%;
  top: 14%;
  width: 98%;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.area_bingo_card_9 .box_square {
  position: relative;
  width: 32%;
  height: 0;
  padding-top: 31%;
  background-repeat: no-repeat;
  background-size: 100% 100%;
  background-position: 0 0;
}

.area_bingo_card_10 {
  position: absolute;
  left: 1%;
  top: 14%;
  width: 98%;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}
.area_bingo_card_10 .box_square {
  position: relative;
  width: 32%;
  height: 0;
  padding-top: 31%;
  background-repeat: no-repeat;
  background-size: 100% 100%;
  background-position: 0 0;
  margin: 0.5%;
}

.area_bingo_card_11 {
  position: absolute;
  left: 1%;
  top: 14%;
  width: 98%;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}
.area_bingo_card_11 .box_square {
  position: relative;
  width: 32%;
  height: 0;
  padding-top: 31%;
  background-repeat: no-repeat;
  background-size: 100% 100%;
  background-position: 0 0;
  margin: 0.5%;
}

.area_bingo_card_12 {
  position: absolute;
  left: 1%;
  top: 14%;
  width: 98%;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  gap: 2%;
}
.area_bingo_card_12 .box_square {
  position: relative;
  width: 32%;
  height: 0;
  padding-top: 31%;
  background-repeat: no-repeat;
  background-size: 100% 100%;
  background-position: 0 0;
  margin-bottom: 2%;
}

.area_bingo_card_13 {
  position: absolute;
  left: 1%;
  top: 14%;
  width: 98%;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}
.area_bingo_card_13 .box_square {
  position: relative;
  width: 32%;
  height: 0;
  padding-top: 31%;
  background-repeat: no-repeat;
  background-size: 100% 100%;
  background-position: 0 0;
  margin: 0.5%;
}

.area_bingo_card_14 {
  position: absolute;
  left: 1%;
  top: 14%;
  width: 98%;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}
.area_bingo_card_14 .box_square {
  position: relative;
  width: 32%;
  height: 0;
  padding-top: 31%;
  background-repeat: no-repeat;
  background-size: 100% 100%;
  background-position: 0 0;
  margin: 0.5%;
}

.area_bingo_card_15 {
  position: absolute;
  left: 1%;
  top: 14%;
  width: 98%;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.area_bingo_card_15 .box_square {
  position: relative;
  width: 32%;
  height: 0;
  padding-top: 31%;
  background-repeat: no-repeat;
  background-size: 100% 100%;
  background-position: 0 0;
}

.area_bingo_card_20 {
  position: absolute;
  left: 1%;
  top: 14%;
  width: 98%;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  gap: 2%;
}
.area_bingo_card_20 .box_square {
  position: relative;
  width: 32%;
  height: 0;
  padding-top: 31%;
  background-repeat: no-repeat;
  background-size: 100% 100%;
  background-position: 0 0;
}

.stamp_1_off {
  background-image: url("https://smarally.hyper-cdn.jp/hokkaido2025/img/game/stamp_1_off.png");
}

.stamp_2_off {
  background-image: url("https://smarally.hyper-cdn.jp/hokkaido2025/img/game/stamp_2_off.png");
}

.stamp_3_off {
  background-image: url("https://smarally.hyper-cdn.jp/hokkaido2025/img/game/stamp_3_off.png");
}

.stamp_4_off {
  background-image: url("https://smarally.hyper-cdn.jp/hokkaido2025/img/game/stamp_4_off.png");
}

.stamp_5_off {
  background-image: url("https://smarally.hyper-cdn.jp/hokkaido2025/img/game/stamp_5_off.png");
}

.stamp_6_off {
  background-image: url("https://smarally.hyper-cdn.jp/hokkaido2025/img/game/stamp_6_off.png");
}

.stamp_7_off {
  background-image: url("https://smarally.hyper-cdn.jp/hokkaido2025/img/game/stamp_7_off.png");
}

.stamp_8_off {
  background-image: url("https://smarally.hyper-cdn.jp/hokkaido2025/img/game/stamp_8_off.png");
}

.stamp_9_off {
  background-image: url("https://smarally.hyper-cdn.jp/hokkaido2025/img/game/stamp_9_off.png");
}

.stamp_10_off {
  background-image: url("https://smarally.hyper-cdn.jp/hokkaido2025/img/game/stamp_10_off.png");
}

.stamp_11_off {
  background-image: url("https://smarally.hyper-cdn.jp/hokkaido2025/img/game/stamp_11_off.png");
}

.stamp_12_off {
  background-image: url("https://smarally.hyper-cdn.jp/hokkaido2025/img/game/stamp_12_off.png");
}

.stamp_13_off {
  background-image: url("https://smarally.hyper-cdn.jp/hokkaido2025/img/game/stamp_13_off.png");
}

.stamp_14_off {
  background-image: url("https://smarally.hyper-cdn.jp/hokkaido2025/img/game/stamp_14_off.png");
}

.stamp_15_off {
  background-image: url("https://smarally.hyper-cdn.jp/hokkaido2025/img/game/stamp_15_off.png");
}

.stamp_16_off {
  background-image: url("https://smarally.hyper-cdn.jp/hokkaido2025/img/game/stamp_16_off.png");
}

.stamp_17_off {
  background-image: url("https://smarally.hyper-cdn.jp/hokkaido2025/img/game/stamp_17_off.png");
}

.stamp_18_off {
  background-image: url("https://smarally.hyper-cdn.jp/hokkaido2025/img/game/stamp_18_off.png");
}

.stamp_19_off {
  background-image: url("https://smarally.hyper-cdn.jp/hokkaido2025/img/game/stamp_19_off.png");
}

.stamp_20_off {
  background-image: url("https://smarally.hyper-cdn.jp/hokkaido2025/img/game/stamp_20_off.png");
}

.stamp_1_on {
  background-image: url("https://smarally.hyper-cdn.jp/hokkaido2025/img/game/stamp_1_on.png");
}

.stamp_2_on {
  background-image: url("https://smarally.hyper-cdn.jp/hokkaido2025/img/game/stamp_2_on.png");
}

.stamp_3_on {
  background-image: url("https://smarally.hyper-cdn.jp/hokkaido2025/img/game/stamp_3_on.png");
}

.stamp_4_on {
  background-image: url("https://smarally.hyper-cdn.jp/hokkaido2025/img/game/stamp_4_on.png");
}

.stamp_5_on {
  background-image: url("https://smarally.hyper-cdn.jp/hokkaido2025/img/game/stamp_5_on.png");
}

.stamp_6_on {
  background-image: url("https://smarally.hyper-cdn.jp/hokkaido2025/img/game/stamp_6_on.png");
}

.stamp_7_on {
  background-image: url("https://smarally.hyper-cdn.jp/hokkaido2025/img/game/stamp_7_on.png");
}

.stamp_8_on {
  background-image: url("https://smarally.hyper-cdn.jp/hokkaido2025/img/game/stamp_8_on.png");
}

.stamp_9_on {
  background-image: url("https://smarally.hyper-cdn.jp/hokkaido2025/img/game/stamp_9_on.png");
}

.stamp_10_on {
  background-image: url("https://smarally.hyper-cdn.jp/hokkaido2025/img/game/stamp_10_on.png");
}

.stamp_11_on {
  background-image: url("https://smarally.hyper-cdn.jp/hokkaido2025/img/game/stamp_11_on.png");
}

.stamp_12_on {
  background-image: url("https://smarally.hyper-cdn.jp/hokkaido2025/img/game/stamp_12_on.png");
}

.stamp_13_on {
  background-image: url("https://smarally.hyper-cdn.jp/hokkaido2025/img/game/stamp_13_on.png");
}

.stamp_14_on {
  background-image: url("https://smarally.hyper-cdn.jp/hokkaido2025/img/game/stamp_14_on.png");
}

.stamp_15_on {
  background-image: url("https://smarally.hyper-cdn.jp/hokkaido2025/img/game/stamp_15_on.png");
}

.stamp_16_on {
  background-image: url("https://smarally.hyper-cdn.jp/hokkaido2025/img/game/stamp_16_on.png");
}

.stamp_17_on {
  background-image: url("https://smarally.hyper-cdn.jp/hokkaido2025/img/game/stamp_17_on.png");
}

.stamp_18_on {
  background-image: url("https://smarally.hyper-cdn.jp/hokkaido2025/img/game/stamp_18_on.png");
}

.stamp_19_on {
  background-image: url("https://smarally.hyper-cdn.jp/hokkaido2025/img/game/stamp_19_on.png");
}

.stamp_20_on {
  background-image: url("https://smarally.hyper-cdn.jp/hokkaido2025/img/game/stamp_20_on.png");
}

.menu_help {
  position: absolute;
  bottom: 14px;
  right: 4px;
  width: 10%;
  height: 0;
  padding-top: 10%;
  margin-left: -5%;
  background-image: url("https://smarally.hyper-cdn.jp/hokkaido2025/img/ui/btn_menu_help.png");
  background-repeat: no-repeat;
  background-size: 100% 100%;
  background-position: 0 0;
}

.menu_box {
  position: absolute;
  bottom: 14px;
  left: 4px;
  width: 10%;
  height: 0;
  padding-top: 10%;
  margin-right: -5%;
  background-image: url("https://smarally.hyper-cdn.jp/hokkaido2025/img/ui/btn_menu_box.png");
  background-repeat: no-repeat;
  background-size: 100% 100%;
  background-position: 0 0;
}

.batch_new {
  position: absolute;
  top: -6px;
  right: -6px;
  width: 16px;
  height: 16px;
  background-color: #ff2746;
  color: #ffffff;
  text-align: center;
  line-height: 16px;
  border-radius: 8px;
  font-size: 6px;
  border: 1px #aa0b22 solid;
  box-shadow: 0 0 4px 1px rgba(0, 0, 0, 0.5);
  display: none;
}

#window_select_prize {
  position: fixed;
  top: 50%;
  left: 5%;
  width: 90%;
  height: 0;
  padding-top: 143.75%;
  margin-top: -71.8%;
  background-image: url("https://smarally.hyper-cdn.jp/hokkaido2025/img/ui/window_presentbox.png");
  background-repeat: no-repeat;
  background-size: 100% 100%;
  background-position: 0 0;
  display: none;
}

#box_prize_0 {
  position: absolute;
  top: 15%;
  left: 0;
  width: 100%;
}

#box_prize_1 {
  position: absolute;
  top: 32%;
  left: 0;
  width: 100%;
}

#box_prize_2 {
  position: absolute;
  top: 49%;
  left: 0;
  width: 100%;
}

#box_prize_3 {
  position: absolute;
  top: 66%;
  left: 0;
  width: 100%;
}

#btn_close_select_prize {
  position: absolute;
  bottom: 52px;
  left: 27.5%;
  width: 45%;
  height: 0;
  padding-top: 9.5715%;
  background-image: url("https://smarally.hyper-cdn.jp/hokkaido2025/img/ui/btn_close_select_prize.png");
  background-repeat: no-repeat;
  background-size: 100% 100%;
  background-position: 0 0;
}

.title_prize {
  text-align: center;
  color: #533d33;
  font-size: 4.375vw;
  font-weight: bold;
  margin-bottom: 4px;
}

.area_prize p {
  text-align: center;
  margin-bottom: 10px;
  font-size: 4.375vw;
}
.area_prize p span {
  display: block;
  font-size: 3.125vw;
}

.btn_apply {
  position: relative;
  margin-left: 15%;
  width: 70%;
  height: 0;
  padding-top: 12.12%;
  background-repeat: no-repeat;
  background-size: 100% 100%;
  background-position: 0 0;
}

.apply_prize_0_on {
  background-image: url("https://smarally.hyper-cdn.jp/hokkaido2025/img/game/btn_apply_prize_0_on.png");
}

.apply_prize_0_off {
  background-image: url("https://smarally.hyper-cdn.jp/hokkaido2025/img/game/btn_apply_prize_0_off.png");
}

.apply_prize_1_on {
  background-image: url("https://smarally.hyper-cdn.jp/hokkaido2025/img/game/btn_apply_prize_1_on.png");
}

.apply_prize_1_off {
  background-image: url("https://smarally.hyper-cdn.jp/hokkaido2025/img/game/btn_apply_prize_1_off.png");
}

.apply_prize_2_on {
  background-image: url("https://smarally.hyper-cdn.jp/hokkaido2025/img/game/btn_apply_prize_2_on.png");
}

.apply_prize_2_off {
  background-image: url("https://smarally.hyper-cdn.jp/hokkaido2025/img/game/btn_apply_prize_2_off.png");
}

.apply_prize_3_on {
  background-image: url("https://smarally.hyper-cdn.jp/hokkaido2025/img/game/btn_apply_prize_3_on.png");
}

.apply_prize_3_off {
  background-image: url("https://smarally.hyper-cdn.jp/hokkaido2025/img/game/btn_apply_prize_3_off.png");
}

.box_apply_complete {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-repeat: no-repeat;
  background-size: 100% 100%;
  background-position: 0 0;
}

.apply_complete_type_1 {
  background-image: url("https://smarally.hyper-cdn.jp/hokkaido2025/img/ui/btn_apply_complete_1.png");
}

.apply_complete_type_2 {
  background-image: url("https://smarally.hyper-cdn.jp/hokkaido2025/img/ui/btn_apply_complete_2.png");
}

/**********************************************************************************************************/
/**********************************************************************************************************/
#layer_playguide {
  position: fixed;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.75);
}

.box_window_guide {
  width: 90%;
  height: 0;
  padding-top: 75.9375%;
  position: absolute;
  top: 50%;
  left: 5%;
  margin-top: -45%;
  background-repeat: no-repeat;
  background-size: 100% 100%;
  background-position: 0 0;
}

.playguide_page_1 {
  background-image: url("https://smarally.hyper-cdn.jp/hokkaido2025/img/game/text_top_playguide_1.png");
}

.playguide_page_2 {
  background-image: url("https://smarally.hyper-cdn.jp/hokkaido2025/img/game/text_top_playguide_2.png");
  display: none;
}

.playguide_page_3 {
  background-image: url("https://smarally.hyper-cdn.jp/hokkaido2025/img/game/text_top_playguide_3.png");
  display: none;
}

.playguide_page_4 {
  background-image: url("https://smarally.hyper-cdn.jp/hokkaido2025/img/game/text_top_playguide_4.png");
  display: none;
}

.entry_slide_window {
  animation: slide_left 0.5s ease forwards;
}

@keyframes slide_left {
  0% {
    transform: translateX(100%);
  }
  100% {
    transform: translateX(0%);
  }
}
.exit_slide_window {
  animation: slide_right 0.5s ease forwards;
}

@keyframes slide_right {
  0% {
    transform: translateX(0%);
  }
  100% {
    transform: translateX(-120%);
  }
}
.btn_window_guide_next {
  width: 80%;
  height: 0;
  padding-top: 12.424%;
  position: absolute;
  left: 10%;
  bottom: 10%;
  background-image: url("https://smarally.hyper-cdn.jp/hokkaido2025/img/ui/btn_window_next.png");
  background-repeat: no-repeat;
  background-size: 100% 100%;
  background-position: 0 0;
}

/**********************************************************************************************************/
/**********************************************************************************************************/
#effect_complete {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: none;
}

#effect_complete_text {
  font-family: "Ultra", serif;
  font-weight: bold;
  position: fixed;
  width: 100%;
  text-align: center;
  top: 46%;
  left: 0%;
  font-size: 0;
}

.img_effect_complete {
  display: inline-block;
  margin: 0;
  width: 16%;
  height: 0;
  padding-top: 16%;
  background-repeat: no-repeat;
  background-size: 100% 100%;
  background-position: 0 0;
}

.effect_anime {
  animation: effect_text_title_enter 0.25s linear 1;
}

@keyframes effect_text_title_enter {
  0% {
    transform: scale(4);
  }
  100% {
    transform: scale(1);
  }
}
#effect_text-2,
#effect_text-3,
#effect_text-4,
#effect_text-5,
#effect_text-6,
#effect_text-7,
#effect_text-8 {
  opacity: 0;
}

#effect_text-2 {
  margin-left: -5%;
}

#effect_text-3 {
  margin-left: -2.5%;
}

#effect_text-4 {
  margin-left: -2.5%;
}

#effect_text-5 {
  margin-left: -4.5%;
}

#effect_text-6 {
  margin-left: -5.5%;
}

#effect_text-7 {
  margin-left: -5%;
}

#effect_text-8 {
  margin-left: -5%;
}

.object__complete-light {
  width: 420px;
  height: 642px;
  position: fixed;
  top: 50%;
  left: 50%;
  margin-top: -321px;
  margin-left: -210px;
}
.object__complete-light img {
  width: 100%;
  height: auto;
  display: block;
  position: absolute;
  top: 0;
  left: 0;
}

#effect_text-1 {
  background-image: url("https://smarally.hyper-cdn.jp/hokkaido2025/img/ui/text_effect_c.png");
}

#effect_text-2 {
  background-image: url("https://smarally.hyper-cdn.jp/hokkaido2025/img/ui/text_effect_o.png");
}

#effect_text-3 {
  background-image: url("https://smarally.hyper-cdn.jp/hokkaido2025/img/ui/text_effect_m.png");
}

#effect_text-4 {
  background-image: url("https://smarally.hyper-cdn.jp/hokkaido2025/img/ui/text_effect_p.png");
}

#effect_text-5 {
  background-image: url("https://smarally.hyper-cdn.jp/hokkaido2025/img/ui/text_effect_l.png");
}

#effect_text-6 {
  background-image: url("https://smarally.hyper-cdn.jp/hokkaido2025/img/ui/text_effect_e.png");
}

#effect_text-7 {
  background-image: url("https://smarally.hyper-cdn.jp/hokkaido2025/img/ui/text_effect_t.png");
}

#effect_text-8 {
  background-image: url("https://smarally.hyper-cdn.jp/hokkaido2025/img/ui/text_effect_e.png");
}

.rote-anime_right {
  animation: rotate-anime_left 3s linear infinite;
}

.rote-anime_left {
  animation: rotate-anime_right 3s linear infinite;
}

@keyframes rotate-anime_right {
  0% {
    transform: rotate(0);
  }
  100% {
    transform: rotate(360deg);
  }
}
@keyframes rotate-anime_left {
  0% {
    transform: rotate(0);
  }
  100% {
    transform: rotate(-360deg);
  }
}
/**********************************************************************************************************/
/**********************************************************************************************************/
#layer_notes {
  position: relative;
  width: 100%;
  background-color: #ffffff;
  color: #333333;
  padding-top: 24px;
  padding-bottom: 24px;
  display: none;
}

#layer_privacypolicy {
  position: fixed;
  width: 100%;
  height: 100vh;
  background-color: #ffffff;
  color: #333333;
  padding-top: 24px;
  padding-bottom: 24px;
  display: none;
}

.title_notes {
  width: 90%;
  font-weight: bold;
  font-size: 8vw;
  text-align: center;
  margin: 0px auto 24px auto;
  padding-bottom: 4px;
  border-bottom: 2px #333 solid;
}

.box_text_notes {
  width: 90%;
  margin: 12px auto;
  font-size: 4vw;
}
.box_text_notes h2 {
  font-size: 5vw;
  margin-top: 12px;
}
.box_text_notes ul {
  padding-left: 1em;
}
.box_text_notes dt {
  font-weight: bold;
}
.box_text_notes dd {
  margin: 0 0 12px 0;
}

#btn_back_notes {
  width: 75%;
  height: 0;
  padding-top: 15%;
  background-image: url("https://smarally.hyper-cdn.jp/hokkaido2025/img/ui/btn_back_notes.png");
  background-repeat: no-repeat;
  background-size: 100% 100%;
  background-position: 0 0;
  margin: 24px auto;
}

#btn_prize_no {
  width: 90%;
  height: 40px;
  line-height: 40px;
  text-align: center;
  font-size: 6vw;
  font-weight: bold;
  color: #fff;
  background-color: #00a0e9;
  margin: 12px auto 24px auto;
}

#btn_prize_yes {
  width: 50%;
  height: 30px;
  line-height: 30px;
  text-align: center;
  font-size: 4vw;
  font-weight: bold;
  color: #fff;
  background-color: #ff0000;
  margin: 0 auto;
}

#btn_externallink {
  width: 75%;
  height: 0;
  padding-top: 15%;
  background-image: url("https://smarally.hyper-cdn.jp/hokkaido2025/img/ui/btn_externallink.png");
  background-repeat: no-repeat;
  background-size: 100% 100%;
  background-position: 0 0;
  margin: 24px auto;
}

#btn_back_privacypolicy {
  width: 75%;
  height: 0;
  padding-top: 15%;
  background-image: url("https://smarally.hyper-cdn.jp/hokkaido2025/img/ui/btn_back_notes.png");
  background-repeat: no-repeat;
  background-size: 100% 100%;
  background-position: 0 0;
  position: fixed;
  bottom: 24px;
  left: 12.5%;
}

.caution_sub {
  display: block;
  font-weight: bold;
  border-bottom: 1px solid #333;
}

/**********************************************************************************************************/
/**********************************************************************************************************/
#layer_menu_help {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #000000;
}

.title_menu_help {
  position: absolute;
  top: 5%;
  left: 0;
  width: 100%;
  height: 0;
  padding-top: 11.25%;
  background-image: url("https://smarally.hyper-cdn.jp/hokkaido2025/img/ui/title_help.png");
  background-repeat: no-repeat;
  background-size: 100% 100%;
  background-position: 0 0;
  margin: 0;
}

.btn_menu_help {
  width: 90%;
  height: 0;
  padding-top: 14.607%;
  background-repeat: no-repeat;
  background-size: 100% 100%;
  background-position: 0 0;
  margin-left: auto;
  margin-right: auto;
}

#menu_help_playguide {
  background-image: url("https://smarally.hyper-cdn.jp/hokkaido2025/img/ui/btn_menu_help_playguide.png");
  margin-top: 20%;
  margin-bottom: 5%;
}

#menu_help_notes {
  background-image: url("https://smarally.hyper-cdn.jp/hokkaido2025/img/ui/btn_menu_help_note.png");
  margin-bottom: 5%;
}

#menu_help_privacypolicy {
  background-image: url("https://smarally.hyper-cdn.jp/hokkaido2025/img/ui/btn_menu_help_privacypolicy.png");
  margin-bottom: 5%;
}

#menu_help_back {
  background-image: url("https://smarally.hyper-cdn.jp/hokkaido2025/img/ui/btn_back_notes.png");
  position: absolute;
  bottom: 24px;
  left: 5%;
}

/**********************************************************************************************************/
/**********************************************************************************************************/
#layer_youtube-player {
  position: fixed;
  width: 100%;
  height: 100vh;
  background-color: rgba(0, 0, 0, 0.75);
}

#box_video {
  position: absolute;
  width: 100%;
  padding-top: 56.25%;
  top: 50%;
  transform: translateY(-50%);
}

iframe {
  position: absolute;
  top: 0;
  right: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
}

#btn_close_youtube {
  position: absolute;
  top: 12px;
  right: 12px;
  width: 40px;
  height: 40px;
  background-image: url("https://smarally.hyper-cdn.jp/hokkaido2025/img/ui/btn_close.png");
  background-repeat: no-repeat;
  background-size: cover;
}

/**********************************************************************************************************/
/**********************************************************************************************************/
.anime_scale {
  animation: scale-anime 1.2s ease-in-out infinite forwards;
}

@keyframes scale-anime {
  0% {
    transform: scale(1.1);
  }
  100% {
    transform: scale(1);
  }
}
.flip_mark {
  animation-name: anime_flip-scale;
  animation-duration: 500ms;
  animation-delay: 300ms;
  animation-fill-mode: forwards;
  animation-timing-function: linear;
  animation-iteration-count: 1;
}

@keyframes anime_flip-scale {
  0% {
    transform: scale(1);
  }
  50% {
    transform: scale(1.5);
  }
  100% {
    transform: scale(1);
  }
}
.bingo_scal {
  animation-name: anime_bingo-scal;
  animation-duration: 200ms;
  animation-delay: 0ms;
  animation-fill-mode: forwards;
  animation-timing-function: ease-out;
  animation-iteration-count: 1;
}

@keyframes anime_bingo-scal {
  0% {
    transform: scale(5);
  }
  100% {
    transform: scale(1);
  }
}
.anime_star_1 {
  animation-name: anime_bingo-star-1;
  animation-duration: 800ms;
  animation-delay: 250ms;
  animation-fill-mode: forwards;
  animation-timing-function: ease-out;
  animation-iteration-count: 1;
}

@keyframes anime_bingo-star-1 {
  0% {
    transform: translateX(0px) translateY(0px) rotate(0);
  }
  100% {
    transform: translateX(100px) translateY(320px) rotate(360deg);
  }
}
.anime_star_2 {
  animation-name: anime_bingo-star-2;
  animation-duration: 800ms;
  animation-delay: 250ms;
  animation-fill-mode: forwards;
  animation-timing-function: ease-out;
  animation-iteration-count: 1;
}

@keyframes anime_bingo-star-2 {
  0% {
    transform: translateX(0px) translateY(0px) rotate(0);
  }
  100% {
    transform: translateX(-300px) translateY(-400px) rotate(360deg);
  }
}
.anime_star_3 {
  animation-name: anime_bingo-star-3;
  animation-duration: 800ms;
  animation-delay: 250ms;
  animation-fill-mode: forwards;
  animation-timing-function: ease-out;
  animation-iteration-count: 1;
}

@keyframes anime_bingo-star-3 {
  0% {
    transform: translateX(0px) translateY(0px) rotate(0);
  }
  100% {
    transform: translateX(280px) translateY(-600px) rotate(360deg);
  }
}
.anime_star_4 {
  animation-name: anime_bingo-star-4;
  animation-duration: 800ms;
  animation-delay: 250ms;
  animation-fill-mode: forwards;
  animation-timing-function: ease-out;
  animation-iteration-count: 1;
}

@keyframes anime_bingo-star-4 {
  0% {
    transform: translateX(0px) translateY(0px) rotate(0);
  }
  100% {
    transform: translateX(-320px) translateY(500px) rotate(360deg);
  }
}
.anime_btn_attention {
  animation-name: btn_attention;
  animation-duration: 2000ms;
  animation-fill-mode: forwards;
  animation-timing-function: ease-out;
  animation-iteration-count: infinite;
}

@keyframes btn_attention {
  0% {
    transform: scale(1);
  }
  50% {
    transform: scale(1);
  }
  70% {
    transform: scale(1.2);
  }
  80% {
    transform: scale(1);
  }
  90% {
    transform: scale(1.1);
  }
  100% {
    transform: scale(1);
  }
}
/**********************************************************************************************************/
/**********************************************************************************************************/
#layer_download {
  width: 100%;
  height: 100svh;
  position: fixed;
  top: 0;
  left: 0;
  background-color: rgba(0, 0, 0, 0.8);
  display: none;
}

.box_tmb {
  position: absolute;
  width: 55%;
  left: 22.5%;
  top: 10%;
}
.box_tmb img {
  width: 100%;
}

#btn_download {
  position: fixed;
  width: 75%;
  padding-top: 11.22%;
  left: 12.5%;
  bottom: 15%;
  background-image: url("https://smarally.hyper-cdn.jp/hokkaido2025/img/ui/btn_tmb_download.png");
  background-repeat: no-repeat;
  background-size: cover;
}

#btn_cloase_download_window {
  position: fixed;
  width: 50%;
  padding-top: 7.48%;
  left: 25%;
  bottom: 5%;
  background-image: url("https://smarally.hyper-cdn.jp/hokkaido2025/img/ui/btn_back_notes.png");
  background-repeat: no-repeat;
  background-size: cover;
}

/**********************************************************************************************************/
/**********************************************************************************************************/
.font_s {
  font-size: 3.5vw;
}

.font_red {
  color: #ff0000;
}

.color_orange {
  color: #ff5200;
}

/**********************************************************************************************************/
/**********************************************************************************************************/
.mt_12 {
  margin-top: 12px;
}

.mt_28 {
  margin-top: 28px;
}

.mt_60 {
  margin-top: 60px;
}

.font_4 {
  font-size: 3.5vw;
}

.ml_12 {
  margin-left: 12px;
}

.mb_40 {
  margin-bottom: 40px;
}

.font_normal {
  font-weight: normal;
}

.text_left {
  text-align: left;
}

.ml_5 {
  margin-left: 5%;
}

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