.header {
	width: 100%;
	height: 700px;
	display: flex;
	justify-content: center;
	align-items: center;
	font-family: var(--deco-font);
	font-size: 150px;
	line-height: 1em;
	overflow: hidden;
	color: var(--color-main);
	position: relative;
	z-index: 1;
}

.header > * {
	z-index: 2;
}

.head-title {
	display: flex;
	flex-direction: column;
}

.head-title .accent {
	font-size: 160px;
	color: var(--color-accent1);
}

.title-upper {
	padding-right: 200px;
}

.title-upper a {
	text-decoration: none;
	color: var(--color-main);
}

body.scroll-up .title-upper,
body.scroll-up .small-title {
	animation-name: slideInLeft;
	animation-duration: var(--animation-duration);
	-webkit-animation-fill-mode: forwards;
	animation-fill-mode: forwards;
	opacity: 1;
}

body.scroll-up .title-lower .lower-main,
body.scroll-up .title-lower:after {
	animation-name: slideInRight;
	animation-duration: var(--animation-duration);
	-webkit-animation-fill-mode: forwards;
	animation-fill-mode: forwards;
}

body.scroll-down .title-upper,
body.scroll-down .small-title {
	animation-name: slideOutLeft;
	animation-duration: var(--animation-duration);
	-webkit-animation-fill-mode: forwards;
	animation-fill-mode: forwards;
	opacity: 1;
}

body.scroll-down .title-lower .lower-main,
body.scroll-down .title-lower:after {
	animation-name: slideOutRight;
	animation-duration: var(--animation-duration);
	-webkit-animation-fill-mode: forwards;
	animation-fill-mode: forwards;
}

.title-lower {
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 20px;
	margin-top: -30px;
	position: relative;
}

.title-lower a {
	text-decoration: none;
	color: var(--color-main);
}

.title-lower:after {
	content: "";
	position: absolute;
	top: calc(50% - 0.25em);
	left: calc(100% + 20px);
	width: calc(100% + 20vw);
	height: 1px;
	font-size: 11px;
	background: var(--color-accent1);
}

.small-title {
	font-family: var(--main-font);
	font-size: 11px;
	text-transform: uppercase;
	font-weight: 600;
	line-height: 1em;
	position: relative;
	padding-top: 10px;
}

.small-title:before {
	content: "";
	position: absolute;
	top: 0;
	right: 0;
	width: calc(100% + 40vw);
	height: 1px;
	background: var(--color-accent1);
}

.small-title .accent {
	font-size: 11px;
	color: var(--color-accent1);
}

@keyframes slideOutLeft {
	0% {
		transform: translateX(0);
		pointer-events: all;
	}
	100% {
		transform: translateX(-100vw);
		pointer-events: none;
	}
}

@keyframes slideInLeft {
	0% {
		transform: translateX(-100vw);
		pointer-events: none;
	}
	100% {
		transform: translateX(0);
		pointer-events: all;
	}
}

@keyframes slideOutRight {
	0% {
		transform: translateX(0);
		pointer-events: all;
	}
	100% {
		transform: translateX(100vw);
		pointer-events: none;
	}
}

@keyframes slideInRight {
	0% {
		transform: translateX(100vw);
		pointer-events: none;
	}
	100% {
		transform: translateX(0);
		pointer-events: all;
	}
}

