#image-main
{
	position: relative;
	width: 100vw;
	height: 90vh;
	max-height: -webkit-fill-available;  /* pro Safari */
	background-color: white;
}

#image-main > img, #image-main > video
{
	z-index: 1;
	object-fit: cover;
	position: absolute;
	width: 100%;
	height: 100%;
	object-position: center;
}

#heading
{
	z-index: 10;
	background-color: rgba(0, 0, 0, 0.4);
	padding-top: 2rem;
	color: white;
	position: absolute;
	bottom: 0;
	left: 50%;
	transform: translateX(-50%);
	text-align: center;
	display: flex;
	flex-direction: column;
	align-items: center;
	width: 100%;
	max-width: var(--max-content-width);
}

#image-main > #heading > h1
{
	font-weight: 600;
	font-size: 5.5rem;
	line-height: 1.1;
	margin-top: 0;
	margin-bottom: 1rem;
	max-width: min(63rem, 90vw);
}

#image-main > #heading > h2
{
	font-size: 1.8rem;
	font-weight: normal;
}

@media(max-width: 1200px)
{
	#image-main > #heading > h1
	{
		font-size: 5rem;
	}
}

@media(max-width: 1000px)
{
	#image-main > #heading > h1
	{
		font-size: 4rem;
	}
}

@media(max-width: 800px)
{
	#image-main > #heading > h1
	{
		font-size: 3rem;
	}
}


#scroll_to_content
{
	width: 7rem;
	height: 7rem;
	transition: transform 0.2s ease;
	z-index: 10;
	animation: bounce 2.2s infinite;
	-webkit-tap-highlight-color: transparent;
}

@keyframes bounce {
  0%, 80%, 100% {
    transform: none;
  }
  90% {
    transform: translateY(-0.6rem);
  }
}

#scroll_to_content::before
{
	--arrow-color: rgba(255, 255, 255, 0.9);
	--thickness: 0.55rem;
	--size: 3.45rem;
	content: "";
	border-bottom: var(--thickness) solid var(--arrow-color);
	border-right: var(--thickness) solid var(--arrow-color);
	position: relative;
	display: block;
	left: 50%;
	width: var(--size);
	height: var(--size);
	transform: translateX(-50%) rotate(45deg);
	transition: transform 0.2s ease;
}

/*
#image-main > #scroll_to_content::before
{
	--size: 3.5rem;
	content: "";
	background-image: url(/icon/arrow.svg);
	background-size: contain;
	transform: translateX(-50%);
	transition: transform 0.2s ease;
	display: block;
	width: var(--size);
	height: var(--size);
	position: relative;
	left: 50%;
	opacity: 90%;
}
*/

#scroll_to_content:hover
{
	cursor: pointer;
}

#scroll_to_content:hover::before
{
	transform: translateY(0.6rem) translateX(-50%) rotate(45deg);
}
