/* Common */
/* Media */
/* Content */
/* Common animations */
@-webkit-keyframes translate-bottom-to-top {
	0% {
		-webkit-transform: translate3d(0, 100%, 0);
		        transform: translate3d(0, 100%, 0);
	}
	100% {
		-webkit-transform: translate3d(0, 0, 0);
		        transform: translate3d(0, 0, 0);
	}
}
@keyframes translate-bottom-to-top {
	0% {
		-webkit-transform: translate3d(0, 100%, 0);
		        transform: translate3d(0, 100%, 0);
	}
	100% {
		-webkit-transform: translate3d(0, 0, 0);
		        transform: translate3d(0, 0, 0);
	}
}

@-webkit-keyframes imageSwap-1 {
	0% {
		-webkit-transform: translateX(10%);
		        transform: translateX(10%);
	}
	15% {
		-webkit-transform: translateX(-10%);
		        transform: translateX(-10%);
	}
	30% {
		-webkit-transform: translateX(90%);
		        transform: translateX(90%);
		z-index: 2;
	}
	45% {
		-webkit-transform: translateX(110%);
		        transform: translateX(110%);
	}
	60% {
		-webkit-transform: translate(10%, 0);
		        transform: translate(10%, 0);
		z-index: 1;
	}
	100% {
		-webkit-transform: translate(10%, 0);
		        transform: translate(10%, 0);
		z-index: 1;
	}
}

@keyframes imageSwap-1 {
	0% {
		-webkit-transform: translateX(10%);
		        transform: translateX(10%);
	}
	15% {
		-webkit-transform: translateX(-10%);
		        transform: translateX(-10%);
	}
	30% {
		-webkit-transform: translateX(90%);
		        transform: translateX(90%);
		z-index: 2;
	}
	45% {
		-webkit-transform: translateX(110%);
		        transform: translateX(110%);
	}
	60% {
		-webkit-transform: translate(10%, 0);
		        transform: translate(10%, 0);
		z-index: 1;
	}
	100% {
		-webkit-transform: translate(10%, 0);
		        transform: translate(10%, 0);
		z-index: 1;
	}
}

@-webkit-keyframes imageSwap-2 {
	0% {
		-webkit-transform: translateX(-10%);
		        transform: translateX(-10%);
	}
	15% {
		-webkit-transform: translateX(10%);
		        transform: translateX(10%);
	}
	30% {
		-webkit-transform: translateX(-90%);
		        transform: translateX(-90%);
		z-index: 1;
	}
	45% {
		-webkit-transform: translateX(-110%);
		        transform: translateX(-110%);
	}
	60% {
		-webkit-transform: translateX(-10%);
		        transform: translateX(-10%);
		z-index: 2;
	}
	100% {
		-webkit-transform: translateX(-10%);
		        transform: translateX(-10%);
		z-index: 2;
	}
}

@keyframes imageSwap-2 {
	0% {
		-webkit-transform: translateX(-10%);
		        transform: translateX(-10%);
	}
	15% {
		-webkit-transform: translateX(10%);
		        transform: translateX(10%);
	}
	30% {
		-webkit-transform: translateX(-90%);
		        transform: translateX(-90%);
		z-index: 1;
	}
	45% {
		-webkit-transform: translateX(-110%);
		        transform: translateX(-110%);
	}
	60% {
		-webkit-transform: translateX(-10%);
		        transform: translateX(-10%);
		z-index: 2;
	}
	100% {
		-webkit-transform: translateX(-10%);
		        transform: translateX(-10%);
		z-index: 2;
	}
}

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

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

/* Blocks */
.mantra {
	padding-top: 5vw;
	padding-bottom: 7.77778vw;
}

.mantra__close {
	width: 11.11111vw;
	height: 11.11111vw;
	font-size: 5vw;
	display: flex;
	justify-content: center;
	align-items: center;
	border-radius: 50%;
	background: #E0E1E5;
	margin-left: auto;
	margin-bottom: 2.77778vw;
}

.mantra__close:hover {
	background: #1C1C1C;
}

.mantra__close:hover::before {
	-webkit-filter: invert(96%) sepia(8%) saturate(82%) hue-rotate(191deg) brightness(94%) contrast(92%);
	        filter: invert(96%) sepia(8%) saturate(82%) hue-rotate(191deg) brightness(94%) contrast(92%);
}

.mantra__top {
	display: flex;
	flex-direction: column;
	justify-content: flex-start;
	align-items: center;
	gap: 1.66667vw;
	margin-bottom: 6.66667vw;
}

.mantra__top-images {
	display: flex;
	justify-content: center;
	align-items: center;
	margin: 0 auto;
}

.mantra__top-image {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 11.38889vw;
	height: 11.38889vw;
	-webkit-animation: 6s cubic-bezier(0.7, 0, 0.3, 1) infinite;
	        animation: 6s cubic-bezier(0.7, 0, 0.3, 1) infinite;
}

.mantra__top-image img {
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
	   object-fit: cover;
}

.mantra__top-image_1 {
	-webkit-animation-name: imageSwap-1;
	        animation-name: imageSwap-1;
}

.mantra__top-image_2 {
	-webkit-animation-name: imageSwap-2;
	        animation-name: imageSwap-2;
}

.mantra__top-month {
	font-weight: 600;
	font-size: 4.8vw;
	line-height: 106%;
	text-align: center;
	letter-spacing: -0.01em;
}

.mantra__content {
	text-align: center;
}

.mantra__content-slogan {
	font-weight: 600;
	font-size: 11.38889vw;
	line-height: 80%;
	letter-spacing: -0.05em;
	max-width: 85.83333vw;
	margin: 0 auto 4.16667vw;
}

.mantra__content-slogan-part_red {
	color: #ED131C;
}

.mantra__content-slogan-part {
	color: #E0E1E5;
	-webkit-animation: 5s linear forwards;
	        animation: 5s linear forwards;
	opacity: 0;
}

.mantra__content-slogan-part_1 {
	-webkit-animation-name: mantra__item-slogan-part_1;
	        animation-name: mantra__item-slogan-part_1;
}

.mantra__content-slogan-part_2 {
	-webkit-animation-name: mantra__item-slogan-part_2;
	        animation-name: mantra__item-slogan-part_2;
}

.mantra__content-slogan-part_red {
	-webkit-animation-name: mantra__item-slogan-part_red;
	        animation-name: mantra__item-slogan-part_red;
}

@-webkit-keyframes mantra__item-slogan-part_1 {
	0% {
		color: #A0A3A6;
		opacity: 1;
	}
	30% {
		color: #1C1C1C;
		opacity: 1;
	}
	77% {
		color: #1C1C1C;
		opacity: 1;
	}
	85% {
		color: #1C1C1C;
		opacity: 1;
	}
	100% {
		color: #1C1C1C;
		opacity: 1;
	}
}

@keyframes mantra__item-slogan-part_1 {
	0% {
		color: #A0A3A6;
		opacity: 1;
	}
	30% {
		color: #1C1C1C;
		opacity: 1;
	}
	77% {
		color: #1C1C1C;
		opacity: 1;
	}
	85% {
		color: #1C1C1C;
		opacity: 1;
	}
	100% {
		color: #1C1C1C;
		opacity: 1;
	}
}

@-webkit-keyframes mantra__item-slogan-part_2 {
	0% {
		color: #A0A3A6;
		opacity: 1;
	}
	50% {
		color: #1C1C1C;
		opacity: 1;
	}
	77% {
		color: #1C1C1C;
		opacity: 1;
	}
	85% {
		color: #1C1C1C;
		opacity: 1;
	}
	100% {
		color: #1C1C1C;
		opacity: 1;
	}
}

@keyframes mantra__item-slogan-part_2 {
	0% {
		color: #A0A3A6;
		opacity: 1;
	}
	50% {
		color: #1C1C1C;
		opacity: 1;
	}
	77% {
		color: #1C1C1C;
		opacity: 1;
	}
	85% {
		color: #1C1C1C;
		opacity: 1;
	}
	100% {
		color: #1C1C1C;
		opacity: 1;
	}
}

@-webkit-keyframes mantra__item-slogan-part_red {
	0% {
		color: #A0A3A6;
		opacity: 1;
	}
	50% {
		color: #A0A3A6;
		opacity: 1;
	}
	77% {
		color: #1C1C1C;
		opacity: 1;
	}
	85% {
		color: #1C1C1C;
		opacity: 1;
	}
	100% {
		color: #ED131C;
		opacity: 1;
	}
}

@keyframes mantra__item-slogan-part_red {
	0% {
		color: #A0A3A6;
		opacity: 1;
	}
	50% {
		color: #A0A3A6;
		opacity: 1;
	}
	77% {
		color: #1C1C1C;
		opacity: 1;
	}
	85% {
		color: #1C1C1C;
		opacity: 1;
	}
	100% {
		color: #ED131C;
		opacity: 1;
	}
}

.mantra__content-box {
	opacity: 0;
	-webkit-animation: 5s linear forwards;
	        animation: 5s linear forwards;
	-webkit-animation-name: mantra__item-box;
	        animation-name: mantra__item-box;
	display: flex;
	flex-direction: column;
	gap: 4.16667vw;
}

@-webkit-keyframes mantra__item-box {
	0% {
		color: #1C1C1C;
		opacity: 0;
	}
	50% {
		color: #1C1C1C;
		opacity: 0;
	}
	77% {
		color: #1C1C1C;
		opacity: 0;
	}
	85% {
		color: #1C1C1C;
		opacity: 0;
	}
	100% {
		color: #1C1C1C;
		opacity: 1;
	}
}

@keyframes mantra__item-box {
	0% {
		color: #1C1C1C;
		opacity: 0;
	}
	50% {
		color: #1C1C1C;
		opacity: 0;
	}
	77% {
		color: #1C1C1C;
		opacity: 0;
	}
	85% {
		color: #1C1C1C;
		opacity: 0;
	}
	100% {
		color: #1C1C1C;
		opacity: 1;
	}
}

.mantra__content-text {
	margin: 0 auto;
	max-width: 73.05556vw;
	font-weight: 600;
	font-size: 3.61111vw;
	line-height: 106%;
	letter-spacing: -0.02em;
}

.mantra__content-text p + p {
	margin-top: 2.77778vw;
}

.mantra__social {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	gap: 1.94444vw;
}

.mantra__social-items {
	display: flex;
	justify-content: flex-start;
	align-items: center;
	gap: 1.94444vw;
}

.mantra__social-item {
	display: inline-flex;
	justify-content: center;
	align-items: center;
	width: 8.33333vw;
	height: 8.33333vw;
	border-radius: 2.63889vw;
	background: #1C1C1C;
}

.mantra__social-item-icon {
	width: 8.33333vw;
	height: 8.33333vw;
	flex: 0 0 auto;
	font-size: 8.33333vw;
}

.mantra__social p {
	font-weight: 600;
	font-size: 3.61111vw;
	line-height: 106%;
	letter-spacing: -0.02em;
	opacity: 0.5;
}
