:root {
	--stickyFooterBaseHeight			: 115px;
	--stickyFooterNodeSideMargin		: 20px;
	--stickyFooterNodeBtnLargeSize		: 115px;
	--stickyFooterNodeBtnReturnSize		: 100px;
	--stickyFooterNeedMarginBottom		: calc( var( --stickyFooterBaseHeight ) + var( --stickyFooterNodeBtnReturnSize ) );
}

#sticky_footer_root {
	z-index				: 1000;
	pointer-events		: none;
}
	#sticky_body_object {
		position			: relative;
		height				: calc( 100% - var( --stickyFooterBaseHeight ) );
		margin				: auto;
	}
	#sticky_footer_object {
		position			: -webkit-sticky;
		position			: sticky;
		bottom				: 0;
/*		bottom				: 80px;*/
		pointer-events		: auto;
	}
		#sticky_footer_object_content {
			position			: static;
			left				: 0px;
			bottom				: 0px;
			width				: 640px;
			height				: var( --stickyFooterBaseHeight );
		}
			#sticky_footer_bg {
				position			: absolute;
				left				: 0px;
				bottom				: 0px;
				width				: 640px;
				height				: 68px;
			}
			#sticky_footer_btn_list,
			#sticky_footer_btn_list_planet_line,
			#sticky_footer_btn_list_lane_select,
			#sticky_footer_btn_list_dragoon_select,
			#sticky_footer_btn_list_member_list {
				position			: absolute;
				left				: 0px;
				bottom				: 0px;
				width				: 640px;
				height				: var( --stickyFooterBaseHeight );
				display				: flex;
				align-items			: flex-end;
				justify-content		: center;
			}
				#sticky_footer_btn_list_lane_select {
					pointer-events: none;
				}
				#sticky_footer_btn_list_node_return_btn {
					position			: absolute;
					left				: calc( var( --stickyFooterNodeSideMargin ) );
					bottom				: var( --stickyFooterNodeBtnLargeSize );
					width				: var( --stickyFooterNodeBtnReturnSize );
					height				: var( --stickyFooterNodeBtnReturnSize );
					z-index				: 1;
				}
				#sticky_footer_btn_list_node_additive_information_mission {
					position			: absolute;
					left				: calc( -1 * var( --stickyFooterNodeSideMargin ) );
					bottom				: var( --stickyFooterBaseHeight );
					width				: 310px;
					height				: 114px;
					display				: none;
					overflow			: hidden;
					pointer-events		: none;
				}
					#sticky_footer_btn_list_node_additive_information_mission_stamina_list_div,
					#sticky_footer_btn_list_node_additive_information_mission_stamina_full_list_animation_div {
						position			: absolute;
						left				: 5px;
						top					: 23px;
					}
					#sticky_footer_btn_list_node_additive_information_mission_stamina_full_animation_div {
						position			: absolute;
						left				: 75px;
						top					: 50px;
					}
					#sticky_footer_btn_list_node_additive_information_mission_stamina_full_left_time_div{
						position			: absolute;
						left				: 10px;
						top					: 53px;
						line-height			: 1.0em;
						white-space			: nowrap;
						text-shadow : 0 0 0.2em black, 0 0 0.2em black, 0 0 0.2em black, 0 0 0.2em black;
					}
					#sticky_footer_btn_list_node_additive_information_mission_stamina_full_over_flow_div{
						position			: absolute;
						left				: 225px;
						top					: 63px;
						width				: 50px;
						line-height			: 1.0em;
						text-align			: right;
						white-space			: nowrap;
					}
				#sticky_footer_btn_list_node_additive_information_hanakaruta_shop {
					position		: absolute;
					right			: -20px;
					top				: -35px;
					width			: 170px;
					height			: 117px;
					z-index: 2;
				}
				#sticky_footer_btn_list_node_additive_information_ruby_adventure {
					position			: absolute;
					right				: calc( -1 * var( --stickyFooterNodeSideMargin ) );
					bottom				: var( --stickyFooterBaseHeight );
					width				: 226px;
					height				: 200px;
					display				: none;
					overflow			: hidden;
					pointer-events		: none;
				}
					#sticky_footer_btn_list_node_additive_information_ruby_adventure .dragoon_icon {
						position			: absolute;
						left				: 40px;
						top					: 25px;
						width				: 44px;
						height				: 44px;
					}
					#sticky_footer_btn_list_node_additive_information_ruby_adventure .left_time_count_down {
						position			: absolute;
						left				: 90px;
						top					: 30px;
						line-height			: 1.0em;
						white-space			: nowrap;
						text-shadow			: 0 0 0.1em #0050ff, 0 0 0.1em #0050ff, 0 0 0.1em #0050ff, 0 0 0.1em #0050ff, 0 0 0.1em #0050ff;
					}

/* フッター要素の内の class 要素を定義 */
#sticky_footer_root .sticky_footer_btn_list_node_large {
	position			: relative;
	width				: var( --stickyFooterNodeBtnLargeSize );
	height				: var( --stickyFooterNodeBtnLargeSize );
	margin				: 0 20px 0 auto;
	z-index				: 2;
}
#sticky_footer_root .sticky_footer_btn_list_node_large:first-child {
	margin				: 0 auto 0 20px;
}
#sticky_footer_root .sticky_footer_btn_list_node {
	position			: relative;
	width				: 95px;
	height				: 95px;
	margin				: 0 auto;
}
#sticky_footer_root .sticky_footer_btn_list_node_alert {
	position			: absolute;
	right				: -10px;
	top					: 0px;
	width				: 50px;
	height				: 50px;
	z-index				: 1;
}
#sticky_footer_root .sticky_footer_btn_list_node_additive_information_slide {
	position			: absolute;
	top: 70px;
	width				: 100%;
	height				: 114px;
	pointer-events		: auto;
}
#sticky_footer_root .sticky_footer_btn_list_node_balloon_div {
	position: absolute;
	top: -42px;
	left: -64px;
	display: inline-block;
	padding: 3px 5px;
	height: 1.4em;
	line-height: 1.4em;
	min-width: 120px;
	max-width: fit-content;
	color: red;
	background: #ffffff;
	border: solid 3px black;
	font-weight: bold;
	white-space: nowrap;
	border-radius: 10px;
	z-index: 2;
}
#sticky_footer_root .sticky_footer_btn_list_node_balloon_div::before {
	content: "";
	position: absolute;
	bottom: -24px;
	left: 50%;
	margin-left: -15px;
	border: 12px solid transparent;
	border-top: 12px solid #ffffff;
	z-index: 2;
}
#sticky_footer_root .sticky_footer_btn_list_node_balloon_div::after {
	content: "";
	position: absolute;
	bottom: -30px;
	left: 50%;
	margin-left: -17px;
	border: 14px solid transparent;
	border-top: 14px solid black;
	z-index: 1;
}
#sticky_footer_root .sticky_footer_btn_list_node_balloon_div[newbie_quest] {
	left: -45px;
}
#sticky_footer_root .sticky_footer_btn_list_node_balloon_div[newbie_quest_progress] {
	left: -60px;
	color: black;
}
	#sticky_footer_root .sticky_footer_btn_list_node_balloon_div[newbie_quest_progress] > span {
		color: red;
	}
#sticky_footer_btn_list_node_additive_information_mission .sticky_footer_btn_list_node_additive_information_slide {
	background-repeat	: no-repeat;
	top					: auto;
	bottom				: 0px;
	width				: 100%;
	height				: 114px;
}
#sticky_footer_btn_list_node_additive_information_ruby_adventure .sticky_footer_btn_list_node_additive_information_slide {
	padding: 19px 0 35px 20px;
	box-sizing: border-box;
	top: 86px;
	display: flex;
	align-items: center;
	justify-content: center;
	background-repeat: no-repeat;
	background-size: 100%;
	background-position: center right;
}
	#sticky_footer_btn_list_node_additive_information_ruby_adventure .sticky_footer_btn_list_node_additive_information_slide > img {
		position: relative;
		width: 60px;
		height: 60px;
		margin: 0;
	}
/* 必勝用追加制御 */
.sticky_footer_btn_list_node_additive_information_slide_misssion_monster_win {
	background-repeat: no-repeat;
	animation: sticky_footer_btn_list_node_additive_information_slide_misssion_monster_win_animation 0.3s steps(3) infinite;
}
@keyframes sticky_footer_btn_list_node_additive_information_slide_misssion_monster_win_animation {
	0%		{ background-position: 0 0; }
	100%	{ background-position: 0 -342px; }
}
#sticky_footer_btn_list_node_additive_information_mission_stamina_monster_win_info {
	position			: absolute;
	top					: -107px;
	width				: 90%;
	height				: 132px;
	padding-top			: 10px;
	line-height			: 30px;
	white-space			: nowrap;
	overflow			: hidden;
	background-repeat	: no-repeat;
	pointer-events		: none;
}
#sticky_footer_btn_list_node_additive_information_mission_stamina_monster_win_info_fever {
	position		: relative;
	top				: 10px;
	line-height		: 30px;
	z-index			: 1;
}
#sticky_footer_btn_list_node_additive_information_mission_stamina_monster_win_info_item {
	position		: relative;
	top				: 10px;
	line-height		: 30px;
	z-index			: 1;
}
#sticky_footer_btn_list_node_additive_information_mission_stamina_monster_win_info_limit_time {
	position		: relative;
	z-index			: 1;
	margin-top		: 50px;
}
/*	エネル2倍中表示	*/
#sticky_footer_btn_list_node_additive_information_mission_enell_up {
	width			: 100%;
}
/* スカウトがあるとき */
#sticky_footer_btn_list_node_scout_notice_img {
	position: absolute;
	bottom: 57px;
	right: 0;
	left: 0;
	margin: 0 auto;
	z-index: 1;
}
#sticky_footer_btn_list_node_additive_information_newbie_campaign {
	position: absolute;
	width: 170px;
	height: 117px;
	right: -30px;
	top: -55px;
	z-index: 1;
}
#sticky_footer_ruby_adventure_animation_dragoon_cutin_img {
	position		: absolute;
	right			: 0px;
	top				: 0px;
	width			: 209px;
	height			: 70px;
	pointer-events	: auto;
	display			: none;
}
#sticky_footer_ruby_adventure_animation_img {
	position		: absolute;
	right			: 0px;
	top				: 70px;
	width			: 226px;
	height			: 113px;
	transform		: translateX( 226px );
	pointer-events	: auto;
	display			: none;
}
#sticky_footer_ruby_adventure_animation_mail_object {
	position		: absolute;
	left			: -15px;
	top				: -130px;
	width			: 106px;
	height			: 70px;
	opacity			: 0;
	display			: none;
}
	#sticky_footer_ruby_adventure_animation_mail_object_reaction_img {
		position		: absolute;
		left			: -50px;
		top				: -41px;
		width			: 52px;
		height			: 49px;
		opacity			: 0;
	}

/* チーム対抗戦用ボタン要素 */
#sticky_footer_root .sticky_footer_btn_list_node_team_battle {
	position			: relative;
	width				: 286px;
	height				: 107px;
	margin				: 0 auto;
}
/* チーム対抗戦用ボタン要素：レーン選択 */
#sticky_footer_root .sticky_footer_btn_list_node_team_battle_lane_select {
	position			: relative;
	width				: 103px;
	height				: 71px;
	margin				: 0 auto;
}
/* チーム対抗戦用ボタン要素：決定 */
#sticky_footer_root .sticky_footer_btn_list_node_team_battle_submit {
	position			: relative;
	width				: 103px;
	height				: 71px;
	margin				: 0 auto;
}
/* 星戦用ボタン要素 */
#sticky_footer_root .sticky_footer_btn_list_node_realm_battle {
	position			: relative;
	width				: 286px;
	height				: 107px;
	margin				: 0 auto;
}

/* スペシャル紅玉回復演出用 */
#sticky_footer_btn_list_node_additive_information_mission_stamina_recovery {
	position			: absolute;
	left				: 285px;
	top					: -600px;
	width				: 45px;
	height				: 45px;
}

img[footer-common-badge] {
	position: absolute;
	right: -10px;
	top: -5px;
	width: 50px;
	height: 50px;
}

#sticky_footer_btn_list_node_additive_information_mission_stamina_list_div > img,
#sticky_footer_btn_list_node_additive_information_mission_stamina_full_list_animation_div > img {
	position			: relative;
	width				: 30px;
	height				: 29px;
	margin				: 0 -3px 0 0;
}
#sticky_footer_btn_list_node_additive_information_mission_stamina_full_list_animation_div > img {
	mix-blend-mode		: screen;
	animation			: sticky_footer_stamina_full_list_animation 1.0s linear 0.0s infinite;
	-webkit-animation	: sticky_footer_stamina_full_list_animation 1.0s linear 0.0s infinite;
	-moz-animation		: sticky_footer_stamina_full_list_animation 1.0s linear 0.0s infinite;
	-ms-animation		: sticky_footer_stamina_full_list_animation 1.0s linear 0.0s infinite;
	-o-animation		: sticky_footer_stamina_full_list_animation 1.0s linear 0.0s infinite;
}
#sticky_footer_btn_list_node_additive_information_mission_stamina_full_animation_div > img {
	position			: absolute;
	left				: 0px;
	top					: 0px;
	width				: 100px;
	height				: 42px;
	margin				: auto;
	visibility			: hidden;
}
#sticky_footer_btn_list_node_additive_information_mission_stamina_full_animation_div > img:nth-child(1) {
	animation			: sticky_footer_stamina_full_animation 1.0s linear 0.0s infinite;
	-webkit-animation	: sticky_footer_stamina_full_animation 1.0s linear 0.0s infinite;
	-moz-animation		: sticky_footer_stamina_full_animation 1.0s linear 0.0s infinite;
	-ms-animation		: sticky_footer_stamina_full_animation 1.0s linear 0.0s infinite;
	-o-animation		: sticky_footer_stamina_full_animation 1.0s linear 0.0s infinite;
}
#sticky_footer_btn_list_node_additive_information_mission_stamina_full_animation_div > img:nth-child(2) {
	animation			: sticky_footer_stamina_full_animation 1.0s linear 0.2s infinite;
	-webkit-animation	: sticky_footer_stamina_full_animation 1.0s linear 0.2s infinite;
	-moz-animation		: sticky_footer_stamina_full_animation 1.0s linear 0.2s infinite;
	-ms-animation		: sticky_footer_stamina_full_animation 1.0s linear 0.2s infinite;
	-o-animation		: sticky_footer_stamina_full_animation 1.0s linear 0.2s infinite;
}
#sticky_footer_btn_list_node_additive_information_mission_stamina_full_animation_div > img:nth-child(3) {
	animation			: sticky_footer_stamina_full_animation 1.0s linear 0.4s infinite;
	-webkit-animation	: sticky_footer_stamina_full_animation 1.0s linear 0.4s infinite;
	-moz-animation		: sticky_footer_stamina_full_animation 1.0s linear 0.4s infinite;
	-ms-animation		: sticky_footer_stamina_full_animation 1.0s linear 0.4s infinite;
	-o-animation		: sticky_footer_stamina_full_animation 1.0s linear 0.4s infinite;
}
#sticky_footer_btn_list_node_additive_information_mission_stamina_full_animation_div > img:nth-child(4) {
	animation			: sticky_footer_stamina_full_animation 1.0s linear 0.6s infinite;
	-webkit-animation	: sticky_footer_stamina_full_animation 1.0s linear 0.6s infinite;
	-moz-animation		: sticky_footer_stamina_full_animation 1.0s linear 0.6s infinite;
	-ms-animation		: sticky_footer_stamina_full_animation 1.0s linear 0.6s infinite;
	-o-animation		: sticky_footer_stamina_full_animation 1.0s linear 0.6s infinite;
}
#sticky_footer_btn_list_node_additive_information_mission_stamina_full_animation_div > img:nth-child(5) {
	animation			: sticky_footer_stamina_full_animation 1.0s linear 0.8s infinite;
	-webkit-animation	: sticky_footer_stamina_full_animation 1.0s linear 0.8s infinite;
	-moz-animation		: sticky_footer_stamina_full_animation 1.0s linear 0.8s infinite;
	-ms-animation		: sticky_footer_stamina_full_animation 1.0s linear 0.8s infinite;
	-o-animation		: sticky_footer_stamina_full_animation 1.0s linear 0.8s infinite;
}

/*雨ふれジャブジャブの画像*/
.sticky_footer_object_mission_evnet_img {
	position: absolute;
	top: 0;
	left: 0;
	width: 127px;
	height: 68px;
}


/* フッター要素内の状態別の表示切り替えを定義 */
#sticky_footer_root[data-m='Main'] #sticky_footer_btn_list_node_additive_information_mission,
#sticky_footer_root[data-m='Main'] #sticky_footer_btn_list_node_additive_information_ruby_adventure {
	display				: block;
}
#sticky_footer_root[data-m='Main'] #sticky_footer_btn_list_node_return_btn,
#sticky_footer_root[data-m='Mission'] #sticky_footer_btn_list_node_return_btn {
	display				: none;
}

@keyframes 			sticky_footer_stamina_full_list_animation {
	0%		{ opacity: 0; }
	50%		{ opacity: 1; }
	100%	{ opacity: 0; }
}
@-webkit-keyframes	sticky_footer_stamina_full_list_animation {
	0%		{ opacity: 0; }
	50%		{ opacity: 1; }
	100%	{ opacity: 0; }
}
@-moz-keyframes		sticky_footer_stamina_full_list_animation {
	0%		{ opacity: 0; }
	50%		{ opacity: 1; }
	100%	{ opacity: 0; }
}
@-ms-keyframes		sticky_footer_stamina_full_list_animation {
	0%		{ opacity: 0; }
	50%		{ opacity: 1; }
	100%	{ opacity: 0; }
}
@-o-keyframes		sticky_footer_stamina_full_list_animation {
	0%		{ opacity: 0; }
	50%		{ opacity: 1; }
	100%	{ opacity: 0; }
}

@keyframes 			sticky_footer_stamina_full_animation {
	0%		{ visibility: hidden; z-index: 1; }
	1%		{ visibility: visible; z-index: 2; }
	20%		{ visibility: visible; z-index: 2; }
	21%		{ visibility: hidden; z-index: 1; }
	100%	{ visibility: hidden; z-index: 1; }
}
@-webkit-keyframes	sticky_footer_stamina_full_animation {
	0%		{ visibility: hidden; z-index: 1; }
	1%		{ visibility: visible; z-index: 2; }
	20%		{ visibility: visible; z-index: 2; }
	21%		{ visibility: hidden; z-index: 1; }
	100%	{ visibility: hidden; z-index: 1; }
}
@-moz-keyframes		sticky_footer_stamina_full_animation {
	0%		{ visibility: hidden; z-index: 1; }
	1%		{ visibility: visible; z-index: 2; }
	20%		{ visibility: visible; z-index: 2; }
	21%		{ visibility: hidden; z-index: 1; }
	100%	{ visibility: hidden; z-index: 1; }
}
@-ms-keyframes		sticky_footer_stamina_full_animation {
	0%		{ visibility: hidden; z-index: 1; }
	1%		{ visibility: visible; z-index: 2; }
	20%		{ visibility: visible; z-index: 2; }
	21%		{ visibility: hidden; z-index: 1; }
	100%	{ visibility: hidden; z-index: 1; }
}
@-o-keyframes		sticky_footer_stamina_full_animation {
	0%		{ visibility: hidden; z-index: 1; }
	1%		{ visibility: visible; z-index: 2; }
	20%		{ visibility: visible; z-index: 2; }
	21%		{ visibility: hidden; z-index: 1; }
	100%	{ visibility: hidden; z-index: 1; }
}
