/* header */
.header{
	width: 100%;
	height: 100vh;
	flex-direction: column;
	justify-content: space-between;
	background-color: var(--gray);
	position: relative;
}
.header-nav{
	width: 100%;
	padding: 7rem 8rem 0 8rem;
	justify-content: space-between;
}
.header-nav h1{
	font-family: 'Noto Serif', serif;
	font-size: 3.6rem;
	font-weight: 500;
	text-align: right;
	margin-bottom: 2rem;
}
.header-nav a{
	font-size: 1.6rem;
	color: var(--white);
	margin-left: 2.4rem;
}
.header-menu{
	display: none;
}
.header hgroup{
	margin-left: 3.2rem;
	font-size: 1.6rem;
	color: var(--white);
}
.header hgroup p{
	margin-bottom: .8rem;
}
.header hgroup a{
	margin-left: 0;
	text-decoration: underline;
}
.header-footer{
	width: 100%;
	flex-direction: column;
}
.header-footer h2{
	font-family: 'Noto Serif', serif;
	font-size: 3rem;
	font-weight: 500;
	margin-bottom: 32rem;
	margin-left: 8rem;
}
.header-slider{
	width: 100%;
	height: 40rem;
	bottom: -10rem;
	position: absolute;
	overflow-x: hidden;
}
.header-map{
	width: calc(100% - 16rem);
	margin-left: 8rem;
	object-fit: cover;
	object-position: center;
}
.header-gallery{
	width: 100%;
	height: 100%;
	left: 35rem;
	transition: .5s;
	position: absolute;
}
.arrow-prev,
.arrow-next{
	position: absolute;
	height: 5rem;
	width: 5rem;
	top: calc(50% - 2.5rem);
	cursor: pointer;
}
.arrow-prev{
	left: 5rem;
}
.arrow-next{
	left: 13rem;
}
.header-gallery img{
	width: 35rem;
	min-width: 35rem;
	height: 100%;
	object-fit: cover;
	object-position: center;
	margin-right: 2rem;
}


/* info */
.info{
	width: 100%;
	flex-direction: column;
	padding: 20rem 8rem 7rem 8rem;
}
.info h2{
	font-family: 'Noto Serif', serif;
	font-size: 3rem;
	font-weight: 500;
	color: var(--black);
	margin-bottom: 5rem;
}
.info nav{
	width: 100%;
	justify-content: space-between;
	margin-bottom: 3rem;
}
.info nav hgroup{
	flex: 1;
	flex-direction: column;
}
.info nav hgroup p{
	color: var(--black);
	font-weight: 600;
	font-size: 1.8rem;
	margin-bottom: 1rem;
}
.info nav hgroup span{
	color: var(--black);
	font-size: 1.8rem;
}
.info main{
	width: 100%;
}
.info main aside{
	width: 40%;
	flex-direction: column;
	margin-right: 10%;
}
.info main aside form{
	display: flex;
	flex-direction: column;
}
.info main aside form input[type="text"]{
	font-size: 1.6rem;
	color: var(--black2);
	margin-bottom: 3rem;
	padding: 0 1rem 1.6rem 1rem;
	border-bottom: 1px solid var(--black2);
}
.info main aside form textarea{
	border: 1px solid var(--black2);
	height: 18rem;
	padding: 1rem;
	resize: none;
	color: var(--black2);
}
.info main aside form button{
	width: 21rem;
	font-size: 2rem;
	color: var(--black);
	margin-top: 3rem;
}
.info main aside form button:after{
	content: "";
	width: 21rem;
	margin-top: 1rem;
	height: 1px;
	background-color: var(--black);
	display: block;
}
.info main aside form div{
	display: flex;
	margin-top: 2rem;
	align-items: center;
}
.info main aside form div input{
	width: 1.6rem;
	height: 1.6rem;
	margin-right: 1rem;
}
.info main aside form div span{
	margin-top: 0;
}
.info main aside form label{
	margin-left: 1rem;
	color: var(--black2);
	font-size: 1.6rem;
	margin-bottom: 1rem;
}
.info main aside p{
	color: var(--black2);
	font-size: 1.6rem;
}
.info main aside p b{
	color: var(--black);
}
.info main aside span{
	margin-top: 3rem;
	font-size: 1.2rem;
	color: var(--black2);
}
.info main aside ul li{
	font-size: 1.5rem;
	margin-top: 1.5rem;
}


/* footer */
.footer{
	flex-direction: column;
	padding: 7rem 8rem 0 8rem;
	box-shadow: 0px -1px 2px rgba(0, 0, 0, 0.25);
}
.footer-content{
	width: 100%;
	padding: 4rem 0;
	justify-content: space-between;
}
.footer-content hgroup{
	width: 50%;
	display: flex;
	flex-direction: column;
	align-items: center;
	padding-right: 8rem;
}
.footer-content hgroup h1{
	font-family: 'Noto Serif', serif;
	font-size: 6rem;
	font-weight: 500;
	text-align: right;
	color: var(--black);
	margin-bottom: 2rem;
}
.footer-content hgroup h3{
	font-weight: 500;
	color: var(--black);
	font-size: 2rem;
	margin-left: 4rem;
}
.footer-content nav{
	width: 25%;
	flex-direction: column;
	align-items: flex-start;
}
.footer-content nav a{
	font-size: 1.6rem;
	color: var(--black);
	margin-bottom: 1.6rem;
}
.footer-content aside{
	width: 25%;
	align-items: flex-start;
	flex-direction: column;
}
.footer-content aside p{
	font-size: 1.6rem;
	margin-bottom: 1.6rem;
	color: var(--black);
}
.footer-content aside a{
	font-size: 1.6rem;
	color: var(--black);
	margin-bottom: 1.6rem;
	text-decoration: underline;
}
.footer-social{
	margin-top: 5rem;
}
.footer-social a{
	margin-right: 2rem;
}
.footer-bottom{
	border-top: 1px solid var(--black2);
	height: 12rem;
	justify-content: space-between;
	align-items: center;
}
.footer-bottom p{
	font-size: 1.5rem;
	color: var(--black2);
}


/* mobile menu */
.menu{
	display: none;
}


@media (max-width: 1025px){

}
@media (max-width: 769px){
	
}
@media (max-width: 426px){
	.header-menu{
		display: flex;
	}
	.header-nav a, .header-nav hgroup{
		display: none;
	}
	.header-footer{
		flex-direction: column;
	}
	.header-footer hgroup{
		margin-bottom: 4rem;
	}
	.header-footer aside{
		margin-right: 0;
	}
	.menu{
		display: none;
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100vh;
		flex-direction: column;
		background-color: var(--gray);
	}
	.menu header{
		margin: 7rem 8rem 7rem 8rem;
		justify-content: flex-end;
	}
	.menu a, .menu p{
		margin-left: 8rem;
		font-size: 1.6rem;
		color: var(--white);
		margin-bottom: 2rem;
	}
	.info-content{
		width: 100%;
	}
	.info-image{
		display: none;
	}
	.info nav{
		flex-direction: column;
	}
	.info nav hgroup{
		margin-bottom: 1.6rem;
	}
	.info main{
		flex-direction: column;
	}
	.info main aside{
		width: 100%;
	}
	.footer-content{
		flex-direction: column;
	}
	.footer-content hgroup{
		width: 100%;
		margin-bottom: 2.4rem;
	}
	.footer-content nav, .footer-content aside{
		width: 100%;
	}
	.footer-bottom{
		flex-direction: column;
		align-items: flex-start;
		justify-content: space-around;
	}
	.info main aside form div{
		margin-bottom: 3rem;
	}
}