﻿/*---- common ----*/
@import url("footer.css");

/*---- resetCss ----*/
body {
  margin: 0;
  padding: 0;
  width: 100%;
  font: normal 100% "Microsoft YaHei", \5b8b\4f53, Arial, Helvetica, sans-serif;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  -webkit-text-size-adjust: 100%;
  background: #000;
  overflow-x: hidden;
}
div, p, ul, ol, li, dl, dt, dd, h1, h2, h3, h4, h5, h6, form, input, select, textarea, table, td {
  margin: 0;
  padding: 0;
}
area {
  outline: none;
}
img {
  border: 0;
  object-fit: cover;
}
.img-fluid {
  max-width: initial;
  width: 100%;
}
input {
  -webkit-appearance: none;
  outline: none;
  border-radius: 0;
}
input::-ms-clear {
  display: none;
}
ol, ul {
  list-style: none;
}
a {
  text-decoration: none;
  outline: none;
  cursor: pointer;
}
.mob {
  display: none;
}

/*---- scrollBar ----*/
::-webkit-scrollbar {
  height: 5px;
  overflow: visible;
  width: 5px;
}
::-webkit-scrollbar-thumb {
  background-color: #d10003;
  background-clip: padding-box;
  border: solid transparent;
  border-width: 0 0 0 0px;
  min-height: 28px;
  padding: 100px 0 0;
  box-shadow: inset 1px 1px 0 rgba(0, 0, 0, 0), inset 0 -1px 0 rgba(0, 0, 0, 0);
}
::-webkit-scrollbar-thumb:hover {
  background-color: #d10003;
  box-shadow: inset 1px 1px 1px rgba(0, 0, 0, 0);
}
::-webkit-scrollbar-thumb:active {
  background-color: #d10003;
  box-shadow: inset 1px 1px 3px rgba(0, 0, 0, 0);
}
::-webkit-scrollbar-track {
  background-color: #19181e;
}

/*---- swiperCss ----*/
.swiper-pagination-bullet:focus, .swiper-button-prev:focus, .swiper-button-next:focus {
  outline: none;
}
.swiper-button-prev, .swiper-button-next {
  position: absolute;
  padding-top: 122.93%;
  top: 50%;
  width: 100%;
  transition: all 0.5s;
}
.swiper-button-prev {
  left: 10px;
  background: url(../prev.png) no-repeat 0 0;
  background-size: 100%;
}
.swiper-button-prev:hover {
  left: 0px;
}
.swiper-button-next {
  right: 10px;
  background: url(../next.png) no-repeat 0 0;
  background-size: 100%;
}
.swiper-button-next:hover {
  right: 0px;
}
.swiper-button-prev:after, .swiper-button-next:after {
  display: none;
}

/*---- nav ----*/
nav {
  position: absolute;
  width: 100%;
  height: 6.88vw;
  top: 0;
  left: 0;
  background: url(../fixed_top.png) no-repeat center top;
  background-size: cover;
  z-index: 8;
}
.content {
  position: relative;
  width: 67.89%;
  margin: 0 auto;
  z-index: 1;
}
.logo {
  position: absolute;
  margin-top: -2%;
  width: 26.85%;
  left: 2.1%;
}
.menu {
  position: absolute;
}
.menu:after {
  content: "";
  position: absolute;
  padding-top: 111.21%;
  bottom: 120%;
  left: 70%;
  width: 139.67%;
  background: url(../top_nav_on.png) no-repeat left top;
  background-size: cover;
  transition: all 0.6s;
  z-index: -1;
}
.menu.m1 {
  margin-top: 1.4%;
  padding-top: 7.39%;
  width: 60%;
  left: 27.6%;
}
.menu.m2 {
  margin-top: 2.5%;
  padding-top: 7.77%;
  width: 11.85%;
  left: 38.65%;
}
.menu.m3 {
  margin-top: 1.1%;
  padding-top: 7.46%;
  width: 11.62%;
  left: 49.55%;
}
.menu.m4 {
  margin-top: 1.5%;
  padding-top: 7.7%;
  width: 12.62%;
  left: 60.35%;
}
.menu.m5 {
  margin-top: 1.9%;
  padding-top: 7.7%;
  width: 11.85%;
  left: 72.15%;
}
.menu.m1 span {
  background: url(../top_n1.png) no-repeat center center;
  background-size: 88%;
}
.menu.m2 span {
  background: url(../top_n2.png) no-repeat center center;
  background-size: 88%;
}
.menu.m3 span {
  background: url(../top_n3.png) no-repeat center center;
  background-size: 88%;
}
.menu.m4 span {
  background: url(../top_n4.png) no-repeat center center;
  background-size: 88%;
}
.menu.m5 span {
  background: url(../top_n5.png) no-repeat center center;
  background-size: 88%;
}
.menu:hover:after, .menu.on:after {
  bottom: -15px;
  left: 0;
}
.menu span {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 2;
  transition: all 0.6s;
}
.menu:hover span, .menu.on span {
  transform: rotate(5deg);
}
.menu_right {
  display: flex;
  justify-content: space-between;
  position: absolute;
  margin-top: 4.3%;
  width: 6.54%;
  right: 6.05%;
  z-index: 1;
}
.menu_share {
  position: relative;
  padding-top: 44.7%;
  width: 43.55%;
  background: url(../menu_share.png) no-repeat 0 0;
  background-size: cover;
  transition: transform 0.4s;
  cursor: pointer;
}
.btn_music {
  padding-top: 44.7%;
  width: 44%;
  background: url(../menu_music_on.png) no-repeat center top;
  background-size: cover;
  transition: transform 0.4s;
  cursor: pointer;
}
.menu_share:hover, .btn_music:hover {
  transform: scale(1.1);
  transform-origin: center bottom;
}
.btn_music.off {
  background: url(../menu_music_off.png) no-repeat center top;
  background-size: cover;
}
.menu_open {
  display: none;
  position: absolute;
  padding-top: 33%;
  width: 378.25%;
  left: -135%;
}
.menu_share:hover .menu_open {
  display: block;
}
.menu_cont {
  position: relative;
  width: 100%;
  background: #000;
  border-radius: 5px;
  padding: 7.15% 4.29%;
  box-sizing: border-box;
}
.menu_cont:after {
  content: "";
  position: absolute;
  top: -7px;
  left: 50%;
  transform: translate(-50%, 0) rotate(45deg);
  width: 10.41%;
  height: 10.41%;
  background: #000;
}
.follow_us a {
  position: relative;
  display: inline-block;
  margin: 0 6.25%;
  padding-top: 34.38%;
  width: 34.38%;
  opacity: 0.7;
}
.follow_us a:hover {
  opacity: 1;
}
.followUs_fb {
  background: url(../followus_fb.png);
  background-size: cover;
}
.followUs_yt {
  background: url(../followus_yt.png);
  background-size: cover;
}
.followUs_ds {
  background: url(../followus_ds.png);
  background-size: cover;
}
.followUs_societies {
  background: url(../followus_societies.png);
  background-size: cover;
}
.followUs_twitter {
  background: url(../followus_twitter.png);
  background-size: cover;
}
.followUs_tg {
  background: url(../followus_tg.png);
  background-size: cover;
}

/*---- fixed_bg ----*/
.fixed_bg {
  position: fixed;
  width: 100%;
  height: 100%;
  top: 0;
  left: 50%;
  transform: translate(-50%, 0);
  z-index: 0;
}
.fixed_bg video {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.wrap_line {
  position: relative;
  background: url(../wrap_line.png) no-repeat center top;
  background-size: 199.4%;
  z-index: 2;
}

/*---- header ----*/
header {
  position: relative;
  height: 57vw;
}
.header_bg {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 50%;
  transform: translate(-50%, 0);
  background: url(../header2.webp) no-repeat center top;
  background-size: cover;
  overflow: hidden;
  animation-name: hmask;
  animation-duration: .6s;
  animation-delay: .5s;
  animation-fill-mode: backwards;
  z-index: -1;
}
  /* 左到右遮罩 */
  @keyframes hmask {
    0% {
      clip-path: polygon(0 0, 0.1% 0, 0.1% 100%, 0% 100%);
    }
    100% {
      clip-path: polygon(0 0, 100% 0, 100% 100%, 0% 100%);
    }
  }
.role1 {
  position: absolute;
  margin-top: 10.8%;
  width: 86.842%;
  left: 50%;
  transform: translate(-50%);
}
.star1 {
  position: absolute;
  background: url(../star1.png) no-repeat 0 0;
  background-size: 100% 100%;
}
.star2 {
  position: absolute;
  background: url(../star2.png) no-repeat 0 0;
  background-size: 100% 100%;
}
header .star1, header .star2 {
  animation-name: spin;
  animation-iteration-count: infinite;
  animation-timing-function: linear;
}
  /* 旋轉 */
  @keyframes spin {
    0% {
      transform: rotate(0deg);
    }
    100% {
      transform: rotate(360deg);
    }
  }
header .s1 {
  margin-top: 8.4%;
  padding-top: 7.62%;
  left: -19%;
  width: 7.39%;
  animation-duration: 12s;
}
header .s2 {
  margin-top: 44.62%;
  padding-top: 4.54%;
  left: -16%;
  width: 4.62%;
  animation-duration: 11s;
}
header .s3 {
  margin-top: 14.85%;
  padding-top: 5.7%;
  right: 0;
  width: 5.47%;
  animation-duration: 9s;
}
header .s4 {
  margin-top: 61.23%;
  padding-top: 6.08%;
  right: -7.85%;
  width: 6.08%;
  animation-duration: 6s;
}
.pv_box {
  position: absolute;
  margin-top: 44.16%;
  padding-top: 5.92%;
  right: 27%;
  width: 5.92%;
  background: url(../pv.png) no-repeat 0 0;
  background-size: 100%;
  cursor: pointer;
  z-index: 1;
}
.slogan {
  position: absolute;
  margin-top: 42.16%;
  width: 53.85%;
  left: 0;
  pointer-events: none;
}
header .btn_prelogin {
  position: absolute;
  margin-top: 48.77%;
  width: 39.38%;
  right: 5.92%;
  opacity: 0;
  animation: infinite-shake 3.5s infinite;
  animation-delay: .5s;
  transition: .5s;
  transition-delay: .5s;
  z-index: 2;
}
header .btn_warmup {
  position: absolute;
  margin-top: 48.77%;
  width: 39.38%;
  left: 6.11%;
  opacity: 0;
  animation: infinite-shake 4.5s infinite;
  animation-delay: .5s;
  transition: .5s;
  transition-delay: .5s;
  z-index: 2;
}
  @keyframes infinite-shake {
    from {
      -webkit-transform: scale3d(1, 1, 1);
      transform: scale3d(1, 1, 1);
    }
    85%, 95%, 88% {
      -webkit-transform: scale3d(1, 1, 1);
      transform: scale3d(1, 1, 1);
    }
    87.5%, 92.5%, 97.5% {
      -webkit-transform: translate3d(20px, -5px, 0);
      transform: translate3d(20px, -5px, 0);
    }
    to {
      -webkit-transform: scale3d(1, 1, 1);
      transform: scale3d(1, 1, 1);
    }
  }
header .btn_prelogin.fadein, header .btn_warmup.fadein {
  opacity: 1;
}
header .btn_prelogin img, header .btn_warmup img {
  width: 100%;
}

/*---- 遊戲新聞NEWS ----*/
.news {
  position: relative;
  margin: 0 auto;
  padding-bottom: 4.5%;
  width: 72.92%;
  background: url(../bg.png) no-repeat top center;
  background-size: 100%;
  z-index: 0;
}
.news .title {
  position: absolute;
  top: -16.5%;
  left: 0;
  width: 33.35%;
}
.news .content {
  position: relative;
  margin-top: -3%;
  padding-top: 5%;
  width: 94.28%;
}
.news .more {
  position: absolute;
  padding-top: 5.71%;
  right: -2.3%;
  top: -4%;
  width: 6.07%;
  background: url(../more.png) no-repeat center top;
  background-size: 100%;
  z-index: 2;
}
.news_list .new {
  background-image: url(../tab-new.png) !important;
  background-repeat: no-repeat !important;
  background-size: cover !important;
}

/*---- 輪播Banner ----*/
.bn {
  width: 51.51%;
  clip-path: polygon(0 0, 100% 0, 99% 100%, 1% 100%);
}

/*---- 遊戲新聞列表List ----*/
.news_content {
  position: relative;
  margin: 0 auto;
  margin-right: 0;
  padding: .75%;
  width: 45.45%;
  background: #000;
  clip-path: polygon(0 0, 100% 0, 99% 100%, 1% 100%);
}
.news_inner {
  position: relative;
  background: #00000000;
}

/*---- 新聞列表List 類別 ----*/
.news_list {
  position: relative;
  padding-left: 3.3%;
  letter-spacing: 0;
}
.news_list li:nth-child(1) {
  background-image: url(../tab-new.png);
  background-repeat: no-repeat !important;
  background-size: 100% !important;
  background-position: center center !important;
}
.news_list li.active:nth-child(1) {
  background-image: url(../tab-new-active.png) !important;
}
.news_list li:nth-child(2) {
  background-image: url(../tab-news.png) !important;
  background-repeat: no-repeat !important;
  background-size: 85% !important;
  background-position: center center !important;
}
.news_list li.active:nth-child(2) {
  background-image: url(../tab-news-active.png) !important;
}
.news_list li:nth-child(3) {
  background-image: url(../tab-event.png) !important;
  background-repeat: no-repeat !important;
  background-size: 100% !important;
  background-position: center center !important;
}
.news_list li.active:nth-child(3) {
  background-image: url(../tab-event-active.png) !important;
}
.news_list li:nth-child(4) {
  background-image: url(../tab-system.png) !important;
  background-repeat: no-repeat !important;
  background-size: 85% !important;
  background-position: center center !important;
}
.news_list li.active:nth-child(4) {
  background-image: url(../tab-system-active.png) !important;
}
.news_list li {
  display: inline-block;
  padding: 1% 5%;
  padding-top: 7.16%;
  cursor: pointer;
  width: 19.33%;
}

/*---- 新聞列表內容 ----*/
.news_list_item {
  display: none;
  padding: 3.33%;
}
.news_list_item.active {
  display: block;
}
.news_list_item.active ul {
  animation: fadeIn 0.3s ease-in-out forwards;
}
.news_list_item ul {
  list-style: none;
  opacity: 0;
  z-index: 1;
}
.news_list_item ul li {
  display: block;
  width: 100%;
}
.news_list_item ul li a {
  border-bottom: 1px solid rgba(255, 255, 255, 0.15);
  position: relative;
  display: block;
  padding: 1.26% 0 1.43%;
  padding-left: 1.66%;
  color: #fff;
  letter-spacing:  0.08%;
  transition: 0.5s;
}
.news_list_item .system-title {
  font-size: 0.85vw;
  display: -webkit-box;
  text-overflow: ellipsis;
  -webkit-line-clamp: 1;
  -webkit-box-orient: vertical;
  word-break: break-all;
  overflow: hidden;
}
.news_list_item .system-title .tt {
  display: inline;
  margin-bottom: initial;
}
.newsdetails-newsbadge {
  background: #61fbea;
  background-size: 51% 100%;
}
.newsdetails-actbadge {
  background: #f9be22;
  background-size: 51% 100%;
}
.newsdetails-sysbadge {
  background: #b19ffe;
  background-size: 51% 100%;
}
.news_list_item ul li .newsdetails-badge, .newsdetails-newsbadge, .newsdetails-sysbadge {
  display: inline-block;
  margin-bottom: 1%;
  padding: 0.33% 3.2%;
  color: #000000;
  font-weight: 400;
  text-align: center;
  vertical-align: middle;
}
.news_list_item .systemtime {
  display: block;
  color: rgb(255, 255, 255);
  font-size: 0.78vw;
  text-align: left;
  letter-spacing: 0;
}

/*---- 角色介紹 ----*/
.character {
  position: relative;
  margin: 0 auto;
  margin-top: 2.8%;
  height: 79.22vw;
  width: 68.75%;
}
.character .title {
  position: absolute;
  width: 39.39%;
  top: 4.2%;
  right: 3.6%;
  z-index: 2;
}
.character_wrap {
  position: absolute;
  top: 0;
  left: 50%;
  margin-left: -72.72%;
  width: 145.45%;
  height: 100%;
}
.character .role1_2.mob, .character .role2_2.mob, .character .role3_2.mob, .character .role4_2.mob {
  display: none;
}
.character .role1_bg {
  position: absolute;
  width: 65.26%;
  top: 7.10%;
  left: 4.35%;
  animation-duration: 0.3s;
}
.character .role1_1 {
  position: absolute;
  width: 21.82%;
  top: 23.60%;
  right:  38.13%;
  animation-duration: 0.3s;
}
.character .role1_2 {
  position: absolute;
  width: 62.70%;
  top: 19.62%;
  right: 16.56%;
  animation-duration: 0.3s;
}
.character .role2_bg {
  position: absolute;
  width: 46.98%;
  top: 0;
  left: 12.5%;
  animation-duration: 0.3s;
}
.character .role2_1 {
  position: absolute;
  width: 27.29%;
  top: 39.70%;
  left: 47.92%;
  animation-duration: 0.3s;
}
.character .role2_2 {
  position: absolute;
  width: 28.85%;
  top: 33.21%;
  left: 31.25%;
  animation-duration: 0.3s;
}
.character .role3_bg {
  position: absolute;
  width: 73.07%;
  top: 3.67%;
  left: 5.67%;
  animation-duration: 0.3s;
}
.character .role3_1 {
  position: absolute;
  width: 22.34%;
  top: 24.22%;
  left: 39.53%;
  animation-duration: 0.3s;
}
.character .role3_2 {
  position: absolute;
  width: 34.73%;
  top: 19.63%;
  left: 34.64%;
  animation-duration: 0.3s;
}
.character .role4_bg {
  position: absolute;
  width: 97.76%;
  top: 0;
  left: 0;
  animation-duration: 0.3s;
}
.character .role4_1 {
  position: absolute;
  width: 20.68%;
  top: 19.62%;
  left: 39.53%;
  animation-duration: 0.3s;
}
.character .role4_2 {
  position: absolute;
  width: 45.78%;
  top: 13.12%;
  left: 34.64%;
  animation-duration: 0.3s;
}
.character .text {
  position: absolute;
  top: 58.98%;
  left: 29.43%;
  width: 33.23%;
  height: 21.30vw;
  background: url(../text.png) no-repeat 0 0;
  background-size: 100%;
  display: flex;
  flex-wrap: wrap;
  align-content: center;
  line-height: 1.35vw;
  font-size: 0.94vw;
  color: #fff;
  box-sizing: border-box;
  padding: 0 6.25%;
}
.character .roleTextHide {
  position: absolute;
  padding-top: 10.34%;
  top:  14.11%;
  right: -6.90%;
  width: 10.34%;
  background: url(../roletexthide.png) no-repeat 0 0;
  background-size: 100%;
}
.character .text p {
  width: 100%;
}
.character .mask_role {
  position: absolute;
  width: 29.93%;
  top: -19.54%;
  left: -14.11%;
}
.character .name_role {
  position: absolute;
  top: 19.32%;
  left: 59.89%;
}
.character .name_role1 {
  padding-top: 15.83%;
  width: 24.27%;
  background: url(../name_role1.png) no-repeat 0 0;
  background-size: 100%;
}
.character .name_role2 {
  padding-top: 15.99%;
  width: 24.21%;
  background: url(../name_role2.png) no-repeat 0 0;
  background-size: 100%;
}
.character .name_role3 {
  padding-top: 17.60%;
  width: 26.09%;
  background: url(../name_role3.png) no-repeat 0 0;
  background-size: 100%;
}
.character .name_role4 {
  padding-top: 15.83%;
  width: 26.09%;
  background: url(../name_role4.png) no-repeat 0 0;
  background-size: 100%;
}
.character .roleTextShow {
  position: absolute;
  margin-bottom: -2.5%;
  padding-top: 18.02%;
  left: 75.11%;
  bottom: 0;
  width: 20.81%;
  background: url(../roletextshow.png) no-repeat 0 0;
  background-size: 100%;
  display: none;
}
.character .mark_role.r1 {
  position: absolute;
  width: 43.57%;
  top: -23.67%;
  left: 57.99%;
}
.character .mark_role.r2 {
  position: absolute;
  width: 41.18%;
  top: -24.47%;
  left: 57.99%;
}
.character .mark_role.r3 {
  position: absolute;
  width: 39.77%;
  top: -24.17%;
  left: 57.99%;
}
.character .mark_role.r4 {
  position: absolute;
  width: 33.63%;
  top: -23.97%;
  left: 57.99%;
}
.character .role_change {
  position: absolute;
  padding-top: 5.83%;
  top: 69.2%;
  right: 21.35%;
  width: 10.93%;
  background: url(../role_change.png) no-repeat 0 0;
  background-size: 100%;
  background-size: center top;
}
.character .role_change.on {
  background-position: center bottom;
}
.character .show {
  display: block;
}
.character .hide {
  display: none;
}
.character .prev, .character .next {
  position: absolute;
  width: 8.26%;
  z-index: 1;
}
.character .prev {
  top: 48.51%;
  left: 1%;
}
.character .next {
  top: 49.71%;
  right: 1%;
}
.character .pagination_box {
  position: absolute;
  padding-bottom: 2%;
  top: 76.23%;
  right: 5.75%;
  width: 36.81%;
  background: url(../pagination.png) no-repeat 0 0;
  background-size: 100%;
  z-index: 1;
}
.character_pagination {
  width: 55.55%;
  height: 17.69%;
  margin: 5.76% 0 0 20.57%;
}
.character_pagination .swiper-slide {
  padding-top: 31.85%;
  width: 30.37%;
  margin: 0 1.48%;
  cursor: pointer;
}
.character_pagination .bullet1 {
  background: url(../bullet1.png) no-repeat 0 0;
  background-size: cover;
}
.character_pagination .bullet2 {
  background: url(../bullet2.png) no-repeat 0 0;
  background-size: cover;
}
.character_pagination .bullet3 {
  background: url(../bullet3.png) no-repeat 0 0;
  background-size: cover;
}
.character_pagination .bullet4 {
  background: url(../bullet4.png) no-repeat 0 0;
  background-size: cover;
}
.character_pagination .swiper-slide-thumb-active {
  background-position: right 0;
}
.character .pagination_prev {
  position: absolute;
  padding-top: 11.31%;
  top: 38%;
  left: 12.5%;
  width: 7.33%;
  background: url(../pagination_prev.png) no-repeat 0 0;
  background-size: 100%;
  cursor: pointer;
}
.character .pagination_next {
  position: absolute;
  padding-top: 11.31%;
  top: 36%;
  right: 16.46%;
  width: 8.43%;
  background: url(../pagination_next.png) no-repeat 0 0;
  background-size: 100%;
  cursor: pointer;
}
.character .s1 {
  padding-top: 13.86%;
  top: -.3%;
  left: -2.19%;
  width: 13.18%;
}
.character .s2 {
  padding-top: 8.40%;
  bottom: 3.48%;
  left: -6.82%;
  width: 8.10%;
}
.character .s3 {
  padding-top: 5.23%;
  top: 27.37%;
  right: 0;
  width: 5.15%;
}
.character .s4 {
  padding-top: 2.95%;
  bottom: 13.45%;
  right: -2.34%;
  width: 2.80%;
}
.character .s5 {
  padding-top: 8.03%;
  top: 21.45%;
  left: -16.59%;
  width: 7.95%;
}
.character .s6 {
  padding-top: 8.03%;
  top: 9.36%;
  right: -16.59%;
  width: 7.95%;
}
.character .s7 {
  padding-top: 8.03%;
  bottom: 33.17%;
  right: 11.32%;
  width: 7.95%;
}

/*---- 校園生活 ----*/
.school {
  position: relative;
  height: 43.80vw;
  width: 68.75%;
  margin: 0 auto;
}
.school .title {
  position: absolute;
  width: 50.53%;
  top: .4%;
  left: 2.04%;
}
.school .wrap {
  position: absolute;
  padding-top: 52.80%;
  top: 7.22%;
  left: 4.42%;
  width: 84.39%;
  background: url(../wrap.png) no-repeat 0 0;
  background-size: 100%;
}
.school_wrap {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.school .slide1_tit {
  position: absolute;
  width: 63.25%;
  top: 22.70%;
  left: 6.59%;
  animation-duration: 0.3s;
}
.school .slide1_role {
  position: absolute;
  width: 36.51%;
  top: 4.98%;
  right: 7.19%;
  animation-duration: 0.3s;
}
.school .slide2_tit {
  position: absolute;
  width: 43.71%;
  top: 28.56%;
  left: 11.54%;
  animation-duration: 0.3s;
}
.school .slide2_role {
  position: absolute;
  width: 22.80%;
  top: 9.19%;
  right: 18.25%;
  animation-duration: 0.3s;
}
.school .slide3_tit {
  position: absolute;
  width: 41.89%;
  top: 27.65%;
  left: 12.12%;
  animation-duration: 0.3s;
}
.school .slide3_role {
  position: absolute;
  width: 25.83%;
  top: 11.20%;
  right: 19.54%;
  animation-duration: 0.3s;
}
.school .slide_text {
  position: absolute;
  top: 62.93%;
  left: 16.59%;
  line-height: 1.35vw;
  font-size: 0.93vw;
  color: #fff;
  animation-duration: 0.3s;
}
.school .thumbnail_box {
  position: absolute;
  padding-top: 20.15%;
  top: 63.06%;
  left: 41.66%;
  width: 24.77%;
  cursor: pointer;
  animation-duration: 0.3s;
}
.school .thumbnail {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: url(../thumbnail.png) no-repeat 0 0;
  background-size: 100%;
  transition: transform 0.8s;
}
.school .thumbnail img {
  position: absolute;
  top: 7.51%;
  left: 8.86%;
  width: 85.93%;
  height: auto;
}
.school .thumbnail:hover {
  transform: rotate(10deg) scale(1.1);
}
.school .zoom {
  position: absolute;
  padding-top: 22.32%;
  top: -8.23%;
  left: 80.73%;
  width: 22.93%;
  background: url(../zoom.png) no-repeat 0 0;
  background-size: 100%;
}
.school .prev, .school .next {
  position: absolute;
  width: 8.26%;
  z-index: 1;
}
.school .prev {
  top: 42.91%;
  left: -.2%;
}
.school .next {
  top: 42.71%;
  right: 0%;
}
.school .s1 {
  padding-top: 6.51%;
  top: -1%;
  left: 38.40%;
  width: 6.28%;
}
.school .s2 {
  padding-top: 6.51%;
  right: -3.56%;
  bottom: 7.38%;
  width: 6.36%;
}
.school .s3 {
  padding-top: 6.51%;
  top: 57.87%;
  left: -9.09%;
  width: 6.18%;
}

/*---- 異世界之旅 ----*/
.metaverse {
  position: relative;
  height: 47.65vw;
  width:  67.70%;
  margin: 0 auto;
}
.metaverse .title {
  position: absolute;
  top: -2.2%;
  left: 41.84%;
  width: 52.38%;
}
.metaverse .wrap {
  position: absolute;
  padding-top: 53.61%;
  top: 12.78%;
  left: 9.23%;
  width: 85.69%;
  background: url(../wrap.png) no-repeat 0 0;
  background-size: 100%;
}
.metaverse_wrap {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.metaverse .slide1_tit {
  position: absolute;
  width: 62.30%;
  top: 24.8%;
  left: 34%;
  animation-duration: 0.3s;
}
.metaverse .slide1_role {
  position: absolute;
  width: 38.30%;
  top: 20.5%;
  left: 3.53%;
  animation-duration: 0.3s;
}
.metaverse .slide2_tit {
  position: absolute;
  width: 41.84%;
  top: 27.21%;
  left: 43.69%;
  animation-duration: 0.3s;
}
.metaverse .slide2_role {
  position: absolute;
  width: 27.53%;
  top: 13.26%;
  left: 15.15%;
  animation-duration: 0.3s;
}
.metaverse .slide3_tit {
  position: absolute;
  width: 42.53%;
  top: 26.12%;
  left: 45.46%;
  animation-duration: 0.3s;
}
.metaverse .slide3_role {
  position: absolute;
  width: 54.61%;
  top: 17.31%;
  left: 0;
  animation-duration: 0.3s;
}
.metaverse .slide4_tit {
  position: absolute;
  width: 42.07%;
  top: 26.86%;
  left: 45.92%;
  animation-duration: 0.3s;
}
.metaverse .slide4_role {
  position: absolute;
  width: 30.30%;
  top: 9.68%;
  left: 16.61%;
  animation-duration: 0.3s;
}
.metaverse .slide_text {
  position: absolute;
  top: 61.82%;
  left: 55.46%;
  line-height: 1.35vw;
  font-size: 0.93vw;
  color: #fff;
  animation-duration: 0.3s;
}
.metaverse .thumbnail_box {
  position: absolute;
  padding-top: 19.30%;
  top: 61.8%;
  left: 23.92%;
  width: 24.84%;
  cursor: pointer;
  animation-duration: 0.3s;
}
.metaverse .thumbnail {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: url(../thumbnail.png) no-repeat 0 0;
  background-size: 100%;
  transition: transform 0.8s;
}
.metaverse .thumbnail img {
  position: absolute;
  top: 10.96%;
  left: 8.66%;
  width: 85.13%;
}
.metaverse .thumbnail:hover {
  transform: rotate(-10deg) scale(1.1);
}
.metaverse .zoom {
  position: absolute;
  padding-top: 19.50%;
  top: 18.86%;
  left: 93.80%;
  width: 21.67%;
  background: url(../zoom.png) no-repeat 0 0;
  background-size: 100%;
}
.metaverse .prev, .metaverse .next {
  position: absolute;
  width: 8.26%;
  z-index: 1;
}
.metaverse .prev {
  top: 42.91%;
  left: -.2%;
}
.metaverse .next {
  top: 42.71%;
  right: -.2%;
}
.metaverse .s1 {
  padding-top: 8%;
  bottom: 15.15%;
  left: 12.07%;
  width: 6.23%;
}
.metaverse .s2 {
  padding-top: 6.53%;
  top: 10.75%;
  left: -14.61%;
  width: 6.23%;
}
.metaverse .s3 {
  padding-top: 4.46%;
  bottom: 23.98%;
  right: -14.61%;
  width: 4.23%;
}

/*---- 遊戲特色 ----*/
.feature {
  position: relative;
  height: 94.63vw;
  width: 67.70%;
  margin: 0 auto;
}
.feature .title {
  position: absolute;
  top: -1%;
  left: 3.07%;
  width: 36.07%;
}
.shape-focus {
  position: absolute;
  top: 14.26%;
  left: 50%;
  margin-left: -38.15%;
  width: 76.42%;
  height: 32.59%;
}
.shape-focus .slider-panel {
  position: relative;
  width: 100%;
  height: 100%;
}
.shape-focus .slider {
  position: absolute;
  left: 0;
  top: 59.67%;
  border: 1.04vw solid #fff;
  padding: 1.04vw;
  width: 100%;
  height: 100%;
  background: #000;
  transform-origin: center center;
  visibility: hidden;
  z-index: 0;
  opacity: 0;
  transform: rotate(0deg) scale(0.8);
  transition: left 0.2s ease-in, top 0.2s ease-in, transform 0.2s ease-in,
    opacity 0.2s ease-in;
}
.shape-focus .slider-panel .slider.visible {
  visibility: visible;
}
.shape-focus .slider-panel .slider .content {
  background: blueviolet;
  width: 100%;
  height: 100%;
}
.shape-focus .slider-panel .slider .content img {
  display: block;
  width: 100%;
  height: 100%;
}
.shape-focus .slider-panel .slider .content img.mob {
  display: none;
}
.shape-focus .next-btn, .shape-focus .prev-btn {
  position: absolute;
  padding-top: 122.93%;
  width: 100%;
  overflow: hidden;
  text-indent: -999px;
  line-height: 0;
  font-size: 0;
  transition: all 0.5s;
  cursor: pointer;
}
.shape-focus .prev-btn {
  left: -12.09%;
  top: 34.16%;
  width: 11.25%;
  background: url(../prev.png) no-repeat 0 0;
  background-size: 100%;
}
.shape-focus .prev-btn:hover {
  left: -13.09%;
}
.shape-focus .next-btn {
  right: -19.73%;
  top: 36.67%;
  width: 11.25%;
  background: url(../next.png) no-repeat 0 0;
  background-size: 100%;
}
.shape-focus .next-btn:hover {
  right: -20.73%;
}
.concept_box {
  position: absolute;
  left: 50%;
  bottom: 16.96%;
  transform: translate(-50%, 0);
  transition: all 1s;
  cursor: pointer;
}
.follow_us_bottom {
  position: absolute;
  bottom: 7.2vw;
  left: 50%;
  transform: translateX(-50%);
  width: 40%;
  height: 3.4vw;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.follow_us.follow_us_bottom a {
  margin: 0 auto;
  padding-top: 9.18%;
  width: 9.18%;
}
.feature .s1 {
  padding-top: 5.08%;
  top: 4.96%;
  left: 40.26%;
  width: 4.84%;
}
.feature .s2 {
  padding-top: 4.92%;
  top: 57.98%;
  left: 13.69%;
  width: 5%;
}
.feature .s3 {
  padding-top:  8.92%;
  top: 45.44%;
  right: -11.23%;
  width: 8.54%;
}
.feature .s4 {
  padding-top: 4.92%;
  top:  26.26%;
  left:  -17.89%;
  width: 5%;
}
.feature .s5 {
  padding-top: 9.53%;
  top: -.2%;
  right: -17.69%;
  width: 9.61%;
}

/*---- go top ----*/
.go_top {
  position: fixed;
  bottom: 0;
  left: 50%;
  margin-left: 31.25%;
  margin-bottom:  5.21%;
  padding-top: 6.87%;
  width: 6.87%;
  background: url(../go_top.png) no-repeat 0 0;
  background-size: cover;
  z-index: 2;
  cursor: pointer;
  display: none;
}

/*---- footer ----*/
footer {
  background: rgb(0, 0, 0);
  color: rgb(255, 255, 255);
}
footer p, footer ul {
  opacity: 1;
}
footer .company > img {
  width: 122px;
  height: auto;
}
footer img {
  width: initial;
  height: initial;
}
footer .grading img {
  vertical-align: middle;
}

/*---- aside ----*/
.noke_flex_pc {
  position: fixed;
  width: 12%;
  height: auto;
  padding-bottom: 14.5%;
  top: 26%;
  right: 1%;
  z-index: 68;
  display: block;
  cursor: pointer;
  background-image: url(../noke_flex_pc.webp);
  background-repeat: no-repeat;
  background-size: 100%;
  animation: shake10-2 5s infinite;
}
  @keyframes shake10-2 {
    75% {
      transform: rotate(0deg);
    }
    81% {
      transform: rotate(7deg);
    }
    93% {
      transform: rotate(-7deg);
    }
    87.5%, 100% {
      transform: rotate(0deg);
    }
  }
.noke_flex_sp {
  display: none;
}

/*---- 彈窗popup ----*/
.pop {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.8);
  z-index: 10;
  display: none;
}
.pop_bigPic_cont {
  border: 0.41vw solid #979797;
  position: absolute;
  width: 46.87%;
  height: 26.35vw;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  background: #000;
}
.pop_bigPic_cont .pop_close {
  position: absolute;
  padding-top: 8.61%;
  width: 8.61%;
  top: 0;
  right: -10.61%;
  background: url(../pop_close.png) no-repeat 0 0;
  background-size: 100%;
  cursor: pointer;
  z-index: 1;
}
.pop_bigPic_cont img {
  display: block;
  width: 100%;
  height: 100%;
}