@charset "utf-8";

.spOnly { display: none !important; }

body {
    background: url('../img/bg_ptrn.jpg') repeat-y center top;
	background-size:contain;
	font-family:  "Hiragino Kaku Gothic ProN", "游ゴシック", YuGothic, Meiryo, sans-serif;
}

article#container {
    position: relative;
    z-index: 2;
    width: 1024px;
    margin: 0 auto;
    box-sizing: border-box;
}
section#head {
    position: relative;
    height: 620px;
}

#head .catch img, #head .logo img, #banner img, #card h1 img{
	width:100%; height:auto;
}

/* global header */
.cmn_head{
	width:100%; height:72px;
	background:url(../img/bg_navi.png);
}
.cmn_head .inner{
    width:1024px; height:72px;
    margin:auto;
    position:relative;
}
.cmn_head .inner>a{
    position:absolute;
    top:2px; left:5px;
    width:125px;
}
.cmn_head .inner>a img{
    width:100%;
}
#global{
    position:absolute;
    top:16px; right:0px;
}
#global ul{
    display:flex; display: -webkit-flex;
    justify-content:space-between; -webkit-justify-content: space-between;
    width:535px; height:43px;
    overflow:hidden;
}
#global ul li{
    width:107px;
}
#global li a, #global li span{
    display:block;
    width:107px; height:43px;
    background:url(../img/nav_global.png?v=20171127) no-repeat left top;
    text-indent:100%; white-space:nowrap; overflow:hidden;
}

#global li:nth-child(1) a{ background-position:-214px 0px; }
#global li:nth-child(1) a:hover{ background-position:-214px -43px; }
#global li:nth-child(1) span.select{ background-position:-214px -86px; }
#global li:nth-child(1) span.soon{ background-position:-214px -129px; }
#global li:nth-child(2) a{ background-position:-321px 0px; }
#global li:nth-child(2) a:hover{ background-position:-321px -43px; }
#global li:nth-child(2) span.select{ background-position:-321px -86px; }
#global li:nth-child(3) a{ background-position:0px 0px; }
#global li:nth-child(3) a:hover{ background-position:0px -43px; }
#global li:nth-child(3) span.select{ background-position:0px -86px; }
#global li:nth-child(4) a{ background-position:-428px 0px; }
#global li:nth-child(4) a:hover{ background-position:-428px -43px; }
#global li:nth-child(5) a{ background-position:-535px 0px; }
#global li:nth-child(5) a:hover{ background-position:-535px -43px; }

/* head内 */
#head .catch {
    position: absolute;
    top: -4px;
    left: 141px;
    z-index: 100;
    opacity: 0;
	width:450px;
}
	#head .catch img {
		width:100%; height:auto;
	}
#head .logo {
    position: absolute;
    top: 305px;
    left: 206px;
    z-index: 100;
    opacity: 0;
	width:420px;
}
#banner {
    position: absolute;
    top: 515px;
    left: 10px;
    z-index: 100;
    opacity: 0;
    width:562px;
}

#head .pv {
    background: url('../img/pv_bg.png') no-repeat center center;
	background-size:contain;
    position: absolute;
    top: 508px;
    left: 572px;
    z-index: 100;
    width: 214px;
    height: 153px;
    padding: 30px 15px 15px 15px;
    box-sizing: border-box;
}
#top_movie{
	width:184px; height:104px;
}

/* Tweet */
.tweet {
    width: 241px;
	height:383px;
    position: absolute;
    z-index: 40;
    top: 273px;
    right: 0px;
    border-radius: 5px;
    background: url('../img/tweet_frame.png') no-repeat center top;
}
.tweet .btn-tw {
    position: absolute;
    top: -14px;
    right: 8px;
    z-index: 2;
}
#twitterWrap {
    height: 284px;
	width:215px;
    padding: 60px 11px 31px 11px;
	overflow:hidden;
}
#twitterWrap a:hover { color: #2475b5; }
.twitter-timeline {
    overflow-y: scroll;
    height: 315px;
	width:220px;
    background-color: #fff;
}
.timeline-Header {
    display: none;
}
.timeline-Widget {
    background-color: transparent;
}
.timeline-Viewport {
    overflow-y: hidden !important;
}

/* お知らせ */
#infomation {
    position: absolute;
    background: url('../img/bg_info.png') no-repeat center center;
	width:241px;
    height: 163px;
    top:100px;
    right:0px;
	z-index: 100;
}
#infomation h1 {
    position: absolute;
    top: 12px;
    left: 6px;
}
#infomation h1 img {
    width: 142px;
    height: auto;
}
#infomation .infoListWrap {
    position: absolute;
    top: 49px;
    left: 12px;
    margin: auto;
    width: 214px;
    height: 98px;
    color: #fff;
    box-sizing: border-box;
}

#infomation .infoListWrap iframe {
  width: 100%; height:100%;
}

#visualInfo {
	margin:45px auto 36px auto;
	text-align:center;
}

#infoBn {
	margin:0px auto 36px auto;
	text-align:center;
}

#store {
  position: absolute;
  top: 456px;
  left: 565px;
  width:200px;
  height:175px;
  z-index: 100;
  text-align:right;
  margin:5px 0;
}

/* card */
#card h1{
	width:468px;
}
.card_list{
	display:flex; display: -webkit-flex;
	justify-content:space-between; -webkit-justify-content: space-between;
	width:1000px; height:254px;
	overflow:hidden;
	margin:12px auto;
}

#aside {
    text-align: center;
    padding: 11px 0 0;
}
#aside .wrap { background-color: rgba(0, 0, 0, 0.7); }
#aside img {
    width: 608px;
    height: auto;
}

#footer {
    background-color: #000;
    text-align: center;
}

#footer ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    color: #fff;
    padding: 1em;
}
#footer .snsLinks {
    border-top: 1px solid #898989;
    border-bottom: 1px solid #898989;
}

#footer .snsLinks li {
    padding: 0 0.5em;
}

#footer .snsLinks li img {
    width: 32px;
    height: 32px;
}

#footer .footNav li {
    padding: 0 1em;
}
#footer .footNav li:nth-child(2) {
    border-right: 1px solid #fff;
    border-left: 1px solid #fff;
}

#footer .copyright li {
    padding: 0 0.5em;
}

.animated {
  -webkit-animation-duration: 0.4s;
  animation-duration: 0.4s;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
  -webkit-animation-delay: 2s;
  animation-delay: 2s;
}

/* scroll trigger */
.invisible {
    opacity: 0;
    transition: opacity 1s ease 0s;
}
.visible {
    opacity: 1;
    transition: opacity 1s ease 0s;
}

/* slider */
.sp-previous-arrow, .sp-next-arrow{
	display: block;
	text-indent: -9999px;
	width: 55px; height: 68px;
	background:no-repeat left top;
	background-size:contain;
}
.sp-previous-arrow {
	background-image:url(../img/icon_arrow_01.png);
	left:0px; top:0;
}
.sp-next-arrow {
	background-image: url(../img/icon_arrow_02.png);
	right:0; top:0;
}
.sp-mask.sp-grab{
	margin:auto;
}

/* popup */
.mfp-close{
	font-size:56px;
	height:56px; width:56px;
	margin-right:10%;
}
img.mfp-img{
	padding:10% 0%;
}


@-webkit-keyframes fadeInRight {
  from {
    opacity: 0;
    -webkit-transform: translate3d(30px, 0, 0);
    transform: translate3d(30px, 0, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}

@keyframes fadeInRight {
  from {
    opacity: 0;
    -webkit-transform: translate3d(30px, 0, 0);
    transform: translate3d(30px, 0, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}

.fadeInRight {
  -webkit-animation-name: fadeInRight;
  animation-name: fadeInRight;
}

@-webkit-keyframes fadeInLeft {
  from {
    opacity: 0;
    -webkit-transform: translate3d(-30px, 0, 0);
    transform: translate3d(-30px, 0, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}

@keyframes fadeInLeft {
  from {
    opacity: 0;
    -webkit-transform: translate3d(-30px, 0, 0);
    transform: translate3d(-30px, 0, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}

.fadeInLeft {
  -webkit-animation-name: fadeInLeft;
  animation-name: fadeInLeft;
}

@-webkit-keyframes fadeInUp {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, 30px, 0);
    transform: translate3d(0, 30px, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}

@keyframes fadeInUp {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, 30px, 0);
    transform: translate3d(0, 30px, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}

.fadeInUp {
  -webkit-animation-name: fadeInUp;
  animation-name: fadeInUp;
}


@-webkit-keyframes fadeInDown {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, -30px, 0);
    transform: translate3d(0, -30px, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}

@keyframes fadeInDown {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, -30px, 0);
    transform: translate3d(0, -30px, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}
.fadeInDown {
  -webkit-animation-name: fadeInDown;
  animation-name: fadeInDown;
}

@-webkit-keyframes fadeIn {
  from { opacity: 0; }
  to { opacity: 1; }
}
@keyframes fadeIn {
  from { opacity: 0; }
  to { opacity: 1; }
}
@-webkit-keyframes light {
  from { opacity: 0; }
  50% { opacity: 0; }
  to { opacity: 1; }
}
@keyframes light {
  from { opacity: 0; }
  50% { opacity: 0; }
  to { opacity: 1; }
}
.fadeIn {
  -webkit-animation-name: fadeIn;
  animation-name: fadeIn;
  -webkit-animation-duration: 0.4s;
  animation-duration: 0.4s;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
  -webkit-animation-delay: 2s;
  animation-delay: 2s;
}
.switch {
  -webkit-animation-name: fadeIn;
  animation-name: fadeIn;
  -webkit-animation-duration: 2.5s;
  animation-duration: 2.5s;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
  -webkit-animation-delay: 2s;
  animation-delay: 2s;
}
#banner {
  -webkit-animation-name: fadeIn;
  animation-name: fadeIn;
  -webkit-animation-duration: 0.4s;
  animation-duration: 0.4s;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
  -webkit-animation-delay: 2s;
  animation-delay: 2s;
  position: relative;
  z-index: 30;
}

/* ローディング */
.fade {
	width:100%; height:100%;
	display:block;
	background-color:#fff;
	position:fixed;
	left:0; top:0;
	z-index:1100;
	opacity:0.98; filter:alpha(opacity=98);
}
.loading {
    position: absolute;
    width: 100px; height: 100px;
	margin: auto;
    top: 30%;
    left: 0;    right: 0;
    background-color: rgba(0,0,0,0.5);
    border-radius: 10px;
    text-align: center;
    padding: 15px 0 0;
    box-sizing: border-box;
}
	.loading .rotate {
		background:url(../img/loading.png) no-repeat;
		display:block;
		width:55px; height:49px;
		margin:auto;
		-webkit-animation: 1.6s linear rotate both infinite; animation: 1.6s linear rotate both infinite;
	}
	.loading .glow{
		background:url(../img/loadingTxt.png) no-repeat;
		display:block;
		width:86px; height:18px;
		margin:4px auto;
	}
@-webkit-keyframes rotate {
  from { -webkit-transform: rotateY(0deg); transform: rotateY(0deg); }
  to { -webkit-transform: rotateY(360deg); transform: rotateY(360deg); }
}
@keyframes rotate {
  from { -webkit-transform: rotateY(0deg); transform: rotateY(0deg); }
  to { -webkit-transform: rotateY(360deg); transform: rotateY(360deg); }
}

/*.store-links {
    position:absolute;
    width:320px;
    top:0;
    right:0;
    z-index:120;
    text-align:right;
    margin:5px 0;
}
*/
.store-links img {
    width: 200px;
}

#aside .footer-store-links {
    padding-bottom: 20px;
}
#aside .footer-store-links img {
    width: 200px;
}

iframe#topbanner {
    max-width:768px;
    width:100%;
    height:142px;
}
