@charset "utf-8";
@import url('https://fonts.googleapis.com/css?family=Noto+Sans+KR:100,300,400,500,700,900|Noto+Sans:400,400i,700,700i');
@import url(https://cdn.jsdelivr.net/gh/moonspam/NanumSquare@1.0/nanumsquare.css);
@import url(https://cdn.rawgit.com/theeluwin/NotoSansKR-Hestia/master/stylesheets/NotoSansKR-Hestia.css);
/* 초기화 */
html {overflow-y:scroll}
body {margin:0;padding:0;font-size:0.75em;font-family: "Pretendard Variable", Pretendard, -apple-system, BlinkMacSystemFont, system-ui, Roboto, "Helvetica Neue", "Segoe UI", "Apple SD Gothic Neo", "Noto Sans KR", "Malgun Gothic", "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", sans-serif;color:#666;line-height: normal;}
html, h1, h2, h3, h4, h5, h6, form, fieldset, img {margin:0;padding:0;border:0}
h1, h2, h3, h4, h5, h6 {font-size:1em;font-family: "Pretendard Variable", Pretendard, -apple-system, BlinkMacSystemFont, system-ui, Roboto, "Helvetica Neue", "Segoe UI", "Apple SD Gothic Neo", "Noto Sans KR", "Malgun Gothic", "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", sans-serif;}
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {display:block}

ul, dl,dt,dd {margin:0;padding:0;list-style:none}
legend {position:absolute;margin:0;padding:0;font-size:0;line-height:0;text-indent:-9999em;overflow:hidden}
label, input, button, select, img {vertical-align:middle;font-size:1em}
input, button {margin:0;padding:0;font-family:'Malgun Gothic', dotum, sans-serif;font-size:1em}
input[type="submit"]{cursor:pointer}
button {cursor:pointer}

ul:after {display:block;visibility:hidden;clear:both;content:""}

textarea, select {font-family:'Malgun Gothic', dotum, sans-serif;font-size:1em}
select {margin:0}
p {margin:0;padding:0;word-break:break-all}
hr {display:none}
pre {overflow-x:scroll;font-size:1.1em}
a {color:#000;text-decoration:none}

*, :after, :before {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

input[type=text],input[type=password], textarea {
-webkit-transition: all 0.30s ease-in-out;
-moz-transition: all 0.30s ease-in-out;
-ms-transition: all 0.30s ease-in-out;
-o-transition: all 0.30s ease-in-out;
outline: none;
}
 
input[type=text]:focus,input[type=password]:focus,  textarea:focus,select:focus {
-webkit-box-shadow:  0 0 5px #9ed4ff;
-moz-box-shadow:  0 0 5px #9ed4ff;
box-shadow: 0 0 5px #9ed4ff;
border: 1px solid #558ab7 !important;
}
.placeholdersjs { color: #aaa !important; }

.eg_font{font-family: 'Exo 2', sans-serif;}

/* 팝업레이어 */
#hd_pop {z-index:1000;position:relative;margin:0 auto;width:100%;height:0;max-width: 1200px;}
#hd_pop h2 {position:absolute;font-size:0;line-height:0;overflow:hidden}
.hd_pops {position:absolute;background:#fff;}
.hd_pops img{max-width:100%}
.hd_pops_con {}
.hd_pops_footer {padding: 0;background:#000;color:#fff;text-align:left;position:relative;}
.hd_pops_footer:after {display:block;visibility:hidden;clear:both;content:""}
.hd_pops_footer button {padding: 10px;border:0;color:#fff}
.hd_pops_footer .hd_pops_reject{background:#000;text-align:left}
.hd_pops_footer .hd_pops_close{background:#393939;position:absolute;top:0;right:0}

/* 상단 레이아웃 */
#hd {
    z-index: 6666666 !important;
    background: #C2C0A6;
    position: relative;
}

#hd_h1 {position:absolute;font-size:0;line-height:0;overflow:hidden;}
.hd_contaner {
    margin: 0 auto;
    width: 100%;
    max-width: 1200px;
}
.hd_contaner:after{content:""; display:block; clear:both;}
#hd_wrapper {
    position: relative;
    margin: 0 auto;
    zoom: 1;
    width: 100%;
    max-width: 1200px;
    margin: 0 auto;
}
#hd_wrapper:after {display:block;visibility:hidden;clear:both;content:""}

#logo {}
#logo > span { display: none; }
#logo a {
    display: block;
    text-align: center;
	padding:15px 0 20px;
	width:180px;
}
#logo a img{max-width:100%;}

.hd_sch_wr{position:absolute;top:25px;left:50%;width:430px;margin-left:-215px;}
#hd_sch h3 {position:absolute;font-size:0;line-height:0;overflow:hidden}
#hd_sch{;border:2px solid #556ada;background:#fff;border-radius:5px;overflow:hidden}
#hd_sch #sch_stx {padding-left:10px;height:40px;width:376px;border:0;;border-right:0;float:left;font-size:1.25em}
#hd_sch #sch_submit {height:40px;border:0;background:#fff;color:#333333;width:50px;float:left;cursor:pointer;font-size:18px}

#sbn_side{position:absolute;top:20px;right:0}

#tnb {
    width: 100%;
}
#tnb h3 {position:absolute;font-size:0;line-height:0;overflow:hidden}

#tnb ul{max-width:1200px;margin:0 auto;}
#tnb ul:after {display:block;visibility:hidden;clear:both;content:""}
#tnb li {
    margin-bottom: -1px;
    font-size: 14px;
    float: right;
}
#tnb a {
    display: inline-block;
    color: #888;
    line-height: 35px;
    margin: 0 7px;
}
#tnb a:focus, #tnb a:hover {color: #222;}
#tnb .tnb_admin a{}
#tnb .tnb_left{float:left}
#tnb .tnb_left a{;padding:0 14px}
#tnb .tnb_cart{border-right:1px solid #ddd;}
#tnb .tnb_community{border-right:1px solid #ddd}
#tnb .tnb_community i{font-size:15px}
#tnb .tnb_community{background:#e7e7e7;font-weight:bold;}
#tnb .tnb_community:focus, #tnb .tnb_community:hover {color:#333;border-bottom:0}
#tnb .tnb_community a{color:#333333;border-bottom:1px solid #e7e7e7}

#hd_qnb{float:right;margin-top:20px}
#hd_qnb:after {display:block;visibility:hidden;clear:both;content:""}
#hd_qnb li{float:left;font-size:1.083em;line-height:15px;position:relative;text-align:center;margin:0 10px}
#hd_qnb li span {display:block;margin-top:5px;font-size:0.92em}
#hd_qnb li a{display:block}
#hd_qnb li i{display:inline-block;width:40px;line-height:40px;border-radius:25px;background:#fff;text-align:center;margin:0;color:#fff}
#hd_qnb .visit .visit-num{display:inline-block;line-height:18px;padding:0 5px;border-radius:10px;background:#f04e00;color:#fff;font-size:10px;position:absolute;top:0;right:0}
#hd_qnb li .fa-question{background:#e83a5f;font-size:20px}
#hd_qnb li .fa-question:hover{background:#e41b45}
#hd_qnb li .fa-comments{background:#82c13f;font-size:16px}
#hd_qnb li .fa-comments:hover{background:#5aa708}
#hd_qnb li .fa-users{background:#f0ba00;font-size:15px}
#hd_qnb li .fa-users:hover{background:#f06f00}
#hd_qnb li .fa-history{background:#8522c4;font-size:15px}
#hd_qnb li .fa-history:hover{background:#6700a9}


.hd_wrap {
    display: flex;
    max-width: 1200px;
    margin: 0 auto;
    align-items: center;
	justify-content: space-between;
}

/* 메인메뉴 */
#gnb {position: relative;}
#gnb h2{position:absolute;font-size:0;line-height:0;overflow:hidden}
#gnb .gnb_wrap{}
#gnb #gnb_1dul {
    font-size: 19px;
    padding: 0;
    zoom: 1;
    font-weight: 400;
    text-align: center;
}
#gnb ul:after {display:block;visibility:hidden;clear:both;content:""}
#gnb .gnb_1dli {
    position: relative;
    text-align: center;
    letter-spacing: -1px;
    display: inline-block;
}

#gnb .gnb_1dli > a {
    color: #333;
    line-height: 80px;
    display: block;
    padding:0 0 0 25px;
    position: relative;
}
#gnb .gnb_1dli:hover > a{text-decoration:underline;}
#gnb .gnb_1dli > a:after{display:inline-block;content:'/';margin-left:30px;color:#ddd;font-weight: 200;
    transition: all .1s linear;
    -o-transition: all .1s linear;
    -moz-transition: all .1s linear;
    -webkit-transition: all .1s linear;
}

#gnb .gnb_1dli:last-child a:after{display:none;}


.gnb_2dul {
    display: none;
    position: absolute;
    top: 80px;
    left: 50%;
    background:#fff;
    padding: 0;
    text-align: center;
    overflow: hidden;
    width: 100%;
	min-width: 130px;
	transform: translateX(-50%);
}
.gnb_2dli:last-child .gnb_2dul{}
.gnb_2da {
    display: block;
    padding:10px;
    text-align: center;
    text-decoration: none;
    font-weight: 400;
	font-size:16px;
    color: #666;    word-break: keep-all;
	border-bottom:1px solid #eee;
	line-height:22px;
	
}
.gnb_2dli:last-child a{border:0}
a.gnb_2da:hover{background:#0254B3;color: #fff;
-moz-transition: all 0.3s ease-out;
-o-transition: all 0.3s ease-out;
transition: all 0.3s ease-out;}

.gnb_1dli_air .gnb_2da {}
.gnb_1dli_on .gnb_2da {}
.gnb_2da:focus, .gnb_2da:hover {}
.gnb_1dli_over .gnb_2dul {display:block;
    overflow: hidden;}
.gnb_1dli_over2 .gnb_2dul {display:block;right:0;}
.gnb_wrap .gnb_empty {padding:10px 0;width:100%;text-align:center;line-height:2em;color:#fff}
.gnb_wrap .gnb_empty a{color:#fff;text-decoration:underline}
.gnb_wrap .gnb_al_ul .gnb_empty, .gnb_wrap .gnb_al_ul .gnb_empty a{color:#555}

#gnb .gnb_menu_btn{background:#4158d1;color:#fff;width:50px;height:50px;border:0;vertical-align:top;font-size:18px}
#gnb .gnb_close_btn{background:#4158d1;color:#fff;width:50px;height:50px;border:0;vertical-align:top;font-size:18px;position:absolute;top:-50px;left:0}
#gnb .gnb_mnal{padding:0}

#gnb_all {
    display: none;
    position: absolute;
    width: 100%;
    z-index: 99;
    left: 0;
    top: 70px;
    background:#f3f3f3;
	box-shadow:0 3px 5px rgba(0,0,0,0.1);
}
#gnb_all .gnb_al_ul:after {display:block;visibility:hidden;clear:both;content:""}
#gnb_all .gnb_al_ul {
    padding: 30px 20px;
    max-width: 1200px;
    margin: 0 auto;
    padding-left: 285px;
    font-size: 15px;
}
#gnb_all .gnb_al_li {
    float: left;
	width: 120px;
    
}
#gnb_all .gnb_al_li:nth-child(2){min-width: 113px;}

#gnb_all .gnb_al_li .gnb_al_a{font-size:1.083em;padding:10px;display:block;position:relative;margin-bottom:10px;background: #eff1f9;border-bottom: 1px solid #dee2f1;font-weight: bold;color:#243071}
#gnb_all .gnb_al_li li {text-align:center;}
#gnb_all .gnb_al_li li a{color:#222;
   transition:all .1s linear;
  -o-transition:all .1s linear;
  -moz-transition:all .1s linear;
  -webkit-transition:all .1s linear;
  line-height:22px;
  padding:7px 0;
  display:block;
}
#gnb_all .gnb_al_li li:hover a{color:#013d8f;
   transition:all .1s linear;
  -o-transition:all .1s linear;
  -moz-transition:all .1s linear;
  -webkit-transition:all .1s linear;
}



/* 중간 레이아웃 */
#wrapper {background: #C2C0A6;}
#wrapper02 {}
#container_wr:after {display:block;visibility:hidden;clear:both;content:""}
#container_wr {z-index:5;margin:0 auto;width:100%;height:100%;;zoom:1;}
#wrapper02 #container_wr{width:100%;max-width:1200px;}
#aside {
    float: right;
    width: 270px;
    padding: 0;
    background: #fff;
    height: 100%;
    margin: 20px 0 20px 20px;
    display: none;
    box-shadow: 5px 0 10px rgba(0,0,0,0.2);
	position:relative;
    z-index: 30;
}
.aside_bk {
    width: 100%;
    height: 100%;
    background: rgba(0,0,0,0.6);
    position: fixed;
    left: 0;
    top: 0;
    bottom: 0;
    content: '';
    display: none;
    z-index: 111111111;
}

#container {z-index:4;position:relative;float:left;min-height:500px;height:auto !important;height:500px;font-size:1em;width:100%;zoom:1;}

#container *, #container02 *{word-break: keep-all;}
#container:after {display:block;visibility:hidden;clear:both;content:""}
#container02 {
    z-index: 4;
    position: relative;
    float: right;
    min-height: 500px;
    height: auto !important;
    height: 500px;
    font-size: 1em;
    width: calc(100% - 300px);
    zoom: 1;
    padding: 30px;
    border: 1px solid #ddd;
    margin: 40px 0;
    border-radius: 15px;
}
#container02:after {display:block;visibility:hidden;clear:both;content:""}
#container_1200{max-width:1200px;width:100%;margin:0 auto;}

#container_title {font-size:1.333em;max-width:1200px;margin:0 auto;font-weight:bold;}
#container_title span{margin:0 auto 10px;display:block;line-height:30px;}


.cont01 {
    width: 100%;
    max-width: 1200px;
    margin: 10px auto 70px;
}
#hd .call_wrap{display:block;}
#wrapper .call_wrap{display:none;}
.call_wrap:after{content:""; display:block; clear:both;}
.call_wrap .call_right {
    float: right;
    letter-spacing: -0.7px;
    width: 100%;
    max-width: 510px;
}
.call_wrap .call_right:after{content:""; display:block; clear:both;}
.call_wrap .call_right img{marin:0 auto;}
.call_wrap .call_right .text {
    float: left;
    width: calc(100% - 90px);
}
.call_wrap .call_right .text p {
    color: #fff;
    font-size: 17px;
    word-break: keep-all;
    background: #0254B3;
    display: inline-block;
    padding: 0 5px;
    margin-bottom: 7px;
}
.call_wrap .call_right .text strong {
    line-height: 24px;
    font-size: 23px;
    word-break: keep-all;
    display: block;
}
.call_wrap .call_right .text strong span {
    font-weight: 400;
    margin-right: 20px;
    display: block;
    float: left;
    color: #333;
    width: 80px;
}
.call_wrap .call_right .text strong b {
    float: left;
    width: calc(100% - 110px);
    display: block;
    color: #0254B3;
    letter-spacing: -1.4px;
    font-weight: 600;
}

.cont01_wrap:after{content:""; display:block; clear:both;}
.cont01_wrap .left {
    width:590px;
    float: left;
	margin-right: 10px;
}
.cont01_wrap .left img{width:100%;}
.cont01_wrap .right {}
.cont01_wrap .right .block {
    width: 295px;
    margin-right: 10px;
    margin-bottom: 10px;
    float: left;
    overflow: hidden;
    position: relative;
    height: 200px;
    padding: 30px;
    border: 3px solid #b3a580;
}

.cont01_wrap .right .block.notice_block{
	width: 600px;
	margin-right: 0;
}

.cont01_wrap .right .block:nth-child(even){margin-right:0;}
.cont01_wrap .right .block a{display:block;}
.cont01_wrap .right .block strong{color:#fff;font-size:23px;display:block;margin-bottom:5px;}
.cont01_wrap .right .block p{color:rgba(255,255,255,0.5);font-size:15px;}
.cont01_wrap .right .block img{position:absolute;right:20px;bottom:20px;}
.cont01_wrap .right .block .main_btn{position:absolute;left:20px;bottom:20px;}


/*.cont01_wrap .right .block:nth-child(3) strong{color:#353533;}
.cont01_wrap .right .block:nth-child(3) p{color:rgba(53,53,51,0.5);}
.cont01_wrap .right .block:nth-child(3) .main_btn{color:#222;    border: 1px solid rgba(34,34,34,0.3);}*/
/* GENERAL BUTTON STYLING */
.main_btn,
.main_btn::after {
  -webkit-transition: all 0.3s;
	-moz-transition: all 0.3s;
  -o-transition: all 0.3s;
	transition: all 0.3s;
}

.main_btn {
    background: #99562C;
    border: 1px solid #99562C;
    border-radius: 30px;
    color: #fff;
    display: block;
    font-size: 15px;
    font-weight: 200;
    padding: 9px 35px;
    position: relative;
    text-transform: uppercase;
	z-index:6666;
}

.main_btn::before,
.main_btn::after {
  background: #612f10;
  content: '';
  position: absolute;
  z-index: -1;
}

.main_btn:hover {
  color: #fff;
  font-weight: 500;
}
/* BUTTON 5 */
.btn-5 {
  overflow: hidden;
}

.btn-5::after {
  height: 100%;
  left: -35%;
  bottom: 0;
  transform: skew(50deg);
  transition-duration: 0.6s;
  transform-origin:left bottom ;
  width: 0;
}

.btn-5:hover:after {
  height: 100%;
  width: 170%;
}

/*서브*/
.sub_top {
    height: 220px;
    width: 100%;
    background: url(/img/sub_top.jpg)no-repeat center;
    position: relative;
    background-size: cover;
}

.sub_top_text {
    width: 100%;
    max-width: 1200px;
    margin: 0 auto;
    padding-top: 70px;
}
.sub_top_text p {
    font-size: 20px;
    font-weight: 300;
	color:#a7a3a1;
}
.sub_top_text strong{display:block;color:#88B6EB;font-size:33px;font-weight: 300;}
.sub_top_text strong b{;font-weight: 600;}


.navi_wrap { margin-bottom: 50px;}
.navi_wrap:after{content:'';display:block;width:100%;height:10px;background:url(/img/pt.png);}
.navi_wrap h2 {
    display: inline-block;
    font-size: 26px;
    font-weight: 600;
    padding-bottom: 10px;
    color: #222;
}
.navi_wrap .navi {
    display: inline-block;
    float: right;
    line-height: 50px;
    font-size: 14px;
    font-weight: 300;
}


.left_menu {
    width: 240px;
    float: left;
    position: relative;
    margin-top: 30px;
}

#snb{width:100%;}
#snb {width:100%;}
.snb2dul{background:#fff;}
#snb > li.snb{width:100%;display:none;}
#snb > li.snb.active{display:block;}
#snb > li > h2{width:100%;}
#snb > li > h2 a {
    display: block;
    padding: 20px 0;
    color: #222;
}
#snb > li > h2 a b {
    display: block;
    font-size: 31px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    font-weight: 500;
}
#snb > li > h2 a sub{display:block;padding-top:10px;font-family:vardana;font-size:12px;letter-spacing:0.05em;font-weight:normal;filter:Alpha(opacity=50); opacity:0.5; -moz-opacity:0.5;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
#snb > li .snb2dDown{display:none;}


#snb > li > ul > li{}
#snb > li > ul > li a{display:block;padding:15px;color:#666;-webkit-transition-duration: 0.2s;-webkit-transition-timing-function: ease;transition-duration: 0.2s;transition-timing-function: ease;}
#snb > li > ul > li a b {
    font-size: 15px;
    font-weight: 500;
}
#snb > li > ul > li a:hover{background:#efefef;padding-left:20px;color:#000;-webkit-transition-duration: 0.2s;-webkit-transition-timing-function: ease;transition-duration: 0.2s;transition-timing-function: ease;}
#snb > li > ul > li.snb2d.active a {
    color: #fff;
    background: #0254B3;
}
#snb > li > ul > li a{overflow:hidden;}
#snb > li > ul > li a i{float:right;}

.left_call {
    border: 1px solid #ddd;
    padding: 20px;
}
.left_call:after{content:""; display:block; clear:both;}
.left_call h5{font-size:18px;margin-bottom:10px;}
.left_call .inner:after{content:""; display:block; clear:both;}
.left_call img{width:55px;float:left;}
.left_call span {
    width: 55px;
    float: left;
    font-size: 19px;
    color: #0254B3;
    padding-left: 8px;
    line-height: 35px;
}
.left_call strong {
    width: calc(100% - 65px);
    margin-left: 10px;
    float: left;
    padding-top: 6px;
    font-size: 20px;
    line-height: 22px;
	letter-spacing: -2px;
}
.left_call p {
    margin-top: 5px;
    word-break: keep-all;
    font-size: 16px;
    line-height: 130%;
}

.sub_page {
    font-size: 16px;
    color: #222;
		font-weight:300;
    letter-spacing: -0.5px;
}
.sub_img img{margin:0 auto;display:block;max-width:100%;}

#bo_gall #gall_ul {
    min-height: 260px;
}


.sub0101 .sub_tit {
	text-align: center;
	margin-bottom: 30px;
	margin-top: 60px;
}

.sub0101 .sub_tit:first-of-type{ margin-top: 0;}

.sub0101 .sub_tit h4{
	display: inline-block;
	position: relative;
	font-size: 28px;
}
.sub0101 .sub_tit h4::after {
	content: '';
	display: block;
	height: 17px;
	background: #e8eff3;
	position: absolute;
	left: 0;
	bottom: 0;
	width: 100%;
	z-index: -1;
}

.sub0101_text{ text-align: center;}
.sub_tit2 {
    white-space: pre-line;
    font-size: 20px;
	font-weight: 500;
    line-height: 150%;
	color: #0254B3;
	margin-bottom: 30px;
	text-align: center;
}
.sub0101_text p{
	white-space: pre-line;
}
.sub0101_text .sign {
    margin-top: 30px;
    font-size: 17px;
    font-weight: 500;
}

.sub0101_img{ margin-bottom: 30px;}


.sub0201 .sub_tit2{ color: #121212; font-weight: 400;}
.sub0201 .sub_tit2 b{ color: #0254B3;}



.map_tbl{margin-top:30px;}

.map_tbl th {
    padding: 0 10px;
    font-weight: 400;
    font-size: 15px;
    word-break: keep-all;
    color: #000;
	 text-align:left;
}
.map_tbl td {
    padding: 0 10px;
    white-space: pre-line;
    word-break: keep-all;
}
.fomemail_tbl th {
    text-align: left;
    font-weight: 400;
    color: #000;
}
/* 하단 레이아웃 */
#ft {background:#40403e;padding:20px 0;margin:0 auto;}
#ft h1 {position:absolute;font-size:0;line-height:0;overflow:hidden}
#ft_wr {max-width:1200px;margin:0 auto;position:relative;}
#ft_link {
    padding: 10px 0;
	text-align:center;
}
#ft_link a {
    display: inline-block;
    padding: 0 15px;
    line-height: 1.083em;
    color: #333;
    border-right: 1px solid #ddd;
}
#ft_link a:nth-child(1){padding:0 15px 0 0;}
#ft_link a:last-child{border-right:0;}
.ft_wrap:after{content:""; display:block; clear:both;}
#ft_catch {
    float: left;
    margin-top: 20px;
}
#ft_catch img{width:180px;}
.ft_link {
    margin-bottom: 10px;
    font-weight: 600;
    color: #555;
    font-size: 14px;
}
.ft_link a {
    display: inline-block;
    padding: 0 0 0 30px;
    color: #999;
    font-weight: 400;
}
.ft_link a:hover{color:#fff;}
.ft_link a:nth-child(1){padding-left:0;}
.ft_text {
    font-size: 14px;
    color: #777;
    line-height: 20px;
    float: right;
    letter-spacing: -0.5px;
    text-align: right;
    font-weight: 300;
}
.ft_text p.copy{margin-top:5px;}


#ft_copy{color:#555;font-size:0.92em}
#top_btn {position:fixed;bottom:20px;right:20px;width:50px;height:50px;line-height:46px;border:2px solid #333;color:#333;text-align:center;font-size:15px;z-index:90;background:rgba(255,255,255,0.5)}
#top_btn:hover{border-color:#3059c7;background:#3059c7;color:#fff}
.ft_wrap{color:#333;}

.ft_inz_img{position:absolute;top:10px;right:0;}

/* 게시물 선택복사 선택이동 */
#copymove {}
#copymove  .win_desc {text-align:center;display:block}
#copymove  .tbl_wrap{margin:20px }
#copymove  .win_btn{padding:0 20px 20px}
.copymove_current {float:right;background:#ff3061;padding:5px;color:#fff;border-radius:3px}
.copymove_currentbg {background:#f4f4f4}

/* 화면낭독기 사용자용 */
#hd_login_msg {position:absolute;top:0;left:0;font-size:0;line-height:0;overflow:hidden}
.msg_sound_only, .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}
/* 본문 바로가기 */
#skip_to_container a {z-index:100000;position:absolute;top:0;left:0;width:1px;height:1px;font-size:0;line-height:0;overflow:hidden}
#skip_to_container a:focus, #skip_to_container a:active {width:100%;height:75px;background:#21272e;color:#fff;font-size:2em;font-weight:bold;text-align:center;text-decoration:none;line-height:3.3em}

/* ie6 이미지 너비 지정 */
.img_fix {width:100%;height:auto}

/* 캡챠 자동등록(입력)방지 기본 -pc */
#captcha {display:inline-block;position:relative}
#captcha legend {position:absolute;margin:0;padding:0;font-size:0;line-height:0;text-indent:-9999em;overflow:hidden;}
#captcha #captcha_img {;height:40px;border:1px solid #898989;;vertical-align:top;padding:0;margin:0}
#captcha #captcha_mp3 {;margin:0;padding:0;width:40px;height:40px;border:0;background:transparent;vertical-align:middle;overflow:hidden;cursor:pointer;background:url('../../../img/captcha2.png') no-repeat;text-indent:-999px;;border-radius:3px}
#captcha #captcha_reload {margin:0;padding:0;width:40px;height:40px;border:0;background:transparent;vertical-align:middle;overflow:hidden;cursor:pointer;background:url('../../../img/captcha2.png') no-repeat  0 -40px;text-indent:-999px;border-radius:3px}
#captcha #captcha_key {margin:0 0 0 3px;padding:0 5px;width:90px;height:40px;border:1px solid #ccc;background:#fff;font-size:1.333em;font-weight:bold;text-align:center;border-radius:3px;vertical-align:top}
#captcha #captcha_info {display:block;margin:5px 0 0;font-size:0.95em;letter-spacing:-0.1em}

/* 캡챠 자동등록(입력)방지 기본 - mobile */
#captcha.m_captcha audio {display:block;margin:0 0 5px;width:187px}
#captcha.m_captcha #captcha_img {width:160px;height:60px;border:1px solid #e9e9e9;margin-bottom:3px;margin-top:5px;display:block;}
#captcha.m_captcha #captcha_reload {position:static;margin:0;padding:0;width:40px;height:40px;border:0;background:transparent;vertical-align:middle;overflow:hidden;cursor:pointer;background:url('../../../img/captcha2.png') no-repeat  0 -40px;text-indent:-999px}
#captcha.m_captcha #captcha_reload span{display:none;}
#captcha.m_captcha #captcha_key {margin:0;padding:0 5px;width:115px;height:29px;border:1px solid #b8c9c2;background:#f7f7f7;font-size:1.333em;font-weight:bold;text-align:center;line-height:29px;margin-left:3px}
#captcha.m_captcha #captcha_info {display:block;margin:5px 0 0;font-size:0.95em;letter-spacing:-0.1em}
#captcha.m_captcha #captcha_mp3 {width:31px;height:31px;background:url('../../../img/captcha2.png') no-repeat 0 0 ;  vertical-align:top;overflow:hidden;cursor:pointer;text-indent:-9999px;border:none}

/* ckeditor 단축키 */
.cke_sc {margin:0 0 5px;text-align:right}
.btn_cke_sc{display:inline-block;padding:0 10px;height:23px;border:1px solid #ccc;background:#fafafa;color:#000;text-decoration:none;line-height:1.9em;vertical-align:middle;cursor:pointer}
.cke_sc_def {margin:0 0 5px;padding:10px;border:1px solid #ccc;background:#f7f7f7;text-align:center}
.cke_sc_def dl{margin:0 0 5px;text-align:left;zoom:1}
.cke_sc_def dl:after {display:block;visibility:hidden;clear:both;content:""}
.cke_sc_def dt, .cke_sc_def dd {float:left;margin:0;padding:5px 0;border-bottom:1px solid #e9e9e9}
.cke_sc_def dt {width:20%;font-weight:bold}
.cke_sc_def dd {width:30%}

/* ckeditor 태그 기본값 */
#bo_v_con ul{display: block;list-style-type: disc;margin-top: 1em;margin-bottom: 1em;margin-left: 0;margin-right: 0;padding-left: 40px;}
#bo_v_con ol{display: block;list-style-type: decimal;margin-top: 1em;margin-bottom: 1em;margin-left: 0;margin-right: 0;padding-left: 40px;}
#bo_v_con li{display: list-item;}

/* 버튼 */
a.btn,.btn{line-height:35px;height:35px;padding:0 10px;text-align:center;font-weight:bold;border:0;
-webkit-transition: background-color 0.3s ease-out;
-moz-transition: background-color 0.3s ease-out;
-o-transition: background-color 0.3s ease-out;
transition: background-color 0.3s ease-out;}

a.btn01 {display:inline-block;padding:7px;border:1px solid #ccc;background:#fafafa;color:#000;text-decoration:none;vertical-align:middle}
a.btn01:focus, a.btn01:hover {text-decoration:none}
button.btn01 {display:inline-block;margin:0;padding:7px;border:1px solid #ccc;background:#fafafa;color:#000;text-decoration:none}
a.btn02 {display:inline-block;padding:7px;border:1px solid #3b3c3f;background:#4b545e;color:#fff;text-decoration:none;vertical-align:middle;}
a.btn02:focus, .btn02:hover {text-decoration:none}
button.btn02 {display:inline-block;margin:0;padding:7px;border:1px solid #3b3c3f;background:#4b545e;color:#fff;text-decoration:none}

.btn_confirm {text-align:right} /* 서식단계 진행 */

.btn_submit {border:0;background:#000;color:#fff;;cursor:pointer;border:0}
.btn_submit:hover {background:#333}

a.btn_cancel {display:inline-block;background:#969696;color:#fff;text-decoration:none;vertical-align:middle;}
button.btn_cancel {display:inline-block;background:#969696;color:#fff;text-decoration:none;vertical-align:middle}
.btn_cancel:hover {background:#aaa;
}
a.btn_frmline, button.btn_frmline {display:inline-block;padding:0 5px;height:40px;border:0;background:#3c3c3c;border-radius:5px;color:#fff;text-decoration:none;vertical-align:top} /* 우편번호검색버튼 등 */
a.btn_frmline {}
button.btn_frmline {font-size:1em}

/* 게시판용 버튼 */
a.btn_b01, .btn_b01 {
    display: inline-block;
    background: #fff;
    color: #000;
    text-decoration: none;
    vertical-align: middle;
    border-radius: 3px;
    border: 1px solid #aaa;
}
.btn_b01:hover, .btn_b01:hover {border: 1px solid #000;}
a.btn_b02,.btn_b02 {display:inline-block;background:#222;padding:0 10px;color:#fff;text-decoration:none;border:0;vertical-align:middle;border-radius:3px;}
a.btn_b02:hover, .btn_b02:hover {background:#333}
a.btn_b03, .btn_b03 {display:inline-block;background:#fff;border:1px solid #b9bdd3;color:#646982;text-decoration:none;vertical-align:middle}
a.btn_b03:hover, .btn_b03:hover {background:#ebedf6}
a.btn_b04, .btn_b04 {display:inline-block;background:#fff;border:1px solid #ccc;color:#707070;text-decoration:none;vertical-align:middle}
a.btn_b04:hover, .btn_b04:hover {color:#333;background:#f9f9f9}
a.btn_admin, .btn_admin {
    display: inline-block;
    background: #ffffff;
    text-decoration: none;
    vertical-align: middle;
    border: 1px solid #ccc;
}
.btn_admin:hover, a.btn_admin:hover {background:#eee}


/*컬러*/
.color_1 {background:#169dd6}
.color_2 {background:#14d53d}
.color_3 {background:#3814ff}
.color_4 {background:#7520c5}

/* 기본테이블 */
.tbl_wrap table {width:100%;border-collapse:collapse;border-spacing: 0 5px;border:1px solid #ccc;border-left:0;border-right:0;} 
.tbl_wrap caption {padding:10px 0;font-weight:bold;text-align:left}
.tbl_head01 {margin:0 0 10px}
.tbl_head01 caption {padding:0;font-size:0;line-height:0;overflow:hidden}
.tbl_head01 thead th {padding:10px 0;font-weight:normal;text-align:center;border-bottom:1px solid #ddd;background:#fafafa;height:40px}
.tbl_head01 thead th input {vertical-align:top} /* middle 로 하면 게시판 읽기에서 목록 사용시 체크박스 라인 깨짐 */
.tbl_head01 tfoot th, .tbl_head01 tfoot td {padding:10px 0;border-top:1px solid #c1d1d5;border-bottom:1px solid #c1d1d5;background:#d7e0e2;text-align:center}
.tbl_head01 tbody th {padding:8px 0;border-bottom:1px solid #e8e8e8}
.tbl_head01 td {color:#666;;padding:10px 5px;border-top:1px solid #ecf0f1;line-height: 1.7em;height:60px;word-break:break-all}
.tbl_head01 tbody tr:hover td{background:#f2f0ee;}
.tbl_head01 a:hover {text-decoration:underline}
#bo_list tbody tr:hover {
    border-left: 0 !important;
}
.tbl_head02 {margin:0 0 10px}
.tbl_head02 caption {padding:0;font-size:0;line-height:0;overflow:hidden}
.tbl_head02 thead th {padding:5px 0;border-top:1px solid #d1dee2;border-bottom:1px solid #d1dee2;background:#e5ecef;color:#383838;font-size:0.95em;text-align:center;letter-spacing:-0.1em}
.tbl_head02 thead a {color:#383838}
.tbl_head02 thead th input {vertical-align:top} /* middle 로 하면 게시판 읽기에서 목록 사용시 체크박스 라인 깨짐 */
.tbl_head02 tfoot th, .tbl_head02 tfoot td {padding:10px 0;border-top:1px solid #c1d1d5;border-bottom:1px solid #c1d1d5;background:#d7e0e2;text-align:center}
.tbl_head02 tbody th {padding:5px 0;border-top:1px solid #e9e9e9;border-bottom:1px solid #e9e9e9;background:#fff}
.tbl_head02 td {padding:5px 3px;border-top:1px solid #e9e9e9;border-bottom:1px solid #e9e9e9;background:#fff;line-height: 1.7em;word-break:break-all}
.tbl_head02 a {}

/* 폼 테이블 */
.tbl_frm01 {margin:0 0 20px}
.tbl_frm01 table {width:100%;border-collapse:collapse;border-spacing:0}
.tbl_frm01 th {width:70px;padding:7px 13px;border:1px solid #e9e9e9;border-left:0;background:#f5f8f9;text-align:left}
.tbl_frm01 td {padding:7px 10px;border-top:1px solid #e9e9e9;border-bottom:1px solid #e9e9e9;background:transparent}
.wr_content textarea,.tbl_frm01 textarea,.form_01 textarea, .frm_input {border:1px solid #ccc;background:#fff;color:#000;vertical-align:middle;border-radius:3px;padding:5px;
-webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075);
-moz-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075);
box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075);
}
.tbl_frm01 textarea {padding:2px 2px 3px}
.frm_input {height:40px;}

.full_input{width:100%}
.half_input{width:49.5%}
.three_input{width:33.333%}
.tbl_frm01 textarea {width:100%;height:100px}
.tbl_frm01 a {text-decoration:none}
.tbl_frm01 .frm_file {display:block;margin-bottom:5px}
.tbl_frm01 .frm_info {display:block;padding:0 0 5px;line-height: 1.7em}

#bo_v {
    padding: 0 !important;
}
#bo_v_title .bo_v_tit {
    font-size: 20px !important;
    padding-top: 15px;
    color: #000;
    font-weight: 500;
}

#bo_v_info {
    padding: 10px !important;
    margin: 15px 0 20px !important;
    background: #f2f0ee;
    border: 0 !important;
}


/*기본 리스트*/
.list_01 li{border:1px solid #dbdbdb;background:#fff;border-radius:3px;margin:3px 0;padding:10px 15px;list-style:none;position:relative;}
.list_01 li:after {display:block;visibility:hidden;clear:both;content:""}
.list_01 li:hover{background:#f9f9f9}
.list_01 li.empty_li{text-align:center;padding:20px 0;color:#666}
/*폼 리스트*/
.form_01 h2{margin:0 0 10px;font-size:1.167em}
.form_01 li{margin:10px 0}
.form_01 li:after {display:block;visibility:hidden;clear:both;content:""}
.form_01 li .right_input{float:right}
.form_01 textarea{height:100px;width:100%}
.form_01 .frm_label{display:inline-block;width:130px}

/* 자료 없는 목록 */
.empty_table {padding:50px 0 !important;text-align:center}
.empty_list {padding:20px 0 !important;color:#666;text-align:center}

/* 필수입력 */
.required, textarea.required {background-image:url('../img/require.png')  !important;background-repeat:no-repeat   !important;background-position:right top  !important;}

/* 테이블 항목별 정의 */
.td_board {width:80px;text-align:center}
.td_category {width:80px;text-align:center}
.td_chk {width:30px;text-align:center}
.td_date {width:60px;text-align:center}
.td_datetime {width:110px;text-align:center}
.td_group {width:80px;text-align:center}
.td_mb_id {width:100px;text-align:center}
.td_mng {width:80px;text-align:center}
.td_name {width:100px;text-align:left}
.td_nick {width:100px;text-align:center}
.td_num {width:50px;text-align:center}
.td_numbig {width:80px;text-align:center}
.td_stat {width:60px;text-align:center}

.txt_active {color:#5d910b}
.txt_done {color:#e8180c}
.txt_expired {color:#ccc}
.txt_rdy {color:#8abc2a}

/* 새창 기본 스타일 */
.new_win {position:relative;}
.new_win .tbl_wrap {margin:0 20px}
.new_win #win_title {font-size:1.25em;height:50px;line-height:30px;padding:10px 20px;background:#333;color:#fff;}
.new_win #win_title .sv {font-size:0.75em;line-height:1.2em}
.new_win .win_ul {border-right:1px solid #dfe6e7;}
.new_win .win_ul:after {display:block;visibility:hidden;clear:both;content:""}
.new_win .win_ul li{float:left;background:#fff;width:33.333%;text-align:center;border:1px solid #ccc;margin-left:-1px}
.new_win .win_ul li a{display:block;padding:10px 0}
.new_win .win_ul .selected{background:#fff;border-color:#000;position:relative;z-index:5}
.new_win .win_ul .selected a{color:#000;font-weight:bold}
.new_win .win_desc {margin:5px 0;font-size:0.92em;color:#3598db;}
.new_win .frm_info{font-size:0.92em;color:#3598db}
.new_win .win_total{text-align:right;margin:10px 0}
.new_win .win_total span{display:inline-block;line-height:30px;font-size:0.92em;color:#4e546f;background:#d4d4d4;padding:0 10px;border-radius:5px;}
.new_win .new_win_con{margin:20px;}
.new_win .new_win_con:after {display:block;visibility:hidden;clear:both;content:""}
.new_win .btn_confirm:after {display:block;visibility:hidden;clear:both;content:""}
.new_win .win_btn{text-align:right}
.new_win .btn_close {position:absolute;top:0;right:0;height:50px;width:50px;background:url(../img/close_btn.gif) no-repeat 50% 50%;border:0;text-indent:-999px;overflow:hidden;cursor:pointer}
.new_win .btn_submit {padding:0 20px;height:40px;font-weight:bold;font-size:1.083em;float:right}

/* 검색결과 색상 */
.sch_word {color:#00c4ac}

/* 자바스크립트 alert 대안 */
#validation_check {margin:100px auto;width:500px}
#validation_check h1 {margin-bottom:20px;font-size:1.3em}
#validation_check p {margin-bottom:20px;padding:30px 20px;border:1px solid #e9e9e9;background:#fff}

/* 사이드뷰 */
.sv_wrap {position:relative;font-weight:normal}
.sv_wrap .sv {z-index:1000;display:none;margin:5px 0 0;font-size:0.92em;background:#333;
-webkit-box-shadow: 2px 2px 3px 0px rgba(0,0,0,0.2);
-moz-box-shadow: 2px 2px 3px 0px rgba(0,0,0,0.2);
box-shadow: 2px 2px 3px 0px rgba(0,0,0,0.2);}
.sv_wrap .sv:before{content: "";position: absolute;top: -6px;left: 15px;width: 0;height: 0;border-style: solid;border-width: 0 6px 6px 6px;border-color: transparent transparent #333 transparent;}
.sv_wrap .sv a {display:inline-block;margin:0;padding:0  10px;line-height:30px;width:100px;font-weight:normal;color:#bbb }
.sv_wrap .sv a:hover{background:#000;color:#fff}
.sv_member{color:#333}
.sv_on {display:block !important;position:absolute;top:23px;left:0px;width:auto;height:auto}
.sv_nojs .sv {display:block}

/* 페이징 */
.pg_wrap {clear:both;margin:30px 0 ;text-align:center}
.pg_wrap:after {display:block;visibility:hidden;clear:both;content:""} 
.pg {}
.pg_page, .pg_current {display:inline-block;vertical-align:middle;background:#f3f3f3;border:1px solid #bbbcc3}
.pg a:focus, .pg a:hover {text-decoration:none}
.pg_page {color:#555;font-size:1.083em;height:30px;line-height:28px;padding:0 5px;min-width:30px;text-decoration:none;border-radius:3px;}
.pg_page:hover{background:#ddd}
.pg_start {text-indent:-999px;overflow:hidden;background:url('../img/btn_first.gif') no-repeat 50% 50% #fff;padding:0;border:1px solid #bbb;}
.pg_prev {text-indent:-999px;overflow:hidden;background:url('../img/btn_prev.gif') no-repeat 50% 50% #fff;padding:0;border:1px solid #bbb}
.pg_end {text-indent:-999px;overflow:hidden;background:url('../img/btn_end.gif') no-repeat 50% 50% #fff;padding:0;border:1px solid #bbb}
.pg_next {text-indent:-999px;overflow:hidden;background:url('../img/btn_next.gif') no-repeat 50% 50% #fff;padding:0;border:1px solid #bbb}
.pg_start:hover,.pg_prev:hover,.pg_end:hover,.pg_next:hover{background-color:#fafafa}

.pg_current {display:inline-block;background:#4c4f6f;color:#fff;font-weight:bold;height:30px;line-height:30px;padding:0 10px;min-width:30px;border-radius:3px;
-webkit-box-shadow: inset 1px 1px 2px #222542;
-moz-box-shadow:  inset 1px 1px 2px #222542;
box-shadow: inset 1px 1px 2px #222542;
}

/* cheditor 이슈 */
.cheditor-popup-window *, .cheditor-popup-window :after, .cheditor-popup-window :before {
-webkit-box-sizing: content-box;
-moz-box-sizing: content-box;
box-sizing: content-box;
}

/* Mobile화면으로 */
#device_change {display:block;margin:0.3em;padding:0.5em 0;border:1px solid #eee;border-radius:2em;background:#fff;color:#000;font-size:2em;text-decoration:none;text-align:center}

.close_menu { display: none; }
.mobile_menu { display: none; }


.table_style table{
	width: 100%;
	border-top: 2px solid #0254B3;
}

.table_style table th, .table_style table td{ padding:10px; border-bottom: 1px solid #eee;}
.table_style table th{ background: #f9f9f9; word-break: keep-all;}

.map_info_table{ margin-top: 20px;}



/* ─── 서브 상단 배너 ─────────────────────── */
.sub_top {
    background: url(/img/sub_top.jpg) center center no-repeat;
    background-size: cover;
    position: relative;
    min-height: 180px;
    display: flex;
    align-items: center;
}
.sub_top::after {
    content: '';
    position: absolute;
    top: 0; left: 0; right: 0; bottom: 0;
    background: rgba(0, 0, 0, 0.48);
    z-index: 0;
}
.sub_top_text {
    position: relative;
    z-index: 1;
    padding: 0 50px;
    color: #fff;
}
.sub_top_text strong {
    display: block;
    font-size: 28px;
    font-weight: 700;
    color: #fff !important;
    margin-bottom: 8px;
    font-family: 'Pretendard', 'Noto Sans KR', sans-serif;
}
.sub_top_text strong b { color: #fff !important; }
.sub_top_text p {
    font-size: 14px;
    color: rgba(255,255,255,0.85) !important;
    line-height: 1.7;
    margin: 0;
}

/* ─── 좌측 SNB 서브메뉴 ──────────────────── */
#snb > li > ul > li.snb2d.active a {
    background: #4AA456 !important;
    color: #fff !important;
}
#snb > li > ul > li a:hover {
    background: #edf7f1;
    color: #4AA456;
    padding-left: 22px;
}

/* ─── 좌측 상담전화 아이콘 ───────────────── */
.left_call span { color: #4AA456; }

/* ─── 서브 페이지 강조 텍스트 ───────────── */
.sub_tit2 { color: #4AA456; }
.sub0201 .sub_tit2 b { color: #4AA456; }
.sub_tit h4::after { background: #d4ede0; }

/* ─── 버튼 ───────────────────────────────── */
.btn_submit, .btn_submit:link { background: #4AA456; }
.btn_submit:hover              { background: #017A33; }
.pg_current                    { background: #4AA456; }

/* ─── 링크 호버 ──────────────────────────── */
a:hover { color: #4AA456; }

/* ─── 푸터 ───────────────────────────────── */
#ft {
    background: #111111;
    padding: 30px 0;
}
#ft .ft_text { color: #B1B1B1; }
#ft .ft_text a { color: #B1B1B1; }
#ft .ft_text a:hover { color: #ffffff; }
#ft .ft_link a {
    color: #cccccc;
    border-color: #444;
}
#ft .ft_link a:hover { color: #fff; }
#ft p.copy { color: #888; }

/* ─── TOP 버튼 ───────────────────────────── */
#top_btn {
    background: #4AA456;
    border: 0;
    color: #fff;
}
#top_btn:hover { background: #017A33; }


/* ════════════════════════════════════════════
   서브 페이지 공통
════════════════════════════════════════════ */

/* ─── 탭 네비게이션 ── */
.sub_tab {
    display: flex;
    gap: 4px;
    margin-bottom: 30px;
    background: #f5f5f5;
    border-radius: 50px !important;
    padding: 6px 8px;
    flex-wrap: nowrap;
    overflow-x: auto;
}
.sub_tab_item {
    display: inline-flex;
    align-items: center;
    padding: 9px 20px;
    font-size: 16px;
    color: #737373;
    text-decoration: none;
    border: none !important;
    border-radius: 50px !important;
    background: transparent;
    font-weight: 600;
    white-space: nowrap;
    flex-shrink: 0;
    transition: none;
}
.sub_tab_item.active {
    background: #4AA456 !important;
    color: #fff !important;
    border-radius: 50px !important;
    text-decoration: none;
}
.sub_tab_item:hover:not(.active) {
    color: #444;
    text-decoration: none;
}
.sub_tab_content { display: none; }
.sub_tab_content.active { display: block; }

/* ─── 서브 공통 제목 ─────────────────────── */
.sub_tit {
    text-align: left;
    margin-bottom: 20px;
    margin-top: 35px;
    padding-bottom: 10px;
    border-bottom: 2px solid #4AA456;
}
.sub_tit:first-of-type { margin-top: 0; }
.sub_tit h4 {
    font-size: 19px;
    font-weight: 700;
    color: #1a1a1a;
}
.sub_tit h4::after { display: none; }

/* ─── 회사소개 레이아웃 (Figma px 기준) ──── */
/* Figma: 840px 콘텐츠 기준. 텍스트 405px, 이미지 360x254px, 갭 50px */
.ci_intro_row {
    display: flex;
    gap: 40px;
    align-items: flex-start;
    margin-bottom: 0;
}
.ci_intro_text { flex: 1; min-width: 0; }
.ci_intro_heading {
    font-size: 22px;
    font-weight: 700;
    color: #222;
    margin-bottom: 14px;
    margin-top: 0;
}
.ci_intro_bold {
    font-size: 19px;
    font-weight: 700;
    color: #222;
    line-height: 1.7;
    margin-bottom: 16px;
}
.ci_intro_body {
    font-size: 16px;
    color: #444;
    line-height: 1.9;
    margin: 0;
}

/* 브랜드 센터 (Figma: h=116px, fs=25px, fw=700) */
.ci_brand_center {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 16px;
    padding: 28px 20px;
    margin: 30px 0;
    background: #fff;
    border-top: 1px solid #e5e5e5;
    border-bottom: 1px solid #e5e5e5;
    font-size: 20px;
    font-weight: 700;
    color: #2b2b2b;
}
.ci_brand_center img {
    height: 32px;
    width: auto;
    vertical-align: middle;
}

/* 대표이사 인사말 (Figma: 제목 fs=18, fw=700 / 본문 fs=16, fw=400) */
.ci_ceo_section { margin-top: 0; }
.ci_ceo_title {
    font-size: 18px;
    font-weight: 700;
    color: #222;
    margin-top: 0;
    margin-bottom: 16px;
    padding-bottom: 12px;
    border-bottom: 1px solid #ddd;
}
.ci_ceo_section > p {
    font-size: 16px;
    color: #444;
    line-height: 1.9;
    margin-top: 0;
    margin-bottom: 12px;
}
.ci_ceo_section > p:last-of-type { margin-bottom: 0; }
.ci_ceo_sign {
    font-size: 16px;
    font-weight: 600;
    color: #222;
    margin-top: 4px;
    margin-bottom: 0;
}

/* 구형 클래스 유지 (다른 페이지 영향 방지) */
.company_intro_layout {
    display: flex;
    gap: 30px;
    align-items: flex-start;
    margin-bottom: 30px;
}
.company_intro_content { flex: 1; }
.company_intro_img_wrap {
    flex-shrink: 0;
    width: 200px;
}
.company_intro_img_wrap img {
    width: 200px;
    height: 200px;
    object-fit: cover;
    border-radius: 4px;
    border: 1px solid #e5f2ec;
}

.company_intro_text {
    font-size: 16px;
    font-weight: 700;
    color: #4AA456;
    margin-bottom: 14px;
    padding: 12px 18px;
    border-left: 4px solid #4AA456;
    background: #f0f9f4;
    border-radius: 0 6px 6px 0;
}
.company_intro_content > p {
    color: #444;
    line-height: 1.9;
    font-size: 0.96em;
}

/* CEO 메시지 */
.ceo_message { margin-bottom: 30px; }
.ceo_message_text {
    background: #fafafa;
    border: 1px solid #eee;
    border-radius: 8px;
    padding: 25px 28px;
}
.ceo_message_text p { color: #444; line-height: 1.95; font-size: 0.96em; margin-bottom: 12px; }
.ceo_sign {
    margin-top: 18px;
    text-align: right;
    font-size: 0.95em;
    color: #555;
    border-top: 1px solid #eee;
    padding-top: 14px;
}

/* 회사 기본 정보 테이블 */
.company_info_table { width: 100%; border-collapse: collapse; margin-top: 15px; font-size: 14px; }
.company_info_table th {
    width: 150px;
    padding: 11px 15px;
    background: #f0f9f4;
    border: 1px solid #d8edd8;
    font-weight: 600;
    color: #4AA456;
    text-align: left;
}
.company_info_table td {
    padding: 11px 15px;
    border: 1px solid #e0e0e0;
    color: #444;
    word-break: keep-all;
    line-height: 1.6;
}
.company_info_table tr:nth-child(even) td { background: #fafafa; }

/* ─── 사업목표 ───────────────────────────── */
.business_goals { display: flex; flex-direction: column; gap: 12px; margin-top: 10px; }
.business_goal_item {
    display: flex;
    align-items: flex-start;
    gap: 18px;
    padding: 18px 22px;
    border: 1px solid #e5efe5;
    border-radius: 10px;
    background: #fafdf9;
    transition: border-color 0.2s;
}
.business_goal_item:hover { border-color: #4AA456; }
.business_goal_num {
    width: 42px;
    height: 42px;
    min-width: 42px;
    background: #4AA456;
    color: #fff;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 700;
    font-size: 15px;
    letter-spacing: -0.5px;
}
.business_goal_text h5 { font-size: 15px; font-weight: 700; color: #111; margin-bottom: 5px; }
.business_goal_text p  { font-size: 13px; color: #666; line-height: 1.6; }

/* ─── 수상 그리드 ────────────────────────── */
.award_grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 14px;
    margin-top: 15px;
}
.award_item {
    border: 1px solid #e5efe5;
    border-radius: 10px;
    overflow: hidden;
    text-align: center;
    background: #fff;
    transition: box-shadow 0.2s;
}
.award_item:hover { box-shadow: 0 3px 12px rgba(1,150,63,0.1); }
.award_item img { width: 100%; height: 160px; object-fit: cover; display: block; }
.award_item p { padding: 10px 8px; font-size: 12px; color: #555; line-height: 1.5; }

/* ─── 인증 그리드 ────────────────────────── */
.cert_grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 14px;
    margin-top: 15px;
}
.cert_item {
    border: 1px solid #e5efe5;
    border-radius: 10px;
    overflow: hidden;
    text-align: center;
    background: #fff;
    transition: box-shadow 0.2s;
}
.cert_item:hover { box-shadow: 0 3px 12px rgba(1,150,63,0.1); }
.cert_item p { padding: 10px 8px; font-size: 12px; color: #555; line-height: 1.5; }

/* ─── CI ─────────────────────────────────── */
.ci_wrap { text-align: center; padding: 40px 30px; border: 1px solid #e5efe5; border-radius: 10px; background: #fafdf9; }
.ci_logo_box { margin: 0 auto 20px; max-width: 360px; }
.ci_logo_box img { max-width: 100%; height: auto; }
.ci_desc { color: #555; font-size: 14px; line-height: 1.9; margin-top: 16px; }

/* ─── 식품안전 ───────────────────────────── */
.safety_policy_intro {
    background: #f0f9f4;
    border-left: 4px solid #4AA456;
    padding: 16px 20px;
    color: #444;
    line-height: 1.85;
    margin-bottom: 25px;
    border-radius: 0 8px 8px 0;
    font-size: 14px;
}
.safety_cards {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 16px;
    margin-top: 15px;
}
.safety_card {
    border: 1px solid #e5efe9;
    border-radius: 10px;
    padding: 22px 20px;
    background: #fafdf9;
    transition: box-shadow 0.2s;
}
.safety_card:hover { box-shadow: 0 3px 12px rgba(1,150,63,0.1); }
.safety_card_icon { margin-bottom: 12px; }
.safety_card h5 { font-size: 14px; font-weight: 700; color: #111; margin-bottom: 8px; }
.safety_card p  { font-size: 13px; color: #666; line-height: 1.65; }

.haccp_box {
    background: #f0f9f4;
    border: 1px solid #c5e8d3;
    border-radius: 10px;
    padding: 22px 26px;
    margin-top: 15px;
}
.haccp_box h5 { font-size: 15px; font-weight: 700; color: #4AA456; margin-bottom: 10px; }
.haccp_box p  { font-size: 13px; color: #444; line-height: 1.85; }

/* ─── 품질경영 ───────────────────────────── */
.quality_items { display: flex; flex-direction: column; gap: 18px; margin-top: 10px; }
.quality_item {
    display: flex;
    gap: 20px;
    align-items: flex-start;
    padding: 20px 24px;
    border: 1px solid #e5efe5;
    border-radius: 10px;
    background: #fafdf9;
}
.quality_item_icon {
    width: 56px;
    height: 56px;
    min-width: 56px;
    background: #f0f9f4;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
}
.quality_item h5 { font-size: 15px; font-weight: 700; color: #111; margin-bottom: 8px; }
.quality_item p  { font-size: 13px; color: #555; line-height: 1.75; }

.safety_policy_list {
    margin: 15px 0 0 0;
    padding-left: 20px;
}
.safety_policy_list li {
    color: #444;
    font-size: 14px;
    line-height: 1.85;
    margin-bottom: 10px;
    padding-left: 8px;
}

/* ─── 제품소개 ───────────────────────────── */
.product_section { margin-bottom: 45px; }
.product_section_title {
    font-size: 17px;
    font-weight: 700;
    color: #4AA456;
    border-bottom: 2px solid #4AA456;
    padding-bottom: 8px;
    margin-bottom: 18px;
}
.owl-carousel-wrap { overflow: hidden; }
.owl-item-custom { text-align: center; padding: 10px; }
.owl-item-custom img { max-width: 100%; height: 200px; object-fit: contain; margin: 0 auto 10px; display: block; }
.owl-item-custom p { font-size: 13px; color: #555; }

/* ─── 협력/문의 ──────────────────────────── */
.partner_intro {
    font-size: 16px;
    color: #222;
    line-height: 1.7;
    padding-bottom: 40px;
    border-bottom: 1px solid #ddd;
    margin-bottom: 30px;
}
.partner_img_wrap {
    text-align: center;
}
.partner_img_wrap img {
    max-width: 100%;
    height: auto;
    display: block;
    margin: 0 auto;
}
.partner_features {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
    margin-bottom: 30px;
}
.partner_feature {
    text-align: center;
    padding: 30px 20px;
    border: 1px solid #e5efe9;
    border-radius: 10px;
    background: #fafdf9;
}
.partner_feature svg { margin: 0 auto 15px; display: block; }
.partner_feature h5 { font-size: 15px; font-weight: 600; color: #222; margin-bottom: 10px; }
.partner_feature p  { font-size: 13px; color: #666; line-height: 1.6; }

/* ─── 식품안전 전체 텍스트 ───────────────── */
.safety_full_text {
    background: #f9fdf9;
    border: 1px solid #e5efe5;
    border-radius: 10px;
    padding: 24px 28px;
    margin-top: 5px;
    margin-bottom: 0;
}
.safety_full_text p {
    color: #444;
    font-size: 14px;
    line-height: 1.9;
    margin-bottom: 12px;
}
.safety_full_text p:last-child { margin-bottom: 0; }
.safety_full_text strong { color: #4AA456; }

/* ─── 식품안전회의 박스 ───────────────────── */
.safety_meeting_box {
    background: #f0f9f4;
    border-left: 4px solid #4AA456;
    padding: 20px 24px;
    border-radius: 0 8px 8px 0;
    margin-top: 5px;
}
.safety_meeting_box p {
    color: #444;
    font-size: 14px;
    line-height: 1.9;
    margin-bottom: 10px;
}
.safety_meeting_box p:last-child { margin-bottom: 0; }

/* ─── HACCP 정의 박스 ────────────────────── */
.haccp_def_box {
    background: #fff;
    border: 1px solid #c5e8d3;
    border-radius: 10px;
    padding: 24px 28px;
    margin-top: 5px;
}
.haccp_def_title {
    font-size: 14px;
    font-weight: 700;
    color: #4AA456;
    margin-bottom: 14px;
    padding-bottom: 10px;
    border-bottom: 1px solid #d5eed8;
}
.haccp_def_box p {
    color: #444;
    font-size: 14px;
    line-height: 1.9;
    margin-bottom: 10px;
}
.haccp_def_box p:last-child { margin-bottom: 0; }
.haccp_def_em {
    color: #4AA456 !important;
    font-weight: 600;
    background: #f0f9f4;
    padding: 10px 15px;
    border-radius: 6px;
}

/* ─── HACCP 14단계 공정 ───────────────────── */
.haccp_process_wrap { margin-top: 5px; }
.haccp_steps_grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 10px;
}
.haccp_step {
    border: 1px solid #d5eed8;
    border-radius: 8px;
    background: #fff;
    overflow: hidden;
    transition: box-shadow 0.2s;
}
.haccp_step:hover { box-shadow: 0 3px 10px rgba(1,150,63,0.12); }
.haccp_step_header {
    display: flex;
    align-items: center;
    gap: 12px;
    background: #f0f9f4;
    padding: 10px 16px;
}
.haccp_step_num {
    width: 36px;
    height: 36px;
    min-width: 36px;
    background: #4AA456;
    color: #fff;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 12px;
    font-weight: 700;
}
.haccp_step_name {
    font-size: 14px;
    font-weight: 700;
    color: #1a1a1a;
}
.haccp_step_desc {
    padding: 10px 16px;
    font-size: 12px;
    color: #555;
    line-height: 1.7;
}

/* ─── sub_tit2 ───────────────────────────── */
.sub_tit2 { color: #4AA456; }

/* ─── 오시는길 지도/테이블 ──────────────── */
.map_tbl { width: 100%; border-collapse: collapse; font-size: 14px; }
.map_tbl th {
    width: 80px;
    padding: 10px 14px;
    background: #f0f9f4;
    border: 1px solid #d5eed8;
    font-weight: 600;
    color: #4AA456;
    text-align: left;
}
.map_tbl td {
    padding: 10px 14px;
    border: 1px solid #e0e0e0;
    color: #444;
}
.location_table { width: 100%; border-collapse: collapse; font-size: 13px; margin-top: 10px; }
.location_table thead th {
    padding: 10px 12px;
    background: #4AA456;
    color: #fff;
    font-weight: 600;
    border: 1px solid #017A33;
    text-align: center;
}
.location_table tbody td {
    padding: 10px 12px;
    border: 1px solid #ddd;
    color: #444;
    vertical-align: middle;
}
.location_table tbody tr:nth-child(even) td { background: #fafdf9; }
.location_badge {
    display: inline-block;
    padding: 2px 8px;
    background: #4AA456;
    color: #fff;
    border-radius: 3px;
    font-size: 11px;
    font-weight: 600;
    margin-right: 5px;
    vertical-align: middle;
}

/* ── 서브페이지 본문 line-height 통일 (140%) ── */
#container02 { line-height: 1.7; }

/* ══════════════════════════════════════
   제품소개 (sub0201) 공통 스타일
══════════════════════════════════════ */
.prod_wrap {
    display: flex;
    gap: 40px;
    align-items: flex-start;
    margin-bottom: 60px;
}
.prod_slider_col {
    flex-shrink: 0;
    width: 360px;
}
.prod_slider_box {
    width: 360px;
    height: 360px;
    border: 1px solid #ddd;
    border-radius: 8px;
    overflow: hidden;
    background: #fff;
}
.prod_slide_item {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 360px;
    height: 360px;
    padding: 20px;
    box-sizing: border-box;
}
.prod_slide_item img {
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
}
.prod_slide_caption {
    font-size: 15px;
    color: #555;
    text-align: center;
    margin-top: 10px;
}
.prod_slide_counter_wrap {
    text-align: center;
    margin-top: 6px;
}
.prod_slide_counter {
    display: inline-block;
    background: #333;
    color: #fff;
    font-size: 13px;
    padding: 3px 12px;
    border-radius: 20px;
    letter-spacing: 0.05em;
    vertical-align: middle;
}
.prod_slide_btn {
    display: inline-block;
    vertical-align: middle;
    width: 24px;
    height: 24px;
    line-height: 20px;
    padding: 0;
    margin: 0 6px;
    background: #fff;
    border: 1px solid #bbb;
    border-radius: 50%;
    color: #333;
    font-size: 16px;
    font-family: Arial, sans-serif;
    cursor: pointer;
    transition: background 0.15s, border-color 0.15s, color 0.15s;
}
.prod_slide_btn:hover {
    background: #4AA456;
    border-color: #4AA456;
    color: #fff;
}
.prod_info_col {
    flex: 1;
    min-width: 0;
    width: 100%;
}
.prod_name_head {
    border-left: 4px solid #4AA456;
    padding-left: 16px;
    margin-bottom: 18px;
}
.prod_name_head h3 {
    font-size: 22px;
    font-weight: 700;
    color: #222;
    line-height: 1.4;
    margin: 0;
}
.prod_desc {
    font-size: 16px;
    color: #444;
    line-height: 1.7;
    margin-bottom: 24px;
}
.prod_desc p { margin: 0; }
.prod_spec_wrap {
    border: 1px solid #ddd;
    border-radius: 10px;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
}
.prod_spec_table {
    width: 100%;
    min-width: 400px;
    border-collapse: collapse;
    font-size: 15px;
    color: #333;
}
.prod_spec_table th {
    background: #f5f5f5;
    border-right: 1px solid #ddd;
    border-bottom: 1px solid #ddd;
    padding: 9px 12px;
    font-weight: 700;
    text-align: center;
    white-space: nowrap;
}
.prod_spec_table th:last-child { border-right: 0; }
.prod_spec_table td {
    border-right: 1px solid #ddd;
    border-bottom: 1px solid #ddd;
    padding: 9px 12px;
    vertical-align: middle;
    text-align: center;
    line-height: 1.5;
}
.prod_spec_table td:last-child { border-right: 0; }
.prod_spec_table tbody tr:last-child td { border-bottom: 0; }
.prod_spec_table td.td_left { text-align: left; }
.prod_spec_table .green {  font-weight: 700; }
/* 모서리 radius는 각 테이블 셀 inline style로 처리 (rowspan 대응) */
.prod_extra_rows {
    margin-top: 14px;
    font-size: 15px;
    color: #333;
    line-height: 1.7;
}
.prod_extra_row {
    display: flex;
    gap: 10px;
    padding: 4px 0;
}
.prod_extra_label {
    flex-shrink: 0;
    font-weight: 700;
    color: #222;
    min-width: 100px;
}

/* ══════════════════════════════════════
   협력업체현황 (sub0301)
══════════════════════════════════════ */
.partner_desc {
    font-size: 15px;
    color: #444;
    line-height: 1.7;
    margin-bottom: 28px;
}
.partner_desc p { margin: 0 0 10px; }
.partner_img_placeholder {
    background: #f0f0f0;
    border: 1px solid #ddd;
    border-radius: 8px;
    height: 400px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #aaa;
    font-size: 15px;
    letter-spacing: 0.05em;
}

/* ══════════════════════════════════════
   오시는길 (sub0302)
══════════════════════════════════════ */
.location_section {
    margin-bottom: 50px;
}
.location_section_title {
    border-left: 4px solid #4AA456;
    padding-left: 16px;
    margin-bottom: 20px;
}
.location_section_title h3 {
    font-size: 20px;
    font-weight: 700;
    color: #222;
    margin: 0;
    line-height: 1.4;
}
.location_map_placeholder {
    background: #d9d9d9;
    height: 300px;
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #888;
    font-size: 14px;
    margin-bottom: 20px;
}
.location_info_row {
    display: flex;
    gap: 16px;
}
.location_info_item {
    flex: 1;
    display: flex;
    align-items: flex-start;
    gap: 14px;
    padding: 18px 16px;
    border: 1px solid #ddd;
    border-radius: 10px;
}
.location_icon_circle {
    flex-shrink: 0;
    width: 42px;
    height: 42px;
    border-radius: 50%;
    background: #4AA456;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    font-size: 17px;
}
.location_info_label {
    font-size: 16px;
    font-weight: 700;
    color: #222;
    margin-bottom: 5px;
}
.location_info_text {
    font-size: 16px;
    color: #555;
    line-height: 1.6;
}
/* 분점 정보 테이블 */
.branch_table_wrap {
    border: 1px solid #ddd;
    border-radius: 10px;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    margin-bottom: 10px;
    overflow-x: auto;
}
.branch_table {
    width: 100%;
    min-width: 700px;
    border-collapse: collapse;
    font-size: 15px;
    color: #333;
}
.branch_table th {
    background: #f5f5f5;
    border-right: 1px solid #ddd;
    border-bottom: 1px solid #ddd;
    padding: 10px 12px;
    font-weight: 700;
    text-align: center;
    white-space: nowrap;
}
.branch_table th:last-child { border-right: 0; }
.branch_table td {
    border-right: 1px solid #ddd;
    border-bottom: 1px solid #ddd;
    padding: 10px 12px;
    vertical-align: middle;
    text-align: center;
    line-height: 1.5;
}
.branch_table td:last-child { border-right: 0; }
.branch_table tbody tr:last-child td { border-bottom: 0; }
.branch_table td.td_left { text-align: left; }
.branch_table thead tr:first-child th:first-child { border-radius: 10px 0 0 0; }
.branch_table thead tr:first-child th:last-child  { border-radius: 0 10px 0 0; }
.branch_table tbody tr:last-child td:first-child  { border-radius: 0 0 0 10px; }
.branch_table tbody tr:last-child td:last-child   { border-radius: 0 0 10px 0; }
.branch_table_foot {
    font-size: 13px;
    color: #666;
    line-height: 1.7;
}
}

/* ══════════════════════════════════════
   서브페이지 탭 버튼 (pill style) - sub0101_xx / 회사연혁 공통
══════════════════════════════════════ */
.sub_tab_pill_wrap {
    background: #f5f5f5;
    border-radius: 60px;
    display: flex;
    align-items: stretch;
    overflow: hidden;
    margin-bottom: 35px;
    padding-right: 20px;
}
.sub_tab_pill {
    display: inline-flex;
    align-items: center;
    padding: 18px 22px;
    font-size: 15px;
    font-weight: 600;
    color: #666;
    text-decoration: none;
    border-radius: 30px 30px 0 30px;
    white-space: nowrap;
    transition: color 0.2s;
    line-height: 100%;
}
.sub_tab_pill.active {
    background: #4AA456;
    color: #fff;
    border-radius: 30px 30px 30px 0;
}
.sub_tab_pill:hover:not(.active) { color: #4AA456; }

@media (max-width: 860px) {
    .sub_tab_pill_wrap { flex-wrap: wrap; border-radius: 15px; padding-right: 0; }
    .sub_tab_pill { border-radius: 10px; }
}
/* ══════════════════════════════════════
   회사소개 (sub0101_01)
══════════════════════════════════════ */
.ci_intro_row {
    display: flex;
    gap: 50px;
    align-items: center;
    margin-bottom: 40px;
}
.ci_intro_text { flex: 1; }
.ci_intro_heading {
    font-size: 30px;
    font-weight: 700;
    color: #222;
    margin-bottom: 20px;
    line-height: 1.7;
}
.ci_intro_heading .green { color: #4AA456; }
.ci_intro_bold {
    font-size: 19px;
    font-weight: 700;
    color: #222;
    line-height: 1.7;
    margin-bottom: 20px;
}
.ci_intro_body {
    font-size: 16px;
    color: #222;
    line-height: 1.7;
    margin: 0;
}
.ci_intro_img {
    position: relative;
    width: 385px;
    height: 280px;
    flex-shrink: 0;
}
.ci_intro_img .img_shadow {
    position: absolute;
    background: #f5f5f5;
    width: 368px;
    height: 253px;
    border-radius: 34px 0 34px 0;
    top: 26px;
    left: 17px;
}
.ci_intro_img img {
    position: absolute;
    top: 0;
    left: 0;
    width: 360px;
    height: 254px;
    object-fit: cover;
    border-radius: 34px 0 34px 0;
    display: block;
}
.ci_brand_center {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    padding: 40px 0;
    border-top: 1px solid #ddd;
    border-bottom: 1px solid #ddd;
    margin-bottom: 35px;
    font-size: 25px;
    font-weight: 700;
    color: #2b2b2b;
}
.ci_brand_center img { height: 32px; width: auto; }
.ci_ceo_title {
    font-size: 18px;
    font-weight: 700;
    color: #222;
    line-height: 1.7;
    margin-bottom: 20px;
}
.ci_ceo_section p {
    font-size: 16px;
    color: #222;
    line-height: 1.7;
    margin-bottom: 0;
}
.ci_ceo_section p + p { margin-top: 0; }
.ci_ceo_sign {
    font-size: 16px;
    font-weight: 600;
    color: #222;
    margin-top: 15px !important;
}

/* ══════════════════════════════════════
   사업목표 (sub0101_02)
══════════════════════════════════════ */
.biz_goal_list {
    display: flex;
    flex-direction: column;
    width: 100%;
}
.biz_goal_item {
    display: flex;
    gap: 5px;
    align-items: flex-start;
    padding: 25px 20px;
    border-bottom: 1px solid #ddd;
}
.biz_goal_item:last-child { border-bottom: none; }
.biz_goal_num {
    flex-shrink: 0;
    width: 50px;
    font-size: 19px;
    font-weight: 700;
    color: #4AA456;
    line-height: 1.7;
}
.biz_goal_text {
    display: flex;
    flex-direction: column;
    gap: 5px;
}
.biz_goal_text h5 {
    font-size: 18px;
    font-weight: 700;
    color: #222;
    line-height: 1.7;
    margin: 0;
}
.biz_goal_text p {
    font-size: 16px;
    color: #222;
    line-height: 1.7;
    margin: 0;
}

/* ══════════════════════════════════════
   수상 & 인증현황 (sub0101_03)
══════════════════════════════════════ */
.award_sec_title {
    font-size: 19px;
    font-weight: 700;
    color: #222;
    line-height: 1.7;
    margin-bottom: 20px;
}
.award_cert_grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 30px;
    margin-bottom: 40px;
}
.award_cert_card {
    display: flex;
    flex-direction: column;
    gap: 20px;
    align-items: center;
}
.award_cert_card .cert_img_box {
    width: 100%;
    aspect-ratio: 21 / 27.9;
    border: 1px solid #ddd;
    overflow: hidden;
    position: relative;
    background: #fafafa;
}
.award_cert_card .cert_img_box img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}
.award_cert_card p {
    font-size: 16px;
    font-weight: 600;
    color: #666;
    line-height: 1.7;
    text-align: center;
    margin: 0;
    width: 100%;
}

/* ══════════════════════════════════════
   CI (sub0101_04)
══════════════════════════════════════ */
.ci_display_box {
    border: 1px solid #ddd;
    height: 325px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 4px;
}
.ci_display_box img {
    width: 348px;
    height: 104px;
    object-fit: contain;
    display: block;
}

/* ══════════════════════════════════════
   식품안전 (sub0102_01)
══════════════════════════════════════ */
.safety_icon_rows {
    display: flex;
    flex-direction: column;
    gap: 30px;
    margin-bottom: 50px;
}
.safety_icon_row {
    display: flex;
    gap: 20px;
    align-items: flex-start;
}
.safety_icon_circle {
    flex-shrink: 0;
    width: 80px;
    height: 80px;
    border-radius: 50%;
    border: 1px solid #ddd;
    background: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
}
.safety_icon_circle img { width: 38px; height: 38px; }
.safety_icon_text {
    display: flex;
    flex-direction: column;
    gap: 5px;
    justify-content: center;
    padding-top: 5px;
}
.safety_icon_text h5 {
    font-size: 18px;
    font-weight: 700;
    color: #222;
    line-height: 1.7;
    margin: 0;
}
.safety_icon_text ul {
    list-style-type: disc;
    font-size: 16px;
    color: #222;
    line-height: 1.7;
    margin: 0;
    padding-left: 24px;
}
.safety_icon_text ul li { list-style-type: disc; }
.safety_sec_head {
    border-left: 4px solid #4AA456;
    padding-left: 19px;
    margin-bottom: 15px;
    margin-top: 50px;
}
.safety_sec_head:first-of-type { margin-top: 0; }
.safety_sec_head h4 {
    font-size: 22px;
    font-weight: 700;
    color: #222;
    line-height: 1.7;
    margin: 0;
}
.safety_sec_body {
    font-size: 16px;
    color: #222;
    line-height: 1.7;
}
.safety_sec_body p { margin: 0; }
.haccp_logos_img {
    display: block;
    width: 100%;
    height: auto;
    margin-top: 15px;
}
.haccp_process_img {
    display: block;
    max-width: 100%;
    height: auto;
    margin-top: 10px;
}

/* ══════════════════════════════════════
   품질경영 (sub0102_02)
══════════════════════════════════════ */
.qm_intro_block {
    border-top: 1px solid #ddd;
    border-bottom: 1px solid #ddd;
    padding: 40px 0;
    margin-bottom: 30px;
}
.qm_intro_block p {
    font-size: 16px;
    color: #222;
    line-height: 1.7;
    margin: 0;
}
.qm_intro_block .green { color: #4AA456; font-weight: 700; }
.qm_icon_rows {
    display: flex;
    flex-direction: column;
    gap: 30px;
}
.qm_icon_row {
    display: flex;
    gap: 20px;
    align-items: flex-start;
}
.qm_icon_circle {
    flex-shrink: 0;
    width: 80px;
    height: 80px;
    border-radius: 50%;
    border: 1px solid #ddd;
    background: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
}
.qm_icon_circle img { width: 38px; height: 38px; }
.qm_icon_text {
    display: flex;
    flex-direction: column;
    gap: 5px;
    justify-content: center;
    padding-top: 5px;
}
.qm_icon_text h5 {
    font-size: 18px;
    font-weight: 700;
    color: #222;
    line-height: 1.7;
    margin: 0;
}
.qm_icon_text p {
    font-size: 16px;
    color: #222;
    line-height: 1.7;
    margin: 0;
}
.qm_icon_text ol {
    list-style-type: decimal;
    font-size: 16px;
    color: #222;
    line-height: 1.7;
    margin: 0;
    padding-left: 24px;
}
.qm_icon_text ol li { list-style-type: decimal; }

/* ══════════════════════════════════════
   산업안전보건방침 (sub0103_01)
══════════════════════════════════════ */
.safety_intro_block {
    border-bottom: 1px solid #ddd;
    padding-bottom: 40px;
    margin-bottom: 30px;
}
.safety_intro_block p {
    font-size: 16px;
    color: #222;
    line-height: 1.7;
    margin: 0;
}
.safety_intro_block .green { color: #4AA456; font-weight: 700; }
.safety_policy_grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 20px;
}
.safety_policy_card {
    display: flex;
    gap: 5px;
    align-items: flex-start;
    border: 1px solid #ddd;
    border-radius: 12px;
    padding: 25px 20px;
}
.safety_policy_num {
    flex-shrink: 0;
    width: 50px;
    font-size: 19px;
    font-weight: 700;
    color: #4AA456;
    line-height: 1.7;
}
.safety_policy_text {
    font-size: 16px;
    color: #222;
    line-height: 1.7;
    margin: 0;
}

/* ======================================================================
   response.css에서 이동된 PC 베이스 스타일 (반응형 외 / 메인+서브 공통)
   ====================================================================== */



















/* ========================================
   신미씨앤에프 반응형 (구 sunmi.css)
   ======================================== */
/* ========================================
   ㈜신미씨앤에프 디자인 오버라이드
   기본 색상: #4AA456 (Green)  /  Accent: #98C028 (Lime)
   피그마 기준 적용 - 2026-03-25
   ======================================== */

/* ─── 상단 헤더 ─────────────────────────── */
#hd { border-top: 3px solid #594E45; }

/* ─── TNB ───────────────────────────────── */

#tnb a { color: #888888; }
#tnb a:focus, #tnb a:hover { color: #594E45; }

/* ─── GNB 1단 ────────────────────────────  */
#gnb .gnb_1dli > a { color: #222222; }
#gnb .gnb_1dli:hover > a { color: #594E45; text-decoration: none; }
#gnb .gnb_1dli > a:after { color: rgba(0,0,0,0.2); }

/* ─── GNB 2단 드롭다운 ───────────────────── */
a.gnb_2da:hover {
    background: #594E45 !important;
    color: #fff !important;
}

/* ─── 메인 전체 배경 오버레이 (index_bg 위에 흰색 덮기) ─── */
#wrapper { position: relative; }

.cont01 { position: relative; z-index: 1; }

/* ─── 메인 왼쪽 단일 이미지 (Figma: 590x620, 텍스트+그라데이션 포함) ── */
.cont01_wrap .left {
    background: none !important;
    height: auto;
    position: relative;
    overflow: hidden;
	border: 3px solid #b3a580;
}
.cont01_wrap .left > img {
	border: 5px solid #eee4c2;
    visibility: visible !important;
    width: 100%;
    object-fit: cover;
    object-position: center center;
    display: block;
}

/* ─── 메인 아이콘 블록 (Figma 기준) ────────── */
.cont01_wrap .right .block{ background: #EFE4C4; }
.cont01_wrap .right .block:after {
    content: '';
    display: block;
    /* width: 100%; */
    /* height: 100%; */
    border: 2px solid #b3a580;
    position: absolute;
    top: 4px;
    left: 4px;
    right: 4px;
    bottom: 4px;
}

/* 블록 텍스트: Figma 22px Bold 제목, 16px Regular 부제 */
.cont01_wrap .right .block strong {
    font-size: 22px;
    font-weight: 700;
    color: #272115;
    display: block;
    margin-bottom: 3px;
    line-height: normal;
}
.cont01_wrap .right .block p {
    font-size: 16px;
    color: #594F39;
    line-height: normal;
}

/* 블록 아이콘: Figma right:22px bottom:20px, 40px 크기, opacity 40% */
.cont01_wrap .right .block img {
    position: absolute;
    right: 32px;
    bottom: 30px;
    width: 40px;
    height: 40px;
    object-fit: contain;
}

/* 버튼: Figma border-radius:20px, padding:10px 30px, font:14px Medium */
.cont01_wrap .right .block .main_btn {
    position: absolute;
    left: 31px;
    bottom: 30px;
    color: #fff;
    border: 1px solid #99562C;
    border-radius: 20px !important;
    background: #99562C;
    padding: 10px 30px;
    font-size: 14px !important;
    font-weight: 500;
    letter-spacing: 0;
    text-transform: none;
}
.cont01_wrap .right .block .main_btn:hover { background: #99562C; color: #ffff;}

/* ─── 상담전화 영역 (Figma: 우측 정렬) ──── */
.call_wrap {
    display: flex;
    justify-content: flex-end;  /* 오른쪽 정렬 */
}
.call_wrap .call_right {
    display: flex;
    align-items: center;
    gap: 15px;
    float: none;
    width: auto;
    max-width: none;
}
/* 초록 원형 아이콘 중앙 정렬 */
.call_icon_circle {
    flex-shrink: 0;
    width: 50px;
    height: 50px;
    background: #594E45;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
}
.call_icon_circle img {
    width: 26px;
    height: 26px;
    display: block;
    float: none;
    margin: 0;
    display: block;
}
.call_wrap .call_right .text {
    float: none;
    width: auto;
}
.call_wrap .call_right .text p {
    background: none;
    color: #3b3b3b;
    font-size: 17px;
    font-weight: 500;
    letter-spacing: -1.44px;
    display: block;
    padding: 0;
    margin-bottom: 5px;
    word-break: keep-all;
    line-height: 130%;
}
.call_nums { display: flex; gap: 20px; flex-wrap: wrap;row-gap: 0;}
.call_wrap .call_right .text strong {
    font-size: 17px;
    line-height: 1.4;
    display: flex;
    align-items: center;
    gap: 8px;
}
.call_wrap .call_right .text strong span {
    font-weight: 500;
    color: #3b3b3b;
    float: none;
    width: auto;
    margin: 0;
    display: inline;
}
.call_wrap .call_right .text strong b {
    font-weight: 700;
    color: #594E45;
    float: none;
    width: auto;
    display: inline;
    letter-spacing: -1px;
}

/* ─── 서브 상단 배너 ─────────────────────── */
.sub_top {
    background: url(/img/sub_top.jpg) center center no-repeat;
    background-size: cover;
    position: relative;
    min-height: 180px;
    display: flex;
    align-items: center;
}
.sub_top::after {
    content: '';
    position: absolute;
    top: 0; left: 0; right: 0; bottom: 0;
    background: rgba(0, 0, 0, 0.48);
    z-index: 0;
}
.sub_top_text {
    position: relative;
    z-index: 1;
    padding: 0 50px;
    color: #fff;
}
.sub_top_text strong {
    display: block;
    font-size: 28px;
    font-weight: 700;
    color: #fff !important;
    margin-bottom: 8px;
    font-family: 'Pretendard', 'Noto Sans KR', sans-serif;
}
.sub_top_text strong b { color: #fff !important; }
.sub_top_text p {
    font-size: 14px;
    color: rgba(255,255,255,0.85) !important;
    line-height: 1.7;
    margin: 0;
}

/* ─── 좌측 SNB 서브메뉴 ──────────────────── */
#snb > li > ul > li.snb2d.active a {
    background: #4AA456 !important;
    color: #fff !important;
}
#snb > li > ul > li a:hover {
    background: #edf7f1;
    color: #4AA456;
    padding-left: 22px;
}

/* ─── 좌측 상담전화 아이콘 ───────────────── */
.left_call span { color: #4AA456; }

/* ─── 서브 페이지 강조 텍스트 ───────────── */
.sub_tit2 { color: #4AA456; }
.sub0201 .sub_tit2 b { color: #4AA456; }
.sub_tit h4::after { background: #d4ede0; }

/* ─── 버튼 ───────────────────────────────── */
.btn_submit, .btn_submit:link { background: #4AA456; }
.btn_submit:hover              { background: #017A33; }
.pg_current                    { background: #4AA456; }

/* ─── 링크 호버 ──────────────────────────── */
a:hover { color: #4AA456; }

/* ─── 푸터 ───────────────────────────────── */
#ft {
    background: #111111;
    padding: 30px 0;
}
#ft .ft_text { color: #B1B1B1; }
#ft .ft_text a { color: #B1B1B1; }
#ft .ft_text a:hover { color: #ffffff; }
#ft .ft_link a {
    color: #cccccc;
    border-color: #444;
}
#ft .ft_link a:hover { color: #fff; }
#ft p.copy { color: #888; }

/* ─── TOP 버튼 ───────────────────────────── */
#top_btn {
    background: #4AA456;
    border: 0;
    color: #fff;
}
#top_btn:hover { background: #017A33; }


/* ════════════════════════════════════════════
   서브 페이지 공통
════════════════════════════════════════════ */

/* ─── 탭 네비게이션 ── */
.sub_tab {
    display: flex;
    gap: 4px;
    margin-bottom: 30px;
    background: #f5f5f5;
    border-radius: 50px !important;
    padding: 6px 8px;
    flex-wrap: nowrap;
    overflow-x: auto;
}
.sub_tab_item {
    display: inline-flex;
    align-items: center;
    padding: 9px 20px;
    font-size: 16px;
    color: #737373;
    text-decoration: none;
    border: none !important;
    border-radius: 50px !important;
    background: transparent;
    font-weight: 600;
    white-space: nowrap;
    flex-shrink: 0;
    transition: none;
}
.sub_tab_item.active {
    background: #4AA456 !important;
    color: #fff !important;
    border-radius: 50px !important;
    text-decoration: none;
}
.sub_tab_item:hover:not(.active) {
    color: #444;
    text-decoration: none;
}
.sub_tab_content { display: none; }
.sub_tab_content.active { display: block; }

/* ─── 서브 공통 제목 ─────────────────────── */
.sub_tit {
    text-align: left;
    margin-bottom: 20px;
    margin-top: 35px;
    padding-bottom: 10px;
    border-bottom: 2px solid #4AA456;
}
.sub_tit:first-of-type { margin-top: 0; }
.sub_tit h4 {
    font-size: 19px;
    font-weight: 700;
    color: #1a1a1a;
}
.sub_tit h4::after { display: none; }

/* ─── 회사소개 레이아웃 (Figma px 기준) ──── */
/* Figma: 840px 콘텐츠 기준. 텍스트 405px, 이미지 360x254px, 갭 50px */
.ci_intro_row {
    display: flex;
    gap: 40px;
    align-items: flex-start;
    margin-bottom: 0;
}
.ci_intro_text { flex: 1; min-width: 0; }
.ci_intro_heading {
    font-size: 22px;
    font-weight: 700;
    color: #222;
    margin-bottom: 14px;
    margin-top: 0;
}
.ci_intro_bold {
    font-size: 19px;
    font-weight: 700;
    color: #222;
    line-height: 1.7;
    margin-bottom: 16px;
}
.ci_intro_body {
    font-size: 16px;
    color: #444;
    line-height: 1.9;
    margin: 0;
}

/* 브랜드 센터 (Figma: h=116px, fs=25px, fw=700) */
.ci_brand_center {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 16px;
    padding: 28px 20px;
    margin: 30px 0;
    background: #fff;
    border-top: 1px solid #e5e5e5;
    border-bottom: 1px solid #e5e5e5;
    font-size: 20px;
    font-weight: 700;
    color: #2b2b2b;
}
.ci_brand_center img {
    height: 32px;
    width: auto;
    vertical-align: middle;
}

/* 대표이사 인사말 (Figma: 제목 fs=18, fw=700 / 본문 fs=16, fw=400) */
.ci_ceo_section { margin-top: 0; }
.ci_ceo_title {
    font-size: 18px;
    font-weight: 700;
    color: #222;
    margin-top: 0;
    margin-bottom: 16px;
    padding-bottom: 12px;
    border-bottom: 1px solid #ddd;
}
.ci_ceo_section > p {
    font-size: 16px;
    color: #444;
    line-height: 1.9;
    margin-top: 0;
    margin-bottom: 12px;
}
.ci_ceo_section > p:last-of-type { margin-bottom: 0; }
.ci_ceo_sign {
    font-size: 16px;
    font-weight: 600;
    color: #222;
    margin-top: 4px;
    margin-bottom: 0;
}

/* 구형 클래스 유지 (다른 페이지 영향 방지) */
.company_intro_layout {
    display: flex;
    gap: 30px;
    align-items: flex-start;
    margin-bottom: 30px;
}
.company_intro_content { flex: 1; }
.company_intro_img_wrap {
    flex-shrink: 0;
    width: 200px;
}
.company_intro_img_wrap img {
    width: 200px;
    height: 200px;
    object-fit: cover;
    border-radius: 4px;
    border: 1px solid #e5f2ec;
}

.company_intro_text {
    font-size: 16px;
    font-weight: 700;
    color: #4AA456;
    margin-bottom: 14px;
    padding: 12px 18px;
    border-left: 4px solid #4AA456;
    background: #f0f9f4;
    border-radius: 0 6px 6px 0;
}
.company_intro_content > p {
    color: #444;
    line-height: 1.9;
    font-size: 0.96em;
}

/* CEO 메시지 */
.ceo_message { margin-bottom: 30px; }
.ceo_message_text {
    background: #fafafa;
    border: 1px solid #eee;
    border-radius: 8px;
    padding: 25px 28px;
}
.ceo_message_text p { color: #444; line-height: 1.95; font-size: 0.96em; margin-bottom: 12px; }
.ceo_sign {
    margin-top: 18px;
    text-align: right;
    font-size: 0.95em;
    color: #555;
    border-top: 1px solid #eee;
    padding-top: 14px;
}

/* 회사 기본 정보 테이블 */
.company_info_table { width: 100%; border-collapse: collapse; margin-top: 15px; font-size: 14px; }
.company_info_table th {
    width: 150px;
    padding: 11px 15px;
    background: #f0f9f4;
    border: 1px solid #d8edd8;
    font-weight: 600;
    color: #4AA456;
    text-align: left;
}
.company_info_table td {
    padding: 11px 15px;
    border: 1px solid #e0e0e0;
    color: #444;
    word-break: keep-all;
    line-height: 1.6;
}
.company_info_table tr:nth-child(even) td { background: #fafafa; }

/* ─── 사업목표 ───────────────────────────── */
.business_goals { display: flex; flex-direction: column; gap: 12px; margin-top: 10px; }
.business_goal_item {
    display: flex;
    align-items: flex-start;
    gap: 18px;
    padding: 18px 22px;
    border: 1px solid #e5efe5;
    border-radius: 10px;
    background: #fafdf9;
    transition: border-color 0.2s;
}
.business_goal_item:hover { border-color: #4AA456; }
.business_goal_num {
    width: 42px;
    height: 42px;
    min-width: 42px;
    background: #4AA456;
    color: #fff;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 700;
    font-size: 15px;
    letter-spacing: -0.5px;
}
.business_goal_text h5 { font-size: 15px; font-weight: 700; color: #111; margin-bottom: 5px; }
.business_goal_text p  { font-size: 13px; color: #666; line-height: 1.6; }

/* ─── 수상 그리드 ────────────────────────── */
.award_grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 14px;
    margin-top: 15px;
}
.award_item {
    border: 1px solid #e5efe5;
    border-radius: 10px;
    overflow: hidden;
    text-align: center;
    background: #fff;
    transition: box-shadow 0.2s;
}
.award_item:hover { box-shadow: 0 3px 12px rgba(1,150,63,0.1); }
.award_item img { width: 100%; height: 160px; object-fit: cover; display: block; }
.award_item p { padding: 10px 8px; font-size: 12px; color: #555; line-height: 1.5; }

/* ─── 인증 그리드 ────────────────────────── */
.cert_grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 14px;
    margin-top: 15px;
}
.cert_item {
    border: 1px solid #e5efe5;
    border-radius: 10px;
    overflow: hidden;
    text-align: center;
    background: #fff;
    transition: box-shadow 0.2s;
}
.cert_item:hover { box-shadow: 0 3px 12px rgba(1,150,63,0.1); }
.cert_item p { padding: 10px 8px; font-size: 12px; color: #555; line-height: 1.5; }

/* ─── CI ─────────────────────────────────── */
.ci_wrap { text-align: center; padding: 40px 30px; border: 1px solid #e5efe5; border-radius: 10px; background: #fafdf9; }
.ci_logo_box { margin: 0 auto 20px; max-width: 360px; }
.ci_logo_box img { max-width: 100%; height: auto; }
.ci_desc { color: #555; font-size: 14px; line-height: 1.9; margin-top: 16px; }

/* ─── 식품안전 ───────────────────────────── */
.safety_policy_intro {
    background: #f0f9f4;
    border-left: 4px solid #4AA456;
    padding: 16px 20px;
    color: #444;
    line-height: 1.85;
    margin-bottom: 25px;
    border-radius: 0 8px 8px 0;
    font-size: 14px;
}
.safety_cards {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 16px;
    margin-top: 15px;
}
.safety_card {
    border: 1px solid #e5efe9;
    border-radius: 10px;
    padding: 22px 20px;
    background: #fafdf9;
    transition: box-shadow 0.2s;
}
.safety_card:hover { box-shadow: 0 3px 12px rgba(1,150,63,0.1); }
.safety_card_icon { margin-bottom: 12px; }
.safety_card h5 { font-size: 14px; font-weight: 700; color: #111; margin-bottom: 8px; }
.safety_card p  { font-size: 13px; color: #666; line-height: 1.65; }

.haccp_box {
    background: #f0f9f4;
    border: 1px solid #c5e8d3;
    border-radius: 10px;
    padding: 22px 26px;
    margin-top: 15px;
}
.haccp_box h5 { font-size: 15px; font-weight: 700; color: #4AA456; margin-bottom: 10px; }
.haccp_box p  { font-size: 13px; color: #444; line-height: 1.85; }

/* ─── 품질경영 ───────────────────────────── */
.quality_items { display: flex; flex-direction: column; gap: 18px; margin-top: 10px; }
.quality_item {
    display: flex;
    gap: 20px;
    align-items: flex-start;
    padding: 20px 24px;
    border: 1px solid #e5efe5;
    border-radius: 10px;
    background: #fafdf9;
}
.quality_item_icon {
    width: 56px;
    height: 56px;
    min-width: 56px;
    background: #f0f9f4;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
}
.quality_item h5 { font-size: 15px; font-weight: 700; color: #111; margin-bottom: 8px; }
.quality_item p  { font-size: 13px; color: #555; line-height: 1.75; }

.safety_policy_list {
    margin: 15px 0 0 0;
    padding-left: 20px;
}
.safety_policy_list li {
    color: #444;
    font-size: 14px;
    line-height: 1.85;
    margin-bottom: 10px;
    padding-left: 8px;
}

/* ─── 제품소개 ───────────────────────────── */
.product_section { margin-bottom: 45px; }
.product_section_title {
    font-size: 17px;
    font-weight: 700;
    color: #4AA456;
    border-bottom: 2px solid #4AA456;
    padding-bottom: 8px;
    margin-bottom: 18px;
}
.owl-carousel-wrap { overflow: hidden; }
.owl-item-custom { text-align: center; padding: 10px; }
.owl-item-custom img { max-width: 100%; height: 200px; object-fit: contain; margin: 0 auto 10px; display: block; }
.owl-item-custom p { font-size: 13px; color: #555; }

/* ─── 협력/문의 ──────────────────────────── */
.partner_intro {
    background: #f0f9f4;
    border-left: 4px solid #4AA456;
    padding: 18px 22px;
    color: #444;
    line-height: 1.9;
    margin-bottom: 30px;
    border-radius: 0 8px 8px 0;
    font-size: 16px;
}
.partner_features {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
    margin-bottom: 30px;
}
.partner_feature {
    text-align: center;
    padding: 30px 20px;
    border: 1px solid #e5efe9;
    border-radius: 10px;
    background: #fafdf9;
}
.partner_feature svg { margin: 0 auto 15px; display: block; }
.partner_feature h5 { font-size: 15px; font-weight: 600; color: #222; margin-bottom: 10px; }
.partner_feature p  { font-size: 13px; color: #666; line-height: 1.6; }

/* ─── 식품안전 전체 텍스트 ───────────────── */
.safety_full_text {
    background: #f9fdf9;
    border: 1px solid #e5efe5;
    border-radius: 10px;
    padding: 24px 28px;
    margin-top: 5px;
    margin-bottom: 0;
}
.safety_full_text p {
    color: #444;
    font-size: 14px;
    line-height: 1.9;
    margin-bottom: 12px;
}
.safety_full_text p:last-child { margin-bottom: 0; }
.safety_full_text strong { color: #4AA456; }

/* ─── 식품안전회의 박스 ───────────────────── */
.safety_meeting_box {
    background: #f0f9f4;
    border-left: 4px solid #4AA456;
    padding: 20px 24px;
    border-radius: 0 8px 8px 0;
    margin-top: 5px;
}
.safety_meeting_box p {
    color: #444;
    font-size: 14px;
    line-height: 1.9;
    margin-bottom: 10px;
}
.safety_meeting_box p:last-child { margin-bottom: 0; }

/* ─── HACCP 정의 박스 ────────────────────── */
.haccp_def_box {
    background: #fff;
    border: 1px solid #c5e8d3;
    border-radius: 10px;
    padding: 24px 28px;
    margin-top: 5px;
}
.haccp_def_title {
    font-size: 14px;
    font-weight: 700;
    color: #4AA456;
    margin-bottom: 14px;
    padding-bottom: 10px;
    border-bottom: 1px solid #d5eed8;
}
.haccp_def_box p {
    color: #444;
    font-size: 14px;
    line-height: 1.9;
    margin-bottom: 10px;
}
.haccp_def_box p:last-child { margin-bottom: 0; }
.haccp_def_em {
    color: #4AA456 !important;
    font-weight: 600;
    background: #f0f9f4;
    padding: 10px 15px;
    border-radius: 6px;
}

/* ─── HACCP 14단계 공정 ───────────────────── */
.haccp_process_wrap { margin-top: 5px; }
.haccp_steps_grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 10px;
}
.haccp_step {
    border: 1px solid #d5eed8;
    border-radius: 8px;
    background: #fff;
    overflow: hidden;
    transition: box-shadow 0.2s;
}
.haccp_step:hover { box-shadow: 0 3px 10px rgba(1,150,63,0.12); }
.haccp_step_header {
    display: flex;
    align-items: center;
    gap: 12px;
    background: #f0f9f4;
    padding: 10px 16px;
}
.haccp_step_num {
    width: 36px;
    height: 36px;
    min-width: 36px;
    background: #4AA456;
    color: #fff;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 12px;
    font-weight: 700;
}
.haccp_step_name {
    font-size: 14px;
    font-weight: 700;
    color: #1a1a1a;
}
.haccp_step_desc {
    padding: 10px 16px;
    font-size: 12px;
    color: #555;
    line-height: 1.7;
}

/* ─── sub_tit2 ───────────────────────────── */
.sub_tit2 { color: #4AA456; }

/* ─── 오시는길 지도/테이블 ──────────────── */
.map_tbl { width: 100%; border-collapse: collapse; font-size: 14px; }
.map_tbl th {
    width: 80px;
    padding: 10px 14px;
    background: #f0f9f4;
    border: 1px solid #d5eed8;
    font-weight: 600;
    color: #4AA456;
    text-align: left;
}
.map_tbl td {
    padding: 10px 14px;
    border: 1px solid #e0e0e0;
    color: #444;
}
.location_table { width: 100%; border-collapse: collapse; font-size: 13px; margin-top: 10px; }
.location_table thead th {
    padding: 10px 12px;
    background: #4AA456;
    color: #fff;
    font-weight: 600;
    border: 1px solid #017A33;
    text-align: center;
}
.location_table tbody td {
    padding: 10px 12px;
    border: 1px solid #ddd;
    color: #444;
    vertical-align: middle;
}
.location_table tbody tr:nth-child(even) td { background: #fafdf9; }
.location_badge {
    display: inline-block;
    padding: 2px 8px;
    background: #4AA456;
    color: #fff;
    border-radius: 3px;
    font-size: 11px;
    font-weight: 600;
    margin-right: 5px;
    vertical-align: middle;
}

/* ─── 반응형 ─────────────────────────────── */




/* ─── 모바일: 메인 블록 자세히보기 버튼 ─── */


/* ── 오시는길 반응형 ── */



/* ── 제품소개 반응형 ── */


/* ─── 신미씨앤에프 서브 반응형 ─────────────────────────────── */
/* ─── 반응형 ─────────────────────────────── */




/* ─── 모바일: 메인 블록 자세히보기 버튼 ─── */

/* ══════════════════════════════════════
   서브페이지 탭 버튼 (pill style)
══════════════════════════════════════ */
.sub_tab_pill_wrap {
    background: #f5f5f5;
    border-radius: 60px;
    display: flex;
    align-items: stretch;
    overflow: hidden;
    margin-bottom: 35px;
    padding-right: 20px;
}
.sub_tab_pill {
    display: inline-flex;
    align-items: center;
    padding: 14px 22px;
    font-size: 16px;
    font-weight: 600;
    color: #666;
    text-decoration: none;
    border-radius: 30px 30px 0 30px;
    white-space: nowrap;
    transition: color 0.2s;
}
.sub_tab_pill.active {
    background: #4AA456;
    color: #fff;
    border-radius: 30px 30px 30px 0;
}
.sub_tab_pill:hover:not(.active) { color: #4AA456; }



/* ══════════════════════════════════════
   서브페이지 반응형 (sub0101_01 ~ sub0103_01)
══════════════════════════════════════ */



