@charset "UTF-8";


/*＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝
RESET_start
＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝*/
* {
	margin: 0;
	padding: 0;
	list-style-type: none;
}

h1,
h2,
h3,
h4,
h5,
h6,
div,
p,
span,
em,
strong,
ul,
ol,
li,
dl,
dt,
dd,
a {
	background-repeat: no-repeat;
	background-size: 100% auto;
}

a {
	outline: none;
}

.sp {
	display: none;
}

/*CF*/
.cf:after {
	content: ".";
	display: block;
	height: 0;
	font-size: 0;
	clear: both;
	visibility: hidden;
}

.cf {
	display: inline-block;
}

/* Hides from IE Mac \*/
* html .cf {
	height: 1%;
}

.cf {
	display: block;
}

/* End Hack */
/*＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝
　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　RESET_end
＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝*/






/*＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝
COMMON_start
＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝*/
body {
	/*
	background-image: url(../../ng/pc_monst_tw.png);
	background-position: top center;
	background-size: auto;
	background-repeat: no-repeat;
*/
}

html,
body {
	width: 100%;
	height: 100%;
}

#grandwrapper {
	position: relative;
	width: 100%;
	overflow: hidden;
}

#contents_wrapper h1,
#contents_wrapper h2,
#contents_wrapper h3,
#contents_wrapper p,
#contents_wrapper li,
#contents_wrapper small {
	text-indent: -9999px;
}


/*link*/
#contents_wrapper a {
	cursor: pointer;
}

a.btn {
	transition: all 0.4s ease-out;
	transform: scale(1);
}

a:hover.btn {
	transform: scale(0.95);
}

/*＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝
　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　COMMON_end
＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝*/








/*＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝
kv_start
＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝*/
#kv {
	position: relative;
	width: 100%;
	height: 790px;
}

#kv .color_bg{
	z-index: -10;
	width: 1680px;
	height: 3364px;
	background-image: url(../images/kv_color_bg.png);
	position: absolute;
	top: 0;
	right: 0;
}

#kv .tw_monst_logo {
	width: 168px;
	height: 140px;
	background-image: url(../images/tw_monst_logo.png);
	position: absolute;
	left: 10px;
    top: 7px;
}

#kv .kv_share_button {
	width: 148px;
	height: 171px;
	/* background-image: url(../images/kv_share_button.png); */
	position: absolute;
	display: block;
	left: 193px;
	top: 590px;
}
#kv .kv_share_button::before {
	width: 148px;
	height: 171px;
	background-image: url(../images/kv_share_button.png);
	position: absolute;
	display: block;
	/* left: 193px; */
	/* top: 590px; */
	content: "";
}


#kv h1 {
	width: 354px;
	height: 686px;
	background-image: url(../images/kv_logo.png);
	position: absolute;
	right: 50%;
	margin-right: -620px;
	top: 76px;
}


#kv .img {
	z-index: -1;
	position: absolute;
	top: 0;
	width: 100%;
	height: 790px;
	/* background-image: url(../images/kv_bg.png); */
	background-size: 1680px auto;
	background-position: bottom center;
}

#kv .img .bg{
	z-index: -1;
	position: absolute;
	left: 0;
	bottom: 0;
	width: 100%;
	height: 735px;
	background-image: url(../images/kv_bg.png);
	background-size: 1680px auto;
	background-position: bottom center;
}

#kv .img .kv_char{
	position: absolute;
	top: 5px;
	left: 50%;
	margin-left: -520px;
	width: 1035px;
	height: 921px;
	background-image: url(../images/kv_char.png);
}

#kv .img .kv_effect{
	position: absolute;
	top: 0;
	left: 50%;
	margin-left: 250px;
	width: 483px;
	height: 770px;
	background-image: url(../images/kv_effect.png);
}

/*＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝
　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　   kv_end
＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝*/





/*＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝
info_start
＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝*/
#info {
	z-index: 0;
	position: relative;
	width: 100%;
	height: 650px;
	/* top: -50px; */
	/*
	background-color:blue;
	opacity: 0.5;
*/
}

/*
pr_text
*/
#info > p:nth-of-type(1) {
	z-index: 2;
	position: absolute;
	top: 9px;
	width: 807px;
	height: 209px;
}

#info > p:nth-of-type(1) .cover {
	position: relative;
	display: block;
	width: 807px;
	margin: 0 0 13px 0;
}

#info > p:nth-of-type(1) .cover .inner {
	background-image: url(../images/kv_asset_pr.png);
}



#info > p:nth-of-type(1) .cover:nth-of-type(1) {
	height: 98px;
}

#info > p:nth-of-type(1) .cover:nth-of-type(1) .inner {
	background-position: top left;
}


#info > p:nth-of-type(1) .cover:nth-of-type(2) {
	height: 98px;
}

#info > p:nth-of-type(1) .cover:nth-of-type(2) .inner {
	background-position: left -111px;
}

#info .info_text_2{
	width: 464px;
	height: 208px;
	background-image: url(../images/info_text_2.png);
	background-size: 100% auto;
	position: absolute;
	top: 322px;
    left: 100px;
	text-indent: -9999px;
	overflow: hidden;
}

/* #info > p:nth-of-type(1) .cover:nth-of-type(3) {
	height: 213px;

}

#info > p:nth-of-type(1) .cover:nth-of-type(3) .inner {
	background-position: left -124px;
} */

@media screen and (max-width:1580px){
	#kv .color_bg{
		transform: translate( 100px, 0 );
	}
	.wrap_rightElement{
		transform: translate( 100px, 0 );
	}
	#info .info_text_2{
		transform: translate( -30px, -30px );
	}
}

@media screen and (max-width:1480px){
	#kv .color_bg{
		transform: translate( 120px, 0 );
	}
	.wrap_rightElement{
		transform: translate( 180px, 60px );
	}
	#info .info_text_2{
		transform: translate( -60px, -60px );
	}
	#info {
		height: 740px;
	}
}


.wrap_rightElement{
	position: relative;
	top: 10px;
}

#info h2.news_h2 {
	position: absolute;
	top: 182px;
    right: 435px;
	width: 124px;
	height: 125px;
	background-image: url(../images/info_text_news.png);
}

#info p.news_text {
	position: absolute;
	top: 90px;
    right: 237px;
	width: 298px;
	height: 264px;
	background-image: url(../images/info_text_p.png);
}

/*infinityMark*/
#info div.infinity {
	position: absolute;
	top: 212px;
	right: -27px;
	width: 1040px;
	height: 490px;
	background-image: url(../images/info_img.png);
}


/*startBtn*/
#info div.infinity a {
	position: absolute;
	top: 173px;
	left: 50%;
	width: 71px;
	height: 142px;
	margin: 0 0 0 -293px;
	background-image: url(../images/info_btn_play.png);
}

#info .wrap_rightElement::before {
	content: '';
	position: absolute;
	display: block;
	top: -105px;
	right: 0;
	width: 600px;
	height: 1200px;
	background-image: url(../images/story_bg_obj.png);
}

/*＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝
　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　  info_end
＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝*/





/*＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝
story_start
＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝*/
#story {
	position: relative;
	width: 100%;
	height: 1365px;
	/*		background-color: aqua;*/
	/*	opacity: 0.5;*/
}

#story::after {
	z-index: 0;
	content: '';
	position: absolute;
	display: block;
	top: 585px;
	left: -25%;

	width: 600px;
	height: 1200px;
	background-image: url(../images/story_bg_obj.png);
	transform: rotate(180deg);
}



#story .story_wrapper {
	z-index: 1;
	position: absolute;
	top: 50px;
	left: 100px;
	width: 980px;
	height: 1050px;
	/*	background-color: brown;*/
}


#story .story_wrapper::before,
#story .story_wrapper::after {
	content: '';
	position: absolute;
	left: 50%;
	width: 106px;
	height: 81px;

}

/*deco_period_top*/
#story .story_wrapper::before {
	top: -11px;
	margin: 0 0 0 -430px;
	background-image: url(../images/story_deco01.png);
}

/*deco_period_bottom*/
#story .story_wrapper::after {
	bottom: -83px;
	margin: 0 0 0 384px;
	background-image: url(../images/story_deco02.png);
}



#story h2 {
	position: absolute;
	left: 187px;
	width: 227px;
	height: 85px;
	background-image: url(../images/story_h2.png);
}

/*text*/
#story div p {
	position: absolute;
	left: 60px;
	text-indent: -9999px;

}


#story .a p {
	width: 576px;
	height: 247px;
	top: 349px;
	background-image: url(../images/story_text01.png);
}

#story .b p {
	width: 558px;
	height: 192px;
	top: 862px;
	background-image: url(../images/story_text02.png);
}

/*screenShot*/
#story .ss {
	overflow: hidden;
	position: absolute;
	display: flex;
	justify-content: space-between;
	width: 920px;
	height: 188px;
}

#story .ss li {
	width: 300px;
	height: 188px;
}

#story .ss img {
	display: block;
}

#story .a .ss {
	top: 119px;
	right: 0;
}

#story .b .ss {
	top: 634px;
	left: 0;
}


/*ss_img*/
#story .a .ss li:nth-of-type(1) .inner {
	background-image: url(../images/ss_a_1.png);
}

#story .a .ss li:nth-of-type(2) .inner {
	background-image: url(../images/ss_a_2.png);
}

#story .a .ss li:nth-of-type(3) .inner {
	background-image: url(../images/ss_a_3.png);
}


#story .b .ss li:nth-of-type(1) .inner {
	background-image: url(../images/ss_b_1.png);
}

#story .b .ss li:nth-of-type(2) .inner {
	background-image: url(../images/ss_b_2.png);
}

#story .b .ss li:nth-of-type(3) .inner {
	background-image: url(../images/ss_b_3.png);
}


/*＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝
　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　 story_end
＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝*/





/*＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝
shortfilm_start
＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝*/
#shortfilm {
	position: relative;
	width: 100%;
	height: 838px;
	/*
	background-color: blue;
	opacity: 0.5;
*/
}

#shortfilm h2 {
	position: absolute;
	top: 50px;
	left: 50%;
	width: 459px;
	height: 68px;
	margin: 0 0 0 -230px;
	background-image: url(../images/shortfilm_h2.png);
}


#shortfilm .sf_wrapper {
	position: relative;
	top: 114px;
	width: 100%;
	height: 624px;
	background-color: #000000;
}


/*movie*/
#shortfilm .sf_wrapper .thumb {
	position: relative;
	width: 999px;
	height: 624px;
	margin: 0 auto;
	background-image: url(../images/shortfilm_thumb.png);
	background-size: contain;
}

/*movie_dark*/
#shortfilm .sf_wrapper .thumb::after {
	content: '';
	position: absolute;
	width: 100%;
	height: 100%;
	background-color: #000000;
	opacity: 0.75;
}

#shortfilm .sf_wrapper .thumb p {
	position: absolute;
	width: 100%;
	height: 100%;
}

#shortfilm .sf_wrapper .thumb a {
	z-index: 2;
	display: block;
	position: absolute;
	width: 100%;
	height: 100%;
	background-image: url(../images/shortfilm_btn.png);
	background-size: 300px 470px;
	background-repeat: no-repeat;
	background-position: center center;

}

/*hover_animation*/
#shortfilm .sf_wrapper .thumb,
#shortfilm .sf_wrapper .thumb::after,
#shortfilm .sf_wrapper .thumb a {
	transition: all 0.4s ease-out;
}

#shortfilm .sf_wrapper .thumb:hover {
	transform: scale(0.97);
}

#shortfilm .sf_wrapper .thumb:hover a {
	background-image: url(../images/shortfilm_btn_active.png);
	transform: scale(1.07);
}

#shortfilm .sf_wrapper .thumb:hover::after {
	opacity: 0.3;
}


/*＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝
　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　  shortfilm_end
＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝*/





/*＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝
character_start
＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝*/
#character {
	position: relative;
	width: 100%;
	margin: 50px 0 0 0;
	/*	height: 3423px;*/
	/*
	background-color: aqua;
	opacity: 0.5;
*/
}

#character h2 {
	position: relative;
	width: 421px;
	height: 68px;
	margin: 0 auto 200px auto;
	background-image: url(../images/character_h2.png);
}

#character h2::after {
	z-index: -1;
	content: '';
	position: absolute;
	display: block;
	top: 0;
	overflow: hidden;
	width: 100%;
	height: 100%;
	background-color: #000000;
}


/*symbol_icon*/
#character .symbol {
	position: absolute;
	top: 100px;
	left: 50%;
	width: 421px;
	height: 32px;
	margin: 0 0 0 -211px;
	text-align: center;
	/*	background-color: blueviolet;*/
}

#character .symbol::before,
#character .symbol::after {
	content: '';
	position: absolute;
	display: block;
	width: 10px;
	height: 32px;
	background-color: #000000;
}

#character .symbol::after {
	top: 0;
	right: 0;
}

#character .symbol li {
	display: inline-block;
	width: 35px;
	height: 35px;
	margin: 0 15px 0 15px;
	background-position: center center;
	background-repeat: no-repeat;
	background-image: url(../images/chara_amida_symbol_a.png);
	background-size: 25px auto;
}

#character .symbol li::before {
	content: '';
	display: block;
	margin: 0 0 0 -18px;
	height: 32px;
	border-left: 1px solid #000000;
}

#character .symbol li:last-of-type::after {
	content: '';
	display: block;
	position: relative;
	top: -32px;
	height: 32px;
	margin: 0 -18px 0 0;
	border-right: 1px solid #000000;
}

#character .symbol li:nth-of-type(1) {
	background-image: url(../images/chara_amida_symbol_a.png);
	background-size: 25px auto;
}

#character .symbol li:nth-of-type(2) {
	background-image: url(../images/chara_h2_symbol_amida_b.png);
	background-size: 35px auto;
}

#character .symbol li:nth-of-type(3) {
	background-image: url(../images/chara_kirari_symbol.png);
	background-size: 32px auto;
}

#character .symbol li:nth-of-type(4) {
	background-image: url(../images/chara_infinityx_symbol.png);
	background-size: 22px auto;
}

#character .symbol li:nth-of-type(5) {
	background-image: url(../images/chara_h2_symbol_nightmare.png);
	background-size: 31px auto;
}





#character .chara {
	position: relative;
	width: 100%;
}

#character .chara > li {
	position: relative;
	display: flex;
	width: 100%;
	margin: 0 0 50px 0;
}


/*flexbox_set*/

#character .chara .flex_wrapper {
	position: relative;
	width: 80%;
	flex: 0 0 auto;
}


#character .chara .color_bar {
	position: relative;
	width: 10%;
	height: 100%;
	flex: 1 1 30%;
}


#character .chara .spacer {
	width: 10%;
	height: 100%;
	flex: 1 1 30%;
}





/*
chara_common
*/

/*rubi*/
#character .chara small {
	display: block;
	text-indent: -9999px;
	margin: 35px 0 30px 0;
}

/*chara_img*/
#character .chara .img {
	position: absolute;
	top: 0;
	width: 70%;
	height: 100%;
	background-position: center center;
	background-repeat: no-repeat;
	/*	background-color: darkmagenta;*/
}


/*chara_icon*/
#character .chara .color_bar::after,
#character .amida .color_bar::before {
	content: '';
	position: absolute;
	display: block;
	bottom: 30px;
	width: 80px;
	height: 130px;
	background-repeat: no-repeat;
	background-position: bottom center;
}




/*profile_position*/
#character .chara .profile {
	position: absolute;
	top: 0;
	width: 410px;
	height: 100%;
	/*	background-color: chartreuse;*/
}

/*chara_text_border*/
#character .chara .profile p {
	width: 100%;
	padding: 40px 0 40px 0;
	border-top: 2px solid #000000;
	border-bottom: 2px solid #000000;
	background-position: left center;
	background-repeat: no-repeat;
}

/*chara_dl_common_headline*/
#character .chara .profile dl {
	position: relative;
	width: 100%;
	height: 165px;
	margin: 40px 0 40px 0;
}

#character .chara .profile dt {
	width: 95px;
	height: 25px;
	margin: 0 0 20px 0;
	border-radius: 3px;
	background-color: #000000;
	background-size: auto 15px;
	background-repeat: no-repeat;
	background-position: center center;
}

/*headline_skill*/
#character .chara .profile dt:nth-of-type(1) {
	background-image: url(../images/chara_h_skill.png);

}

/*headline_bad*/
#character .chara .profile dt:nth-of-type(2) {
	background-image: url(../images/chara_h_bad.png);

}

/*headline_like*/
#character .chara .profile dt:nth-of-type(3) {
	background-image: url(../images/chara_h_like.png);

}

/*headline_hate*/
#character .chara .profile dt:nth-of-type(4) {
	background-image: url(../images/chara_h_hate.png);

}


/*chara_dd_common*/
#character .chara .profile dd {
	position: absolute;
	right: 0;
	width: 303px;
	height: 25px;
	margin: -45px 0 0 0;
	background-size: auto 15px;
	background-repeat: no-repeat;
	background-position: left center;
}


/*charasheet_common*/
#character .chara .profile .charasheet {
	width: 408px;
	height: 280px;
	border: 1px solid #000000;
	background-color: #ffffff;
	background-repeat: no-repeat;
	background-position: center center;
}







/*
character_amida
*/
#character .amida {
	height: 985px;
}

#character .chara .amida .color_bar {
	background-color: #ffc800;
}



/*amida_img*/
#character .amida .img {
	background-image: url(../images/chara_amida_img1.png);
	background-size: 236px auto;
}

/*amida_symbol_icon*/
#character .amida .color_bar::after {
	right: -40px;
	bottom: 160px;
	background-image: url(../images/chara_amida_symbol_a.png);
	background-size: auto 71px;
}

#character .amida .color_bar::before {
	right: -40px;
	background-image: url(../images/chara_amida_symbol_b.png);
	background-size: auto 108px;
}

#character .amida .profile {
	right: 0;
}

#character .amida .profile h3 {
	position: relative;
	width: 207px;
	height: 66px;
	background-image: url(../images/chara_amida_h3.png);
}

#character .amida .profile small {
	width: 69px;
	height: 12px;
	background-image: url(../images/chara_amida_rubi.png);
}

#character .amida .profile p {
	height: 230px;
	background-image: url(../images/chara_amida_text.png);
	background-size: 407px auto;
}

/*amida_dd_skill*/
#character .amida .profile dd:nth-of-type(1) {
	background-image: url(../images/chara_amida_skill_text.png);
}

/*amida_dd_bad*/
#character .amida .profile dd:nth-of-type(2) {
	background-image: url(../images/chara_amida_bad_text.png);
}

/*amida_dd_like*/
#character .amida .profile dd:nth-of-type(3) {
	background-image: url(../images/chara_amida_like_text.png);
}

/*amida_dd_hate*/
#character .amida .profile dd:nth-of-type(4) {
	background-image: url(../images/chara_amida_hate_text.png);
}



/*amida_charasheet*/
#character .amida .profile .charasheet {
	background-image: url(../images/chara_amida_charasheet.png);
	background-size: 348px auto;
}





/*
character_kirari
*/
#character .kirari {
	height: 985px;
	/*	background-color: cornflowerblue;*/
}

#character .chara .kirari .color_bar {
	background-color: #ffff00;
}



/*kirari_img*/
#character .kirari .img {
	right: 0;
	background-image: url(../images/chara_kirari_img1.png);
	background-size: 281px auto;
}

/*kirari_symbol_icon*/
#character .kirari .color_bar::after {
	left: -40px;
	background-image: url(../images/chara_kirari_symbol.png);
	background-size: auto 71px;
	/*	background-color: brown;*/

}

#character .kirari .profile {
	left: 0;
}

#character .kirari .profile h3 {
	position: relative;
	width: 206px;
	height: 66px;
	background-image: url(../images/chara_kirari_h3.png);
}

#character .kirari .profile small {
	width: 74px;
	height: 12px;
	background-image: url(../images/chara_kirari_rubi.png);
}

#character .kirari .profile p {
	height: 195px;
	background-image: url(../images/chara_kirari_text.png);
	background-size: 407px auto;
}

/*kirari_dd_skill*/
#character .kirari .profile dd:nth-of-type(1) {
	background-image: url(../images/chara_kirari_skill_text.png);
}

/*kirari_dd_bad*/
#character .kirari .profile dd:nth-of-type(2) {
	background-image: url(../images/chara_kirari_bad_text.png);
}

/*kiari_dd_like*/
#character .kirari .profile dd:nth-of-type(3) {
	background-image: url(../images/chara_kirari_like_text.png);
}

/*kirari_dd_hate*/
#character .kirari .profile dd:nth-of-type(4) {
	background-image: url(../images/chara_kirari_hate_text.png);
}


/*kirari_charasheet*/
#character .kirari .profile .charasheet {
	background-image: url(../images/chara_kirari_charasheet.png);
	background-size: 348px auto;
}





/*
character_infinityx
*/
#character .infinityx {
	height: 800px;
}

#character .chara .infinityx .color_bar {
	background-color: #495a76;
}



/*infinityx_img*/
#character .infinityx .img {
	background-image: url(../images/chara_infinityx_img1.png);
	background-size: 234px auto;
}

/*infinityx_symbol_icon*/
#character .infinityx .color_bar::after {
	right: -40px;
	background-image: url(../images/chara_infinityx_symbol.png);
	background-size: auto 77px;
}


#character .infinityx .profile {
	right: 0;
}

#character .infinityx .profile h3 {
	position: relative;
	width: 223px;
	height: 66px;
	background-image: url(../images/chara_infinityx_h3.png);
}

#character .infinityx .profile small {
	width: 116px;
	height: 12px;
	background-image: url(../images/chara_infinityx_rubi.png);
}

#character .infinityx .profile p {
	height: 123px;
	margin: 0 0 40px 0;
	background-image: url(../images/chara_infinityx_text.png);
	background-size: 393px auto;
}

/*infinityx_charasheet*/
#character .infinityx .profile .charasheet {
	background-image: url(../images/chara_infinityx_charasheet.png);
	background-size: 369px auto;
}


/*＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝
　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　character_end
＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝*/





/*＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝
glossary_start
＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝*/
#glossary {
	position: relative;
	width: 100%;
	height: 1363px;
	padding: 50px 0 0 0;
	/*
	background-color: blue;
	opacity: 0.5;
*/
}

/*h2_black_border*/
#glossary::before {
	content: '';
	position: absolute;
	display: block;
	top: 76px;
	width: 100%;
	height: 10px;
	background-color: #000000;
}

#glossary h2 {
	position: relative;
	width: 400px;
	height: 60px;
	margin: 0 auto 80px auto;
	background-color: #000000;
	background-image: url(../images/glossary_h2.png);
	background-size: 121px auto;
	background-position: center center;
	background-repeat: no-repeat;
}

#glossary ul {
	position: relative;
	width: 90%;
	margin: 0 auto;
}

#glossary ul li {
	position: relative;
	display: flex;
	justify-content: space-between;
	width: 100%;
	height: 195px;
	margin: 0 0 30px 0;
}


/*glossary_img_common*/
#glossary ul li .ss {
	overflow: hidden;
	position: relative;
	box-sizing: border-box;
	width: 308px;
	height: 193px;
}

#glossary ul li .ss .inner {
	box-sizing: border-box;
	border: 1px solid #000000;
	background-color: #ffffff;
	background-position: center center;
	background-size: 308px auto;
}


#glossary ul li dl {
	width: 72%;
	display: flex;
	justify-content: space-between;
}

#glossary ul li dt {
	width: 35%;
	height: 100%;
	border-right: 1px solid #000000;
	background-position: center center;
	background-repeat: no-repeat;
}

#glossary ul li dd {
	width: 60%;
	height: 100%;
	border-right: 12px solid #000000;
	background-position: left center;
	background-repeat: no-repeat;
}


/*glossary_imagine*/
#glossary .imagine .ss .inner {
	background-image: url(../images/glossary_imagine_ss.png);
}

#glossary .imagine dt {
	background-image: url(../images/glossary_imagine_title.png);
	background-size: 252px auto;
}

#glossary .imagine dd {
	background-image: url(../images/glossary_imagine_text.png);
	background-size: 307px auto;
}


/*glossary_infinity*/
#glossary .infinity .ss .inner {
	background-image: url(../images/glossary_infinity_ss.png);
}

#glossary .infinity dt {
	background-image: url(../images/glossary_infinity_title.png);
	background-size: 98px auto;
}

#glossary .infinity dd {
	background-image: url(../images/glossary_infinity_text.png);
	background-size: 462px auto;
}


/*glossary_nightmare*/
#glossary .nightmare .ss .inner {
	background-image: url(../images/glossary_nightmare_ss.png);
	background-size: 110px auto;
}

#glossary .nightmare dt {
	background-image: url(../images/glossary_nightmare_title.png);
	background-size: 47px auto;
}

#glossary .nightmare dd {
	background-image: url(../images/glossary_nightmare_text.png);
	background-size: 476px auto;
}


/*glossary_zetsubow*/
#glossary .zetsubow .ss .inner {
	background-image: url(../images/glossary_zetsubow_ss.png);
}

#glossary .zetsubow dt {
	background-image: url(../images/glossary_zetsubow_title.png);
	background-size: 72px auto;
}

#glossary .zetsubow dd {
	background-image: url(../images/glossary_zetsubow_text.png);
	background-size: 422px auto;
}



/*glossary_kaiju*/
#glossary .kaiju .ss .inner {
	background-image: url(../images/glossary_kaiju_ss.png);
}

#glossary .kaiju dt {
	background-image: url(../images/glossary_kaiju_title.png);
	background-size: 47px auto;
}

#glossary .kaiju dd {
	background-image: url(../images/glossary_kaiju_text.png);
	background-size: 465px auto;
}

/*＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝
　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　glossary_end
＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝*/





/*＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝
campaign_start
＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝*/
#campaign {
	position: relative;
	width: 100%;
	height: 4133px;

	background-color: #ffef3f;
    padding-bottom: 100px;
	/*
	background-color: aqua;
	opacity: 0.5;
*/
}

#campaign .border span {
	position: relative;
	display: block;
	width: 100%;
	background-color: #000000;
	margin: 0 0 10px 0;
}

#campaign .border span:nth-of-type(1) {
	height: 350px;
}

#campaign .border span:nth-of-type(2) {
	height: 70px;
}

#campaign .border span:nth-of-type(3) {
	height: 30px;
}

#campaign .border span:nth-of-type(4) {
	height: 10px;
	margin: 0;
}

#campaign .border span:nth-of-type(4)::after {
	content: '';
	position: absolute;
	display: block;
	top: 10px;
	left: 50%;
	width: 141px;
	height: 71px;
	margin: 0 0 0 -71px;
	background-image: url(../images/campaign_border_arrow.png);
}

#campaign .camp1 {
	position: relative;
	padding: 206px 0 0 0;
	/*	background-color: fuchsia;*/
}

#campaign .camp1 h2 {
	position: relative;
	width: 255px;
	height: 79px;
	margin: 0 auto 55px auto;
	background-image: url(../images/campaign_camp1_h2.png);
}

#campaign .camp1 h2::before {
	content: '';
	position: absolute;
	top: -70px;
	left: 50%;
	width: 36px;
	height: 18px;
	margin: 0 0 0 -19px;
	background-image: url(../images/campaign_head_icon_a.png);
}

#campaign .camp1 h2::after {
	content: '';
	position: absolute;
	top: -99px;
	left: 50%;
	width: 62px;
	height: 69px;
	margin: 0 0 0 -32px;
	background-image: url(../images/campaign_head_icon_b.png);
}

#campaign .camp1 > small {
	position: relative;
	display: block;
	width: 420px;
	height: 14px;
	margin: 0 auto 100px auto;
	border-left: 1px solid #000000;
	border-right: 1px solid #000000;
	background-image: url(../images/campaign_camp1_h2_small.png);
	background-size: 348px auto;
	background-repeat: no-repeat;
	background-position: center center;
}


#campaign .camp1 h3 {
	position: relative;
	width: 991px;
	height: 51px;
	margin: 0 auto 170px auto;
	background-image: url(../images/campaign_camp1_h3_1.png);
}

#campaign .camp1 h3 span {
	position: absolute;
	display: block;
	top: 80px;
	width: 554px;
	height: 51px;
	margin: 0 0 0 229px;
	background-image: url(../images/campaign_camp1_h3_2.png);
}

#campaign .camp1 .kv {
	position: relative;
	width: 1680px;
	height: 600px;
	margin: 0 auto;
	background-image: url(../images/campaign_camp1_kv.png);
	background-size: 1680px auto;
}

/*h4_common*/
#campaign .camp1 h4 {
	position: relative;
	width: 260px;
	height: 80px;
	text-indent: -9999px;
	background-position: center center;
	background-repeat: no-repeat;
	background-size: auto 20px;
}

#campaign .camp1 .date {
	padding: 0 0 160px 0;
	/*	background-color: forestgreen;*/
}

#campaign .camp1 .date h4 {
	margin: -40px auto 45px auto;
	background-color: #000000;
	background-image: url(../images/campaign_camp1_date_h4.png);
}

#campaign .camp1 .date p {
	position: relative;
	width: 697px;
	height: 29px;
	margin: 0 auto;
	background-image: url(../images/campaign_camp1_date_text.png);
}

#campaign .camp1 .overview {
	/*	background-color: firebrick;*/
	padding: 0 0 218px 0;
}

/*overview_p_common*/
#campaign .camp1 .overview p {
	position: relative;
}

#campaign .camp1 .overview p:nth-of-type(1) {
	width: 542px;
	height: 33px;
	margin: 0 auto 50px auto;
	background-image: url(../images/campaign_camp1_overview_strong.png);
}

#campaign .camp1 .overview p:nth-of-type(2) {
	width: 717px;
	height: 21px;
	margin: 0 auto;
	background-image: url(../images/campaign_camp1_overview_p1.png);
}

#campaign .camp1 .overview p span {
	position: relative;
	display: block;
	margin: 40px auto 0 auto;
	width: 737px;
	height: 23px;
	background-image: url(../images/campaign_camp1_overview_p2.png);
}


#campaign .camp1 .howto {
	/*	background-color: dodgerblue;*/
}

#campaign .camp1 .howto h4 {
	border: 1px solid #000000;
	margin: 0px auto 68px auto;
	background-image: url(../images/campaign_camp1_howto_h4.png);
}

#campaign .camp1 .howto ol {
	position: relative;
	width: 1000px;
	margin: 0 auto;
	/*	background-color: deeppink;*/
}

/*howto_headline_common*/
#campaign .camp1 .howto ol li .hl {
	position: relative;
	width: 100%;
	padding: 35px 0 35px 0;
	background-color: #000000;
	background-position: center center;
}

/*howto_text_box*/
#campaign .camp1 .howto ol li > div {
	width: 100%;
	box-sizing: border-box;
	padding: 15px 0 15px 0;
	border: 1px solid #000000;
}

/*howto_btn_common*/
#campaign .camp1 .howto ol .btn {
	position: relative;
	display: block;
	width: 685px;
	height: 110px;
	margin: 0 auto;
	border-radius: 60px;
	background-position: center center;
}

/*howto_step_common*/
#campaign .camp1 .howto .hl span {
	position: absolute;
	display: block;
	top: -20px;
	left: 50%;
	margin: 0 0 0 -500px;
	width: 113px;
	height: 37px;
	background-color: #0042ff;
	background-position: center center;
	background-repeat: no-repeat;
	background-size: auto 17px;
}

/*
step1
*/
/*step1_text*/
#campaign .camp1 .howto ol li.step1 .hl {
	height: 20px;
	background-image: url(../images/campaign_camp1_howto_step1_text.png);
	background-size: 393px auto;
}

#campaign .camp1 .howto ol li.step1 span {
	background-image: url(../images/campaign_camp1_step1.png);
}


/*
step2
*/
/*step2_text*/
#campaign .camp1 .howto ol li.step2 .hl {
	height: 56px;
	background-image: url(../images/campaign_camp1_howto_step2_text.png);
	background-size: 524px auto;
}

/*step2_btn*/
#campaign .camp1 .howto ol li.step2 .btn {
	background-image: url(../images/campaign_camp1_btn_fb.png);
	background-size: 316px auto;
	background-color: #1877f2;
}

#campaign .camp1 .howto ol li.step2 span {
	background-image: url(../images/campaign_camp1_step2.png);

}


/*
step3
*/
/*step3_text*/
#campaign .camp1 .howto ol li.step3 .hl {
	height: 55px;
	background-image: url(../images/campaign_camp1_howto_step3_text.png);
	background-size: 479px auto;
}

/*step3_btn*/
#campaign .camp1 .howto ol li.step3 .btn {
	background-image: url(../images/campaign_camp1_btn_google.png);
	background-size: 343px auto;


}

/*btn_color*/
#campaign .camp1 .howto ol li.step3 > div p:nth-of-type(1) {
	background-color: #b3b3b3;
}

/*active_btn_color*/
#campaign .camp1 .howto ol li.step3 > div p:nth-of-type(2) a {
	background-color: #34a853;
}


#campaign .camp1 .howto ol li.step3 > div p:nth-of-type(2) {
	display: none;
}



/*active*/
#campaign .camp1 .howto ol li.step3 > div.active p:nth-of-type(1) {
	display: none;
}

#campaign .camp1 .howto ol li.step3 > div.active p:nth-of-type(2) {
	display: block;
}


#campaign .camp1 .howto ol li.step3 span {
	background-image: url(../images/campaign_camp1_step3.png);
}



/*
step4
*/
/*step4_text*/
#campaign .camp1 .howto ol li.step4 .hl {
	height: 21px;
	background-image: url(../images/campaign_camp1_howto_step4_text.png);
	background-size: 198px auto;
}

#campaign .camp1 .howto ol li.step4 span {
	background-image: url(../images/campaign_camp1_step4.png);
}

#campaign .camp1 .howto ol li.step4 div h5 {
	position: relative;
	width: 96px;
	height: 107px;
	margin: 40px auto 30px auto;
	background-image: url(../images/campaign_camp1_step4_itemtitle.png);
}

#campaign .camp1 .howto ol li.step4 div p {
	position: relative;
	width: 484px;
	height: 64px;
	margin: 0 auto 30px auto;
	background-image: url(../images/campaign_camp1_step4_item_name.png);
}

#campaign .camp1 .howto ol li.step4 .prize {
	position: relative;
	width: 100%;
	background-color: #ffca57;
	background-image: url(../images/campaign_camp1_step4_sitem_pattern.png);
	background-repeat: repeat;
	background-size: 100px auto;
}

#campaign .camp1 .howto ol li.step4 .prize .item {
	position: relative;
	width: 600px;
	height: 350px;
	margin: 0 auto 20px auto;
	background-color: #f2f2f2;
	background-image: url(../images/campaign_camp1_step4_item_img.png);
	background-size: 182px auto;
	background-position: center 20px;
}

#campaign .camp1 .howto ol li.step4 .prize small {
	position: absolute;
	display: block;
	width: 201px;
	height: 14px;
	bottom: 15px;
	left: 50%;
	margin: 0 0 0 -100px;
	background-image: url(../images/campaign_camp1_step4_item_small.png);
}

#campaign .camp1 .howto ol li.step4 div > small {
	position: relative;
	display: block;
	width: 469px;
	height: 16px;
	margin: 0 auto 10px auto;
	text-indent: -9999px;
	background-image: url(../images/campaign_camp1_step4_small.png);
}







/*howto_list_arrow*/
#campaign .camp1 .howto ol li::after {
	content: '';
	position: relative;
	display: block;
	width: 57px;
	height: 29px;
	padding: 20px 0 20px 0;
	margin: 0 auto;
	background-image: url(../images/flow_arrow.png);
	background-repeat: no-repeat;
	background-position: center center;
}

#campaign .camp1 .howto ol li:last-of-type::after {
	display: none;
}

/*＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝
　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　   　　　campaign_end
＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝*/





/*＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝
end_start
＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝*/
#end {
	position: relative;
	width: 100%;
	height: 1680px;
	margin: -515px 0 0 0;
	background-image: url(../images/end_bg.png);
	background-position: center bottom;
	background-repeat: no-repeat;
}

#end a {
	position: absolute;
	display: block;
	top: 668px;
	left: 50%;
	width: 136px;
	height: 90px;
	margin: 0 0 0 -68px;
	background-image: url(../images/end_btn_back.png);
	background-size: auto 20px;
	background-position: center bottom;
	background-repeat: no-repeat;
}

#end a::before {
	content: '';
	position: absolute;
	top: 0;
	left: 50%;
	width: 57px;
	height: 29px;
	margin: 0 0 0 -29px;
	background-image: url(../images/end_btn_arrow.png);

}


#end ul {
	position: absolute;
	display: flex;
	justify-content: space-between;
	align-items: center;
	top: 920px;
	left: 50%;
	width: 780px;
	height: 70px;
	margin: 0 0 0 -390px;
}

#end ul li:nth-of-type(1) {
	width: 259px;
	height: 66px;
	background-image: url(../images/end_logo_ms.png);
}

#end ul li:nth-of-type(2) {
	width: 239px;
	height: 60px;
	background-image: url(../images/end_logo_mh.png);
}

/*＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝
　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　   end_end
＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝*/





/*＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝
share_start
＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝*/
footer#global #share {
	position: relative;
	width: 100%;
	padding: 70px 0 70px 0;
	/*
	background-color: fuchsia;
	opacity: 0.5;
*/
}

footer#global #share h3 {
	position: relative;
	width: 137px;
	height: 20px;
	margin: 0 auto 30px auto;
	text-indent: -9999px;
	background-image: url(../images/share_title.png);
}

footer#global #share ul {
	position: relative;
	display: flex;
	justify-content: space-between;
	align-items: center;
	width: 190px;
	height: 85px;
	margin: 0 auto;
}

footer#global #share ul a {
	display: block;
	text-indent: -9999px;
}

footer#global #share ul .facebook {
	width: 85px;
	height: 85px;
	background-image: url(../images/icon_sns_facebook.png);
}

footer#global #share ul .line {
	width: 80px;
	height: 80px;
	background-image: url(../images/icon_sns_line.png);
}

/*＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝
　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　 share_end
＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝*/





/*＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝
footer_start
＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝*/
footer#global {}

footer#global .link {
	position: relative;
	display: flex;
	justify-content: center;
	width: 100%;
	font-size: 16px;
	height: 1em;
	color: #000000;
	padding: 50px 0 50px 0;
}

footer#global .link a {
	text-decoration: none;
	letter-spacing: 0.2em;

}

a:link,
a:visited,
a:hover,
a:active {
	color: #000000;
}

footer#global .link a::after {
	content: '|';
	display: inline-block;
	margin: 0 20px 0 20px;
}

footer#global .link li:last-of-type a::after {
	display: none;
}

footer#global .licence {
	position: relative;
	width: 100%;
	padding: 50px 0 50px 0;
	text-align: center;
}

footer#global .licence a {
	position: relative;
	display: block;
	text-indent: -9999px;
	width: 142px;
	height: 165px;
	margin: 0 auto 30px auto;
	background-image: url(../images/promotion_logo_xflag.png);
}

/*＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝
　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　footer_end
＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝*/





/*＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝
animation_start
＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝*/
/*section_animation*/
/* #kv, */
#info,
#story,
#shortfilm,
#character,
#character .amida,
#character .kirari,
#character .infinityx,
#glossary,
#campaign,
#campaign .camp1,
#campaign .camp1 .howto,
#end,
#global {
	transition: all 0.5s ease-out;
	opacity: 0;
	transform: translateY(30px);
}

/* #kv.active, */
#info.active,
#story.active,
#shortfilm.active,
#character.active,
#character.active .amida.active,
#character.active .kirari.active,
#character.active .infinityx.active,
#glossary.active,
#campaign.active,
#campaign.active .camp1.active,
#campaign.active .camp1.active .howto.active,
#end.active,
#global.active {
	opacity: 1;
	transform: translateY(0);
}


/*animation_common*/
@keyframes kvSlideIn {
	0% {
		transform: translateY(30px);
	}

	100% {
		transform: translateY(0px);
	}
}



@keyframes maskIn {
	0% {
		transform: translateY(100%);
	}

	100% {
		transform: translateY(0);
	}
}

@keyframes maskOut {
	0% {
		opacity: 1;
		transform: translateY(0);
	}
	99% {
		opacity: 1;
		transform: translateY(-100%);
	}
	100% {
		opacity: 0;
		transform: translateY(-100%);
	}
}

@keyframes fadeIn {
	0% {
		opacity: 0;
		transform: translateY(50px);
	}

	100% {
		opacity: 1;
		transform: translateY(0);
	}
}

@keyframes popUp {
	0% {
		transform: scale(0);
		opacity: 0;
	}

	90% {
		transform: scale(1.12);
		opacity: 1;
	}

	100% {
		transform: scale(1);
	}
}

@keyframes infoSlideIn {
	0% {
		opacity: 0;
		transform: translate(50px, -50px);
	}

	100% {
		opacity: 1;
		transform: translate(0, 0);
	}
}

@keyframes opacity {
	0% {
		opacity: 0;
	}

	100% {
		opacity: 1;
	}
}



/*mask_common*/
.inner {
	display: block;
	width: inherit;
	height: inherit;
}

.cover {
	overflow: hidden;
}

.inner::before {
	content: '';
	display: block;
	position: absolute;
	width: 100%;
	height: 100%;
}

/*KV*/
/*logo_common_animation*/
#kv.active li.cover {
	animation: kvSlideIn 0.4s ease 0.4s both;
}

#kv.active li .inner {
	bottom: 0;
	left: 0;
	animation: maskIn 0.4s ease-out 0.4s backwards;
}

#kv.active li .inner::before {
	background-color: #ffffff;
	bottom: 0;
	left: 0;
	animation: maskOut 0.3s ease-out 0.8s forwards;
}




/*info*/
#info.active > p:nth-of-type(1) .cover {
	animation: kvSlideIn 0.4s ease both;
}

#info.active > p:nth-of-type(1) .cover .inner {
	bottom: 0;
	left: 0;
	animation: maskIn 0.4s ease-out backwards;

}

#info.active > p:nth-of-type(1) .cover .inner::before {
	background-color: #000000;
	bottom: 0;
	left: 0;
	animation: maskOut 0.3s ease-out 0.4s forwards;
}

/*infinity_mark*/
#info.active div.infinity {
	animation: fadeIn 0.3s ease-out 0.5s both;
}

/*play_button*/
#info.active div.infinity a {
	animation: popUp 0.3s ease-out 0.7s both;
}


#info.active h2.news_h2,
#info.active p.news_text,
#info.active .wrap_rightElement::before {
	animation: infoSlideIn 0.3s ease-out 0.9s both;
}





/*story*/
#story.active .ss .cover {
	animation: kvSlideIn 0.4s ease 0.2s both;
}

#story.active .ss .cover .inner {
	bottom: 0;
	left: 0;
	animation: maskIn 0.4s ease-out 0.2s backwards;

}

#story.active .ss .cover .inner::before {
	background-color: #000000;
	animation: maskOut 0.3s ease-out 0.6s forwards;
}


/*character*/
#character.active .amida.active .img,
#character.active .kirari.active .img,
#character.active .infinityx.active .img {
	animation: opacity 0.5s ease-out 0.3s backwards;
}


/*glossary*/
#glossary.active .ss.cover {
	animation: kvSlideIn 0.4s ease 0.2s both;
}

#glossary.active .ss.cover .inner {
	bottom: 0;
	left: 0;
	animation: maskIn 0.4s ease-out 0.2s backwards;

}

#glossary.active .ss.cover .inner::before {
	background-color: #000000;
	animation: maskOut 0.3s ease-out 0.6s forwards;
}



/*＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝
　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　animation_end
＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝*/
