@charset "utf-8";

/*------------MOBILE------------*/
@media all and (max-width: 1199px){
.pc-only {display: none !important;}

#container > h2 {display: none;}

/*---- header ----*/
#header {position: fixed; width: 100vw; box-shadow: 5px 0 10px rgba(0,0,0,.2); background-color: #fff; z-index: 9999; display: block;}
#header .header_wrap {width: 90%; height: auto; margin: 0 auto; position: relative;}
#header .header_logo {width: 152px; padding: 10px 0; display: block; float: left;}
#header .header_logo.mobile_logo a {display: block; width: 100%; height: 37px; background-image: url("../images/common/tr_logo.png"); background-repeat: no-repeat; background-size: cover;}
#header .header_logo.mobile_logo.logo_on a {background-image: url("../images/common/tr_logo2.png");}

#header .gnb {display: block; background-color: var(--pointcolor2); width: 100vw; height: 100vh; position: fixed; top: 0; left: 0; z-index: 1; padding: 80px 40px 0; opacity: 0; visibility: hidden;
-webkit-transition: 300ms; -ms-transition: 300ms; transition: 300ms; -webkit-transform: translateY(-100%); -ms-transform: translateY(-100%); transform: translateY(-100%);}
#header .gnb.on {opacity: 1; visibility: visible; -webkit-transform: translateY(0); -ms-transform: translateY(0); transform: translateY(0);}
#header .gnb_list {padding: 20px 0;}
#header .gnb_list_item {width: 100%; border-bottom: 1px solid #fff; position: relative; padding: 15px 0;}
#header .gnb_list_item::after {content: '▼'; display: block; position: absolute; top: 24px; right: 0; font-size: 0.875rem; color: #fff;}
#header .gnb_list_item.active::after {content: '▲';}
#header .gnb_list_item > a {font-weight: bold; color: #fff; line-height: 30px;}
#header .gnb_list02 {display: none; padding: 15px 0 0;}
#header .gnb_link a {font-weight: normal; color: #fff; line-height: 30px;}

#header .consult_link {display: flex;}
#header .consult_link a {color: #fff;}
#header .consult_link a:first-child {margin-right: 15px;}

#header .menu_btn {display: block; float: right; position: relative; width: 30px; height: 15px; margin: 21px 0; z-index: 999;}
#header .menu_btn::before, #header .menu_btn::after {content: ''; display: block; position: absolute; left: 0; width: 100%; height: 3px; background-color: var(--pointcolor2);
-webkit-transition-duration: 150ms; -ms-transition-duration: 150ms; transition-duration: 150ms;}
#header .menu_btn::before {top: 0;}
#header .menu_btn::after {bottom: 0;}
#header .menu_btn.active::before, #header .menu_btn.active::after {top: 50%; left: 50%; background-color: #fff;
-webkit-transform: translate(-50%, -50%); -ms-transform: translate(-50%, -50%); transform: translate(-50%, -50%);}
#header .menu_btn.active::before {-webkit-transform: translate(-50%, -50%) rotate(45deg); -ms-transform: translate(-50%, -50%) rotate(45deg); transform: translate(-50%, -50%) rotate(45deg);}
#header .menu_btn.active::after {-webkit-transform: translate(-50%, -50%) rotate(-45deg); -ms-transform: translate(-50%, -50%) rotate(-45deg); transform: translate(-50%, -50%) rotate(-45deg);}

#header_copy {position: absolute; bottom: 20px; left: 0; color: #fff; font-size: 0.8125rem; width: 100%; text-align: center; line-height: 1.5;}

/* active, open */
#header .gnb_list_item.open::after {content: '▲'; display: block; position: absolute; top: 24px; right: 0; font-size: 0.875rem; color: #fff;}

/*---- footer ----*/
#ft {width: 100%; background-color: #141414; font-size: 1rem; padding: 45px 0; margin: 0 !important;}
#ft #ft_wr {position: relative; width: 90%; margin: 0 auto;}
#ft #ft_logo {display: none;}
/* #ft #ft_logo {width: 30%; background-color: #fff; position: absolute; bottom: 0; left: 50%; -webkit-transform: translateX(-50%); -ms-transform: translateX(-50%); transform: translateX(-50%);} */
#ft #ft_company {color: #fff; line-height: 1.5; width: 100%; font-size: 0.875rem;}
#ft #ft_company p {margin-top: 5px;}
#ft #ft_copy {padding-top: 15px;}
#ft #ft_link {width: 100%; padding-top: 15px;}
#ft #ft_link .ft_link_item {display: inline-block; width: 35px; height: 35px;}
#ft #ft_link .ft_link_item:last-child {margin-right: 0;}
#ft #ft_link li + li {margin: 0 10px;}


/*------------booking------------*/

/*---- header ----*/
#header_booking {position: fixed; width: 100%; background-color: #fff; border-bottom: 1px solid #d1d1d1; z-index: 10;}
#header_booking .header_wrap {width: 90%; height: auto; margin: 0 auto; position: relative;}
#header_booking .header_logo {width: 152px; padding: 10px 0; display: block; float: left; position: relative; z-index: 999;}

#header_booking .gnb {display: block; background-color: #fff; width: 100vw; height: 100vh; position: fixed; top: 0; left: 0; z-index: 1; padding: 80px 0 0; opacity: 0; visibility: hidden;
-webkit-transition: 300ms; -ms-transition: 300ms; transition: 300ms; -webkit-transform: translateY(-100%); -ms-transform: translateY(-100%); transform: translateY(-100%);}
#header_booking .gnb.on {opacity: 1; visibility: visible; -webkit-transform: translateY(0); -ms-transform: translateY(0); transform: translateY(0); padding: 58px 0 0;}
#header_booking .gnb_list_item {width: 100%; border-top: 1px solid #ddd; position: relative;}
#header_booking .gnb_list_item:last-child {border-bottom: 1px solid #ddd;}
#header_booking .gnb_list_item::after {content: '▼'; display: block; position: absolute; top: 19px; right: 20px; font-size: 0.875rem; color: #000;}
#header_booking .gnb_list_item.active::after {content: '▲';}
#header_booking .gnb_list_item > a {font-weight: 500; color: #000; line-height: 40px; display: block; width: 100%; padding: 5px 20px;}
#header_booking .gnb_list02 {display: none; background-color: #f5f5f5;}
#header_booking .gnb_link {padding: 10px 0;}
#header_booking .gnb_link a {font-weight: normal; color: #000; line-height: 30px; font-size: 0.875rem; display: block; width: 100%; padding-left: 20px;}

#header_booking .menu_btn {display: block; float: right; position: relative; width: 30px; height: 15px; margin: 21px 0; z-index: 999;}
#header_booking .menu_btn::before, #header_booking .menu_btn::after {content: ''; display: block; position: absolute; left: 0; width: 100%; height: 3px; background-color: #42a5fe;
-webkit-transition-duration: 150ms; -ms-transition-duration: 150ms; transition-duration: 150ms;}
#header_booking .menu_btn::before {top: 0;}
#header_booking .menu_btn::after {bottom: 0;}
#header_booking .menu_btn.active::before, #header_booking .menu_btn.active::after {top: 50%; left: 50%; -webkit-transform: translate(-50%, -50%); -ms-transform: translate(-50%, -50%); transform: translate(-50%, -50%);}
#header_booking .menu_btn.active::before {-webkit-transform: translate(-50%, -50%) rotate(45deg); -ms-transform: translate(-50%, -50%) rotate(45deg); transform: translate(-50%, -50%) rotate(45deg);}
#header_booking .menu_btn.active::after {-webkit-transform: translate(-50%, -50%) rotate(-45deg); -ms-transform: translate(-50%, -50%) rotate(-45deg); transform: translate(-50%, -50%) rotate(-45deg);}

/*---- footer ----*/
#ft_booking {width: 100%; background-color: #222; font-size: 1rem; padding: 30px 0;}
#ft_booking #ft_wr {position: relative; width: 90%; margin: 0 auto; display: flex; align-items: center; justify-content: space-between;}
#ft_booking #ft_logo {width: 16%;}
#ft_booking #ft_company {color: #fff; line-height: 1.5; margin-left: 6%; width: 63%;}
#ft_booking address {font-size: 0; line-height: 0;}
#ft_booking address .info {display: inline-block; font-size: 0.9375rem; color: #cfcfcf; margin-top: 10px; line-height: 25px; font-weight: 300;}
#ft_booking address .line {display: inline-block; width: 30px; height: 25px; position: relative; vertical-align: top; margin-top: 10px;}
#ft_booking address .line::before {content: ''; display: block; position: absolute; top: 50%; left: 50%; width: 1px; height: 13px; margin: -7.3px 0 0 -0.5px; background-color: #444;}
#ft_booking #ft_copy {padding-top: 20px; color: #6b6b6b; font-size: 0.8125rem; line-height: 1;}
#ft_booking #ft_link {width: 15%;}
#ft_booking #ft_link .ft_link_item {display: inline-block; width: 35px; height: 35px;}
#ft_booking #ft_link .ft_link_item:last-child {margin-right: 0;}
#ft_booking #ft_link li + li {margin: 0 10px;}
#ft_booking .adm_link {margin-top: 20px;}


/*---- 하단 상담신청 ----*/
#bottom_banner {position: fixed; bottom: 0; left: 0; z-index: 999; width: 100%; background-color: #3d6eff; box-shadow: 0px 0px 10px rgba(255,255,255,.3);
-webkit-transform: translateY(99%); -ms-transform: translateY(99%); transform: translateY(99%);
-webkit-transition: 800ms ease; -ms-transition: 800ms ease; transition: 800ms ease;}
#bottom_banner .terms {width: 95%; margin: 0 auto;}

#bottom_banner .banner_tab {position: relative; z-index: 0;}
#bottom_banner .tab_button {width: 130px; height: 30px; background-color: #3d6eff; text-align: center; position: absolute; top: -28px; left: 50%;
-webkit-transform: translateX(-50%); -ms-transform: translateX(-50%); transform: translateX(-50%); box-shadow: 0px 0px 10px rgba(255, 255, 255, .3);}
#bottom_banner .tab_button > button {font-size: 0.9375rem; color: #fff; line-height: 30px; position: relative; padding-right: 20px;}
#bottom_banner .tab_button > button::after {content: '▲'; display: block; position: absolute; top: 0; right: 0; font-size: .9375rem; color: #fff;}

#bottom_banner #contact-form-Banner {position: relative; z-index: 10; background-color: #3d6eff; padding: 30px 0 20px;}

#bottom_banner .txt_wrap {float: left;}
#bottom_banner .txt_wrap > h3 {font-size: 2.0625rem; letter-spacing: -1px; color: #fff; font-weight: 500;}
#bottom_banner .txt_wrap .b_privacy {color: #fff; display: inline-block; font-size: 1.125rem;}
#bottom_banner .txt_wrap .b_privacy label {display: inline-block; color: #fff; font-size: 0.8125rem; vertical-align: bottom;}
#bottom_banner .txt_wrap .b_privacy #bchk {width: 15px; height: 15px; vertical-align: middle; margin-right: 5px;}
#bottom_banner .txt_wrap .b_privacy a {font-size: 0.6875rem; display: inline-block; padding: 1px 9px; background-color: #5c5c5c; color: #fff; border-radius: 10px; margin-left: 10px; vertical-align: middle;}

#bottom_banner .form_wrap {float: right; padding-top: 16px; font-size: 0;}
#bottom_banner .form_wrap .f_message {width: 100%; height: 40px; font-size: .9375rem; margin: 10px 0; padding: 9px; border: 0; background-color: #fff; vertical-align: middle; font-family: 'Noto Sans KR', sans-serif;}
#bottom_banner .form_wrap .f_name,
#bottom_banner .form_wrap .f_phone {width: calc(100% / 2 - 5px); height: 40px; font-size: .9375rem; margin-left: 10px; padding: 0 9px; border: 0; background-color: #fff;}
#bottom_banner .form_wrap .f_name {margin: 0;}
#bottom_banner .form_wrap .f_submit {width: 100%; height: 40px; font-size: .9375rem; color: #fff; text-align: center; background-color: #000; cursor: pointer; border: 0;
-webkit-transition: all 500ms ease; -ms-transition: all 500ms ease; transition: all 500ms ease;}
#bottom_banner .form_wrap .f_submit:hover {background-color: #fff; color: #000;}


/*---- active ----*/
#bottom_banner.active {-webkit-transform: translateY(0); -ms-transform: translateY(0); transform: translateY(0);}
#bottom_banner.active .tab_button > button::after {content: '▼';}
} 