@charset "UTF-8";

/* ========================================
	plus MV
======================================== */
.p-plus-bg{
	width: 100%;
	height: 100%;
	position: fixed;
	background: url(../images/plus/plus_bg.jpg) no-repeat top center;
	background-size: cover;
	z-index: -1;
}
.p-plus-mv_ttl{
	position: absolute;
	width: 29.7395833%; /* 571 / 1920 * 100 */
	top: 0.2%;
	left: 0;
}
.p-plus-mv{
	position: relative;
	width: 66.666666%; /* 1280 / 1920 * 100 */
	max-width: 2000px;
	margin: 0 auto 2% auto;
}
.p-plus-mv_kirby{
	float: right;
	width: 44.6%; /* 571 / 1280 * 100 */
	margin-top: 1.5%;
	animation-duration: 1s !important;
}
.p-plus-mv_lead{
	float: left;
	width: 54.21875%; /* 694 / 1280 * 100 */
	padding-top: 16.5%;
}
.p-plus-mv_lead p{
	font-size:2.5rem;
	line-height: 1.7;
	margin-top: 3%;
	margin-left: 2%;
	white-space: nowrap;
}
.p-plus-mv_star_l{
	position: absolute;
	width: 17.1%; /* 219 / 1280 * 100 */
	bottom: -3%;
	left: -12%; /* 154 / 1280 * 100 */
}
.p-plus-mv_star_r{
	position: absolute;
	width: 18.59375%; /* 238 / 1280 * 100 */
	top: 6%;
	right: -15.46875%; /* 198 / 1280 * 100 */
}
.no-js .p-plus-mv_kirby_kirby,
.p-plus-mv_kirby.is-animation {
	animation: plusChara linear 1000ms 1;
	animation-fill-mode: forwards;
}
.no-js .p-plus-mv_star_r,
.p-plus-mv_star_r {
	animation: plusChara 1000ms linear 150ms 1;
	animation-fill-mode: forwards;
}
.no-js .p-plus-mv_star_l,
.p-plus-mv_star_l.is-animation {
	animation: plusChara 1000ms linear 300ms 1;
	animation-fill-mode: forwards;
}
.p-plus-devil{
	position: relative;
	width: 70.46875%; /* 1353 / 1920 * 100 */
	max-width: 2000px;
	margin: 0 auto 3% auto;
}
.p-plus-area_bg{
	position: relative;
	pointer-events: none;	
}
.p-plus-devil .p-plus-area_bg{
	z-index: 1;
}
.p-plus-devil_chara{
	position: absolute;
	width: 26.2379896%; /* 355 / 1353 * 100 */
	top: 61%;
	left: -10.5%;
	z-index: 10;
}
.p-plus_txt{
	font-size:2.4rem;
	line-height: 1.8;
}
.p-plus-devil_lead{
	position: absolute;
	text-align: center;
	width: 51.736881%; /* 700 / 1353 * 100 */
	top:35%;
	left: 3%;
	z-index: 10;
}
/*mov*/
.p-plus-devil .mov{
	position: absolute;
	width: 40%;
	top:23.0%;
	left: 54.1%;
	z-index: 0;
}
.player_wrap{
	display: block;
	position: relative;
	height: 0;
	margin-top: 2%;
	padding-top: 56.25%;
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
}
.yt_player{
	position: absolute;
	top: 0;
	left: 0;
	z-index: 0;
	width: 100%;
	height: 100%;
}
.p-plus-subgame{
	position: relative;
	width: 71.4%; /* 1371 / 1920 * 100 */
	max-width: 2000px;
	margin: 0 auto 4% auto;
}
.p-plus-subgame_lead{
	position: absolute;
	width: 90%;
	top: 20%;
	text-align: center;
	left: 0;
	right: 0;
	margin-left: auto;
	margin-right:auto;
}
.p-plus-subgame_in{
	position: absolute;
	width: 89.5696571%; /* 1228 / 1371 * 100 */
	top: 29%;
	left: 6%;
	display: -webkit-flex; display: flex;
	-webkit-justify-content: space-between;
	justify-content: space-between;
}
.p-plus-subgame_mov{
	position: relative;
	width: 48.3713355%; /* 594 / 1228 * 100 */
}
.p-plus-subgame_mov .p-plus-area_bg{
	z-index: 10;
}
.subgame_txt{
	position: absolute;
	z-index: 15;
	color: #fff;
	font-size:2.0rem;
	line-height: 1.8;
	white-space: nowrap;
}
.p-plus-subgame_de_lead{
	top: 70%;
	left: 23.0%;
}
.p-plus-subgame_me_lead{
	top: 70%;
	left: 11%;
	letter-spacing: 0.15em;
}
.is-tablet .subgame_txt{
	letter-spacing: 0 !important;
	font-size:1.8rem;
}
.p-plus-subgame_chara_l{
	position: absolute;
	width: 12.837345%; /* 176 / 1371 * 100 */
	top: 67.5%;
	left: 2%;
	z-index: 20;
}
.p-plus-subgame_mov .mov{
	position: absolute;
	width: 91.5%;
	top: 4%;
	left: 3.8%;
	z-index: 0;
}
.p-plus-subgame_chara_r{
	position: absolute;
	width: 15.6%; /* 214 / 1371 * 100 */
	top: 68%;
	right: 0.1%;
	z-index: 20;
}
.p-plus-amiibo{
	position: relative;
	width: 70.3645833%; /* 1351 / 1920 * 100 */
	max-width: 2000px;
	margin: 0 auto 3.5% auto;
}
.p-plus-amiibo_lead{
	position: absolute;
	width: 90%;
	top: 22%;
	text-align: center;
	left: 0;
	right: 0;
	margin-left: auto;
	margin-right:auto;
	font-size:2.2rem;
	line-height: 1.8;
}
.amiibo_p{
	position: absolute;
	top: 41%;
}
.p-plus-amiibo_kirby{
	width: 23.8341968%; /* 322 / 1351 * 100 */
	left: 3.5%;
}
.p-plus-amiibo_wad{
	width: 22.7239%; /* 307 / 1351 * 100 */
	left: 26.8%;
}
.p-plus-amiibo_dede{
	width: 24.796447%; /* 335 / 1351 * 100 */
	left: 49%;
}
.p-plus-amiibo_meta{
	width: 27.7572168%; /* 375 / 1351 * 100 */
	left: 70.3182827%; /* 950 / 1351 * 100 */
}
.amiibo_p, .mv_img {
	opacity: 0;
	transform: scale(1);
}
.is-tablet .amiibo_p, .is-tablet .mv_img,
.is-tablet .amiibo_p, .is-tablet .mv_img {
	opacity: 1!important;
	transform: scale(1)!important;
	animation-name: none!important;
}
.no-js .p-plus-amiibo_kirby,
.p-plus-amiibo_kirby.is-animation {
	animation: plusChara linear 1000ms 1;
	animation-fill-mode: forwards;
}
.no-js .p-plus-amiibo_wad,
.p-plus-amiibo_wad.is-animation {
	animation: plusChara 1000ms linear 150ms 1;
	animation-fill-mode: forwards;
}
.no-js .p-plus-amiibo_dede,
.p-plus-amiibo_dede.is-animation {
	animation: plusChara 1000ms linear 300ms 1;
	animation-fill-mode: forwards;
}
.no-js .p-plus-amiibo_meta,
.p-plus-amiibo_meta.is-animation {
	animation: plusChara 1000ms linear 450ms 1;
	animation-fill-mode: forwards;
}
@keyframes plusChara {
	0% {
		opacity: 0;	transform: scale(1);
	}
	8% {
		opacity: 1;	transform: scale(1.1);
	}
	17% {
		opacity: 1;	transform: scale(1.2);
	}
	34% {
		opacity: 1;	transform: scale(1);
	}
	51% {
		opacity: 1;	transform: scale(1.1);
	}
	68% {
		opacity: 1;	transform: scale(1);
	}
	84% {
		opacity: 1;	transform: scale(1.05);
	}
	100% {
		opacity: 1;	transform: scale(1);
	}
}
.p-plus-amiibo_btn{
	position: absolute;
	width: 46.9282%; /* 634 / 1351 * 100 */
	top: 79.5%;
	left: 0;
	right: 0;
	margin-left: auto;
	margin-right:auto;
}
.p-plus-amiibo_btn .ico-arr{
	display: block;
	position: absolute;
	top: 25%;
	right: 5%;
	width: 10%; /* 64 / 634 * 100 */
	height: 52.6315789%; /* 60 / 114 * 100 */
	z-index: 10;
	background: url(../images/plus/amiibo_btn_arr.png) no-repeat 0 0;
	background-size: 100% auto;
	-webkit-animation: arrowR 1000ms infinite;
	animation: arrowR 1000ms infinite;
	pointer-events: none;
}
@-webkit-keyframes arrowR {
	0% {	-webkit-transform: translateX(0%);	transform: translateX(0%);	}
	40% {	-webkit-transform: translateX(35%);	transform: translateX(35%);	}
	80% {	-webkit-transform: translateX(0%);	transform: translateX(0%);	}
	100% {	-webkit-transform: translateX(0%);	transform: translateX(0%);	}
}
@keyframes arrowR {
	0% {	-webkit-transform: translateX(0%);	transform: translateX(0%);	}
	40% {	-webkit-transform: translateX(35%);	transform: translateX(35%);	}
	80% {	-webkit-transform: translateX(0%);	transform: translateX(0%);	}
	100% {	-webkit-transform: translateX(0%);	transform: translateX(0%);	}
}
.p-plus-other{
	width: 66.6666666%; /* 1280 / 1920 * 100 */
	max-width: 2000px;
	margin: 0 auto 4% auto;
}
.p-plus-other_h{
	width: 52.1875%; /* 668 / 1280 * 100 */
	margin: 0 auto 2% auto;
}
.p-plus-other_tab{
	width: 77.8125%; /* 996 / 1280 * 100 */
	margin: 0 auto;
	position: relative;
}
.p-plus-other_tab a.other_link{
	display: block;
	position: absolute;
	top: 13%;
	left: 40.5%;
	width:19%; /* 190 / 996 * 100 */
}
.p-plus-other_tab a.other_link:hover{
	opacity: 0.6;
}
@media screen and (max-width: 1150px) {
	.subgame_txt, .p-plus-amiibo_lead{
		font-size:2.0rem;
	}
}
@media screen and (max-width: 1500px) {
	.p-plus .l-footer_pagetop{
		bottom: 5%;
	}
}
@media screen and (max-width: 1300px) {
	.p-plus .l-footer_pagetop{
		bottom: 6%;
	}
}
@media screen and (max-width: 1080px) {
	.p-plus .l-footer_pagetop{
		bottom: 7%;
	}
}