.body-loading {
	overflow: hidden;
}

#loading-bg {
	width: 100vw;
	height: 100vh;
	background: #FFF;
	position: fixed;
	top: 0;
	left: 0;
	display: flex;
	justify-content: center;
	align-items: center;
	flex-direction: column;
}

.loading-logo {
	padding-bottom: 35px;
}

.loading-logo>img {
	width: 200px;
}

.loading {
	position: relative;
	width: 55px;
	height: 55px;
	border-radius: 50%;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	border: 3px solid transparent;
}

.loading .effect-1,
.loading .effect-2 {
	position: absolute;
	width: 100%;
	height: 100%;
	border: 3px solid transparent;
	border-left: 3px solid #008BFF;
	border-radius: 50%;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}

.loading .effect-1 {
	animation: rotate 1s ease infinite;
}

.loading .effect-2 {
	animation: rotateOpacity 1s ease infinite .1s;
}

.loading .effect-3 {
	position: absolute;
	width: 100%;
	height: 100%;
	border: 3px solid transparent;
	border-left: 3px solid #008BFF;
	-webkit-animation: rotateOpacity 1s ease infinite .2s;
	animation: rotateOpacity 1s ease infinite .2s;
	border-radius: 50%;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}

.loading .effects {
	transition: all .3s ease;
}

@keyframes rotate {
	0% {
		-webkit-transform: rotate(0deg);
		transform: rotate(0deg);
	}
	
	100% {
		-webkit-transform: rotate(1turn);
		transform: rotate(1turn);
	}
}

@keyframes rotateOpacity {
	0% {
		-webkit-transform: rotate(0deg);
		transform: rotate(0deg);
		opacity: .1;
	}
	
	100% {
		-webkit-transform: rotate(1turn);
		transform: rotate(1turn);
		opacity: 1;
	}
}