.blog-section{
	padding-top: 180px!important;
}
@media (max-width:1200px) {
	.blog-section {
		padding-top: 140px!important;
	}
}
@media (max-width: 767px) {
    .blog-section {
        padding-top: 100px !important;
    }
}

/* ======================== :::::: 헤더 ~  :::::: ========================  */
body.sbhidden{overflow:hidden;}
#header{position:fixed; width:100%;left:0; top:0; 
z-index:200;
}
#header:before{content:'';  border-radius: 0px;box-shadow: 0px 20px 20px 0px rgba(0, 0, 0, 0.05);display:block; width:100%; position:absolute; left:0; top:0; transition:all .4s; opacity:0; height:0; background:#fff; z-index:-1;}
#header .headInner {position:relative;width:100%;height: 100px; 
/* max-width: 1920px; */
box-sizing: border-box;margin: 0 auto;display: block;}
#header .headInner .hdLogo {    z-index: 10;    transform: translateY(-50%);top: 50%;left: 60px;position: absolute;display: inline-block;}
#header .headInner .hdLogo a{display:inline-block; width:102px; height:36px; background-image: url(/custom/includes/img/logo_white.webp);background-position: center center;background-repeat: no-repeat;background-size: cover;vertical-align:top;}

/* pc nav */
#navmenu {height: 100%;transform: translateX(-50%);position: absolute;left: 50%;top: 0;width: 100%;}
#navmenu ul {margin: 0;padding: 0;height: 100%;width: 100%;font-size: 0;display: flex;justify-content: center;align-items: center;}
#navmenu ul li{display:inline-block; vertical-align:top; padding:0 35px;
/* min-width: 140px;  */
text-align:center; position: relative;}
#navmenu ul li > a{display:block;box-sizing:border-box; transition:all .3s linear;}
#navmenu ul li > a span {
    /* opacity: 0.7; */
    display: inline-block;
    position: Relative;
    font-size: 20px;
    color: #fff;
    font-weight: 700;
    font-family: pretendard-700;
    line-height: 36px;
	padding: 32px 0;
}
#navmenu ul li:hover > a span{opacity: 1;color:#22969C !important;font-family: pretendard-700;font-weight: 700;}
#navmenu ul li > a span:before{content:none;position:absolute;left:0;bottom: 1px;width:100%;height:3px;background:#22969C;}
#navmenu ul li:hover > a span:before{content:'';}
#navmenu ul li dl {
	transform: translateX(-50%) scaleY(0);
    /* transform: translateX(-50%); */
    min-width: 150px;
    position: absolute;
    left: 50%;
    top: 100px;
    padding: 20px 0 20px 0;
    width: 100%;
    /* transform: scaleY(0); */
    transform-origin: top;
    opacity: 0;
    visibility: hidden;
    transition: all .2s;
}
#navmenu ul li dl:hover{}
#navmenu ul li dl dd{padding:0 0 10px 0;margin:0;}
#navmenu ul li dl dd:last-child{padding:0;}
#navmenu ul li dl dd a{display:block; color: #888;font-size:16px;font-family: pretendard-400; font-weight: 400;line-height:30px;}
#navmenu ul li dl dd a:hover{color:#22969C !important; font-family: pretendard-600;font-weight: 600;text-decoration:none;}

/* 헤더 우측 컴포넌트 */
.headright {position: absolute;right: 60px;z-index: 10;transform: translateY(-50%);top: 50%;display: flex;gap: 50px;align-items: center;}
.headcallBtn{position:Relative;}
.headcallBtn a {
	gap:8px;
    display: flex;
    padding: 16px 26px;
    color: #fff;
    text-align: center;
    font-family: pretendard-700;
    font-size: 20px;
    font-style: normal;
    font-weight: 700;
    line-height: 20px;
    letter-spacing: 0;
    align-items: center;
    background: #22969C;
	border-radius: 16px 4px 16px 4px;
}
.headcallBtn a b {
	display: flex;
    height: 14px;
    width: 14px;
	background-image: url(/custom/includes/img/headcallBtn_arrow.webp);
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center center;
}

/* 햄버거 버튼 */
.hamBtn {
    display: none;
    cursor: pointer;
    position: Relative;
    width: 60px;
    height: 60px;
    background-image: url(/custom/includes/img/hammenu_icon_white.webp);
    background-size: 100%;
    background-repeat: no-repeat;
    background-position: center center;
}

/* ???? */
#header.up:before{height:460px; opacity:1;}
#header.up:after{content:'';position:absolute;left:0;bottom:0px;width:100%;height:1px;background:#eee;}
#header.up .headInner .hdLogo a{background-image: url(/custom/includes/img/logo_color.webp);}
#header.up .headInner .topUtil li.search a{background:url('/s/img/search_up.png') no-repeat center/100% auto;}
#header.up #navmenu ul li > a span{color:#111;}
#header.up #navmenu ul li dl{transform: translateX(-50%) scaleY(100%);opacity:1; visibility:visible;}
#header.up .hamBtn {background-image: url(/custom/includes/img/hammenu_icon_black.webp);}

/* ????? */
#header.nofixed{transform: translateY(-100%);}
#header.fixed{background:#fff;}
#header.subfixed.fixed{background:#fff;}
/* #header.fixed:after{content:'';position:absolute;left:0;bottom:0px;width:100%;height:1px;background:#eee;}  */
#header.fixed .headInner .hdLogo a{background-image: url(/custom/includes/img/logo_color.webp);}
#header.fixed #navmenu ul li > a span{color:#111;}
#header.fixed .hamBtn {background-image: url(/custom/includes/img/hammenu_icon_black.webp);}

/* ??? ????? ?? ?? */
#header.subfixed{    
background: #fff;
}
/* #header.subfixed:after{content:'';position:absolute;left:0;bottom:0px;width:100%;height:1px;background:#eee;}  */
#header.subfixed .headInner .hdLogo a{background-image: url(/custom/includes/img/logo_color.webp);}
#header.subfixed #navmenu ul li > a span{color:#111;}
#header.subfixed .hamBtn {background-image: url(/custom/includes/img/hammenu_icon_black.webp);}


#header.down_header{
	transform: translateY(-100%);
}

/* ======================== :::::: 모바일 햄버거 메뉴 (hamArea) :::::: ======================== */
/* Figma 00_m_main_menu (375) 기준 · 1rem = 10px */

/* 오버레이 */
.hamArea{
	position:fixed; left:0; top:0; z-index:210;
	width:100%; height:100%;
	background:rgba(0,0,0,0.4);
	opacity:0; visibility:hidden;
	transition:opacity .3s ease, visibility .3s ease;
}
.hamArea.show{opacity:1; visibility:visible;}

/* 패널 : 전체화면 */
.hamAreaInner{
	position:absolute; right:-100%; top:0;
	display:flex; flex-direction:column;
	width:50%; height:100%;
	padding:0;
	background:#fff;
	transition:right .4s ease-in-out;
}
.hamArea.show .hamAreaInner{right:0;}

/* ───────── 상단 고정바 (신규) ───────── */
.hamHead{
	flex:0 0 auto;
	position:sticky; top:0; z-index:2;
	display:flex; align-items:center; justify-content:space-between;
	width:100%;
	padding:13px 13px 13px 20px;
	background:#fff;
}
.hamLogo{
	display:block;
	width:62px; height:22px;
	background:url(/custom/includes/img/logo_color.webp) no-repeat center center;
	background-size:contain;
	font-size:0; line-height:0; text-indent:-9999px; overflow:hidden;
}
.hamHead__util{display:flex; align-items:center; gap:8px;}

/* 분석의뢰 버튼 (신규) */
.hamReqBtn{
	display:inline-flex; align-items:center; gap:6px;
	padding:10px 16px;
	border-radius:12px 3px 12px 3px;   /* TL TR BR BL */
	background:#22969C;
	color:#fff !important;
	font-family:pretendard-600; font-weight:600;
	font-size:14px; line-height:18px;
	white-space:nowrap;
}
.hamReqBtn b{
	display:block;
	width:10px; height:10px;
	background-image: url(/custom/includes/img/headcallBtn_arrow.webp);
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center center;
}

/* 닫기 버튼 : 상단바 내부 flex 아이템으로 변경 */
.hamCloseBtn{
	position:static;
	display:block;
	width:38px; height:38px;
	margin:0; padding:0; border:0;
	background:url(/custom/includes/img/hamCloseBtn.webp) no-repeat center center;
	background-size:18px 18px;
	cursor:pointer;
}

/* ───────── 메뉴 리스트 ───────── */
.hamContBox{
	flex:1 1 auto;
	display:flex; flex-direction:column; align-items:stretch;
	gap:10px;
	width:100%; height:auto;
	margin:0;
	padding:10px 0 20px;
	overflow-x:hidden; overflow-y:auto;
	-webkit-overflow-scrolling:touch;
}

/* 1뎁스 블록 + 구분선 (좌우 20px 인셋 = 시안 335px) */
.hamCont{
	position:relative;
	display:block;
	width:100%;
	margin:0;
	padding:0 0 10px;
	border-bottom:0;
}
.hamCont::after{
	content:'';
	position:absolute; left:20px; right:20px; bottom:0;
	height:1px; background:#eee;
}
.hamCont:last-child{margin:0; padding:0;}
.hamCont:last-child::after{display:none;}

/* 1뎁스 타이틀 */
.hamContSt{
	position:relative;
	display:flex; align-items:center;
	width:100%;
	min-height:34px;
	padding:0 44px 0 20px;   /* 우측은 화살표 영역 */
}
.hamContSt strong,
.hamContSt a{
	width: 100%;
	display:block; margin:0;
	color:#111;
	font-family:pretendard-600; font-style:normal; font-weight:600;
	font-size:16px; line-height:34px;
	cursor:pointer;
}
.hamCont.drop .hamContSt{width:100%;}
.hamCont.drop .hamContSt strong,
.hamCont.drop .hamContSt a{
	color:#147277;
	font-family:pretendard-700; font-weight:700;
}

/* 드롭 화살표 : 6×10 셰브론 */
.farIcon{
	z-index:5;
	position:absolute; right:20px; top:0;
	display:block;
	width:34px; height:34px;
	background-image:url(/custom/includes/img/ico_ham_arrow.png);
	background-repeat:no-repeat;
	background-position:center center;
	background-size:10px 6px;
	cursor:pointer;
	transition:transform .4s ease;
}
.hamCont.drop .farIcon{transform:rotate(180deg);}

/* 2뎁스 */
.hamMenulist{
	position:relative;
	width:100%; top:0; right:0;
	height:0;
	overflow:hidden;
	transition:height .4s ease;
}
.hamCont.drop .hamMenulist{height:auto;}   /* 실제 값은 스크립트가 계산 */
.hamMenulist ul{
	display:flex; flex-direction:column; align-items:stretch;
	gap:10px;
	margin:0; padding:10px 0;
	list-style:none;
}
.hamMenulist ul dd{
	margin:0; padding:0 20px;
	list-style:none; text-align:left;
}
.hamMenulist ul dd a{
	display:block;
	color:#888;
	font-family:pretendard-400; font-style:normal; font-weight:400;
	font-size:14px; line-height:24px;
	text-decoration:none !important;
}
.hamMenulist ul dd.on a,
.hamMenulist ul dd a:hover{
	color:#147277;
	font-family:pretendard-700; font-weight:700;
}


@media (max-width:1800px) {
	#header .headInner .hdLogo{
		left:20px;
	}
	.headright{
		right:20px;
	}
}
@media (max-width:1600px) {
	#header .headInner .hdLogo{
		left:20px;
	}
	.headright{
		gap: 20px;
		right:20px;
	}
	
	#navmenu ul li{
		padding:0 25px;
	}
	
	/* 헤더 우측 컴포넌트 */
	.headcallBtn a {
		font-size: 18px;
		padding: 16px 22px;
	}
}
@media (max-width:1400px) {
	#header .headInner .hdLogo{
		left:20px;
	}
	.headright{
		right:20px;
	}
	#navmenu ul li {
		padding: 0 20px;
	}
}
@media (max-width:1300px) {
	#header .headInner{
		height: 80px;
	}
	#navmenu{display:none;}
	
	.hamBtn{
		display:inline-block;
	}
}
@media (max-width:991px) {
	#header .headInner{
		height:70px;
	}
	
	.headright {
		gap: 20px;
	}
	.headcallBtn a {
		font-size: 16px;
		padding: 14px 20px;
	}
	
	.head_sea {
		width: 20px;
		height: 20px;
	}
	.head_seaInput {
		height: 54px;
		width: 240px;
	}
}
@media (max-width:767px) {
	#header:after{content:none;}
	#header .headInner{
		height:64px;
	}
	#header .headInner .hdLogo{
		left:20px;
	}
	#header .headInner .hdLogo a {
		width: 62px;
		height: 22px;
	}
	
	/* 헤더 우측 컴포넌트 */
	.headright{
		gap: 8px;
		right:13px;
	}
	.headcallBtn a {
		border-radius: 12px 3px 12px 3px;
		gap: 6px;
		line-height: 18px;
		font-size: 14px;
		padding: 10px 16px;
	}
	.headcallBtn a b {
		height: 10px;
		width: 10px;
	}
	
	.hamBtn{
		width:38px;
		height:38px;
	}
	.hamAreaInner {
		width: 100%;
	}
	
	.langBtn {
		gap: 12.5px;
		right: 20px;
	}
	.langBtn a {
		font-size: 12px;
		line-height: 16px;
	}
	
	.head_sea {
		width: 16px;
		height: 16px;
	}
	.head_seaInput {
		height: 40px;
		width: 160px;
	}
	.head_seaInput input {
		padding: 0px 16px 0px 16px;
		font-size: 15px;
		line-height: 20px;
	}
	.head_seaInput input::placeholder {font-size: 14px;line-height: 20px;}
}
/* ======================== :::::: // 헤더 ~  :::::: ========================  */


/* ======================== :::::: 푸터 ~  :::::: ========================  */
/* ============================== EHTI FOOTER ============================== */
.ehti_footer{
  --ehti-font-fallback:'Pretendard','Pretendard Variable',-apple-system,BlinkMacSystemFont,
                       'Malgun Gothic','맑은 고딕',sans-serif;

  box-sizing:border-box; width:100%; padding:100px 0; border-radius:30px;
  background:#fff;
  font-family:pretendard-400,var(--ehti-font-fallback); font-weight:400;
  color:#111; letter-spacing:0; word-break:keep-all;
}
.ehti_footer a{ color:inherit; text-decoration:none; transition:color .2s; }
.ehti_footer img{ display:block; width:100%; height:100%; }

.ehti_footer__inner{
  display:flex; flex-direction:column; gap:60px;
  padding:0 100px;
  /* max-width:1720px;  */
  /* margin:0 auto; */
}

/* ------------------------------ 상단 영역 ------------------------------ */
.ehti_footer__top{
  display:flex; align-items:flex-start; justify-content:space-between; gap:40px;
}
.ehti_footer__slogan{
  flex:0 0 auto;
  font-family:pretendard-600,var(--ehti-font-fallback); font-weight:600;
  font-size:60px; line-height:80px; letter-spacing:-0.6px; color:#111;
  white-space:nowrap;
}

/* 사이트맵 */
.ehti_footer__sitemap{
  display:flex; align-items:flex-start; justify-content:flex-end; gap:60px;
}
.ehti_footer__col{
  display:flex; flex-direction:column; align-items:flex-start; gap:16px;
  min-width:96px;
}
.ehti_footer__col-tit{
  display:block;
  font-family:pretendard-600,var(--ehti-font-fallback); font-weight:600;
  font-size:18px; line-height:26px; color:#111; white-space:nowrap;
}
.ehti_footer__col-list{
  display:flex; flex-direction:column; align-items:flex-start; gap:10px; width:100%;
}
.ehti_footer__col-list li{ width:100%; }
.ehti_footer__col-list a{
  display:inline-block;
  font-family:pretendard-500,var(--ehti-font-fallback); font-weight:500;
  font-size:16px; line-height:24px; color:#888; white-space:nowrap;
}
.ehti_footer__col-list a:hover,
.ehti_footer__col-list a:focus-visible{ color:#22969c; }

/* ------------------------------ 하단 영역 ------------------------------ */
.ehti_footer__bottom{
  display:flex; flex-direction:column; align-items:flex-start; gap:50px; width:100%;
}
.ehti_footer__line{
  display:block; width:100%; height:1px; background:rgba(0,0,0,.06);
}
.ehti_footer__util{
  display:flex; align-items:stretch; justify-content:space-between; gap:40px; width:100%;
}

/* 회사 정보 */
.ehti_footer__company{
  display:flex; flex-direction:column; align-items:flex-start; gap:60px;
  width:392px; flex:0 0 auto;
}
.ehti_footer__logos{ display:flex; align-items:center; gap:30px; }
.ehti_footer__logo{ display:block; width:170px; height:60px; }
.ehti_footer__logo-div{ flex:0 0 auto; width:2px; height:40px; border-radius:2px; background:#ddd; transform:rotate(30deg); }
.ehti_footer__kolas{ display:block; height:60px; }
.ehti_footer__kolas img{ display:block; width:auto; height:100%; object-fit:contain; }
.ehti_footer__info{
  display:flex; flex-direction:column; align-items:flex-start; gap:20px; width:100%;
}
.ehti_footer__addr{
  display:flex; flex-direction:column; align-items:flex-start; gap:10px; width:100%;
}
.ehti_footer__addr-txt{
  font-family:pretendard-500,var(--ehti-font-fallback); font-weight:500;
  font-size:16px; line-height:22px; color:#111;
}
.ehti_footer__tel{
  display:flex; align-items:flex-start; gap:30px; width:100%;
}
.ehti_footer__tel-item{
  display:flex; align-items:flex-start; gap:10px;
  font-size:16px; line-height:22px; color:#111; white-space:nowrap;
}
.ehti_footer__tel-item b{
  font-family:pretendard-700,var(--ehti-font-fallback); font-weight:700;
}
.ehti_footer__tel-item span{
  font-family:pretendard-400,var(--ehti-font-fallback); font-weight:400;
}
.ehti_footer__copy{
  font-family:pretendard-400,var(--ehti-font-fallback); font-weight:400;
  font-size:14px; line-height:22px; color:#999;
}
.ehti_footer__policy{ margin-bottom:8px; }
.ehti_footer__policy a{
  font-family:pretendard-600,var(--ehti-font-fallback); font-weight:600;
  font-size:14px; line-height:22px; color:#111; text-decoration:none;
}
.ehti_footer__policy a:hover{ text-decoration:underline; }

/* 고객상담 */
.ehti_footer__contact{
  display:flex; flex-direction:column; align-items:flex-end; justify-content:space-between;
  gap:38px;
}
.ehti_footer__sns{ display:block; width:43px; height:40px; }
.ehti_footer__cs{
  display:flex; flex-direction:column; align-items:flex-end; gap:10px;
  text-align:right; white-space:nowrap;
}
.ehti_footer__cs-tit{
  font-family:pretendard-500,var(--ehti-font-fallback); font-weight:500;
  font-size:26px; line-height:32px; color:#111;
}
.ehti_footer__cs-num{
  font-family:pretendard-800,var(--ehti-font-fallback); font-weight:800;
  font-size:52px; line-height:60px;
  color:var(--color-brand-primary,#22969c);
}
.ehti_footer__cs-time{
  display:flex; align-items:flex-start; justify-content:flex-end; gap:10px;
  font-size:18px; line-height:26px; color:#111;
}
.ehti_footer__cs-time b{
  font-family:pretendard-700,var(--ehti-font-fallback); font-weight:700;
}
.ehti_footer__cs-time span{
  font-family:pretendard-400,var(--ehti-font-fallback); font-weight:400;
}

/* =============================== 반응형 =============================== */
@media (max-width: 1800px) {
	.ehti_footer {padding:80px 0;}
	.ehti_footer__inner{
	  margin:0 auto;
	  max-width: 1800px;
		padding: 0 40px;
	}
	.ehti_footer__sitemap {
		gap: 4rem;
	}
}
@media (max-width:1600px){
  .ehti_footer{ padding:80px 0; }
  .ehti_footer__slogan{ font-size:50px; line-height:66px; }
  .ehti_footer__sitemap{ gap:40px; }
  .ehti_footer__cs-num{ font-size:44px; line-height:52px; }
  .ehti_footer__cs-tit{ font-size:22px; line-height:30px; }
}

@media (max-width:1400px){
  .ehti_footer{ padding:60px 0; }
  .ehti_footer__inner{ gap:40px;padding: 0 30px; }
  .ehti_footer__top{ flex-direction:column; align-items:flex-start; gap:40px; }
  .ehti_footer__slogan br{display:none;}
  .ehti_footer__slogan{ font-size:40px; line-height:50px; }
  .ehti_footer__sitemap{ flex-wrap:wrap; justify-content:flex-start; gap:40px 40px; width:100%; }
	.ehti_footer__company{gap: 40px;}
	.ehti_footer__contact{gap: 30px;}
}
@media (max-width:991px){
	.ehti_footer__top {gap: 30px;}
	.ehti_footer__sitemap {gap: 30px 20px;}
	.ehti_footer__company {gap: 30px;}
	.ehti_footer__logos {gap: 20px;}
	.ehti_footer__logo {width: 102px;height: 36px;}
	.ehti_footer__logo-div {height: 26px;}
	.ehti_footer__kolas {height: 36px;}
	.ehti_footer__contact {gap: 20px;}
	.ehti_footer__cs-tit {font-size: 20px;line-height: 20px;}
	.ehti_footer__cs-num {font-size: 30px;line-height: 40px;}
	.ehti_footer__cs-time {gap: 10px;font-size: 16px;line-height: 22px;}
}

/* ------- 768 이하 : 모바일 디자인 ------- */
@media (max-width:768px){
  /* overflow:hidden 으로 새 BFC 를 만들어 iOS Safari 의 display:contents + flex order
     이중-높이 계산 버그(footer 아래 여백)를 막는다. 크롬에선 원래 정상. */
  .ehti_footer{ overflow:hidden; padding:40px 0px 80px; border-radius:0; }

  /* 모바일 순서 : 로고 → 슬로건 → 주소/카피 → 블로그 → 고객상담 */
  .ehti_footer__inner{ padding: 0 20px; align-items:center; gap:0; }
  .ehti_footer__top,
  .ehti_footer__bottom,
  .ehti_footer__util,
  .ehti_footer__company,
  .ehti_footer__contact{ display:contents; }

  .ehti_footer__sitemap,
  .ehti_footer__line{ display:none; }

  .ehti_footer__logos{ order:1; display:flex; align-items:center; justify-content:center; gap:12px; }
  .ehti_footer__logo{ width:79px; height:28px; }
  .ehti_footer__logo-div{ height:17px; }
  .ehti_footer__kolas{ height:28px; }
  .ehti_footer__slogan{
    order:2; margin-top:16px;
    font-family:pretendard-600,var(--ehti-font-fallback); font-weight:600;
    font-size:20px; line-height:30px; letter-spacing:0; text-align:center;
  }
  .ehti_footer__slogan br{ display:none; }
  .ehti_footer__info{ order:3; margin-top:30px; align-items:center; gap:10px; }
  .ehti_footer__sns{ order:4; margin-top:40px; width:33px; height:31px; }
  .ehti_footer__cs{ order:5; margin-top:16px; align-items:center; text-align:center; }

  .ehti_footer__addr{ align-items:center; gap:6px; }
  .ehti_footer__addr-txt{ font-size:12px; line-height:18px; }
  .ehti_footer__tel {gap: 64px;display: flex;justify-content: center;}
  .ehti_footer__tel-item{ width: auto;min-width:0; justify-content:center; gap:6px;
                          font-size:12px; line-height:18px; }
  .ehti_footer__policy{ text-align:center; margin-bottom:6px; }
  .ehti_footer__policy a{ font-size:12px; line-height:18px; }
  .ehti_footer__copy{ font-size:10px; line-height:14px; text-align:center; }

  .ehti_footer__cs-tit{ font-size:16px; line-height:24px; }
  .ehti_footer__cs-num{ font-size:34px; line-height:40px; }
  .ehti_footer__cs-time{ justify-content:center; gap:6px; font-size:12px; line-height:18px; }
}

/* ------- 360 이하 : 초소형 대응 ------- */
@media (max-width:360px){
  .ehti_footer__slogan{ font-size:18px; line-height:26px; }
  .ehti_footer__addr-txt,
  .ehti_footer__tel-item{ font-size:11px; }
  .ehti_footer__cs-num{ font-size:30px; line-height:36px; }
}
/* ============================ // EHTI FOOTER ============================ */

/* ======================== :::::: // 푸터  :::::: ========================  */