@charset "utf-8";

/* = Setting
-------------------------------------------------------------- */
body {
  color: #333;
  font-family: 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', sans-serif;
  line-height: 1.5;
}
img {
  width: 100%;
}
ol li {
  list-style: none;
}
a {
  -webkit-tap-highlight-color: transparent;
}
/* = header
-------------------------------------------------------------- */
header {
  overflow: hidden;
  position: relative;
  z-index: 10;
  padding-top: 11.33%;
  background: url(../img/common/header_bg.png);
  background-size: cover;
}
header .dl {
  position: absolute;
  top: 16%;
  right: 1.5%;
  width: 18.13%;
}
header .title {
  position: absolute;
  top: 25%;
  left: 0;
  right: 0;
  width: 45.73%;
  margin: auto;
}

/* = main
-------------------------------------------------------------- */
main {
  margin-top: -0.8%;
}

/* = footer
-------------------------------------------------------------- */
footer {
  position: relative;
  padding-top: 4.5%;
  text-align: center;
}
footer .sns_info li {
  width: 12%;
}
footer h2 {
  width: 64%;
  margin: 0 auto 4.5%;
}
footer .spec {
  margin-bottom: 4.5%;
}
footer ul {
  margin-bottom: 4.5%;
  font-size: 3.47vw;
  text-align: center;
}
footer ul li {
  display: inline-block;
  padding: 0 2%;
}
footer p.copy {
  position: relative;
  padding: 4.8% 0 2.5%;
  background: url(../img/common/copyright_bg.png);
  background-size: cover;
}
footer small {
  color: #0b2850;
  font-size: 2.8vw;
  text-shadow: 0px 2px 2px #74e7fe;
}

/* = modal
-------------------------------------------------------------- */
.modal-box {
  display: none;
}
.modaal-container {
  background-color: transparent !important;
  box-shadow: none !important;
  top: -4vh;
}
.modaal-content-container {
  position: relative;
  padding: 0 !important;
}
.modal_close {
  display: block;
  position: absolute;
  left: 25%;
  width: 50%;
  padding-top: 5%;
}
.modal-movie {
  overflow: hidden;
  position: relative;
  width: 100%;
  height: 0;
  padding-top: 56.25%;
}
.modal-movie iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100% !important;
  height: 100% !important;
}
.modal-terms {
  overflow: scroll;
  overflow-x: hidden;
  height: 70vh;
  background: #fff;
  border-radius: 15px;
  padding: 5%;
  text-align: left;
  font-size: 3.74vw;
}
.modal-terms p,
.modal-terms strong,
.modal-terms ul {
  margin-bottom: 4%;
}
.modal-terms strong {
  display: block;
  border-bottom: 3px solid #333;
  padding-bottom: 1.5%;
  font-size: 4.27vw;
}
.modal-terms ul {
  padding-left: 5%;
  margin-left: 1.5%;
}
.modal-terms ul li {
  list-style: disc;
}

/* = btn animation
-------------------------------------------------------------- */
.btn-animation {
  animation: translateAni 3s infinite ease;
}
@keyframes translateAni {
    0% {
        transform: scale(1.05)
    }
    5% {
        transform: scale(1)
    }
    95% {
        transform: scale(1)
    }
    100% {
        -webkit-transform: scale(1.05)
    }
}