/* 헤더 */
header {
    width: 100%;
    height:auto;
    z-index: 10;
    top: 0px;
    position: fixed;
    background-color:#;
    border-bottom: 0px solid rgba(150, 150, 150, 0.0);
    box-sizing: border-box;
    transition: All 0.2s ease;
    -webkit-transition: All 0.2s ease;
    -moz-transition: All 0.2s ease;}
	
#header { width: 100%;
    z-index: 10;
    background-color:rgba(255,255,255,0);
    border-bottom: 1px solid rgba(150, 150, 150, 0.0);
    box-sizing: border-box;
    transition: All 0.2s ease;
    -webkit-transition: All 0.2s ease;
    -moz-transition: All 0.2s ease;}	
	
#header.active {
    background:rgba(255,255,255,1.0);
}
   
.header_wrap { box-shadow:0 0 8px rgba(0,0,0,0.0); width:100%; z-index:9; }
.header_wrap > .wrapper { position:relative; display:flex; justify-content:space-between; flex-wrap:wrap; }
.header_wrap > .wrapper > .logo { margin-left: 5%; padding: 25px 0; z-index:9; }
.header_wrap > .wrapper > .logo img { height:auto;}
.header_wrap > .wrapper .gnb { margin: auto 0; margin-right: 5%; padding: 25px 0; z-index:9; }
.header_wrap > .wrapper .gnb ul { display:flex;}
.header_wrap > .wrapper .gnb ul li:nth-child(1) a { display:inline-block; border-radius:30px; border:1px solid rgba(255,255,255,.9); padding:7px 15px; margin-right:40px; font-size:0.9rem; font-weight: 500; color:#fff; transition:.3s; }
.header_wrap > .wrapper .gnb ul li:nth-child(1) a:hover { background:#457be8; border:1px solid #457be8; color:#fff; }
.header_wrap > .wrapper .gnb ul li:nth-child(1) img { display:inline-block; margin:0 5px 0 0; }
.header_wrap > .wrapper .gnb ul li:nth-child(1) .gnb_ico { display:inline-block; background:url(../images/gnb_ico.png) 0 3px no-repeat; background-size:19px; width:25px; }
.header_wrap > .wrapper .gnb ul li:nth-child(2) { margin-top: 5px; }


/* pc 전체 메뉴 */
.header_wrap .wrapper #all_menu { position:absolute; top:35px; right:0; padding:0; z-index:9;}
.header_wrap .wrapper #all_menu .overlay {
  height: 100%;
  width: 0;
  position: fixed;
  z-index: 1;
  top: 0;
  left: 0;
  background-color: rgb(0,0,0);
  background-color: rgba(0,0,0, 0.9);
  overflow-x: hidden;
  transition: 0.5s;
}

.header_wrap .wrapper #all_menu .overlay-content {
  position: relative; display:flex; justify-content:space-between; flex-wrap:wrap;
  top: 25%;
  max-width: 1600px; width: 90%; margin:0 auto;
  margin-top: 0; overflow:hidden;
}

.header_wrap .wrapper #all_menu .overlay-content ul { width:18%; }
.header_wrap .wrapper #all_menu .overlay-content ul li.title { margin-bottom:10px;  font-size:2.0rem; font-weight:600; color:#457be8; letter-spacing:0;}
.header_wrap .wrapper #all_menu .overlay-content ul li { width:100%; line-height:2.5;}

.header_wrap .wrapper #all_menu .overlay a {
  text-decoration: none;
  font-size: 1.4rem;
  color: #ccc;
  transition: 0.3s;
}

.header_wrap .wrapper #all_menu .overlay a:hover, .overlay a:focus {
  color: #457be8;
}

.header_wrap .wrapper #all_menu .overlay .closebtn {
  position: absolute;
  top: 30px;
  right: 70px;
  font-family: 'Noto Sans KR',sans-serif; font-size: 70px;
}

/* 푸터 */
#footer { position: relative; margin:0 0; padding:80px 0 50px; background:#112341; z-index: 10; }

#footer .bottom-info { display: flex; justify-content: space-between; flex-wrap: wrap; margin: 0 auto; width: 90%; max-width: 1600px; }
#footer .bottom-info .location { border-radius: 25px; background: #fff; overflow: hidden; width: 35%; margin-right: 5%; }
#footer .bottom-info .content_wrap { display: flex; flex-wrap: wrap; margin: auto 0; width: 60%; }
#footer .bottom-info .content_wrap .content:nth-child(2) { margin: 0 7%; }
#footer .bottom-info .content_wrap .content .tit  { margin-bottom: 0; }
#footer .bottom-info .content_wrap .content .tit h2 { font-size: 1.6rem; color: #fff; line-height: 1.5; }
#footer .bottom-info .content_wrap .content .tit h3 { font-family: 'Aritaburi'; font-size: 1.1rem; color: #457be8; line-height: 1.3; letter-spacing: 0.5px; }
#footer .bottom-info .content_wrap .content ul { margin-top: 30px; }
#footer .bottom-info .content_wrap .content ul li { margin-top: 25px; }
#footer .bottom-info .content_wrap .content ul li span { font-size: 1.0rem; color: #fff; }
#footer .bottom-info .content_wrap .content ul li p { margin-top: 5px; font-size: 0.95rem; color: #cbcfd7; }
#footer .bottom-info .content_wrap .content ul.tel { margin-top: 20px; }
#footer .bottom-info .content_wrap .content ul.tel li { margin-top: 10px; }
#footer .bottom-info .content_wrap .content ul.tel li span { display: inline-block; width: 130px; font-size: 0.95rem; color: #cbcfd7; }
#footer .bottom-info .content_wrap .content ul.tel li a { font-size: 1.4rem; font-weight: 700; color: #fff; }
#footer .bottom-info .content_wrap .content ul.hours { margin-top: 20px; }
#footer .bottom-info .content_wrap .content ul.hours li { margin-top: 10px; font-size: 0.95rem; color: #cbcfd7; }
#footer .bottom-info .content_wrap .content ul.hours li span { display: inline-block; width: 70px; color: #fff; }

#footer .copyright { display: flex; justify-content: space-between; flex-wrap: wrap; margin: 50px auto 0; padding: 50px 0 0; border-top: 1px solid #52617c; width: 90%; max-width: 1600px; }
#footer .copyright .address  { width: 40%; }
#footer .copyright .address ul { display:flex; margin-bottom: 15px; }
#footer .copyright .address ul li a { margin-right: 15px; color: #fff; }
#footer .copyright .address p { font-size: 0.9rem; color: #cbcfd7; line-height: 1.8; }
#footer .copyright .sns { width: 20%; text-align: center; }
#footer .copyright .sns span { color: #fff; }
#footer .copyright .sns ul { display: flex; justify-content: center; }
#footer .copyright .sns ul li { margin: 10px; }
#footer .copyright .logo { display: flex; margin: auto 0; width: 40%; }
#footer .copyright .logo img { margin-left: auto; }

/* 카카오 약도 반응형 세로값 가변 조정 */
.root_daum_roughmap {
    width: 100% !important;
}
.root_daum_roughmap .wrap_map {
    width: 100% !important;
    height: auto !important;
    aspect-ratio: 16 / 11; /* 가로:세로 비율 (원하는 비율에 맞춰 조절 가능, 예: 4/3 또는 16/9) */
}
.root_daum_roughmap .wrap_map iframe {
    width: 100% !important;
    height: 100% !important;
}
/* 카카오 약도 부모 영역 반응형 설정 */
#footer .bottom-info .location {
    position: relative;
    width: 35%; /* 기존 값 유지 (모바일 767px 이하에서는 기존 width: 100% 적용됨) */
    aspect-ratio: 640 / 360;
    overflow: hidden;
}
#footer .bottom-info .location .root_daum_roughmap,
#footer .bottom-info .location .wrap_map,
#footer .bottom-info .location iframe {
    width: 100% !important;
    height: 100% !important;
    position: absolute !important;
    top: 0;
    left: 0;
}
/* //카카오 약도 반응형 세로값 가변 조정 */


@media (min-width:1600px) {

}




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

html { background:#fff;
  text-decoration:none; font-size:16px; font-weight:400; color:#444; letter-spacing:0; line-height:1.5; word-break:keep-all;/* 1 */
  -ms-text-size-adjust: 100%; /* 2 */
  -webkit-text-size-adjust: 100%; /* 2 */
  overflow-x:hidden; /* 가로 스크롤 X */
}
	
#header { position:absolute; height:93px;} /* 중요! 삭제하면 메뉴 사라짐 */

/* 푸터 */
#footer { position: relative; margin:0 0; padding:80px 0 50px; background:#112341; z-index: 8; }
#footer .copyright .address p { font-size: 0.8rem; color: #cbcfd7; line-height: 1.6; }
#footer .copyright .sns { width: 20%; text-align: center; }
#footer .copyright .sns span { color: #fff; }
#footer .copyright .sns ul { display: flex; justify-content: center; }
#footer .copyright .sns ul li { margin: 10px; }
#footer .copyright .sns ul li img { height: 30px; }
#footer .copyright .logo { display: flex; margin: auto 0; width: 40%; }
#footer .copyright .logo img { margin-left: auto; height: 40px; }


}


@media (max-width:767px){
	
html { background:#fff;
  text-decoration:none; font-size:16px; font-weight:400; color:#333; letter-spacing:0; line-height:1.6; word-break:keep-all;/* 1 */
  -ms-text-size-adjust: 100%; /* 2 */
  -webkit-text-size-adjust: 100%; /* 2 */
  overflow-x:hidden; /* 가로 스크롤 X */
}

.header_wrap { background:rgba(0,0,0,0.0); box-shadow:0 0 8px rgba(0,0,0,0.0); border-bottom:0px solid #dedede; width:100%; height:; z-index:9;}
.header_wrap .wrapper { width:90%; margin:0 auto; }
.header_wrap .wrapper .logo { margin-left: 0; padding: 15px 0; z-index:9; }
.header_wrap .wrapper .logo img { height:40px; }
.header_wrap > .wrapper .gnb { display:none; }

/* 푸터 */
#footer { position: relative; margin:0 0; padding:80px 0 50px; background:#112341; z-index: 8; }

#footer .bottom-info { display: flex; flex-wrap: wrap; margin: 0 auto; width: 90%; }
#footer .bottom-info .location { border-radius: 25px; background: #fff; overflow: hidden; width: 100%; margin: 0; }
#footer .bottom-info .content_wrap { display: flex; flex-wrap: wrap; margin: 30px 0 0; width: 100%; }
#footer .bottom-info .content_wrap .content { margin: 20px 6% 20px 0; }
#footer .bottom-info .content_wrap .content:nth-child(2) { margin: 20px 0; }
#footer .bottom-info .content_wrap .content .tit  { margin-bottom: 0; }
#footer .bottom-info .content_wrap .content .tit h2 { font-size: 1.3rem; color: #fff; line-height: 1.5; margin-top: 5px; }
#footer .bottom-info .content_wrap .content .tit h3 { font-family: 'Aritaburi'; font-size: 1.1rem; color: #457be8; line-height: 1.3; letter-spacing: 0.5px; }
#footer .bottom-info .content_wrap .content ul { margin-top: 0; }
#footer .bottom-info .content_wrap .content ul li { margin-top: 15px; }
#footer .bottom-info .content_wrap .content ul li span { font-size: 1.1rem; color: #fff; }
#footer .bottom-info .content_wrap .content ul li p { margin-top: 5px; color: #cbcfd7; }
#footer .bottom-info .content_wrap .content ul.tel { margin-top: 0; }
#footer .bottom-info .content_wrap .content ul.tel li { margin-top: 5px; }
#footer .bottom-info .content_wrap .content ul.tel li span { display: inline-block; width: 140px; color: #cbcfd7; }
#footer .bottom-info .content_wrap .content ul.tel li a { font-size: 1.5rem; font-weight: 700; color: #fff; }
#footer .bottom-info .content_wrap .content ul.hours { margin-top: 0; }
#footer .bottom-info .content_wrap .content ul.hours li { margin-top: 5px; color: #cbcfd7; }
#footer .bottom-info .content_wrap .content ul.hours li span { display: inline-block; width: 70px; color: #fff; }

#footer .copyright { display: flex; justify-content: space-between; flex-wrap: wrap; margin: 30px auto 0; padding: 50px 0 0; border-top: 1px solid #52617c; width: 90%; }
#footer .copyright .address  { order: 2; width: 100%; margin-top: 20px; }
#footer .copyright .address ul { display:flex; margin-bottom: 15px; }
#footer .copyright .address ul li a { margin-right: 15px; color: #fff; }
#footer .copyright .address ul li:last-child { display: none; }
#footer .copyright .address p { font-size: 0.9rem; color: #cbcfd7; line-height: 1.8; }
#footer .copyright .sns { order: 3; margin-top: 20px; width: 100%; text-align: left; }
#footer .copyright .sns span { color: #fff; }
#footer .copyright .sns ul { display: flex; justify-content:flex-start; }
#footer .copyright .sns ul li { margin: 10px 15px 0 0; }
#footer .copyright .sns ul li img { width: 35px; }
#footer .copyright .logo { display: flex; margin: auto 0; width: 100%; }
#footer .copyright .logo img { margin-left: 0; height: 30px; }

/* 퀵메뉴 */
.quick { position:fixed; bottom:0; background:#c4820e; box-shadow: 0 10px 20px rgba(0,0,0,0.8); width:100%; z-index:9; }
.quick .content_wrap { display:flex; justify-content:space-between; flex-wrap:wrap; margin:0 auto; width:90%; max-width:90%; padding:10px; }
.quick .content_wrap .content { width:32%; height:100%; }
.quick .content_wrap .content a { display:flex; justify-content:center; flex-direction:column; flex-wrap:wrap; border-radius:10px; padding:10px 0; font-size:1.0rem; font-weight:700; color:#333; line-height:1.2rem; text-align:center; transition:.3s; }
.quick .content_wrap .content a p { display:block;  margin:6px 0 0; }
.quick .content_wrap .content a img { display:inline-block; height:35px; padding-right:0; margin: 0 auto; }

}


/* ==========================================================
   Dark Section Header Styling (드롭다운 오픈 시 검정색 전환)
   ========================================================== */

.header_wrap > .wrapper > .logo,
.header_wrap > .wrapper .gnb,
.pc_nav {
    z-index: 99 !important;
}

/* 1. 기본 상태 (밝은 배경 / 스크롤 내렸을 때 .active) */
.header_wrap > .wrapper > .logo img {
    content: url('../images/logo.png');
}
.pc_nav > ul > li > a {
    color: #222;
}
.header_wrap > .wrapper .gnb ul li:nth-child(1) a {
    border: 1px solid rgba(0,0,0,0.2);
    color: #222 !important;
}
.header_wrap > .wrapper .gnb ul li:nth-child(1) a:hover {
    border: 1px solid rgba(0,0,0,0.0);
    color: #fff !important;
}
.header_wrap > .wrapper .gnb ul li:nth-child(1) .gnb_ico {
    background: url('../images/gnb_ico.png') 0 3px no-repeat !important;
    background-size: 19px;
}
.header_wrap > .wrapper .gnb ul li:nth-child(2) img,
#burgerbtn img {
    filter: none !important;
}

/* 2. 배경색이 어두울 때 (.is-dark 적용 기본 상태 - 흰색 유지) */
#header.is-dark .logo img {
    content: url('../images/logo_w.png') !important;
}
#header.is-dark .pc_nav > ul > li > a {
    color: #ffffff !important;
}
#header.is-dark .header_wrap > .wrapper .gnb ul li:nth-child(1) a {
    border-color: rgba(255,255,255,0.9) !important;
    color: #ffffff !important;
}
#header.is-dark .header_wrap > .wrapper .gnb ul li:nth-child(1) a:hover {
    border-color: rgba(255,255,255,0.0) !important;
    color: #ffffff !important;
}
#header.is-dark .header_wrap > .wrapper .gnb ul li:nth-child(1) .gnb_ico {
    background: url('../images/gnb_ico_w.png') 0 3px no-repeat !important;
    background-size: 19px;
}
#header.is-dark .header_wrap > .wrapper .gnb ul li:nth-child(2) img,
#header.is-dark #burgerbtn img {
    filter: brightness(0) invert(1) !important;
}

/* 3. 드롭다운 오픈 시(.pc_nav.on 또는 .menu-opened) 로고, 상담, 삼선 및 가운데 1차 메뉴를 검정색으로 전환 */
#header .pc_nav.on ~ .header_wrap .logo img,
#header.menu-opened .logo img,
#header.is-dark.menu-opened .logo img {
    content: url('../images/logo.png') !important;
}
/* 가운데 1차 메뉴 텍스트 검정색 전환 */
#header .pc_nav.on > ul > li > a,
#header.menu-opened .pc_nav > ul > li > a,
#header.is-dark.menu-opened .pc_nav > ul > li > a {
    color: #222 !important;
}
#header .pc_nav.on ~ .header_wrap .gnb ul li:nth-child(1) a,
#header.menu-opened .header_wrap .gnb ul li:nth-child(1) a,
#header.is-dark.menu-opened .header_wrap .gnb ul li:nth-child(1) a {
    border-color: rgba(0,0,0,0.2) !important;
    color: #222 !important;
}
#header .pc_nav.on ~ .header_wrap .gnb ul li:nth-child(1) a:hover,
#header.menu-opened .header_wrap .gnb ul li:nth-child(1) a:hover,
#header.is-dark.menu-opened .header_wrap .gnb ul li:nth-child(1) a:hover {
    border-color: rgba(0,0,0,0.0) !important;
    color: #fff !important;
}
#header .pc_nav.on ~ .header_wrap .gnb ul li:nth-child(1) .gnb_ico,
#header.menu-opened .header_wrap .gnb ul li:nth-child(1) .gnb_ico,
#header.is-dark.menu-opened .header_wrap .gnb ul li:nth-child(1) .gnb_ico {
    background: url('../images/gnb_ico.png') 0 3px no-repeat !important;
    background-size: 19px;
}
#header .pc_nav.on ~ .header_wrap .gnb ul li:nth-child(1):hover .gnb_ico,
#header.menu-opened .header_wrap .gnb ul li:nth-child(1):hover .gnb_ico,
#header.is-dark.menu-opened .header_wrap .gnb ul li:nth-child(1):hover .gnb_ico {
    background: url('../images/gnb_ico_w.png') 0 3px no-repeat !important;
    background-size: 19px;
}
#header .pc_nav.on ~ .header_wrap .gnb ul li:nth-child(2) img,
#header .pc_nav.on ~ #burgerbtn img,
#header.menu-opened .header_wrap .gnb ul li:nth-child(2) img,
#header.menu-opened #burgerbtn img,
#header.is-dark.menu-opened .header_wrap .gnb ul li:nth-child(2) img,
#header.is-dark.menu-opened #burgerbtn img {
    filter: none !important;
}

/* 4. 스크롤을 내려서 전체 배경이 밝아진 경우 (.active) */
#header.active .logo img {
    content: url('../images/logo.png') !important;
}
#header.active .pc_nav > ul > li > a {
    color: #222 !important;
}
#header.active .header_wrap > .wrapper .gnb ul li:nth-child(1) a {
    border-color: rgba(0,0,0,0.2) !important;
    color: #222 !important;
}
#header.active .header_wrap > .wrapper .gnb ul li:nth-child(1) a:hover {
    border-color: rgba(0,0,0,0.0) !important;
    color: #fff !important;
}
#header.active .header_wrap > .wrapper .gnb ul li:nth-child(1) .gnb_ico {
    background: url('../images/gnb_ico.png') 0 3px no-repeat !important;
    background-size: 19px;
}
#header.active .header_wrap > .wrapper .gnb ul li:nth-child(1):hover .gnb_ico {
    background: url('../images/gnb_ico_w.png') 0 3px no-repeat !important;
    background-size: 19px;
}
#header.active .header_wrap > .wrapper .gnb ul li:nth-child(2) img,
#header.active #burgerbtn img {
    filter: none !important;
}