@charset "euc-kr";

html, body {width:100%; height:100%; scroll-behavior:smooth;}
body, table, th, td, button, select, input, textarea {font-family:'Pretendard', 'Noto Sans KR', 'GmarketSans', Malgun Gothic, sans-serif; font-size:18px; font-weight:400; color:#1a1a1a; -webkit-text-size-adjust:none;}
img {max-width:100%;}

#w_header {position:fixed; top:0; left:0; width:100%; height:80px; background:#fff; transition:all 0.5s; z-index:1;}
#w_header .logo {position:absolute; top:16px; left:20px;}
#w_header .logo img {display:block; width:160px;}
#w_header #gnb_menu {position:relative; padding:0 20px;}
#w_header #gnb_menu ul {position:absolute; top:24px; left:50%; -webkit-transform:translateX(-50%); transform:translateX(-50%);}
#w_header #gnb_menu li {float:left; padding:0 32px;}
#w_header #gnb_menu li a {display:block; padding:8px; font-size:20px; font-weight:600; white-space:nowrap; overflow:hidden; text-overflow:ellipsis;}
#w_header #gnb_menu li a:hover {color:#ff7d00;}
#w_header.active {background:rgba(255, 255, 255, 0.5); backdrop-filter:blur(10px); -webkit-backdrop-filter:blur(10px);}
.btn_mobile_menu {display:none;}
.mobile_menu_area {display:none;}
.mask {display:none; position:fixed; top:0; left:0; right:0; bottom:0; width:100%; height:100%; background:#000; opacity:0.6; z-index:99;}

#w_footer {width:100%; border-top:1px solid #ccc;}
#w_footer .footer_area {position:relative; max-width:1200px; margin:0 auto; padding:45px 0 70px; font-size:0.82em; font-weight:500; color:#292929; line-height:1.5; letter-spacing:0.2px;}
#w_footer .co_info {padding:0 0 20px;}
#w_footer .co_info img {width:140px; padding-bottom:20px;}
#w_footer .copyright {font-weight:400; color:#777;}
#w_footer .copyright strong {color:#cf385a;}
.family_site {position:absolute; top:45px; right:0; width:160px;}
.family_site .btn_site_open {position:relative; display:inline-block; width:100%; padding:12px; border:1px solid #c5c5c5; border-radius:3px; font-family:'GmarketSans', sans-serif; font-size:0.9em; color:#292929; text-align:left; letter-spacing:0.3px; cursor:pointer; box-sizing:border-box;}
.family_site .btn_site_open:focus {outline:none;}
.family_site .btn_site_open i {vertical-align:middle;}
.family_site_list {display:none; position:absolute; bottom:calc(100% - 1px); left:0; width:100%; background:#fff; border:1px solid #c5c5c5; border-radius:3px; box-sizing:border-box; overflow:hidden;}
.family_site_list li {border-bottom:1px solid #ccc;}
.family_site_list li:last-child {border-bottom:0;}
.family_site_list li a {display:block; padding:10px 12px;}
.family_site_list li a:hover {background:#eee;}
.btn_go_top {display:none; position:fixed; right:20px; bottom:25px; width:55px; height:55px; background:#fff; box-shadow:2px 2px 12px rgba(0, 0, 0, 0.3); border-radius:50%; z-index:13;}
.btn_go_top i {font-size:27px; color:#1a1a1a;}

.main_visual_area {position:relative; width:100%; margin-top:80px; overflow:hidden;}
.main_section_area {position:relative; width:100%; overflow:hidden;}
.w_main_inner {max-width:1200px; margin:0 auto; padding:90px 0; overflow:hidden;}

.w_main_tit {position:relative; width:100%; max-width:1200px; margin:0 auto; text-align:center; line-height:1.3;}
.w_main_tit.t_bg {min-height:240px; padding-bottom:30px; text-align:left;}
.w_main_tit p {padding:10px 0; font-family:'GmarketSans', sans-serif; font-size:0.9em; font-weight:600; color:#ff7d00; letter-spacing:5px;}
.w_main_tit h3 {font-size:50px;}
.w_main_tit span {display:block; padding-top:10px; font-size:1.05em; line-height:1.5;}
.w_main_top_img {position:absolute; bottom:0; right:30px; z-index:-1;}
.w_main_top_img .top_obj01 {position:absolute; top:20%; left:-110px; width:auto; height:38%; animation:floating 0.5s infinite alternate;}
.w_main_top_img .top_obj02 {width:auto; height:240px;}
@keyframes floating {0% {transform:translate(0, 10);} 100% {transform:translate(0, 15px);}}

.w_feature_box ul {display:flex; flex-flow:row wrap; margin:-15px;}
.w_feature_box ul li {height:300px; margin:15px; padding:40px; line-height:1.4; border-radius:20px; box-sizing:border-box;}
.w_feature_box ul li:nth-child(1) {width:calc(45% - 30px); background:#ff7d00 url('../img/main_feature01.png') 90% 85% no-repeat; background-size:21%;}
.w_feature_box ul li:nth-child(2) {width:calc(55% - 30px); background:#1a1a1a url('../img/main_feature02.png') 90% 85% no-repeat; background-size:18%;}
.w_feature_box ul li:nth-child(3) {width:calc(55% - 30px); background:#cf385a url('../img/main_feature03.png') 90% 85% no-repeat; background-size:25%;}
.w_feature_box ul li:nth-child(4) {width:calc(45% - 30px); background:#a58c76 url('../img/main_feature04.png') 90% 85% no-repeat; background-size:23%;}
.w_feature_box li:hover  {animation:moveUpDown 0.5s ease forwards;}
@keyframes moveUpDown {0% {transform: translateY(0);} 50% {transform: translateY(-10px);} 100% {transform: translateY(0);}} 
.w_feature_box .feature_cont h4 {position:relative; margin-bottom:10px; font-size:38px; font-weight:600; color:#fff;}
.w_feature_box .feature_cont p {font-size:1em; color:#fff; opacity:0.5; transition:all 0.5s;}
.w_feature_box ul li:hover .feature_cont p {opacity:1;} 

.w_main_cont01 {width:100%; padding:90px 0; background:#efebe7; text-align:center; overflow:hidden;}
.main_pf_tab {width:100%; margin:40px auto 60px; white-space:nowrap; scrollbar-width:none; -ms-overflow-style:none;}
.main_pf_tab::-webkit-scrollbar {display:none;}
.main_pf_tab li {display:inline-block; padding:12px 22px; background:#fff; border-radius:50px; font-size:1em; font-weight:500; cursor:pointer; white-space:nowrap;  transition:all 0.5s;}
.main_pf_tab li.on {background:#ff7d00; color:#fff;}
.main_pf_cont {display:none;}
.main_pf_cont.on {display:inherit;}
.main_pf_cont ul li {padding:15px 25px; box-sizing:border-box;}
.main_pf_cont ul li a {display:block; position:relative; width:100%; height:0; padding-top:75%; background:#fff; border-radius:15px; box-shadow:3px 3px 15px rgba(0, 0, 0, 0.2); overflow:hidden;}
.main_pf_cont ul li a img {position:absolute; top:0; left:0; right:0; bottom:0; width:100%; height:auto; transition:all 0.2s linear;}
.main_pf_cont ul li a img:hover {transform:scale(1.03);}
.btn_pf_more {display:inline-block; margin-top:50px; padding-bottom:8px; font-family:'GmarketSans', sans-serif; font-size:0.85em; border-bottom:1px solid #1a1a1a;}
.btn_pf_more i {vertical-align:middle;}

.w_main_cont02 {position:relative; width:100%; padding-bottom:80px; overflow:hidden;}
.contact_txt {margin-top:40px; font-size:28px; font-weight:300; text-align:center; line-height:1.4;}
.w_contact_box {display:flex; margin-top:50px;}
.map_area {width:50%; border:1px solid #ccc; border-radius:20px 0 0 20px; box-sizing:border-box; overflow:hidden;}
.map_area .wrap_controllers, .map_area .map_border, .map_area .cont {display:none;}
.map_area .wrap_map {border:0;}
.contact_area {flex-grow:1; align-content:center; padding:0 50px; background:#cf385a; border-radius:0 20px 20px 0; box-sizing:border-box;}
.contact_area dl {display:block; padding:25px 0; border-top:1px solid rgba(255, 255, 255, 0.2);}
.contact_area dl:first-child {border-top:0}
.contact_area dl dt {padding-bottom:10px; font-family:'GmarketSans', sans-serif; font-size:0.9em; font-weight:600; color:rgba(255, 255, 255, 0.5); letter-spacing:1px;}
.contact_area dl dd {font-weight:500; color:#fff; line-height:1.4;}
.contact_area dl dd .tel {font-family:'GmarketSans', sans-serif; font-size:1.8em; font-weight:600;}

.main_flow_txt {display:flex; position:absolute; bottom:-30px; right:0; width:200%; animation:marquee 15s linear infinite; z-index:-1;} 
.main_flow_txt p {float:left; width:50%; line-height:1; font-family:'GmarketSans', sans-serif; font-size:120px; font-weight:bold; color:#e5e5e5;}
.main_flow_txt p:last-child {color:#fff; -webkit-text-stroke:1px #ddd; text-stroke:1px #ddd; text-shadow:-1px -1px 0 #ddd, 1px -1px 0 #ddd, -1px 1px 0 #ddd, 1px 1px 0 #ddd; white-space:nowrap; white-space:nowrap;}
@keyframes marquee {0% {left:0;} 100% {left:-100%;}}


@media screen and (max-width:1280px){
	#w_header .logo {left:10px;}
	#w_header #gnb ul {right:10px;}
	#w_footer .footer_area {max-width:1160px; padding:45px 20px 70px;}
	.family_site {right:20px;}
	.w_main_inner {max-width:1160px; padding:90px 20px;}
}

@media screen and (max-width:1200px){
	.main_pf_cont ul li {padding:15px 20px;}
}

@media screen and (max-width:1024px){
	body, table, th, td, button, select, input, textarea {font-size:17px;}
	#w_header {height:60px;}
	#w_header .logo a img {width:120px;}
	#w_header #gnb_menu {display:none;}
	.mask.show {display:block;}
	.btn_mobile_menu {display:block; position:absolute; top:20px; right:15px; width:28px; height:20px; background:url('/web/img/ico_menu_m.png') no-repeat; background-size:100% 100%; font-size:0; line-height:0; cursor:pointer; color:transparent; border:0; outline:none;}
	.mobile_menu_area {display:block; position:fixed; top:-100%; right:0; width:100%; height:100%; background:rgba(0, 0, 0, 0.85); transition:top 0.3s ease; z-index:100;}
	.mobile_menu_area.open {top:0;}
	.mobile_menu_area .m_top_menu {position:relative; height:60px;}
	.mobile_menu_area .m_top_menu .btn_menu_close {display:block; position:absolute; top:18px; right:17px; width:24px; height:24px; background:url('/web/img/ico_menu_close.png') no-repeat; background-size:100%; font-size:0; line-height:0; cursor:pointer; color:transparent; border:0; outline:none;}
	.mobile_menu_area .m_gnb_menu {padding:0 25px;}
	.mobile_menu_area .m_gnb_menu ul li a {font-size:18px; color:#fff;}
	.mobile_menu_area .m_gnb_menu ul li a.depth1 {position:relative; display:block; font-weight:500; padding:18px 5px; border-bottom:1px solid rgba(255, 255, 255, 0.2);}
	.family_site {top:35px;}

	.main_visual_area {margin-top:60px;}
	.w_main_tit.t_bg {padding-bottom:160px;}
	.w_main_top_img .top_obj02 {height:220px;}
	.w_main_tit h3 {font-size:45px;}

	.w_feature_box ul li {padding:35px 30px;}
	.w_feature_box .feature_cont h4 {font-size:32px;}

	.w_main_cont02 {padding-bottom:40px;}
	.contact_txt {font-size:26px;}
	.contact_area {padding:0 35px;}
	.contact_area dl {padding:20px 0;}
	.main_flow_txt {bottom:-20px;}
	.main_flow_txt p {font-size:90px;}
}

@media screen and (max-width:768px){
	body, table, th, td, button, select, input, textarea {font-size:16px;}

	#w_footer .footer_area {padding:30px 20px 90px;}
	#w_footer .co_info img {width:120px;}
	.family_site {position:relative; top:30px; left:0; width:140px;}
	.family_site .btn_site_open {padding:10px;}
	.btn_go_top {width:45px; height:45px;}
	.btn_go_top i {font-size:24px; color:#1a1a1a;}

	.w_main_inner {padding:70px 20px;}
	.w_main_cont01 {padding:70px 0;}

	.w_main_tit h3 {font-size:40px;}
	.w_main_top_img {left:39%;}
	.w_main_top_img .top_obj01 {left:-90px;}
	.w_main_top_img .top_obj02 {height:200px;}

	.w_feature_box ul {margin:0;}
	.w_feature_box ul li {width:100% !important; height:260px; margin:0 0 25px;}
	.w_feature_box ul li:last-child {margin:0;}
	.w_feature_box .feature_cont h4 {font-size:30px;}

	.main_pf_tab {margin:40px auto; overflow-x:scroll;}
	.main_pf_tab::-webkit-scrollbar {display:block; height:2px; background:#d9d9d9; border-radius:2px;}
	.main_pf_tab::-webkit-scrollbar-thumb  {background:#cf385a; border-radius:2px;}
	.main_pf_tab li:first-child {margin-left:20px;}
	.main_pf_tab li:last-child {margin-right:20px;}

	.main_pf_cont ul li {padding:15px;}
	.btn_pf_more {margin-top:40px;}

	.w_main_cont02 {padding-bottom:30px;}
	.w_contact_box {flex-direction:column;}
	.map_area {width:100%; border-radius:20px 20px 0 0;}
	.contact_txt {font-size:22px;}
	.contact_area {width:100%; padding:15px 30px; border-radius:0 0 20px 20px;}
	.contact_area dl dt {padding-bottom:6px;}
	.main_flow_txt {bottom:-13px;}
	.main_flow_txt p {font-size:60px;}
}

@media screen and (max-width:540px){
	.w_main_tit.t_bg {min-height:auto;}
	.w_main_tit p {padding:5px 0;}
	.w_main_tit h3 {font-size:35px;}
	.w_main_tit h3 br {display:none;}
	.w_main_top_img {left:36%;}
	.w_main_top_img .top_obj01 {left:-70px;}
	.w_main_top_img .top_obj02 {width:124px; height:auto;}
	.w_feature_box ul li:nth-child(1) {background-size:25%;}
	.w_feature_box ul li:nth-child(2) {background-size:24%;}
	.w_feature_box ul li:nth-child(3) {background-size:30%;}
	.w_feature_box ul li:nth-child(4) {background-size:27%;}
}