@-webkit-keyframes Floatingy {
  from {
    -webkit-transform: translate(0, 0px);
  }
  65% {
    -webkit-transform: translate(50px, 0);
  }
  to {
    -webkit-transform: translate(0, 0px);
  }
}

@-moz-keyframes Floatingy {
  from {
    -moz-transform: translate(0, 0px);
  }
  65% {
    -moz-transform: translate(50px, 0);
  }
  to {
    -moz-transform: translate(0, 0px);
  }
}

@-webkit-keyframes Floatingx {
  from {
    -webkit-transform: translate(50px, 0px);
  }
  65% {
    -webkit-transform: translate(0, 0);
  }
  to {
    -webkit-transform: translate(50px, 0px);
  }
}

@-moz-keyframes Floatingx {
  from {
    -moz-transform: translate(50px, 0px);
  }
  65% {
    -moz-transform: translate(0, 0);
  }
  to {
    -moz-transform: translate(50px, 0px);
  }
}
.icon-bubble {
  position: absolute;

  -webkit-animation-iteration-count: infinite;
  -webkit-animation-timing-function: ease-in-out;
  -moz-animation-iteration-count: infinite;
  -moz-animation-timing-function: ease-in-out;
  -webkit-animation-name: Floatingy;
  -moz-animation-name: Floatingy;
  float: left;
}

.section_01 {
  position: relative;
  overflow: hidden;
  padding: 0;
  margin: 0 auto;
  background-color: #053166;
  background-image: url('../img/reservation/01_top_puzzle_bg.png');
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}
.section_01 .content {
  position: relative;
  padding: 0;
  max-width: 1092px;
  margin: 0 auto;
}
.section_01 .bt21-logo {
  position: absolute;
  z-index: 3;
  top: 35%;
  left: 10px;
  width: 37%;
}
.section_01 .bt21-character {
  position: relative;
  right: -16%;
  margin-top: 5%;
  z-index: 2;
}
.section_01 .bt21-effect {
  position: absolute;
  right: -28%;
  top: 0;
  z-index: 1;
  opacity: 0.5;
}
.section_01 .bt21-puzzle {
  position: absolute;
  top: 0;
  left: 50%;
  margin-left: -50%;
  width: 1900px;
  z-index: 1;
}
.section_01 .bt21-bg {
  position: absolute;
  top: 0;
  left: 50%;
  margin-left: -50%;
  width: 100%;
  z-index: 0;
}
.section_01 .content .go-reservation {
  display: inline-block;
  margin-left: -15%;
  position: absolute;
  bottom: 10%;
  left: 45%;
  width: 40%;
  z-index: 5;
}
.section_01 .content .go-reservation img {
  width: 100%;
}
.section_01 .content .wrap-character {

}
.section_01_border {
  margin: 0;
  border: none;
  height: 21px;
  background-image: url('../img/reservation/03_patten.png');
  background-repeat: repeat;
  background-position: 0 0;
}

.section_02 {
  position: relative;
  padding: 0;
  margin: 0 auto;
  z-index: 4;
  overflow: hidden;
  background-image: url('../img/reservation/02_bg.png');
  background-size: cover;
  background-repeat: repeat;
  background-position: 0 0;
}
.section_02 .content {
  position: relative;
  margin: 0 auto;
  max-width: 967px;
  text-align: center;
  z-index: 2;
}
.section_02 .icon-bubble {
  z-index: 0;
  width: 20%;
  max-width: 300px;
  min-width: 150px;
  -webkit-animation-name: Floatingx;
  -moz-animation-name: Floatingx;
}
.section_02 .icon-bubble.bubble_02_up_l {
  -webkit-animation-duration: 10s;
  -moz-animation-duration: 4s;
  top: 5%;
  left: -10%;
}
.section_02 .icon-bubble.bubble_02_up_r {
  -webkit-animation-duration: 8s;
  -moz-animation-duration: 6s;
  top: 26%;
  right: -5%;
}
.section_02_border {
  margin: 0;
  border: none;
  height: 40px;
  background-image: url('../img/reservation/02_bg_bottom.png');
  background-repeat: repeat;
  background-position: 0 0;
}
.section_03 {
  position: relative;
  padding: 0;
  margin: 0 auto;
  z-index: 4;
  overflow: hidden;
}
.section_03:before {
  content: "";
  position: absolute;
  width: 200%;
  height: 200%;
  top: -50%;
  left: -50%;
  z-index: -1;
  background: url('../img/reservation/03_bg_pattern.png') 0 0 repeat;
  transform: rotate(-30deg);
}
.section_03 .content {
  position: relative;
  margin: 0 auto;
  max-width: 874px;
  text-align: center;
  z-index: 2;
}
.section_03 .content .wrap-policy {
  position: relative;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
}
.section_03 .content .policy-content {
  text-align: left;
  position: absolute;
  top: 20%;
  bottom: 10%;
  left: 5%;
  right: 5%;
  padding: 0 1%;
  overflow-y: auto;
  z-index: 2;
}
.section_03 .content .wrap-policy-bg {
  position: relative;
  z-index: 0;
}

.section_03 .register-from {
  position: relative;
  z-index: 1;
  max-width: 700px;
  margin: 0 auto;
  padding: 0 20px;
  color: white;
}
.section_03 .register-from .form-check {
  padding-bottom: 10px;
}
.form-check .form-check-sign:after {
  font-weight: 700;
  font-size: 20px;
  color: black;
}
.section_03 .register-from .form-check-sign {
}
.section_03 .register-from .form-check-sign:before,
.section_03 .register-from .form-check-sign:after {
  background: white;
}
.section_03 .register-from .form-check-radio .form-check-sign:before,
.section_03 .register-from .form-check-radio .form-check-sign:after {
  position: absolute;
  left: 10px;
  top: 10px;
}
.form-check-radio input[type="radio"]:checked+.form-check-sign::after {
  width: 10px;
  height: 10px;
  top: 15px;
  left: 15px;
  background-color: black;
}
.section_03 .register-from .input-group {
  margin-top: 20px;
}
.section_03 .register-from .input-group .form-email {
  border-color: white;
  background: white;
}
.section_03 .register-from .submit {
  padding: 20px 0 40px;
  border: none;
  background: none;
  outline: none;
}
.section_03 .register-from .submit img {
  width: 60%;
}

.section_03 .icon-bubble {
  z-index: 0;
  max-width: 100px;
  min-width: 50px;
  width: 7%;
  border-radius: 50%;
  box-shadow: 0 8px 10px 1px rgba(0, 0, 0, 0.14), 0 3px 14px 2px rgba(0, 0, 0, 0.12), 0 5px 5px -3px rgba(0, 0, 0, 0.2);

  -webkit-animation-duration: 4s;
  -moz-animation-duration: 4s;
  -webkit-animation-name: Floatingx;
  -moz-animation-name: Floatingx;
}
.section_03 .icon-bubble.bubble_03_up_l1 {
  top: 15%;
  left: 5%;
}
.section_03 .icon-bubble.bubble_03_up_l2 {
  top: 40%;
  left: -10%;
}
.section_03 .icon-bubble.bubble_03_up_l3 {
  top: 50%;
  left: -5%;
}
.section_03 .icon-bubble.bubble_03_up_l4 {
  top: 80%;
  left: 0;
}
.section_03 .icon-bubble.bubble_03_up_r1 {
  top: 5%;
  right: 0;
}
.section_03 .icon-bubble.bubble_03_up_r2 {
  top: 50%;
  right: -5%;
}
.section_03 .icon-bubble.bubble_03_up_r3 {
  top: 70%;
  right: 10%;
}
.section_03_border {
  margin: 0;
  border: none;
  height: 40px;
  background-image: url('../img/reservation/03_bg_bottom.png');
  background-repeat: repeat;
  background-position: 0 0;
}


.section_04 {
  position: relative;
  padding: 0;
  margin: 0 auto;
  overflow: hidden;
}
.section_04:before {
  content: "";
  position: absolute;
  width: 200%;
  height: 200%;
  top: -50%;
  left: -50%;
  z-index: -1;
  background: url('../img/reservation/04_bg_pattern.png') 0 0 repeat;
  transform: rotate(-30deg);
}
.section_04 .content {
  position: relative;
  margin: 0 auto;
  max-width: 1080px;
  text-align: center;
  z-index: 1;
}
.section_04 .icon-fixing {
  z-index: 2;
  width: 13%;
  position: absolute;
}
.section_04 .icon-fixing.fixing_04_game_1_up {
  top: 35%;
  left: 0;
}
.section_04 .icon-fixing.fixing_04_game_2_up {
  top: 80%;
  right: 0;
}
.section_04_border {
  margin: 0;
  border: none;
  height: 21px;
  background-image: url('../img/reservation/03_patten.png');
  background-repeat: repeat;
  background-position: 0 0;
}

.section_05 {
  position: relative;
  padding: 0;
  margin: 0 auto;
  overflow: hidden;
  background-image: url('../img/reservation/05_bg.png');
  background-size: cover;
  background-repeat: repeat;
  background-position: 0 0;
}
.section_05 .content {
  position: relative;
  margin: 0 auto;
  max-width: 1000px;
  text-align: center;
  z-index: 2;
}
.section_05 .sns-twitter {
  position: absolute;
  top: 16%;
  left: 14.5%;
  right: 50%;
  width: 70%;
  height: 56% !important;
  overflow: scroll;
  background-color: #fcf7f1;
}
.section_05 .sns-twitter iframe {
  height: 100%;
}
.section_05 .write-twitter {
  display: block;
  width: 50%;
  position: absolute;
  bottom: 5%;
  z-index: 20;
  left: 50%;
  right: 50%;
  transform: translate(-50%, -45%);
}
.section_05 .icon-fixing {
  position: absolute;
  z-index: -1;
}
.section_05 .icon-fixing.fixing_05_twitter_l {
  top: 30%;
  /*left: -70px*/
  right: 88%;
  width: 25%;
}
.section_05 .icon-fixing.fixing_05_twitter_r {
  top: 30%;
  /*right: -70px;*/
  left: 80%;
  width: 32%;
}
.section_05_border {
  margin: 0;
  border: none;
  height: 21px;
  background-image: url('../img/reservation/03_patten.png');
  background-repeat: repeat;
  background-position: 0 0;
}
.section_06 {
  position: relative;
  padding: 0;
  margin: 0 auto;
  overflow: hidden;
  background-image: url('../img/reservation/06_pattern_purple2.png');
  background-repeat: repeat;
  background-position: 0 0;
}
.section_06 .content {
  position: relative;
  margin: 0 auto;
  max-width: 800px;
  text-align: center;
  z-index: 2;
}
.section_06 .content nav {
  display: inline-block;
}
.section_06 .content nav ul {
  margin-bottom: 0;
  padding: 0;
  list-style: none;
  line-height: 3.1;
  color: #ffffff;
}
.section_06 .content nav ul li {
  display: inline-block;
}
.section_06 .content nav ul li a {
  color: #ffffff;
  padding: 13px 0.5rem;
  font-size: 0.8571em;
  text-transform: uppercase;
  text-decoration: none;
}

.footer {
  font-size: 1.1rem;
}
.footer .container {

}
.footer .copyright {

}
