@charset "utf-8";

#top #contents {
  min-height: 3000px;
  z-index: 5;
}
#top header {
  min-height: 1500px;
  position: relative;
  z-index: 10;
}
.top_movie {
  position: absolute;
}
/*.bgMC_wrap {
  top: 0;
  left: 0;
  width: 100%;
  min-width: 960px;
  height: 100vh;
  text-align: center;
  overflow: hidden;
}*/
#mask {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  background: url(../img/dot.png) 0 0 repeat;
  opacity: 0;
  z-index: 4;
}
.bgMC_wrap:after {
  content: url(../img/mv_bg.png);
  position: fixed;
  top: 40px;
  left: -500px;
  right: -500px;
  width: 1600px;
  height: 900px;
  margin: 0 auto;
  z-index: 0;
}
#bgImg {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  margin: 0 auto;
  z-index: 1;
}
#bgMC {
  position: fixed;
  top: 40px;
  right: 0;
  bottom: 0;
  left: 0;
  display: block;
  width: 1280px;
  height: 720px;
  margin: 0 auto;
  opacity: 0;
  z-index: 0;
  -webkit-transition: opacity 1s linear;
  -o-transition: opacity 1s linear;
  transition: opacity 1s linear;
}
.bgMC_wrap.canplay #bgImg {
  opacity: 0;
  -webkit-transition: opacity 0.7s linear 1.5s;
  -o-transition: opacity 0.7s linear 1.5s;
  transition: opacity 0.7s linear 1.5s;
}
.bgMC_wrap.canplay #bgMC {
  opacity: 1;
  -webkit-transition: opacity 0.7s linear 1.5s;
  -o-transition: opacity 0.7s linear 1.5s;
  transition: opacity 0.7s linear 1.5s;
}

.release {
  position: relative;
  top: 552px;
  left: 50%;
  width: 495px;
  margin-left: 132px;
}
.news_bg {
  position: absolute;
  top: 812px;
  right: 0;
  left: 0;
  width: 958px;
  margin: 0 auto;
  z-index: 10;
}
.news {
  position: relative;
  left: -5px;
  width: 970px;
  min-height: 46px;
  padding: 0 0 1px;
  background: url(../img/news_frame_middle.png) 0 0 repeat;
}
.news:before {
  content: url(../img/news_frame_header.png);
  position: absolute;
  bottom: 100%;
  left: 0;
  width: 966px;
  height: 29px;
}
.news:after {
  content: url(../img/news_frame_footer.png);
  position: absolute;
  top: 100%;
  left: 0;
  width: 966px;
  height: 32px;
}
.news h2 {
  position: relative;
  top: -4px;
  left: 16px;
  height: 27px;
}
#newsTgl {
  position: absolute;
  top: -4px;
  right: 16px;
  width: 90px;
  height: 28px;
  cursor: pointer;
  overflow: hidden;
  z-index: 2;
}
#newsTgl img {
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 90px;
  height: 29px;
  -webkit-transition: opacity 0.16s linear;
  -o-transition: opacity 0.16s linear;
  transition: opacity 0.16s linear;
}
#newsTgl img.unover {
  background: url(../img/news_open.png) no-repeat 100% 0;
}
#newsTgl img.over {
  background: url(../img/news_open.png) no-repeat 100% -28px;
}
#newsTgl.opened img.unover {
  background: url(../img/news_close.png) no-repeat 100% 0;
}
#newsTgl.opened img.over {
  background: url(../img/news_close.png) no-repeat 100% -29px;
}
#newsTgl img.unover,
#newsTgl:hover img.over,
#newsTgl.opened img.unover,
#newsTgl.opened:hover img.over {
  opacity: 1;
}
#newsTgl:hover img.unover,
#newsTgl img.over,
#newsTgl.opened:hover img.unover,
#newsTgl.opened img.over {
  opacity: 0;
}
.news ul {
  height: 18px;
  color: #110101;
  font-size: 14rem;
  line-height: 1.3;
  padding: 0 20px 0 22px;
  overflow: hidden;
  -webkit-transition: height 250ms ease-out;
  -o-transition: height 250ms ease-out;
  transition: height 250ms ease-out;
}
.news li {
  position: relative;
  margin: 0 0 18px 86px;
}
.news li a {
  color: #00649d;
  text-decoration: underline;
  -webkit-transition: 0.12s linear;
  -o-transition: 0.12s linear;
  transition: 0.12s linear;
}
.news li em {
  color: #f93366;
  font-weight: bold;
}
.news li a:hover {
  color: #f93366;
}
.news .date {
  position: absolute;
  top: 0;
  left: -86px;
  display: block;
  width: 86px;
}
.center_banner {
  position: absolute;
  top: 710px;
  right: 0;
  left: 0;
  width: 962px;
  margin: 0 auto;
}
.center_banner a {
  display: block;
  padding: 18px 0;
  border: 2px solid #fff;
  background: rgba(0,100,157,0.8);
  color: #fff;
  font-size: 21rem;
  font-weight: bold;
  text-align: center;
}
.center_banner a:hover {
  background: rgba(16,121,180,0.8);
  text-decoration: none;
}
.banner {
  position: absolute;
  top: 132px;
  left: 10px;
}
.banner li {
  position: relative;
  margin: 0 0 3px;
  -webkit-transform-origin: 0% 50%;
  -ms-transform-origin: 0% 50%;
  transform-origin: 0% 50%;
  -webkit-transform-style: preserve-3d;
  transform-style: preserve-3d;
  -webkit-animation: bannerIn 1s cubic-bezier(0.175, 0.885, 0.520, 1.650) both;
  animation: bannerIn 1s cubic-bezier(0.175, 0.885, 0.520, 1.650) both;
}
.banner li.new:after {
  position: absolute;
  top: -5px;
  left: -8px;
  content: url("../img/new.png");
  -webkit-animation: blink 2.5s ease-in-out infinite;
  animation: blink 2.5s ease-in-out infinite;
}
.banner li:nth-child(2) {
  -webkit-animation-delay: 0.1s;
  animation-delay: 0.1s;
}
.banner li:nth-child(3) {
  -webkit-animation-delay: 0.2s;
  animation-delay: 0.2s;
}
.banner li:nth-child(4) {
  -webkit-animation-delay: 0.3s;
  animation-delay: 0.3s;
}
.banner li:nth-child(5) {
  -webkit-animation-delay: 0.4s;
  animation-delay: 0.4s;
}
.banner li:nth-child(6) {
  -webkit-animation-delay: 0.5s;
  animation-delay: 0.5s;
}
.banner li:nth-child(7) {
  -webkit-animation-delay: 0.6s;
  animation-delay: 0.6s;
}
.banner li:nth-child(8) {
  -webkit-animation-delay: 0.7s;
  animation-delay: 0.7s;
}
.banner li:nth-child(9) {
  -webkit-animation-delay: 0.8s;
  animation-delay: 0.8s;
}
.banner li:nth-child(10) {
  -webkit-animation-delay: 0.9s;
  animation-delay: 0.9s;
}
.banner a {
  display: block;
  width: 205px;
  height: 68px;
  background: 0 0 no-repeat;
}
.banner a img {
  display: block;
  width: 205px;
  height: 68px;
  background: 0 100% no-repeat;
  opacity: 0;
  -webkit-transition: opacity 0.2s linear;
  -o-transition: opacity 0.2s linear;
  transition: opacity 0.2s linear;
}
.banner a:hover img {
  opacity: 1;
}
.banner a.patch01 {
  display: block;
  width: 198px;
  height: 52px;
  margin: 0 0 0 1px;
  padding: 9px 0 0;
  border: 2px solid #fff;
  background: rgba(0,100,157,0.8);
  color: #fff;
  font-size: 16rem;
  font-weight: bold;
  text-align: center;
  line-height: 1.4;
}
.banner a.patch01:hover {
  background: rgba(16,121,180,0.8);
  text-decoration: none;
}

.banner .first_run,
.banner .first_run img {
  background-image: url(../img/banner_first_run.png);
}
.banner .shop,
.banner .shop img {
  background-image: url(../img/banner_shop.png);
}
.banner .theme_song,
.banner .theme_song img {
  background-image: url(../img/banner_theme_song.png);
}
.banner .artbook,
.banner .artbook img {
  background-image: url(../img/banner_artbook.png);
}
.banner .benefits,
.banner .benefits img {
  background-image: url(../img/banner_benefits.png);
}
.banner .scratch,
.banner .scratch img {
  background-image: url(../img/banner_scratch.png);
}
.banner .radio,
.banner .radio img {
  background-image: url(../img/banner_radio.png);
}
.banner .rt_campaign,
.banner .rt_campaign img {
  background-image: url(../img/banner_rt_campaign.png);
}
.banner .play_report,
.banner .play_report img {
  background-image: url(../img/banner_play_report.png);
}
.banner .yuruichi,
.banner .yuruichi img {
  background-image: url(../img/banner_yuruichi.png);
}
.banner .enquete,
.banner .enquete img {
  background-image: url(../img/banner_enquete.png);
}
#dlc_banner {
  position: absolute;
  top: 88px;
  left: -webkit-calc(50% + 296px);
  left: calc(50% + 296px);
  display: block;
  width: 278px;
  height: 203px;
}
#dlc_banner .bnr {
  display: block;
  width: 278px;
  height: 203px;
  background: 0 0 no-repeat;
  -webkit-transform-origin: 40% 45%;
  -ms-transform-origin: 40% 45%;
  transform-origin: 40% 45%;
  -webkit-animation: rotateLoop 1.8s cubic-bezier(0.645, 0.045, 0.355, 1) infinite alternate;
  animation: rotateLoop 1.8s cubic-bezier(0.645, 0.045, 0.355, 1) infinite alternate;
}
#dlc_banner .bnr img {
  display: block;
  width: 278px;
  height: 203px;
  background: 0 100% no-repeat;
  opacity: 0;
  -webkit-transition: opacity 0.2s linear;
  -o-transition: opacity 0.2s linear;
  transition: opacity 0.2s linear;
}
#dlc_banner .bnr:hover img {
  opacity: 1;
}
#dlc_box {
  width: 965px;
  padding: 78px 0 0;
  background: url(../img/dlc/frame_header.png) 0 0 no-repeat;
  z-index: 1001;
  text-shadow:0px 3px 1px rgba(255,255,255,0.5),0px 2px 1px rgba(255,255,255,0.5),1px 2px 1px rgba(255,255,255,0.5),2px 2px 1px rgba(255,255,255,0.5),2px 1px 1px rgba(255,255,255,0.5),2px 0px 1px rgba(255,255,255,0.5),3px 0px 1px rgba(255,255,255,0.5),2px -1px 1px rgba(255,255,255,0.5),2px -2px 1px rgba(255,255,255,0.5),2px -3px 1px rgba(255,255,255,0.5),1px -3px 1px rgba(255,255,255,0.5),0px -3px 1px rgba(255,255,255,0.5),-1px -3px 1px rgba(255,255,255,0.5),-2px -3px 1px rgba(255,255,255,0.5),-3px -3px 1px rgba(255,255,255,0.5),-3px -2px 1px rgba(255,255,255,0.5),-3px -1px 1px rgba(255,255,255,0.5),-3px 0px 1px rgba(255,255,255,0.5),-3px 1px 1px rgba(255,255,255,0.5),-3px 2px 1px rgba(255,255,255,0.5),-2px 2px 1px rgba(255,255,255,0.5),-1px 2px 1px rgba(255,255,255,0.5);
}
#dlc_box .dlc_mid {
  text-align: center;
  background: url(../img/dlc/frame_middle.png) 0 0 repeat-y;
}
#dlc_box .inner {
  position: relative;
  top: -36px;
  margin: 0 0 -140px;
}
#dlc_box dl {
  margin: 0;
  font-size: 27rem;
  font-weight: bold;
  line-height: 1.4;
}
#dlc_box dt {
  margin: 0 0 1em;
  color: #e00;
}
#dlc_box dd {
}
#dlc_box dd p {
  margin: 0 0 1.3em;
}
#dlc_box dd .image {
  margin: 0 0 2.4em;
}
#dlc_box .btn {
  display: block;
  width: 279px;
  height: 86px;
  margin: 0 auto;
  background: url(../img/dlc/btn.png) 0 0 no-repeat;
}
#dlc_box .btn img {
  display: block;
  width: 279px;
  height: 86px;
  background: url(../img/dlc/btn.png) 0 100% no-repeat;
  opacity: 0;
  -webkit-transition: opacity 0.2s linear;
  -o-transition: opacity 0.2s linear;
  transition: opacity 0.2s linear;
}
#dlc_box .btn:hover img {
  opacity: 1;
}

#top #contents section {
  z-index: 7;
}
#sec1 {
  position: relative;
  width: 960px;
  margin: 0 auto 220px;
  text-align: center;
}

#sec1 #sec1-1 {
  position: absolute;
  top: -204px;
  left: 58px;
  -webkit-transform-origin: 150% 150%;
  -ms-transform-origin: 150% 150%;
  transform-origin: 150% 150%;
}
#sec1 #sec1-2 {
  position: absolute;
  top: -212px;
  left: 340px;
  -webkit-transform-origin: 50% 150%;
  -ms-transform-origin: 50% 150%;
  transform-origin: 50% 150%;
}
#sec1 #sec1-3 {
  position: absolute;
  top: -198px;
  left: 626px;
  -webkit-transform-origin: -50% 150%;
  -ms-transform-origin: -50% 150%;
  transform-origin: -50% 150%;
}
#sec1.invisible #sec1-1 {
  -webkit-animation: bounceOut 0.7s linear both;
  animation: bounceOut 0.7s linear both;
}
#sec1.visible #sec1-1 {
  -webkit-animation: bounceIn 0.7s linear 0.8s both;
  animation: bounceIn 0.7s linear 0.8s both;
}
#sec1.invisible #sec1-2 {
  -webkit-animation: bounceOut 0.7s linear both;
  animation: bounceOut 0.7s linear both;
}
#sec1.visible #sec1-2 {
  -webkit-animation: bounceIn 0.7s linear 1.1s both;
  animation: bounceIn 0.7s linear 1.1s both;
}
#sec1.invisible #sec1-3 {
  -webkit-animation: bounceOut 0.7s linear both;
  animation: bounceOut 0.7s linear both;
}
#sec1.visible #sec1-3 {
  -webkit-animation: bounceIn 0.7s linear 1.4s both;
  animation: bounceIn 0.7s linear 1.4s both;
}
#sec1 #sec1-4 {
  margin: 0 0 14px;
}
#sec1.invisible #sec1-4 {
  -webkit-transform: scale(0);
  -ms-transform: scale(0);
  transform: scale(0);
  -webkit-transition: all 0.3s cubic-bezier(0.6, -0.28, 0.735, 0.045) 0.2s;
  -o-transition: all 0.3s cubic-bezier(0.6, -0.28, 0.735, 0.045) 0.2s;
  transition: all 0.3s cubic-bezier(0.6, -0.28, 0.735, 0.045) 0.2s;
}
#sec1.visible #sec1-4 {
  -webkit-transform: scale(1);
  -ms-transform: scale(1);
  transform: scale(1);
  -webkit-transition: all 0.5s cubic-bezier(0.175, 0.885, 0.32, 1.275) 0.2s;
  -o-transition: all 0.5s cubic-bezier(0.175, 0.885, 0.32, 1.275) 0.2s;
  transition: all 0.5s cubic-bezier(0.175, 0.885, 0.32, 1.275) 0.2s;
}
#sec1 #sec1-5 {
}
#sec1.invisible #sec1-5 {
  -webkit-transform: scale(0);
  -ms-transform: scale(0);
  transform: scale(0);
  -webkit-transition: all 0.3s cubic-bezier(0.6, -0.28, 0.735, 0.045) 0.2s;
  -o-transition: all 0.3s cubic-bezier(0.6, -0.28, 0.735, 0.045) 0.2s;
  transition: all 0.3s cubic-bezier(0.6, -0.28, 0.735, 0.045) 0.2s;
}
#sec1.visible #sec1-5 {
  -webkit-transform: scale(1);
  -ms-transform: scale(1);
  transform: scale(1);
  -webkit-transition: all 0.5s cubic-bezier(0.175, 0.885, 0.32, 1.275) 0.3s;
  -o-transition: all 0.5s cubic-bezier(0.175, 0.885, 0.32, 1.275) 0.3s;
  transition: all 0.5s cubic-bezier(0.175, 0.885, 0.32, 1.275) 0.3s;
}

#top_battle_system {
  position: relative;
  width: 1184px;
  height: 640px;
  margin: 0 auto 240px;
}
#top_battle_system h2 {
  margin: 0 0 0 55px;
  position: relative;
  z-index: 10;
  -webkit-transform-origin: 80% 100%;
  -ms-transform-origin: 80% 100%;
  transform-origin: 80% 100%;
}
/*#top_battle_system.invisible h2 {
  -webkit-animation: topZoomOut 0.3s cubic-bezier(0.895, 0.03, 0.685, 0.22) 0.3s forwards;
  animation: topZoomOut 0.3s cubic-bezier(0.895, 0.03, 0.685, 0.22) 0.3s forwards;
}
#top_battle_system.visible h2 {
  -webkit-animation: topZoomIn 0.3s cubic-bezier(0.895, 0.03, 0.685, 0.22) 0.3s backwards;
  animation: topZoomIn 0.3s cubic-bezier(0.895, 0.03, 0.685, 0.22) 0.3s backwards;
}*/
#top_battle_system h2 img {
  display: block;
  -webkit-transition: all 0.3s cubic-bezier(0.215, 0.61, 0.355, 1) 0.2s;
  -o-transition: all 0.3s cubic-bezier(0.215, 0.61, 0.355, 1) 0.2s;
  transition: all 0.3s cubic-bezier(0.215, 0.61, 0.355, 1) 0.2s;
}
#top_battle_system.visible h2 img {
  opacity: 1;
  -webkit-transform: translate3d(0,0,0);
  transform: translate3d(0,0,0);
}
#top_battle_system h2 img:nth-child(2) {
  margin: -2px 0 0 56px;
  -webkit-transition-delay: 0.4s;
  -o-transition-delay: 0.4s;
  transition-delay: 0.4s;
}
#top_battle_system h2 img:nth-child(3) {
  margin: -33px 0 0 146px;
  -webkit-transition-delay: 0.6s;
  -o-transition-delay: 0.6s;
  transition-delay: 0.6s;
}
#top_battle_system h2 img:nth-child(4) {
  margin: -19px 0 0 308px;
  -webkit-transition-delay: 0.8s;
  -o-transition-delay: 0.8s;
  transition-delay: 0.8s;
}
#top_battle_system.invisible h2 img {
  opacity: 0;
  -webkit-transform: translate3d(50px,10px,0);
  transform: translate3d(50px,10px,0);
  -webkit-transition-delay: 0.4s;
  -o-transition-delay: 0.4s;
  transition-delay: 0.4s;
}
#top_battle_system p {
  position: relative;
  margin: -15px 0 20px 110px;
  z-index: 10;
  -webkit-animation: slideFadeOutLeft 0.4s cubic-bezier(0.55, 0.055, 0.675, 0.19) 0.4s forwards;
  animation: slideFadeOutLeft 0.4s cubic-bezier(0.55, 0.055, 0.675, 0.19) 0.4s forwards;
}
#top_battle_system .btn {
  display: block;
  width: 479px;
  height: 61px;
  margin: 0 0 0 138px;
  background: url(../img/landing/battle_system_btn.png) 0 0 no-repeat;
  position: relative;
  left: 0;
  z-index: 10;
  -webkit-animation: slideFadeOutLeft 0.4s cubic-bezier(0.55, 0.055, 0.675, 0.19) 0.4s forwards;
  animation: slideFadeOutLeft 0.4s cubic-bezier(0.55, 0.055, 0.675, 0.19) 0.4s forwards;
}
#top_battle_system.visible p,
#top_battle_system.visible .btn {
  -webkit-animation: slideFadeInLeft 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 1s backwards;
  animation: slideFadeInLeft 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 1s backwards;
}
#top_battle_system .btn img {
  display: block;
  width: 479px;
  height: 61px;
  background: url(../img/landing/battle_system_btn.png) 0 100% no-repeat;
  opacity: 0;
  -webkit-transition: opacity 0.13s linear;
  -o-transition: opacity 0.13s linear;
  transition: opacity 0.13s linear;
}
#top_battle_system .img01 {
  position: absolute;
  top: 85px;
  left: 830px;
  z-index: 5;
  -webkit-transform-origin: -10% 110%;
  -ms-transform-origin: -10% 110%;
  transform-origin: -10% 110%;
  -webkit-transform: perspective(2000px);
  transform: perspective(2000px);
}
#top_battle_system .img02 {
  position: absolute;
  top: 308px;
  left: 604px;
  z-index: 7;
}
/*#top_battle_system.invisible .img02 {
  -webkit-animation: clipOff 0.4s ease-out 0.2s forwards;
  animation: clipOff 0.4s ease-out 0.2s forwards;
}
#top_battle_system.visible .img02 {
  -webkit-animation: clipOn 0.5s ease-out 1s backwards;
  animation: clipOn 0.5s ease-out 1s backwards;
}*/
#top_battle_system .img03 {
  position: absolute;
  top: 172px;
  left: 785px;
  z-index: 15;
  -webkit-transform-origin: 0% 75%;
  -ms-transform-origin: 0% 75%;
  transform-origin: 0% 75%;
  -webkit-transform: perspective(1000px);
  transform: perspective(1000px);
}
#top_battle_system.invisible .img01,
#top_battle_system.invisible .img03 {
  -webkit-animation: topZoomOut 0.3s cubic-bezier(0.895, 0.03, 0.685, 0.22) forwards;
  animation: topZoomOut 0.3s cubic-bezier(0.895, 0.03, 0.685, 0.22) forwards;
}
#top_battle_system.visible .img01,
#top_battle_system.visible .img03 {
  -webkit-animation: topZoomIn 0.3s cubic-bezier(0.895, 0.03, 0.685, 0.22) backwards;
  animation: topZoomIn 0.3s cubic-bezier(0.895, 0.03, 0.685, 0.22) backwards;
}
#top_battle_system .bg {
  position: absolute;
  left: 0;
  top: 119px;
  -webkit-transform-origin: 90% 60%;
  -ms-transform-origin: 90% 60%;
  transform-origin: 90% 60%;
}
#top_craft_system {
  position: relative;
  width: 1140px;
  height: 700px;
  margin: 0 auto 170px;
}
#top_craft_system h2 {
  padding: 68px 0 56px 294px;
  position: relative;
  z-index: 10;
}
#top_craft_system h2 img {
  display: block;
  -webkit-transition: all 0.3s cubic-bezier(0.215, 0.61, 0.355, 1) 0.2s;
  -o-transition: all 0.3s cubic-bezier(0.215, 0.61, 0.355, 1) 0.2s;
  transition: all 0.3s cubic-bezier(0.215, 0.61, 0.355, 1) 0.2s;
}
#top_craft_system h2 img:nth-child(2) {
  margin: -51px 0 0 84px;
  -webkit-transition-delay: 0.4s;
  -o-transition-delay: 0.4s;
  transition-delay: 0.4s;
}
#top_craft_system h2 img:nth-child(3) {
  margin: -71px 0 0 422px;
  -webkit-transition-delay: 0.6s;
  -o-transition-delay: 0.6s;
  transition-delay: 0.6s;
}
#top_craft_system.invisible h2 img {
  opacity: 0;
  -webkit-transform: translate3d(-50px,12px,0);
  transform: translate3d(-50px,12px,0);
  -webkit-transition-delay: 0.4s;
  -o-transition-delay: 0.4s;
  transition-delay: 0.4s;
}
#top_craft_system p {
  margin: 0 0 24px 524px;
  position: relative;
  z-index: 10;
  -webkit-animation: slideFadeOutLeft 0.4s cubic-bezier(0.55, 0.055, 0.675, 0.19) 0.4s forwards;
  animation: slideFadeOutLeft 0.4s cubic-bezier(0.55, 0.055, 0.675, 0.19) 0.4s forwards;
}
#top_craft_system .btn {
  display: block;
  width: 617px;
  height: 61px;
  margin: 0 0 0 466px;
  background: url(../img/landing/craft_system_btn.png) 0 0 no-repeat;
  position: relative;
  left: 0;
  z-index: 10;
  -webkit-animation: slideFadeOutLeft 0.4s cubic-bezier(0.55, 0.055, 0.675, 0.19) 0.4s forwards;
  animation: slideFadeOutLeft 0.4s cubic-bezier(0.55, 0.055, 0.675, 0.19) 0.4s forwards;
}
#top_craft_system.visible p,
#top_craft_system.visible .btn {
  -webkit-animation: slideFadeInLeft 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 0.8s backwards;
  animation: slideFadeInLeft 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 0.8s backwards;
}
#top_craft_system .btn img {
  display: block;
  width: 617px;
  height: 61px;
  background: url(../img/landing/craft_system_btn.png) 0 100% no-repeat;
  opacity: 0;
  -webkit-transition: opacity 0.13s linear;
  -o-transition: opacity 0.13s linear;
  transition: opacity 0.13s linear;
}
#top_craft_system .img01 {
  position: absolute;
  top: 233px;
  left: 38px;
  display: block;
  z-index: 10;
}
#top_craft_system .img02 {
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  z-index: 15;
  -webkit-transform-origin: 80% 120%;
  -ms-transform-origin: 80% 120%;
  transform-origin: 80% 120%;
}
#top_craft_system.invisible .img02 {
  -webkit-animation: topZoomRotateOut 0.4s cubic-bezier(0.895, 0.03, 0.685, 0.22) 0.4s forwards;
  animation: topZoomRotateOut 0.4s cubic-bezier(0.895, 0.03, 0.685, 0.22) 0.4s forwards;
}
#top_craft_system.visible .img02 {
  -webkit-animation:topZoomRotateIn 0.8s cubic-bezier(0.895, 0.03, 0.685, 0.22) 0s backwards;
  animation:topZoomRotateIn 0.8s cubic-bezier(0.895, 0.03, 0.685, 0.22) 0s backwards;
}
#top_craft_system .img03 {
  position: absolute;
  top: 178px;
  left: 202px;
  display: block;
  z-index: 20;
  -webkit-transform-origin: 70% 185%;
  -ms-transform-origin: 70% 185%;
  transform-origin: 70% 185%;
}
#top_craft_system .img04 {
  position: absolute;
  top: 82px;
  left: 23px;
  display: block;
  z-index: 25;
  -webkit-transform-origin: 150% 200%;
  -ms-transform-origin: 150% 200%;
  transform-origin: 150% 200%;
}
#top_craft_system.invisible .img03,
#top_craft_system.invisible .img04 {
  -webkit-animation: topZoomRotateOut 0.4s cubic-bezier(0.895, 0.03, 0.685, 0.22) 0.4s forwards;
  animation: topZoomRotateOut 0.4s cubic-bezier(0.895, 0.03, 0.685, 0.22) 0.4s forwards;
}
#top_craft_system.visible .img03,
#top_craft_system.visible .img04 {
  -webkit-animation: topZoomRotateIn 0.8s cubic-bezier(0.895, 0.03, 0.685, 0.22) 0s backwards;
  animation: topZoomRotateIn 0.8s cubic-bezier(0.895, 0.03, 0.685, 0.22) 0s backwards;
}
#top_craft_system .bg {
  position: absolute;
  top: 52px;
  left: 410px;
}
#top_story {
  position: relative;
  width: 1030px;
  height: 788px;
  margin: 0 auto 280px;
}
#top_story h2 {
  position: relative;
  z-index: 30;
  padding: 224px 0 44px 46px;
}
#top_story h2 img {
  opacity: 0;
  -webkit-transform: translate3d(60px,9px,0);
  transform: translate3d(60px,9px,0);
  -webkit-transition: all 0.3s cubic-bezier(0.215, 0.61, 0.355, 1) 0.2s;
  -o-transition: all 0.3s cubic-bezier(0.215, 0.61, 0.355, 1) 0.2s;
  transition: all 0.3s cubic-bezier(0.215, 0.61, 0.355, 1) 0.2s;
}
#top_story.visible h2 img {
  opacity: 1;
  -webkit-transform: translate3d(0,0,0);
  transform: translate3d(0,0,0);
}
#top_story p {
  position: relative;
  z-index: 10;
  margin: 0 0 25px 108px;
  -webkit-animation: slideFadeOutLeft 0.4s cubic-bezier(0.55, 0.055, 0.675, 0.19) 0.4s forwards;
  animation: slideFadeOutLeft 0.4s cubic-bezier(0.55, 0.055, 0.675, 0.19) 0.4s forwards;
}
#top_story .btn {
  position: relative;
  left: 0;
  z-index: 10;
  display: block;
  width: 430px;
  height: 61px;
  margin: 0 0 0 168px;
  background: url(../img/landing/story_btn.png) 0 0 no-repeat;
  -webkit-animation: slideFadeOutLeft 0.4s cubic-bezier(0.55, 0.055, 0.675, 0.19) 0.4s forwards;
  animation: slideFadeOutLeft 0.4s cubic-bezier(0.55, 0.055, 0.675, 0.19) 0.4s forwards;
}
#top_story.visible p,
#top_story.visible .btn {
  -webkit-animation: slideFadeInLeft 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s backwards;
  animation: slideFadeInLeft 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s backwards;
}
#top_story .btn img {
  display: block;
  width: 430px;
  height: 61px;
  background: url(../img/landing/story_btn.png) 0 100% no-repeat;
  opacity: 0;
  -webkit-transition: opacity 0.13s linear;
  -o-transition: opacity 0.13s linear;
  transition: opacity 0.13s linear;
}
#top_story .img01 {
  position: absolute;
  top: 386px;
  left: 594px;
  z-index: 10;
}
#top_story .img02 {
  position: absolute;
  top: 35px;
  left: 638px;
  display: block;
  z-index: 0;
  -webkit-transform-origin: 0 0;
  -ms-transform-origin: 0 0;
  transform-origin: 0 0;
}
#top_story.invisible .img02 {
  -webkit-transform:translate(-805px, -35px) scale(1);
  -ms-transform:translate(-805px, -35px) scale(1);
  transform:translate(-805px, -35px) scale(1);
  -webkit-animation: islandMoveOut 0.6s both linear;
  animation: islandMoveOut 0.6s both linear;
}
#top_story.visible .img02 {
  -webkit-animation: islandMove 1.5s both linear 0.8s;
  animation: islandMove 1.5s both linear 0.8s;
}
#top_story .img03 {
  position: absolute;
  top: 530px;
  left: -80px;
  display: block;
  z-index: 10;
  -webkit-transform-origin: 67% 67%;
  -ms-transform-origin: 67% 67%;
  transform-origin: 67% 67%;
}
#top_story.invisible .img03 {
  -webkit-animation: rotate540zoomOut 0.6s cubic-bezier(0.55, 0.055, 0.675, 0.19) 0.2s forwards;
  animation: rotate540zoomOut 0.6s cubic-bezier(0.55, 0.055, 0.675, 0.19) 0.2s forwards;
}
#top_story.visible .img03 {
  -webkit-animation: rotate540zoomIn 0.9s cubic-bezier(0.215, 0.61, 0.355, 1) 0.2s backwards;
  animation: rotate540zoomIn 0.9s cubic-bezier(0.215, 0.61, 0.355, 1) 0.2s backwards;
}
#top_story .img04 {
  position: absolute;
  top: 658px;
  left: 82px;
  display: block;
  z-index: 10;
  -webkit-transform-origin: 33% 67%;
  -ms-transform-origin: 33% 67%;
  transform-origin: 33% 67%;
}
#top_story.invisible .img04 {
  -webkit-animation: rotate-540zoomOut 0.6s cubic-bezier(0.55, 0.055, 0.675, 0.19) 0.2s forwards;
  animation: rotate-540zoomOut 0.6s cubic-bezier(0.55, 0.055, 0.675, 0.19) 0.2s forwards;
}
#top_story.visible .img04 {
  -webkit-animation: rotate-540zoomIn 0.75s cubic-bezier(0.215, 0.61, 0.355, 1) 0.35s backwards;
  animation: rotate-540zoomIn 0.75s cubic-bezier(0.215, 0.61, 0.355, 1) 0.35s backwards;
}
#top_story .img05 {
  position: absolute;
  top: 44px;
  left: 548px;
  display: block;
  z-index: 10;
  -webkit-transform-origin: 20% 160%;
  -ms-transform-origin: 20% 160%;
  transform-origin: 20% 160%;
}
#top_story.invisible .img05 {
  -webkit-animation: bounceOut 0.7s linear forwards;
  animation: bounceOut 0.7s linear forwards;
}
#top_story.visible .img05 {
  -webkit-animation: bounceIn 0.7s linear 1s backwards;
  animation: bounceIn 0.7s linear 1s backwards;
}
#top_story .img06 {
  position: absolute;
  top: 148px;
  left: 777px;
  display: block;
  z-index: 0;
  -webkit-transform-origin: -50% 85%;
  -ms-transform-origin: -50% 85%;
  transform-origin: -50% 85%;
}
#top_story .img07 {
  position: absolute;
  top: 76px;
  left: 452px;
  display: block;
  z-index: 0;
  -webkit-transform-origin: 150% 75%;
  -ms-transform-origin: 150% 75%;
  transform-origin: 150% 75%;
}
#top_story.invisible .img06,
#top_story.invisible .img07 {
  -webkit-animation: topZoomOut 0.4s cubic-bezier(0.895, 0.03, 0.685, 0.22) 0.2s forwards;
  animation: topZoomOut 0.4s cubic-bezier(0.895, 0.03, 0.685, 0.22) 0.2s forwards;
}
#top_story.visible .img06,
#top_story.visible .img07 {
  -webkit-animation: topZoomIn 0.4s cubic-bezier(0.895, 0.03, 0.685, 0.22) 1.3s backwards;
  animation: topZoomIn 0.4s cubic-bezier(0.895, 0.03, 0.685, 0.22) 1.3s backwards;
}
#top_story .bg {
  position: absolute;
  top: 188px;
  left: 0;
  display: block;
  z-index: 5;
}
#top_first_run {
  position: relative;
  width: 1116px;
  height: 650px;
  margin: 0 auto;
}
#top_first_run h2 {
  position: relative;
  z-index: 10;
  padding: 0 0 13px 275px;
}
#top_first_run h2 img {
  opacity: 0;
  -webkit-transform: translate3d(-50px,12px,0);
  transform: translate3d(-50px,12px,0);
  -webkit-transition: all 0.3s cubic-bezier(0.215, 0.61, 0.355, 1) 0.2s;
  -o-transition: all 0.3s cubic-bezier(0.215, 0.61, 0.355, 1) 0.2s;
  transition: all 0.3s cubic-bezier(0.215, 0.61, 0.355, 1) 0.2s;
}
#top_first_run.visible h2 img {
  opacity: 1;
  -webkit-transform: translate3d(0,0,0);
  transform: translate3d(0,0,0);
}
#top_first_run h2 img {
  display: block;
}
#top_first_run h2 img:nth-child(2) {
  margin: -70px 0 0 83px;
  -webkit-transition-delay: 0.4s;
  -o-transition-delay: 0.4s;
  transition-delay: 0.4s;
}
#top_first_run h2 img:nth-child(3) {
  margin: -66px 0 0 194px;
  -webkit-transition-delay: 0.6s;
  -o-transition-delay: 0.6s;
  transition-delay: 0.6s;
}
#top_first_run p {
  position: relative;
  z-index: 10;
  margin: 0 0 17px 522px;
  -webkit-animation: slideFadeOutLeft 0.4s cubic-bezier(0.55, 0.055, 0.675, 0.19) 0.4s forwards;
  animation: slideFadeOutLeft 0.4s cubic-bezier(0.55, 0.055, 0.675, 0.19) 0.4s forwards;
}
#top_first_run .btn {
  position: relative;
  left: 0;
  z-index: 10;
  display: block;
  width: 478px;
  height: 61px;
  margin: 0 0 0 568px;
  background: url(../img/landing/first_run_btn.png) 0 0 no-repeat;
  -webkit-animation: slideFadeOutLeft 0.4s cubic-bezier(0.55, 0.055, 0.675, 0.19) 0.4s forwards;
  animation: slideFadeOutLeft 0.4s cubic-bezier(0.55, 0.055, 0.675, 0.19) 0.4s forwards;
}
#top_first_run.visible p,
#top_first_run.visible .btn {
  -webkit-animation: slideFadeInLeft 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 0.8s backwards;
  animation: slideFadeInLeft 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 0.8s backwards;
}
#top_first_run .btn img {
  display: block;
  width: 478px;
  height: 61px;
  background: url(../img/landing/first_run_btn.png) 0 100% no-repeat;
  opacity: 0;
  -webkit-transition: opacity 0.13s linear;
  -o-transition: opacity 0.13s linear;
  transition: opacity 0.13s linear;
}
/*#top_story.invisible .btn,
#top_craft_system.invisible .btn,
#top_first_run.invisible .btn {
  -webkit-animation: slideFadeOutLeft 0.4s cubic-bezier(0.55, 0.055, 0.675, 0.19) 0.6s forwards;
  animation: slideFadeOutLeft 0.4s cubic-bezier(0.55, 0.055, 0.675, 0.19) 0.6s forwards;
}
#top_story.visible .btn,
#top_craft_system.visible .btn,
#top_first_run.visible .btn {
  -webkit-animation: slideFadeInLeft 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 1.3s backwards;
  animation: slideFadeInLeft 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 1.3s backwards;
}*/
#top_battle_system .btn:hover,
#top_story .btn:hover,
#top_craft_system .btn:hover,
#top_first_run .btn:hover {
  /*left: 20px;*/
}
#top_battle_system .btn:hover img,
#top_story .btn:hover img,
#top_craft_system .btn:hover img,
#top_first_run .btn:hover img {
  opacity: 1;
}
#top_first_run .img01 {
  position: absolute;
  top: 0;
  left: 130px;
  display: block;
  z-index: 25;
  -webkit-transform-origin: 50% 75%;
  -ms-transform-origin: 50% 75%;
  transform-origin: 50% 75%;
}
#top_first_run.invisible .img01 {
  -webkit-animation: topZoomOut 0.4s cubic-bezier(0.6, -0.28, 0.735, 0.045) 0.3s forwards;
  animation: topZoomOut 0.4s cubic-bezier(0.6, -0.28, 0.735, 0.045) 0.3s forwards;
}
#top_first_run.visible .img01 {
  -webkit-animation: topZoomIn 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275) 0.3s backwards;
  animation: topZoomIn 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275) 0.3s backwards;
}
#top_first_run .img02 {
  position: absolute;
  top: 278px;
  left: -14px;
  display: block;
  z-index: 25;
  -webkit-transform-origin: 75% 75%;
  -ms-transform-origin: 75% 75%;
  transform-origin: 75% 75%;
}
#top_first_run.invisible .img02 {
  -webkit-animation: topZoomOut 0.4s cubic-bezier(0.6, -0.28, 0.735, 0.045) 0.2s forwards;
  animation: topZoomOut 0.4s cubic-bezier(0.6, -0.28, 0.735, 0.045) 0.2s forwards;
}
#top_first_run.visible .img02 {
  -webkit-animation: topZoomIn 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275) 0.4s backwards;
  animation: topZoomIn 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275) 0.4s backwards;
}
#top_first_run .img03 {
  position: absolute;
  top: 277px;
  left: 319px;
  display: block;
  z-index: 25;
  -webkit-transform-origin: 30% 30%;
  -ms-transform-origin: 30% 30%;
  transform-origin: 30% 30%;
}
#top_first_run.invisible .img03 {
  -webkit-animation: topZoomOut 0.4s cubic-bezier(0.6, -0.28, 0.735, 0.045) 0.4s forwards;
  animation: topZoomOut 0.4s cubic-bezier(0.6, -0.28, 0.735, 0.045) 0.4s forwards;
}
#top_first_run.visible .img03 {
  -webkit-animation: topZoomIn 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275) 0.2s backwards;
  animation: topZoomIn 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275) 0.2s backwards;
}
#top_first_run .img04 {
  position: absolute;
  top: 58px;
  left: -10px;
  display: block;
  z-index: 15;
}
#top_first_run .img05 {
  position: absolute;
  top: 62px;
  left: -14px;
  display: block;
  z-index: 15;
}
#top_first_run .img06 {
  position: absolute;
  top: 62px;
  left: -10px;
  display: block;
  z-index: 15;
}
#top_first_run.invisible .img04,
#top_first_run.invisible .img05,
#top_first_run.invisible .img06 {
  -webkit-animation: topZoomOut 0.4s cubic-bezier(0.6, -0.28, 0.735, 0.045) 0.2s forwards;
  animation: topZoomOut 0.4s cubic-bezier(0.6, -0.28, 0.735, 0.045) 0.2s forwards;
}
#top_first_run.visible .img04,
#top_first_run.visible .img05,
#top_first_run.visible .img06 {
  -webkit-animation: topZoomIn 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275) 0.4s backwards;
  animation: topZoomIn 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275) 0.4s backwards;
}
#top_first_run .bg {
  position: absolute;
  top: 20px;
  left: 403px;
  display: block;
  z-index: 0;
}
.blockGimmick {
  /*position: fixed;
  top: 0; left: 0;
  width: 100%;
  height: 100vh;*/
}
.blockGimmick img {
  position: fixed;
  top: -50%; right: -50%; bottom: -50%; left: -50%;
  margin: auto;
}
.blockGimmick img:nth-child(1) {
  top: -60%;
  right: 712px;
  -webkit-animation: cube_float 5.5s cubic-bezier(0.645, 0.045, 0.355, 1) infinite alternate;
  animation: cube_float 5.5s cubic-bezier(0.645, 0.045, 0.355, 1) infinite alternate;
  z-index: 3;
}
.blockGimmick img:nth-child(2) {
  right: 320px;
  -webkit-animation: cube_float 4.8s cubic-bezier(0.645, 0.045, 0.355, 1) 0.2s infinite alternate;
  animation: cube_float 4.8s cubic-bezier(0.645, 0.045, 0.355, 1) 0.2s infinite alternate;
  z-index: 2;
}
.blockGimmick img:nth-child(3) {
  top: -64%;
  right: 512px;
  -webkit-animation: cube_float 6.3s cubic-bezier(0.645, 0.045, 0.355, 1) 0.4s infinite alternate;
  animation: cube_float 6.3s cubic-bezier(0.645, 0.045, 0.355, 1) 0.4s infinite alternate;
  z-index: 1;
}
.blockGimmick img:nth-child(4) {
  top: -64%;
  left: 512px;
  -webkit-animation: cube_float 4.4s cubic-bezier(0.645, 0.045, 0.355, 1) infinite alternate;
  animation: cube_float 4.4s cubic-bezier(0.645, 0.045, 0.355, 1) infinite alternate;
  z-index: 3;
}
.blockGimmick img:nth-child(5) {
  top: -24%;
  left: 512px;
  -webkit-animation: cube_float 5.8s cubic-bezier(0.645, 0.045, 0.355, 1) 0.2s infinite alternate;
  animation: cube_float 5.8s cubic-bezier(0.645, 0.045, 0.355, 1) 0.2s infinite alternate;
  z-index: 2;
}
.blockGimmick img:nth-child(6) {
  left: 512px;
  -webkit-animation: cube_float 4.9s cubic-bezier(0.645, 0.045, 0.355, 1) 0.4s infinite alternate;
  animation: cube_float 4.9s cubic-bezier(0.645, 0.045, 0.355, 1) 0.4s infinite alternate;
  z-index: 1;
}
html[class*="ie"] .blockGimmick img {
  -webkit-animation: none !important;
  animation: none !important;
}
.move3D {
  /*-webkit-transform-style: preserve-3d;
  transform-style: preserve-3d;*/
}
.threeD {
  -webkit-transform-origin: 50% 65%;
  -ms-transform-origin: 50% 65%;
  transform-origin: 50% 65%;
}
/*.threeD * {
  -webkit-transform-style: preserve-3d;
  transform-style: preserve-3d;
}*/