@charset "UTF-8";

.bo-banner{
	position: relative;
	padding-top: 20px;
}

.bo-banner__img{
	position: relative;
	width: 100%;
	height: 400px;
	overflow: hidden;
	border-radius: 12px;
}

.bo-banner__img>img{
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	width: 100%;
	height: 100%;
	object-fit:cover;
	user-select: none;
	-webkit-user-drag: none;
}

.bo-banner__txtbox{
	position: absolute;
	left: 32px;
	right: 32px;
	bottom:32px;
}

.bo-banner__sub{
	margin-bottom: 8px;
	color: var(--color-primary-50);
}

.bo-banner__tit{
	margin-bottom: 16px;
	color: var(--color-gray-00);
}

.bo-banner__txt{
	color: var(--color-gray-20);
}

.contact__grid{
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 40px;
	margin: 40px auto 120px;
}

.contact__form-grid{
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap:20px;
}

.contact__item-sub{
	margin-bottom: 8px;
	color: var(--color-primary-50);
}

.contact__item-tit{
	margin-bottom: 20px;
}

.contact__item-txt{
	margin-bottom: 40px;
	color: var(--color-gray-80);
}

.contact__item-list{
	display: flex;
	flex-direction: column;
	gap:12px;
}

.contact__item-li{
	display: grid;
	grid-template-columns: 120px 1fr;
}

.contact__li-num{
	color: var(--color-primary-50);
}

.contact__form-grid + .contact__form-grid{
	margin-top: 20px;
}

.contact__textarea label, .contact__input label{
	margin-bottom: 8px;
}

.contact__textarea label::after, .contact__input label::after{
	content: "*";
	margin-left: 4px;
	color: var(--color-primary-50);
}

.contact__input input,
.contact__input select{
	background-color: var(--color-gray-00);
	width: 100%;
	height: 56px;
	padding: 0 16px;
	box-sizing: border-box;
	border-radius: 6px;
	cursor: pointer;
	transition: 0.3s;
}

.contact__input select:has(option:checked[value=""]) {
	color: var(--color-gray-70);
}

.contact__input select option {
	color: var(--color-gray-95);
}

.contact__input select option[value=""] {
	color: var(--color-gray-70);
}

.contact__input select {
	appearance: none;
	-webkit-appearance: none;
	background: var(--color-gray-00) url("../../../img/ico_off.svg") no-repeat right 16px center;
}

.contact__textarea, .contact__btn{
	margin-top: 20px;
}

.contact__textarea textarea{
	background-color: var(--color-gray-00);
	border-radius: 6px;
}

.contact__submit{
	width: 100%;
	height: 56px;
	padding: 0 16px;
	box-sizing: border-box;
	border-radius: 100px;
	box-shadow: none;
	text-align: center;
	background-color: var(--color-primary-50);
	color: var(--color-gray-00);
}

.directions__bg{
	padding: 80px 0;
	background-color: var(--color-gray-05);
}

.directions__top{
	text-align: center;
}

.directions__sub{
	margin-bottom: 8px;
	color: var(--color-primary-50);
}

.directions__tit{
	margin-bottom: 40px;
}

.map__name{
	display: flex;
	align-content: center;
	gap:12px;
	margin: 8px 0 20px;
}

.root_daum_roughmap{
	width: 100% !important;
	aspect-ratio: 4/1;
}

.root_daum_roughmap .wrap_map{
	height: 100% !important;
}

.root_daum_roughmap .wrap_controllers, .root_daum_roughmap .cont{
	display: none;
}



@media all and (max-width:1024px){

	.contact__grid{
		grid-template-columns: repeat(1, 1fr);
		margin: 40px auto 80px;
	}

}

@media all and (max-width:768px){

	.bo-banner__img{
		height: 320px;
	}

	.contact__grid{
		margin: 20px auto 80px;
	}

	.root_daum_roughmap{
		aspect-ratio: 2/1;
	}

	.directions{
		margin-bottom: 80px;
	}

}

@media all and (max-width:500px){
	.contact__form-grid{
		grid-template-columns: repeat(1, 1fr);
	}
}