.fixed-bg {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: -1;
  background: url(../images/page-bg.jpg);
  background-size: cover;
}

.portal-header {
  color: #fff;
  background: #000;
  text-align: center;
  line-height: 1;
}

@media only screen and (min-width: 961px) {
  .portal-header {
    font-size: 1.25vw;
    padding: 1.4em 0;
  }
}

@media only screen and (max-width: 960px) {
  .portal-header {
    font-size: 18px;
    padding: 1.28em 0;
  }
}

@media only screen and (max-width: 600px) {
  .portal-header {
    font-size: 14px;
  }
}

.portal-panelList {
  width: 78.125%;
  margin: 0 auto;
}

.portal-panelList:after {
  content: "";
  display: table;
  clear: both;
}

.portal-panelList img {
  width: 100%;
}

.portal-panelList .portal-panelItem {
  margin-bottom: 58px;
  float: left;
}

.portal-panelList .portal-panelItem--3col {
  width: 30%;
  margin-right: 5%;
}

.portal-panelList--2col {
  padding-top: 54px;
}

.portal-panelList--2col .portal-panelItem {
  width: 48%;
  margin-right: 4%;
}

.portal-panelList--2col .portal-panelItem:nth-of-type(even) {
  margin-right: 0;
}

@media only screen and (max-width: 960px) {
  .portal-panelList--2col {
    padding-top: 6.25vw;
  }
  .portal-panelList--2col .portal-panelItem {
    width: 100%;
    margin-right: 0;
    margin-bottom: 8%;
  }
}

.portal-panelList--3col .portal-panelItem {
  width: 30%;
  margin-right: 5%;
}

.portal-panelList--3col .portal-panelItem:nth-of-type(3n) {
  margin-right: 0;
}

@media only screen and (max-width: 960px) {
  .portal-panelList--3col .portal-panelItem {
    width: 48%;
    margin-right: 4%;
    margin-bottom: 8%;
  }
  .portal-panelList--3col .portal-panelItem:nth-of-type(3n) {
    margin-right: 4%;
  }
  .portal-panelList--3col .portal-panelItem:nth-of-type(2n) {
    margin-right: 0;
  }
  .portal-panelList--3col .portal-panelItem:last-of-type {
    margin-bottom: 0;
  }
}

.portal-panelItem {
  position: relative;
  border: 1px solid #515151;
  -webkit-transition: .5s ease;
  transition: .5s ease;
}

@media only screen and (min-width: 960px) {
  .portal-panelItem:hover {
    border-color: #bd000f;
  }
  .portal-panelItem:hover .link-label {
    background: rgba(84, 7, 7, .8);
  }
}

.portal-panelItem .link-label {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  background: rgba(0, 0, 0, .8);
  text-align: center;
  padding: .90909em 0;
  color: #fff;
  font-size: 1.14583vw;
  font-family: 'NotoSansCJKjp', sans-serif;
  -webkit-transition: .6s ease;
  transition: .6s ease;
}

.hk .portal-panelItem .link-label,
.cn .portal-panelItem .link-label {
  font-family: sans-serif;
}

.portal-panelItem .link-label span {
  position: relative;
}

.portal-panelItem .link-label span:before {
  content: "";
  width: .5729vw;
  height: 1.04166vw;
  display: inline-block;
  background: url(../images/right-arrow.png);
  background-size: cover;
  margin-right: .6em;
}

@media only screen and (max-width: 600px) {
  .portal-panelItem .link-label {
    padding: .4em 0;
    font-size: 11px;
  }
  .portal-panelItem .link-label span:before {
    width: 5.5px;
    height: 10px;
  }
}

.sns {
  text-align: center;
}

@media only screen and (min-width: 961px) {
  .sns {
    padding: 3.125vw 0 4.0625vw;
  }
}

@media only screen and (max-width: 960px) {
  .sns {
    padding: 11.1111vw 7.4074vw 9.25925vw;
  }
}

.sns-item {
  margin-right: 8%;
}

.sns-title {
  color: #fff;
  line-height: 1;
}

@media only screen and (min-width: 961px) {
  .sns-title {
    font-size: 1.25vw;
    margin-bottom: 2.083vw;
  }
}

@media only screen and (max-width: 960px) {
  .sns-title {
    font-size: 18px;
    margin-bottom: 1.2em;
  }
}

.sns-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}

.sns-list .sns-item:last-of-type {
  margin-right: 0;
}

@media only screen and (min-width: 961px) {
  .sns-list {
    margin: 0 auto 3.3333vw;
    width: 21.3541vw;
  }
}

@media only screen and (max-width: 960px) {
  .sns-list {
    margin-bottom: 10vw;
  }
}

.sns-item img {
  width: 100%;
}

.sns-item--facebook {
  width: 14.6341%;
}

.sns-item--twitter {
  width: 16.5853%;
  max-width: 68px;
}

.sns-item--instagram {
  width: 15.12195%;
  max-width: 61px;
}

.sns-item--youtube {
  width: 16.5853%;
  max-width: 65px;
}

.rating-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-bottom: 6vw;
}

.esrb-logo {
  max-width: 100px;
  margin-right: 2vw;
  min-width: 65px;
}

@media only screen and (min-width: 961px) {
  .esrb-logo {
    width: 4.53125vw;
  }
}

@media only screen and (max-width: 960px) {
  .esrb-logo {
    width: 16vw;
    margin-right: 5vw;
  }
}

.esrb-logo img {
  width: 100%;
}

.esrb-common-logo {
  min-width: 44px;
  width: 3.0359375vw;
  max-width: 67px;
}

.esrb-common-logo img {
  width: 100%;
}

@media only screen and (max-width: 960px) {
  .esrb-common-logo {
    width: 10.72vw;
  }
}

.discuss-bnr {
  text-align: center;
  width: 10.8vw;
  margin: 0 auto 3.3vw;
  max-width: 206px;
}

.discuss-bnr img {
  border: 1px solid #fff;
  width: 100%;
}

@media only screen and (max-width: 960px) {
  .discuss-bnr {
    width: 42vw;
    margin-bottom: 10vw;
  }
}

.announce-box {
  background: #770000;
}
.announce-box p {
  font-size: 14px;
  font-weight: 700;
  line-height: 1.2;
  text-align: center;
}
.announce-box p a {
  color: #FFF;
  display: block;
  padding: 1em 3.75%;
}
@media only screen and (min-width: 961px) {
  .hide-pc {
    display: none;
  }
  .announce-box p {
    font-size: 20px;
    margin-right: auto;
    margin-left: auto;
    max-width: 1120px;
    transition: opacity .2s ease;
  }
  .announce-box p:hover {
    opacity: .8;
  }
}
