@charset "utf-8";
@import url("./font-awesome/css/font-awesome.min.css");
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+KR:wght@100;300;400;500;700;900&family=Poppins:wght@100;200;300;400;500;600;700&display=swap'); 
@import url('https://cdn.jsdelivr.net/gh/orioncactus/pretendard/dist/web/static/pretendard-dynamic-subset.css');/* regular-400, medium-500, semibold-600, bold-700 */ 

/* ========================== 초기화 [s] */
html, body, div, span, applet, object, iframe,h1, h2, h3, h4, h5, h6, p, blockquote, pre,a, abbr, acronym, address, big, cite, code,del, dfn, em, img, ins, kbd, q, s, samp,small, strike, strong, sub, sup, tt, var,b, u, i, center,dl, dt, dd, ol, ul, li,fieldset, form, label, legend,table, caption, tbody, tfoot, thead, tr, th, td,article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary,time, mark, audio, video{margin:0;padding:0;border:0;font-size:100%;font:inherit;vertical-align:baseline}
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section{display:block}
body{line-height:1;font-family:'Pretendard'}
ol, ul, dl, dt, dd{list-style:none}
blockquote, q{quotes:none}
blockquote:before, blockquote:after,q:before, q:after{content:'';content:none}
table{border-collapse:collapse;border-spacing:0}
input, button{margin:0;padding:0;font-family:'Pretendard'}
input[type="submit"]{cursor:pointer}
button{cursor:pointer}
textarea, select{font-family:'Pretendard'}
select{margin:0}
a{color:#222;text-decoration:none}
label, input, button, select, img{vertical-align:middle}
body{font-size:0.81em}
*, :after, :before{box-sizing:border-box}
*{-webkit-text-size-adjust:none}
.sound_only{display:inline-block !important;position:absolute;top:0;left:0;margin:0 !important;padding:0 !important;font-size:0;line-height:0;border:0 !important;overflow:hidden !important}
h1, h2, h3, h4, h5, h6{font-family:'Pretendard'}
html, body {
  overflow-x: hidden;   /* 강제로 가로 스크롤 차단 */
}

/* ========================== 초기화 [e] */

:root{--primary:#0047BB}
:root{--primary-black:#222}
:root{--bs-secondary-color:#0084c3 !important}

.custom_text_gray {
  color: #4f4f4f;
}

.custom_text_graylight {
  color: #ff0000;
}


.custom_text_black {
  color: #212121;
}

.custom_text_black2 {
  color: #333333;
}

.back-primary {
  background-color: #0084c3;
}

.custom-border-primary {
  border-radius: 50px  !important;
  padding: 7px 14px !important;
  color: #0084c3;
  background-color: #e6f4fc;
}

/* =========================== HEADER */
#sh_hd{background-color: #fff; position:fixed;z-index:15;width:100%;font-size:15px; font-family:'Poppins','Pretendard'}
#sh_hd.sub{position:relative}
#shGnb{display:flex;align-items:center;position:relative;width:100%;height:80px;padding: 0 8.1% 0 5% !important; transition:all .2s}
#shGnb.blur{height:90px;backdrop-filter:blur(15px);background:rgba(0,0,0,.5)}
#shGnb.blur.on{backdrop-filter:blur(0);background-color:transparent}
.sh_lnb_bg{display:none;position:absolute;top:0;left:0;width:100%;height:320px;background:url(../img/common/bg.png) 100px top no-repeat #fff}
#sh_hd.sub .sh_lnb_bg{box-shadow:4px 4px 4px rgba(0,0,0,.03)}

/* 로고 */
#shGnb .sh_logo{position:relative;z-index:20}

/* 대분류  */
#shGnb .sh_nav{margin:0 70px 0 auto;}
#shGnb .sh_nav > li{float:left;position:relative;line-height:100px; }
#shGnb .sh_nav > li > a{position:relative;z-index:20;display:block;padding:0 40px;font-size:17px;font-weight:600;color: var(--primary-black);text-decoration: none;}

#shGnb .sh_nav > li > a:hover {
  color: var(--primary); /* hover 시 primary 색상 */
}
#shGnb.blur .sh_nav > li{line-height:90px}
#shGnb.sub .sh_nav > li > a{color:#222}

/* 소분류 */
#shGnb .sh_lnb_s{top:90%; display:none;position:absolute;left:50%;transform:translateX(-50%);min-width:100% !important;width:max-content !important;min-height:145px}
#shGnb .sh_lnb_s li a{background-color: #fff; display:block;line-height:2.8;text-align:left;color:#222; padding:0 40px 0 13px ;text-decoration: none;}
#shGnb .sh_lnb_s > li > a:hover {
  color: #fff;
  background-color: var(--primary); /* hover 시 primary 색상 */
}

/* sns */
#shGnb .down_btn{position:relative;z-index:20;display:flex;align-items:center;height:40px;padding:0 22px;border-radius:30px;border:1px solid rgba(255,255,255,.5);font-size:13px;font-weight:400;color:#fff;transition:all .2s}
#shGnb .down_btn svg{width:20px;height:20px;margin:2px 0 0 20px;transition:all .2s}
#shGnb .down_btn:hover{color:#000;background:#fff}
#shGnb .down_btn:hover svg{color:var(--primary)}
#shGnb.on .down_btn{border-color:#e1e1e1;color:#000}
#shGnb.on .down_btn svg{color:var(--primary)}
#shGnb.sub .down_btn{border-color:#e1e1e1;color:#000}
#shGnb.sub .down_btn svg{color:var(--primary)}

/* 반응형 메뉴 [s] */
#topmenuM{display:none;position:fixed;width:100%; padding:10px !important; height:60px !important; line-height:1.8;background-color:#fff;font-family:'notokr-regular';
border-bottom: 1px solid #e4e4e4f8;
}	
#topmenuM h1 {font-size: 0 !important;}	
/* 로고 */
#m_logo{position:relative;}
#m_logo a{display:inline-block}
#m_logo img{width: 52% !important; padding: 10px 0 !important; }
/* 상단 버튼 및 오픈메뉴 */
#m_navBtn{position:absolute;top:12px;right:15px;z-index:5;width:30px;height:30px}
#m_navBtn span{display:block;position:relative;top:50%;transform:translateY(-50%);width:100%;height:2px}
#m_navBtn span:before, #m_navBtn span:after{display:block;content:"";position:absolute;top:-6px;width:30px;height:2px;background-color:#222;-webkit-transition:all .1s;transition:all .1s}
#m_navBtn span:after{top:6px;width:16px;right:0;background-color:var(--primary)}
#m_navBtn.on{position:fixed}
#m_navBtn.on span:before{top:0;right:-4px;transform:rotate(45deg)}
#m_navBtn.on span:after{top:0;right:-4px;width:30px;transform:rotate(-45deg);background-color:#222}
#navWrap{display:none;position:fixed;left:0;top:0;z-index:4;width:100%;height:100%;background-color:rgba(0,0,0,.7)}
#navWrap .inner{overflow-y:scroll;opacity:0;position:fixed;right:-40px;top:0;z-index:6;min-width:300px;width:75%;height:100%;padding:60px 0;background-color:#fff;-webkit-transition:all .1s;transition:all .1s}
#navWrap.on .inner{opacity:1;right:0;-webkit-transition:all .4s;transition:all .4s}
#navWrap .inner:before, #navWrap .inner:after{opacity:0;display:block;position:fixed;top:0;right:-40px;z-index:1;content:"";min-width:300px;width:70%;height:60px;background-color:#fff;-webkit-transition:all .1s;transition:all .1s}
#navWrap .inner:after{top:auto;bottom:0}
#navWrap.on .inner:before, #navWrap.on .inner:after{opacity:1;right:0;-webkit-transition:all .4s;transition:all .4s}
#navWrap .inner .mo_hd_copy{position:fixed;right:0;bottom:15px;z-index:2;min-width:300px;width:70%;font-size:12px;text-align:center;color:#888}
#navWrap .user_tip{padding:10px 20px;background-color:#f5f5f5}
#navWrap .user_tip li{display:inline-block}
#navWrap .user_tip li+li{margin-left:10px}
/* 대분류 */
#topmenuM .m_lnb .m_bmenu{display:block;position:relative;width:100%;height:52px;padding:0 20px;border:none;border-bottom:1px solid #ddd;background:none;font-size:16px;line-height:52px;color:#222;text-align:left;font-family:'notokr-medium'}
#topmenuM .m_lnb .m_bmenu:after{float:right;content:"\f107";font-family:'fontawesome'}
#topmenuM .m_lnb .m_bmenu.on:after{content:"\f106"}
/* 소분류 */
#topmenuM .m_smenu{display:none;padding:15px 20px !important; border-bottom:1px solid #ddd;background-color:#f2f3f5}
#topmenuM ul{padding:0 !important;}

#topmenuM .m_smenu li a{font-size:14px;color:#777; text-decoration: none;}

@media (max-width:1300px){
#shGnb{padding:0 30px}
#shGnb .sh_nav{margin-right:50px}
#shGnb .sh_nav > li > a{padding:0 20px}
}

@media (max-width:1024px){
#shGnb{display:none}
#topmenuM{display:block}	
}
/* 반응형 메뉴 [e] */

/* =========================== MAIN */
#sh_section{overflow:hidden;position:relative;font-size:16px;line-height:1.6;color:rgba(255,255,255,.6);font-family:'Pretendard'}

/* =========================== CONTAINER */
#sh_container{position:relative;z-index:10;width:100%;}
#sh_content{overflow:hidden;position:relative;z-index:10;width:100%;max-width:1400px;min-height:550px;padding:70px 0;margin:0 auto;}


/* =========================== FOOTER */
#sh_ft {
  padding: 50px 258px 50px;  /* 좌우 패딩을 헤더와 맞춤 */
  font-size: 14px;
  font-weight: 400;
  color: #fff;
  line-height: 1.8;
  background: #0E1934;
  font-family: 'Poppins','Pretendard';
}
#sh_ft img{width: 200px;}
#sh_ft a{color:#fff}
#sh_ft .flex{display:flex;align-items:flex-end;padding-bottom:33px;margin-bottom:33px;border-bottom:1px solid rgba(255,255,255,.2);font-weight:500}
#sh_ft .flex .links{margin-left:auto}
#sh_ft .flex .links a+a{margin-left:40px}
#sh_ft .info {
  display: flex;
  justify-content: space-between; /* 좌측 회사정보, 우측 메뉴 */
  align-items: flex-start;
  color: rgba(255, 255, 255, 0.657);
  font-size: 14px;
  line-height: 1.8;
}
#sh_ft .footer-right {
  display: flex;
  flex-direction: column;
  align-items: flex-end; /* 오른쪽 정렬 */
}
#sh_ft .info .company-wrap {
  max-width: 70%;  /* 왼쪽 영역 넓이 */
}

#sh_ft .info .company-info,
#sh_ft .info .contact-info {
  margin-bottom: 6px;
}

#sh_ft .info .footer-menu {
  display: flex;
  margin-left: auto;
  font-weight: 500;
  color:rgba(255,255,255,.4)
}

#sh_ft .info .footer-menu li+li {
  margin-left: 30px;
}

#sh_ft .footer-menu a {
  border-bottom: none !important;  /* 혹시 다른 css가 border 넣었을 때 */
  text-decoration: none !important; /* 밑줄 제거 */
}

@media (max-width: 768px) {
  .company-info,
  .contact-info {
    flex-direction: column;   /* 세로 배치 */
    align-items: center;      /* flex 가운데 */
    text-align: center;       /* 텍스트도 가운데 */
  }

  .company-info .item,
  .contact-info .item {
    display: block;   
    width: 100%;
    margin-bottom: 6px;
    text-align: center;       /* 각 항목도 가운데 */
  }

  #sh_ft .info {
    flex-direction: column; 
    align-items: center;      /* ✅ 전체 가운데 정렬 */
  }

  #sh_ft .info .company-wrap {
    max-width: 100%;
    margin-bottom: 20px;
    text-align: center;       /* ✅ 회사정보 영역 텍스트도 가운데 */
  }

  /* ✅ footer 메뉴 전체 가운데 정렬 */
  #sh_ft .info .footer-menu {
    display: flex;            /* flex 컨테이너 */
    justify-content: center;  /* 아이템 가운데 정렬 */
    align-items: center;
    flex-wrap: nowrap;          /* 줄바꿈 허용 */
    padding: 0 20px !important;
    margin: 0 0 20px 0 !important;
    list-style: none;         /* 불릿 제거 */
  }

  #sh_ft .info .footer-menu li {
    margin: 0;            /* 좌우 간격 */
    padding: 0;      /* 좌우 패딩 */
    text-align: center;
    white-space: nowrap; 
  }

  #sh_ft .info .footer-menu li a {
    display: inline-block;
    text-decoration: none;
    padding: 0;
  }
  #sh_ft img {
    display: block;
    margin: 0 auto;   /* 이미지 가운데 */
    width: 150px;     /* 모바일에서 조금 줄이기 (선택사항) */
  }
}


#sh_ft .copy{display:flex;justify-content:space-between;padding-top:60px;font-size:14px;color:rgba(255,255,255,.4)}
#sh_ft .copy a{color:rgba(255,255,255,.4)}
#sh_ft .copy a+a{margin-left:20px}

/* 반응형 하단 버튼 공통 */
#fix_tel{opacity:0;display:none;position:fixed;right:15px;bottom:60px;z-index:101;width:65px;height:65px;margin-right:-10px;border-radius:50%;font-size:30px;text-align:center;line-height:65px;color:#fff;background-color:var(--primary);box-shadow:5px 5px 5px rgba(0,0,0,.2);-webkit-transition:all .2s;transition:all .2s}
#fix_tel.active{opacity:1;margin-right:0}
#sh_ft_btns{display:none;padding:15px;background:#020305}
#sh_ft_btns .btns{overflow:hidden}
#sh_ft_btns .row2 a{width:50%}
#sh_ft_btns a{float:left;display:block;width:100%;height:55px;font-size:16px;line-height:55px;color:#fff;text-align:center;background:var(--primary);font-family:'notokr-bold'}
#sh_ft_btns a.tel{font-size:18px;font-weight:700;letter-spacing:0;font-family:'Poppins'}
#sh_ft_btns a i{padding-right:5px;font-size:18px}
#sh_ft_btns a.kakao{font-weight:normal;color:#402325;background-color:#ffe500}

/* 반응형 [s] */
@media (max-width:1024px){
#sh_hd{position:relative}
#sh_aside{display:none}
#sh_section{font-size:14px}
#sh_ft .info{flex-flow:column}
#sh_ft .info ul{order:-1;margin:0 auto 20px  0}
}
@media (max-width:768px){
#sh_ft{padding:30px 20px 20px}
#sh_ft .flex{display:block}
#sh_ft .flex .links{margin-top:20px}
}
@media (max-width:480px){
#sh_content{min-height:350px}
#fix_tel{display:block}
#sh_ft_btns{display:block}
#sh_ft{font-size:13px}
#sh_ft .flex{padding-bottom:30px;margin-bottom:30px}
#sh_ft .flex .links a+a{margin-left:12px}
#sh_ft .info ul{display:none}
#sh_ft .copy{padding-top:30px}
}
/* 반응형 [e] */

