/*comit*/
@charset "UTF-8";
@import url("https://fonts.googleapis.com/css?family=Amiri");
@font-face {
  font-family: 'Noto Serif Japanese';
  font-style: normal;
  font-weight: 400;
  src: url(../fonts/NotoSerifCJKjp-Regular.otf) format("opentype");
}
/*
html5doctor.com Reset Stylesheet
v1.6.1
Last Updated: 2010-09-17
Author: Richard Clark - http://richclarkdesign.com
Twitter: @rich_clark
*/
html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary, time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
}

body {
  line-height: 1;
}

article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
  display: block;
}

nav ul {
  list-style: none;
}

blockquote, q {
  quotes: none;
}

blockquote:before, blockquote:after, q:before, q:after {
  content: '';
  content: none;
}

a {
  margin: 0;
  padding: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
}

ins {
  background-color: #ff9;
  color: #000;
  text-decoration: none;
}

mark {
  background-color: #ff9;
  color: #000;
  font-style: italic;
  font-weight: bold;
}

del {
  text-decoration: line-through;
}

abbr[title], dfn[title] {
  border-bottom: 1px dotted;
  cursor: help;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #cccccc;
  margin: 1em 0;
  padding: 0;
}

input, select {
  vertical-align: middle;
}

.clearfix:before, .clearfix:after {
  content: " ";
  display: table;
}

.clearfix:after {
  clear: both;
}

img {
  vertical-align: bottom;
}

li {
  list-style: none;
}

body {
  background: url("../img/pc/common/bg_ptn.gif");
}

/**************/
/*
.header_nav{
	position: fixed;
	background: url("../img/pc/common/menu/bg.png") repeat-x center top;
	width: 100%;
	height: 55px;
	z-index: 50;
	h1,ul,li{
		display: inline-block;
	}
}
*/
.main_area {
  position: relative;
  padding-bottom: 1px;
  overflow: hidden;
}
.main_area:after {
  content: '';
  display: block;
  position: absolute;
  width: 100%;
  height: 2px;
  bottom: 0px;
  left: 0;
  background: url("../img/pc/common/line.png") repeat-x center bottom;
  box-shadow: 0px 2px 40px 20px rgba(80, 80, 80, 0.2);
}

.main_area .next, .main_area .prev {
  position: absolute;
  top: 407px;
  z-index: 10;
  cursor: pointer;
}

.main_area .next img, .main_area .prev img {
  width: 100%;
}

.main_area .kv {
  position: relative;
  opacity: 0;
  /*		-webkit-transition: all 1s ease;
  		   -moz-transition: all 1s ease;
  		    -ms-transition: all 1s ease;
  		     -o-transition: all 1s ease;
  		        transition: all 1s ease;*/
}
.main_area .kv .img img {
  width: 100%;
}
.main_area .kv h1, .main_area .kv .catch {
  position: absolute;
}
.main_area .kv h1 {
  top: 70px;
  left: -80px;
  opacity: 0;
}
.main_area .kv .catch {
  top: 85px;
  right: -100px;
  opacity: 0;
}
.main_area .kv .img {
  opacity: 0;
}
.main_area .kv .img {
  -webkit-transition: all 1s ease;
  -moz-transition: all 1s ease;
  -ms-transition: all 1s ease;
  -o-transition: all 1s ease;
  transition: all 1s ease;
}
.main_area .kv h1, .main_area .kv .catch {
  -webkit-transition: all 0.8s ease;
  -moz-transition: all 0.8s ease;
  -ms-transition: all 0.8s ease;
  -o-transition: all 0.8s ease;
  transition: all 0.8s ease;
  opacity: 0;
}
.main_area .kv01 .img {
  background: url("../img/pc/top/main/slide01/kv.jpg") no-repeat center top;
  -webkit-background-size: cover;
  -o-background-size: cover;
  background-size: cover;
}
.main_area .kv02 {
  position: absolute;
  width: 100%;
  top: 0;
}
.main_area .kv02 .img {
  background: url("../img/pc/top/main/slide02/kv.jpg") no-repeat center top;
  -webkit-background-size: cover;
  -o-background-size: cover;
  background-size: cover;
}
.main_area .kv03 {
  position: absolute;
  width: 100%;
  top: 0;
}
.main_area .kv03 .img {
  background: url("../img/pc/top/main/slide03/kv.jpg") no-repeat center top;
  -webkit-background-size: cover;
  -o-background-size: cover;
  background-size: cover;
}
.main_area .kv {
  opacity: 0.6;
  -webkit-transition: all 0.5s ease;
  -moz-transition: all 0.5s ease;
  -ms-transition: all 0.5s ease;
  -o-transition: all 0.5s ease;
  transition: all 0.5s ease;
}
.main_area .show {
  opacity: 1;
}
.main_area .show .img {
  opacity: 1;
}
.main_area .show h1 {
  left: 4px;
  opacity: 1;
}
.main_area .show .catch {
  right: 30px;
  opacity: 1;
}
.main_area .pager {
  text-align: center;
  position: absolute;
  letter-spacing: -.4em;
  left: 0;
  width: 100%;
  bottom: 10px;
}
.main_area .pager li {
  display: inline-block;
  width: 10px;
  height: 10px;
  -webkit-border-radius: 10px;
  border-radius: 10px;
  margin: 0 5px;
  background: #656565;
  opacity: 0.7;
}
.main_area .pager li.current {
  background: #fff;
  opacity: 1;
}
.main_area .over_info .dl {
  position: absolute;
  top: 217px;
  left: 29px;
}
.main_area .over_info .app {
  position: fixed;
  width: 306px;
  -webkit-box-sizing: border-box;
  bottom: 32px;
  left: 30px;
}
.main_area .over_info .app_wrap {
  padding: 15px;
  background: url("../img/pc/top/main/bg_dl.jpg");
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
.main_area .over_info .app.min {
  position: absolute;
  bottom: auto;
  top: 330px;
}
.main_area .over_info .app.fix {
  position: absolute;
  bottom: 32px;
  top: auto;
}
.main_area .over_info .app img {
  width: 100%;
}
.main_area .over_info .app p {
  display: inline-block;
}
.main_area .over_info .app a {
  -webkit-transition: all 0.2s ease;
  -moz-transition: all 0.2s ease;
  -ms-transition: all 0.2s ease;
  -o-transition: all 0.2s ease;
  transition: all 0.2s ease;
  cursor: pointer;
}
.main_area .over_info .app a:hover {
  opacity: 0.6;
}
.main_area .over_info .app .btn_event {
  font-size: 0;
  margin-bottom: 10px;
}
.main_area .over_info .app .btn_event .icon {
  width: 70px;
  margin-right: 10px;
}
.main_area .over_info .app .btn_event .bnr_event {
  letter-spacing: -.4em;
}
.main_area .over_info .app .btn_event .bnr_event img {
  width: 190px;
}
.main_area .over_info .app .btn_dl {
  font-size: 0;
  /*letter-spacing: -.4em;*/
}
.main_area .over_info .app .btn_dl .ios {
  margin-right: 10px;
  width: 130px;
}
.main_area .over_info .app .btn_dl .android {
  width: 130px;
}
.main_area .over_info .app .btn_dl p {
  width: 143px;
}
.main_area .over_info .btn_bottom {
  background: #fff;
}
.main_area .over_info .btn_bottom p {
  border: 1px solid #000;
}
.main_area .over_info .btn_bottom p img {
  border: 1px solid #cfc09b;
  box-sizing: border-box;
}

/**********top movie *************/
.top_movie {
  background: url("../img/pc/top/main/bg_movie.jpg") no-repeat center 130px;
  -webkit-background-size: 100%;
  -o-background-size: 100%;
  background-size: 100%;
}
.top_movie .movie_wrap {
  width: 1120px;
  margin: auto;
  padding: 40px 0;
}
.top_movie .movie_wrap .movie {
  float: left;
}
.top_movie .movie_wrap .text {
  float: left;
}
.top_movie .movie {
  width: 540px;
  height: 303px;
  background: no-repeat center;
  -webkit-background-size: cover;
  -o-background-size: cover;
  background-size: cover;
  position: relative;
}
.top_movie .movie iframe {
  width: 540px;
  height: 303px;
}
.top_movie .movie .title {
  color: #FFF;
  position: absolute;
  width: 100%;
  text-align: center;
  z-index: 3;
  top: 50%;
  margin-top: 40px;
  font-size: 14px;
}
.top_movie .movie:before {
  content: url("../img/pc/top/main/frame_movie_l.png");
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
}
.top_movie .movie:after {
  content: '';
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: url("../img/common/play.png") no-repeat center;
  -webkit-background-size: 65px;
  -o-background-size: 65px;
  background-size: 65px;
  z-index: 2;
}
.top_movie .text .catch {
  padding-top: 33px;
  margin-bottom: 33px;
}
.top_movie .text .lead {
  margin-left: 43px;
}

/***********************/
.top_banner_douga {
  width: 1050px;
  margin: 30px auto 0;
  -webkit-transition: all 0.2s ease;
  -moz-transition: all 0.2s ease;
  -ms-transition: all 0.2s ease;
  -o-transition: all 0.2s ease;
  transition: all 0.2s ease;
  cursor: pointer;
}
.top_banner_douga:hover {
  opacity: 0.6;
}

/************/
.top_info {
  width: 1120px;
  margin: auto;
  padding-top: 60px;
  padding-bottom: 20px;
  margin-bottom: 85px;
}
.top_info .news_wrap, .top_info .tiwtter_wrap {
  width: 540px;
  background: url("../img/pc/top/info/frame_info_repeat.gif") repeat-y center;
  position: relative;
  float: left;
}
.top_info .news_wrap:before, .top_info .tiwtter_wrap:before {
  content: url("../img/pc/top/info/frame_info_head.gif");
  position: absolute;
  left: 0;
  top: -20px;
}
.top_info .news_wrap:after, .top_info .tiwtter_wrap:after {
  content: url("../img/pc/top/info/frame_info_bottom.gif");
  position: absolute;
  left: 0;
  bottom: -20px;
}
.top_info .news_wrap h2, .top_info .tiwtter_wrap h2 {
  text-align: center;
}
.top_info .news_wrap .btn_more, .top_info .tiwtter_wrap .btn_more {
  text-align: center;
}
.top_info .tiwtter_wrap {
  float: right;
}
.top_info .tiwtter_wrap .widjet {
  margin-bottom: 20px;
}
.top_info .news_wrap ul {
  width: 480px;
  margin: 0 auto 20px;
}
.top_info .news_wrap ul li {
  padding-bottom: 20px;
  border-bottom: 1px solid #dfe0d2;
  margin-bottom: 15px;
}
.top_info .news_wrap ul li:last-child {
  border-bottom: none;
  padding-bottom: 0;
}
.top_info .news_wrap ul li .date {
  color: #002b76;
  font-size: 13px;
  position: relative;
  height: 20px;
  line-height: 20px;
  margin-bottom: 15px;
}
.top_info .news_wrap ul li .date:after {
  content: '';
  background: #235b94;
  padding: 3px 8px;
  color: #FFF;
  width: 8em;
  display: block;
  text-align: center;
  font-size: 12px;
  position: absolute;
  top: -3px;
  left: 85px;
}
.top_info .news_wrap ul li .event:after {
  content: 'Event';
}
.top_info .news_wrap ul li .mente:after {
  content: 'Maintenance';
}
.top_info .news_wrap ul li .news:after {
  content: 'News';
}
.top_info .news_wrap ul li .update:after {
  content: 'Updates';
}
.top_info .news_wrap ul li .error:after {
  content: 'Issues';
}
.top_info .news_wrap ul li .title {
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}
.top_info .news_wrap ul li .title a {
  color: #000;
  text-decoration: none;
  font-size: 14px;
}

.character {
  margin-bottom: 80px;
}
.character .lead {
  margin-bottom: 10px;
}
.character .chara_wrap {
  background: url("../img/pc/top/character/bg_grd.png");
  height: 650px;
  min-width: 1120px;
}
.character .chara_wrap li {
  float: left;
  width: 12.5%;
  position: relative;
  overflow: hidden;
  height: 650px;
  cursor: pointer;
  -webkit-transition: all 0.2s ease-in;
  -moz-transition: all 0.2s ease-in;
  -ms-transition: all 0.2s ease-in;
  -o-transition: all 0.2s ease-in;
  transition: all 0.2s ease-in;
}
.character .chara_wrap li:after {
  content: '';
  display: block;
  position: absolute;
  width: 100%;
  height: 100%;
  background: rgba(0, 36, 99, 0.7);
}
.character .chara_wrap li .off .img {
  position: absolute;
  -webkit-transition: all 0.7s ease;
  -moz-transition: all 0.7s ease;
  -ms-transition: all 0.7s ease;
  -o-transition: all 0.7s ease;
  transition: all 0.7s ease;
  width: 1220px;
  height: 650px;
  left: 50%;
  margin-left: -610px;
}
.character .chara_wrap li .off .cl {
  position: absolute;
  top: 50%;
  left: 50%;
  margin: -71px 0 0 -18px;
  z-index: 5;
}
.character .chara_wrap li .on {
  opacity: 0;
  position: relative;
}
.character .chara_wrap li .on .img {
  position: absolute;
  left: 50%;
  margin-left: 100%;
  -webkit-transform: scale(1.2);
  -moz-transform: scale(1.2);
  -ms-transform: scale(1.2);
  -o-transform: scale(1.2);
  transform: scale(1.2);
  -webkit-transition: all 0.8s ease 0.2s;
  -moz-transition: all 0.8s ease 0.2s;
  -ms-transition: all 0.8s ease 0.2s;
  -o-transition: all 0.8s ease 0.2s;
  transition: all 0.8s ease 0.2s;
  width: 1080px;
  height: 650px;
}
.character .chara_wrap li .on .cl {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 5;
}
.character .chara_wrap li .on .obj {
  -webkit-border-radius: 50%;
  border-radius: 50%;
  background: #fff;
  -webkit-box-shadow: 0px 0px 30px 4px rgba(75, 191, 255, 0.4);
  box-shadow: 0px 0px 30px 4px rgba(75, 191, 255, 0.4);
  width: 6px;
  height: 6px;
  position: absolute;
  top: 50%;
  left: 50%;
  z-index: 5;
}
.character .chara_wrap li.saber .off .img {
  background: url("../img/pc/top/character/off/img_saber.png");
}
.character .chara_wrap li.saber .on .img {
  background: url("../img/pc/top/character/on/img_saber.png");
}
.character .chara_wrap li.archer .off .img {
  background: url("../img/pc/top/character/off/img_archer.png");
}
.character .chara_wrap li.archer .on .img {
  background: url("../img/pc/top/character/on/img_archer.png");
}
.character .chara_wrap li.lancer .off .img {
  background: url("../img/pc/top/character/off/img_lancer.png");
}
.character .chara_wrap li.lancer .on .img {
  background: url("../img/pc/top/character/on/img_lancer.png");
}
.character .chara_wrap li.rider .off .img {
  background: url("../img/pc/top/character/off/img_rider.png");
}
.character .chara_wrap li.rider .on .img {
  background: url("../img/pc/top/character/on/img_rider.png");
}
.character .chara_wrap li.caster .off .img {
  background: url("../img/pc/top/character/off/img_caster.png");
}
.character .chara_wrap li.caster .on .img {
  background: url("../img/pc/top/character/on/img_caster.png");
}
.character .chara_wrap li.assassin .off .img {
  background: url("../img/pc/top/character/off/img_assassin.png");
}
.character .chara_wrap li.assassin .on .img {
  background: url("../img/pc/top/character/on/img_assassin.png");
}
.character .chara_wrap li.berserker .off .img {
  background: url("../img/pc/top/character/off/img_berserker.png");
}
.character .chara_wrap li.berserker .on .img {
  background: url("../img/pc/top/character/on/img_berserker.png");
}
.character .chara_wrap li.extra .off .img {
  background: url("../img/pc/top/character/off/img_extra.png");
}
.character .chara_wrap li.extra .on .img {
  background: url("../img/pc/top/character/on/img_extra.png");
}
.character .chara_wrap .over li {
  width: 9.09091%;
}
.character .chara_wrap .over li.current {
  width: 36.36364%;
  background: url("../img/pc/top/character/bg_emblem.png") no-repeat center center;
}
.character .chara_wrap .over li.current:after {
  display: none;
}
.character .chara_wrap .over li.current .off .img {
  margin-left: 180%;
  -webkit-transform: scale(1.6);
  -moz-transform: scale(1.6);
  -ms-transform: scale(1.6);
  -o-transform: scale(1.6);
  transform: scale(1.6);
}
.character .chara_wrap .over li.current .off .cl {
  opacity: 0;
}
.character .chara_wrap .over li.current .on {
  opacity: 1;
}
.character .chara_wrap .over li.current .on .img {
  margin-left: -540px;
  -webkit-transform: scale(1);
  -moz-transform: scale(1);
  -ms-transform: scale(1);
  -o-transform: scale(1);
  transform: scale(1);
}

@keyframes move_out {
  0% {
    left: 0px;
  }
  100% {
    left: 100px;
  }
}
.staff {
  text-align: center;
  margin-bottom: 83px;
}
.staff h2 {
  margin-bottom: 34px;
}

.movie_area {
  margin-bottom: 80px;
}
.movie_area h2 {
  text-align: center;
  margin-bottom: 20px;
}
.movie_area .slider {
  height: 215px;
  overflow: hidden;
  position: relative;
}
.movie_area .prev, .movie_area .next {
  position: absolute;
  top: 50%;
  margin-top: -20px;
  width: 40px;
  z-index: 10;
  cursor: pointer;
  -webkit-transition: all 0.2s ease;
  -moz-transition: all 0.2s ease;
  -ms-transition: all 0.2s ease;
  -o-transition: all 0.2s ease;
  transition: all 0.2s ease;
  cursor: pointer;
}
.movie_area .prev:hover, .movie_area .next:hover {
  opacity: 0.6;
}
.movie_area .prev img, .movie_area .next img {
  width: 40px;
}
.movie_area .prev {
  left: 0;
  display: none;
}
.movie_area .next {
  right: 0;
}
.movie_area ul {
  width: 6760px;
  position: relative;
  margin-left: 20px;
}
.movie_area li {
  float: left;
  margin-right: 10px;
  margin-bottom: 10px;
}
.movie_area li .thumb {
  width: 338px;
  height: 190px;
  background: no-repeat center;
  -webkit-background-size: cover;
  -o-background-size: cover;
  background-size: cover;
  position: relative;
  cursor: pointer;
}
.movie_area li .thumb:before {
  content: '';
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  background: url("../img/common/play.png") no-repeat center;
  -webkit-background-size: 60px;
  -o-background-size: 60px;
  background-size: 60px;
  z-index: 2;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
.movie_area li .thumb:after {
  content: url("../img/pc/top/movie/frame_movie.png");
}
.movie_area li .title {
  color: #002b76;
  background: url("../img/common/item_mark_blue.png") no-repeat left 5px;
  -webkit-background-size: 11px;
  -o-background-size: 11px;
  background-size: 11px;
  padding: 5px 0 5px 20px;
  font-size: 14px;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}

.banner_area {
  background: url("../img/pc/top/banner/bg_bnr_repeat.gif");
  position: relative;
  padding: 40px 0;
}
.banner_area:before {
  content: '';
  display: block;
  width: 100%;
  height: 2px;
  background: url("../img/pc/common/line.png") repeat-x center top;
  position: absolute;
  top: -1px;
}
.banner_area .slider {
  margin-bottom: 10px;
  overflow: hidden;
}
.banner_area .slider ul {
  text-align: center;
  letter-spacing: -.4em;
}
.banner_area .slider li {
  display: inline-block;
  border: 1px solid #000;
  position: relative;
  margin: 0 10px 10px;
}
.banner_area .slider li img {
  border: 1px solid #cfc09b;
  width: 300px;
}
.banner_area .slider li a {
  -webkit-transition: all 0.2s ease;
  -moz-transition: all 0.2s ease;
  -ms-transition: all 0.2s ease;
  -o-transition: all 0.2s ease;
  transition: all 0.2s ease;
  cursor: pointer;
}
.banner_area .slider li a:hover {
  opacity: 0.6;
}
.banner_area .pager {
  text-align: center;
  letter-spacing: -.4em;
  display: none;
}
.banner_area .pager li {
  display: inline-block;
  width: 10px;
  height: 10px;
  -webkit-border-radius: 10px;
  border-radius: 10px;
  margin: 0 5px;
  background: #656565;
  opacity: 0.5;
}
.banner_area .pager li.current {
  background: #002b76;
  opacity: 1;
}

.floatContents {
  position: fixed;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  z-index: 1000;
  background: rgba(0, 0, 0, 0.8);
  display: none;
  opacity: 0;
}
.floatContents .close {
  position: absolute;
  width: 50px;
  height: 50px;
  top: 34px;
  right: 15px;
  cursor: pointer;
}
.floatContents .close:after, .floatContents .close:before {
  content: "";
  display: block;
  position: absolute;
  width: 100%;
  height: 1px;
  background: #fff;
}
.floatContents .close:after {
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  -o-transform: rotate(45deg);
  transform: rotate(45deg);
}
.floatContents .close:before {
  -webkit-transform: rotate(-45deg);
  -moz-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
  -o-transform: rotate(-45deg);
  transform: rotate(-45deg);
}
.floatContents .player {
  position: absolute;
  top: 50%;
  left: 50%;
}
.floatContents .wrap {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
}
@media only screen and (min-width: 751px) {
  .floatContents .close {
    -webkit-transition: all 0.2s ease;
    -moz-transition: all 0.2s ease;
    -ms-transition: all 0.2s ease;
    -o-transition: all 0.2s ease;
    transition: all 0.2s ease;
    cursor: pointer;
  }
  .floatContents .close:hover {
    opacity: 0.6;
  }
  .floatContents .player {
    width: 960px;
    height: 540px;
    margin-top: -270px;
    margin-left: -480px;
  }
  .main_area .next, .main_area .prev {
    width: 40px;
  }
}
@media only screen and (max-width: 750px) {
  .floatContents .player {
    width: 750px;
    height: 422px;
    left: 0;
    margin-top: -211px;
  }
  
  .main_area .next, .main_area .prev {
    top: 868px;
  }
}
.main_area .prev {
  left: 0;
}
.main_area .next {
  right: 0;
}
  
  
}