* {
	margin: 0;
	padding: 0;
	box-sizing: border-box;
	font-family: "Pretendard", sans-serif;
}
body {
	overflow-x: hidden;
}
.container {
	width: 1224px;
	padding: 130px 24px;
	margin: 0 auto;
}

#main {
	/* margin-top: 116px; */
	margin-top: 81px;
}

/* sec01 */
.sec01 {
	width: 100%;
	min-width: 1440px;
	aspect-ratio: 1920 / 800;
}
.sec01 .main_slide {
	overflow-x: hidden;
}
.sec01 .swiper-slide {
	position: relative;
}
.sec01 .img {
	width: 100%;
}
.sec01 .txt {
	position: absolute;
	width: 1440px;
	padding: 0 24px;
	justify-content: center;
	align-items: center;
	flex: 1 0 0;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);
	color: #222;
}
.sec01 .txt span {
	font-size: 28px;
	font-weight: 500;
	line-height: 28px;
}
.sec01 .txt h1,
.sec01 .txt h3 {
	font-size: 60px;
	font-weight: 600;
	line-height: 72px;
	margin: 10px 0 24px;
}
.sec01 .txt p {
	font-size: 22px;
	font-weight: 300;
	line-height: 22px;
}
.sec01 .txt a {
	display: flex;
	width: max-content;
	padding: 16px 32px;
	gap: 16px;
	align-items: center;
	margin-top: 42px;
	border-radius: 1000px;
	border: 1px solid #222;
	color: #222;
	font-size: 16px;
	font-weight: 500;
	line-height: 100%;
	transition: all 0.1s ease-in-out;
}
.sec01 .txt a:hover {
	color: #fff;
	background-color: #222;
	transition: all 0.1s ease-in-out;
}
/* 초기 상태 */
.main_slide .txt h1,
.main_slide .txt h3,
.main_slide .txt p,
.main_slide .txt span,
.main_slide .txt a {
	opacity: 0;
	transform: translateY(24px);
	will-change: transform, opacity, translate;
	
}

/* 현재 활성 슬라이드에만 애니메이션 적용 */
.main_slide .swiper-slide.is-in .txt span {
	animation: riseUp 0.6s ease-out 0s forwards;
}
.main_slide .swiper-slide.is-in .txt h1,
.main_slide .swiper-slide.is-in .txt h3 {
	animation: riseUp 0.6s ease-out 0.15s forwards;
}
.main_slide .swiper-slide.is-in .txt p {
	animation: riseUp 0.6s ease-out 0.3s forwards;
}
.main_slide .swiper-slide.is-in .txt a {
	animation: riseUp 0.6s ease-out 0.45s forwards;
}
@keyframes riseUp {
	to {
		opacity: 1;
		transform: translateY(0);
	}
}
/* sec02 */
.sec02 {
}
.sec02 .sec02_tit {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 20px;
	align-self: stretch;
}
.sec02 .sec02_tit h3 {
	color: #222;
	font-size: 40px;
	font-weight: 700;
	line-height: 52px;
}
.sec02 .sec02_tit p {
	color: #222;
	font-size: 20px;
	font-weight: 300;
	line-height: 26px;
}
.sec02 .sec02_list {
	margin-top: 50px;
}
.sec02 .sec02_list ul {
	display: flex;
	flex-wrap: wrap;
	gap: 24px;
}
.sec02 .sec02_list ul li {
	width: calc(100% / 4 - 18px);
	border-radius: 16px;
	border: 0 solid #dddde3;
	background: #fbf5f0;
}
.sec02 .sec02_list ul li a {
	display: flex;
	padding: 28px;
	flex-direction: column;
	align-items: flex-start;
	gap: 16px;
	position: relative;
}
.sec02 .sec02_list ul li a h4 {
	color: #222;
	font-size: 24px;
	font-weight: 700;
	line-height: 28px; /* 116.667% */
}
.sec02 .sec02_list ul li a p::before {
	position: absolute;
	content: "";
	background-image: url("../img/main/sec02_arrow_icon.svg");
	right: -20px;
	top: 47%;
	transform: translateY(-50%);
	width: 20px;
	height: 20px;
	background-repeat: no-repeat;
	background-size: cover;
}
.sec02 .sec02_list ul li a p {
	color: #4c4c4c;
	font-size: 16px;
	font-weight: 600;
	line-height: 24px;
	position: relative;
	display: flex;
}
.sec02 .sec02_list ul li a .img {
	align-self: flex-end;
}
.sec02 .sec02_list ul li a .img img {
	width: 80px;
	height: 80px;
	
}
.sec02 .sec02_list ul li:hover {
	border: 0 solid #dddde3;
	background: #cc9a78;
	transition: all 0.2s ease;
}
.sec02 .sec02_list ul li:hover h4,
.sec02 .sec02_list ul li:hover p {
	color: #fff;
}
.sec02 .sec02_list ul li:hover a p::before {
	background-image: url("../img/main/sec02_arrow_icon_white.svg");
}

/* sec03 */
.sec03 {
	background: #f6f7f8;
	width: 100%;

	display: flex;
	justify-content: space-between;
	gap: 24px;
	padding: 130px 0;
}
.sec03 .sec03_tit {
	padding-left: 24px;
	display: flex;
	flex-direction: column;
	gap: 20px;
	color: #222;
	width: 330px;
	margin-left: calc((100% - 1200px) / 2);
	margin-top: 42px;
}
.sec03 .sec03_tit h3 {
	font-size: 40px;
	font-weight: 700;
	line-height: 52px;
}
.sec03 .sec03_tit p {
	font-size: 20px;
	font-weight: 300;
	line-height: 26px;
	letter-spacing: -0.4px;
}
.sec03 .sec03_right {
	flex: 1;
	margin-left: auto;
	margin-right: auto;
	position: relative;
	overflow: hidden;
	list-style: none;
	padding: 0;
	z-index: 1;
}
.sec03 .sec03_slide {
	padding-bottom: 32px !important;
	padding-right: 24px !important;
}
.sec03 .sec03_slide .swiper-slide {
	width: 360px;
	position: relative;
	box-sizing: border-box;
}
.sec03 .sec03_slide .swiper-slide .img{
	position: relative;
}
.sec03 .sec03_slide .swiper-slide .img::before {
	position: absolute;
	content: "";
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	border-radius: 20px;
	background: linear-gradient(180deg, rgba(0, 0, 0, 0.00) 60.1%, rgba(0, 0, 0, 0.50) 100%);
}
.sec03 .sec03_slide .swiper-slide .txt {
	position: absolute;
	left: 0;
	bottom: 0;
	padding: 32px;
	display: flex;
	flex-direction: column;
	gap: 4px;
	color: #fff;
}
.sec03 .sec03_slide .swiper-slide .txt span {
	font-family: "Poppins", sans-serif;
	font-size: 14px;
	font-weight: 600;
	line-height: 20px;
}
.sec03 .sec03_slide .swiper-slide .txt h4 {
	font-size: 24px;
	font-weight: 700;
	line-height: 38px;
}
.sec03 .sec03_right .swiper-scrollbar {
	background: #ccd1d7;
}

.sec03 .sec03_right .swiper-scrollbar-drag {
	background: #002251;
	border-radius: 0;
}
.sec03 .sec03_right .swiper-horizontal > .swiper-scrollbar,
.sec03 .sec03_right .swiper-scrollbar.swiper-scrollbar-horizontal {
	position: absolute;
	left: var(--swiper-scrollbar-sides-offset, 0);
	bottom: var(--swiper-scrollbar-bottom, 0px) !important;
	top: var(--swiper-scrollbar-top, auto);
	z-index: 50;
	height: var(--swiper-scrollbar-size, 4px);
	width: 822px;
}

/* sec04 */
.sec04 {
	width: 100%;
	min-width: 1440px;
	height: 520px;
	background-image: url("../img/main/sec04_bg_250912.jpg");
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center center; /* 패럴랙스 기준 */
	position: relative; /* 오버레이 기준 */
	z-index: 0;
	overflow: hidden;
}

.sec04::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: linear-gradient(0deg, rgba(0, 0, 0, 0.30) 0%, rgba(0, 0, 0, 0.30) 100%);
	z-index: 1;
}

.sec04 .sec04_tit {
	position: relative;
	z-index: 2; /* 오버레이 위에 표시되도록 */
	display: flex;
	height: 100%;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	color: #fff;
}
.sec04 .sec04_tit h4 {
	font-size: 48px;
	font-weight: 600;
	line-height: 60px;
}
.sec04 .sec04_tit p {
	font-size: 22px;
	font-weight: 300;
	line-height: 22px;
	margin: 16px 0 42px;
}
.sec04 .sec04_tit a {
	display: flex;
	padding: 16px 32px;
	justify-content: center;
	align-items: center;
	gap: 16px;
	border-radius: 1000px;
	border: 1px solid #fff;
	color: #fff;
	font-size: 16px;
	font-weight: 500;
	line-height: 100%;
	transition: all 0.1s ease-in-out;
}
.sec04 .sec04_tit a:hover {
	color: #000;
	background-color: #fff;
	transition: all 0.1s ease-in-out;
}
.sec04 .sec04_tit a img {
	width: 15px;
	height: 16px;
}

/* sec05 */
.sec05 {
}
.sec05 .sec05_tit {
	display: flex;
	justify-content: space-between;
	align-items: flex-end;
	margin-bottom: 50px;
}
.sec05 .sec05_tit h3 {
	color: #222;
	font-size: 40px;
	font-weight: 700;
	line-height: 52px;
	margin-bottom: 20px;
	font-family: "Pretendard", sans-serif;
}
.sec05 .sec05_tit p {
	color: #222;
	font-size: 20px;
	font-weight: 300;
	line-height: 26px;
}
.sec05 .sec05_tit a {
	display: flex;
	padding: 16px 32px;
	justify-content: center;
	align-items: center;
	gap: 16px;
	border-radius: 1000px;
	border: 1px solid #222;
	color: #222;
	font-size: 16px;
	font-weight: 500;
	line-height: 100%;
	transition: all 0.1s ease-in-out;
}
.sec05 .sec05_tit a:hover {
	background-color: #222;
	color: #fff;
	transition: all 0.1s ease-in-out;
}
.sec05 .sec05_list ul {
	display: flex;
	align-items: flex-start;
	gap: 24px;
	align-self: stretch;
}
.sec05 .sec05_list ul li a {
	display: flex;
	flex-direction: column;
	gap: 20px;
}
.sec05 .sec05_list ul li a img {
	border-radius: 16px;
	width: 100%;
	height: 100%;
	aspect-ratio: 1/1;
	object-fit: cover;
}
.sec05 .sec05_list ul li span {
	color: #002251;
	font-size: 13px;
	font-weight: 600;
	line-height: 13px;
	display: inline-block;
	padding: 6px 8px;
	align-items: center;
	border-radius: 4px;
	background: #dae7f9;
}
.sec05 .sec05_list ul li span.event {
	color: #bd8766;
	background: #fbf5f0;
}
.sec05 .sec05_list ul li h5 {
	color: #222;
	font-size: 24px;
	font-weight: 700;
	line-height: 28px;
	margin: 12px 0 16px;
}
.sec05 .sec05_list ul li p {
	color: #6e6e6e;
	font-size: 16px;
	font-weight: 400;
	line-height: 24px;
}

/* sec06 */
.sec06 {
	width: 100%;
	background-image: url("../img/main/sec06_bg.png");
}
.sec06 .sec06_info {
	display: flex;
	gap: 50px;
}
.sec06 .map .cont {
	display: none;
}
.sec06 .map .root_daum_roughmap {
	border-radius: 16px;
}
.sec06 .info_txt {
}
.sec06 .info_txt .tit {
	color: #fff;
	font-size: 40px;
	font-weight: 700;
	line-height: 52px;
}
.sec06 .info_txt .address .location {
	color: #fff;
	font-size: 22px;
	font-weight: 500;
	line-height: 28px;
	margin: 24px 0 16px;
}
.sec06 .info_txt .address .direction {
	color: #fff;
	font-size: 20px;
	font-weight: 300;
	line-height: 24px;
	display: flex;
	gap: 6px;
	align-items: center;
}
.sec06 .info_txt .address .direction span {
	display: flex;
	width: 24px;
	height: 24px;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	gap: 4px;
	border-radius: 100px;
	border: 2px solid #b99337;
	background: #fff;
	color: #b99337;
	text-align: center;
	font-size: 16px;
	font-weight: 600;
	line-height: 100%;
}
.sec06 .info_txt .address .direction em {
	color: #c45362;
	text-align: center;
	font-size: 16px;
	font-weight: 700;
	line-height: 100%;
	display: flex;
	height: 24px;
	padding: 0 8px;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	gap: 4px;
	border-radius: 100px;
	border: 2px solid #c45362;
	background: #fff;
	width: max-content;
}
.sec06 .info_txt .contact_btn {
	display: flex;
	gap: 12px;
	margin-top: 32px;
}
.sec06 .info_txt .contact_btn a {
	color: #fff;
	font-size: 20px;
	font-weight: 500;
	line-height: 100%;
	display: flex;
	padding: 12px 32px;
	justify-content: center;
	align-items: center;
	gap: 8px;
	border-radius: 6px;
	background: #cc9a78;
}
.sec06 .info_txt .contact_btn a.kakao_link {
	background: rgba(255, 255, 255, 0.3);
}
.sec06 .info_txt .contact_btn a.kakao_link img {
	width: 20px;
	height: 20px;
	aspect-ratio: 1/1;
}
.sec06 .info_txt .line {
	width: 100%;
	height: 1px;
	background: #5d646e;
	margin: 42px 0;
}
.sec06 .info_txt .time .tit {
	font-size: 32px;
	line-height: 48px;
}
.sec06 .info_txt .time ul {
	margin: 12px 0;
	display: flex;
	flex-direction: column;
	gap: 8px;
}
.sec06 .info_txt .time ul li {
	display: flex;
	gap: 24px;
	color: #fff;
	font-size: 22px;
	font-weight: 300;
	line-height: 28px;
	text-transform: uppercase;
}
.sec06 .info_txt .time ul li span {
	width: 20%;
	font-weight: 600;
}
.sec06 .info_txt .time small {
	color: #bfbfbf;
	font-size: 16px;
	font-weight: 300;
	line-height: 24px;
}
@media(min-width: 1921px){
	.sec03 .sec03_slide .swiper-slide {
		width: 30%;
	}
}


/* 팝업 */
/* 팝업레이어 */
#hd_pop {z-index:1000;position:relative;margin:0 auto;height:0}
#hd_pop h2 {position:absolute;font-size:0;line-height:0;overflow:hidden}
.hd_pops {position:absolute;border:1px solid #e9e9e9;background:#fff}
.hd_pops img {max-width:100%}
.hd_pops_con {}
.hd_pops_footer {padding:0;background:#000;color:#fff;text-align:left;position:relative}
.hd_pops_footer:after {display:block;visibility:hidden;clear:both;content:""}
.hd_pops_footer button {padding:10px;border:0;color:#fff}
.hd_pops_footer .hd_pops_reject {background:#000;text-align:left}
.hd_pops_footer .hd_pops_close {background:#393939;position:absolute;top:0;right:0}
