/*========= ローディング画面のためのCSS ===============*/
#splash {
	position: fixed;
	width: 100%;
	height: 100%;
	background: #ccc;
	z-index: 9999999;
	text-align: center;
	color: #222;
	font-weight: bold;

	overflow: hidden;
}

#splash-logo {
	position: absolute;
	font-size: 24px;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}

/*========= 画面遷移のためのCSS ===============*/

/*画面遷移アニメーション*/

body {
	background: #ccc;
	/*遷移アニメーションと同じ色を指定*/
}

body.appear {
	background: #777;
	width: 100%;
	/*画面を開いた後の背景色を指定*/
}

.splashbg {
	display: none;
	content: "";
	position: fixed;
	transform: scale(100);
	background-color: #ccc;
	/*伸びる背景色の設定*/
	z-index: 999;
	/*丸のスタートの形状*/
	top: calc(50% - 1rem);
	/*50%から円の半径を引いた値*/
	left: calc(50% - 1rem);
	/*50%から円の半径を引いた値*/
	width: 2rem;
	height: 2rem;
}

/*bodyにappearクラスがついたら出現*/
body.appear .splashbg {
	display: block;
	border-radius: 50%;
	animation-name: PageAnime;
	animation-duration: 1s;
	animation-fill-mode: forwards;
}

@keyframes PageAnime {

	/*丸のスタート位置と形状*/
	0% {
		transform: scale(100);
	}

	/*丸の終了位置と形状*/
	100% {
		transform: scale(0);
		display: none;
		/*終了時は消える*/
	}
}

/*画面遷移の後現れるコンテンツ設定*/
#container {
	opacity: 0;
	/*はじめは透過0に*/
}

/*bodyにappearクラスがついたら出現*/
body.appear #container {
	animation-name: PageAnimeAppear;
	animation-duration: 2s;
	animation-delay: 0.5s;
	animation-fill-mode: forwards;
	opacity: 0;
}

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

	100% {
		opacity: 1;
	}
}