@charset "utf-8";

@font-face {
  font-family: 'Pretendard';
  src: url('https://cdn.jsdelivr.net/gh/Project-Noonnu/noonfonts_2107@1.1/Pretendard-Thin.woff') format('woff');
  font-weight: 100;
  font-style: normal;
}

@font-face {
  font-family: 'Pretendard';
  src: url('https://cdn.jsdelivr.net/gh/Project-Noonnu/noonfonts_2107@1.1/Pretendard-ExtraLight.woff') format('woff');
  font-weight: 200;
  font-style: normal;
}

@font-face {
  font-family: 'Pretendard';
  src: url('https://cdn.jsdelivr.net/gh/Project-Noonnu/noonfonts_2107@1.1/Pretendard-Light.woff') format('woff');
  font-weight: 300;
  font-style: normal;
}

@font-face {
  font-family: 'Pretendard';
  src: url('https://cdn.jsdelivr.net/gh/Project-Noonnu/noonfonts_2107@1.1/Pretendard-Regular.woff') format('woff');
  font-weight: 400;
  font-style: normal;
}

@font-face {
  font-family: 'Pretendard';
  src: url('https://cdn.jsdelivr.net/gh/Project-Noonnu/noonfonts_2107@1.1/Pretendard-Medium.woff') format('woff');
  font-weight: 500;
  font-style: normal;
}

@font-face {
  font-family: 'Pretendard';
  src: url('https://cdn.jsdelivr.net/gh/Project-Noonnu/noonfonts_2107@1.1/Pretendard-SemiBold.woff') format('woff');
  font-weight: 600;
  font-style: normal;
}

@font-face {
  font-family: 'Pretendard';
  src: url('https://cdn.jsdelivr.net/gh/Project-Noonnu/noonfonts_2107@1.1/Pretendard-Bold.woff') format('woff');
  font-weight: 700;
  font-style: normal;
}

@font-face {
  font-family: 'Pretendard';
  src: url('https://cdn.jsdelivr.net/gh/Project-Noonnu/noonfonts_2107@1.1/Pretendard-ExtraBold.woff') format('woff');
  font-weight: 800;
  font-style: normal;
}

@font-face {
  font-family: 'Pretendard';
  src: url('https://cdn.jsdelivr.net/gh/Project-Noonnu/noonfonts_2107@1.1/Pretendard-Black.woff') format('woff');
  font-weight: 900;
  font-style: normal;
}
@font-face {
    font-family: 'JeongseonArirang';
    src: url('https://cdn.jsdelivr.net/gh/projectnoonnu/noonfonts_2001@1.1/JSArirang-RegularA1.woff') format('woff');
    font-weight: normal;
    font-display: swap;
}


@font-face {
    font-family: 'Paperozi';
    src: url('https://cdn.jsdelivr.net/gh/projectnoonnu/2408-3@1.0/Paperlogy-1Thin.woff2') format('woff2');
    font-weight: 100;
    font-display: swap;
}

@font-face {
    font-family: 'Paperozi';
    src: url('https://cdn.jsdelivr.net/gh/projectnoonnu/2408-3@1.0/Paperlogy-2ExtraLight.woff2') format('woff2');
    font-weight: 200;
    font-display: swap;
}

@font-face {
    font-family: 'Paperozi';
    src: url('https://cdn.jsdelivr.net/gh/projectnoonnu/2408-3@1.0/Paperlogy-3Light.woff2') format('woff2');
    font-weight: 300;
    font-display: swap;
}

@font-face {
    font-family: 'Paperozi';
    src: url('https://cdn.jsdelivr.net/gh/projectnoonnu/2408-3@1.0/Paperlogy-4Regular.woff2') format('woff2');
    font-weight: 400;
    font-display: swap;
}

@font-face {
    font-family: 'Paperozi';
    src: url('https://cdn.jsdelivr.net/gh/projectnoonnu/2408-3@1.0/Paperlogy-5Medium.woff2') format('woff2');
    font-weight: 500;
    font-display: swap;
}

@font-face {
    font-family: 'Paperozi';
    src: url('https://cdn.jsdelivr.net/gh/projectnoonnu/2408-3@1.0/Paperlogy-6SemiBold.woff2') format('woff2');
    font-weight: 600;
    font-display: swap;
}

@font-face {
    font-family: 'Paperozi';
    src: url('https://cdn.jsdelivr.net/gh/projectnoonnu/2408-3@1.0/Paperlogy-7Bold.woff2') format('woff2');
    font-weight: 700;
    font-display: swap;
}

@font-face {
    font-family: 'Paperozi';
    src: url('https://cdn.jsdelivr.net/gh/projectnoonnu/2408-3@1.0/Paperlogy-8ExtraBold.woff2') format('woff2');
    font-weight: 800;
    font-display: swap;
}

@font-face {
    font-family: 'Paperozi';
    src: url('https://cdn.jsdelivr.net/gh/projectnoonnu/2408-3@1.0/Paperlogy-9Black.woff2') format('woff2');
    font-weight: 900;
    font-display: swap;
}

/* 초기화 */
html {overflow-y:scroll}
body {margin:0;padding:0;font-size:0.75em;font-family:'Pretendard', sans-serif;background:#fff}
body.gnb_open {
    overflow: hidden !important;
    height: 100vh;
    touch-action: none;
}

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', 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:'Pretendard', sans-serif;font-size:1em}
input[type="submit"] {cursor:pointer}
button {cursor:pointer}

textarea, select {font-family:'Pretendard', 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 {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}

.fp-watermark {display: none;}

/* 팝업레이어 */
#hd_pop {z-index:1000;position:relative;margin:0 auto;height:0}
#hd_pop h2 {position:absolute;font-size:0;line-height:0;overflow:hidden}
.hd_pops {position:absolute;border:1px solid #e9e9e9;background:#fff}
.hd_pops img {max-width:100%}
.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 {position: fixed; width: 100%; transition: 0.3s; z-index: 9999;}
/* #hd.scrolled {background: rgba(255, 255, 255, 0.7); backdrop-filter: blur(3px);} */
#hd_h1 {position:absolute;font-size:0;line-height:0;overflow:hidden}

#hd_wrapper {position:relative; zoom:1;justify-content: space-between;}
#hd_wrapper:after {display:block;visibility:hidden;clear:both;content:""}

#hd_wrapper #inner{margin: 0 auto;}

#logo {float:left; line-height: 100px; width: 12%;}
#logo img.scrolldown {display: inline-block;}
.scrolled #logo img.scrolltop {display: none;}
.scrolled #logo img.scrolldown {display: inline-block; filter: unset;}

#hd_define {float:left}
#hd_define:after {display:block;visibility:hidden;clear:both;content:""}
#hd_define li {float:left;font-size:1.083em;line-height:14px;border-right:1px solid #4a4a4a;position:relative;text-align:center;margin:15px 10px 15px 0;padding-right:10px}
#hd_define li:last-child {padding-right:0;margin-right:0;border-right:0}
#hd_define li a {display:inline-block;color:#919191}
#hd_define li.active a {color:#fff}


#hd_qnb {float:right;text-align:right}
#hd_qnb:after {display:block;visibility:hidden;clear:both;content:""}
#hd_qnb li {float:left;font-size:1.083em;line-height:14px;border-right:1px solid #4a4a4a;position:relative;text-align:center;margin:15px 10px 15px 0;padding-right:10px}
#hd_qnb li:last-child {padding-right:0;margin-right:0;border-right:0}
#hd_qnb li span {display:block;margin-top:5px;font-size:0.92em}
#hd_qnb li a {display:inline-block;color:#919191}
#hd_qnb .visit .visit-num {display:inline-block;line-height:16px;padding:0 5px;margin-left:5px;border-radius:10px;background:#da22f5;color:#fff;font-size:10px}

.hd_lang {float: right; margin: 34px 50px 0 0;}
.hd_lang li {position: relative; float:left; padding: 0 10px;line-height:13px}
.hd_lang li:not(:last-child):after {position: absolute; display: block; content: "|"; top: 9.5px; right: -4px; font-size: 20px; font-weight: 700; color: #fff; transition: 0.3s;}
.scrolled .hd_lang li:not(:last-child):after {color: #333;}
.hd_lang li a {display: block; padding: 10px; font-size: 20px; font-weight: 700; color: #fff; transition: 0.3s;}
.scrolled .hd_lang li a {color: #333;}
.hd_lang li.on a {color: #2065ca;}
.hd_lang:after {clear: both; content: ""; display: block;}

/* 메인메뉴 */
#gnb > h2 {position:absolute;font-size:0;line-height:0;overflow:hidden}
#gnb .gnb_wrap {margin:0 auto;position:relative}
#gnb .gnb_wrap:hover, #gnb .gnb_wrap:focus, #gnb .gnb_wrap:active{z-index:3}
#gnb #gnb_1dul {font-size:1.083em;padding:0; zoom:1}
#gnb ul:after {display:block;visibility:hidden;clear:both;content:""}
#gnb .gnb_1dli {float:left;line-height:100px;padding:0px;position:relative}
#gnb .gnb_1dli:hover > a {opacity: 1;
-webkit-transition:background-color 2s 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}

.gnb_1da{display:block;padding:0 30px;color:#fff;text-decoration:none;font-size:20px;font-weight:400;opacity:0.8}
.scrolled .gnb_1da{color:#000}
.gnb_2dli:first-child{border:0}
.gnb_2dul{display:block;position:absolute;top:90px;left:0;min-width:220px;opacity:0;transform:translateY(10px);visibility:hidden;transition:all 0.3s ease; border-radius: 10px; overflow: hidden;}
.gnb_1dli:hover>.gnb_2dul,.gnb_1dli.gnb_1dli_over>.gnb_2dul,.gnb_1dli.gnb_1dli_over2>.gnb_2dul{opacity:1;transform:translateY(0);visibility:visible;z-index:1000}
.gnb_2dul .gnb_2dul_box{padding:0}
.gnb_2dul .gnb_2dul_box li{border:0;margin:0;padding:0}
.gnb_2da{display:block;padding:16px 14px;font-size:16px;line-height:1.4;font-weight:400;color:#fff;text-align:left;text-decoration:none;background:#111;border-bottom:1px solid rgba(255,255,255,0.05);transition:all 0.25s ease}
a.gnb_2da:hover{background:rgb(15,71,134);color:#fff}
.gnb_2da:focus,.gnb_2da:hover{color:#fff}
.gnb_1dli_over .gnb_2dul{display:block}
.gnb_1dli_over2 .gnb_2dul{display:block;left:0}
.gnb_wrap .gnb_empty{padding:10px 0;width:100%;text-align:center;line-height:2.7em;color:#080808}
.gnb_wrap .gnb_empty a{color:#3a8afd;text-decoration:underline}
.gnb_wrap .gnb_al_ul .gnb_empty,.gnb_wrap .gnb_al_ul .gnb_empty a{color:#555}



/* 모바일메뉴 */
#gnb_mobile{position:fixed; right: -55%; width: 50%; z-index: 1000; transition: 0.7s;}
#gnb_mobile.on {right: 0;}
.gnb_mobile_wr{z-index:1000; background: #fff; padding: 80px 40px 40px; width: 100%; height: 100vh; box-shadow: -2px 0px 5px rgba(0,0,0,0.2); overflow-y: auto;-webkit-overflow-scrolling: touch;}

#gnb_all h2 {font-size:0em;padding:15px 20px;border-bottom:1px solid #e7eeef}
#gnb_all .gnb_al_ul:after {display:block;visibility:hidden;clear:both;content:""}
#gnb_all .gnb_al_li {width: 100%;  position: relative;}
#gnb_all .gnb_al_li .gnb_al_a {font-size: 44px; display:block;position:relative; font-weight: 700; color: #1d4073;  padding: 36px 18px; transition: 0.3s;}
#gnb_all .gnb_al_li li {display: inline-block; margin: 0 10px 10px 0; border-radius: 30px; background: #f5f5f5; transition: 0.3s;}
#gnb_all .gnb_al_li li:hover {background: #1d4073;}
#gnb_all .gnb_al_li li a {display: block; padding: 10px 26px; font-size: 24px; font-weight: 400;  color:#999; transition: 0.3s;}
#gnb_all .gnb_al_li li:hover a {color: #fff;}
#gnb_all_bg {display:none;background:rgba(0,0,0,0.1);width:100%;height:100%;position:fixed;left:0;top:0;z-index:999}

.gnb_menu_btn {float: right; border: 0; background: none; line-height: 40px;}
.gnb_menu_btn img.scrolldown {display: none;}
.scrolled .gnb_menu_btn img.scrolltop {display: none;}
.scrolled .gnb_menu_btn img.scrolldown {display: inline-block;}
#gnb_mobile .gnb_close_btn {background:none; border:0; width: 25px;vertical-align:top;font-size:28px; position: absolute; top: 25px; right: 50px;}
#gnb_mobile .gnb_close_btn img {transition: 0.3s;}
#gnb_mobile .gnb_close_btn:hover img {transform: rotate(180deg);}
#gnb_mobile .gnb_mnal {float:right;padding:0}

.gnb_al_li button {position:absolute;top: 0px; height: 124px; overflow:hidden; border:0; padding-left: 100%; background: none;}
#gnb_mobile .gnb_al_ul2{display: none;}

.m_login{text-align: center; margin-top: 30px;}
.m_login a{ font-size: 15px; border: 1px solid #cdcdcd;
  border-radius: 30px; padding: 5px 20px; font-weight: 300; color: #666; display: inline-block;}

.m_lang{text-align: center; margin-top: 84px;}
.m_lang a{font-size: 28px; font-weight: 400; border: 1px solid #777; border-radius: 30px; padding: 5px 40px; font-weight: 300; color: #777; display: inline-block; }
.m_lang a:first-child {margin-right: 10px;}
.m_lang a.on {border-color: #1d4073; font-weight: 600; background: #1d4073; color: #fff;}


@media screen and (max-width: 1500px) {
  .hd_lang {margin-right: 20px;}
  #gnb .gnb_1dli {margin: 0 20px;}
  .gnb_1da {padding: 0 14px;}
  #gnb {display: none;}
}

@media screen and (max-width: 1200px) {
  #hd_wrapper #inner{padding: 0 30px;}

}
@media screen and (max-width: 1100px){
  .hd_login{margin-right: 40px;}
}

@media screen and (max-width: 960px) {
  #logo {margin-left: 0;}
  #gnb_mobile {width: 100%; right: -105%;}
  #gnb_mobile .gnb_close_btn {right: 40px;}
  .gnb_mobile_wr {padding-right: 80px;}
}

@media screen and (max-width: 640px) {
  #hd_wrapper #inner {padding: 0 20px;}
  .hd_login{display: none;}
  .hd_lang{display: none;}
  #logo{line-height: 60px;}
  #logo img{height: 40px;}
  .gnb_menu_btn{line-height: 60px;}
  .gnb_menu_btn img {margin-bottom: 5px;}
  #gnb_mobile .gnb_close_btn{top: 7px; right: 20px;}
  .gnb_mobile_wr {padding: 40px 20px 20px;}
  .gnb_al_li button {height: 54px;}
  .gnb_al_li button i {font-size: 18px;}
  #gnb_all .gnb_al_li .gnb_al_a {padding: 16px 14px; font-size: 26px;}
  #gnb_all .gnb_al_li li {margin: 0 6px 6px 0;}
  #gnb_all .gnb_al_li li a {padding: 10px 18px; font-size: 16px;}
  .m_lang {margin-top: 34px;}
  .m_lang a {padding: 4px 16px; font-size: 18px;}
  .m_lang a:first-child {margin-right: 6px;}
}


/* 중간 레이아웃 */
#container_wr:after {display:block;visibility:hidden;clear:both;content:""}
#container_wr {margin:0 auto;height:100%; zoom:1;position: relative;}
#container_page {width: 100%; margin: 0 auto 50px;}
#aside {float:right;width:235px;padding:0;height:100%;margin:20px 0 20px 20px}

#container {position:relative;height:auto !important;margin: 0 auto; height:500px;font-size:1em;width:100%; max-width: 1400px; zoom:1; margin-bottom: 100px;}
#container:after {display:block;visibility:hidden;clear:both;content:""}
#container_title {font-size:1.333em;margin:0 auto;font-weight:bold}
#container_title span {margin:0 auto 10px;display:block;line-height:30px}

.lt_wr {width:32%}
.lt_wr:nth-child(3n+1) {clear:both}
.latest_wr {margin-bottom:20px}
.latest_wr:after {display:block;visibility:hidden;clear:both;content:""}
.latest_top_wr {margin:0 -10px 20px}
.latest_top_wr:after {display:block;visibility:hidden;clear:both;content:""}

@media screen and (max-width: 1400px){
  #container{padding: 0 15px;}
  #container_page {padding: 0 15px;}
}
@media screen and (max-width: 640px) {
  #container {margin-bottom: 50px;}
  #container_page {margin-bottom: 50px;}
}


/* 풀페이지 우측 내비게이션 */
#fp-nav ul li:last-child {display: none;}
#fp-nav ul li a span {background: rgba(0, 0, 0, 0.5)!important;}
#fp-nav ul li a.active span {background:  #1d4073!important;}

.fp-viewing-2 #fp-nav ul li a span {background: rgba(255, 255, 255, 0.5)!important;}
.fp-viewing-2 #fp-nav ul li a.active span {background:#fff!important;}

/*메인 슬라이드*/


#main_slider {overflow:hidden; width:100%; position: relative;}
#main_slider .slider li{width:100%; height: 100vh; position: relative;}
/* #main_slider .slider li:after{display: block; content: ""; width: 100%; height: 100%; position: absolute; top: 0; background: rgba(0,0,0,0.4); z-index: 10;} */
#main_slider #slider01 {background:url(../images/slide_img01.jpg) no-repeat center; background-size: cover;}
#main_slider #slider02 {background:url(../images/slide_img02.jpg) no-repeat center; background-size: cover;}
#main_slider #slider03 {background:url(../images/slide_img03.jpg) no-repeat center; background-size: cover;}
#main_slider .slider_text {position: relative; display: flex; justify-content: center; align-items: center; flex-direction: column; height: 100%; padding: 100px 20px 0; opacity: 0; animation: slider_text forwards 1s; z-index: 11; margin-top: -40px;}
#main_slider .slider_text h2 {font-size: 65px; /*color: #1d4073;*/  background: linear-gradient(125deg, #1d4073, #4786b3);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent; text-align: center; line-height: 1.6; word-break: keep-all; font-family: 'Paperozi';}
#main_slider .slider_text h2 span {opacity:0; display:inline-block; font-size: inherit; word-break: keep-all;}
#main_slider .slider_text h2.show span {opacity:1; transition:opacity 0.05s; word-break: keep-all;}
#main_slider .slider_text h2.fadeout {opacity:0; transition:opacity 0.8s; word-break: keep-all;}
#main_slider .slider_text h2.fadein {opacity:1; transition:opacity 0.8s; word-break: keep-all;}
#main_slider .slider_text h2.scaleup {animation: scaleUp 0.6s ease forwards; word-break: keep-all;}
#main_slider .slider_text h2 .m_br {display: inline;}
/* #main_slider .slider_text span {color: #121212; font-size: 25px;} */
#main_slider .scroll {position: absolute; bottom: 50px; left: 50%; transform: translateX(-50%); text-align: center; animation: scrolldown infinite 3s;}
#main_slider .scroll p {margin-bottom: 16px; font-size: 16px; font-weight: 400; color: #000; text-transform: uppercase;}
#main_slider .scroll .mouse {display: inline-block; width: 36px; height: 60px; padding: 8px; border: 2px solid #000; border-radius: 18px;}
#main_slider .scroll .bar {display: inline-block; width: 2px; height: 14px; background: #000;}

@keyframes scaleUp {
  0% {transform: scale(1);}
  50% {transform: scale(1.15);}
  100% {transform: scale(1);}
}

@keyframes slider_text {
  0% {
    padding-top: 100px;
    opacity: 0;
  }

  100% {
    padding-top: 0;
    opacity: 1;
  }
}

@keyframes scrolldown {
  0% {
    bottom: 50px;
  }

  30% {
    bottom: 20px;
  }

  100% {
    bottom: 50px;
  }
}

@media screen and (max-width: 1400px) {
}

@media screen and (max-width: 960px) {
  #main_slider .slider_text h2 {font-size: 40px;}
  #main_slider .slider_text span {font-size: 22px;}
}

@media screen and (max-width: 640px){
  #main_slider .slider_text h2 {font-size: 30px;}
  #main_slider .slider_text h2 .m_br {display: block;}
  #main_slider .slider_text span {font-size: 18px;}
  #main_slider .scroll .mouse{    width: 21px;height: 45px;}
  #main_slider .scroll p{margin-bottom: 10px; font-size: 14px;}

}



/* con1 */
#con1 {position: relative; background: url(../images/con1_bg.jpg) no-repeat center; background-attachment: fixed; background-size: cover;}
#con1 .bg {position: absolute; width: 25%; height: 100%; top: 0; left: -25%; background: rgba(0, 0, 0, 0.5); transition: 0.7s; z-index: 1;}
#con1 ul {display: flex; background: rgba(0, 0, 0, 0.2); height: 100%; z-index: 2;}
#con1 ul li {width: 25%;}
#con1 ul li:not(:last-child) {border-right: 1px solid rgba(255, 255, 255, 0.3);}
#con1 ul li a {display: flex; justify-content: center; align-items: flex-start; flex-direction: column; width: 100%; height: 100%; padding: 46px;}
#con1 ul li a h2 {width: 100%; margin-bottom: 10px; font-size: 48px; font-weight: 800; color: #fff; white-space: nowrap;}
#con1 ul li a h3 {width: 100%; margin-bottom: 10px; font-size: 36px; font-weight: 800; color: #fff; word-break: keep-all;}
#con1 ul li a h4 {width: 100%; margin-bottom: 50px; font-size: 24px; font-weight: 300; color: #eee; word-break: keep-all;}
#con1 ul li a p {width: 100%; margin-bottom: 50px; font-size: 18px; font-weight: 200; color: #eee; line-height: 26px; word-break: keep-all;}
#con1 ul li a img {float: right; width: auto; transition: 0.3s;}
#con1 ul li:hover a img {padding-right: 20px;}
#con1 ul li a:after {clear: both; content: ""; display: block;}
.fp-viewing-3 #con1 ul li a {padding-top: 170px; opacity: 0; animation: con1_li forwards 1s;}
.fp-viewing-3 #con1 ul li:nth-child(1) a {animation-delay: 0.2s;}
.fp-viewing-3 #con1 ul li:nth-child(2) a {animation-delay: 0.4s;}
.fp-viewing-3 #con1 ul li:nth-child(3) a {animation-delay: 0.6s;}
.fp-viewing-3 #con1 ul li:nth-child(4) a {animation-delay: 0.8s;}

@keyframes con1_li {
  0% {padding-top: 170px; opacity: 0;}
  100% {padding-top: 70px; opacity: 1;}
}

@media screen and (max-width: 1400px) {
  #con1 ul li a p {display: none;}
}
@media screen and (max-width: 1200px) {
  #con1 ul li a {padding: 50px;}
}
@media screen and (max-width: 960px) {
  #con1 .bg {display: none;}
  #con1 ul {display: block; padding-top: 100px; overflow-y: auto; height: 100%;}
  #con1 ul li {width: 100%; height: 25%;}
  #con1 ul li:not(:last-child) {border-bottom: 1px solid rgba(255, 255, 255, 0.3); border-right: none;}
  #con1 ul li a {align-items: flex-start; padding: 20px 30px;}
  #con1 ul li a h2 {display: none;}
  #con1 ul li a h3 {margin-bottom: 4px; font-size: 22px;}
  #con1 ul li a h4 {margin-bottom: 0; font-size: 15px;}
  #con1 ul li a img {width: 40px;}
}
@media screen and (max-width: 640px) {
  #con1 ul {padding-top: 70px;}
  #con1 ul li a {padding: 16px 20px;}
  #con1 ul li a h3 {font-size: 18px;}
  #con1 ul li a h4 {font-size: 13px;}
  #con1 ul li a{gap: 10px;}
}
/* con1 */


/* con2 */
#con2 .con2_wrap {margin-top: 70px;}
#con2 .con2_title_area {text-align:center;margin-bottom:60px;}
#con2 .con2_main_title {font-size:60px;font-weight:800;color:#212121;letter-spacing:2px;margin:0 0 14px;}
#con2 .con2_sub_title {font-size:20px;color:#666;margin:0;letter-spacing:0.5px;}
#con2 .con2_list_wrap {display:flex;border-top:1px solid #ddd;border-bottom:1px solid #ddd;}
#con2 .con2_item {flex:1;position:relative;margin: 30px;}
#con2 .con2_item + .con2_item {border-left:1px solid #ddd;}
#con2 .con2_item_inner {padding:70px 40px 70px 40px;position:relative;min-height:300px;}
#con2 .con2_item_top {display:flex;align-items:center;gap:10px;margin-bottom:20px;}
#con2 .con2_num {font-size:28px;color:#666;font-weight:500;letter-spacing:1px;}
#con2 .con2_category {font-size:24px;color:#1d4073;}
#con2 .con2_item_title {font-size:38px;font-weight:700;color:#1a1a2e;line-height:1.35;margin:0 0 16px;}
#con2 .con2_item_desc {font-size:20px;color:#555;margin:0;line-height:1.7;}
#con2 .con2_item_img {position:absolute;bottom:30px;right:30px;width:100px;height:100px;display:flex;align-items:center;justify-content:center;}
#con2 .con2_item_img img {width:120px;height:120px;object-fit:contain;}
#con2 .con2_more_wrap {display:flex;justify-content:center;margin-top:50px;}
#con2 .con2_more_btn {width:60px;height:60px;border-radius:50%;background:#1a3a6e;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0;transition:background 1s;}
#con2 .con2_more_btn:hover {background:#1d4073;}
#con2 .con2_more_btn .plus_icon {position:relative;width:22px;height:22px;transition:transform 1s;transform-origin:50% 50%;}
#con2 .con2_more_btn .plus_icon::before, #con2 .con2_more_btn .plus_icon::after {content:"";position:absolute;background:#fff;left:50%;top:50%;transform:translate(-50%,-50%);}
#con2 .con2_more_btn .plus_icon::before {width:22px;height:2px;}
#con2 .con2_more_btn .plus_icon::after {width:2px;height:22px;}
#con2 .con2_more_btn:hover .plus_icon {transform:rotate(360deg);}

@media (max-width: 1200px) {
  #con2 .con2_wrap {margin-top: 40px;}
  #con2 .con2_title_area {margin-bottom: 30px;}
  #con2 .con2_main_title {font-size: 40px;}
  #con2 .con2_sub_title {font-size: 16px;}
  #con2 .con2_item {margin: 16px;}
  #con2 .con2_item_inner {padding: 10px 0px 10px; min-height: auto;}
  #con2 .con2_num {font-size: 14px;}
  #con2 .con2_category {font-size: 18px;}
  #con2 .con2_item_title {font-size: 26px;}
  #con2 .con2_item_desc {font-size: 15px; line-height: 1.5;}
  #con2 .con2_item_img img {width: 80px; height: 80px;}
  #con2 .con2_more_wrap {margin-top: 24px;}
}
@media (max-width: 960px) {
  #con2 .con2_wrap {margin-top: 30px;}
  #con2 .con2_main_title {font-size: 32px;}
  #con2 .con2_list_wrap {flex-direction: column;}
  #con2 .con2_item + .con2_item {border-left: none; border-top: 1px solid #ddd;}
  #con2 .con2_item {margin: 0 20px;}
  #con2 .con2_item_title {font-size: 22px;}
  #con2 .con2_item_desc {font-size: 14px;}
}
@media (max-width: 640px) {
  #con2 .con2_main_title {font-size: 26px;}
  #con2 .con2_sub_title {font-size: 14px;}
  #con2 .con2_item {margin: 0 14px;}
  #con2 .con2_item_title {font-size: 16px;}
  #con2 .con2_item_desc {font-size: 14px;}
  #con2 .con2_category {font-size: 14px;}
  #con2 .con2_item_img{bottom: 10px; right: 0px;}
  #con2 .con2_item_img img {width: 60px; height: 60px;}
  #con2 .con2_more_btn {width:30px; height:30px;}
  #con2 .con2_item_title br{display: none;}
  #con2 .con2_more_btn .plus_icon::before{width: 15px;}
  #con2 .con2_more_btn .plus_icon::after{height: 15px;}

}
/* con2 */


/* con3 */
#con3 {background: url(../images/con3_bg.jpg) no-repeat center; background-attachment: fixed; background-size: cover; overflow: hidden;}
#con3 .con3_wrap {display:flex;align-items:stretch;padding:0 0 0 50px;gap:100px;}
#con3 .txtBox {width: 40%;}
#con3 .txtBox_inner {display:flex;flex-direction:column;justify-content:space-between;height:100%;}
#con3 .txtBox_top {display:flex;align-items:baseline;justify-content:space-between;margin-bottom:60px;}
#con3 .txtBox_title_area {flex:1;}
#con3 .txtBox_title {font-size:60px;font-weight:800;color:#1a1a2e;margin:0 0 20px;letter-spacing:-0.5px;}
#con3 .txtBox_desc {font-size:20px;color:#555;line-height:1.7;margin:0;}
#con3 .txtBox_arrow_btn {flex-shrink:0;margin-left:16px;display:flex;align-items:center;justify-content:center;width:50px;height:50px;transition:opacity 0.3s,transform 0.3s;}
#con3 .txtBox_arrow_btn:hover {opacity:0.6;transform:translateX(4px);}
#con3 .txtBox_btn_area {display:flex;align-items:center;gap:10px;flex-wrap:wrap;}
#con3 .txtBox_btn {display:inline-flex;align-items:center;justify-content:center;padding:13px 25px;border-radius:50px;border:none;background:#f8f8f8;color:#333;font-size:20px;font-weight:300;cursor:pointer;transition:background 0.3s,color 0.3s,border-color 0.3s;white-space:nowrap;}
#con3 .txtBox_btn:hover {background:#f0f0f0;}
#con3 .txtBox_btn.active {background:#1a3a6e;color:#fff;border-color:#1a3a6e;}
#con3 .txtBox_btn.active:hover {background:#1d4073;}
#con3 .noticewrap_container {position:relative;width:60%;}
#con3 .tab-content {display:none;width:100%;height:100%;opacity:0;transition:opacity 0.4s ease;}
#con3 .tab-content.active {display:block;opacity:1;}

@media (max-width: 1200px) {
  #con3 .con3_wrap {gap: 50px; padding: 0 0 0 30px;}
  #con3 .txtBox_title {font-size: 42px;}
  #con3 .txtBox_desc {font-size: 16px;}
  #con3 .txtBox_btn {font-size: 16px; padding: 10px 20px;}
}
@media (max-width: 960px) {
  #con3 .con3_wrap {flex-direction: column; gap: 30px; padding: 150px 24px 0; overflow-y: auto; height: 100%;}
  #con3 .txtBox {width: 100%;}
  #con3 .txtBox_inner {height: auto;}
  #con3 .txtBox_top {margin-bottom: 24px;}
  #con3 .txtBox_title {font-size: 32px; margin-bottom: 10px;}
  #con3 .txtBox_desc {font-size: 14px;}
  #con3 .noticewrap_container {width: 100%;}
}
@media (max-width: 640px) {
  #con3 .con3_wrap {padding: 75px 10px 0; gap: 20px;}
  #con3 .txtBox_title {font-size: 26px;}
  #con3 .txtBox_desc {font-size: 13px;}
  #con3 .txtBox_btn {font-size: 13px; padding: 8px 16px;}
  #con3 .txtBox_arrow_btn svg {width: 36px; height: 36px;}
  #con3 .txtBox_arrow_btn img{max-width: 70%;}
}
/* con3 */


/* con4 */
#con4 {overflow: hidden;}
#con4 .con4_wrap {display: flex;}
#con4 .con4_left {flex: 1; background: #f8f8f8; height: 100vh; display: flex; align-items: center; flex-direction: column; justify-content: center;}
#con4 .con4_title_area {text-align: center; margin-bottom: 50px;}
#con4 .con4_title {font-size:60px; font-weight: 800; color: #111; letter-spacing: -0.5px; margin-bottom: 14px;}
#con4 .con4_desc {font-size: 20px; color: #666; line-height: 1.6;}
#con4 .con4_grid {display: grid; grid-template-columns: 1fr 1fr; gap: 30px; width: 85%;}
#con4 .con4_card {display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 14px; padding: 40px 20px; border-radius: 16px; border:1px solid #d8dfe8; background: #f4f6fa; cursor: pointer; text-decoration: none; transition: all 0.3s ease; min-height: 160px;}
#con4 .con4_card:hover {background: #1a3a6e; border-color: #1a3a6e; transform: translateY(-4px); box-shadow: 0 12px 32px rgba(30,47,110,0.18);}
#con4 .con4_card img {width: 52px; height: 52px; object-fit: contain; transition: filter 0.3s ease; filter: invert(17%) sepia(69%) saturate(1472%) hue-rotate(194deg) brightness(89%) contrast(89%);}
#con4 .con4_card:hover img {filter: invert(100%) sepia(0%) saturate(0%) hue-rotate(109deg) brightness(103%) contrast(100%);}
#con4 .con4_card span {font-size: 24px; font-weight: 700; color: #1a3a6e; transition: color 0.3s ease;}
#con4 .con4_card:hover span {color: #fff;}
#con4 .con4_right {flex: 1; height: 100vh; display: flex; align-items: center; flex-direction: column; justify-content: center; gap: 20px; padding-top: 50px;}
#con4 .con4_map_label {display: inline-block; background: #333; color: #fff; font-size: 22px; font-weight: 700; padding: 12px 28px; border-radius: 50px; margin-bottom: 24px;}
#con4 .con4_map_img {max-width: 70%; display: block;}
#con4 .con4_contact_info {display: flex; align-items: center; flex-wrap: wrap; gap: 10px 30px; margin-top: 24px;}
#con4 .con4_contact_info li {display: flex; align-items: center; gap: 8px; font-size: 15px; color: #333; list-style: none;}
#con4 .con4_contact_info li img {width: 20px; height: 20px; object-fit: contain;}
#con4 .con4_more_btn {width:60px; height:60px; border-radius:50%; background:#1a3a6e; border:none; cursor:pointer; display:flex; align-items:center; justify-content:center; padding:0; transition:background 1s;}
#con4 .con4_more_btn:hover {background:#1d4073;}
#con4 .con4_more_btn .plus_icon {position:relative; width:22px; height:22px; transition:transform 1s; transform-origin:50% 50%;}
#con4 .con4_more_btn .plus_icon::before, #con4 .con4_more_btn .plus_icon::after {content:""; position:absolute; background:#fff; left:50%; top:50%; transform:translate(-50%,-50%);}
#con4 .con4_more_btn .plus_icon::before {width:22px; height:2px;}
#con4 .con4_more_btn .plus_icon::after {width:2px; height:22px;}
#con4 .con4_more_btn:hover .plus_icon {transform:rotate(360deg);}

@media (max-width: 1200px) {
  #con4 .con4_title {font-size: 44px;}
  #con4 .con4_desc {font-size: 17px;}
  #con4 .con4_card {min-height: 130px; padding: 28px 16px;}
  #con4 .con4_card span {font-size: 20px;}
  #con4 .con4_grid {gap: 20px; width: 90%;}
  #con4 .con4_map_img {max-width: 85%;}
}
@media (max-width: 960px) {
  #con4 .con4_wrap {flex-direction: column; height: 100%;}
  #con4 .con4_left {height: auto; padding: 50px 24px 40px; width: 100%;}
  #con4 .con4_right {height: auto; padding: 0 24px 50px; width: 100%; gap: 0;}
  #con4 .con4_title {font-size: 36px;}
  #con4 .con4_desc {font-size: 15px;}
  #con4 .con4_title_area {margin-bottom: 10px;}
  #con4 .con4_grid {width: 100%; gap: 14px;}
  #con4 .con4_card {min-height: 110px; padding: 22px 14px; gap: 10px;}
  #con4 .con4_card img {width: 40px; height: 40px;}
  #con4 .con4_card span {font-size: 17px;}
  #con4 .con4_map_img {max-width: 100%;max-height: 200px;}
  #con4 .con4_map_label {font-size: 14px; padding: 5px 15px;margin-bottom: 14px; display: none;}
  #con4 .con4_contact_info li {font-size: 13px;}
  #con4 .con4_more_btn{display: none;}
}
@media (max-width: 640px) {
  #con4 .con4_left {padding:60px 10px 0px}
  #con4 .con4_right {padding:10px;}
  #con4 .con4_title {font-size: 28px;}
  #con4 .con4_desc {font-size: 13px;}
  #con4 .con4_grid {gap: 10px;}
  #con4 .con4_card {min-height: 65px; border-radius: 12px; padding:9px 10px; gap: 8px;}
  #con4 .con4_card img {width: 32px; height: 32px;}
  #con4 .con4_card span {font-size: 14px;}
  #con4 .con4_contact_info {gap: 8px 14px;}
  #con4 .con4_contact_info li {font-size: 12px;}
}
/* con4 */


/* con5 */
#con5 {padding: 100px 0 0;}
#con5 .con5_wrap {max-width: 1300px; margin: 0 auto; padding: 0 40px;}
#con5 .con5_title_area {text-align: center; margin-bottom: 60px;}
#con5 .con5_title {font-size: 60px; font-weight: 800; color: #111; letter-spacing: -1px; margin-bottom: 16px;}
#con5 .con5_desc {font-size: 16px; color: #666;}
#con5 .con5_more_wrap{display: flex; justify-content: center; margin-top: 50px;}
#con5 .con5_more_btn {width:60px; height:60px; border-radius:50%; background:#1a3a6e; border:none; cursor:pointer; display:flex; align-items:center; justify-content:center; padding:0; transition:background 1s;}
#con5 .con5_more_btn:hover {background:#1d4073;}
#con5 .con5_more_btn .plus_icon {position:relative; width:22px; height:22px; transition:transform 1s; transform-origin:50% 50%;}
#con5 .con5_more_btn .plus_icon::before, #con5 .con5_more_btn .plus_icon::after {content:""; position:absolute; background:#fff; left:50%; top:50%; transform:translate(-50%,-50%);}
#con5 .con5_more_btn .plus_icon::before {width:22px; height:2px;}
#con5 .con5_more_btn .plus_icon::after {width:2px; height:22px;}
#con5 .con5_more_btn:hover .plus_icon {transform:rotate(360deg);}
@media (max-width: 1200px) {
  #con5 {padding: 60px 0;}
  #con5 .con5_title_area {margin-bottom: 36px;}
  #con5 .con5_title {font-size: 42px;}
  #con5 .con5_desc {font-size: 15px;}
  #con5 .con5_more_wrap {margin-top: 30px;}
}
@media (max-width: 960px) {
  #con5 {padding: 50px 0; overflow-y: auto; height: 100%;}
  #con5 .con5_wrap {padding: 0 24px;}
  #con5 .con5_title {font-size: 32px;}
  #con5 .con5_title_area {margin-bottom: 28px;}
  #con5 .con5_more_wrap {margin-top: 24px;}
}
@media (max-width: 640px) {
  #con5 {padding:60px 0 0;}
  #con5 .con5_wrap {padding: 0 16px;}
  #con5 .con5_title {font-size: 26px; margin-bottom: 10px;}
  #con5 .con5_desc {font-size: 13px;}
  #con5 .con5_title_area {margin-bottom: 20px;}
  #con5 .con5_more_btn {width: 44px; height: 44px; font-size: 22px;}
  #con5 .con5_more_wrap {margin-top: 18px;}
}
/* con5 */

/* 하단 레이아웃 */
#ft {height: auto!important; min-height: auto!important; padding: 54px 80px; background: #333;}
#ft #ft_wr {position: relative;}
#ft #ft_logo {margin-bottom: 40px;}
#ft #ft_con span {display: inline-block; font-size: 16px; font-weight: 300; color: #ddd; word-break: keep-all;}
#ft #ft_con span a {color: #ddd;}
#ft #ft_con p {margin-top: 18px;}
#ft #ft_menu {position: absolute; bottom: 0; right: 0;}
#ft #ft_menu a {display: inline-block; font-size: 16px; font-weight: 700; color: #fff; white-space: nowrap;}
#ft #ft_menu a:not(:last-child) {margin-right: 70px;}

@media screen and (max-width: 1200px) {
  #ft #ft_menu {position: static; margin-top: 30px; padding-top: 30px; border-top: 1px solid #555;}
}

@media screen and (max-width: 960px) {
  #ft {padding: 30px;}
  #ft #ft_logo {margin-bottom: 20px;}
}

@media screen and (max-width: 640px) {
  #ft #ft_logo img {height: 25px;}
  #ft #ft_con p {margin-top: 10px;}
  #ft #ft_menu {display: flex; justify-content: space-around; flex-wrap: wrap; margin-top: 20px; padding-top: 20px;}
  #ft #ft_menu a {padding: 0 5px;}
  #ft #ft_menu a:not(:last-child) {margin-right: 0;}
}


/* 서브공통 */
 
/* ── 연락처 ── */
.contact_wrap { display: flex; align-items: center; gap: 50px; flex-wrap: wrap; }
.contact_item { display: flex; align-items: center; gap: 16px; }
.contact_icon { width: 56px; height: 56px; border-radius: 50%; background: #1a3a6e; display: flex; align-items: center; justify-content: center; flex-shrink: 0; }
.contact_icon i { font-size: 22px; color: #fff; }
.contact_info .contact_label { font-size: 16px; color: #1a3a6e; font-weight: 600; margin-bottom: 3px; }
.contact_info .contact_val { font-size: 20px; font-weight: 700; color: #222; }
.contact_info .contact_sub { font-size: 13px; color: #666; margin-top: 2px; }
@media (max-width: 768px) {
    .contact_wrap {gap: 20px; flex-direction: column;}
}
/* 서브공통 */





/* a1 */
#a1 {position: relative; overflow: hidden;}

/* 히어로 배너 */
#a1 .a1_hero {position: relative; width: 100%; height: 520px; overflow: hidden;}

/* 중앙→양옆 펼침 애니메이션 */
#a1 .a1_hero_img {width: 100%; height: 100%; object-fit: cover; object-position: center; display: block; filter: brightness(0.55); clip-path: inset(0 50%); animation: a1HeroReveal 1.2s cubic-bezier(0.77,0,0.18,1) forwards;}
@keyframes a1HeroReveal {
    0%   {clip-path: inset(0 50%);}
    100% {clip-path: inset(0 0%);}
}

/* 오버레이도 함께 펼침 */
#a1 .a1_hero_overlay {position: absolute; inset: 0; background: linear-gradient(135deg, rgba(15,30,80,0.72) 0%, rgba(10,20,50,0.35) 100%); clip-path: inset(0 50%); animation: a1HeroReveal 1.2s cubic-bezier(0.77,0,0.18,1) forwards;}

#a1 .a1_hero_text {position: absolute; inset: 0; display: flex; flex-direction: column; align-items: center; justify-content: center; text-align: center; padding: 0 40px; z-index: 2;}
#a1 .a1_hero_label {display: inline-block; font-size: 16px; font-weight: 300; letter-spacing: 4px; color: rgba(255,255,255,0.65); text-transform: uppercase; margin-bottom: 22px; border: 1px solid rgba(255,255,255,0.25); padding: 6px 18px; border-radius: 20px; opacity: 0; animation: a1FadeUp 0.7s ease forwards; animation-delay: 1s;}
#a1 .a1_hero_title {font-size: 46px; font-weight: 700; color: #fff; line-height: 1.25; letter-spacing: -1px; word-break: keep-all; margin: 0; text-shadow: 0 4px 32px rgba(0,0,0,0.3); opacity: 0; animation: a1FadeUp 0.8s ease forwards; animation-delay: 1.15s;}
#a1 .a1_hero_title em {color: #7eb3ff; font-style: normal;}
#a1 .a1_hero_bar {width: 0; height: 3px; background: #7eb3ff; margin: 28px auto 0; border-radius: 2px; animation: a1BarGrow 0.7s ease forwards; animation-delay: 1.5s;}

@keyframes a1FadeUp {
    0%   {opacity: 0; transform: translateY(22px);}
    100% {opacity: 1; transform: translateY(0);}
}
@keyframes a1BarGrow {
    0%   {width: 0;}
    100% {width: 50px;}
}

/* 서명 이미지 */
#a1 .a1_sign {display: flex; align-items: center; gap: 20px; padding-top: 36px; border-top: 1px solid #e4e8f0;}
#a1 .a1_sign_left {display: flex; align-items: center; gap: 20px; flex: 1;}
#a1 .a1_sign_img {height: 52px; width: auto; object-fit: contain; opacity: 0.75;}

/* 본문 레이아웃 */
#a1 .a1_body {max-width: 1600px; margin: 0 auto; padding: 100px 60px 120px;}
#a1 .a1_grid {display: grid; grid-template-columns: 1fr 1fr; gap: 80px; align-items:center;}

/* 왼쪽: 이미지 + 연혁 카드 */
#a1 .a1_left {position: relative;}
#a1 .a1_img_wrap {position: relative; border-radius: 24px; overflow: hidden; box-shadow: 0 24px 60px rgba(15,30,80,0.14);}
#a1 .a1_img_wrap img {width: 100%; height: 460px; object-fit: cover; display: block; transition: transform 0.7s ease;}
#a1 .a1_img_wrap:hover img {transform: scale(1.04);}
#a1 .a1_badge {position: absolute; bottom: -28px; right: 28px; background: #1a3a6e; color: #fff; border-radius: 18px; padding: 22px 30px; box-shadow: 0 12px 36px rgba(15,34,128,0.28); min-width: 180px; text-align: center;}
#a1 .a1_badge_num {font-size: 42px; font-weight: 900; letter-spacing: -1px; line-height: 1; color: #7eb3ff;}
#a1 .a1_badge_txt {font-size: 16px; color: rgba(255,255,255,0.8); margin-top: 6px; line-height: 1.5; word-break: keep-all;}

/* 오른쪽: 텍스트 */
#a1 .a1_right {padding-top: 10px;}
#a1 .a1_section_label {font-size: 16px; font-weight: 700; letter-spacing: 5px; color: #1a3a6e; text-transform: uppercase; margin-bottom: 20px; display: block;}
#a1 .a1_quote {font-size: 26px; font-weight: 800; color: #111; line-height: 1.5; letter-spacing: -0.5px; margin: 0 0 36px; word-break: keep-all; position: relative; padding-left: 20px;}
#a1 .a1_quote::before {content: ''; position: absolute; left: 0; top: 4px; bottom: 4px; width: 4px; background: #1a3a6e; border-radius: 2px;}
#a1 .a1_text_block {display: flex; flex-direction: column; gap: 10px; margin-bottom: 48px;}
#a1 .a1_text_block p {font-size: 18px; color: #444; line-height: 1.95; margin: 0; word-break: keep-all;}
#a1 .a1_text_block p.a1_highlight {font-weight: 600; color: #222;}

/* 서명 영역 */
#a1 .a1_sign {display: flex; align-items: center; gap: 20px; padding-top: 36px; border-top: 1px solid #e4e8f0;}
#a1 .a1_sign_icon {width: 56px; height: 56px; border-radius: 50%; background: linear-gradient(135deg, #1a3a6e 0%, #1e3fa0 100%); display: flex; align-items: center; justify-content: center; flex-shrink: 0;}
#a1 .a1_sign_icon svg {width: 26px; height: 26px; fill: none; stroke: #fff; stroke-width: 2;}
#a1 .a1_sign_info {}
#a1 .a1_sign_org {font-size: 16px; color: #888; margin-bottom: 4px;}
#a1 .a1_sign_name {font-size: 20px; font-weight: 800; color: #111; letter-spacing: -0.3px;}

/* 하단 키워드 배너 */
#a1 .a1_keywords {background: #1a3a6e; padding: 60px 60px; max-width: 100%;}
#a1 .a1_keywords_inner {max-width: 1300px; margin: 0 auto; display: flex; align-items: center; gap: 0; flex-wrap: wrap;}
#a1 .a1_kw_item {flex: 1; min-width: 180px; text-align: center; padding: 20px 10px; position: relative;}
#a1 .a1_kw_item:not(:last-child)::after {content: ''; position: absolute; right: 0; top: 20%; height: 60%; width: 1px; background: rgba(255,255,255,0.15);}
#a1 .a1_kw_num {font-size: 38px; font-weight: 700; color: #7eb3ff; letter-spacing: -1px; line-height: 1;}
#a1 .a1_kw_unit {font-size: 16px; font-weight: 600; color:rgb(126 179 255);padding-left: 5px;}
#a1 .a1_kw_label {font-size: 18px; color: rgba(255,255,255,0.75); margin-top: 8px; letter-spacing: 0.5px;}

/* ===== 반응형 ===== */
@media (max-width: 1100px) {
    #a1 .a1_body {padding: 80px 40px 100px;}
    #a1 .a1_grid {gap: 60px;}
    #a1 .a1_hero_title {font-size: 38px;}
    #a1 .a1_quote {font-size: 22px;}
    #a1 .a1_text_block p {font-size: 16px;}
}
@media (max-width: 900px) {
    #a1 .a1_grid {grid-template-columns: 1fr; gap:20px;}
    #a1 .a1_left {max-width: 600px; margin: 0 auto;}
    #a1 .a1_badge {right: 20px; bottom: -24px; padding: 18px 24px;}
    #a1 .a1_badge_num {font-size: 34px;}
    #a1 .a1_right {padding-top: 50px;}
    #a1 .a1_hero {height: 420px;}
    #a1 .a1_hero_title {font-size: 32px;}
}
@media (max-width: 640px) {
    #a1 .a1_hero {height: 320px;}
    #a1 .a1_hero_title {font-size: 24px;}
    #a1 .a1_hero_label {font-size: 11px; letter-spacing: 2px;}
    #a1 .a1_body {padding:30px 10px 30px;}
    #a1 .a1_quote {font-size: 19px;}
    #a1 .a1_text_block p {font-size: 15px; line-height: 1.85;}
    #a1 .a1_badge {right: 10px; padding: 14px 18px; min-width: 140px;}
    #a1 .a1_badge_num {font-size: 28px;}
    #a1 .a1_badge_txt {font-size: 12px;}
    #a1 .a1_keywords {padding:20px 10px;}
    #a1 .a1_kw_item {min-width: 45%; flex: none;text-align: left;padding: 10px 0;}
    #a1 .a1_kw_num {font-size: 20px;}
    #a1 .a1_sign_name {font-size: 17px;}
    #a1 .a1_kw_label{font-size: 14px;}
    #a1 .a1_kw_item:not(:last-child)::after{display: none;}
    #a1 .a1_keywords_inner{justify-content: center;}
    #a1 .a1_sign{align-items: baseline;    flex-direction: column;}
    #a1 .a1_sign_org {font-size: 14px;}
}
@media (max-width: 400px) {
    #a1 .a1_hero_title {font-size: 20px;}
    #a1 .a1_quote {font-size: 17px;}
}
/* a1 */

/* a2 */
:root { --primary:#1a3a6e; --primary-light:#2a5298; --accent:#e8a020; --accent2:#00c4b3; --bg:#f4f6fb; --white:#ffffff; --text:#1c2a3a; --text-muted:#6a7d96; --line:#d0daea; }
#a7 { position:relative; max-width:1400px; margin:0 auto; padding:80px 24px 120px; color:var(--text); box-sizing:border-box; }
#a7 *,#a7 *::before,#a7 *::after { box-sizing:border-box; }
#a7 .center-line { position:absolute; left:50%; top:40px; bottom:80px; width:2px; background:linear-gradient(to bottom,var(--primary) 0%,var(--accent2) 50%,var(--primary-light) 100%); transform:translateX(-50%); opacity:0.25; }
#a7 .center-line::after { content:''; position:absolute; bottom:-10px; left:50%; transform:translateX(-50%); width:10px; height:10px; background:var(--accent); border-radius:50%; }
#a7 .year-block { display:grid; grid-template-columns:1fr 80px 1fr; gap:0 20px; margin-bottom:48px; position:relative; align-items:start; }

#a7 .year-badge { grid-column:2; display:flex; flex-direction:column; align-items:center; gap:6px; position:relative; z-index:2; opacity:0; transform:scale(0.5); transition:opacity 0.5s ease,transform 0.5s cubic-bezier(0.34,1.56,0.64,1); }
#a7 .year-badge.visible { opacity:1; transform:scale(1); }
#a7 .year-circle { width:120px; height:120px; border-radius:50%; background:var(--primary); display:flex; align-items:center; justify-content:center; box-shadow:0 0 0 4px #f4f6fb,0 0 0 6px var(--primary),0 8px 24px rgba(26,58,110,0.35); position:relative; overflow:hidden; }
#a7 .year-circle::before { content:''; position:absolute; inset:0; background:linear-gradient(135deg,rgba(255,255,255,0.18) 0%,transparent 60%); border-radius:50%; }
#a7 .year-circle span {font-size:2rem; color:#fff; letter-spacing:0.05em; line-height:1; text-align:center; position:relative; z-index:1;    font-weight: 600; }
#a7 .year-dot { width:8px; height:8px; background:var(--accent); border-radius:50%; animation:a2pulse 2s ease-in-out infinite; }
@keyframes a2pulse { 0%,100% { box-shadow:0 0 0 0 rgba(232,160,32,0.5); } 50% { box-shadow:0 0 0 8px rgba(232,160,32,0); } }
#a7 .event-card {max-width: 90%; background:var(--white); border-radius:16px; padding:24px 28px; box-shadow:0 2px 8px rgba(26,58,110,0.06),0 8px 32px rgba(26,58,110,0.08); border:1px solid rgba(26,58,110,0.07); position:relative; overflow:hidden; opacity:0; transform:translateX(-40px); transition:opacity 0.6s ease,transform 0.6s cubic-bezier(0.22,1,0.36,1),box-shadow 0.3s ease; }
#a7 .year-block:nth-child(even) .event-card { transform:translateX(40px); }
#a7 .event-card.visible { opacity:1; transform:translateX(0); }
#a7 .event-card::before { content:''; position:absolute; top:0; left:0; right:0; height:3px; background:#294778; opacity:1; }
#a7 .event-card::after { content:''; position:absolute; top:-50%; right:-60%; width:100%; height:200%; background:radial-gradient(ellipse at center,rgba(26,58,110,0.035) 0%,transparent 70%); pointer-events:none; }
#a7 .event-item { display:flex; align-items:center; gap:12px; padding:8px 0; border-bottom:1px solid var(--line); position:relative; }
#a7 .event-item:last-child { border-bottom:none; padding-bottom:0; }
#a7 .event-item:first-child { padding-top:0; }

#a7 .event-date { flex-shrink:0;font-size:1.05rem; letter-spacing:0.08em; color:var(--primary); background:rgba(26,58,110,0.07); padding:3px 9px; border-radius:6px; line-height:1.6; }
#a7 .event-dot { flex-shrink:0; width:7px; height:7px; border-radius:50%; background:#294778; }
#a7 .event-text { font-size:1rem; color:var(--text); line-height:1.65; font-weight:400; }
#a7 .year-block::after { content:''; position:absolute; top:31px; left:calc(50% - 10px); width:20px; height:1px; background:linear-gradient(90deg,var(--primary),transparent); opacity:0.4; z-index:1; }
#a7 .bg-shape { position:fixed; pointer-events:none; z-index:-1; border-radius:50%; opacity:0.04; background:var(--primary); animation:a2float 12s ease-in-out infinite; }
#a7 .bg-shape:nth-child(1) { width:400px; height:400px; top:10%; left:-100px; animation-delay:0s; }
#a7 .bg-shape:nth-child(2) { width:250px; height:250px; top:60%; right:-60px; animation-delay:-5s; }
#a7 .bg-shape:nth-child(3) { width:180px; height:180px; top:40%; left:40%; animation-delay:-9s; }
@keyframes a2float { 0%,100% { transform:translateY(0) scale(1); } 50% { transform:translateY(-30px) scale(1.05); } }


.a2_img{text-align: center; }
.a2_img img{max-width: 100%;}

@media (max-width:960px) {
  #a7{padding: 0;}
  #a7 .center-line { left:15px; }
  #a7 .year-block { grid-template-columns:30px 1fr; grid-template-rows:auto;gap: 0;margin-bottom: 20px; }
  #a7 .year-badge { grid-column:1; grid-row:1; order:1 !important; }
  #a7 .event-card { grid-column:2; grid-row:1; order:2 !important; transform:translateX(30px) !important; text-align:left !important; max-width: 85%; padding: 10px;}
  #a7 .spacer { display:none; }
  #a7 .year-block::after { display:none; }
  #a7 .year-circle{width: 40px;  height: 40px;}
  #a7 .year-circle span{font-size: 0.8rem;}
  #a7 .event-dot{display: none;}
  #a7 .event-item{flex-direction: column;align-items: baseline;gap: 5px;}
  #a7 .event-date{font-size: 0.8rem;}
  #a7 .event-text{font-size: 0.8rem;}
}
/* a2 */

/* a3 */
#a3 {overflow: hidden;}
#a3 .a3_inner {max-width: 1600px; margin: 0 auto; padding: 0 60px;}

/* ════════════════
   PART 1 : VISION 히어로
════════════════ */
#a3 .a3_hero {position: relative; background: #1a3a6e; padding: 80px 60px; overflow: hidden; text-align: center;}
#a3 .a3_hero::before {content: ''; position: absolute; top: -80px; right: -80px; width: 400px; height: 400px; border-radius: 50%; background: rgba(255,255,255,0.04); pointer-events: none;}
#a3 .a3_hero::after {content: ''; position: absolute; bottom: -60px; left: -60px; width: 280px; height: 280px; border-radius: 50%; background: rgba(255,255,255,0.03); pointer-events: none;}
#a3 .a3_hero_eyebrow {display: inline-block; font-size: 12px; font-weight: 700; letter-spacing: 6px; color: rgba(255,255,255,0.5); text-transform: uppercase; margin-bottom: 20px;}
#a3 .a3_hero_title {font-size: 48px; font-weight: 900; color: #fff; letter-spacing: -1.5px; margin: 0 0 20px; line-height: 1.15;}
#a3 .a3_hero_title em {color: #7eb3ff; font-style: normal;}
#a3 .a3_hero_bar {width: 0; height: 3px; background: linear-gradient(90deg, #7eb3ff, #a8d45a); margin: 0 auto; border-radius: 2px; animation: a3BarGrow 0.8s ease forwards 0.8s;}
@keyframes a3BarGrow {0%{width:0}100%{width:80px}}

/* ════════════════
   PART 2 : MISSION 카드형
════════════════ */
#a3 .a3_mission {padding: 90px 0;}
#a3 .a3_mission_head {text-align: center; margin-bottom: 64px;}
#a3 .a3_mission_label {display: inline-flex; align-items: center; gap: 8px; font-size: 16px; font-weight: 300; letter-spacing: 5px; color: #1a3a6e; text-transform: uppercase; margin-bottom: 16px;}
#a3 .a3_mission_label::before, #a3 .a3_mission_label::after {content: ''; flex: 1; width: 30px; height: 1px; background: #1a3a6e; opacity: 0.3;}
#a3 .a3_mission_head_title {font-size: 40px; font-weight: 900; color: #111; letter-spacing: -1px; margin: 0 0 12px;}
#a3 .a3_mission_head_desc {font-size: 16px; color: #888; word-break: keep-all;}

/* 카드 그리드 */
#a3 .a3_mission_grid {display: grid; grid-template-columns: repeat(4, 1fr); gap: 24px; position: relative;}
#a3 .a3_mission_card {background: #fff; border-radius: 20px; padding: 40px 28px; position: relative; overflow: hidden; border: 1px solid #e8edf5; transition: transform 0.35s ease, box-shadow 0.35s ease;}
#a3 .a3_mission_card:hover {transform: translateY(-8px); box-shadow: 0 20px 50px rgba(26,58,110,0.13);}
#a3 .a3_mission_card::before {content: ''; position: absolute; top: 0; left: 0; width: 100%; height: 4px; background: linear-gradient(90deg, #1a3a6e, #3a6abf);}
#a3 .a3_mission_card_num {font-size: 56px; font-weight: 900; color: rgba(26,58,110,0.07); letter-spacing: -2px; line-height: 1; margin-bottom: 20px; font-family: 'Georgia', serif;}
#a3 .a3_mission_card_icon {width: 52px; height: 52px; border-radius: 12px; background: #eef2fb; display: flex; align-items: center; justify-content: center; margin-bottom: 20px;}
#a3 .a3_mission_card_icon i {font-size: 24px; color: #1a3a6e;}
#a3 .a3_mission_card_title {font-size: 20px; font-weight: 700; color: #111; line-height: 1.55; margin-bottom: 10px; word-break: keep-all;}
#a3 .a3_mission_card_desc {font-size: 16px; color: #666; line-height: 1.7; word-break: keep-all;}

/* ════════════════
   PART 3 : 구분 배너
════════════════ */
#a3 .a3_mid_banner {background: linear-gradient(100deg, #1a3a6e 0%, #2a5aa8 100%); padding: 50px 60px; display: flex; align-items: center; justify-content: space-between; gap: 40px; flex-wrap: wrap;}
#a3 .a3_mid_banner_txt {}
#a3 .a3_mid_banner_label {font-size: 12px; font-weight: 700; letter-spacing: 5px; color: rgba(255,255,255,0.5); text-transform: uppercase; margin-bottom: 12px;}
#a3 .a3_mid_banner_title {font-size: 32px; font-weight: 900; color: #fff; letter-spacing: -0.5px; margin: 0;}
#a3 .a3_mid_banner_title em {color: #7eb3ff; font-style: normal;}
#a3 .a3_mid_stats {display: flex; gap: 50px; flex-wrap: wrap;}
#a3 .a3_stat_item {text-align: center;}
#a3 .a3_stat_num {font-size: 40px; font-weight: 900; color: #fff; letter-spacing: -1px; line-height: 1;}
#a3 .a3_stat_unit {font-size: 16px; font-weight: 600; color: rgba(255,255,255,0.6); padding-left: 5px;}
#a3 .a3_stat_label {font-size: 14px; color: rgba(255,255,255,0.6); margin-top: 6px;}

/* ════════════════
   PART 4 : 전략 타임라인형
════════════════ */
#a3 .a3_strategy {padding: 90px 0 100px;}
#a3 .a3_strategy_head {text-align: center; margin-bottom: 70px;}
#a3 .a3_strategy_label {display: inline-block; font-size: 16px; font-weight:600; letter-spacing: 5px; color: #1a3a6e; text-transform: uppercase; padding: 6px 20px; border: 1px solid #c2d0ec; border-radius: 20px; margin-bottom: 16px;}
#a3 .a3_strategy_title {font-size: 40px; font-weight: 900; color: #111; letter-spacing: -1px; margin: 0 0 12px;}
#a3 .a3_strategy_sub {font-size: 16px; color: #666; word-break: keep-all;}

/* 3 x 2 타일형 */
#a3 .a3_strategy_grid {display: grid; grid-template-columns: repeat(3, 1fr); gap: 28px;}
#a3 .a3_strat_item {background: #fff; border-radius: 20px; padding: 36px 32px; border: 1px solid #e8edf5; display: flex; align-items: flex-start; gap: 20px; transition: transform 0.3s, box-shadow 0.3s;}
#a3 .a3_strat_item:hover {transform: translateY(-6px); box-shadow: 0 16px 40px rgba(26,58,110,0.10);}
#a3 .a3_strat_num {width: 54px; height: 54px; border-radius: 12px; display: flex; align-items: center; justify-content: center; font-size: 18px; font-weight: 800; color: #fff; flex-shrink: 0;}
#a3 .a3_strat_num.c1 {background: #1a3a6e;}
#a3 .a3_strat_num.c2 {background: #2a5aa8;}
#a3 .a3_strat_num.c3 {background: #3a7ad0;}
#a3 .a3_strat_num.c4 {background: #5a9e2a;}
#a3 .a3_strat_num.c5 {background: #7cba3d;}
#a3 .a3_strat_num.c6 {background: #a8d45a;}
#a3 .a3_strat_body {}
#a3 .a3_strat_title {font-size: 20px; font-weight: 600; color: #111; margin: 0 0 8px; line-height: 1.4;}
#a3 .a3_strat_line {width: 30px; height: 3px; border-radius: 2px; margin-top: 10px;}
#a3 .a3_strat_line.c1 {background: #1a3a6e;}
#a3 .a3_strat_line.c2 {background: #2a5aa8;}
#a3 .a3_strat_line.c3 {background: #3a7ad0;}
#a3 .a3_strat_line.c4 {background: #5a9e2a;}
#a3 .a3_strat_line.c5 {background: #7cba3d;}
#a3 .a3_strat_line.c6 {background: #a8d45a;}

/* ── 반응형 ── */
@media (max-width: 1100px) {
    #a3 .a3_inner {padding: 0 40px;}
    #a3 .a3_hero_title {font-size: 38px;}
    #a3 .a3_mission_grid {grid-template-columns: repeat(2, 1fr);}
    #a3 .a3_strategy_grid {grid-template-columns: repeat(2, 1fr);}
    #a3 .a3_mission_head{margin-bottom: 20px;}
    #a3 .a3_mission_head_title {font-size: 32px;}
    #a3 .a3_strategy_title {font-size: 32px;}
}
@media (max-width: 768px) {
    #a3 .a3_inner {padding: 0 24px;}
    #a3 .a3_hero {padding: 60px 24px;}
    #a3 .a3_hero_title {font-size: 28px;}
    #a3 .a3_mission {padding: 30px 0;}
    #a3 .a3_mission_grid {grid-template-columns: 1fr 1fr; gap: 16px;}
    #a3 .a3_mission_card {padding: 28px 20px;}
    #a3 .a3_mid_banner {padding: 40px 24px; flex-direction: column; gap: 20px;        align-items: start;}
    #a3 .a3_mid_banner_title {font-size: 24px;}
    #a3 .a3_mid_stats {gap: 28px;}
    #a3 .a3_strategy {padding: 30px;}
    #a3 .a3_strategy_grid {grid-template-columns: 1fr 1fr; gap: 16px;}
    #a3 .a3_strat_item {padding: 26px 22px;}
    #a3 .a3_strat_title {font-size: 16px;}
    #a3 .a3_strategy_head{margin-bottom: 20px;}
}
@media (max-width: 480px) {
    #a3 .a3_inner {padding: 0}
    #a3 .a3_hero_title {font-size: 22px;}
    #a3 .a3_mission_grid {grid-template-columns: 1fr;}
    #a3 .a3_strategy_grid {grid-template-columns: 1fr;}
    #a3 .a3_mission_head_title {font-size: 26px;}
    #a3 .a3_strategy_title {font-size: 26px;}
    #a3 .a3_mid_stats {gap: 20px; justify-content: center;}
}
/* a3 */

/* a4 */
#a4 { max-width: 1400px; margin: 0 auto; padding: 60px 0px 80px; }
 
/* ── 탭 ── */
#a4 .a4_tab_nav { display: flex; border-bottom: 2px solid #1a3a6e; margin-bottom: 50px; }
#a4 .a4_tab_nav button { flex: 1; max-width: 240px; padding: 14px 20px; background: #f2f5fa; border: 1px solid #ddd; border-bottom: none; font-size: 18px; font-weight: 600; color: #888; cursor: pointer; transition: background .2s, color .2s; margin-right: 4px; }
#a4 .a4_tab_nav button.active { background: #1a3a6e; color: #fff; border-color: #1a3a6e; }
#a4 .a4_tab_nav button:hover:not(.active) { background: #e8eef8; color: #1a3a6e; }
 
/* ── 탭 콘텐츠 ── */
#a4 .a4_tab_content { display: none; }
#a4 .a4_tab_content.active { display: block; }
 
/* 섹션 타이틀 */
#a4 .sec_title { display: flex; align-items: center; gap: 10px; font-size: 28px; font-weight: 700; color: #1a3a6e; margin-bottom: 30px; }
#a4 .sec_title::before { content: '☑'; font-size: 28px; color: #1a3a6e; font-weight: 100; margin-bottom: 3px; }
 
/* 섹션 간격 */
#a4 .a4_section { margin-bottom: 70px; }
 
/* ── 공통 테이블 ── */
#a4 .desig_table { width: 100%; border-collapse: collapse; border-top: 2px solid #1a3a6e; border-bottom: 1px solid #dddddd; }
#a4 .desig_table th, #a4 .desig_table td { padding: 16px 20px; border: 1px solid #ddd; font-size: 18px; text-align: center; vertical-align: middle; }
#a4 .desig_table thead th { background: #f2f5fa; font-weight: 700; color: #1a3a6e; }
#a4 .desig_table tbody th { background: #fafafa; font-weight: 600; color: #333; width: 16%; }
#a4 .desig_table tbody td { color: #444; }
#a4 .desig_table tbody td.td_org { width: 26%; color: #333; }
#a4 .desig_table tr:last-child th, #a4 .desig_table tr:last-child td { border-bottom: none; }
 
/* ── 지정서 이미지 그리드 ── */
#a4 .cert_grid { display: grid; grid-template-columns: repeat(5, 1fr); gap: 12px; margin-bottom: 12px; }
#a4 .cert_grid2 { display: grid; grid-template-columns: repeat(5, 1fr); gap: 12px; }
#a4 .cert_grid .cert_img, #a4 .cert_grid2 .cert_img { border: 1px solid #ddd; overflow: hidden; background: #f9f9f9; cursor: pointer; }
#a4 .cert_grid .cert_img img, #a4 .cert_grid2 .cert_img img { width: 100%; display: block; transition: transform .3s ease; }
#a4 .cert_grid .cert_img:hover img, #a4 .cert_grid2 .cert_img:hover img { transform: scale(1.03); }
 
/* ── 인증서 / 상장 이미지 그리드 ── */
#a4 .cert_grid3 { display: grid; grid-template-columns: repeat(5, 1fr); gap: 20px; margin-bottom: 12px; }
#a4 .cert_grid4 { display: grid; grid-template-columns: repeat(4, 1fr); gap: 20px; }
#a4 .cert_grid3 .cert_img, #a4 .cert_grid4 .cert_img { border: 1px solid #ddd; overflow: hidden; background: #f9f9f9; cursor: pointer; }
#a4 .cert_grid3 .cert_img img, #a4 .cert_grid4 .cert_img img { width: 100%; display: block; transition: transform .3s ease; }
#a4 .cert_grid3 .cert_img:hover img, #a4 .cert_grid4 .cert_img:hover img { transform: scale(1.03); }
 
/* ── 라이트박스 ── */
#a4_lightbox { display: none; position: fixed; top: 0; left: 0; width: 100%; height: 100%; background: rgba(0,0,0,.88); z-index: 9999; align-items: center; justify-content: center; }
#a4_lightbox.active { display: flex; }
#a4_lightbox .lb_inner { position: relative; display: flex; flex-direction: column; align-items: center; max-width: 680px; width: 90vw; }
#a4_lightbox .lb_img_wrap { width: 100%; display: flex; align-items: center; justify-content: center; }
#a4_lightbox .lb_img_wrap img { width: 75%; height: auto; display: block; }
#a4_lightbox .lb_counter { color: #fff; font-size: 14px; margin-top: 14px; letter-spacing: .05em; }
#a4_lightbox .lb_nav { display: flex; align-items: center; gap: 16px; margin-top: 14px; }
#a4_lightbox .lb_prev, #a4_lightbox .lb_next { width: 44px; height: 44px; background: rgba(255,255,255,.15); border: 1px solid rgba(255,255,255,.3); color: #fff; font-size: 18px; cursor: pointer; display: flex; align-items: center; justify-content: center; transition: background .2s; }
#a4_lightbox .lb_prev:hover, #a4_lightbox .lb_next:hover { background: rgba(255,255,255,.3); }
#a4_lightbox .lb_close { position: absolute; top: -40px; right: 0; width: 32px; height: 32px; background: rgba(255,255,255,.2); border: none; color: #fff; font-size: 18px; cursor: pointer; display: flex; align-items: center; justify-content: center; border-radius: 50%; transition: background .2s; }
#a4_lightbox .lb_close:hover { background: rgba(255,255,255,.4); }
 
@media (max-width: 1024px) {
    #a4 .cert_grid { grid-template-columns: repeat(3, 1fr); }
    #a4 .cert_grid2 { max-width: 100%; grid-template-columns: repeat(3, 1fr); }
    #a4 .cert_grid3 { grid-template-columns: repeat(2, 1fr); }
    #a4 .cert_grid4 { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 768px) {
    #a4 { padding: 0; }
    #a4 .a4_tab_nav button { font-size: 14px; padding: 12px 14px; }
    #a4 .a4_tab_nav { margin-bottom: 30px; }
    #a4 .sec_title { font-size: 18px; margin-bottom: 10px; }
    #a4 .desig_table th, #a4 .desig_table td { padding: 12px 10px; font-size: 16px; }
    #a4 .cert_grid { grid-template-columns: repeat(2, 1fr); }
    #a4 .cert_grid2 { grid-template-columns: repeat(2, 1fr); max-width: 100%; }
    #a4 .cert_grid3 { grid-template-columns: repeat(2, 1fr); }
    #a4 .cert_grid4 { grid-template-columns: repeat(2, 1fr); }
    #a4 .a4_section { margin-bottom: 20px; }
    #a4 .cert_grid .cert_img:last-child:nth-child(odd) { grid-column: span 2; }
}
@media (max-width: 480px) {
    #a4 .a4_tab_nav button { font-size: 13px; padding: 10px 10px; max-width: none; }
    #a4 .desig_table thead { display: none; }
    #a4 .desig_table tbody tr { display: block; padding: 10px 0; }
    #a4 .desig_table tbody th, #a4 .desig_table tbody td { display: block; width: 100%; box-sizing: border-box; border-bottom: none; text-align: left; padding: 4px 12px; }
    #a4 .desig_table tbody th { font-weight: 700; color: #1a3a6e; }
    #a4 .desig_table tbody td.td_org { width: 100%; border-bottom: 1px solid #ddd; background: #f8f8f8; }
    #a4 .desig_table { border-bottom: none; }
    #a4 .cert_grid { grid-template-columns: repeat(2, 1fr); }
    #a4 .cert_grid3 { grid-template-columns: repeat(2, 1fr); }
    #a4 .cert_grid4 { grid-template-columns: repeat(2, 1fr); }
    #a4 .cert_grid .cert_img:last-child:nth-child(odd) { grid-column: span 2; }
}
/* a4 */

/*a6*/
#a6 .a6_wrap {max-width: 1600px; margin: 0 auto; padding: 0 40px 80px;}

/* 타이틀 */
#a6 .a6_title_area {text-align: center; margin-bottom: 60px;}
#a6 .a6_label {display: inline-block; font-size: 12px; font-weight: 700; letter-spacing: 5px; color: #1a3a6e; text-transform: uppercase; margin-bottom: 16px; padding: 6px 18px; border: 1px solid #c2ccee; border-radius: 20px;}
#a6 .a6_title {font-size: 42px; font-weight: 900; color: #111; letter-spacing: -1px; margin: 0 0 14px;}
#a6 .a6_desc {font-size: 16px; color: #777;}

/* 지도 */
#a6 .a6_map_wrap {border-radius: 20px; overflow: hidden; box-shadow: 0 16px 48px rgba(15,34,128,0.10); margin-bottom: 0;}
#a6 .root_daum_roughmap {width: 100% !important; border-radius: 20px;}
.root_daum_roughmap .cont{display: none;}
.root_daum_roughmap .wrap_controllers{display: none;}

/* 정보 카드 리스트 */
#a6 .a6_info_list {display: grid; grid-template-columns: repeat(3, 1fr); gap: 0; margin: 0; padding: 0; list-style: none; background: #1a3a6e; border-radius: 0 0 20px 20px; overflow: hidden;}
#a6 .a6_info_list li {display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 14px; padding: 36px 24px; text-align: center; position: relative; transition: background 0.3s ease;}
#a6 .a6_info_list li:not(:last-child) {border-right: 1px solid rgba(255,255,255,0.1);}
#a6 .a6_info_list li:hover {background: rgba(255,255,255,0.07);}
#a6 .a6_info_list li .icon {width: 52px; height: 52px; border-radius: 50%; background: rgba(255,255,255,0.1); display: flex; align-items: center; justify-content: center; transition: background 0.3s ease;}
#a6 .a6_info_list li:hover .icon {background: rgba(255,255,255,0.2);}
#a6 .a6_info_list li .icon i {font-size: 20px; color: #7eb3ff;}
#a6 .a6_info_list li p {font-size: 15px; color: rgba(255,255,255,0.85); line-height: 1.6; margin: 0; word-break: keep-all;}

/* 교통안내 */
#a6 .a6_transport {margin-top: 60px;}
#a6 .a6_transport_header {display: flex; align-items: center; margin-bottom: 24px; padding-bottom: 16px; border-bottom: 2px solid #1a3a6e;}
#a6 .a6_transport_header h3 {font-size: 28px; font-weight: 700; color: #1a3a6e; display: flex; align-items: center; gap: 10px;}
#a6 .a6_tab_btns {display: flex; gap: 0; border: 1px solid #d0d9e8; border-radius: 10px; overflow: hidden; margin-bottom: 28px; width: fit-content;}
#a6 .a6_tab_btn {display: flex; align-items: center; gap: 8px; padding: 13px 28px; background: #f7f9fc; border: none; border-right: 1px solid #d0d9e8; cursor: pointer; font-size: 16px; font-weight: 600; color: #6b7a99; transition: all 0.25s ease; white-space: nowrap;}
#a6 .a6_tab_btn:last-child {border-right: none;}
#a6 .a6_tab_btn i {font-size: 15px;}
#a6 .a6_tab_btn:hover {background: #e8eef7; color: #1a3a6e;}
#a6 .a6_tab_btn.active {background: #1a3a6e; color: #fff;}
#a6 .a6_tab_content {display: none;}
#a6 .a6_tab_content.active {display: block;}
#a6 .a6_transport_grid {display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px;}
#a6 .a6_transport_card {background: #f7f9fc; border: 1px solid #d0d9e8; border-radius: 10px; padding: 20px 22px; transition: box-shadow 0.2s;}
#a6 .a6_transport_card:hover {box-shadow: 0 4px 16px rgba(26,58,110,0.10);}
#a6 .a6_transport_card--highlight {background: #eef3fb; border-color: #1a3a6e;}
#a6 .a6_transport_card_label {display: flex; align-items: center; gap: 8px; font-size: 18px; font-weight: 700; color: #1a3a6e; margin-bottom: 12px; padding-bottom: 10px; border-bottom: 1px solid #d0d9e8;}
#a6 .a6_transport_list {list-style: none; padding: 0; margin: 0; display: flex; flex-direction: column; gap: 8px;}
#a6 .a6_transport_list li {font-size: 16px; color: #333; line-height: 1.7; padding-left: 10px; border-left: 2px solid #b0bdd6;}
#a6 .a6_transport_list li strong {color: #1a3a6e;}
#a6 .a6_bus_badge {display: inline-block; background: #1a3a6e; color: #fff; font-size: 14px; font-weight: 300; padding: 2px 7px; border-radius: 4px; margin-right: 4px; vertical-align: middle;}
#a6 .a6_transport_sub {font-size: 14px; color: #7a8aaa; display: block; margin-top: 2px;}

/* 반응형 */
@media (max-width: 1024px) {
    #a6 .a6_wrap {padding: 0;}
    #a6 .a6_title {font-size: 34px;}
    #a6 .a6_info_list li {padding: 28px 16px;}
    #a6 .a6_info_list li p {font-size: 13px;}
    #a6 .a6_transport_grid {grid-template-columns: repeat(2, 1fr);}
}
@media (max-width: 768px) {
    #a6 .a6_title {font-size: 28px;}
    #a6 .a6_title_area {margin-bottom: 40px;}
    #a6 .a6_info_list {grid-template-columns: repeat(2, 1fr); border-radius: 0 0 16px 16px;}
    #a6 .a6_info_list li:nth-child(2) {border-right: none;}
    #a6 .a6_info_list li:nth-child(1), #a6 .a6_info_list li:nth-child(2) {border-bottom: 1px solid rgba(255,255,255,0.1);}
    #a6 .a6_transport {margin-top: 40px;}
    #a6 .a6_tab_btns {width: 100%;}
    #a6 .a6_tab_btn {flex: 1; justify-content: center; padding: 11px 10px; font-size: 12px;}
    #a6 .a6_tab_btn span {display: none;}
    #a6 .a6_tab_btn i {font-size: 16px;}
    #a6 .a6_transport_grid {grid-template-columns: 1fr; gap: 12px;}
    #a6 .a6_transport_header h3 {font-size: 17px;}
}
@media (max-width: 480px) {
    #a6 .a6_title {font-size: 24px;}
    #a6 .a6_label {font-size: 11px; letter-spacing: 3px;}
    #a6 .a6_info_list {grid-template-columns: 1fr 1fr;}
    #a6 .a6_info_list li {padding: 22px 12px; gap: 10px;}
    #a6 .a6_info_list li .icon {width: 42px; height: 42px;}
    #a6 .a6_info_list li .icon i {font-size: 17px;}
    #a6 .a6_info_list li p {font-size: 12px;}
}
/*a6*/

/* b1 */
#b1 { max-width: 1400px; margin: 0 auto; padding: 60px 0 80px; }
#b1 p{font-size: 18px; word-break: keep-all;}
 
/* 페이지 타이틀 */
#b1 .b1_page_title { font-size: 28px; font-weight: 700; color: #222; text-align: center; margin-bottom: 50px; }
 
/* 섹션 타이틀 */
#b1 .sec_title { display: flex; align-items: center; gap: 10px; font-size: 28px; font-weight: 700; color: #1a3a6e; margin-bottom: 30px; }
#b1 .sec_title::before { content: '☑'; font-size: 28px; color: #1a3a6e; font-weight: 100; margin-bottom: 3px;}
 
/* 섹션 간격 */
#b1 .b1_section { margin-bottom: 60px; }
 
/* ── 안내 박스 ── */
#b1 .info_box { display: flex; align-items: flex-start; gap: 30px; border: 1px solid #c8d8f0; background: #f4f7fc; padding: 30px; border-left: 4px solid #1a3a6e; }
#b1 .info_box .info_txt { flex: 1; }
#b1 .info_box .info_txt ul { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 10px; }
#b1 .info_box .info_txt ul li { font-size: 18px; color: #333; line-height: 1.7; padding-left: 16px; position: relative; }
#b1 .info_box .info_txt ul li::before { content: '•'; position: absolute; left: 0; color: #1a3a6e; font-weight: 700; }
#b1 .info_box .info_img { width: 200px; flex-shrink: 0; }
#b1 .info_box .info_img img { width: 100%; display: block; }
 
/* ── 목적 박스 ── */
#b1 .purpose_box { background: #f9f9f9; border-top: 2px solid #1a3a6e; border-bottom: 1px solid #ddd; padding: 22px 26px; font-size: 15px; color: #444; line-height: 1.8; }
#b1 .purpose_box p { margin: 0; padding-left: 16px; position: relative; }
#b1 .purpose_box p::before { content: '•'; position: absolute; left: 0; color: #1a3a6e; font-weight: 700; }
 
/* ── 법규 목록 ── */
#b1 .law_list { list-style: none; margin: 0; padding: 0; border-top: 2px solid #1a3a6e; border-bottom: 1px solid #ddd; }
#b1 .law_list li { padding: 13px 20px; border-bottom: 1px solid #eee; font-size: 18px; color: #444; line-height: 1.6; padding-left: 36px; position: relative; }
#b1 .law_list li:last-child { border-bottom: none; }
#b1 .law_list li::before { content: '•'; position: absolute; left: 20px; color: #1a3a6e; font-weight: 700; }
#b1 .law_list li:nth-child(even) { background: #fafafa; }
 
/* ── 진단 설명 ── */
#b1 .diag_desc { list-style: none; margin: 0 0 20px; padding: 0; display: flex; flex-direction: column; gap: 10px; }
#b1 .diag_desc li { font-size: 18px; color: #444; line-height: 1.7; padding-left: 16px; position: relative; }
#b1 .diag_desc li::before { content: '•'; position: absolute; left: 0; color: #1a3a6e; font-weight: 700; }
 
/* ── 공통 테이블 ── */
#b1 .b1_table { width: 100%; border-collapse: collapse; border-top: 2px solid #1a3a6e; border-bottom: 1px solid #ddd; margin-top: 10px; }
#b1 .b1_table th, #b1 .b1_table td { padding: 14px 18px; border: 1px solid #ddd; font-size: 18px; vertical-align: middle; }
#b1 .b1_table thead th { background: #1a3a6e; color: #fff; font-weight: 700; text-align: center; }
#b1 .b1_table tbody th { background: #f2f5fa; font-weight: 600; color: #1a3a6e; text-align: center; width: 14%; }
#b1 .b1_table tbody td { color: #444; line-height: 1.7; }
#b1 .b1_table tbody td ol { margin: 0; padding-left: 20px; display: flex; flex-direction: column; gap: 4px; }
#b1 .b1_table tbody td ol li { font-size: 18px; }
#b1 .b1_table tr:last-child th, #b1 .b1_table tr:last-child td { border-bottom: none; }
 
/* ── 절차 플로우 ── */
#b1 .flow_wrap { display: flex; flex-direction: column; gap: 0; }
#b1 .flow_item { display: flex; align-items: stretch; gap: 30px; margin-bottom: 0; }
#b1 .flow_item + .flow_item { margin-top: 16px; }
#b1 .flow_step { display: flex; align-items: center; justify-content: center; min-width: 180px; background: #1a3a6e; color: #fff; font-size: 20px; font-weight: 700; padding: 20px 14px; text-align: center; border-radius: 30px; flex-shrink: 0; }
#b1 .flow_arrow { display: flex; align-items: center; justify-content: center; color: #1a3a6e; font-size: 22px; flex-shrink: 0; }
#b1 .flow_desc { flex: 1; border: 1px solid #c8d8f0; background: #f4f7fc; padding: 16px 22px; display: flex; flex-direction: column; justify-content: center; }
#b1 .flow_desc ul { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 6px; }
#b1 .flow_desc ul li { font-size: 16px; color: #444; padding-left: 14px; position: relative; line-height: 1.6; }
#b1 .flow_desc ul li::before { content: '-'; position: absolute; left: 0; color: #1a3a6e; }
 
/* ── 연락처 ── */
#b1 .contact_wrap { display: flex; align-items: center; gap: 50px; flex-wrap: wrap; }
#b1 .contact_item { display: flex; align-items: center; gap: 16px; }
#b1 .contact_icon { width: 56px; height: 56px; border-radius: 50%; background: #1a3a6e; display: flex; align-items: center; justify-content: center; flex-shrink: 0; }
#b1 .contact_icon i { font-size: 22px; color: #fff; }
#b1 .contact_info .contact_label { font-size: 16px; color: #1a3a6e; font-weight: 600; margin-bottom: 3px; }
#b1 .contact_info .contact_val { font-size: 20px; font-weight: 700; color: #222; }
#b1 .contact_info .contact_sub { font-size: 13px; color: #666; margin-top: 2px; }
/* ── 반응형 ── */
@media (max-width: 1024px) {
    #b1 .flow_step { min-width: 140px; font-size: 14px; }
}
@media (max-width: 768px) {
    #b1 { padding: 0px; }
    #b1 .b1_page_title { font-size: 22px; margin-bottom: 30px; }
    #b1 .sec_title { font-size: 17px;margin-bottom: 10px; }
    #b1 .info_box { flex-direction: column; padding: 20px 10px; }
    #b1 .info_box .info_img { width: 140px; margin: 0 auto; }
    #b1 .b1_table th, #b1 .b1_table td { padding: 10px 12px; font-size: 14px; }
    #b1 .flow_item { flex-direction: column; gap: 10px; }
    #b1 .flow_step { min-width: auto; border-radius: 8px; padding: 14px; }
    #b1 .flow_arrow { transform: rotate(90deg); }
    #b1 .contact_wrap {gap: 20px; flex-direction: column;}
    #b1 .b1_section { margin-bottom: 20px; }
    #b1 p{font-size: 14px;}
    #b1 .purpose_box{padding: 15px 10px;}
    #b1 .law_list li{padding: 10px 10px;padding-left: 10px}
    #b1 .law_list li::before{left: 0;}
    #b1 .diag_desc li{    font-size: 14px;}
    #b1 .b1_table tbody td ol li{font-size: 14px;}
    #b1 .sec_title::before{font-size: 18px;    margin-bottom: 2px;}
    #b1 .flow_desc ul li{font-size: 14px;}
    #b1 .contact_info .contact_label{font-size: 14px;}
    #b1 .contact_info .contact_val{font-size: 16px;}
}
@media (max-width: 480px) {
    #b1 .b1_page_title { font-size: 18px; }
    #b1 .sec_title { font-size: 15px; }
    #b1 .info_box .info_txt ul li { font-size: 14px; }
    #b1 .law_list li { font-size: 14px; }
    #b1 .b1_table { display: block; overflow-x: auto; }
    #b1 .contact_item { flex-direction: column; text-align: center; }
}
/* b1 */

/* b2 */
#b2 { max-width: 1400px; margin: 0 auto; padding: 60px 0 80px; }
#b2 p{font-size: 18px; word-break: keep-all;}
 
/* 페이지 타이틀 */
#b2 .b2_page_title { font-size: 28px; font-weight: 700; color: #222; text-align: center; margin-bottom: 50px; }
 
/* 섹션 타이틀 */
#b2 .sec_title { display: flex; align-items: center; gap: 10px; font-size: 28px; font-weight: 700; color: #1a3a6e; margin-bottom: 30px; }
#b2 .sec_title::before { content: '☑'; font-size: 28px; color: #1a3a6e; font-weight: 100; margin-bottom: 3px;}
 
/* 섹션 간격 */
#b2 .b2_section { margin-bottom: 60px; }
 
/* ── 안내 박스 ── */
#b2 .info_box { display: flex; align-items: flex-start; gap: 30px; border: 1px solid #c8d8f0; background: #f4f7fc; padding: 30px; border-left: 4px solid #1a3a6e; }
#b2 .info_box .info_txt { flex: 1; }
#b2 .info_box .info_txt ul { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 10px; }
#b2 .info_box .info_txt ul li { font-size: 18px; color: #333; line-height: 1.7; padding-left: 16px; position: relative; }
#b2 .info_box .info_txt ul li::before { content: '•'; position: absolute; left: 0; color: #1a3a6e; font-weight: 700; }
#b2 .info_box .info_img { width: 200px; flex-shrink: 0; }
#b2 .info_box .info_img img { width: 100%; display: block; }
 
/* ── 목적 박스 ── */
#b2 .purpose_box { background: #f9f9f9; border-top: 2px solid #1a3a6e; border-bottom: 1px solid #ddd; padding: 22px 26px; font-size: 15px; color: #444; line-height: 1.8; }
#b2 .purpose_box p { margin: 0; padding-left: 16px; position: relative; }
#b2 .purpose_box p::before { content: '•'; position: absolute; left: 0; color: #1a3a6e; font-weight: 700; }
 
/* ── 법규 목록 ── */
#b2 .law_list { list-style: none; margin: 0; padding: 0; border-top: 2px solid #1a3a6e; border-bottom: 1px solid #ddd; }
#b2 .law_list li { padding: 13px 20px; border-bottom: 1px solid #eee; font-size: 18px; color: #444; line-height: 1.6; padding-left: 36px; position: relative; }
#b2 .law_list li:last-child { border-bottom: none; }
#b2 .law_list li::before { content: '•'; position: absolute; left: 20px; color: #1a3a6e; font-weight: 700; }
#b2 .law_list li:nth-child(even) { background: #fafafa; }
 
/* ── 진단 설명 ── */
#b2 .diag_desc { list-style: none; margin: 0 0 20px; padding: 0; display: flex; flex-direction: column; gap: 10px; }
#b2 .diag_desc li { font-size: 18px; color: #444; line-height: 1.7; padding-left: 16px; position: relative; }
#b2 .diag_desc li::before { content: '•'; position: absolute; left: 0; color: #1a3a6e; font-weight: 700; }
 
/* ── 공통 테이블 ── */
#b2 .b2_table { width: 100%; border-collapse: collapse; border-top: 2px solid #1a3a6e; border-bottom: 1px solid #ddd; margin-top: 10px; }
#b2 .b2_table th, #b2 .b2_table td { padding: 14px 18px; border: 1px solid #ddd; font-size: 18px; vertical-align: middle; }
#b2 .b2_table thead th { background: #1a3a6e; color: #fff; font-weight: 700; text-align: center; }
#b2 .b2_table tbody th { background: #f2f5fa; font-weight: 600; color: #1a3a6e; text-align: center; width: 14%; }
#b2 .b2_table tbody td { color: #444; line-height: 1.7; }
#b2 .b2_table tbody td ol { margin: 0; padding-left: 20px; display: flex; flex-direction: column; gap: 4px; }
#b2 .b2_table tbody td ol li { font-size: 18px; }
#b2 .b2_table tr:last-child th, #b2 .b2_table tr:last-child td { border-bottom: none; }
 
/* ── 절차 플로우 ── */
#b2 .flow_wrap { display: flex; flex-direction: column; gap: 0; }
#b2 .flow_item { display: flex; align-items: stretch; gap: 30px; margin-bottom: 0; }
#b2 .flow_item + .flow_item { margin-top: 16px; }
#b2 .flow_step { display: flex; align-items: center; justify-content: center; min-width: 180px; background: #1a3a6e; color: #fff; font-size: 20px; font-weight: 700; padding: 20px 14px; text-align: center; border-radius: 30px; flex-shrink: 0; }
#b2 .flow_arrow { display: flex; align-items: center; justify-content: center; color: #1a3a6e; font-size: 22px; flex-shrink: 0; }
#b2 .flow_desc { flex: 1; border: 1px solid #c8d8f0; background: #f4f7fc; padding: 16px 22px; display: flex; flex-direction: column; justify-content: center; }
#b2 .flow_desc ul { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 6px; }
#b2 .flow_desc ul li { font-size: 16px; color: #444; padding-left: 14px; position: relative; line-height: 1.6; }
#b2 .flow_desc ul li::before { content: '-'; position: absolute; left: 0; color: #1a3a6e; }
 
/* ── 연락처 ── */
#b2 .contact_wrap { display: flex; align-items: center; gap: 50px; flex-wrap: wrap; }
#b2 .contact_item { display: flex; align-items: center; gap: 16px; }
#b2 .contact_icon { width: 56px; height: 56px; border-radius: 50%; background: #1a3a6e; display: flex; align-items: center; justify-content: center; flex-shrink: 0; }
#b2 .contact_icon i { font-size: 22px; color: #fff; }
#b2 .contact_info .contact_label { font-size: 16px; color: #1a3a6e; font-weight: 600; margin-bottom: 3px; }
#b2 .contact_info .contact_val { font-size: 20px; font-weight: 700; color: #222; }
#b2 .contact_info .contact_sub { font-size: 13px; color: #666; margin-top: 2px; }
/* ── 반응형 ── */
@media (max-width: 1024px) {
    #b2 .flow_step { min-width: 140px; font-size: 14px; }
}
@media (max-width: 768px) {
    #b2 { padding: 0px; }
    #b2 .b2_page_title { font-size: 22px; margin-bottom: 30px; }
    #b2 .sec_title { font-size: 17px;margin-bottom: 10px; }
    #b2 .info_box { flex-direction: column; padding: 20px 10px; }
    #b2 .info_box .info_img { width: 140px; margin: 0 auto; }
    #b2 .b2_table th, #b2 .b2_table td { padding: 10px 12px; font-size: 14px; }
    #b2 .flow_item { flex-direction: column; gap: 10px; }
    #b2 .flow_step { min-width: auto; border-radius: 8px; padding: 14px; }
    #b2 .flow_arrow { transform: rotate(90deg); }
    #b2 .contact_wrap {gap: 20px; flex-direction: column;}
    #b2 .b2_section { margin-bottom: 20px; }
    #b2 p{font-size: 14px;}
    #b2 .purpose_box{padding: 15px 10px;}
    #b2 .law_list li{padding: 10px 10px;padding-left: 10px}
    #b2 .law_list li::before{left: 0;}
    #b2 .diag_desc li{    font-size: 14px;}
    #b2 .b2_table tbody td ol li{font-size: 14px;}
    #b2 .sec_title::before{font-size: 18px;    margin-bottom: 2px;}
    #b2 .flow_desc ul li{font-size: 14px;}
    #b2 .contact_info .contact_label{font-size: 14px;}
    #b2 .contact_info .contact_val{font-size: 16px;}
}
@media (max-width: 480px) {
    #b2 .b2_page_title { font-size: 18px; }
    #b2 .sec_title { font-size: 15px; }
    #b2 .info_box .info_txt ul li { font-size: 14px; }
    #b2 .law_list li { font-size: 14px; }
    #b2 .b2_table { display: block; overflow-x: auto; }
    #b2 .contact_item { flex-direction: column; text-align: center; }
}
/* b2 */

/* b3 */
#b3 { max-width: 1400px; margin: 0 auto; padding: 60px 0 80px; }
#b3 p { font-size: 18px; word-break: keep-all; }
 
/* 섹션 타이틀 */
#b3 .sec_title { display: flex; align-items: center; gap: 10px; font-size: 28px; font-weight: 700; color: #1a3a6e; margin-bottom: 30px; }
#b3 .sec_title::before { content: '☑'; font-size: 28px; color: #1a3a6e; font-weight: 100; margin-bottom: 3px; }
 
/* 섹션 간격 */
#b3 .b3_section { margin-bottom: 60px; }
 
/* ── 안내 박스 ── */
#b3 .info_box { display: flex; align-items: flex-start; gap: 30px; border: 1px solid #c8d8f0; background: #f4f7fc; padding: 30px; border-left: 4px solid #1a3a6e; }
#b3 .info_box .info_txt { flex: 1; }
#b3 .info_box .info_txt > p { font-size: 18px; font-weight: 600; color: #1a3a6e; margin: 0 0 14px; }
#b3 .info_box .info_txt ul { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 8px; }
#b3 .info_box .info_txt ul li { font-size: 18px; color: #333; line-height: 1.7; padding-left: 16px; position: relative; }
#b3 .info_box .info_txt ul li::before { content: '•'; position: absolute; left: 0; color: #1a3a6e; font-weight: 700; }
#b3 .info_box .info_txt ul li.indent { padding-left: 28px; }
#b3 .info_box .info_txt ul li.indent::before { content: '-'; left: 14px; }
#b3 .info_box .info_img { width: 200px; flex-shrink: 0; }
#b3 .info_box .info_img img { width: 100%; display: block; }
 
/* ── 목적 박스 ── */
#b3 .purpose_box { background: #f9f9f9; border-top: 2px solid #1a3a6e; border-bottom: 1px solid #ddd; padding: 22px 26px; line-height: 1.8; }
#b3 .purpose_box p { margin: 0; padding-left: 16px; position: relative; font-size: 18px; color: #444; }
#b3 .purpose_box p::before { content: '•'; position: absolute; left: 0; color: #1a3a6e; font-weight: 700; }
 
/* ── 법규 목록 ── */
#b3 .law_list { list-style: none; margin: 0; padding: 0; border-top: 2px solid #1a3a6e; border-bottom: 1px solid #ddd; }
#b3 .law_list li { padding: 13px 20px 13px 36px; border-bottom: 1px solid #eee; font-size: 18px; color: #444; line-height: 1.6; position: relative; }
#b3 .law_list li:last-child { border-bottom: none; }
#b3 .law_list li::before { content: '•'; position: absolute; left: 20px; color: #1a3a6e; font-weight: 700; }
#b3 .law_list li:nth-child(even) { background: #fafafa; }
#b3 .law_list li.note { color: #1a3a6e; font-size: 14px; background: #f0f4fb; }
#b3 .law_list li.note::before { content: '※'; color: #1a3a6e; }
 
/* ── 단계별 절차 다이어그램 ── */
#b3 .flow_diagram { border: 1px solid #e0e0e0; background: #fff; padding: 36px 30px; overflow-x: auto; }
#b3 .fd_wrap { min-width: 760px; }
#b3 .fd_row_top { display: flex; align-items: center; }
#b3 .fd_circle_split { width:180px; height:180px; border-radius: 50%;  overflow: hidden; flex-shrink: 0; display: flex; flex-direction: column; }
#b3 .fd_circle_split .fd_half_top { flex: 1; display: flex; align-items: center; justify-content: center; font-size: 16px; font-weight: 700; color: #fff; background: #3767b5; border-bottom: 2px solid #ffffff; }
#b3 .fd_circle_split .fd_half_bot { flex: 1; display: flex; align-items: center; justify-content: center; font-size: 16px; font-weight: 700; color: #fff; background: #1a3a6e; }
#b3 .fd_arrow_col { display: flex; flex-direction: column; align-items: center; gap: 4px; padding: 0 18px; flex-shrink: 0; }
#b3 .fd_arrow_col .fd_alabel { font-size: 13px; color: #333; }
#b3 .fd_orange_r { width: 68px; height: 32px; background: #f5a623; clip-path: polygon(0 22%,78% 22%,78% 0%,100% 50%,78% 100%,78% 78%,0 78%); }
#b3 .fd_grid { flex: 1; display: flex; flex-direction: column; }
#b3 .fd_grid_top { display: flex; }
#b3 .fd_grid_top .fd_gcell { flex: 1; background: #3767b5; color: #fff; font-size: 16px; font-weight: 700; text-align: center; padding: 18px 10px; border-right: 2px solid #fff; line-height: 1.4; }
#b3 .fd_grid_top .fd_gcell:last-child { border-right: none; }
#b3 .fd_grid_bot { background: #1a3a6e; color: #fff; font-size: 16px; font-weight: 700; text-align: center; padding: 12px 10px; margin-top: 2px; }
#b3 .fd_fork_col { display: flex; align-items: center; padding: 0 12px; flex-shrink: 0; }
#b3 .fd_fork_box { position: relative; width: 52px; height: 76px; }
#b3 .fd_fork_box .fork_badge { position: absolute; left: 0; top: 50%; transform: translateY(-50%); width: 26px; height: 26px; border-radius: 50%;  font-size: 13px; display: flex; align-items: center; justify-content: center; z-index: 1; }
#b3 .fd_fork_box .fork_vline { position: absolute; right: 12px; top: 7px; width: 8px; height: calc(100% - 14px); background: #f5a623; }
#b3 .fd_fork_box .fork_arr_top { position: absolute; top: 4px; right: 0; width: 32px; height: 12px; background: #f5a623; clip-path: polygon(0 22%,78% 22%,78% 0%,100% 50%,78% 100%,78% 78%,0 78%); }
#b3 .fd_fork_box .fork_arr_bot { position: absolute; bottom: 4px; right: 0; width: 32px; height: 12px; background: #f5a623; clip-path: polygon(0 22%,78% 22%,78% 0%,100% 50%,78% 100%,78% 78%,0 78%); }
#b3 .fd_result_col { display: flex; flex-direction: column; justify-content: space-around; gap: 6px; height: 76px; flex-shrink: 0; padding-right: 6px; }
#b3 .fd_result_col span { font-size: 15px; font-weight: 600; color: #333; white-space: nowrap; }
#b3 .fd_row_bot { display: flex; margin-top: 6px; }
#b3 .fd_bot_left { flex-shrink: 0; display: flex; flex-direction: column; align-items: flex-start; gap: 8px; padding-top: 6px; width: 240px; }
#b3 .fd_bot_spacer { flex: 0.5; }
#b3 .fd_bot_right { flex-shrink: 0; display: flex; flex-direction: column; align-items: flex-start; gap: 8px; padding-top: 6px; padding-right: 70px; }
#b3 .fd_varrow_group { display: flex; align-items: center; gap: 8px; }
#b3 .fd_varrow_group .fd_vlabel { font-size: 13px; color: #555; white-space: nowrap; }
#b3 .fd_varrow_group .fd_varr_badge { width: 26px; height: 26px; border-radius: 50%;  font-size: 13px; display: flex; align-items: center; justify-content: center; flex-shrink: 0; }
#b3 .fd_v_down { width: 16px; height: 52px; background: #f5a623; clip-path: polygon(22% 0%,78% 0%,78% 66%,100% 66%,50% 100%,0% 66%,22% 66%); flex-shrink: 0; }
#b3 .fd_v_up { width: 16px; height: 52px; background: #f5a623; clip-path: polygon(50% 0%,100% 34%,78% 34%,78% 100%,22% 100%,22% 34%,0% 34%); flex-shrink: 0; }
#b3 .fd_green_boxes { display: flex; flex-direction: column; gap: 3px; }
#b3 .fd_gbox_l { background: #3767b5; color: #fff; font-size: 15px; font-weight: 700; padding:12px 35px; text-align: center; }
#b3 .fd_gbox_d { background: #1a3a6e; color: #fff; font-size: 15px; font-weight: 700; padding: 10px 20px; text-align: center; }
 
/* ── 불릿 목록 ── */
#b3 .b3_list { list-style: none; margin: 0; padding: 0; border-top: 2px solid #1a3a6e; border-bottom: 1px solid #ddd; }
#b3 .b3_list li { padding: 13px 20px 13px 36px; border-bottom: 1px solid #eee; font-size: 18px; color: #444; line-height: 1.7; position: relative; }
#b3 .b3_list li:last-child { border-bottom: none; }
#b3 .b3_list li::before { content: '•'; position: absolute; left: 20px; color: #1a3a6e; font-weight: 700; }
#b3 .b3_list li:nth-child(even) { background: #fafafa; }
 
/* ── 평가대상 박스 ── */
#b3 .eval_group { margin-bottom: 20px; }
#b3 .eval_group_title { font-size: 18px; font-weight: 700; color: #1a3a6e; margin-bottom: 10px; padding-left: 12px; border-left: 3px solid #1a3a6e; }
#b3 .eval_group ul { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 8px; }
#b3 .eval_group ul li { font-size: 16px; color: #444; line-height: 1.7; padding-left: 16px; position: relative; }
#b3 .eval_group ul li::before { content: '•'; position: absolute; left: 0; color: #1a3a6e; font-weight: 700; }
 
/* ── 평가 추진절차 인라인 플로우 ── */
#b3 .inline_flow { display: flex; align-items: center; flex-wrap: wrap; gap: 6px; padding: 20px; background: #f4f7fc; border: 1px solid #c8d8f0; }
#b3 .inline_flow .if_step { background: #1a3a6e; color: #fff; font-size: 15px; font-weight: 600; padding: 10px 16px; text-align: center; white-space: nowrap; }
#b3 .inline_flow .if_arrow { color: #1a3a6e; font-size: 18px; font-weight: 700; }
 
/* ── 공통 테이블 ── */
#b3 .b3_table { width: 100%; border-collapse: collapse; border-top: 2px solid #1a3a6e; border-bottom: 1px solid #ddd; margin-top: 10px; }
#b3 .b3_table th, #b3 .b3_table td { padding: 14px 18px; border: 1px solid #ddd; font-size: 18px; vertical-align: middle; }
#b3 .b3_table thead th { background: #1a3a6e; color: #fff; font-weight: 700; text-align: center; }
#b3 .b3_table tbody th { background: #f2f5fa; font-weight: 600; color: #1a3a6e; text-align: center; width: 14%; }
#b3 .b3_table tbody td { color: #444; line-height: 1.7; }
 
/* ── 연락처 ── */
#b3 .contact_wrap { display: flex; align-items: center; gap: 50px; flex-wrap: wrap; }
#b3 .contact_item { display: flex; align-items: center; gap: 16px; }
#b3 .contact_icon { width: 56px; height: 56px; border-radius: 50%; background: #1a3a6e; display: flex; align-items: center; justify-content: center; flex-shrink: 0; }
#b3 .contact_icon i { font-size: 22px; color: #fff; }
#b3 .contact_info .contact_label { font-size: 16px; color: #1a3a6e; font-weight: 600; margin-bottom: 3px; }
#b3 .contact_info .contact_val { font-size: 20px; font-weight: 700; color: #222; }
#b3 .contact_info .contact_sub { font-size: 13px; color: #666; margin-top: 2px; }
 
/* ── 반응형 ── */
@media (max-width: 1024px) {
    #b3 .flow_diagram .fd_box { font-size: 13px; padding: 12px 12px; }
    #b3 .flow_diagram .fd_circle { width: 76px; height: 76px; font-size: 13px; }
}
@media (max-width: 768px) {
    #b3 { padding: 0; }
    #b3 .sec_title { font-size: 18px; margin-bottom: 10px; }
    #b3 .sec_title::before { font-size: 18px; }
    #b3 .info_box { flex-direction: column; padding: 20px 14px; }
    #b3 .info_box .info_img { width: 140px; margin: 0 auto; }
    #b3 .info_box .info_txt ul li { font-size: 14px; }
    #b3 .law_list li { font-size: 14px; padding: 10px 10px 10px 24px; }
    #b3 .law_list li::before { left: 8px; }
    #b3 .b3_list li { font-size: 14px; padding: 10px 10px 10px 24px; }
    #b3 .b3_list li::before { left: 8px; }
    #b3 .purpose_box p { font-size: 14px; }
    #b3 .flow_diagram { padding: 20px 12px; overflow-x: auto; }
    #b3 .flow_diagram .fd_top { min-width: 600px; }
    #b3 .flow_diagram .fd_bottom { min-width: 600px; }
    #b3 .inline_flow .if_step { font-size: 13px; padding: 8px 12px; }
    #b3 .contact_wrap { gap: 20px; flex-direction: column; }
    #b3 .b3_section { margin-bottom: 30px; }
    #b3 p { font-size: 14px; }
    #b3 .eval_group_title { font-size: 14px; }
    #b3 .eval_group ul li { font-size: 14px; }
    #b3 .b3_table th, #b3 .b3_table td { font-size: 14px; padding: 10px 10px; }
    #b3 .contact_info .contact_label { font-size: 14px; }
    #b3 .contact_info .contact_val { font-size: 16px; }
}
@media (max-width: 480px) {
    #b3 .sec_title { font-size: 15px; }
    #b3 .b3_table thead { display: none; }
    #b3 .b3_table tbody tr { display: block; border-bottom: 1px solid #ddd; margin-bottom: 8px; }
    #b3 .b3_table tbody th, #b3 .b3_table tbody td { display: block; width: 100%; box-sizing: border-box; border-bottom: none; text-align: left; }
    #b3 .b3_table { border-bottom: none; }
    #b3 .contact_item { flex-direction: column; text-align: center; }
    #b3 .inline_flow { gap: 4px; }
    #b3 .inline_flow .if_step { font-size: 12px; padding: 7px 10px; }
}
/* b3 */

/* b4 */
#b4 { max-width: 1400px; margin: 0 auto; padding: 60px 0 80px; }
#b4 p{font-size: 18px; word-break: keep-all;}
 
/* 페이지 타이틀 */
#b4 .b4_page_title { font-size: 28px; font-weight: 700; color: #222; text-align: center; margin-bottom: 50px; }
 
/* 섹션 타이틀 */
#b4 .sec_title { display: flex; align-items: center; gap: 10px; font-size: 28px; font-weight: 700; color: #1a3a6e; margin-bottom: 30px; }
#b4 .sec_title::before { content: '☑'; font-size: 28px; color: #1a3a6e; font-weight: 100; margin-bottom: 3px;}
 
/* 섹션 간격 */
#b4 .b4_section { margin-bottom: 60px; }
 
/* ── 안내 박스 ── */
#b4 .info_box { display: flex; align-items: flex-start; gap: 30px; border: 1px solid #c8d8f0; background: #f4f7fc; padding: 30px; border-left: 4px solid #1a3a6e; }
#b4 .info_box .info_txt { flex: 1; }
#b4 .info_box .info_txt ul { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 10px; }
#b4 .info_box .info_txt ul li { font-size: 18px; color: #333; line-height: 1.7; padding-left: 16px; position: relative; }
#b4 .info_box .info_txt ul li::before { content: '•'; position: absolute; left: 0; color: #1a3a6e; font-weight: 700; }
#b4 .info_box .info_img { width: 200px; flex-shrink: 0; }
#b4 .info_box .info_img img { width: 100%; display: block; }
 
/* ── 목적 박스 ── */
#b4 .purpose_box { background: #f9f9f9; border-top: 2px solid #1a3a6e; border-bottom: 1px solid #ddd; padding: 22px 26px; font-size: 15px; color: #444; line-height: 1.8; }
#b4 .purpose_box p { margin: 0; padding-left: 16px; position: relative; }
#b4 .purpose_box p::before { content: '•'; position: absolute; left: 0; color: #1a3a6e; font-weight: 700; }
 
/* ── 법규 목록 ── */
#b4 .law_list { list-style: none; margin: 0; padding: 0; border-top: 2px solid #1a3a6e; border-bottom: 1px solid #ddd; }
#b4 .law_list li { padding: 13px 20px; border-bottom: 1px solid #eee; font-size: 18px; color: #444; line-height: 1.6; padding-left: 36px; position: relative; }
#b4 .law_list li:last-child { border-bottom: none; }
#b4 .law_list li::before { content: '•'; position: absolute; left: 20px; color: #1a3a6e; font-weight: 700; }
#b4 .law_list li:nth-child(even) { background: #fafafa; }
 
/* ── 진단 설명 ── */
#b4 .diag_desc { list-style: none; margin: 0 0 20px; padding: 0; display: flex; flex-direction: column; gap: 10px; }
#b4 .diag_desc li { font-size: 18px; color: #444; line-height: 1.7; padding-left: 16px; position: relative; }
#b4 .diag_desc li::before { content: '•'; position: absolute; left: 0; color: #1a3a6e; font-weight: 700; }
 
/* ── 공통 테이블 ── */
#b4 .b4_table { width: 100%; border-collapse: collapse; border-top: 2px solid #1a3a6e; border-bottom: 1px solid #ddd; margin-top: 10px; }
#b4 .b4_table th, #b4 .b4_table td { padding: 14px 18px; border: 1px solid #ddd; font-size: 18px; vertical-align: middle; }
#b4 .b4_table thead th { background: #1a3a6e; color: #fff; font-weight: 700; text-align: center; }
#b4 .b4_table tbody th { background: #f2f5fa; font-weight: 600; color: #1a3a6e; text-align: center; width: 14%; }
#b4 .b4_table tbody td { color: #444; line-height: 1.7; }
#b4 .b4_table tbody td ol { margin: 0; padding-left: 20px; display: flex; flex-direction: column; gap: 4px; }
#b4 .b4_table tbody td ol li { font-size: 18px; }
#b4 .b4_table tr:last-child th, #b4 .b4_table tr:last-child td { border-bottom: none; }
 
/* ── 절차 플로우 ── */
#b4 .flow_wrap { display: flex; flex-direction: column; gap: 0; }
#b4 .flow_item { display: flex; align-items: stretch; gap: 30px; margin-bottom: 0; }
#b4 .flow_item + .flow_item { margin-top: 16px; }
#b4 .flow_step { display: flex; align-items: center; justify-content: center; min-width: 180px; background: #1a3a6e; color: #fff; font-size: 20px; font-weight: 700; padding: 20px 14px; text-align: center; border-radius: 30px; flex-shrink: 0; }
#b4 .flow_arrow { display: flex; align-items: center; justify-content: center; color: #1a3a6e; font-size: 22px; flex-shrink: 0; }
#b4 .flow_desc { flex: 1; border: 1px solid #c8d8f0; background: #f4f7fc; padding: 16px 22px; display: flex; flex-direction: column; justify-content: center; }
#b4 .flow_desc ul { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 6px; }
#b4 .flow_desc ul li { font-size: 16px; color: #444; padding-left: 14px; position: relative; line-height: 1.6; }
#b4 .flow_desc ul li::before { content: '-'; position: absolute; left: 0; color: #1a3a6e; }
 
/* ── 연락처 ── */
#b4 .contact_wrap { display: flex; align-items: center; gap: 50px; flex-wrap: wrap; }
#b4 .contact_item { display: flex; align-items: center; gap: 16px; }
#b4 .contact_icon { width: 56px; height: 56px; border-radius: 50%; background: #1a3a6e; display: flex; align-items: center; justify-content: center; flex-shrink: 0; }
#b4 .contact_icon i { font-size: 22px; color: #fff; }
#b4 .contact_info .contact_label { font-size: 16px; color: #1a3a6e; font-weight: 600; margin-bottom: 3px; }
#b4 .contact_info .contact_val { font-size: 20px; font-weight: 700; color: #222; }
#b4 .contact_info .contact_sub { font-size: 13px; color: #666; margin-top: 2px; }
/* ── 반응형 ── */
@media (max-width: 1024px) {
    #b4 .flow_step { min-width: 140px; font-size: 14px; }
}
@media (max-width: 768px) {
    #b4 { padding: 0px; }
    #b4 .b4_page_title { font-size: 22px; margin-bottom: 30px; }
    #b4 .sec_title { font-size: 17px;margin-bottom: 10px; }
    #b4 .info_box { flex-direction: column; padding: 20px 10px; }
    #b4 .info_box .info_img { width: 140px; margin: 0 auto; }
    #b4 .b4_table th, #b4 .b4_table td { padding: 10px 12px; font-size: 14px; }
    #b4 .flow_item { flex-direction: column; gap: 10px; }
    #b4 .flow_step { min-width: auto; border-radius: 8px; padding: 14px; }
    #b4 .flow_arrow { transform: rotate(90deg); }
    #b4 .contact_wrap {gap: 20px; flex-direction: column;}
    #b4 .b4_section { margin-bottom: 20px; }
    #b4 p{font-size: 14px;}
    #b4 .purpose_box{padding: 15px 10px;}
    #b4 .law_list li{padding: 10px 10px;padding-left: 10px}
    #b4 .law_list li::before{left: 0;}
    #b4 .diag_desc li{    font-size: 14px;}
    #b4 .b4_table tbody td ol li{font-size: 14px;}
    #b4 .sec_title::before{font-size: 18px;    margin-bottom: 2px;}
    #b4 .flow_desc ul li{font-size: 14px;}
    #b4 .contact_info .contact_label{font-size: 14px;}
    #b4 .contact_info .contact_val{font-size: 16px;}
}
@media (max-width: 480px) {
    #b4 .b4_page_title { font-size: 18px; }
    #b4 .sec_title { font-size: 15px; }
    #b4 .info_box .info_txt ul li { font-size: 14px; }
    #b4 .law_list li { font-size: 14px; }
    #b4 .b4_table { display: block; overflow-x: auto; }
    #b4 .contact_item { flex-direction: column; text-align: center; }
}
/* b4 */

/* c1 */
#c1 { max-width: 1400px; margin: 0 auto; padding: 60px 0 80px; }
#c1 p { font-size: 18px; word-break: keep-all; }
 
/* 섹션 타이틀 */
#c1 .sec_title { display: flex; align-items: center; gap: 10px; font-size: 28px; font-weight: 700; color: #1a3a6e; margin-bottom: 30px; }
#c1 .sec_title::before { content: '☑'; font-size: 28px; color: #1a3a6e; font-weight: 100; margin-bottom: 3px; }
 
/* 섹션 간격 */
#c1 .c1_section { margin-bottom: 60px; }
 
/* ── 안내 박스 ── */
#c1 .info_box { display: flex; align-items: flex-start; gap: 30px; border: 1px solid #c8d8f0; background: #f4f7fc; padding: 30px; border-left: 4px solid #1a3a6e; }
#c1 .info_box .info_txt { flex: 1; }
#c1 .info_box .info_txt > p { font-size: 18px; font-weight: 600; color: #1a3a6e; margin: 0 0 14px; }
#c1 .info_box .info_txt ul { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 8px; }
#c1 .info_box .info_txt ul li { font-size: 18px; color: #333; line-height: 1.7; padding-left: 16px; position: relative; }
#c1 .info_box .info_txt ul li::before { content: '•'; position: absolute; left: 0; color: #1a3a6e; font-weight: 700; }
#c1 .info_box .info_txt ul li.indent { padding-left: 28px; }
#c1 .info_box .info_txt ul li.indent::before { content: '-'; left: 14px; }
#c1 .info_box .info_img { width: 200px; flex-shrink: 0; }
#c1 .info_box .info_img img { width: 100%; display: block; }
 
/* ── 목적 박스 ── */
#c1 .purpose_box { background: #f9f9f9; border-top: 2px solid #1a3a6e; border-bottom: 1px solid #ddd; padding: 22px 26px; line-height: 1.8; }
#c1 .purpose_box p { margin: 0; padding-left: 16px; position: relative; font-size: 18px; color: #444; }
#c1 .purpose_box p::before { content: '•'; position: absolute; left: 0; color: #1a3a6e; font-weight: 700; }
 
/* ── 법규 목록 ── */
#c1 .law_list { list-style: none; margin: 0; padding: 0; border-top: 2px solid #1a3a6e; border-bottom: 1px solid #ddd; }
#c1 .law_list li { padding: 13px 20px 13px 36px; border-bottom: 1px solid #eee; font-size: 18px; color: #444; line-height: 1.6; position: relative; }
#c1 .law_list li:last-child { border-bottom: none; }
#c1 .law_list li::before { content: '•'; position: absolute; left: 20px; color: #1a3a6e; font-weight: 700; }
#c1 .law_list li:nth-child(even) { background: #fafafa; }
#c1 .law_list li.note { color: #1a3a6e; font-size: 14px; background: #f0f4fb; }
#c1 .law_list li.note::before { content: '※'; color: #1a3a6e; }
 
/* ── 단계별 절차 다이어그램 ── */
#c1 .flow_diagram { border: 1px solid #e0e0e0; background: #fff; padding: 36px 30px; overflow-x: auto; }
#c1 .fd_wrap { min-width: 760px; }
#c1 .fd_row_top { display: flex; align-items: center; }
#c1 .fd_circle_split { width:180px; height:180px; border-radius: 50%;  overflow: hidden; flex-shrink: 0; display: flex; flex-direction: column; }
#c1 .fd_circle_split .fd_half_top { flex: 1; display: flex; align-items: center; justify-content: center; font-size: 16px; font-weight: 700; color: #fff; background: #3767b5; border-bottom: 2px solid #ffffff; }
#c1 .fd_circle_split .fd_half_bot { flex: 1; display: flex; align-items: center; justify-content: center; font-size: 16px; font-weight: 700; color: #fff; background: #1a3a6e; }
#c1 .fd_arrow_col { display: flex; flex-direction: column; align-items: center; gap: 4px; padding: 0 18px; flex-shrink: 0; }
#c1 .fd_arrow_col .fd_alabel { font-size: 13px; color: #333; }
#c1 .fd_orange_r { width: 68px; height: 32px; background: #f5a623; clip-path: polygon(0 22%,78% 22%,78% 0%,100% 50%,78% 100%,78% 78%,0 78%); }
#c1 .fd_grid { flex: 1; display: flex; flex-direction: column; }
#c1 .fd_grid_top { display: flex; }
#c1 .fd_grid_top .fd_gcell { flex: 1; background: #3767b5; color: #fff; font-size: 16px; font-weight: 700; text-align: center; padding: 18px 10px; border-right: 2px solid #fff; line-height: 1.4; }
#c1 .fd_grid_top .fd_gcell:last-child { border-right: none; }
#c1 .fd_grid_bot { background: #1a3a6e; color: #fff; font-size: 16px; font-weight: 700; text-align: center; padding: 12px 10px; margin-top: 2px; }
#c1 .fd_fork_col { display: flex; align-items: center; padding: 0 12px; flex-shrink: 0; }
#c1 .fd_fork_box { position: relative; width: 52px; height: 76px; }
#c1 .fd_fork_box .fork_badge { position: absolute; left: 0; top: 50%; transform: translateY(-50%); width: 26px; height: 26px; border-radius: 50%;  font-size: 13px; display: flex; align-items: center; justify-content: center; z-index: 1; }
#c1 .fd_fork_box .fork_vline { position: absolute; right: 12px; top: 7px; width: 8px; height: calc(100% - 14px); background: #f5a623; }
#c1 .fd_fork_box .fork_arr_top { position: absolute; top: 4px; right: 0; width: 32px; height: 12px; background: #f5a623; clip-path: polygon(0 22%,78% 22%,78% 0%,100% 50%,78% 100%,78% 78%,0 78%); }
#c1 .fd_fork_box .fork_arr_bot { position: absolute; bottom: 4px; right: 0; width: 32px; height: 12px; background: #f5a623; clip-path: polygon(0 22%,78% 22%,78% 0%,100% 50%,78% 100%,78% 78%,0 78%); }
#c1 .fd_result_col { display: flex; flex-direction: column; justify-content: space-around; gap: 6px; height: 76px; flex-shrink: 0; padding-right: 6px; }
#c1 .fd_result_col span { font-size: 15px; font-weight: 600; color: #333; white-space: nowrap; }
#c1 .fd_row_bot { display: flex; margin-top: 6px; }
#c1 .fd_bot_left { flex-shrink: 0; display: flex; flex-direction: column; align-items: flex-start; gap: 8px; padding-top: 6px; width: 240px; }
#c1 .fd_bot_spacer { flex: 0.5; }
#c1 .fd_bot_right { flex-shrink: 0; display: flex; flex-direction: column; align-items: flex-start; gap: 8px; padding-top: 6px; padding-right: 70px; }
#c1 .fd_varrow_group { display: flex; align-items: center; gap: 8px; }
#c1 .fd_varrow_group .fd_vlabel { font-size: 13px; color: #555; white-space: nowrap; }
#c1 .fd_varrow_group .fd_varr_badge { width: 26px; height: 26px; border-radius: 50%;  font-size: 13px; display: flex; align-items: center; justify-content: center; flex-shrink: 0; }
#c1 .fd_v_down { width: 16px; height: 52px; background: #f5a623; clip-path: polygon(22% 0%,78% 0%,78% 66%,100% 66%,50% 100%,0% 66%,22% 66%); flex-shrink: 0; }
#c1 .fd_v_up { width: 16px; height: 52px; background: #f5a623; clip-path: polygon(50% 0%,100% 34%,78% 34%,78% 100%,22% 100%,22% 34%,0% 34%); flex-shrink: 0; }
#c1 .fd_green_boxes { display: flex; flex-direction: column; gap: 3px; }
#c1 .fd_gbox_l { background: #3767b5; color: #fff; font-size: 15px; font-weight: 700; padding:12px 35px; text-align: center; }
#c1 .fd_gbox_d { background: #1a3a6e; color: #fff; font-size: 15px; font-weight: 700; padding: 10px 20px; text-align: center; }
 
/* ── 불릿 목록 ── */
#c1 .c1_list { list-style: none; margin: 0; padding: 0; border-top: 2px solid #1a3a6e; border-bottom: 1px solid #ddd; }
#c1 .c1_list li { padding: 13px 20px 13px 36px; border-bottom: 1px solid #eee; font-size: 18px; color: #444; line-height: 1.7; position: relative; }
#c1 .c1_list li:last-child { border-bottom: none; }
#c1 .c1_list li::before { content: '•'; position: absolute; left: 20px; color: #1a3a6e; font-weight: 700; }
#c1 .c1_list li:nth-child(even) { background: #fafafa; }
 
/* ── 평가대상 박스 ── */
#c1 .eval_group { margin-bottom: 20px; }
#c1 .eval_group_title { font-size: 18px; font-weight: 700; color: #1a3a6e; margin-bottom: 10px; padding-left: 12px; border-left: 3px solid #1a3a6e; }
#c1 .eval_group ul { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 8px; }
#c1 .eval_group ul li { font-size: 16px; color: #444; line-height: 1.7; padding-left: 16px; position: relative; }
#c1 .eval_group ul li::before { content: '•'; position: absolute; left: 0; color: #1a3a6e; font-weight: 700; }
 
/* ── 평가 추진절차 인라인 플로우 ── */
#c1 .inline_flow { display: flex; align-items: center; flex-wrap: wrap; gap: 6px; padding: 20px; background: #f4f7fc; border: 1px solid #c8d8f0; }
#c1 .inline_flow .if_step { background: #1a3a6e; color: #fff; font-size: 15px; font-weight: 600; padding: 10px 16px; text-align: center; white-space: nowrap; }
#c1 .inline_flow .if_arrow { color: #1a3a6e; font-size: 18px; font-weight: 700; }
 
/* ── 공통 테이블 ── */
#c1 .c1_table { width: 100%; border-collapse: collapse; border-top: 2px solid #1a3a6e; border-bottom: 1px solid #ddd; margin-top: 10px; }
#c1 .c1_table th, #c1 .c1_table td { padding: 14px 18px; border: 1px solid #ddd; font-size: 18px; vertical-align: middle; }
#c1 .c1_table thead th { background: #1a3a6e; color: #fff; font-weight: 700; text-align: center; }
#c1 .c1_table tbody th { background: #f2f5fa; font-weight: 600; color: #1a3a6e; text-align: center; width: 14%; }
#c1 .c1_table tbody td { color: #444; line-height: 1.7; }
 
/* ── 연락처 ── */
#c1 .contact_wrap { display: flex; align-items: center; gap: 50px; flex-wrap: wrap; }
#c1 .contact_item { display: flex; align-items: center; gap: 16px; }
#c1 .contact_icon { width: 56px; height: 56px; border-radius: 50%; background: #1a3a6e; display: flex; align-items: center; justify-content: center; flex-shrink: 0; }
#c1 .contact_icon i { font-size: 22px; color: #fff; }
#c1 .contact_info .contact_label { font-size: 16px; color: #1a3a6e; font-weight: 600; margin-bottom: 3px; }
#c1 .contact_info .contact_val { font-size: 20px; font-weight: 700; color: #222; }
#c1 .contact_info .contact_sub { font-size: 13px; color: #666; margin-top: 2px; }
 
/* ── 반응형 ── */
@media (max-width: 1024px) {
    #c1 .flow_diagram .fd_box { font-size: 13px; padding: 12px 12px; }
    #c1 .flow_diagram .fd_circle { width: 76px; height: 76px; font-size: 13px; }
}
@media (max-width: 768px) {
    #c1 { padding: 0; }
    #c1 .sec_title { font-size: 18px; margin-bottom: 10px; }
    #c1 .sec_title::before { font-size: 18px; }
    #c1 .info_box { flex-direction: column; padding: 20px 14px; }
    #c1 .info_box .info_img { width: 140px; margin: 0 auto; }
    #c1 .info_box .info_txt ul li { font-size: 14px; }
    #c1 .law_list li { font-size: 14px; padding: 10px 10px 10px 24px; }
    #c1 .law_list li::before { left: 8px; }
    #c1 .c1_list li { font-size: 14px; padding: 10px 10px 10px 24px; }
    #c1 .c1_list li::before { left: 8px; }
    #c1 .purpose_box p { font-size: 14px; }
    #c1 .flow_diagram { padding: 20px 12px; overflow-x: auto; }
    #c1 .flow_diagram .fd_top { min-width: 600px; }
    #c1 .flow_diagram .fd_bottom { min-width: 600px; }
    #c1 .inline_flow .if_step { font-size: 13px; padding: 8px 12px; }
    #c1 .contact_wrap { gap: 20px; flex-direction: column; }
    #c1 .c1_section { margin-bottom: 30px; }
    #c1 p { font-size: 14px; }
    #c1 .eval_group_title { font-size: 14px; }
    #c1 .eval_group ul li { font-size: 14px; }
    #c1 .c1_table th, #c1 .c1_table td { font-size: 14px; padding: 10px 10px; }
    #c1 .contact_info .contact_label { font-size: 14px; }
    #c1 .contact_info .contact_val { font-size: 16px; }
}
@media (max-width: 480px) {
    #c1 .sec_title { font-size: 15px; }
    #c1 .c1_table thead { display: none; }
    #c1 .c1_table tbody tr { display: block; border-bottom: 1px solid #ddd; margin-bottom: 8px; }
    #c1 .c1_table tbody th, #c1 .c1_table tbody td { display: block; width: 100%; box-sizing: border-box; border-bottom: none; text-align: left; }
    #c1 .c1_table { border-bottom: none; }
    #c1 .contact_item { flex-direction: column; text-align: center; }
    #c1 .inline_flow { gap: 4px; }
    #c1 .inline_flow .if_step { font-size: 12px; padding: 7px 10px; }
}
/* c1 */

/* c2 */
#c2 { max-width: 1400px; margin: 0 auto; padding: 60px 0 80px; }
#c2 p { font-size: 18px; word-break: keep-all; line-height: 1.8; }
 
/* 섹션 타이틀 */
#c2 .sec_title { display: flex; align-items: center; gap: 10px; font-size: 28px; font-weight: 700; color: #1a3a6e; margin-bottom: 30px; }
#c2 .sec_title::before { content: '☑'; font-size: 28px; color: #1a3a6e; font-weight: 100; margin-bottom: 3px; }
 
/* 섹션 간격 */
#c2 .c2_section { margin-bottom: 60px; }
#c2 .c2_section .imgbox{text-align: center;}
#c2 .c2_section .imgbox img{max-width: 100%;;}
 
/* ── 안내 박스 ── */
#c2 .info_box { display: flex; align-items: flex-start; gap: 30px; border: 1px solid #c8d8f0; background: #f4f7fc; padding: 30px; border-left: 4px solid #1a3a6e; }
#c2 .info_box .info_txt { flex: 1; }
#c2 .info_box .info_txt .info_head { font-size: 18px; font-weight: 700; color: #1a3a6e; margin-bottom: 14px; }
#c2 .info_box .info_txt ul { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 8px; }
#c2 .info_box .info_txt ul li { font-size: 18px; color: #333; line-height: 1.7; padding-left: 16px; position: relative; }
#c2 .info_box .info_txt ul li::before { content: '•'; position: absolute; left: 0; color: #1a3a6e; font-weight: 700; }
#c2 .info_box .info_img { width: 200px; flex-shrink: 0; }
#c2 .info_box .info_img img { width: 100%; display: block; }
 
/* ── 설명 박스 (목적/법규) ── */
#c2 .desc_box { background: #f9f9f9; border-top: 2px solid #1a3a6e; border-bottom: 1px solid #ddd; padding: 22px 26px; }
#c2 .desc_box p { margin: 0; padding-left: 16px; position: relative; font-size: 18px; color: #444; }
#c2 .desc_box p::before { content: '•'; position: absolute; left: 0; color: #1a3a6e; font-weight: 700; }
 
/* ── 불릿 목록 ── */
#c2 .c2_list { list-style: none; margin: 0; padding: 0; border-top: 2px solid #1a3a6e; border-bottom: 1px solid #ddd; }
#c2 .c2_list li { padding: 13px 20px 13px 36px; border-bottom: 1px solid #eee; font-size: 18px; color: #444; line-height: 1.7; position: relative; }
#c2 .c2_list li:last-child { border-bottom: none; }
#c2 .c2_list li::before { content: '•'; position: absolute; left: 20px; color: #1a3a6e; font-weight: 700; }
#c2 .c2_list li:nth-child(even) { background: #fafafa; }
#c2 .c2_list li .sub { padding-left: 14px; font-size: 14px; color: #666; display: block; margin-top: 4px; }
 
/* ── 위험성평가 절차 ── */
#c2 .risk_proc { display: flex; gap: 40px; align-items: center; border: 1px solid #ddd; padding: 30px; background: #fff; }
#c2 .risk_proc_left { flex-shrink: 0; }
#c2 .risk_proc_left h4 { font-size:24px; font-weight: 700; color: #1a3a6e; text-align: center; margin: 0 0 30px; padding-bottom:15px; border-bottom: 2px solid #1a3a6e; }
#c2 .risk_proc_left .rp_steps { list-style: none; margin: 0 0 16px; padding: 0; display: flex; flex-direction: column; gap: 10px; }
#c2 .risk_proc_left .rp_steps li { font-size: 18px; color: #333; line-height: 1.6; }
#c2 .risk_proc_left .rp_steps li strong { color: #1a3a6e; font-weight: 700; }
#c2 .risk_proc_left .rp_note { font-size: 14px; color: #666; line-height: 1.7; padding-left: 14px; position: relative; }
#c2 .risk_proc_left .rp_note::before { content: '※'; position: absolute; left: 0; color: #1a3a6e; }
#c2 .risk_proc_right { flex: 1; display: flex; justify-content: center; align-items: flex-start; overflow-x: auto; background: #f8fafc; border: 1px solid #e0e8f4; border-radius: 4px; padding: 30px 20px; }
 
/* ── CHARM 다이어그램 ── */
#c2 .charm_wrap {   background: #f8fafc; border: 1px solid #e0e8f4; border-radius: 4px; padding: 36px 30px; }
#c2 .charm_diagram { min-width: 700px; display: flex; flex-direction: column; align-items: center; gap: 0; }
 
/* 공통 도형 */
#c2 .cd_circle { border-radius: 50px; padding: 14px 34px; font-size: 16px; font-weight: 700; color: #fff; text-align: center; display: inline-flex; align-items: center; justify-content: center; }
#c2 .cd_circle.green { background: #5a9a45; border: 3px solid #3d7a32; }
#c2 .cd_circle.orange { background: #f5a623; border: 3px solid #d4860a; }
#c2 .cd_v_arrow { width: 16px; height: 36px; background: #555; clip-path: polygon(22% 0%,78% 0%,78% 66%,100% 66%,50% 100%,0% 66%,22% 66%); margin: 0 auto; }
#c2 .cd_v_arrow.green { background: #5a9a45; }
#c2 .cd_v_arrow.orange { background: #f5a623; }
 
/* 분기 레이어 */
#c2 .cd_fork_row { display: flex; width: 100%; align-items: flex-start; gap: 20px; margin-top: 6px; }
#c2 .cd_fork_label { font-size: 13px; color: #888; text-align: center; margin-bottom: 6px; }
#c2 .cd_fork_left { flex: 1; display: flex; flex-direction: column; align-items: center; gap: 0; }
#c2 .cd_fork_right { flex: 1; display: flex; flex-direction: column; align-items: center; gap: 0; }
#c2 .cd_fork_divider { width: 1px; background: #ddd; align-self: stretch; flex-shrink: 0; margin-top: 40px; }
 
/* 노출기준 라벨 뱃지 */
#c2 .cd_badge_row { display: flex; gap: 6px; margin-bottom: 8px; }
#c2 .cd_badge { font-size: 13px; font-weight: 600; color: #fff; padding: 4px 12px; }
#c2 .cd_badge.green { background: #5a9a45; }
#c2 .cd_badge.orange { background: #f5a623; }
 
/* 테이블 */
#c2 .charm_table { width: 100%; border-collapse: collapse; border: 1px solid #ddd; }
#c2 .charm_table th, #c2 .charm_table td { padding: 12px 14px; border: 1px solid #ddd; font-size: 14px; text-align: center; vertical-align: middle; line-height: 1.5; }
#c2 .charm_table thead th { background: #1a3a6e; color: #fff; font-weight: 700; }
#c2 .charm_table tbody td { color: #444; }
#c2 .charm_table tbody tr:nth-child(even) td { background: #fafafa; }
 
/* 결과 박스 */
#c2 .cd_result_box { background: #f5a623; color: #fff; font-size: 16px; font-weight: 700; text-align: center; padding: 16px 30px; margin-top: 10px; border-radius: 30px; }
 
/* ── 연락처 ── */
#c2 .contact_wrap { display: flex; align-items: center; gap: 50px; flex-wrap: wrap; }
#c2 .contact_item { display: flex; align-items: center; gap: 16px; }
#c2 .contact_icon { width: 56px; height: 56px; border-radius: 50%; background: #1a3a6e; display: flex; align-items: center; justify-content: center; flex-shrink: 0; }
#c2 .contact_icon i { font-size: 22px; color: #fff; }
#c2 .contact_info .contact_label { font-size: 16px; color: #1a3a6e; font-weight: 600; margin-bottom: 3px; }
#c2 .contact_info .contact_val { font-size: 20px; font-weight: 700; color: #222; }
#c2 .contact_info .contact_sub { font-size: 13px; color: #666; margin-top: 2px; }
 
/* ── 반응형 ── */
@media (max-width: 1024px) {
    #c2 .risk_flow_top .rf_step { font-size: 14px; padding: 14px 8px; }
    #c2 .charm_diagram { min-width: 600px; }
        #c2 .risk_proc { flex-direction: column; padding: 20px 14px; gap: 24px; }
    #c2 .risk_proc_left { flex: none; width: 100%; }
    #c2 .risk_proc_right { overflow-x: auto; justify-content: flex-start; padding: 20px 14px; }
}
@media (max-width: 768px) {
    #c2 { padding: 0; }
    #c2 .sec_title { font-size: 18px; margin-bottom: 10px; }
    #c2 .sec_title::before { font-size: 18px; }
    #c2 .info_box { flex-direction: column; padding: 20px 14px; }
    #c2 .info_box .info_img { width: 140px; margin: 0 auto; }
    #c2 .info_box .info_txt ul li { font-size: 14px; }
    #c2 .c2_list li { font-size: 14px; padding: 10px 10px 10px 24px; }
    #c2 .c2_list li::before { left: 8px; }
    #c2 .desc_box p { font-size: 14px; }

    #c2 .charm_wrap { padding: 20px 14px; }
    #c2 .contact_wrap { gap: 20px; flex-direction: column; }
    #c2 .contact_info .contact_label { font-size: 14px; }
    #c2 .contact_info .contact_val { font-size: 16px; }
    #c2 .c2_section { margin-bottom: 30px; }
    #c2 p { font-size: 14px; }
    #c2 .risk_proc_left h4{ font-size: 18px; margin: 0 0 10px;}
    #c2 .risk_proc_left .rp_steps li{font-size: 14px;}
}
@media (max-width: 480px) {
    #c2 .risk_flow_top .rf_step { font-size: 12px; padding: 10px 6px; }
    #c2 .contact_item { flex-direction: column; text-align: center; }
    #c2 .cd_circle { font-size: 13px; padding: 12px 20px; }
    #c2 .charm_table th, #c2 .charm_table td { font-size: 12px; padding: 8px 8px; }
}
/* c2 */

/* c3 */
#c3 { max-width: 1400px; margin: 0 auto; padding: 60px 0 80px; }
#c3 p { font-size: 18px; word-break: keep-all; line-height: 1.8; color: #444; }
 
/* 섹션 타이틀 */
#c3 .sec_title { display: flex; align-items: center; gap: 10px; font-size: 28px; font-weight: 700; color: #1a3a6e; margin-bottom: 30px; }
#c3 .sec_title::before { content: '☑'; font-size: 28px; color: #1a3a6e; font-weight: 100; margin-bottom: 3px; }
 
/* 섹션 간격 */
#c3 .c3_section { margin-bottom: 60px; }
 
/* ── 안내 박스 ── */
#c3 .info_box { display: flex; align-items: flex-start; gap: 30px; border: 1px solid #c8d8f0; background: #f4f7fc; padding: 30px; border-left: 4px solid #1a3a6e; }
#c3 .info_box .info_txt { flex: 1; }
#c3 .info_box .info_txt ul { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 8px; }
#c3 .info_box .info_txt ul li { font-size: 18px; color: #333; line-height: 1.7; padding-left: 16px; position: relative; }
#c3 .info_box .info_txt ul li::before { content: '•'; position: absolute; left: 0; color: #1a3a6e; font-weight: 700; }
#c3 .info_box .info_img { width: 200px; flex-shrink: 0; }
#c3 .info_box .info_img img { width: 100%; display: block; }
 
/* ── 설명 박스 ── */
#c3 .desc_box { background: #f9f9f9; border-top: 2px solid #1a3a6e; border-bottom: 1px solid #ddd; padding: 22px 26px; }
#c3 .desc_box p { margin: 0; padding-left: 16px; position: relative; font-size: 18px; }
#c3 .desc_box p::before { content: '•'; position: absolute; left: 0; color: #1a3a6e; font-weight: 700; }
#c3 .desc_box .desc_indent { font-size: 16px; color: #666; padding-left: 14px; display: block; margin-top: 4px; }
 
/* ── 불릿 목록 ── */
#c3 .c3_list { list-style: none; margin: 0; padding: 0; border-top: 2px solid #1a3a6e; border-bottom: 1px solid #ddd; }
#c3 .c3_list > li { padding: 12px 20px 12px 36px; border-bottom: 1px solid #eee; font-size: 18px; color: #444; line-height: 1.7; position: relative; }
#c3 .c3_list > li:last-child { border-bottom: none; }
#c3 .c3_list > li::before { content: '•'; position: absolute; left: 20px; color: #1a3a6e; font-weight: 700; }
#c3 .c3_list > li:nth-child(even) { background: #fafafa; }
#c3 .c3_list .c3_sub { display: block; font-size: 16px; color: #666; padding-left: 14px; margin-top: 3px; line-height: 1.6; }
#c3 .c3_list .c3_note { display: block; font-size: 16px; color: #888; padding-left: 14px; margin-top: 2px; }
 
/* ── 제출 대상 ── */
#c3 .psm_target_wrap { border: 1px solid #ddd; padding: 24px; background: #fff; }
#c3 .psm_target_head { display: flex; align-items: stretch; margin-bottom: 20px; }
#c3 .psm_target_head .pth_badge { background: #5a9a45; color: #fff; font-size: 17px; font-weight: 700; text-align: center; padding: 14px 18px; line-height: 1.5; display: flex; align-items: center; justify-content: center; flex-shrink: 0; min-width: 80px; }
#c3 .psm_target_head .pth_txt { border: 1px solid #ddd; border-left: none; padding: 14px 18px; flex: 1; font-size: 17px; color: #333; line-height: 1.7; }
#c3 .psm_target_head .pth_txt strong { font-weight: 700; }
#c3 .psm_target_sub { font-size: 16px; color: #444; line-height: 1.7; padding-left: 16px; position: relative; margin-bottom: 4px; }
#c3 .psm_target_sub::before { content: '▶'; position: absolute; left: 0; color: #5a9a45; font-size: 16px; top: 3px; }
#c3 .psm_target_note { font-size: 16px; color: #888; padding-left: 16px; margin-bottom: 16px; line-height: 1.6; }
 
/* 물질 테이블 */
#c3 .psm_sec_title { display: flex; align-items: center; gap: 8px; font-size: 18px; font-weight: 700; color: #fff; background: #5a9a45; padding: 10px 16px; margin-bottom: 0; }
#c3 .psm_sec_title::before { content: '🔶'; font-size: 16px; }
#c3 .psm_mat_table { width: 100%; border-collapse: collapse; border: 1px solid #ddd; margin-bottom: 20px; }
#c3 .psm_mat_table th { background: #5a9a45; color: #fff; font-size: 16px; font-weight: 700; text-align: center; padding: 10px 8px; border: 1px solid #3d7a32; }
#c3 .psm_mat_table td { padding: 8px 10px; border: 1px solid #ddd; font-size: 16px; color: #444; vertical-align: middle; }
#c3 .psm_mat_table td.num { text-align: center; width: 36px; }
#c3 .psm_mat_table td.qty { text-align: right; width: 90px; white-space: nowrap; }
#c3 .psm_mat_table tbody tr:nth-child(even) td { background: #f9f9f9; }
#c3 .psm_mat_note { font-size: 16px; color: #888; line-height: 1.7; margin-bottom: 20px; }
 
/* 업종 테이블 */
#c3 .psm_biz_table { width: 100%; border-collapse: collapse; border: 1px solid #ddd; margin-bottom: 12px; }
#c3 .psm_biz_table th { background: #5a9a45; color: #fff; font-size: 16px; font-weight: 700; text-align: center; padding: 10px 8px; border: 1px solid #3d7a32; }
#c3 .psm_biz_table td { padding: 8px 10px; border: 1px solid #ddd; font-size: 16px; color: #444; text-align: center; vertical-align: middle; }
#c3 .psm_biz_table tbody tr:nth-child(even) td { background: #f9f9f9; }
#c3 .psm_biz_note { font-size: 16px; color: #888; line-height: 1.7; padding-left: 14px; position: relative; margin-top: 4px; }
#c3 .psm_biz_note::before { content: '※'; position: absolute; left: 0; }
 
/* ── 심사 및 확인 추진절차 이미지 ── */
#c3 .proc_img_box { border: 1px solid #ddd; background: #fff; padding: 20px; }
#c3 .proc_img_box img { width: 100%; display: block; }
 
/* ── 추진절차 플로우 ── */
#c3 .flow_wrap { border: 1px solid #ddd; background: #fff; padding: 40px 30px; overflow-x: auto; }
#c3 .flow_inner { min-width: 640px; }
#c3 .flow_row { display: flex; align-items: stretch; gap: 0; }
#c3 .flow_cell { display: flex; flex-direction: column; align-items: center; gap: 8px; flex: 1; }
#c3 .flow_box { background: #5a9a45; color: #fff; font-size: 18px; font-weight: 700; text-align: center; padding: 16px 10px; width: 100%; box-sizing: border-box; line-height: 1.4; }
#c3 .flow_box.orange { background: #f5a623; }
#c3 .flow_label { font-size: 16px; color: #777; text-align: center; }
#c3 .flow_arr_col { display: flex; align-items: center; align-self: flex-start; height: 52px; padding: 0 6px; flex-shrink: 0; }
#c3 .flow_arr_r { width: 0; height: 0; border-top: 8px solid transparent; border-bottom: 8px solid transparent; border-left: 12px solid #5a9a45; }
#c3 .flow_arr_l { width: 0; height: 0; border-top: 8px solid transparent; border-bottom: 8px solid transparent; border-right: 12px solid #f5a623; }
#c3 .flow_turn { display: flex; justify-content: flex-end; padding-right: calc(33.33% / 2 - 9px); margin: 8px 0; }
#c3 .flow_turn_inner { width: 0; height: 0; border-left: 9px solid transparent; border-right: 9px solid transparent; border-top: 13px solid #5a9a45; display: block; }
 
/* ── 제출서류 4열 그리드 ── */
#c3 .docs_grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 16px; }
#c3 .docs_card { border: 1px solid #ddd; background: #fff; }
#c3 .docs_card_head { background: #1a3a6e; color: #fff; font-size: 17px; font-weight: 700; text-align: center; padding: 12px 10px; }
#c3 .docs_card_body { padding: 14px 14px; font-size: 16px; color: #444; line-height: 1.8; }
#c3 .docs_card_body p { margin: 0; font-size: 16px; }
 
/* ── PSM 교육지원 목록 ── */
#c3 .edu_list { list-style: none; margin: 0; padding: 0; border-top: 2px solid #1a3a6e; border-bottom: 1px solid #ddd; }
#c3 .edu_list > li { padding: 12px 20px 12px 36px; border-bottom: 1px solid #eee; font-size: 18px; color: #444; line-height: 1.7; position: relative; }
#c3 .edu_list > li:last-child { border-bottom: none; }
#c3 .edu_list > li::before { content: '•'; position: absolute; left: 20px; color: #1a3a6e; font-weight: 700; }
#c3 .edu_list > li:nth-child(even) { background: #fafafa; }
#c3 .edu_list .edu_sub { display: block; font-size: 16px; color: #666; padding-left: 14px; margin-top: 3px; line-height: 1.6; }
 
/* ── PSM 자체감사 테이블 ── */
#c3 .c3_table { width: 100%; border-collapse: collapse; border-top: 2px solid #1a3a6e; border-bottom: 1px solid #ddd; margin-top: 12px; }
#c3 .c3_table th, #c3 .c3_table td { padding: 12px 16px; border: 1px solid #ddd; font-size: 17px; vertical-align: middle; text-align: center; }
#c3 .c3_table thead th { background: #1a3a6e; color: #fff; font-weight: 700; }
#c3 .c3_table tbody td { color: #444; }
#c3 .c3_table tbody tr:nth-child(even) td { background: #fafafa; }
 
/* ── 연락처 ── */
#c3 .contact_wrap { display: flex; align-items: center; gap: 50px; flex-wrap: wrap; }
#c3 .contact_item { display: flex; align-items: center; gap: 16px; }
#c3 .contact_icon { width: 56px; height: 56px; border-radius: 50%; background: #1a3a6e; display: flex; align-items: center; justify-content: center; flex-shrink: 0; }
#c3 .contact_icon i { font-size: 22px; color: #fff; }
#c3 .contact_info .contact_label { font-size: 18px; color: #1a3a6e; font-weight: 600; margin-bottom: 3px; }
#c3 .contact_info .contact_val { font-size: 20px; font-weight: 700; color: #222; }
 
/* ── 반응형 ── */
@media (max-width: 1024px) {
    #c3 .docs_grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 768px) {
    #c3 { padding: 0; }
    #c3 .sec_title { font-size: 18px; margin-bottom: 10px; }
    #c3 .sec_title::before { font-size: 18px; }
    #c3 .info_box { flex-direction: column; padding: 20px 14px; }
    #c3 .info_box .info_img { width: 140px; margin: 0 auto; }
    #c3 .info_box .info_txt ul li { font-size: 14px; }
    #c3 .desc_box p { font-size: 14px; }
    #c3 .c3_list > li { font-size: 14px; padding: 10px 10px 10px 24px; }
    #c3 .c3_list > li::before { left: 8px; }
    #c3 .flow_wrap { padding: 20px 14px; }
    #c3 .flow_box { font-size: 13px; padding: 12px 6px; }
    #c3 .flow_arr_col { height: 42px; padding: 0 4px; }
    #c3 .flow_label { font-size: 11px; }
    #c3 .psm_target_head { flex-direction: column; }
    #c3 .psm_target_head .pth_badge { min-width: auto; flex-direction: row; gap: 6px; }
    #c3 .psm_target_head .pth_txt { border-left: 1px solid #ddd; border-top: none; font-size: 13px; }
    #c3 .psm_mat_table { display: block; overflow-x: auto; }
    #c3 .psm_biz_table { display: block; overflow-x: auto; }
    #c3 .psm_mat_table th, #c3 .psm_mat_table td { font-size: 12px; padding: 6px 6px; }
    #c3 .psm_biz_table th, #c3 .psm_biz_table td { font-size: 12px; padding: 6px 6px; }
    #c3 .docs_card_head { font-size: 13px; }
    #c3 .docs_card_body { font-size: 12px; }
    #c3 .edu_list > li { font-size: 14px; padding: 10px 10px 10px 24px; }
    #c3 .edu_list > li::before { left: 8px; }
    #c3 .c3_table th, #c3 .c3_table td { font-size: 13px; padding: 8px 10px; }
    #c3 .contact_wrap { gap: 20px; flex-direction: column; }
    #c3 .contact_info .contact_label { font-size: 14px; }
    #c3 .contact_info .contact_val { font-size: 16px; }
    #c3 .c3_section { margin-bottom: 30px; }
    #c3 p { font-size: 14px; }
}
@media (max-width: 480px) {
    #c3 .sec_title { font-size: 15px; }
    #c3 .docs_grid { grid-template-columns: 1fr; }
    #c3 .flow_inner { min-width: 480px; }
    #c3 .flow_box { font-size: 12px; padding: 10px 4px; }
    #c3 .c3_table { display: block; overflow-x: auto; }
    #c3 .contact_item { flex-direction: column; text-align: center; }
}
/* c3 */

/* c4 */
#c4 { max-width: 1400px; margin: 0 auto; padding: 60px 0 80px; }
#c4 p { font-size: 18px; word-break: keep-all; line-height: 1.8; color: #444; }
 
/* 섹션 타이틀 */
#c4 .sec_title { display: flex; align-items: center; gap: 10px; font-size: 28px; font-weight: 700; color: #1a3a6e; margin-bottom: 30px; }
#c4 .sec_title::before { content: '☑'; font-size: 28px; color: #1a3a6e; font-weight: 100; margin-bottom: 3px; }
 
/* 섹션 간격 */
#c4 .c4_section { margin-bottom: 60px; }
 
/* ── 안내 박스 ── */
#c4 .info_box { display: flex; align-items: flex-start; gap: 30px; border: 1px solid #c8d8f0; background: #f4f7fc; padding: 30px; border-left: 4px solid #1a3a6e; }
#c4 .info_box .info_txt { flex: 1; }
#c4 .info_box .info_txt ul { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 8px; }
#c4 .info_box .info_txt ul li { font-size: 18px; color: #333; line-height: 1.7; padding-left: 16px; position: relative; }
#c4 .info_box .info_txt ul li::before { content: '•'; position: absolute; left: 0; color: #1a3a6e; font-weight: 700; }
#c4 .info_box .info_img { width: 200px; flex-shrink: 0; }
#c4 .info_box .info_img img { width: 100%; display: block; }
 
/* ── 설명 박스 ── */
#c4 .desc_box { background: #f9f9f9; border-top: 2px solid #1a3a6e; border-bottom: 1px solid #ddd; padding: 22px 26px; }
#c4 .desc_box p { margin: 0; padding-left: 16px; position: relative; font-size: 18px; }
#c4 .desc_box p::before { content: '•'; position: absolute; left: 0; color: #1a3a6e; font-weight: 700; }
#c4 .desc_box .desc_note { display: block; font-size: 16px; color: #888; padding-left: 18px; margin-top: 8px; position: relative; }
#c4 .desc_box .desc_note::before { content: '※'; position: absolute; left: 0; color: #888; }
 
/* ── 불릿 목록 ── */
#c4 .c4_list { list-style: none; margin: 0; padding: 0; border-top: 2px solid #1a3a6e; border-bottom: 1px solid #ddd; }
#c4 .c4_list > li { padding: 12px 20px 12px 36px; border-bottom: 1px solid #eee; font-size: 18px; color: #444; line-height: 1.7; position: relative; }
#c4 .c4_list > li:last-child { border-bottom: none; }
#c4 .c4_list > li::before { content: '•'; position: absolute; left: 20px; color: #1a3a6e; font-weight: 700; }
#c4 .c4_list > li:nth-child(even) { background: #fafafa; }
#c4 .c4_list > li a { color: #1a3a6e; text-decoration: underline; word-break: break-all; }
 
/* ── 유해요인 조사 절차 플로우 ── */
#c4 .c4_flow_wrap { border: 1px solid #ddd; background: #fff; padding: 40px 30px; overflow-x: auto; }
#c4 .c4_flow_row { display: flex; align-items: center; gap: 0; min-width: 640px; }
#c4 .c4_flow_cell { flex: 1; display: flex; justify-content: center; }
#c4 .c4_flow_cell.c4_flow_empty { flex: 1; }
#c4 .c4_flow_box { background: #5a9a45; color: #fff; font-size: 16px; font-weight: 700; text-align: center; padding: 16px 10px; width: 100%; line-height: 1.4; box-sizing: border-box; }
#c4 .c4_flow_arr_r { width: 0; height: 0; border-top: 8px solid transparent; border-bottom: 8px solid transparent; border-left:12px solid #f5a623; flex-shrink: 0; margin: 0 8px; }
#c4 .c4_flow_arr_l { width: 0; height: 0; border-top: 8px solid transparent; border-bottom: 8px solid transparent; border-right:12px solid #f5a623; flex-shrink: 0; margin: 0 8px; }
#c4 .c4_flow_empty_arr { flex-shrink: 0; width: 28px; margin: 0 8px; }
#c4 .c4_flow_turn { display: flex; justify-content: flex-end; padding-right: calc(12% - 8px); margin: 8px 0; min-width: 640px; }
#c4 .c4_flow_turn_inner { width: 0; height: 0; border-left: 9px solid transparent; border-right: 9px solid transparent; border-top:12px solid #f5a623; display: block; }
#c4 .img_box { border: 1px solid #ddd; background: #fff; padding: 20px; }
#c4 .img_box img { width: 100%; display: block; }
 
/* ── 조사방법 중첩 목록 ── */
#c4 .method_list { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 16px; border-top: 2px solid #1a3a6e; border-bottom: 1px solid #ddd; }
#c4 .method_list > li { padding: 16px 20px 16px 36px; border-bottom: 1px solid #eee; font-size: 18px; color: #444; line-height: 1.7; position: relative; }
#c4 .method_list > li:last-child { border-bottom: none; }
#c4 .method_list > li::before { content: '•'; position: absolute; left: 20px; color: #1a3a6e; font-weight: 700; }
#c4 .method_list > li strong { color: #1a3a6e; font-weight: 700; }
#c4 .method_list .method_indent { padding-left: 16px; margin-top: 6px; font-size: 17px; color: #555; line-height: 1.7; display: block; }
#c4 .method_list .method_indent2 { padding-left: 30px; font-size: 16px; color: #666; line-height: 1.8; display: block; margin-top: 4px; }
#c4 .method_list .method_indent2 span { display: block; margin-top: 4px; padding-left: 16px; font-size: 15px; color: #777; }
 
/* ── 프로그램 구축 목록 ── */
#c4 .program_list { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 0; border-top: 2px solid #1a3a6e; border-bottom: 1px solid #ddd; }
#c4 .program_list > li { padding: 16px 20px 16px 36px; border-bottom: 1px solid #eee; font-size: 18px; color: #444; line-height: 1.7; position: relative; }
#c4 .program_list > li:last-child { border-bottom: none; }
#c4 .program_list > li::before { content: '•'; position: absolute; left: 20px; color: #1a3a6e; font-weight: 700; }
#c4 .program_list > li strong { color: #1a3a6e; font-weight: 700; }
#c4 .program_list .pg_sub { display: block; font-size: 16px; color: #555; padding-left: 14px; margin-top: 6px; line-height: 1.8; }
#c4 .program_list .pg_indent { display: block; font-size: 15px; color: #666; padding-left: 28px; line-height: 1.8; margin-top: 4px; }
 
/* ── 설문지 버튼 ── */
#c4 .survey_btn_wrap { display: flex; justify-content: center; padding: 24px 0; }
#c4 .survey_btn { display: inline-block; background: #1a3a6e; color: #fff; font-size: 18px; font-weight: 700; padding: 16px 40px; text-decoration: none; transition: background 0.2s; }
#c4 .survey_btn:hover { background: #0f2450; }
 
/* ── 연락처 ── */
#c4 .contact_wrap { display: flex; align-items: center; gap: 50px; flex-wrap: wrap; }
#c4 .contact_item { display: flex; align-items: center; gap: 16px; }
#c4 .contact_icon { width: 56px; height: 56px; border-radius: 50%; background: #1a3a6e; display: flex; align-items: center; justify-content: center; flex-shrink: 0; }
#c4 .contact_icon i { font-size: 22px; color: #fff; }
#c4 .contact_info .contact_label { font-size: 18px; color: #1a3a6e; font-weight: 600; margin-bottom: 3px; }
#c4 .contact_info .contact_val { font-size: 20px; font-weight: 700; color: #222; }
 
/* ── 반응형 ── */
@media (max-width: 1024px) {
    #c4 .info_box .info_img { width: 160px; }
}
@media (max-width: 768px) {
    #c4 { padding: 0; }
    #c4 .sec_title { font-size: 18px; margin-bottom: 10px; }
    #c4 .sec_title::before { font-size: 18px; }
    #c4 .info_box { flex-direction: column; padding: 20px 14px; }
    #c4 .info_box .info_img { width: 140px; margin: 0 auto; }
    #c4 .info_box .info_txt ul li { font-size: 14px; }
    #c4 .desc_box { padding: 16px 14px; }
    #c4 .desc_box p { font-size: 14px; }
    #c4 .desc_box .desc_note { font-size: 13px; }
    #c4 .c4_list > li { font-size: 14px; padding: 10px 10px 10px 24px; }
    #c4 .c4_list > li::before { left: 8px; }
    #c4 .method_list > li { font-size: 14px; padding: 12px 10px 12px 24px; }
    #c4 .method_list > li::before { left: 8px; }
    #c4 .method_list .method_indent { font-size: 13px; }
    #c4 .method_list .method_indent2 { font-size: 13px; padding-left: 16px; }
    #c4 .method_list .method_indent2 span { font-size: 12px; }
    #c4 .program_list > li { font-size: 14px; padding: 12px 10px 12px 24px; }
    #c4 .program_list > li::before { left: 8px; }
    #c4 .program_list .pg_sub { font-size: 13px; }
    #c4 .program_list .pg_indent { font-size: 12px; }
    #c4 .c4_flow_wrap { padding: 20px 14px; }
    #c4 .c4_flow_box { font-size: 13px; padding: 12px 6px; }
    #c4 .contact_wrap { gap: 20px; flex-direction: column; }
    #c4 .contact_info .contact_label { font-size: 14px; }
    #c4 .contact_info .contact_val { font-size: 16px; }
    #c4 .c4_section { margin-bottom: 30px; }
    #c4 p { font-size: 14px; }
}
@media (max-width: 480px) {
    #c4 .sec_title { font-size: 15px; }
    #c4 .contact_item { flex-direction: column; text-align: center; }
    #c4 .survey_btn { width: 100%; box-sizing: border-box; text-align: center; }
}
/* c4 */

/* c5 */
#c5 { max-width: 1400px; margin: 0 auto; padding: 60px 0 80px; }
#c5 p { font-size: 16px; word-break: keep-all; line-height: 1.8; }
 
/* 섹션 타이틀 */
#c5 .sec_title { display: flex; align-items: center; gap: 10px; font-size: 28px; font-weight: 700; color: #1a3a6e; margin-bottom: 30px; }
#c5 .sec_title::before { content: '☑'; font-size: 28px; color: #1a3a6e; font-weight: 100; margin-bottom: 3px; }
 
/* 섹션 간격 */
#c5 .c5_section { margin-bottom: 60px; }
 
/* ── 안내 박스 ── */
#c5 .info_box { display: flex; align-items: flex-start; gap: 30px; border: 1px solid #c8d8f0; background: #f4f7fc; padding: 30px; border-left: 4px solid #1a3a6e; }
#c5 .info_box .info_txt { flex: 1; }
#c5 .info_box .info_txt ul { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 8px; }
#c5 .info_box .info_txt ul li { font-size: 18px; color: #333; line-height: 1.7; padding-left: 16px; position: relative; }
#c5 .info_box .info_txt ul li::before { content: '•'; position: absolute; left: 0; color: #1a3a6e; font-weight: 700; }
#c5 .info_box .info_img { width: 200px; flex-shrink: 0; }
#c5 .info_box .info_img img { width: 100%; display: block; }
 
/* ── 설명 박스 ── */
#c5 .desc_box { background: #f9f9f9; border-top: 2px solid #1a3a6e; border-bottom: 1px solid #ddd; padding: 22px 26px; }
#c5 .desc_box p { margin: 0; padding-left: 16px; position: relative; font-size: 18px; color: #444; }
#c5 .desc_box p::before { content: '•'; position: absolute; left: 0; color: #1a3a6e; font-weight: 700; }
 
/* ── 불릿 목록 ── */
#c5 .c5_list { list-style: none; margin: 0; padding: 0; border-top: 2px solid #1a3a6e; border-bottom: 1px solid #ddd; }
#c5 .c5_list li { padding: 13px 20px 13px 36px; border-bottom: 1px solid #eee; font-size: 18px; color: #444; line-height: 1.7; position: relative; }
#c5 .c5_list li:last-child { border-bottom: none; }
#c5 .c5_list li::before { content: '•'; position: absolute; left: 20px; color: #1a3a6e; font-weight: 700; }
#c5 .c5_list li:nth-child(even) { background: #fafafa; }
 
/* ── 산업환기진단 플로우 ── */
#c5 .hvac_flow_wrap { overflow-x: auto; }
#c5 .hvac_flow { min-width: 700px; display: flex; flex-direction: column; align-items: center; gap: 0; }
 
/* 상단 박스 */
#c5 .hvac_top_box { background: #5a9a45; color: #fff; font-size: 18px; font-weight: 700; text-align: center; padding: 14px 40px; min-width: 338px; }
#c5 .hvac_top_desc { border: 1px solid #ddd; background: #fff; padding: 12px 24px; min-width: 280px; text-align: center; }
#c5 .hvac_top_desc p { margin: 0; font-size: 16px; color: #555; line-height: 1.6; }
 
/* 수직 화살표 */
#c5 .hvac_v_arr { width: 0; height: 0; border-left: 10px solid transparent; border-right: 10px solid transparent; border-top: 14px solid #f5a623; margin: 6px auto; }
 
/* 5열 그리드 */
#c5 .hvac_5grid { display: grid; grid-template-columns: repeat(5, 1fr); gap: 6px; width: 100%; }
#c5 .hvac_5grid .hvac_col_head { background: #f5a623; color: #fff; font-size: 18px; font-weight: 700; text-align: center; padding: 12px 8px; }
#c5 .hvac_5grid .hvac_col_body { border: 1px solid #ddd; background: #fff; padding: 12px 10px; font-size: 12px; color: #444; line-height: 1.7; }
#c5 .hvac_5grid .hvac_col_body p { margin: 0; font-size: 14px; }
 
/* 중간/하단 박스 */
#c5 .hvac_mid_box { background: #f5a623; color: #fff; font-size: 18px; font-weight: 700; text-align: center; padding: 14px 40px; min-width: 300px; }
#c5 .hvac_mid_desc { border: 1px solid #ddd; background: #fff; padding: 12px 24px; min-width: 300px; text-align: center; }
#c5 .hvac_mid_desc p { margin: 0; font-size: 14px; color: #555; line-height: 1.6; }
 
/* ── CFD 이미지 박스 ── */
#c5 .cfd_box { border: 1px solid #ddd; background: #fff; padding: 24px; }
#c5 .cfd_title { font-size: 18px; font-weight: 700; color: #1a3a6e; text-align: center; margin: 0 0 20px; }
#c5 .cfd_imgs { display: flex; justify-content: center; gap: 40px; align-items: flex-end; }
#c5 .cfd_imgs .cfd_img_item { display: flex; flex-direction: column; align-items: center; gap: 10px;    text-align: center; }
#c5 .cfd_imgs .cfd_img_item img { width: 240px; display: block; }
#c5 .cfd_imgs .cfd_img_item span { font-size: 16px; color: #555; font-weight: 600; }
 
/* ── 진단업무 절차 ── */
#c5 .proc_wrap { border: 1px solid #ddd; padding: 30px; background: #fff; overflow-x: auto; }
#c5 .proc_grid { min-width: 600px; display: grid; grid-template-columns: repeat(3, 1fr); grid-template-rows: auto auto; gap: 0; }
#c5 .proc_cell { display: flex; align-items: center; justify-content: center; gap: 0; }
#c5 .proc_box { background: #5a9a45; color: #fff; font-size: 18px; font-weight: 700; text-align: center; padding: 14px 10px; flex: 1; }
#c5 .proc_box.orange { background: #f5a623; }
#c5 .proc_arr_r { width: 0; height: 0; border-top: 8px solid transparent; border-bottom: 8px solid transparent; border-left: 12px solid #5a9a45; flex-shrink: 0; margin: 0 4px; }
#c5 .proc_arr_r.orange { border-left-color: #f5a623; }
#c5 .proc_arr_l { width: 0; height: 0; border-top: 8px solid transparent; border-bottom: 8px solid transparent; border-right: 12px solid #f5a623; flex-shrink: 0; margin: 0 4px; }
#c5 .proc_arr_d { display: flex; justify-content: flex-end; padding-right: 40%; }
#c5 .proc_arr_d::after { content: ''; display: block; width: 0; height: 0; border-left: 8px solid transparent; border-right: 8px solid transparent; border-top: 12px solid #5a9a45; }
 
/* ── 연락처 ── */
#c5 .contact_wrap { display: flex; align-items: center; gap: 50px; flex-wrap: wrap; }
#c5 .contact_item { display: flex; align-items: center; gap: 16px; }
#c5 .contact_icon { width: 56px; height: 56px; border-radius: 50%; background: #1a3a6e; display: flex; align-items: center; justify-content: center; flex-shrink: 0; }
#c5 .contact_icon i { font-size: 22px; color: #fff; }
#c5 .contact_info .contact_label { font-size: 16px; color: #1a3a6e; font-weight: 600; margin-bottom: 3px; }
#c5 .contact_info .contact_val { font-size: 20px; font-weight: 700; color: #222; }
/* ── 반응형 ── */
@media (max-width: 1024px) {
    #c5 .hvac_5grid { grid-template-columns: repeat(3, 1fr); }
    #c5 .cfd_imgs .cfd_img_item img { width: 180px; }
}
@media (max-width: 768px) {
    #c5 { padding: 0; }
    #c5 .sec_title { font-size: 18px; margin-bottom: 10px; }
    #c5 .sec_title::before { font-size: 18px; }
    #c5 .info_box { flex-direction: column; padding: 20px 14px; }
    #c5 .info_box .info_img { width: 140px; margin: 0 auto; }
    #c5 .info_box .info_txt ul li { font-size: 14px; }
    #c5 .c5_list li { font-size: 14px; padding: 10px 10px 10px 24px; }
    #c5 .c5_list li::before { left: 8px; }
    #c5 .hvac_5grid { grid-template-columns: repeat(2, 1fr); }
    #c5 .cfd_imgs { flex-direction: column; align-items: center; gap: 20px; }
    #c5 .cfd_imgs .cfd_img_item img { width: 100%; max-width: 300px; }
    #c5 .contact_wrap { gap: 20px; flex-direction: column; }
    #c5 .contact_info .contact_label { font-size: 14px; }
    #c5 .contact_info .contact_val { font-size: 16px; }
    #c5 .c5_section { margin-bottom: 30px; }
    #c5 p { font-size: 14px; }
    #c5 .proc_wrap { padding: 16px; }
    #c5 .desc_box p { font-size: 14px; }
    #c5 .hvac_top_box { font-size: 15px; min-width: auto; padding: 12px 20px; }
    #c5 .hvac_mid_box { font-size: 15px; min-width: auto; padding: 12px 20px; }
    #c5 .hvac_top_desc p { font-size: 13px; }
    #c5 .hvac_mid_desc p { font-size: 13px; }
    #c5 .hvac_5grid .hvac_col_head { font-size: 13px; padding: 10px 6px; }
    #c5 .hvac_5grid .hvac_col_body p { font-size: 12px; }
    #c5 .proc_box { font-size: 13px; padding: 12px 6px; }
    #c5 .cfd_title { font-size: 15px; }
}
@media (max-width: 480px) {
    #c5 .sec_title { font-size: 15px; }
    #c5 .hvac_5grid { grid-template-columns: repeat(2, 1fr); }
    #c5 .contact_item { flex-direction: column; text-align: center; }
    #c5 .proc_grid { grid-template-columns: repeat(2, 1fr); }
    #c5 .hvac_flow { min-width: 0; width: 100%; }
    #c5 .hvac_top_box { min-width: 0; width: 100%; box-sizing: border-box; }
    #c5 .hvac_mid_box { min-width: 0; width: 100%; box-sizing: border-box; }
    #c5 .hvac_top_desc { min-width: 0; width: 100%; box-sizing: border-box; }
    #c5 .hvac_mid_desc { min-width: 0; width: 100%; box-sizing: border-box; }
    #c5 .cfd_imgs .cfd_img_item img { width: 100%; }
}
/* c5 */

/* c6 */
#c6 { max-width: 1400px; margin: 0 auto; padding: 60px 0 80px; }
#c6 p { font-size: 16px; word-break: keep-all; line-height: 1.8; }
 
/* 섹션 타이틀 */
#c6 .sec_title { display: flex; align-items: center; gap: 10px; font-size: 28px; font-weight: 700; color: #1a3a6e; margin-bottom: 30px; }
#c6 .sec_title::before { content: '☑'; font-size: 28px; color: #1a3a6e; font-weight: 100; margin-bottom: 3px; }
 
/* 섹션 간격 */
#c6 .c6_section { margin-bottom: 60px; }
 
/* ── 안내 박스 ── */
#c6 .info_box { display: flex; align-items: flex-start; gap: 30px; border: 1px solid #c8d8f0; background: #f4f7fc; padding: 30px; border-left: 4px solid #1a3a6e; }
#c6 .info_box .info_txt { flex: 1; }
#c6 .info_box .info_txt ul { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 8px; }
#c6 .info_box .info_txt ul li { font-size: 18px; color: #333; line-height: 1.7; padding-left: 16px; position: relative; }
#c6 .info_box .info_txt ul li::before { content: '•'; position: absolute; left: 0; color: #1a3a6e; font-weight: 700; }
#c6 .info_box .info_img { width: 200px; flex-shrink: 0; }
#c6 .info_box .info_img img { width: 100%; display: block; }
 
/* ── 설명 박스 ── */
#c6 .desc_box { background: #f9f9f9; border-top: 2px solid #1a3a6e; border-bottom: 1px solid #ddd; padding: 22px 26px; }
#c6 .desc_box p { margin: 0; padding-left: 16px; position: relative; font-size: 18px; color: #444; }
#c6 .desc_box p::before { content: '•'; position: absolute; left: 0; color: #1a3a6e; font-weight: 700; }
 
/* ── 불릿 목록 ── */
#c6 .c6_list { list-style: none; margin: 0; padding: 0; border-top: 2px solid #1a3a6e; border-bottom: 1px solid #ddd; }
#c6 .c6_list li { padding: 13px 20px 13px 36px; border-bottom: 1px solid #eee; font-size: 18px; color: #444; line-height: 1.7; position: relative; }
#c6 .c6_list li:last-child { border-bottom: none; }
#c6 .c6_list li::before { content: '•'; position: absolute; left: 20px; color: #1a3a6e; font-weight: 700; }
#c6 .c6_list li:nth-child(even) { background: #fafafa; }
#c6 .c6_list li .c6_sub { display: block; padding-left: 14px; font-size: 16px; color: #666; margin-top: 4px; line-height: 1.7; }
 
/* ── 산업환기진단 플로우 ── */
#c6 .hvac_flow_wrap { overflow-x: auto; }
#c6 .hvac_flow { min-width: 700px; display: flex; flex-direction: column; align-items: center; gap: 0; }
 
/* 상단 박스 */
#c6 .hvac_top_box { background: #5a9a45; color: #fff; font-size: 18px; font-weight: 700; text-align: center; padding: 14px 40px; min-width: 338px; }
#c6 .hvac_top_desc { border: 1px solid #ddd; background: #fff; padding: 12px 24px; min-width: 280px; text-align: center; }
#c6 .hvac_top_desc p { margin: 0; font-size: 16px; color: #555; line-height: 1.6; }
 
/* 수직 화살표 */
#c6 .hvac_v_arr { width: 0; height: 0; border-left: 10px solid transparent; border-right: 10px solid transparent; border-top: 14px solid #f5a623; margin: 6px auto; }
 
/* 5열 그리드 */
#c6 .hvac_5grid { display: grid; grid-template-columns: repeat(5, 1fr); gap: 6px; width: 100%; }
#c6 .hvac_5grid .hvac_col_head { background: #f5a623; color: #fff; font-size: 18px; font-weight: 700; text-align: center; padding: 12px 8px; }
#c6 .hvac_5grid .hvac_col_body { border: 1px solid #ddd; background: #fff; padding: 12px 10px; font-size: 12px; color: #444; line-height: 1.7; }
#c6 .hvac_5grid .hvac_col_body p { margin: 0; font-size: 14px; }
 
/* 중간/하단 박스 */
#c6 .hvac_mid_box { background: #f5a623; color: #fff; font-size: 18px; font-weight: 700; text-align: center; padding: 14px 40px; min-width: 300px; }
#c6 .hvac_mid_desc { border: 1px solid #ddd; background: #fff; padding: 12px 24px; min-width: 300px; text-align: center; }
#c6 .hvac_mid_desc p { margin: 0; font-size: 14px; color: #555; line-height: 1.6; }
 
/* ── CFD 이미지 박스 ── */
#c6 .cfd_box { border: 1px solid #ddd; background: #fff; padding: 24px; }
#c6 .cfd_title { font-size: 18px; font-weight: 700; color: #1a3a6e; text-align: center; margin: 0 0 20px; }
#c6 .cfd_imgs { display: flex; justify-content: center; gap: 40px; align-items: flex-end; }
#c6 .cfd_imgs .cfd_img_item { display: flex; flex-direction: column; align-items: center; gap: 10px; text-align: center; }
#c6 .cfd_imgs .cfd_img_item img { width: 240px; display: block; }
#c6 .cfd_imgs .cfd_img_item span { font-size: 16px; color: #555; font-weight: 600; }
 
/* ── Ray noise 플로우차트 ── */
#c6 .raynoise_wrap { border: 1px solid #ddd; background: #fff; padding: 40px 30px; overflow-x: auto; }
#c6 .raynoise_flow { min-width: 500px; display: grid; grid-template-columns: 1fr auto 1fr; grid-template-rows: auto auto auto; align-items: center; justify-items: center; gap: 20px 10px; }
#c6 .rn_box { background: #5a9a45; color: #fff; font-size: 16px; font-weight: 700; text-align: center; padding: 16px 24px; min-width: 180px; line-height: 1.4; }
#c6 .rn_center { background: #f5a623; color: #fff; font-size: 18px; font-weight: 700; text-align: center; padding: 20px 30px; min-width: 160px; grid-column: 2; grid-row: 1 / 4; align-self: center; }
#c6 .rn_arr_r { display: flex; align-items: center; justify-content: flex-end; width: 100%; }
#c6 .rn_arr_r::after { content: ''; display: block; width: 0; height: 0; border-top: 8px solid transparent; border-bottom: 8px solid transparent; border-left: 12px solid #5a9a45; }
#c6 .rn_arr_l { display: flex; align-items: center; justify-content: flex-start; width: 100%; }
#c6 .rn_arr_l::before { content: ''; display: block; width: 0; height: 0; border-top: 8px solid transparent; border-bottom: 8px solid transparent; border-right: 12px solid #5a9a45; }
#c6 .rn_line { width: 40px; height: 2px; background: #5a9a45; }
#c6 .rn_arrow_cell { display: flex; align-items: center; gap: 0; }
 
/* Ray noise 시뮬레이션 이미지 */
#c6 .sim_imgs { display: flex; gap: 30px; justify-content: center; align-items: flex-start; margin-top: 0; }
#c6 .sim_img_item { display: flex; flex-direction: column; gap: 10px; flex: 1; max-width: 600px; }
#c6 .sim_img_item .sim_img_title { font-size: 16px; font-weight: 600; color: #333; }
#c6 .sim_img_item img { width: 100%; display: block; border: 1px solid #eee; }
 
/* ── 진단업무 절차 ── */
#c6 .proc_wrap { border: 1px solid #ddd; padding: 30px; background: #fff; overflow-x: auto; }
#c6 .proc_box { background: #5a9a45; color: #fff; font-size: 18px; font-weight: 700; text-align: center; padding: 14px 10px; flex: 1; }
#c6 .proc_box.orange { background: #f5a623; }
#c6 .proc_arr_r { width: 0; height: 0; border-top: 8px solid transparent; border-bottom: 8px solid transparent; border-left: 12px solid #5a9a45; flex-shrink: 0; margin: 0 4px; }
#c6 .proc_arr_r.orange { border-left-color: #f5a623; }
#c6 .proc_arr_l { width: 0; height: 0; border-top: 8px solid transparent; border-bottom: 8px solid transparent; border-right: 12px solid #f5a623; flex-shrink: 0; margin: 0 4px; }
 
/* ── 연락처 ── */
#c6 .contact_wrap { display: flex; align-items: center; gap: 50px; flex-wrap: wrap; }
#c6 .contact_item { display: flex; align-items: center; gap: 16px; }
#c6 .contact_icon { width: 56px; height: 56px; border-radius: 50%; background: #1a3a6e; display: flex; align-items: center; justify-content: center; flex-shrink: 0; }
#c6 .contact_icon i { font-size: 22px; color: #fff; }
#c6 .contact_info .contact_label { font-size: 16px; color: #1a3a6e; font-weight: 600; margin-bottom: 3px; }
#c6 .contact_info .contact_val { font-size: 20px; font-weight: 700; color: #222; }
 
/* ── 반응형 ── */
@media (max-width: 1024px) {
    #c6 .hvac_5grid { grid-template-columns: repeat(3, 1fr); }
    #c6 .cfd_imgs .cfd_img_item img { width: 180px; }
    #c6 .sim_imgs { gap: 20px; }
}
@media (max-width: 768px) {
    #c6 { padding: 0; }
    #c6 .sec_title { font-size: 18px; margin-bottom: 10px; }
    #c6 .sec_title::before { font-size: 18px; }
    #c6 .info_box { flex-direction: column; padding: 20px 14px; }
    #c6 .info_box .info_img { width: 140px; margin: 0 auto; }
    #c6 .info_box .info_txt ul li { font-size: 14px; }
    #c6 .c6_list li { font-size: 14px; padding: 10px 10px 10px 24px; }
    #c6 .c6_list li::before { left: 8px; }
    #c6 .c6_list li .c6_sub { font-size: 13px; }
    #c6 .hvac_5grid { grid-template-columns: repeat(2, 1fr); }
    #c6 .cfd_imgs { flex-direction: column; align-items: center; gap: 20px; }
    #c6 .cfd_imgs .cfd_img_item img { width: 100%; max-width: 300px; }
    #c6 .contact_wrap { gap: 20px; flex-direction: column; }
    #c6 .contact_info .contact_label { font-size: 14px; }
    #c6 .contact_info .contact_val { font-size: 16px; }
    #c6 .c6_section { margin-bottom: 30px; }
    #c6 p { font-size: 14px; }
    #c6 .proc_wrap { padding: 16px; }
    #c6 .desc_box p { font-size: 14px; }
    #c6 .hvac_top_box { font-size: 15px; min-width: auto; padding: 12px 20px; }
    #c6 .hvac_mid_box { font-size: 15px; min-width: auto; padding: 12px 20px; }
    #c6 .hvac_top_desc p { font-size: 13px; }
    #c6 .hvac_mid_desc p { font-size: 13px; }
    #c6 .hvac_5grid .hvac_col_head { font-size: 13px; padding: 10px 6px; }
    #c6 .hvac_5grid .hvac_col_body p { font-size: 12px; }
    #c6 .proc_box { font-size: 13px; padding: 12px 6px; }
    #c6 .cfd_title { font-size: 15px; }
    #c6 .raynoise_wrap { padding: 20px 14px; }
    #c6 .rn_box { font-size: 13px; padding: 12px 14px; min-width: 130px; }
    #c6 .rn_center { font-size: 15px; padding: 16px 18px; min-width: 120px; }
    #c6 .sim_imgs { flex-direction: column; align-items: center; }
    #c6 .sim_img_item { max-width: 100%; }
}
@media (max-width: 480px) {
    #c6 .sec_title { font-size: 15px; }
    #c6 .hvac_5grid { grid-template-columns: repeat(2, 1fr); }
    #c6 .contact_item { flex-direction: column; text-align: center; }
    #c6 .hvac_flow { min-width: 0; width: 100%; }
    #c6 .hvac_top_box { min-width: 0; width: 100%; box-sizing: border-box; }
    #c6 .hvac_mid_box { min-width: 0; width: 100%; box-sizing: border-box; }
    #c6 .hvac_top_desc { min-width: 0; width: 100%; box-sizing: border-box; }
    #c6 .hvac_mid_desc { min-width: 0; width: 100%; box-sizing: border-box; }
    #c6 .cfd_imgs .cfd_img_item img { width: 100%; }
    #c6 .raynoise_flow { grid-template-columns: 1fr auto 1fr; gap: 10px 6px; }
    #c6 .rn_box { min-width: 100px; font-size: 12px; padding: 10px 8px; }
    #c6 .rn_center { font-size: 13px; padding: 12px 10px; min-width: 90px; }
}
/* c6 */

/* c7 */
#c7 { max-width: 1400px; margin: 0 auto; padding: 60px 0 80px; }
#c7 p { font-size: 16px; word-break: keep-all; line-height: 1.8; }
 
/* 섹션 타이틀 */
#c7 .sec_title { display: flex; align-items: center; gap: 10px; font-size: 28px; font-weight: 700; color: #1a3a6e; margin-bottom: 30px; }
#c7 .sec_title::before { content: '☑'; font-size: 28px; color: #1a3a6e; font-weight: 100; margin-bottom: 3px; }
 
/* 섹션 간격 */
#c7 .c7_section { margin-bottom: 60px; }
 
/* ── 안내 박스 ── */
#c7 .info_box { display: flex; align-items: flex-start; gap: 30px; border: 1px solid #c8d8f0; background: #f4f7fc; padding: 30px; border-left: 4px solid #1a3a6e; }
#c7 .info_box .info_txt { flex: 1; }
#c7 .info_box .info_txt ul { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 8px; }
#c7 .info_box .info_txt ul li { font-size: 18px; color: #333; line-height: 1.7; padding-left: 16px; position: relative; }
#c7 .info_box .info_txt ul li::before { content: '•'; position: absolute; left: 0; color: #1a3a6e; font-weight: 700; }
#c7 .info_box .info_img { width: 200px; flex-shrink: 0; }
#c7 .info_box .info_img img { width: 100%; display: block; }
 
/* ── 설명 박스 ── */
#c7 .desc_box { background: #f9f9f9; border-top: 2px solid #1a3a6e; border-bottom: 1px solid #ddd; padding: 22px 26px; }
#c7 .desc_box p { margin: 0; padding-left: 16px; position: relative; font-size: 18px; color: #444; }
#c7 .desc_box p::before { content: '•'; position: absolute; left: 0; color: #1a3a6e; font-weight: 700; }
 
/* ── 불릿 목록 ── */
#c7 .c7_list { list-style: none; margin: 0; padding: 0; border-top: 2px solid #1a3a6e; border-bottom: 1px solid #ddd; }
#c7 .c7_list > li { padding: 14px 20px 14px 36px; border-bottom: 1px solid #eee; font-size: 18px; color: #444; line-height: 1.7; position: relative; }
#c7 .c7_list > li:last-child { border-bottom: none; }
#c7 .c7_list > li::before { content: '•'; position: absolute; left: 20px; color: #1a3a6e; font-weight: 700; }
#c7 .c7_list > li:nth-child(even) { background: #fafafa; }
 
/* 하위 ol 번호 목록 */
#c7 .c7_list .c7_ol { list-style: none; margin: 8px 0 0; padding: 0; display: flex; flex-direction: column; gap: 4px; }
#c7 .c7_list .c7_ol li { font-size: 16px; color: #555; line-height: 1.6; padding-left: 20px; position: relative; }
 
/* o 불릿 서브 */
#c7 .c7_sub_o { font-size: 16px; color: #555; line-height: 1.7; padding-left: 16px; display: block; margin-top: 6px; }
#c7 .c7_sub_note { font-size: 14px; color: #888; padding-left: 20px; display: block; margin-top: 2px; }
#c7 .c7_sub_num { display: block; font-size: 16px; color: #444; line-height: 1.7; margin-top: 10px; }
#c7 .c7_sub_num strong { color: #1a3a6e; font-weight: 700; }
#c7 .c7_sub_indent { display: block; font-size: 15px; color: #666; line-height: 1.7; padding-left: 16px; margin-top: 2px; }
 
/* ── 추진절차 ── */
#c7 .proc_wrap { border: 1px solid #ddd; padding: 40px 30px; background: #fff; overflow-x: auto; }
#c7 .proc_inner { min-width: 640px; }
 
/* 행 */
#c7 .proc_row { display: flex; align-items: stretch; gap: 0; }
 
/* 셀: 박스 + 라벨 */
#c7 .proc_cell { display: flex; flex-direction: column; align-items: center; gap: 8px; flex: 1; }
#c7 .proc_box { background: #5a9a45; color: #fff; font-size: 16px; font-weight: 700; text-align: center; padding: 16px 10px; width: 100%; box-sizing: border-box; line-height: 1.4; }
#c7 .proc_label { font-size: 13px; color: #777; text-align: center; }
 
/* 화살표 칸 — 박스 높이 기준 수직 중앙 정렬 */
#c7 .proc_arr_col { display: flex; align-items: center; align-self: flex-start; height: 52px; padding: 0 6px; flex-shrink: 0; }
#c7 .proc_arr_r { width: 0; height: 0; border-top: 8px solid transparent; border-bottom: 8px solid transparent; border-left:12px solid #f5a623 }
#c7 .proc_arr_l { width: 0; height: 0; border-top: 8px solid transparent; border-bottom: 8px solid transparent; border-right:12px solid #f5a623 }
 
/* 꺾임 화살표 ↓ (3번째 셀 아래 오른쪽 정렬) */
#c7 .proc_turn { display: flex; justify-content: center; margin: 8px 0; }
#c7 .proc_turn_inner { width: calc(33.33% - 12px); display: flex; justify-content: center; margin-left: auto; }
#c7 .proc_turn_inner::after { content: ''; display: block; width: 0; height: 0; border-left: 9px solid transparent; border-right: 9px solid transparent; border-top: 12px solid #f5a623; }
 
/* ── 연락처 ── */
#c7 .contact_wrap { display: flex; align-items: center; gap: 50px; flex-wrap: wrap; }
#c7 .contact_item { display: flex; align-items: center; gap: 16px; }
#c7 .contact_icon { width: 56px; height: 56px; border-radius: 50%; background: #1a3a6e; display: flex; align-items: center; justify-content: center; flex-shrink: 0; }
#c7 .contact_icon i { font-size: 22px; color: #fff; }
#c7 .contact_info .contact_label { font-size: 16px; color: #1a3a6e; font-weight: 600; margin-bottom: 3px; }
#c7 .contact_info .contact_val { font-size: 20px; font-weight: 700; color: #222; }
 
/* ── 반응형 ── */
@media (max-width: 768px) {
    #c7 { padding: 0; }
    #c7 .sec_title { font-size: 18px; margin-bottom: 10px; }
    #c7 .sec_title::before { font-size: 18px; }
    #c7 .info_box { flex-direction: column; padding: 20px 14px; }
    #c7 .info_box .info_img { width: 140px; margin: 0 auto; }
    #c7 .info_box .info_txt ul li { font-size: 14px; }
    #c7 .desc_box p { font-size: 14px; }
    #c7 .c7_list > li { font-size: 14px; padding: 10px 10px 10px 24px; }
    #c7 .c7_list > li::before { left: 8px; }
    #c7 .c7_list .c7_ol li { font-size: 13px; }
    #c7 .c7_sub_o { font-size: 13px; }
    #c7 .c7_sub_num { font-size: 13px; }
    #c7 .c7_sub_indent { font-size: 12px; }
    #c7 .proc_wrap { padding: 20px 14px; }
    #c7 .proc_box { font-size: 13px; padding: 12px 6px; }
    #c7 .proc_arr_col { height: 42px; padding: 0 4px; }
    #c7 .proc_label { font-size: 11px; }
    #c7 .contact_wrap { gap: 20px; flex-direction: column; }
    #c7 .contact_info .contact_label { font-size: 14px; }
    #c7 .contact_info .contact_val { font-size: 16px; }
    #c7 .c7_section { margin-bottom: 30px; }
    #c7 p { font-size: 14px; }
}
@media (max-width: 480px) {
    #c7 .sec_title { font-size: 15px; }
    #c7 .contact_item { flex-direction: column; text-align: center; }
    #c7 .proc_inner { min-width: 480px; }
    #c7 .proc_box { font-size: 12px; padding: 10px 4px; }
    #c7 .proc_arr_col { height: 38px; padding: 0 3px; }
}
/* c7 */

/* c8 */
#c8 { max-width: 1400px; margin: 0 auto; padding: 60px 0 80px; }
#c8 p{font-size: 18px; word-break: keep-all;}
 
/* 페이지 타이틀 */
#c8 .c8_page_title { font-size: 28px; font-weight: 700; color: #222; text-align: center; margin-bottom: 50px; }
 
/* 섹션 타이틀 */
#c8 .sec_title { display: flex; align-items: center; gap: 10px; font-size: 28px; font-weight: 700; color: #1a3a6e; margin-bottom: 30px; }
#c8 .sec_title::before { content: '☑'; font-size: 28px; color: #1a3a6e; font-weight: 100; margin-bottom: 3px;}
 
/* 섹션 간격 */
#c8 .c8_section { margin-bottom: 60px; }
 
/* ── 안내 박스 ── */
#c8 .info_box { display: flex; align-items: flex-start; gap: 30px; border: 1px solid #c8d8f0; background: #f4f7fc; padding: 30px; border-left: 4px solid #1a3a6e; }
#c8 .info_box .info_txt { flex: 1; }
#c8 .info_box .info_txt ul { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 10px; }
#c8 .info_box .info_txt ul li { font-size: 18px; color: #333; line-height: 1.7; padding-left: 16px; position: relative; }
#c8 .info_box .info_txt ul li::before { content: '•'; position: absolute; left: 0; color: #1a3a6e; font-weight: 700; }
#c8 .info_box .info_img { width: 200px; flex-shrink: 0; }
#c8 .info_box .info_img img { width: 100%; display: block; }
 
/* ── 목적 박스 ── */
#c8 .purpose_box { background: #f9f9f9; border-top: 2px solid #1a3a6e; border-bottom: 1px solid #ddd; padding: 22px 26px; font-size: 15px; color: #444; line-height: 1.8; }
#c8 .purpose_box p { margin: 0; padding-left: 16px; position: relative; }
#c8 .purpose_box p::before { content: '•'; position: absolute; left: 0; color: #1a3a6e; font-weight: 700; }
 
/* ── 법규 목록 ── */
#c8 .law_list { list-style: none; margin: 0; padding: 0; border-top: 2px solid #1a3a6e; border-bottom: 1px solid #ddd; }
#c8 .law_list li { padding: 13px 20px; border-bottom: 1px solid #eee; font-size: 18px; color: #444; line-height: 1.6; padding-left: 36px; position: relative; }
#c8 .law_list li:last-child { border-bottom: none; }
#c8 .law_list li::before { content: '•'; position: absolute; left: 20px; color: #1a3a6e; font-weight: 700; }
#c8 .law_list li:nth-child(even) { background: #fafafa; }
 
/* ── 진단 설명 ── */
#c8 .diag_desc { list-style: none; margin: 0 0 20px; padding: 0; display: flex; flex-direction: column; gap: 10px; }
#c8 .diag_desc li { font-size: 18px; color: #444; line-height: 1.7; padding-left: 16px; position: relative; }
#c8 .diag_desc li::before { content: '•'; position: absolute; left: 0; color: #1a3a6e; font-weight: 700; }
 
/* ── 공통 테이블 ── */
#c8 .c8_table { width: 100%; border-collapse: collapse; border-top: 2px solid #1a3a6e; border-bottom: 1px solid #ddd; margin-top: 10px; }
#c8 .c8_table th, #c8 .c8_table td { padding: 14px 18px; border: 1px solid #ddd; font-size: 18px; vertical-align: middle; }
#c8 .c8_table thead th { background: #1a3a6e; color: #fff; font-weight: 700; text-align: center; }
#c8 .c8_table tbody th { background: #f2f5fa; font-weight: 600; color: #1a3a6e; text-align: center; width: 14%; }
#c8 .c8_table tbody td { color: #444; line-height: 1.7; }
#c8 .c8_table tbody td ol { margin: 0; padding-left: 20px; display: flex; flex-direction: column; gap: 4px; }
#c8 .c8_table tbody td ol li { font-size: 18px; }
#c8 .c8_table tr:last-child th, #c8 .c8_table tr:last-child td { border-bottom: none; }
 
/* ── 절차 플로우 ── */
#c8 .flow_wrap { display: flex; flex-direction: column; gap: 0; }
#c8 .flow_item { display: flex; align-items: stretch; gap: 30px; margin-bottom: 0; }
#c8 .flow_item + .flow_item { margin-top: 16px; }
#c8 .flow_step { display: flex; align-items: center; justify-content: center; min-width: 180px; background: #1a3a6e; color: #fff; font-size: 20px; font-weight: 700; padding: 20px 14px; text-align: center; border-radius: 30px; flex-shrink: 0; }
#c8 .flow_arrow { display: flex; align-items: center; justify-content: center; color: #1a3a6e; font-size: 22px; flex-shrink: 0; }
#c8 .flow_desc { flex: 1; border: 1px solid #c8d8f0; background: #f4f7fc; padding: 16px 22px; display: flex; flex-direction: column; justify-content: center; }
#c8 .flow_desc ul { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 6px; }
#c8 .flow_desc ul li { font-size: 16px; color: #444; padding-left: 14px; position: relative; line-height: 1.6; }
#c8 .flow_desc ul li::before { content: '-'; position: absolute; left: 0; color: #1a3a6e; }
 
/* ── 연락처 ── */
#c8 .contact_wrap { display: flex; align-items: center; gap: 50px; flex-wrap: wrap; }
#c8 .contact_item { display: flex; align-items: center; gap: 16px; }
#c8 .contact_icon { width: 56px; height: 56px; border-radius: 50%; background: #1a3a6e; display: flex; align-items: center; justify-content: center; flex-shrink: 0; }
#c8 .contact_icon i { font-size: 22px; color: #fff; }
#c8 .contact_info .contact_label { font-size: 16px; color: #1a3a6e; font-weight: 600; margin-bottom: 3px; }
#c8 .contact_info .contact_val { font-size: 20px; font-weight: 700; color: #222; }
#c8 .contact_info .contact_sub { font-size: 13px; color: #666; margin-top: 2px; }
/* ── 반응형 ── */
@media (max-width: 1024px) {
    #c8 .flow_step { min-width: 140px; font-size: 14px; }
}
@media (max-width: 768px) {
    #c8 { padding: 0px; }
    #c8 .c8_page_title { font-size: 22px; margin-bottom: 30px; }
    #c8 .sec_title { font-size: 17px;margin-bottom: 10px; }
    #c8 .info_box { flex-direction: column; padding: 20px 10px; }
    #c8 .info_box .info_img { width: 140px; margin: 0 auto; }
    #c8 .c8_table th, #c8 .c8_table td { padding: 10px 12px; font-size: 14px; }
    #c8 .flow_item { flex-direction: column; gap: 10px; }
    #c8 .flow_step { min-width: auto; border-radius: 8px; padding: 14px; }
    #c8 .flow_arrow { transform: rotate(90deg); }
    #c8 .contact_wrap {gap: 20px; flex-direction: column;}
    #c8 .c8_section { margin-bottom: 20px; }
    #c8 p{font-size: 14px;}
    #c8 .purpose_box{padding: 15px 10px;}
    #c8 .law_list li{padding: 10px 10px;padding-left: 10px}
    #c8 .law_list li::before{left: 0;}
    #c8 .diag_desc li{    font-size: 14px;}
    #c8 .c8_table tbody td ol li{font-size: 14px;}
    #c8 .sec_title::before{font-size: 18px;    margin-bottom: 2px;}
    #c8 .flow_desc ul li{font-size: 14px;}
    #c8 .contact_info .contact_label{font-size: 14px;}
    #c8 .contact_info .contact_val{font-size: 16px;}
}
@media (max-width: 480px) {
    #c8 .c8_page_title { font-size: 18px; }
    #c8 .sec_title { font-size: 15px; }
    #c8 .info_box .info_txt ul li { font-size: 14px; }
    #c8 .law_list li { font-size: 14px; }
    #c8 .c8_table { display: block; overflow-x: auto; }
    #c8 .contact_item { flex-direction: column; text-align: center; }
}
/* c8 */

/* c9 */
#c9 { max-width: 1400px; margin: 0 auto; padding: 60px 0 80px; }
#c9 p { font-size: 18px; word-break: keep-all; line-height: 1.8; color: #444; }
 
/* 섹션 타이틀 */
#c9 .sec_title { display: flex; align-items: center; gap: 10px; font-size: 28px; font-weight: 700; color: #1a3a6e; margin-bottom: 30px; }
#c9 .sec_title::before { content: '☑'; font-size: 28px; color: #1a3a6e; font-weight: 100; margin-bottom: 3px; }
 
/* 섹션 간격 */
#c9 .c9_section { margin-bottom: 60px; }
 
/* ── 안내 박스 ── */
#c9 .info_box { display: flex; align-items: flex-start; gap: 30px; border: 1px solid #c8d8f0; background: #f4f7fc; padding: 30px; border-left: 4px solid #1a3a6e; }
#c9 .info_box .info_txt { flex: 1; }
#c9 .info_box .info_txt ul { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 8px; }
#c9 .info_box .info_txt ul li { font-size: 18px; color: #333; line-height: 1.7; padding-left: 16px; position: relative; }
#c9 .info_box .info_txt ul li::before { content: '•'; position: absolute; left: 0; color: #1a3a6e; font-weight: 700; }
#c9 .info_box .info_txt .info_note { display: block; font-size: 15px; color: #888; padding-left: 16px; margin-top: 4px; }
#c9 .info_box .info_img { width: 200px; flex-shrink: 0; }
#c9 .info_box .info_img img { width: 100%; display: block; }
 
/* ── 설명 박스 ── */
#c9 .desc_box { background: #f9f9f9; border-top: 2px solid #1a3a6e; border-bottom: 1px solid #ddd; padding: 22px 26px; }
#c9 .desc_box p { margin: 0; padding-left: 16px; position: relative; font-size: 18px; }
#c9 .desc_box p::before { content: '•'; position: absolute; left: 0; color: #1a3a6e; font-weight: 700; }
 
/* ── 불릿 목록 ── */
#c9 .c9_list { list-style: none; margin: 0; padding: 0; border-top: 2px solid #1a3a6e; border-bottom: 1px solid #ddd; }
#c9 .c9_list > li { padding: 12px 20px 12px 36px; border-bottom: 1px solid #eee; font-size: 18px; color: #444; line-height: 1.7; position: relative; }
#c9 .c9_list > li:last-child { border-bottom: none; }
#c9 .c9_list > li::before { content: '•'; position: absolute; left: 20px; color: #1a3a6e; font-weight: 700; }
#c9 .c9_list > li:nth-child(even) { background: #fafafa; }
#c9 .c9_list .c9_sub { display: block; font-size: 16px; color: #555; padding-left: 14px; margin-top: 6px; line-height: 1.8; }
 
/* ── 요구사항 테이블 ── */
#c9 .c9_table { width: 100%; border-collapse: collapse; border-top: 2px solid #1a3a6e; border-bottom: 1px solid #ddd; min-width: 640px; }
#c9 .c9_table th, #c9 .c9_table td { padding: 14px 18px; border: 1px solid #ddd; font-size: 17px; vertical-align: top; line-height: 1.8; color: #444; }
#c9 .c9_table thead th { background: #1a3a6e; color: #fff; font-weight: 700; text-align: center; vertical-align: middle; }
#c9 .c9_table td.c9_th { background: #f2f5fa; font-weight: 600; color: #1a3a6e; text-align: center; vertical-align: middle; white-space: nowrap; }
 
/* ── 이미지 박스 ── */
#c9 .img_box { border: 1px solid #ddd; background: #fff; padding: 20px; }
#c9 .img_box img { width: 50%; display: block;margin: 0 auto; }
 
/* ── 연락처 ── */
#c9 .contact_wrap { display: flex; align-items: center; gap: 50px; flex-wrap: wrap; }
#c9 .contact_item { display: flex; align-items: center; gap: 16px; }
#c9 .contact_icon { width: 56px; height: 56px; border-radius: 50%; background: #1a3a6e; display: flex; align-items: center; justify-content: center; flex-shrink: 0; }
#c9 .contact_icon i { font-size: 22px; color: #fff; }
#c9 .contact_info .contact_label { font-size: 18px; color: #1a3a6e; font-weight: 600; margin-bottom: 3px; }
#c9 .contact_info .contact_val { font-size: 20px; font-weight: 700; color: #222; }
 
/* ── 반응형 ── */
@media (max-width: 768px) {
    #c9 { padding: 0; }
    #c9 .sec_title { font-size: 18px; margin-bottom: 10px; }
    #c9 .sec_title::before { font-size: 18px; }
    #c9 .info_box { flex-direction: column; padding: 20px 14px; }
    #c9 .info_box .info_img { width: 140px; margin: 0 auto; }
    #c9 .info_box .info_txt ul li { font-size: 14px; }
    #c9 .info_box .info_txt .info_note { font-size: 13px; }
    #c9 .desc_box { padding: 16px 14px; }
    #c9 .desc_box p { font-size: 14px; }
    #c9 .c9_list > li { font-size: 14px; padding: 10px 10px 10px 24px; }
    #c9 .c9_list > li::before { left: 8px; }
    #c9 .c9_table { display: block; overflow-x: auto; }
    #c9 .c9_table th, #c9 .c9_table td { font-size: 13px; padding: 10px 12px; }
    #c9 .c9_list .c9_sub { font-size: 13px; }
    #c9 .contact_wrap { gap: 20px; flex-direction: column; }
    #c9 .contact_info .contact_label { font-size: 14px; }
    #c9 .contact_info .contact_val { font-size: 16px; }
    #c9 .c9_section { margin-bottom: 30px; }
    #c9 p { font-size: 14px; }
}
@media (max-width: 480px) {
    #c9 .sec_title { font-size: 15px; }
    #c9 .contact_item { flex-direction: column; text-align: center; }
}
/* c9 */


/* d1 */
#d1 { max-width: 1400px; margin: 0 auto; padding: 60px 0 80px; }
#d1 p {font-size: 18px; word-break: keep-all;}
#d1 .mt50 {margin-top: 50px;}
#d1 .notice {font-size: 16px; word-break: keep-all; color: var(--primary); font-weight: 500;}
#d1 .notice_box {margin-top: 10px;}
#d1 .table_box {margin-bottom: 30px;}
#d1 .table_box .center {text-align: center;}
#d1 .table_box2 {margin-bottom: 0;}
#d1 .table_box2 .d1_table th:nth-child(1) {width: 25%;}
#d1 .table_box2 .d1_table th:nth-child(2) {width: 35%;}
#d1 .table_box2 .d1_table th:nth-child(3) {width: 40%;}
#d1 .table_box3 .d1_table td:nth-child(1) {width: 20%;}
#d1 .table_box3 .d1_table td:nth-child(2) {width: 20%;}
#d1 .table_box3 .d1_table td:nth-child(3) {width: 60%;}
 
/* 페이지 타이틀 */
#d1 .d1_page_title { font-size: 28px; font-weight: 700; color: #222; text-align: center; margin-bottom: 50px; }
 
/* 섹션 타이틀 */
#d1 .sec_title { display: flex; align-items: center; gap: 10px; font-size: 28px; font-weight: 700; color: #1a3a6e; margin-bottom: 30px; }
#d1 .sec_title::before { content: '☑'; font-size: 28px; color: #1a3a6e; font-weight: 100; margin-bottom: 3px;}
 
/* 섹션 간격 */
#d1 .d1_section { margin-bottom: 60px; }

/* ── 안내 박스 ── */
#d1 .info_box { display: flex; align-items: flex-start; gap: 30px; border: 1px solid #c8d8f0; background: #f4f7fc; padding: 30px; border-left: 4px solid #1a3a6e; }
#d1 .info_box .info_txt { flex: 1; }
#d1 .info_box .info_txt ul { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 10px; }
#d1 .info_box .info_txt ul li { font-size: 18px; color: #333; line-height: 1.7; padding-left: 16px; position: relative; }
#d1 .info_box .info_txt ul li::before { content: '•'; position: absolute; left: 0; color: #1a3a6e; font-weight: 700; }

/* ── 목적 박스 ── */
#d1 .purpose_box { background: #f9f9f9; border-top: 2px solid #1a3a6e; border-bottom: 1px solid #ddd; padding: 22px 26px; font-size: 15px; color: #444; line-height: 1.8; }
#d1 .purpose_box p { margin: 0; padding-left: 16px; position: relative; }
#d1 .purpose_box p::before { content: '•'; position: absolute; left: 0; color: #1a3a6e; font-weight: 700; }

/* ── 진단 설명 ── */
#d1 .diag_desc { list-style: none; margin-bottom: 20px; padding: 0; display: flex; flex-direction: column; gap: 10px; }
#d1 .diag_desc li { font-size: 18px; color: #444; line-height: 1.7; padding-left: 16px; position: relative; }
#d1 .diag_desc li::before { content: '•'; position: absolute; left: 0; color: #1a3a6e; font-weight: 700; }

/* ── 법규 목록 ── */
#d1 .law_list { list-style: none; margin: 0; padding: 0; border-top: 2px solid #1a3a6e; border-bottom: 1px solid #ddd; }
#d1 .law_list li { padding: 13px 20px; border-bottom: 1px solid #eee; font-size: 18px; color: #444; line-height: 1.6; padding-left: 36px; position: relative; }
#d1 .law_list li:last-child { border-bottom: none; }
#d1 .law_list li::before { content: '•'; position: absolute; left: 20px; color: #1a3a6e; font-weight: 700; }
#d1 .law_list li:nth-child(even) { background: #fafafa; }

/* ── 공통 테이블 ── */
#d1 .d1_table { width: 100%; border-collapse: collapse; border-top: 2px solid #1a3a6e; border-bottom: 1px solid #ddd; margin-top: 10px; }
#d1 .d1_table th, #d1 .d1_table td { padding: 14px 18px; border: 1px solid #ddd; font-size: 18px; vertical-align: middle; }
#d1 .d1_table thead th { background: #1a3a6e; color: #fff; font-weight: 700; text-align: center; }
#d1 .d1_table tbody th { background: #d2f5fa; font-weight: 600; color: #1a3a6e; text-align: center; width: 14%; }
#d1 .d1_table tbody td { color: #444; line-height: 1.7; }
#d1 .d1_table tbody td ol { margin: 0; padding-left: 20px; display: flex; flex-direction: column; gap: 4px; }
#d1 .d1_table tbody td ol li { font-size: 18px; }
#d1 .d1_table tr:last-child th, #d1 .d1_table tr:last-child td { border-bottom: none; }

/* ── 연락처 ── */
#d1 .contact_wrap { display: flex; align-items: center; gap: 50px; flex-wrap: wrap; }
#d1 .contact_item { display: flex; align-items: center; gap: 16px; }
#d1 .contact_icon { width: 56px; height: 56px; border-radius: 50%; background: #1a3a6e; display: flex; align-items: center; justify-content: center; flex-shrink: 0; }
#d1 .contact_icon i { font-size: 22px; color: #fff; }
#d1 .contact_info .contact_label { font-size: 16px; color: #1a3a6e; font-weight: 600; margin-bottom: 3px; }
#d1 .contact_info .contact_val { font-size: 20px; font-weight: 700; color: #222; }
#d1 .contact_info .contact_sub { font-size: 13px; color: #666; margin-top: 2px; }

/* ── 반응형 ── */
@media (max-width: 768px) {
    #d1 { padding: 0px; }
    #d1 .d1_page_title { font-size: 22px; margin-bottom: 30px; }
    #d1 .sec_title { font-size: 17px;margin-bottom: 10px; }
    #d1 .info_box { flex-direction: column; padding: 20px 10px; }
    #d1 .d1_table th, #d1 .d1_table td { padding: 10px 12px; font-size: 14px; }
    #d1 .contact_wrap {gap: 20px; flex-direction: column;}
    #d1 .d1_section { margin-bottom: 20px; }
    #d1 p {font-size: 14px;}
    #d1 .notice {font-size: 13px;}
    #d1 .purpose_box{padding: 15px 10px;}
    #d1 .law_list li{padding: 10px 10px;padding-left: 10px}
    #d1 .law_list li::before{left: 0;}
    #d1 .diag_desc li{font-size: 14px;}
    #d1 .d1_table tbody td ol li{font-size: 14px;}
    #d1 .sec_title::before{font-size: 18px;    margin-bottom: 2px;}
    #d1 .contact_info .contact_label{font-size: 14px;}
    #d1 .contact_info .contact_val{font-size: 16px;}
}
@media (max-width: 480px) {
    #d1 .d1_page_title { font-size: 18px; }
    #d1 .sec_title { font-size: 15px; }
    #d1 .info_box .info_txt ul li { font-size: 14px; }
    #d1 .law_list li { font-size: 14px; }
    #d1 .d1_table { display: block; overflow-x: auto; }
    #d1 .contact_item { flex-direction: column; text-align: center; }
}
/* d1 */



/* d2 */
#d2 { max-width: 1400px; margin: 0 auto; padding: 60px 0 80px; }
#d2 p{font-size: 18px; word-break: keep-all;}
 
/* 페이지 타이틀 */
#d2 .d2_page_title { font-size: 28px; font-weight: 700; color: #222; text-align: center; margin-bottom: 50px; }
 
/* 섹션 타이틀 */
#d2 .sec_title { display: flex; align-items: center; gap: 10px; font-size: 28px; font-weight: 700; color: #1a3a6e; margin-bottom: 30px; }
#d2 .sec_title::before { content: '☑'; font-size: 28px; color: #1a3a6e; font-weight: 100; margin-bottom: 3px;}
 
/* 섹션 간격 */
#d2 .d2_section { margin-bottom: 60px; }
 
/* ── 안내 박스 ── */
#d2 .info_box { display: flex; align-items: flex-start; gap: 30px; border: 1px solid #c8d8f0; background: #f4f7fc; padding: 30px; border-left: 4px solid #1a3a6e; }
#d2 .info_box .info_txt { flex: 1; }
#d2 .info_box .info_txt ul { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 10px; }
#d2 .info_box .info_txt ul li { font-size: 18px; color: #333; line-height: 1.7; padding-left: 16px; position: relative; }
#d2 .info_box .info_txt ul li::before { content: '•'; position: absolute; left: 0; color: #1a3a6e; font-weight: 700; }
#d2 .info_box .info_img { width: 200px; flex-shrink: 0; }
#d2 .info_box .info_img img { width: 100%; display: block; }
 
/* ── 목적 박스 ── */
#d2 .purpose_box { background: #f9f9f9; border-top: 2px solid #1a3a6e; border-bottom: 1px solid #ddd; padding: 22px 26px; font-size: 15px; color: #444; line-height: 1.8; }
#d2 .purpose_box p { margin: 0; padding-left: 16px; position: relative; }
#d2 .purpose_box p::before { content: '•'; position: absolute; left: 0; color: #1a3a6e; font-weight: 700; }
 
/* ── 법규 목록 ── */
#d2 .law_list { list-style: none; margin: 0; padding: 0; border-top: 2px solid #1a3a6e; border-bottom: 1px solid #ddd; }
#d2 .law_list li { padding: 13px 20px; border-bottom: 1px solid #eee; font-size: 18px; color: #444; line-height: 1.6; padding-left: 36px; position: relative; }
#d2 .law_list li:last-child { border-bottom: none; }
#d2 .law_list li::before { content: '•'; position: absolute; left: 20px; color: #1a3a6e; font-weight: 700; }
#d2 .law_list li:nth-child(even) { background: #fafafa; }
 
/* ── 진단 설명 ── */
#d2 .diag_desc { list-style: none; margin: 0 0 20px; padding: 0; display: flex; flex-direction: column; gap: 10px; }
#d2 .diag_desc li { font-size: 18px; color: #444; line-height: 1.7; padding-left: 16px; position: relative; }
#d2 .diag_desc li::before { content: '•'; position: absolute; left: 0; color: #1a3a6e; font-weight: 700; }
 
/* ── 공통 테이블 ── */
#d2 .d2_table { width: 100%; border-collapse: collapse; border-top: 2px solid #1a3a6e; border-bottom: 1px solid #ddd; margin-top: 10px; }
#d2 .d2_table th, #d2 .d2_table td { padding: 14px 18px; border: 1px solid #ddd; font-size: 18px; vertical-align: middle; }
#d2 .d2_table thead th { background: #1a3a6e; color: #fff; font-weight: 700; text-align: center; }
#d2 .d2_table tbody th { background: #d2f5fa; font-weight: 600; color: #1a3a6e; text-align: center; width: 14%; }
#d2 .d2_table tbody td { color: #444; line-height: 1.7; }
#d2 .d2_table tbody td ol { margin: 0; padding-left: 20px; display: flex; flex-direction: column; gap: 4px; }
#d2 .d2_table tbody td ol li { font-size: 18px; }
#d2 .d2_table tr:last-child th, #d2 .d2_table tr:last-child td { border-bottom: none; }
 
/* ── 절차 플로우 ── */
#d2 .flow_wrap { display: flex; flex-direction: column; gap: 0; }
#d2 .flow_item { display: flex; align-items: stretch; gap: 30px; margin-bottom: 0; }
#d2 .flow_item + .flow_item { margin-top: 16px; }
#d2 .flow_step { display: flex; align-items: center; justify-content: center; min-width: 180px; background: #1a3a6e; color: #fff; font-size: 20px; font-weight: 700; padding: 20px 14px; text-align: center; border-radius: 30px; flex-shrink: 0; }
#d2 .flow_arrow { display: flex; align-items: center; justify-content: center; color: #1a3a6e; font-size: 22px; flex-shrink: 0; }
#d2 .flow_desc { flex: 1; border: 1px solid #c8d8f0; background: #f4f7fc; padding: 16px 22px; display: flex; flex-direction: column; justify-content: center; }
#d2 .flow_desc ul { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 6px; }
#d2 .flow_desc ul li { font-size: 16px; color: #444; padding-left: 14px; position: relative; line-height: 1.6; }
#d2 .flow_desc ul li::before { content: '-'; position: absolute; left: 0; color: #1a3a6e; }
 
/* ── 연락처 ── */
#d2 .contact_wrap { display: flex; align-items: center; gap: 50px; flex-wrap: wrap; }
#d2 .contact_item { display: flex; align-items: center; gap: 16px; }
#d2 .contact_icon { width: 56px; height: 56px; border-radius: 50%; background: #1a3a6e; display: flex; align-items: center; justify-content: center; flex-shrink: 0; }
#d2 .contact_icon i { font-size: 22px; color: #fff; }
#d2 .contact_info .contact_label { font-size: 16px; color: #1a3a6e; font-weight: 600; margin-bottom: 3px; }
#d2 .contact_info .contact_val { font-size: 20px; font-weight: 700; color: #222; }
#d2 .contact_info .contact_sub { font-size: 13px; color: #666; margin-top: 2px; }

#d2 .process_box { border-top:2px solid #1a3a6e; border-bottom:1px solid #ddd; }
#d2 .process_item { padding:15px 20px; border-bottom:1px solid #eee; }
#d2 .process_item:last-child { border-bottom:none; }
#d2 .process_item strong { display:block; font-size:18px; font-weight:700; color:#222; margin-bottom:6px; }
#d2 .process_item p { margin:0; font-size:18px; color:#444; line-height:1.7; }
#d2 .process_item p .txt_img {width: 20px; margin-bottom: 5px; margin-right: 3px;}
#d2 .process_item p.sub { font-size:16px; color:#666; margin-top:4px; }

#d2 .cert_wrap { border-top:2px solid #1a3a6e; border-bottom:1px solid #ddd; padding:30px 20px; }
#d2 .cert_list { display:flex; gap:40px; justify-content:space-between; list-style:none; margin:0; padding:0; }
#d2 .cert_list li { width:33.333%; text-align:center; }
#d2 .cert_list .img { border:1px solid #ddd; padding:10px; background:#fff; }
#d2 .cert_list .img img { width:100%; height:auto; display:block; }
#d2 .cert_list p { margin-top:12px; font-size:18px; color:#222; font-weight:500; }

#d2 .equip_wrap { border-top:2px solid #1a3a6e;  padding:30px 20px; }
#d2 .equip_title { font-size:18px; font-weight:700; margin-bottom:15px; color:#222; }

#d2 .equip_list { display:grid; grid-template-columns:repeat(4,1fr); gap:20px; list-style:none; margin:0; padding:0; }

#d2 .equip_list li { text-align:center; }
#d2 .equip_list .img { border:1px solid #ddd; background:#fff;   }
#d2 .equip_list .img img { width:100%; display:block; }
#d2 .equip_list p { margin-top:8px; font-size:16px; color:#222; }
#d2 .equip_group { margin-bottom:40px; }
/* ── 반응형 ── */
@media (max-width: 1024px) {
    #d2 .flow_step { min-width: 140px; font-size: 14px; }
    #d2 .equip_list { grid-template-columns:repeat(3,1fr); }
}
@media (max-width: 768px) {
    #d2 { padding: 0px; }
    #d2 .d2_page_title { font-size: 22px; margin-bottom: 30px; }
    #d2 .sec_title { font-size: 17px;margin-bottom: 10px; }
    #d2 .info_box { flex-direction: column; padding: 20px 10px; }
    #d2 .info_box .info_img { width: 140px; margin: 0 auto; }
    #d2 .d2_table th, #d2 .d2_table td { padding: 10px 12px; font-size: 14px; }
    #d2 .flow_item { flex-direction: column; gap: 10px; }
    #d2 .flow_step { min-width: auto; border-radius: 8px; padding: 14px; }
    #d2 .flow_arrow { transform: rotate(90deg); }
    #d2 .contact_wrap {gap: 20px; flex-direction: column;}
    #d2 .d2_section { margin-bottom: 20px; }
    #d2 p{font-size: 14px;}
    #d2 .purpose_box{padding: 15px 10px;}
    #d2 .law_list li{padding: 10px 10px;padding-left: 10px}
    #d2 .law_list li::before{left: 0;}
    #d2 .diag_desc li{    font-size: 14px;}
    #d2 .d2_table tbody td ol li{font-size: 14px;}
    #d2 .sec_title::before{font-size: 18px;    margin-bottom: 2px;}
    #d2 .flow_desc ul li{font-size: 14px;}
    #d2 .contact_info .contact_label{font-size: 14px;}
    #d2 .contact_info .contact_val{font-size: 16px;}

     #d2 .process_item strong { font-size:14px; }
    #d2 .process_item p { font-size:14px; }

     #d2 .cert_list { flex-direction:column; gap:20px; }
    #d2 .cert_list li { width:100%; }
    #d2 .cert_list p { font-size:14px; }
     #d2 .equip_list { grid-template-columns:repeat(2,1fr); gap:12px; }
    #d2 .equip_list p { font-size:14px; }
    #d2 .equip_wrap{padding: 30px 0px;}
}
@media (max-width: 480px) {
    #d2 .d2_page_title { font-size: 18px; }
    #d2 .sec_title { font-size: 15px; }
    #d2 .info_box .info_txt ul li { font-size: 14px; }
    #d2 .law_list li { font-size: 14px; }
    #d2 .d2_table { display: block; overflow-x: auto; }
    #d2 .contact_item { flex-direction: column; text-align: center; }
    #d2 .equip_list { grid-template-columns:1fr; }
}
/* d2 */

/* e1 */
#e1 { max-width: 1400px; margin: 0 auto; padding: 60px 0 80px; }
#e1 p { font-size: 18px; word-break: keep-all; line-height: 1.8; color: #444; }
 
/* ── 섹션 간격 ── */
#e1 .e1_section { margin-bottom: 60px; }
 
/* ── 섹션 타이틀 ── */
#e1 .sec_title { display: flex; align-items: center; gap: 10px; font-size: 28px; font-weight: 700; color: #1a3a6e; margin-bottom: 30px; }
#e1 .sec_title::before { content: '☑'; font-size: 28px; color: #1a3a6e; font-weight: 100; margin-bottom: 3px; }
 
/* ── 상단 안내 박스 ── */
#e1 .info_box { display: flex; align-items: flex-start; gap: 30px; border: 1px solid #c8d8f0; background: #f4f7fc; padding: 30px; border-left: 4px solid #1a3a6e; }
#e1 .info_box .info_txt { flex: 1; }
#e1 .info_box .info_txt ul { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 8px; }
#e1 .info_box .info_txt ul li { font-size: 18px; color: #333; line-height: 1.7; padding-left: 16px; position: relative; }
#e1 .info_box .info_txt ul li::before { content: '•'; position: absolute; left: 0; color: #1a3a6e; font-weight: 700; }
#e1 .info_box .info_img { width: 260px; flex-shrink: 0; }
#e1 .info_box .info_img img { width: 100%; display: block; }
 
/* ── 설명 박스 ── */
#e1 .desc_box { background: #f9f9f9; border-top: 2px solid #1a3a6e; border-bottom: 1px solid #ddd; padding: 22px 26px; }
#e1 .desc_box p { margin: 0; padding-left: 16px; position: relative; font-size: 18px; }
#e1 .desc_box p::before { content: '•'; position: absolute; left: 0; color: #1a3a6e; font-weight: 700; }
 
/* ── 기본 불릿 목록 ── */
#e1 .e1_list { list-style: none; margin: 0; padding: 0; border-top: 2px solid #1a3a6e; border-bottom: 1px solid #ddd; }
#e1 .e1_list > li { padding: 14px 20px 14px 36px; border-bottom: 1px solid #eee; font-size: 18px; color: #444; line-height: 1.7; position: relative; }
#e1 .e1_list > li:last-child { border-bottom: none; }
#e1 .e1_list > li::before { content: '•'; position: absolute; left: 20px; top: 16px; color: #1a3a6e; font-weight: 700; }
#e1 .e1_list > li:nth-child(even) { background: #fafafa; }
 
/* ── txt2 서브 목록 ── */
#e1 .e1_list .txt2 { list-style: none; margin: 10px 0 4px; padding: 0; display: flex; flex-direction: column; gap: 4px; }
#e1 .e1_list .txt2 li { font-size: 16px; color: #555; line-height: 1.7; padding-left: 14px; position: relative; font-variant-numeric: tabular-nums;}
#e1 .e1_list .txt2 li sub { font-size:0.7em; vertical-align:sub; }
#e1 .e1_list .txt2 li::before { content: '-'; position: absolute; left: 0; color: #1a3a6e; }
 
/* ── 업무절차 이미지 ── */
#e1 .e1_proc_list .proc_img { margin-top: 14px; border: 1px solid #ddd; background: #fff; padding: 16px; }
#e1 .e1_proc_list .proc_img img { width: 100%; display: block; }
 
/* ── PC/모바일 전환 ── */
#e1 .only-mobile { display: none; }
#e1 .only-desktop-tablet { display: block; }
 
/* ── intxt 내부 중첩 목록 ── */
#e1 .intxt { margin-top: 12px; border: 1px solid #ddd; background: #fff; padding: 18px 20px; }
#e1 .intxt ul { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 10px; }
#e1 .intxt ul li { font-size: 16px; color: #444; line-height: 1.7; padding-left: 16px; position: relative; font-weight: 600; }
#e1 .intxt ul li::before { content: '▶'; position: absolute; left: 0; color: #1a3a6e; font-size: 11px; top: 5px; }
#e1 .intxt ul li .flex_box {display: flex; gap: 2px;}
#e1 .intxt ul li .flex_box .bar {font-weight: 400;}
#e1 .intxt ul li .flex_box span {}
#e1 .intxt ul li span { display: block; font-size: 15px; font-weight: 400; color: #666; margin-top: 4px; padding-left: 4px; line-height: 1.65; }
#e1 .intxt.no-border { border: none; padding: 12px 0 0; background: transparent; }
 
/* ── 방문기준 그리드 ── */
#e1 .visit_std_grid { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; margin-top: 14px; }
#e1 .visit_std_grid dl { background: #f4f7fc; border: 1px solid #c8d8f0; border-top: 3px solid #1a3a6e; padding: 16px 18px; margin: 0; }
#e1 .visit_std_grid dl dt { font-size: 16px; font-weight: 700; color: #1a3a6e; margin-bottom: 8px; }
#e1 .visit_std_grid dl dd { font-size: 15px; color: #555; line-height: 1.7; margin: 0; padding-left: 4px; }
 
/* ── 연락처 ── */
#e1 .e1_contact .contact_wrap { display: flex; align-items: center; gap: 50px; flex-wrap: wrap; border: 1px solid #c8d8f0; background: #f4f7fc; border-top: 3px solid #1a3a6e; padding: 30px 36px; }
#e1 .e1_contact .contact_item { display: flex; align-items: center; gap: 16px; }
#e1 .e1_contact .contact_icon { width: 56px; height: 56px; border-radius: 50%; background: #1a3a6e; display: flex; align-items: center; justify-content: center; flex-shrink: 0; }
#e1 .e1_contact .contact_icon::after { content: ''; display: block; width: 26px; height: 26px; background-position: center; background-repeat: no-repeat; background-size: contain; }
#e1 .e1_contact .contact_icon.icon1::after { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='white' viewBox='0 0 24 24'%3E%3Cpath d='M12 12c2.7 0 4.8-2.1 4.8-4.8S14.7 2.4 12 2.4 7.2 4.5 7.2 7.2 9.3 12 12 12zm0 2.4c-3.2 0-9.6 1.6-9.6 4.8v2.4h19.2v-2.4c0-3.2-6.4-4.8-9.6-4.8z'/%3E%3C/svg%3E"); }
#e1 .e1_contact .contact_icon.icon2::after { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='white' viewBox='0 0 24 24'%3E%3Cpath d='M6.6 10.8c1.4 2.8 3.8 5.1 6.6 6.6l2.2-2.2c.3-.3.7-.4 1-.2 1.1.4 2.3.6 3.6.6.6 0 1 .4 1 1V20c0 .6-.4 1-1 1-9.4 0-17-7.6-17-17 0-.6.4-1 1-1h3.5c.6 0 1 .4 1 1 0 1.3.2 2.5.6 3.6.1.3 0 .7-.2 1L6.6 10.8z'/%3E%3C/svg%3E"); }
#e1 .e1_contact .contact_icon.icon3::after { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='white' viewBox='0 0 24 24'%3E%3Cpath d='M20 4H4c-1.1 0-2 .9-2 2v12c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V6c0-1.1-.9-2-2-2zm0 4l-8 5-8-5V6l8 5 8-5v2z'/%3E%3C/svg%3E"); }
#e1 .e1_contact .contact_info .contact_label { font-size: 16px; color: #1a3a6e; font-weight: 600; margin-bottom: 3px; }
#e1 .e1_contact .contact_info .contact_val { font-size: 20px; font-weight: 700; color: #222; }
 
/* ── 반응형 ── */
@media (max-width: 1200px) {
    #e1 { padding: 50px 0 60px; }
}
@media (max-width: 1024px) {
    #e1 .sec_title { font-size: 22px; }
    #e1 .sec_title::before { font-size: 22px; }
    #e1 .info_box .info_img { width: 200px; }
    #e1 .info_box .info_txt ul li { font-size: 16px; }
    #e1 .desc_box p { font-size: 16px; }
    #e1 .e1_list > li { font-size: 16px; }
    #e1 .e1_contact .contact_wrap { gap: 30px; }
    #e1 .e1_contact .contact_info .contact_val { font-size: 18px; }
}
@media (max-width: 768px) {
    #e1 { padding: 0; }
    #e1 .e1_section { margin-bottom: 30px; }
    #e1 .sec_title { font-size: 18px; margin-bottom: 10px; }
    #e1 .sec_title::before { font-size: 18px; margin-bottom: 2px; }
    #e1 p { font-size: 14px; }
    #e1 .info_box { flex-direction: column; padding: 20px 14px; gap: 16px; }
    #e1 .info_box .info_img { width: 140px; margin: 0 auto; }
    #e1 .info_box .info_txt ul li { font-size: 14px; }
    #e1 .desc_box { padding: 15px 14px; }
    #e1 .desc_box p { font-size: 14px; }
    #e1 .e1_list > li { font-size: 14px; padding: 10px 10px 10px 24px; }
    #e1 .e1_list > li::before { left: 8px; top: 12px; }
    #e1 .e1_list .txt2 li { font-size: 13px; }
    #e1 .intxt { padding: 14px 12px; }
    #e1 .intxt ul li { font-size: 14px; }
    #e1 .intxt ul li span { font-size: 13px; }
    #e1 .visit_std_grid { grid-template-columns: 1fr; gap: 10px; }
    #e1 .visit_std_grid dl { padding: 12px 14px; }
    #e1 .visit_std_grid dl dt { font-size: 14px; }
    #e1 .visit_std_grid dl dd { font-size: 13px; }
    #e1 .only-desktop-tablet { display: none; }
    #e1 .only-mobile { display: block; }
    #e1 .e1_contact .contact_wrap { flex-direction: column; align-items: flex-start; gap: 20px; padding: 20px 16px; }
    #e1 .e1_contact .contact_info .contact_label { font-size: 14px; }
    #e1 .e1_contact .contact_info .contact_val { font-size: 16px; }
    #e1 .e1_contact .contact_icon { width: 48px; height: 48px; }
}
@media (max-width: 480px) {
    #e1 .sec_title { font-size: 15px; }
    #e1 .e1_list > li { font-size: 13px; }
    #e1 .e1_list .txt2 li { font-size: 12px; }
    #e1 .intxt ul li { font-size: 13px; }
    #e1 .intxt ul li span { font-size: 12px; }
    #e1 .e1_contact .contact_item { flex-direction: row; }
    #e1 .e1_contact .contact_info .contact_val { font-size: 15px; }
}
/* e1 */

/* e2 */
#e2 { max-width: 1400px; margin: 0 auto; padding: 60px 0 80px; }
#e2 p { font-size: 18px; word-break: keep-all; line-height: 1.8; color: #444; }
#e2 .table_box1 {margin-bottom: 30px;}
#e2 .table_box .center {text-align: center;}
 
/* ── 섹션 간격 ── */
#e2 .e2_section { margin-bottom: 60px; }
 
/* ── 섹션 타이틀 ── */
#e2 .sec_title { display: flex; align-items: center; gap: 10px; font-size: 28px; font-weight: 700; color: #1a3a6e; margin-bottom: 30px; }
#e2 .sec_title::before { content: '☑'; font-size: 28px; color: #1a3a6e; font-weight: 100; margin-bottom: 3px; }
 
/* ── 상단 안내 박스 ── */
#e2 .info_box { display: flex; align-items: flex-start; gap: 30px; border: 1px solid #c8d8f0; background: #f4f7fc; padding: 30px; border-left: 4px solid #1a3a6e; }
#e2 .info_box .info_txt { flex: 1; }
#e2 .info_box .info_txt ul { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 8px; }
#e2 .info_box .info_txt ul li { font-size: 18px; color: #333; line-height: 1.7; padding-left: 16px; position: relative; }
#e2 .info_box .info_txt ul li::before { content: '•'; position: absolute; left: 0; color: #1a3a6e; font-weight: 700; }
#e2 .info_box .info_img { width: 260px; flex-shrink: 0; }
#e2 .info_box .info_img img { width: 100%; display: block; }
 
/* ── 설명 박스 ── */
#e2 .desc_box { background: #f9f9f9; border-top: 2px solid #1a3a6e; border-bottom: 1px solid #ddd; padding: 22px 26px; }
#e2 .desc_box p { margin: 0; padding-left: 16px; position: relative; font-size: 18px; }
#e2 .desc_box p::before { content: '•'; position: absolute; left: 0; color: #1a3a6e; font-weight: 700; }
 
/* ── 기본 불릿 목록 ── */
#e2 .e2_list { list-style: none; margin: 0; padding: 0; border-top: 2px solid #1a3a6e; border-bottom: 1px solid #ddd; }
#e2 .e2_list > li { padding: 14px 20px 14px 36px; border-bottom: 1px solid #eee; font-size: 18px; color: #444; line-height: 1.7; position: relative; }
#e2 .e2_list > li:last-child { border-bottom: none; }
#e2 .e2_list > li::before { content: '•'; position: absolute; left: 20px; top: 16px; color: #1a3a6e; font-weight: 700; }
#e2 .e2_list > li:nth-child(even) { background: #fafafa; }
 
/* ── txt2 서브 목록 ── */
#e2 .e2_list .txt2 { list-style: none; margin: 10px 0 4px; padding: 0; display: flex; flex-direction: column; gap: 4px; }
#e2 .e2_list .txt2 li { font-size: 16px; color: #555; line-height: 1.7; padding-left: 14px; position: relative; font-variant-numeric: tabular-nums;}
#e2 .e2_list .txt2 li sub { font-size:0.7em; vertical-align:sub; }
#e2 .e2_list .txt2 li::before { content: '-'; position: absolute; left: 0; color: #1a3a6e; }
 
/* ── 업무절차 이미지 ── */
#e2 .e2_proc_list .proc_img { margin-top: 14px; border: 1px solid #ddd; background: #fff; padding: 16px; }
#e2 .e2_proc_list .proc_img img { width: 100%; display: block; }
 
/* ── PC/모바일 전환 ── */
#e2 .only-mobile { display: none; }
#e2 .only-desktop-tablet { display: block; }

/* ── 공통 테이블 ── */
#e2 .e2_table { width: 100%; border-collapse: collapse; border-top: 2px solid #1a3a6e; border-bottom: 1px solid #ddd; margin-top: 10px; }
#e2 .e2_table th, #e2 .e2_table td { padding: 14px 18px; border: 1px solid #ddd; font-size: 18px; vertical-align: middle; }
#e2 .e2_table thead th { background: #1a3a6e; color: #fff; font-weight: 700; text-align: center; }
#e2 .e2_table tbody th { background: #d2f5fa; font-weight: 600; color: #1a3a6e; text-align: center; width: 14%; }
#e2 .e2_table tbody td { color: #444; line-height: 1.7; }
#e2 .e2_table tbody td ol { margin: 0; padding-left: 20px; display: flex; flex-direction: column; gap: 4px; }
#e2 .e2_table tbody td ol li { font-size: 18px; }
#e2 .e2_table tr:last-child th, #e2 .e2_table tr:last-child td { border-bottom: none; }
 
/* ── intxt 내부 중첩 목록 ── */
#e2 .intxt { margin-top: 12px; border: 1px solid #ddd; background: #fff; padding: 18px 20px; }
#e2 .intxt ul { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 10px; }
#e2 .intxt ul li { font-size: 16px; color: #444; line-height: 1.7; padding-left: 16px; position: relative; font-weight: 600; }
#e2 .intxt ul li::before { content: '▶'; position: absolute; left: 0; color: #1a3a6e; font-size: 11px; top: 5px; }
#e2 .intxt ul li .flex_box {display: flex; gap: 2px;}
#e2 .intxt ul li .flex_box .bar {font-weight: 400;}
#e2 .intxt ul li .flex_box span {}
#e2 .intxt ul li span { display: block; font-size: 15px; font-weight: 400; color: #666; margin-top: 4px; padding-left: 4px; line-height: 1.65; }
#e2 .intxt.no-border { border: none; padding: 12px 0 0; background: transparent; }
 
/* ── 방문기준 그리드 ── */
#e2 .visit_std_grid { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; margin-top: 14px; }
#e2 .visit_std_grid dl { background: #f4f7fc; border: 1px solid #c8d8f0; border-top: 3px solid #1a3a6e; padding: 16px 18px; margin: 0; }
#e2 .visit_std_grid dl dt { font-size: 16px; font-weight: 700; color: #1a3a6e; margin-bottom: 8px; }
#e2 .visit_std_grid dl dd { font-size: 15px; color: #555; line-height: 1.7; margin: 0; padding-left: 4px; }
 
/* ── 연락처 ── */
#e2 .e2_contact .contact_wrap { display: flex; align-items: center; gap: 50px; flex-wrap: wrap; border: 1px solid #c8d8f0; background: #f4f7fc; border-top: 3px solid #1a3a6e; padding: 30px 36px; }
#e2 .e2_contact .contact_item { display: flex; align-items: center; gap: 16px; }
#e2 .e2_contact .contact_icon { width: 56px; height: 56px; border-radius: 50%; background: #1a3a6e; display: flex; align-items: center; justify-content: center; flex-shrink: 0; }
#e2 .e2_contact .contact_icon::after { content: ''; display: block; width: 26px; height: 26px; background-position: center; background-repeat: no-repeat; background-size: contain; }
#e2 .e2_contact .contact_icon.icon1::after { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='white' viewBox='0 0 24 24'%3E%3Cpath d='M12 12c2.7 0 4.8-2.1 4.8-4.8S14.7 2.4 12 2.4 7.2 4.5 7.2 7.2 9.3 12 12 12zm0 2.4c-3.2 0-9.6 1.6-9.6 4.8v2.4h19.2v-2.4c0-3.2-6.4-4.8-9.6-4.8z'/%3E%3C/svg%3E"); }
#e2 .e2_contact .contact_icon.icon2::after { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='white' viewBox='0 0 24 24'%3E%3Cpath d='M6.6 10.8c1.4 2.8 3.8 5.1 6.6 6.6l2.2-2.2c.3-.3.7-.4 1-.2 1.1.4 2.3.6 3.6.6.6 0 1 .4 1 1V20c0 .6-.4 1-1 1-9.4 0-17-7.6-17-17 0-.6.4-1 1-1h3.5c.6 0 1 .4 1 1 0 1.3.2 2.5.6 3.6.1.3 0 .7-.2 1L6.6 10.8z'/%3E%3C/svg%3E"); }
#e2 .e2_contact .contact_icon.icon3::after { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='white' viewBox='0 0 24 24'%3E%3Cpath d='M20 4H4c-1.1 0-2 .9-2 2v12c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V6c0-1.1-.9-2-2-2zm0 4l-8 5-8-5V6l8 5 8-5v2z'/%3E%3C/svg%3E"); }
#e2 .e2_contact .contact_info .contact_label { font-size: 16px; color: #1a3a6e; font-weight: 600; margin-bottom: 3px; }
#e2 .e2_contact .contact_info .contact_val { font-size: 20px; font-weight: 700; color: #222; }
 
#e2 .flex_box2 {display: flex; flex-wrap: wrap; gap: 40px;}
#e2 .flex_box2 li {position: relative; background-color: var(--primary); padding: 10px 20px; color: #fff; text-align: center; width: calc(100% / 3 - 27px); display: grid; place-content: center;}
#e2 .flex_box2 li::after {content: ""; position: absolute; top: 50%; transform: translateY(-50%); right: -30px; width: 15px; height: 40px; background: url(../html/img/e2_arrow.png) no-repeat 50% 50% / contain;}
#e2 .flex_box2 li:last-child:after {display: none;}
/* ── 반응형 ── */
@media (max-width: 1200px) {
    #e2 { padding: 50px 0 60px; }
}
@media (max-width: 1024px) {
    #e2 .sec_title { font-size: 22px; }
    #e2 .sec_title::before { font-size: 22px; }
    #e2 .info_box .info_img { width: 200px; }
    #e2 .info_box .info_txt ul li { font-size: 16px; }
    #e2 .desc_box p { font-size: 16px; }
    #e2 .e2_list > li { font-size: 16px; }
    #e2 .e2_contact .contact_wrap { gap: 30px; }
    #e2 .e2_contact .contact_info .contact_val { font-size: 18px; }
}
@media (max-width: 768px) {
    #e2 { padding: 0; }
    #e2 .e2_section { margin-bottom: 30px; }
    #e2 .sec_title { font-size: 18px; margin-bottom: 10px; }
    #e2 .sec_title::before { font-size: 18px; margin-bottom: 2px; }
    #e2 p { font-size: 14px; }
    #e2 .info_box { flex-direction: column; padding: 20px 14px; gap: 16px; }
    #e2 .info_box .info_img { width: 140px; margin: 0 auto; }
    #e2 .info_box .info_txt ul li { font-size: 14px; }
    #e2 .desc_box { padding: 15px 14px; }
    #e2 .desc_box p { font-size: 14px; }
    #e2 .e2_list > li { font-size: 14px; padding: 10px 10px 10px 24px; }
    #e2 .e2_list > li::before { left: 8px; top: 12px; }
    #e2 .e2_list .txt2 li { font-size: 13px; }
    #e2 .intxt { padding: 14px 12px; }
    #e2 .intxt ul li { font-size: 14px; }
    #e2 .intxt ul li span { font-size: 13px; }
    #e2 .visit_std_grid { grid-template-columns: 1fr; gap: 10px; }
    #e2 .visit_std_grid dl { padding: 12px 14px; }
    #e2 .visit_std_grid dl dt { font-size: 14px; }
    #e2 .visit_std_grid dl dd { font-size: 13px; }
    #e2 .only-desktop-tablet { display: none; }
    #e2 .only-mobile { display: block; }
    #e2 .e2_contact .contact_wrap { flex-direction: column; align-items: flex-start; gap: 20px; padding: 20px 16px; }
    #e2 .e2_contact .contact_info .contact_label { font-size: 14px; }
    #e2 .e2_contact .contact_info .contact_val { font-size: 16px; }
    #e2 .e2_contact .contact_icon { width: 48px; height: 48px; }
    #e2 .e2_table th, #e2 .e2_table td { padding: 10px 12px; font-size: 14px; }
    #e2 .e2_table tbody td ol li{font-size: 14px;}
    #e2 .flex_box2 li {width: 100%;}
    #e2 .flex_box2 li::after {right: auto; transform: translateX(-50%) rotate(90deg); left: 50%; top: 100%; width: 10px;}
}
@media (max-width: 480px) {
    #e2 .sec_title { font-size: 15px; }
    #e2 .e2_list > li { font-size: 13px; }
    #e2 .e2_list .txt2 li { font-size: 12px; }
    #e2 .intxt ul li { font-size: 13px; }
    #e2 .intxt ul li span { font-size: 12px; }
    #e2 .e2_contact .contact_item { flex-direction: row; }
    #e2 .e2_contact .contact_info .contact_val { font-size: 15px; }
    #e2 .e2_table { display: block; overflow-x: auto; }
}
/* e2 */

/* e3 */
#e3 { max-width: 1400px; margin: 0 auto; padding: 60px 0 80px; }
#e3 p { font-size: 18px; word-break: keep-all; line-height: 1.8; color: #444; }
 
/* ── 섹션 간격 ── */
#e3 .e3_section { margin-bottom: 60px; }
 
/* ── 섹션 타이틀 ── */
#e3 .sec_title { display: flex; align-items: center; gap: 10px; font-size: 28px; font-weight: 700; color: #1a3a6e; margin-bottom: 30px; }
#e3 .sec_title::before { content: '☑'; font-size: 28px; color: #1a3a6e; font-weight: 100; margin-bottom: 3px; }
 
/* ── 상단 안내 박스 ── */
#e3 .info_box { display: flex; align-items: flex-start; gap: 30px; border: 1px solid #c8d8f0; background: #f4f7fc; padding: 30px; border-left: 4px solid #1a3a6e; }
#e3 .info_box .info_txt { flex: 1; }
#e3 .info_box .info_txt ul { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 8px; }
#e3 .info_box .info_txt ul li { font-size: 18px; color: #333; line-height: 1.7; padding-left: 16px; position: relative; }
#e3 .info_box .info_txt ul li::before { content: '•'; position: absolute; left: 0; color: #1a3a6e; font-weight: 700; }
#e3 .info_box .info_img { width: 260px; flex-shrink: 0; }
#e3 .info_box .info_img img { width: 100%; display: block; }
 
/* ── 설명 박스 ── */
#e3 .desc_box { background: #f9f9f9; border-top: 2px solid #1a3a6e; border-bottom: 1px solid #ddd; padding: 22px 26px; }
#e3 .desc_box p { margin: 0; padding-left: 16px; position: relative; font-size: 18px; }
#e3 .desc_box p::before { content: '•'; position: absolute; left: 0; color: #1a3a6e; font-weight: 700; }
 
/* ── 기본 불릿 목록 ── */
#e3 .e3_list { list-style: none; margin: 0; padding: 0; border-top: 2px solid #1a3a6e; border-bottom: 1px solid #ddd; }
#e3 .e3_list > li { padding: 14px 20px 14px 36px; border-bottom: 1px solid #eee; font-size: 18px; color: #444; line-height: 1.7; position: relative; }
#e3 .e3_list > li:last-child { border-bottom: none; }
#e3 .e3_list > li::before { content: '•'; position: absolute; left: 20px; top: 16px; color: #1a3a6e; font-weight: 700; }
#e3 .e3_list > li:nth-child(even) { background: #fafafa; }
 
/* ── txt2 서브 목록 ── */
#e3 .e3_list .txt2 { list-style: none; margin: 10px 0 4px; padding: 0; display: flex; flex-direction: column; gap: 4px; }
#e3 .e3_list .txt2 li { font-size: 16px; color: #555; line-height: 1.7; padding-left: 14px; position: relative; font-variant-numeric: tabular-nums;}
#e3 .e3_list .txt2 li sub { font-size:0.7em; vertical-align:sub; }
#e3 .e3_list .txt2 li::before { content: '-'; position: absolute; left: 0; color: #1a3a6e; }
 
/* ── 업무절차 이미지 ── */
#e3 .e3_proc_list .proc_img { margin-top: 14px; border: 1px solid #ddd; background: #fff; padding: 16px; }
#e3 .e3_proc_list .proc_img img { width: 100%; display: block; }
 
/* ── PC/모바일 전환 ── */
#e3 .only-mobile { display: none; }
#e3 .only-desktop-tablet { display: block; }
 
/* ── intxt 내부 중첩 목록 ── */
#e3 .intxt { margin-top: 12px; border: 1px solid #ddd; background: #fff; padding: 18px 20px; }
#e3 .intxt ul { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 10px; }
#e3 .intxt ul li { font-size: 16px; color: #444; line-height: 1.7; padding-left: 16px; position: relative; font-weight: 600; }
#e3 .intxt ul li::before { content: '▶'; position: absolute; left: 0; color: #1a3a6e; font-size: 11px; top: 5px; }
#e3 .intxt ul li .flex_box {display: flex; gap: 2px;}
#e3 .intxt ul li .flex_box .bar {font-weight: 400;}
#e3 .intxt ul li .flex_box span {}
#e3 .intxt ul li span { display: block; font-size: 15px; font-weight: 400; color: #666; margin-top: 4px; padding-left: 4px; line-height: 1.65; }
#e3 .intxt.no-border { border: none; padding: 12px 0 0; background: transparent; }
 
/* ── 방문기준 그리드 ── */
#e3 .visit_std_grid { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; margin-top: 14px; }
#e3 .visit_std_grid dl { background: #f4f7fc; border: 1px solid #c8d8f0; border-top: 3px solid #1a3a6e; padding: 16px 18px; margin: 0; }
#e3 .visit_std_grid dl dt { font-size: 16px; font-weight: 700; color: #1a3a6e; margin-bottom: 8px; }
#e3 .visit_std_grid dl dd { font-size: 15px; color: #555; line-height: 1.7; margin: 0; padding-left: 4px; }
 
/* ── 연락처 ── */
#e3 .e3_contact .contact_wrap { display: flex; align-items: center; gap: 50px; flex-wrap: wrap; border: 1px solid #c8d8f0; background: #f4f7fc; border-top: 3px solid #1a3a6e; padding: 30px 36px; }
#e3 .e3_contact .contact_item { display: flex; align-items: center; gap: 16px; }
#e3 .e3_contact .contact_icon { width: 56px; height: 56px; border-radius: 50%; background: #1a3a6e; display: flex; align-items: center; justify-content: center; flex-shrink: 0; }
#e3 .e3_contact .contact_icon::after { content: ''; display: block; width: 26px; height: 26px; background-position: center; background-repeat: no-repeat; background-size: contain; }
#e3 .e3_contact .contact_icon.icon1::after { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='white' viewBox='0 0 24 24'%3E%3Cpath d='M12 12c2.7 0 4.8-2.1 4.8-4.8S14.7 2.4 12 2.4 7.2 4.5 7.2 7.2 9.3 12 12 12zm0 2.4c-3.2 0-9.6 1.6-9.6 4.8v2.4h19.2v-2.4c0-3.2-6.4-4.8-9.6-4.8z'/%3E%3C/svg%3E"); }
#e3 .e3_contact .contact_icon.icon2::after { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='white' viewBox='0 0 24 24'%3E%3Cpath d='M6.6 10.8c1.4 2.8 3.8 5.1 6.6 6.6l2.2-2.2c.3-.3.7-.4 1-.2 1.1.4 2.3.6 3.6.6.6 0 1 .4 1 1V20c0 .6-.4 1-1 1-9.4 0-17-7.6-17-17 0-.6.4-1 1-1h3.5c.6 0 1 .4 1 1 0 1.3.2 2.5.6 3.6.1.3 0 .7-.2 1L6.6 10.8z'/%3E%3C/svg%3E"); }
#e3 .e3_contact .contact_icon.icon3::after { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='white' viewBox='0 0 24 24'%3E%3Cpath d='M20 4H4c-1.1 0-2 .9-2 2v12c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V6c0-1.1-.9-2-2-2zm0 4l-8 5-8-5V6l8 5 8-5v2z'/%3E%3C/svg%3E"); }
#e3 .e3_contact .contact_info .contact_label { font-size: 16px; color: #1a3a6e; font-weight: 600; margin-bottom: 3px; }
#e3 .e3_contact .contact_info .contact_val { font-size: 20px; font-weight: 700; color: #222; }
 
/* ── 반응형 ── */
@media (max-width: 1200px) {
    #e3 { padding: 50px 0 60px; }
}
@media (max-width: 1024px) {
    #e3 .sec_title { font-size: 22px; }
    #e3 .sec_title::before { font-size: 22px; }
    #e3 .info_box .info_img { width: 200px; }
    #e3 .info_box .info_txt ul li { font-size: 16px; }
    #e3 .desc_box p { font-size: 16px; }
    #e3 .e3_list > li { font-size: 16px; }
    #e3 .e3_contact .contact_wrap { gap: 30px; }
    #e3 .e3_contact .contact_info .contact_val { font-size: 18px; }
}
@media (max-width: 768px) {
    #e3 { padding: 0; }
    #e3 .e3_section { margin-bottom: 30px; }
    #e3 .sec_title { font-size: 18px; margin-bottom: 10px; }
    #e3 .sec_title::before { font-size: 18px; margin-bottom: 2px; }
    #e3 p { font-size: 14px; }
    #e3 .info_box { flex-direction: column; padding: 20px 14px; gap: 16px; }
    #e3 .info_box .info_img { width: 140px; margin: 0 auto; }
    #e3 .info_box .info_txt ul li { font-size: 14px; }
    #e3 .desc_box { padding: 15px 14px; }
    #e3 .desc_box p { font-size: 14px; }
    #e3 .e3_list > li { font-size: 14px; padding: 10px 10px 10px 24px; }
    #e3 .e3_list > li::before { left: 8px; top: 12px; }
    #e3 .e3_list .txt2 li { font-size: 13px; }
    #e3 .intxt { padding: 14px 12px; }
    #e3 .intxt ul li { font-size: 14px; }
    #e3 .intxt ul li span { font-size: 13px; }
    #e3 .visit_std_grid { grid-template-columns: 1fr; gap: 10px; }
    #e3 .visit_std_grid dl { padding: 12px 14px; }
    #e3 .visit_std_grid dl dt { font-size: 14px; }
    #e3 .visit_std_grid dl dd { font-size: 13px; }
    #e3 .only-desktop-tablet { display: none; }
    #e3 .only-mobile { display: block; }
    #e3 .e3_contact .contact_wrap { flex-direction: column; align-items: flex-start; gap: 20px; padding: 20px 16px; }
    #e3 .e3_contact .contact_info .contact_label { font-size: 14px; }
    #e3 .e3_contact .contact_info .contact_val { font-size: 16px; }
    #e3 .e3_contact .contact_icon { width: 48px; height: 48px; }
}
@media (max-width: 480px) {
    #e3 .sec_title { font-size: 15px; }
    #e3 .e3_list > li { font-size: 13px; }
    #e3 .e3_list .txt2 li { font-size: 12px; }
    #e3 .intxt ul li { font-size: 13px; }
    #e3 .intxt ul li span { font-size: 12px; }
    #e3 .e3_contact .contact_item { flex-direction: row; }
    #e3 .e3_contact .contact_info .contact_val { font-size: 15px; }
}
/* e3 */

/* f1 */
#f1 { max-width: 1400px; margin: 0 auto; padding: 60px 0 80px; }
#f1 p { font-size: 18px; word-break: keep-all; line-height: 1.8; color: #444; }

/* ── 섹션 간격 ── */
#f1 .f1_section { margin-bottom: 60px; }

/* ── 섹션 타이틀 ── */
#f1 .sec_title { display: flex; align-items: center; gap: 10px; font-size: 28px; font-weight: 700; color: #1a3a6e; margin-bottom: 30px; }
#f1 .sec_title::before { content: '☑'; font-size: 28px; color: #1a3a6e; font-weight: 100; margin-bottom: 3px; }

/* ── 상단 안내 박스 ── */
#f1 .info_box { display: flex; align-items: flex-start; gap: 30px; border: 1px solid #c8d8f0; background: #f4f7fc; padding: 30px; border-left: 4px solid #1a3a6e; }
#f1 .info_box .info_txt { flex: 1; }
#f1 .info_box .info_txt ul { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 8px; }
#f1 .info_box .info_txt ul li { font-size: 18px; color: #333; line-height: 1.7; padding-left: 16px; position: relative; }
#f1 .info_box .info_txt ul li::before { content: '•'; position: absolute; left: 0; color: #1a3a6e; font-weight: 700; }
#f1 .info_box .info_img { width: 260px; flex-shrink: 0; }
#f1 .info_box .info_img img { width: 100%; display: block; }

/* ── 기본 불릿 목록 ── */
#f1 .f1_list { list-style: none; margin: 0; padding: 0; border-top: 2px solid #1a3a6e; border-bottom: 1px solid #ddd; }
#f1 .f1_list > li { padding: 14px 20px 14px 36px; border-bottom: 1px solid #eee; font-size: 18px; color: #444; line-height: 1.7; position: relative; }
#f1 .f1_list > li:last-child { border-bottom: none; }
#f1 .f1_list > li::before { content: '•'; position: absolute; left: 20px; top: 16px; color: #1a3a6e; font-weight: 700; }
#f1 .f1_list > li:nth-child(even) { background: #fafafa; }

/* ── txt2 서브 목록 ── */
#f1 .f1_list .txt2 { list-style: none; margin: 10px 0 4px; padding: 0; display: flex; flex-direction: column; gap: 4px; }
#f1 .f1_list .txt2 li { font-size: 16px; color: #555; line-height: 1.7; padding-left: 14px; position: relative; }
#f1 .f1_list .txt2 li::before { content: '-'; position: absolute; left: 0; color: #1a3a6e; }

/* ── 관련법규 박스 ── */
#f1 .f1_regs { border: 1px solid #ddd; background: #fff; margin-top: 14px; }
#f1 .f1_regs_head { background: #f2f5fa; font-size: 17px; font-weight: 700; color: #1a3a6e; padding: 12px 20px; border-bottom: 1px solid #ddd; }
#f1 .f1_regs_block { border-bottom: 1px solid #eee; }
#f1 .f1_regs_block:last-child { border-bottom: none; }
#f1 .f1_regs_dt { font-size: 17px; font-weight: 700; color: #1a3a6e; padding: 14px 20px 10px; }
#f1 .f1_regs_dd { padding: 0 20px 16px 20px; }
#f1 .f1_regs_label { display: inline-block; font-size: 15px; font-weight: 700; color: #fff; background: #1a3a6e; padding: 4px 14px; margin-bottom: 12px; }
#f1 .f1_regs_p { font-size: 16px; color: #444; line-height: 1.75; margin: 0 0 12px; }
#f1 .f1_regs_list { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 4px; }
#f1 .f1_regs_list li { font-size: 16px; color: #444; line-height: 1.7; padding-left: 14px; position: relative; }
#f1 .f1_regs_list li::before { content: '-'; position: absolute; left: 0; color: #1a3a6e; }
#f1 .f1_regs_ol { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 8px; }
#f1 .f1_regs_ol > li { font-size: 16px; color: #444; line-height: 1.75; padding-left: 4px; }
#f1 .f1_regs_sub { list-style: none; margin: 6px 0 2px 14px; padding: 0; display: flex; flex-direction: column; gap: 4px; }
#f1 .f1_regs_sub li { font-size: 15px; color: #555; line-height: 1.7; padding-left: 4px; }

/* ── 업무개요 이미지 ── */
#f1 .f1_work_list .f1_pic { margin-top: 14px; border: 1px solid #ddd; background: #fff; padding: 16px; }
#f1 .f1_work_list .f1_pic img { width: 100%; display: block; }

/* ── 측정방법 주석 ── */
#f1 .f1_explain { font-size: 15px; color: #888; line-height: 1.7; margin: 10px 0 4px; padding-left: 18px; position: relative; }
#f1 .f1_explain::before { content: ''; position: absolute; left: 0; }

/* ── PC/모바일 전환 ── */
#f1 .only-mobile { display: none; }
#f1 .only-desktop-tablet { display: block; }

/* ── 현미경 장비 ── */
#f1 .f1_microscope { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; margin-top: 20px; border-top: 2px solid #1a3a6e; padding-top: 20px; }
#f1 .f1_micro_item { display: flex; align-items: flex-start; gap: 20px; border: 1px solid #ddd; background: #f9fbff; padding: 20px; }
#f1 .f1_micro_pic { width: 160px; flex-shrink: 0; }
#f1 .f1_micro_pic img { width: 100%; display: block; border: 1px solid #eee; }
#f1 .f1_micro_txt { flex: 1; }
#f1 .f1_micro_txt dl { margin: 0; }
#f1 .f1_micro_txt dl dt { font-size: 17px; font-weight: 700; color: #1a3a6e; margin-bottom: 10px; padding-bottom: 8px; border-bottom: 1px solid #dde4f0; }
#f1 .f1_micro_txt dl dd { font-size: 15px; color: #444; line-height: 1.8; margin: 0 0 4px; padding-left: 0; }

/* ── 연락처 ── */
#f1 .f1_contact .contact_wrap { display: flex; align-items: center; gap: 50px; flex-wrap: wrap; background: #f4f7fc; border: 1px solid #c8d8f0; border-top: 3px solid #1a3a6e; padding: 30px 36px; }
#f1 .f1_contact .contact_item { display: flex; align-items: center; gap: 16px; }
#f1 .f1_contact .contact_icon { width: 56px; height: 56px; border-radius: 50%; background: #1a3a6e; display: flex; align-items: center; justify-content: center; flex-shrink: 0; }
#f1 .f1_contact .contact_icon::after { content: ''; display: block; width: 26px; height: 26px; background-position: center; background-repeat: no-repeat; background-size: contain; }
#f1 .f1_contact .contact_icon.icon1::after { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='white' viewBox='0 0 24 24'%3E%3Cpath d='M12 12c2.7 0 4.8-2.1 4.8-4.8S14.7 2.4 12 2.4 7.2 4.5 7.2 7.2 9.3 12 12 12zm0 2.4c-3.2 0-9.6 1.6-9.6 4.8v2.4h19.2v-2.4c0-3.2-6.4-4.8-9.6-4.8z'/%3E%3C/svg%3E"); }
#f1 .f1_contact .contact_icon.icon2::after { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='white' viewBox='0 0 24 24'%3E%3Cpath d='M6.6 10.8c1.4 2.8 3.8 5.1 6.6 6.6l2.2-2.2c.3-.3.7-.4 1-.2 1.1.4 2.3.6 3.6.6.6 0 1 .4 1 1V20c0 .6-.4 1-1 1-9.4 0-17-7.6-17-17 0-.6.4-1 1-1h3.5c.6 0 1 .4 1 1 0 1.3.2 2.5.6 3.6.1.3 0 .7-.2 1L6.6 10.8z'/%3E%3C/svg%3E"); }
#f1 .f1_contact .contact_icon.icon3::after { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='white' viewBox='0 0 24 24'%3E%3Cpath d='M20 4H4c-1.1 0-2 .9-2 2v12c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V6c0-1.1-.9-2-2-2zm0 4l-8 5-8-5V6l8 5 8-5v2z'/%3E%3C/svg%3E"); }
#f1 .f1_contact .contact_info .contact_label { font-size: 16px; color: #1a3a6e; font-weight: 600; margin-bottom: 3px; }
#f1 .f1_contact .contact_info .contact_val { font-size: 20px; font-weight: 700; color: #222; }

#f1 .f1_flow_wrap { margin-top: 14px; border: 1px solid #ddd; background: #fff; padding: 24px; }
#f1 .f1_flow_label { font-size: 15px; font-weight: 700; color: #1a3a6e; margin-bottom: 14px; }
#f1 .f1_flow_item { border: 1px solid #bfcfe8; }
#f1 .f1_flow_head { background: #f2f5fa; border-bottom: 1px solid #bfcfe8; font-size: 17px; font-weight: 700; color: #1a3a6e; text-align: center; padding: 12px 16px; }
#f1 .f1_flow_body { padding: 14px 20px; }
#f1 .f1_flow_body ul { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 4px; }
#f1 .f1_flow_body ul li { font-size: 16px; color: #444; line-height: 1.7; padding-left: 14px; position: relative; }
#f1 .f1_flow_body ul li::before { content: '-'; position: absolute; left: 0; color: #1a3a6e; }
#f1 .f1_flow_arr { text-align: center; font-size: 18px; color: #1a3a6e; padding: 6px 0; line-height: 1; }

#f1 .flex_box2 {display: flex; flex-wrap: wrap; gap: 40px; padding: 16px; border: 1px solid #ddd;}
#f1 .flex_box2 li {position: relative; background-color: var(--primary); padding: 10px 20px; color: #fff; text-align: center; width: calc(100% / 3 - 27px); display: grid; place-content: center;}
#f1 .flex_box2 li::after {content: ""; position: absolute; top: 50%; transform: translateY(-50%); right: -30px; width: 15px; height: 40px; background: url(../html/img/e2_arrow.png) no-repeat 50% 50% / contain;}
#f1 .flex_box2 li:last-child:after {display: none;}
/* ── 반응형 ── */
@media (max-width: 1200px) {
    #f1 { padding: 50px 0 60px; }
}
@media (max-width: 1024px) {
    #f1 .sec_title { font-size: 22px; }
    #f1 .sec_title::before { font-size: 22px; }
    #f1 .info_box .info_img { width: 200px; }
    #f1 .info_box .info_txt ul li { font-size: 16px; }
    #f1 .f1_list > li { font-size: 16px; }
    #f1 .f1_microscope { grid-template-columns: 1fr 1fr; }
    #f1 .f1_micro_pic { width: 130px; }
    #f1 .f1_contact .contact_wrap { gap: 30px; }
    #f1 .f1_contact .contact_info .contact_val { font-size: 18px; }
}
@media (max-width: 768px) {
    #f1 { padding: 0; }
    #f1 .f1_section { margin-bottom: 30px; }
    #f1 .sec_title { font-size: 18px; margin-bottom: 10px; }
    #f1 .sec_title::before { font-size: 18px; margin-bottom: 2px; }
    #f1 p { font-size: 14px; }
    #f1 .info_box { flex-direction: column; padding: 20px 14px; gap: 16px; }
    #f1 .info_box .info_img { width: 140px; margin: 0 auto; }
    #f1 .info_box .info_txt ul li { font-size: 14px; }
    #f1 .f1_list > li { font-size: 14px; padding: 10px 10px 10px 24px; }
    #f1 .f1_list > li::before { left: 8px; top: 12px; }
    #f1 .f1_list .txt2 li { font-size: 13px; }
    #f1 .f1_regs_head { font-size: 14px; padding: 10px 14px; }
    #f1 .f1_regs_dt { font-size: 14px; padding: 12px 14px 8px; }
    #f1 .f1_regs_dd { padding: 0 14px 14px; }
    #f1 .f1_regs_p { font-size: 13px; }
    #f1 .f1_regs_list li { font-size: 13px; }
    #f1 .f1_regs_ol > li { font-size: 13px; }
    #f1 .f1_regs_sub li { font-size: 12px; }
    #f1 .f1_explain { font-size: 13px; }
    #f1 .only-desktop-tablet { display: none; }
    #f1 .only-mobile { display: block; }
    #f1 .f1_microscope { grid-template-columns: 1fr; gap: 14px; }
    #f1 .f1_micro_item { padding: 14px; gap: 14px; }
    #f1 .f1_micro_pic { width: 100px; }
    #f1 .f1_micro_txt dl dt { font-size: 15px; }
    #f1 .f1_micro_txt dl dd { font-size: 13px; }
    #f1 .f1_contact .contact_wrap { flex-direction: column; align-items: flex-start; gap: 20px; padding: 20px 16px; }
    #f1 .f1_contact .contact_info .contact_label { font-size: 14px; }
    #f1 .f1_contact .contact_info .contact_val { font-size: 16px; }
    #f1 .f1_contact .contact_icon { width: 48px; height: 48px; }
    #f1 .flex_box2 li {width: 100%;}
    #f1 .flex_box2 li::after {right: auto; transform: translateX(-50%) rotate(90deg); left: 50%; top: 100%; width: 10px;}
}
@media (max-width: 480px) {
    #f1 .sec_title { font-size: 15px; }
    #f1 .f1_list > li { font-size: 13px; }
    #f1 .f1_list .txt2 li { font-size: 12px; }
    #f1 .f1_micro_item { flex-direction: column; align-items: center; text-align: center; }
    #f1 .f1_micro_pic { width: 140px; }
    #f1 .f1_contact .contact_item { flex-direction: row; }
    #f1 .f1_contact .contact_info .contact_val { font-size: 15px; }
}
/* f1 */
/* f2 */
#f2 { max-width: 1400px; margin: 0 auto; padding: 60px 0 80px; }
#f2 p{font-size: 18px; word-break: keep-all;}
 
/* 페이지 타이틀 */
#f2 .f2_page_title { font-size: 28px; font-weight: 700; color: #222; text-align: center; margin-bottom: 50px; }
 
/* 섹션 타이틀 */
#f2 .sec_title { display: flex; align-items: center; gap: 10px; font-size: 28px; font-weight: 700; color: #1a3a6e; margin-bottom: 30px; }
#f2 .sec_title::before { content: '☑'; font-size: 28px; color: #1a3a6e; font-weight: 100; margin-bottom: 3px;}
 
/* 섹션 간격 */
#f2 .f2_section { margin-bottom: 60px; }
 
/* ── 안내 박스 ── */
#f2 .info_box { display: flex; align-items: flex-start; gap: 30px; border: 1px solid #c8d8f0; background: #f4f7fc; padding: 30px; border-left: 4px solid #1a3a6e; }
#f2 .info_box .info_txt { flex: 1; }
#f2 .info_box .info_txt ul { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 10px; }
#f2 .info_box .info_txt ul li { font-size: 18px; color: #333; line-height: 1.7; padding-left: 16px; position: relative; }
#f2 .info_box .info_txt ul li::before { content: '•'; position: absolute; left: 0; color: #1a3a6e; font-weight: 700; }
#f2 .info_box .info_img { width: 200px; flex-shrink: 0; }
#f2 .info_box .info_img img { width: 100%; display: block; }
 
/* ── 목적 박스 ── */
#f2 .purpose_box { background: #f9f9f9; border-top: 2px solid #1a3a6e; border-bottom: 1px solid #ddd; padding: 22px 26px; font-size: 15px; color: #444; line-height: 1.8; }
#f2 .purpose_box p { margin: 0; padding-left: 16px; position: relative; }
#f2 .purpose_box p::before { content: '•'; position: absolute; left: 0; color: #1a3a6e; font-weight: 700; }
 
/* ── 법규 목록 ── */
#f2 .law_list { list-style: none; margin: 0; padding: 0; border-top: 2px solid #1a3a6e; border-bottom: 1px solid #ddd; }
#f2 .law_list li { padding: 13px 20px; border-bottom: 1px solid #eee; font-size: 18px; color: #444; line-height: 1.6; padding-left: 36px; position: relative; }
#f2 .law_list li:last-child { border-bottom: none; }
#f2 .law_list li::before { content: '•'; position: absolute; left: 20px; color: #1a3a6e; font-weight: 700; }
#f2 .law_list li:nth-child(even) { background: #fafafa; }
 
/* ── 진단 설명 ── */
#f2 .diag_desc { list-style: none; margin: 0 0 20px; padding: 0; display: flex; flex-direction: column; gap: 10px; }
#f2 .diag_desc li { font-size: 18px; color: #444; line-height: 1.7; padding-left: 16px; position: relative; }
#f2 .diag_desc li::before { content: '•'; position: absolute; left: 0; color: #1a3a6e; font-weight: 700; }
 
/* ── 공통 테이블 ── */
#f2 .f2_table { width: 100%; border-collapse: collapse; border-top: 2px solid #1a3a6e; border-bottom: 1px solid #ddd; margin-top: 10px; }
#f2 .f2_table th, #f2 .f2_table td { padding: 14px 18px; border: 1px solid #ddd; font-size: 18px; vertical-align: middle; }
#f2 .f2_table thead th { background: #1a3a6e; color: #fff; font-weight: 700; text-align: center; }
#f2 .f2_table tbody th { background: #f2f5fa; font-weight: 600; color: #1a3a6e; text-align: center; width: 14%; }
#f2 .f2_table tbody td { color: #444; line-height: 1.7; }
#f2 .f2_table tbody td ol { margin: 0; padding-left: 20px; display: flex; flex-direction: column; gap: 4px; }
#f2 .f2_table tbody td ol li { font-size: 18px; }
#f2 .f2_table tr:last-child th, #f2 .f2_table tr:last-child td { border-bottom: none; }
 
/* ── 절차 플로우 ── */
#f2 .flow_wrap { display: flex; flex-direction: column; gap: 0; }
#f2 .flow_item { display: flex; align-items: stretch; gap: 30px; margin-bottom: 0; }
#f2 .flow_item + .flow_item { margin-top: 16px; }
#f2 .flow_step { display: flex; align-items: center; justify-content: center; min-width: 180px; background: #1a3a6e; color: #fff; font-size: 20px; font-weight: 700; padding: 20px 14px; text-align: center; border-radius: 30px; flex-shrink: 0; }
#f2 .flow_arrow { display: flex; align-items: center; justify-content: center; color: #1a3a6e; font-size: 22px; flex-shrink: 0; }
#f2 .flow_desc { flex: 1; border: 1px solid #c8d8f0; background: #f4f7fc; padding: 16px 22px; display: flex; flex-direction: column; justify-content: center; }
#f2 .flow_desc ul { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 6px; }
#f2 .flow_desc ul li { font-size: 16px; color: #444; padding-left: 14px; position: relative; line-height: 1.6; }
#f2 .flow_desc ul li::before { content: '-'; position: absolute; left: 0; color: #1a3a6e; }
 
/* ── 연락처 ── */
#f2 .contact_wrap { display: flex; align-items: center; gap: 50px; flex-wrap: wrap; }
#f2 .contact_item { display: flex; align-items: center; gap: 16px; }
#f2 .contact_icon { width: 56px; height: 56px; border-radius: 50%; background: #1a3a6e; display: flex; align-items: center; justify-content: center; flex-shrink: 0; }
#f2 .contact_icon i { font-size: 22px; color: #fff; }
#f2 .contact_info .contact_label { font-size: 16px; color: #1a3a6e; font-weight: 600; margin-bottom: 3px; }
#f2 .contact_info .contact_val { font-size: 20px; font-weight: 700; color: #222; }
#f2 .contact_info .contact_sub { font-size: 13px; color: #666; margin-top: 2px; }
/* ── 반응형 ── */
@media (max-width: 1024px) {
    #f2 .flow_step { min-width: 140px; font-size: 14px; }
}
@media (max-width: 768px) {
    #f2 { padding: 0px; }
    #f2 .f2_page_title { font-size: 22px; margin-bottom: 30px; }
    #f2 .sec_title { font-size: 17px;margin-bottom: 10px; }
    #f2 .info_box { flex-direction: column; padding: 20px 10px; }
    #f2 .info_box .info_img { width: 140px; margin: 0 auto; }
    #f2 .f2_table th, #f2 .f2_table td { padding: 10px 12px; font-size: 14px; }
    #f2 .flow_item { flex-direction: column; gap: 10px; }
    #f2 .flow_step { min-width: auto; border-radius: 8px; padding: 14px; }
    #f2 .flow_arrow { transform: rotate(90deg); }
    #f2 .contact_wrap {gap: 20px; flex-direction: column;}
    #f2 .f2_section { margin-bottom: 20px; }
    #f2 p{font-size: 14px;}
    #f2 .purpose_box{padding: 15px 10px;}
    #f2 .law_list li{padding: 10px 10px;padding-left: 10px}
    #f2 .law_list li::before{left: 0;}
    #f2 .diag_desc li{    font-size: 14px;}
    #f2 .f2_table tbody td ol li{font-size: 14px;}
    #f2 .sec_title::before{font-size: 18px;    margin-bottom: 2px;}
    #f2 .flow_desc ul li{font-size: 14px;}
    #f2 .contact_info .contact_label{font-size: 14px;}
    #f2 .contact_info .contact_val{font-size: 16px;}
}
@media (max-width: 480px) {
    #f2 .f2_page_title { font-size: 18px; }
    #f2 .sec_title { font-size: 15px; }
    #f2 .info_box .info_txt ul li { font-size: 14px; }
    #f2 .law_list li { font-size: 14px; }
    #f2 .f2_table { display: block; overflow-x: auto; }
    #f2 .contact_item { flex-direction: column; text-align: center; }
}
/* f2 */
/* 서브 페이지 끝 */


#top_btn {position: fixed; width: 50px; height: 50px; bottom: 20px; right: 20px; border: 2px solid #1d4073; border-radius: 100%; font-size: 22px; background: rgba(255, 255, 255, 0.5); color: #1d4073; text-align: center; backdrop-filter: blur(2px); transition: 0.3s; z-index: 1001;}
#top_btn:hover {background:#1d4073; color: #fff;}

/* 게시물 선택복사 선택이동 */
#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;width:0;height: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;font-size:1.4em;
-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:#1d4073;color:#fff;cursor:pointer;border-radius:3px;transition: 0.3s;}
.btn_submit:hover {background:#1e509b}
.btn_close {border:1px solid #dcdcdc;cursor:pointer;border-radius:3px;background:#fff}
a.btn_close {text-align:center;line-height:50px}

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;width:128px;padding:0 5px;height:40px;border:0;background:#434a64;border-radius:3px;color:#fff;text-decoration:none;vertical-align:top} /* 우편번호검색버튼 등 */
button.btn_frmline {font-size:1em}

/* 게시판용 버튼 */
a.btn_b01,.btn_b01 {display:inline-block;color:#bababa;text-decoration:none;vertical-align:middle;border:0;background:transparent}
.btn_b01:hover, .btn_b01:hover {color:#000}
a.btn_b02,.btn_b02 {display:inline-block;background:#253dbe;padding:0 10px;color:#fff;text-decoration:none;border:0;vertical-align:middle}
a.btn_b02:hover, .btn_b02:hover {background:#0025eb}
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;color:#d13f4a;text-decoration:none;vertical-align:middle} /* 관리자 전용 버튼 */
.btn_admin:hover, a.btn_admin:hover {color:#ff3746}


/* 기본테이블 */
.tbl_wrap table {width:100%;border-collapse:collapse;border-spacing:0 5px;background:#fff;border-top:1px solid #ececec;border-bottom:1px solid #ececec; font-size: 14px;} 
.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:20px 0;font-weight:normal;text-align:center;border-bottom:1px solid #ececec;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;border-bottom:1px solid #ecf0f1;line-height:1.4em;height:60px;word-break:break-all}
.tbl_head01 tbody tr:hover td {background:#fafafa}
.tbl_head01 a:hover {text-decoration:underline}

.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.4em;word-break:break-all}

/* 폼 테이블 */
.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 #d0d3db;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%}
.twopart_input {width:385px;margin-right:10px}
.tbl_frm01 textarea, .write_div 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.4em}

/*기본 리스트*/
.list_01 ul {border-top:1px solid #ececec}
.list_01 li {border-bottom:1px solid #ececec;background:#fff;padding:10px 15px;list-style:none;position:relative}
.list_01 li:nth-child(odd) {background:#f6f6f6}
.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 {font-size:1.167em}
.form_01 li {margin-bottom:10px}
.form_01 ul:after,
.form_01 li:after {display:block;visibility:hidden;clear:both;content:""}
.form_01 .left_input {float:left}
.form_01 .margin_input {margin-right:1%}
.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.3em;height:50px;line-height:30px;padding:10px 20px;background:#fff;color:#000;-webkit-box-shadow:0 1px 10px rgba(0,0,0,.1);
-moz-box-shadow:0 1px 10px rgba(0,0,0,.1);
box-shadow:0 1px 10px rgba(0,0,0,.1)}
.new_win #win_title .sv {font-size:0.75em;line-height:1.2em}
.new_win .win_ul {margin-bottom:15px;padding:0 20px}
.new_win .win_ul:after {display:block;visibility:hidden;clear:both;content:""}
.new_win .win_ul li {float:left;background:#fff;text-align:center;padding:0 10px;border:1px solid #d6e9ff;border-radius:30px;margin-left:5px}
.new_win .win_ul li:first-child {margin-left:0}
.new_win .win_ul li a {display:block;padding:8px 0;color:#6794d3}
.new_win .win_ul .selected {background:#3a8afd;border-color:#3a8afd;position:relative;z-index:5}
.new_win .win_ul .selected a {color:#fff;font-weight:bold}
.new_win .win_desc {position:relative;margin:10px;border-radius:5px;font-size:1em;background:#f2838f;color:#fff;line-height:50px;text-align:left;padding:0 20px}
.new_win .win_desc i {font-size:1.2em;vertical-align:baseline}
.new_win .win_desc:after {content:"";position:absolute;left:0;top:0;width:4px;height:50px;background:#da4453;border-radius:3px 0 0 3px}
.new_win .frm_info {font-size:0.92em;color:#919191}
.new_win .win_total {display:inline-block;line-height:30px;font-weight:normal;font-size:0.75em;color:#3a8afd;background:#f6f6f6;padding:0 10px;border-radius:5px}
.new_win .new_win_con {margin:20px 0;padding:20px}
.new_win .new_win_con:after {display:block;visibility:hidden;clear:both;content:""}
.new_win .new_win_con2 {margin:20px 0}
.new_win .btn_confirm:after {display:block;visibility:hidden;clear:both;content:""}
.new_win .win_btn {text-align:center}
.new_win .btn_close {height:45px;width:60px;overflow:hidden;cursor:pointer}
.new_win .btn_submit {padding:0 20px;height:45px;font-weight:bold;font-size:1.083em}

/* 검색결과 색상 */
.sch_word {color:#fff;background:#ff005a;padding:2px 5px 3px;line-height:18px;margin:0 2px}

/* 자바스크립트 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-top: 20px; text-align: center;}
.pg_wrap:after {display:block;visibility:hidden;clear:both;content:""} 
.pg {text-align:center}
.pg_page, .pg_current {display:inline-block;vertical-align:middle;background:#eee;border:1px solid #eee}
.pg a:focus, .pg a:hover {text-decoration:none}
.pg_page {color:#959595;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-color:#fafafa}
.pg_start {text-indent:-999px;overflow:hidden;background:url('../img/btn_first.gif') no-repeat 50% 50% #eee;padding:0;border:1px solid #eee}
.pg_prev {text-indent:-999px;overflow:hidden;background:url('../img/btn_prev.gif') no-repeat 50% 50% #eee;padding:0;border:1px solid #eee}
.pg_end {text-indent:-999px;overflow:hidden;background:url('../img/btn_end.gif') no-repeat 50% 50% #eee;padding:0;border:1px solid #eee}
.pg_next {text-indent:-999px;overflow:hidden;background:url('../img/btn_next.gif') no-repeat 50% 50% #eee;padding:0;border:1px solid #eee}
.pg_start:hover,.pg_prev:hover,.pg_end:hover,.pg_next:hover {background-color:#fafafa}

.pg_current {display:inline-block;background:#3a8afd;border:1px solid #3a8afd;color:#fff;font-weight:bold;height:30px;line-height:30px;padding:0 10px;min-width:30px;border-radius:3px}

/* 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}

/*메뉴변경*/
/* =============================================
   헤더 기본 레이아웃
   [로고 좌측] [GNB 중앙] [언어 + 햄버거 우측]
   ============================================= */
#hd {
    position: fixed;
    top: 0; left: 0;
    width: 100%;
    z-index: 9999;
    background: #fff;
    transition: box-shadow 0.3s;
    border-bottom: 1px solid #ddd;
}
#hd.scrolled {
    border-bottom: 1px solid #ddd;
}

/* hd_wrapper = 원본 구조 유지하되 flex로 정렬 */
#hd_wrapper {
    display: flex;
    align-items: center;
    height: 100px;
    padding: 0 30px;
    box-sizing: border-box;
    position: relative;
}

/* ── ① 로고 (좌측 고정) ── */
#logo {
    flex-shrink: 0;
}
#logo img {
    /* height: 36px; */
    display: block;
}
/* 스크롤 전후 로고 전환 */
#hd .scrolltop  { display: none;  }
#hd .scrolldown { display: block; }
#hd.scrolled .scrolltop  { display: block; }
#hd.scrolled .scrolldown { display: none;  }

/* ── ② GNB (중앙, flex 확장) ── */
#gnb {
    width: 88%;
    min-width: 0;
    left: 50%;
    transform: translateX(-50%);
    position: absolute;
}
#gnb h2 {
    position: absolute;
    width: 1px; height: 1px;
    overflow: hidden; clip: rect(0,0,0,0);
}
.gnb_wrap { position: static; }

#gnb_1dul {
    display: flex;
    justify-content: center; /* 메뉴 그룹 가운데 정렬 → letter-spacing 확장이 화면 중앙 기준으로 균등하게 */
    list-style: none;
    margin: 0; padding: 0;
}
.gnb_1dli {
    position: static;
}

/* ── chemtopia 방식 ──
   GNB 영역 진입 시 전체 메뉴가 한 번에 확장,
   메뉴 간 이동 시 크기 변화 없음,
   GNB 벗어날 때 한 번에 복귀
   ────────────────────────────────── */
.gnb_1da {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    height:100px;
    padding:0 25px;
    font-size: 20px;
    color: #000;
    text-decoration: none;
    white-space: nowrap;
    position: relative;
    letter-spacing: 0;
    transition: letter-spacing 0.35s ease, color 0.2s ease;
}
.gnb_1da::after {
    content: '';
    position: absolute;
    bottom: -1px; left: 50%; right: 50%;
    height: 2px;
    background: #1c4072;
    transition: left 0.35s ease, right 0.35s ease;
}

/* ★ 핵심: ul 전체에 hover → 모든 메뉴 동시에 확장, 개별 변화 없음 */
#gnb_1dul:hover .gnb_1da {
    letter-spacing: 0.12em;
}
/* 현재 over 상태인 메뉴만 색상 변경 */
.gnb_1dli:hover > .gnb_1da {
    color: #1c4072;
}
.gnb_1dli:hover > .gnb_1da::after { left: 22px; right: 22px; }

/* ── ③ 언어 선택 (우측) ── */
.hd_lang {
    list-style: none;
    display: flex;
    align-items: center;
    gap: 8px;
    margin: 0 16px 0 0;
    padding: 0;
    flex-shrink: 0;
}
.hd_lang li a {
    font-size: 13px;
    color: #888;
    text-decoration: none;
}
.hd_lang li.on a {
    color: #1c4072;
    font-weight: bold;
}

/* ── ④ 햄버거 버튼 (우측 끝, 원본 위치/구조 그대로) ── */
.mobile_op_bt {
    flex-shrink: 0;
    display: flex;
    align-items: center;
    position: absolute;
    right: 20px;
}
.gnb_menu_btn {
    background: none;
    border: none;
    cursor: pointer;
    display: flex;
    align-items: center;
}
.gnb_menu_btn img {

    display: block;
}

/* =============================================
   메가 드롭다운 패널
   ★ 흰 배경: 공유 .mega_bg 하나로 고정
      콘텐츠: 각 .mega_panel이 담당 (z-index 통일)
   ============================================= */

/* 공유 흰 배경 — GNB hover 시 표시, 메뉴 이동해도 번쩍임 없음 */
.mega_bg {
    position: fixed;
    top: 100px; left: 0;
    width: 100%;
    background: #fff;
    /* box-shadow: 0 8px 30px rgba(0,0,0,0.12); */
    border-top: 1px solid #ddd;
    z-index: 9990;
    /* 기본: 숨김 */
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transition: opacity 0.2s ease, visibility 0.2s;
    /* 높이는 콘텐츠에 맞게 */
    min-height: 260px;
}
/* mega_bg 표시는 JS로 제어 (gnb_open 클래스) */
.mega_bg.gnb_open {
    opacity: 1;
    visibility: visible;
}

/* 각 메뉴 패널: 배경 없이 콘텐츠만, 모두 같은 z-index */
.mega_panel {
    position: fixed;
    top: 70px; left: 0;
    width: 100%;
    z-index: 9995;
    visibility: hidden;
    pointer-events: none;
    background: transparent;
}
.mega_panel.is_open {
    visibility: visible;
    pointer-events: auto;
}

/* mega_inner: 콘텐츠만 슬라이드 다운 */
.mega_inner {
    display: flex;
    align-items: stretch;
    max-width: 1400px;
    margin: 0 auto;
    padding: 0 30px;
    min-height: 200px;
    opacity: 0;
    transform: translateY(-14px);
    transition: opacity 0.28s ease, transform 0.28s ease;
}
.mega_panel.is_open .mega_inner {
    opacity: 1;
    transform: translateY(0);
}

/* 왼쪽 이미지 — 현재 미사용 (필요시 아래 주석 해제)
.mega_img_wrap {
    flex-shrink: 0;
    width: 200px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 28px 30px 28px 0;
}
.mega_img_wrap img {
    width: 180px;
    height: 200px;
    object-fit: cover;
    border-radius: 10px;
}
.mega_img_placeholder {
    width: 180px;
    height: 200px;
    background: linear-gradient(135deg, #e8f5e9, #c8e6c9);
    border-radius: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #4caf50;
    font-size: 40px;
}
*/

/* 오른쪽 컬럼 */
.mega_cols {
    display: flex;
    flex: 1;
    padding: 28px 0;
}
.mega_col {
    flex: 1;
    padding: 0 30px;
    border-left: 1px solid #f0f0f0;
}
.mega_col:first-child { border-left: none; }

.mega_col_title {
    display: block;
    font-size: 15px;
    font-weight: 700;
    color: #222;
    margin-bottom: 12px;
    padding-bottom: 10px;
    border-bottom: 1px solid #eee;
    text-decoration: none;
    transition: color 0.2s;
}
.mega_col_title:hover { color: #1c4072; }

.mega_2dul { list-style: none; margin: 0 auto; padding: 0; display: flex; flex-wrap: wrap; padding: 50px; gap: 20px 50px; justify-content: center;}
.mega_2dli { margin-bottom: 2px;}
.mega_2da {
    display: block;
    font-size: 18px;
    color: #555;
    text-decoration: none;
    padding: 6px 0;
    transition: color 0.2s, padding-left 0.2s;
}
.mega_2da:hover { color: #1c4072; padding-left: 6px; }

/* =============================================
   모바일 슬라이드 메뉴 (원본 구조/기능 그대로)
   ============================================= */
#gnb_mobile {
    position: fixed;
    top: 0; right: -100%;
    height: 100vh;
    background: #fff;
    z-index: 10000;
    overflow-y: auto;
    transition: right 0.3s ease;
    box-shadow: -4px 0 20px rgba(0,0,0,0.15);
}
#gnb_mobile.on { right: 0; }

/* .gnb_mobile_wr { padding: 60px 0 30px; } */
.gnb_al_ul { list-style: none; margin: 0; padding: 0; }
.gnb_al_li { border-bottom: 1px solid #f0f0f0; position: relative; }
.gnb_al_a {
    display: block;
    padding: 14px 24px;
    font-size: 15px;
    font-weight: 600;
    color: #222;
    text-decoration: none;
}
.btn_gnb_op {
    position: absolute; right: 0; top: 0;
    width: 50px; height: 50px;
    background: none; border: none; cursor: pointer; font-size: 18px;
}
.gnb_al_ul2 { list-style: none; margin: 0; padding: 0; display: none;}
.gnb_al_ul2 li a {
    display: block;
    padding: 10px 24px 10px 36px;
    font-size: 13px; color: #555; text-decoration: none;
}
.gnb_al_ul2 li a:hover { color: #1c4072; }
.gnb_close_btn {
    position: absolute; top: 16px; right: 16px;
    background: none; border: none; cursor: pointer;
}
.m_lang { display: flex; gap: 12px; padding: 20px 24px; }
.m_lang a { font-size: 13px; color: #888; text-decoration: none; }
.m_lang a.on { color: #1c4072; font-weight: bold; }
@media screen and (max-width:640px) {
#hd_wrapper{    height: 60px;}
}

/*메뉴변경*/

/*퀵메뉴*/
.quick_menu{position:fixed;right:40px;bottom: 100px;z-index:9999}
.qm_kakao{width:80px;margin:0 auto 10px}
.qm_kakao a{display:block;background:#ffd800;border-radius:10px;padding:10px 0;text-align:center;text-decoration:none;box-shadow:0 3px 8px rgba(0,0,0,0.25)}
.qm_kakao img{width:28px;margin-bottom:6px;display:block;margin-left:auto;margin-right:auto}
.qm_kakao_txt{display:block;font-size:12px;color:#3b1e1e;font-weight:700;margin-bottom:4px}
.qm_kakao_go{display:inline-block;font-size:11px;color:#3b1e1e;background:#ffffff;border-radius:20px;padding:3px 12px;font-weight:700}
.qm_langs{width:100px;border-radius:10px;overflow:hidden;border: 1px solid #ddd;}
.qm_lang{display:block;background:#ffffff;padding:12px 0;text-align:center;border-bottom:1px solid #e6e6e6;text-decoration:none}
.qm_lang:hover{background: #1d4073;}
.qm_lang:hover .qm_lang_txt{color: #fff;}
.qm_lang:last-child{border-bottom:none}
.qm_lang_icon{display:block;width:50px;height:50px;margin:0 auto 6px;border-radius:50%;overflow:hidden}
.qm_lang_icon img{width:100%;height:auto;display:block}
.qm_lang_txt{display:block;font-size:14px;color:#333333;font-weight: 600;}

@media screen and (max-width:768px){
.quick_menu{right:10px;top:50%;}
.qm_kakao,.qm_langs{width:50px}
.qm_kakao img{width:24px}
.qm_lang_icon{width:28px;height:28px}
.qm_lang{padding: 5px 0;}
.qm_lang_txt{font-size: 10px;;}
.qm_kakao_txt{display: none;}
}
/*퀵메뉴*/