@charset "UTF-8";
@media only screen and (max-width: 1022px) {
  #Gdpr.messageBox .text {
    font-size: 2.4vw;
  }
}

#title_footer #capcom_menu li a {
  padding: .4em;
}

#Gdpr.messageBox .linkBox #acceptBtn {
  padding: .6em 2em;
}

@media only screen and (max-width: 1022px) {
  #Gdpr.messageBox .linkBox #acceptBtn {
    font-size: 2.4vw;
  }
}

.agegate-wrap {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}

#title_footer{
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
}

.agegate-footer {
  position: absolute;
  bottom: 0;
  left: 0;
}

.agegate-inner {
  position: absolute;
  left: 50%;
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  width: 100%;
}

@media only screen and (max-width: 600px) {
  .agegate-inner {
    top: 44%;
  }
}

.agegate-title {
  font-family: 'Cinzel', serif;
  font-size: 45px;
  line-height: 1;
  margin-bottom: 18px;
  color: #fff;
  text-align: center;
}

@media only screen and (max-width: 960px) {
  .agegate-title {
    font-size: 4vw;
  }
}

@media only screen and (max-width: 600px) {
  .agegate-title {
    font-size: 7vw;
  }
}

.agegate-lead {
  font-family: 'Cinzel', serif;
  font-size: 20px;
  text-align: center;
  color: #fff;
  line-height: 1;
}

@media only screen and (max-width: 600px) {
  .agegate-lead {
    font-size: 2vw;
  }
}

@media only screen and (max-width: 600px) {
  .agegate-lead {
    font-size: 4vw;
  }
}

.agegate-text {
  margin-bottom: 114px;
}

@media only screen and (max-width: 960px) {
  .agegate-text {
    margin-bottom: 14%;
  }
}

.serif {
  font-family: serif;
}

.langList {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.langList .langItem:last-of-type {
  margin-right: 0;
}

@media only screen and (max-width: 960px) {
  .langList {
    display: block;
  }
}

.langItem {
  position: relative;
  font-family: 'Cinzel', serif;
  margin-right: 86px;
  font-size: 20px;
}

.langItem a {
  -webkit-transition: .3s;
  transition: .3s;
  border-bottom: 1px solid rgba(250, 250, 250, 0);
}

.langItem a:hover {
  border-bottom: 1px solid rgba(250, 250, 250, .6);
}

.langItem:before {
  content: "";
  display: inline-block;
  height: 2px;
  width: 16px;
  background: #e60012;
  vertical-align: middle;
  margin-right: 6px;
}

@media only screen and (max-width: 960px) {
  .langItem {
    margin-right: 0;
    text-align: center;
    margin-bottom: .4em;
  }
}

@media only screen and (max-width: 600px) {
  .langItem {
    font-size: 15px;
  }
}

.langItem--serif {
  font-family: "Hiragino Sans GB", "Hiragino Sans GB W3", "STXihei", "Microsoft YaHei", "微软雅黑", 'SimSun', sans-serif;
}

.modal-gdpr {
  text-align: center;
}

.modal-gdpr * {
  color: #fff;
}

@media only screen and (max-width: 960px) {
  .gdpr-message {
    width: 84%;
  }
}

.gdpr-notice {
  font-size: 150%;
  font-weight: bold;
  margin-bottom: 1.5em;
}

.gdpr-message-detail {
  font-size: 87.5%;
  line-height: 1.5;
  margin-bottom: 16px;
}

.gdpr-privacy-link {
  margin-bottom: 16px;
}

.gdpr-privacy-link a {
  text-decoration: none;
  border-bottom: 1px solid #fff;
}

.accept-btn {
  display: block;
  margin: 30px auto;
}

.agegate-ttl {
  font-family: 'Cinzel', serif;
  font-weight: bold;
  font-size: 22px;
  margin-bottom: 1.2em;
}

.agegate input {
  color: #000;
}

.input-area {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.input-label {
  color: #888;
  font-size: 14px;
  margin-bottom: .5em;
  font-family: 'Cinzel', serif;
}

@media only screen and (max-width: 600px) {
  .input-label {
    font-size: 10px;
  }
}

.input-wrap--date,
.input-wrap--month {
  position: relative;
  margin-right: 1.6em;
}

.input-wrap--date:after,
.input-wrap--month:after {
  border: solid #fff 1px;
  content: '';
  position: absolute;
  right: -46%;
  top: 50%;
  -webkit-transform: translate(0, -50%) rotate(-75deg);
          transform: translate(0, -50%) rotate(-75deg);
  width: 30px;
}

@media only screen and (max-width: 600px) {
  .input-wrap--date:after,
  .input-wrap--month:after {
    right: -48%;
    width: 20px;
  }
}

#month,
#date {
  border-radius: 0;
  font-size: 18px;
  padding: .4em;
  width: 3.8em;
  font-family: 'Cinzel', serif;
  font-weight: bold;
}

@media only screen and (max-width: 600px) {
  #month,
  #date {
    width: 4.2em;
    padding: .3em .6em;
    font-size: 14px;
  }
}

#year {
  border-radius: 0;
  font-family: 'Cinzel', serif;
  font-weight: bold;
  font-size: 18px;
  width: 4.8em;
  padding: .4em;
}

@media only screen and (max-width: 600px) {
  #year {
    widows: 4.8em;
    padding: .3em .6em;
    font-size: 14px;
  }
}

.notAllowed {
  color: #bd000f;
  font-size: 20px;
}

.enter-btn {
  pointer-events: none;
  opacity: .4;
  position: relative;
  font-size: 1.258vw;
  font-family: 'NotoSansCJKjp', sans-serif;
  background: rgba(0, 0, 0, .58);
  border: 2px solid #666;
  width: 100%;
  margin: 50px auto 0;
  display: block;
  padding: .7em 0;
  text-align: center;
  -webkit-transition: .5s ease;
  transition: .5s ease;
}

.enter-btn.is-active {
  pointer-events: auto;
  opacity: 1;
}

.hk .enter-btn,
.cn .enter-btn {
  font-family: sans-serif;
}

@media only screen and (min-width: 960px) {
  .enter-btn:hover {
    color: #bd000f;
    border-color: #bd000f;
    -webkit-box-shadow: 0px 0px 20px 2px rgba(189, 0, 15, .3);
            box-shadow: 0px 0px 20px 2px rgba(189, 0, 15, .3);
  }
  .enter-btn:hover:after {
    opacity: 1;
  }
}

@media only screen and (max-width: 960px) {
  .enter-btn {
    width: 40%;
    -webkit-transform: none;
            transform: none;
    font-size: 2.595959vw;
    border-width: 1px;
  }
  .enter-btn:before {
    width: 7.65624vw;
    height: 7.5vw;
  }
}

@media only screen and (max-width: 600px) {
  .enter-btn {
    width: 60%;
    font-size: 12px;
    margin-top: 30px;
  }
}
