@charset "utf-8";
/* doc.css는 디자인페이지 스타일을 정의합니다. */

.table {display:table; table-layout:fixed;width:100%;}
.cell {display:table-cell; vertical-align:middle;}

.doc-tit {font-size:24px;line-height:1.3em;font-weight:500;letter-spacing:0; color:#000; margin-bottom:30px;}
.doc-tit:before {content:"";display:block; width:40px;height:2px; margin-bottom:5px; background:#3d6499;}
.doc-tit .tt-desc {font-size:18px;font-weight:300; color:#555; margin-top:5px;}

.doc-cnt {margin-bottom:60px;}
.doc-cnt:last-child {margin-bottom:0;}

.sub-tab {position:relative; text-align:center; line-height:0; margin-bottom:80px; z-index:2;}
.sub-tab .swiper-container {max-width:1200px; margin:0 auto; text-align:center;}
.sub-tab ul {display:inline-flex; width:auto;}
.sub-tab ul:after {content:"";display:block;clear:both;}
.sub-tab ul li {float:left; padding:0 15px; margin:0 2px; width:auto !important; min-width:172px; border-radius:24px; color:#555; background:#e9e9e9;}
.sub-tab ul li a {display:block; font-size:20px; line-height:48px; letter-spacing:-.04em;}
.sub-tab ul li.active {color:#fff; background:#1b2b76;}

.table-box {margin:20px 0;}
.table01 {width:100%; border-collapse:collapse; border-spacing:0px; letter-spacing:-.05em; border-top:2px solid #3d6499;}
.table01 thead th {padding:10px 5px; color:#fff; border:1px solid #ccc; font-weight:500; height:50px; background:#2a5082;}
.table01 tbody th {padding:12px 5px 12px 35px; color:#333; border:1px solid #ccc; font-weight:500; text-align:left; background:#f9f9f9;}
.table01 tbody td {padding:12px 5px 12px 35px; color:#333; border:1px solid #ccc; font-weight:300; text-align:left;}
.table01 tr th:first-child,
.table01 tr td:first-child {border-left:0;}
.table01 tr th:last-child,
.table01 tr td:last-child {border-right:0;}
.table01 .t-c {text-align:center; padding-left:0; padding-right:0;}

.headcopy {text-align:center; font-size:22px; line-height:1.5em; color:#000; margin-bottom:60px;}

.greeting-head {padding:70px 45px 30px; margin-bottom:70px; background:url('../images/sub/bg_grt.gif') 0 0 repeat-x; border:1px solid #ddd;}
.greeting-head h4 {font-size:28px;line-height:1.6em;font-weight:300;letter-spacing:0; color:#000; margin-bottom:110px;}
.greeting-head h4 strong {font-weight:500;}
.greeting-head .ceo {text-align:right; font-size:18px;line-height:1.5em;font-weight:400; color:#000;}
.greeting-head .ceo .col {display:inline-block; margin-left:25px;}
.greeting-head .ceo img {vertical-align:middle; margin-left:15px;}

.greeting {font-size:18px; line-height:1.8em;}
.greeting p {text-indent:10px; margin-bottom:40px;}
.greeting p:last-child {margin-bottom:0;}

.org {text-align:center;}

.bsns-field {text-align:center;}
.bsns-field .row {margin:0 -10px;}
.bsns-field .row:after {content:"";display:block;clear:both;}
.bsns-field .col {float:left; width:16.666%; padding:0 10px;}
.bsns-field .col p {margin-top:15px; font-size:18px; line-height:1.4em;}

.history-head {margin-bottom:40px; line-height:42px; padding:0 0 10px 200px; background:url('../images/sub/bg_history.jpg') 40px 100% no-repeat; border-bottom:1px solid #3d6499;}
.history-head p  {display:inline-block; font-size:18px; line-height:1.6em; font-weight:400; color:#000;}

.history {max-width:1140px; margin: 0 auto;}
.history .group {position:relative;}
.history .group:before {content:"";position:absolute; top:25px;left:19%; width:1px; height:100%; min-height:90px; background:#ddd; z-index:-1;}
.history .group:after {content:"";display:block;clear:both;}
.history .left {float:left; width:19%; position:relative;}
.history .left:before {content:"";position:absolute; top:50%;right:-40px; width:100%;height:1px; background:#ddd; z-index:-1;}
.history .left:after  {content:"";position:absolute; top:50%;right:-9.5px; margin-top:-9.5px; width:19px;height:19px; background:#fff; border:3px solid #8fabd1; border-radius:50%;}
.history .left .year {display:table; width:140px;height:140px; text-align:center;}
.history .left .year h3 {display:table-cell;vertical-align:middle; font-size:24px;line-height:1.3em;font-weight:500;letter-spacing:0;color:#fff; background:#666; border-radius:50%;}
.history .right {position:relative; margin-left:19%; padding-left:50px; padding-top:55px; padding-bottom:25px; min-height:140px; overflow:hidden;}
.history .right li {position:relative; padding-left:90px; width:calc(100% - 90px); font-size:18px;line-height:32px; margin-bottom:5px;}
.history .right li .date {position:absolute; top:1px; left:0; width:90px; font-size:19px;line-height:1.4em;font-weight:500; color:#3d6499;}
.history .right li .date:before {content:"";display:inline-block;vertical-align:middle;margin:-.2em 12px 0 0; width:3px;height:3px; border-radius:50%; background:#3d6499;}
.history .group:last-child:before {height:calc(100% - 30px);}
.history .group:last-child .right {padding-bottom:0;}
.history .group:nth-child(odd)  .year h3 {background:#3d6499;}
.history .group:nth-child(even) .year h3 {background:#243143;}

.local-map {position:relative;height:0; padding-bottom:40%; border:1px solid rgba(0,0,0,.2); margin-bottom:50px;}
.root_daum_roughmap {position:absolute !important; top:50%; left:50%; transform:translate(-50%,-50%); width:100% !important; height:100% !important; padding:0 !important;}
.root_daum_roughmap .wrap_map {height:100% !important;}
.root_daum_roughmap .border1 {display:none !important;}
.root_daum_roughmap .border2 {display:none !important;}
.root_daum_roughmap .border3 {display:none !important;}
.root_daum_roughmap .border4 {display:none !important;}

.local-info {position:relative; border-top:1px solid #dedede;}
.local-info:before, .local-info:after {content:"";position:absolute; top:-1px; width:31px;height:31px; border-style:solid; border-color:#000;}
.local-info:before {left:0; border-width:1px 0 0 1px;}
.local-info:after  {right:0; border-width:1px 1px 0 0;}
.local-info .table {padding:30px 0; max-width:1020px; margin:0 auto;}
.local-info .left {width:26.47%; text-align:center; font-size:24px;line-height:1.3em;font-weight:200; color:#000;}
.local-info .right {padding-left:60px; border-left:1px solid #ddd;}
.local-info .right dl {line-height:1.5em; padding-left:5em;}
.local-info .right dl dt {float:left; clear:left; text-indent:-5em; font-weight:500;letter-spacing:-.05em; color:#000;}
.local-info .right dl dd {font-weight:300; margin:8px 0;}

.traffic {border:1px solid #ddd; margin-top:20px;}
.traffic .row:after {content:"";display:block;clear:both;}
.traffic .col {float:left;width:33.333333%;}
.traffic .col .head {padding:17px 50px;border-bottom:1px solid #000;}
.traffic .col .head h3 {font-size:22px;line-height:45px;font-weight:500;letter-spacing:-.05em; color:#333;}
.traffic .col .head img {margin-right:10px;}
.traffic .col .body {padding:27px 50px;}
.traffic .col .body .group {margin-bottom:20px;}
.traffic .col .body h4 {font-size:20px; line-height:1.3em;font-weight:500;letter-spacing:-.04em; margin-bottom:5px;}
.traffic .col .body p  {font-size:18px; line-height:1.5em;font-weight:300;letter-spacing:-.04em;}

.img-list {display:table;table-layout:fixed;width:100%; text-align:center;}
.img-list .space {display:table-cell; width:20px;}
.img-list p {font-size:18px; line-height:1.4em; color:#000; margin-top:10px;}

.consult {padding:60px; min-height:390px; background-image: url('../images/sub/bg_consult.jpg'); background-color: #eee; background-position:50% 50%; background-repeat:no-repeat; background-size:cover;overflow:hidden;}
.consult .cnt {min-height:36px; font-size:18px;line-height:1.5em; padding-left:50px; background: url('../images/sub/ico_consult.png') 0 50% no-repeat;}

.bullet-box {background:#f8f8f8; padding:30px 50px; border-radius:0 0 30px 0; margin-top: 30px; min-height: 120px; display: flex; align-items: center; font-size:18px; line-height:1.6; color: #000;}
.bullet-box li {position: relative; padding-left: 15px;}
.bullet-box li:before {content: ''; width: 4px; height: 4px; border-radius: 50%; background: #000; position: absolute; top: 13px; left: 3px;}
.bullet-box li:last-child {margin-bottom:0;}

.cert ul {margin:0 -32px; text-align:center;}
.cert ul li {float:left; width:33.333%; padding:0 49px; margin-bottom:55px;}
.cert ul li:nth-child(3n+1) {clear:left;}
.cert ul li .thumb {position:relative;}
.cert ul li .thumb:after  {content:" ";position:absolute;top:0;left:0;width:100%;height:100%;border:1px solid #ddd;}
.cert ul li .txt {display:table; width:100%; height:90px; padding:10px; color:#fff; background:#1d69bc;}
.cert ul li p {display:table-cell;vertical-align:middle; line-height:1.5em;}

.manage-head {margin-bottom:80px;}
.manage-head .left {position:relative; min-height:300px;}
.manage-head .right {position:relative; max-width:720px; margin:-70px 0 0 auto; box-shadow: 6px 6px 0 #f3f3f3; z-index:2;}
.manage-head .textbox {position:relative; background:#fff; border:6px solid #1b2b76;}
.manage-head .textbox:before, 
.manage-head .textbox:after {content:""; position:absolute; border-style:solid; border-color:#88ade4; z-index:2;}
.manage-head .textbox:before {top:-6px; bottom:-6px; left:20px; right:20px; border-width:6px 0;}
.manage-head .textbox:after  {left:-6px; right:-6px; top:20px; bottom:20px; border-width:0 6px;}
.manage-head .inner {position:relative; padding:40px; font-size:26px;line-height:1.5em;font-weight:200; color:#000; z-index:3;}
.manage-head .inner:before, 
.manage-head .inner:after {content:""; position:absolute; width:24px;height:18px; background-position:50% 50%; background-repeat:no-repeat; z-index:3;}
.manage-head .inner:before {top:20px; left:20px; background-image: url('../images/sub/ico_quote1.png');}
.manage-head .inner:after  {bottom:20px; right:20px; background-image: url('../images/sub/ico_quote2.png');}
.manage-head .inner strong {font-size:28px; color:#1b2b76;}

.manage-list li {float:left; width:50%; margin-bottom:20px; font-size:24px;line-height:1.5em; padding-left:.6em; text-indent:-.6em; letter-spacing:-.06em;}
.manage-list li:nth-child(2n+1) {clear:left;}
.manage-list li:before {content:"";display:inline-block;vertical-align:middle;margin:-.2em 10px 0 0; width:3px;height:23px; background:#4c7ece; border-top:5px solid #361bff;}

.equipment {display:table;table-layout:fixed;width:100%; text-align:center;}
.equipment .space {display:table-cell; width:56px;}
.equipment > .cell:nth-child(1) {width:66%;}
.equipment > .cell:nth-child(2) {width:32%;}
.equipment p {font-size:20px; line-height:26px; padding:15px; color:#fff; background:#2b4879; border-radius:56px; max-width:410px; margin:30px auto 0;}

.partners ul {margin:-22px; text-align:center;}
.partners li {float:left; width:33.333333%; padding:22px; font-size:18px; line-height:30px; position:relative;}
.partners li:nth-child(3n+1) {clear:left;}
.partners li .img {position:relative;}
.partners li .img:after {content:""; position:absolute; top:0; left:0; right:0; bottom:0; border:1px solid rgba(0,0,0,.1);}
.partners li p {margin-top:10px;}

.recruit-head {text-align:center; font-size:28px;line-height:1.5em; padding-bottom:50px; margin-bottom:60px; border-bottom:1px solid #ddd;}

.recruit-process ul {margin:-60px; text-align:center;}
.recruit-process li {float:left; width:25%; padding:60px; font-size:18px; line-height:30px; position:relative;}
.recruit-process li:after {content:""; position:absolute; top:calc(50% - 20px); right:-18px; margin-top:-12px; width:36px;height:24px; background:url('../images/sub/arw.png') 0 0 no-repeat;}
.recruit-process li:last-child:after {display:none;}
.recruit-process li .img {width:185px; height:185px; padding:14px; background:#fff; border:3px solid #94a8c5; border-radius:50%; margin:0 auto; position:relative;}
.recruit-process li p {margin-top:10px;}

.position-sst {padding:50px; border-radius:15px; background:#f8f8f8;}
.position-sst .tit {font-size:24px;line-height:1.3em;font-weight:700;letter-spacing:0; color:#3d6499; margin-bottom:30px;}
.position-sst ul {margin:-18px; text-align:center;}
.position-sst li {float:left; width:16.667%; padding:18px; font-size:20px; line-height:30px; position:relative;}
.position-sst li:after {content:""; position:absolute; top:50%; right:-60px; margin-top:-2px; width:100%;height:4px; background:#c3c3c3; z-index:1;}
.position-sst li:last-child:after {display:none;}
.position-sst li .box {display:table;width:100%;height:110px; background:#fff; border:1px solid #c3c3c3; position:relative; z-index:2;}
.position-sst li .box p {display:table-cell;vertical-align:middle;}
.position-sst li:nth-child(1) .box {border-color:#cecece;}
.position-sst li:nth-child(2) .box {border-color:#acbace;}
.position-sst li:nth-child(3) .box {border-color:#abb9cc;}
.position-sst li:nth-child(4) .box {border-color:#849fc2;}
.position-sst li:nth-child(5) .box {border-color:#5c81b4;}
.position-sst li:nth-child(6) .box {border-color:#3d6499;}

.welfare ul {margin:-18px;}
.welfare li {float:left; width:20%; padding:18px; line-height:1.6em; position:relative;}
.welfare li .box {position:relative; padding:30px 25px; height:260px; border-radius:10px; border:1px solid #ddd; box-shadow: 6px 6px 0 #f3f3f3;}
.welfare li.logo .box {border-color:#1f2682; background:#1f2682 url('../images/sub/ico_symbol.png') 50% 50% no-repeat;}
.welfare li .tt {font-size:24px;line-height:1.3em;font-weight:500; color:#000; margin-bottom:10px;}
.welfare li .tt:after {content:"";position:absolute; top:-1px;left:25px; width:60%; max-width:88px; height:5px; background:#555;}
.welfare li .ico {position:absolute; bottom:30px; right:25px; width:78px;height:76px; background-position:50% 50%; background-repeat:no-repeat; background-size:contain;}
.welfare li .ico1 {background-image: url('../images/sub/ico_welfare1.png');}
.welfare li .ico2 {background-image: url('../images/sub/ico_welfare2.png');}
.welfare li .ico3 {background-image: url('../images/sub/ico_welfare3.png');}
.welfare li .ico4 {background-image: url('../images/sub/ico_welfare4.png');}
.welfare li .ico5 {background-image: url('../images/sub/ico_welfare5.png');}
.welfare li .ico6 {background-image: url('../images/sub/ico_welfare6.png');}
.welfare li .ico7 {background-image: url('../images/sub/ico_welfare7.png');}
.welfare li .ico8 {background-image: url('../images/sub/ico_welfare8.png');}
.welfare li .ico9 {background-image: url('../images/sub/ico_welfare9.png');}
.welfare li:nth-child(odd)  .tt:after {background-color:#2e8ecb;}
.welfare li:nth-child(even) .tt:after {background-color:#2b489b;}

.page-head {font-size: var(--fs-18); line-height: 1.6667em; margin-bottom: var(--space-60); text-align: center;}
.page-head h3 {margin-bottom: 10px; font-size: var(--fs-28); line-height: 1.5em; color: #000; font-weight: 400;}
.page-system section:not(:last-child) {margin-bottom: var(--space-100);}
.page-system {width:100%;}
.page-system .system-banner {position:relative; display:flex; align-items:flex-end; height:clamp(260px, calc(400 / var(--inner) * 100vw), 400px); padding:var(--space-40) var(--space-50); overflow:hidden;}
.page-system .system-banner .bg {position:absolute; inset:0; z-index:0;}
.page-system .system-banner .bg img {display:block; width:100%; height:100%; object-fit:cover;}
.page-system .system-banner .badge {position:absolute; top:var(--space-50); right:var(--space-50); z-index:2; display:flex; flex-direction:column; align-items:center; justify-content:center; width:clamp(72px, calc(100 / var(--inner) * 100vw), 100px); height:clamp(72px, calc(100 / var(--inner) * 100vw), 100px); border-radius:50%; background:linear-gradient(150deg, #229fff 13.37%, #2b489b 86.59%); color:#fff; text-align:center; letter-spacing:-.03em;}
.page-system .system-banner .badge strong {display:block; font-size:var(--fs-22); line-height:1.1; font-weight:700;}
.page-system .system-banner .badge span {display:block; font-size:var(--fs-16); line-height:1.5; font-weight:500;}
.page-system .system-banner .txt {position:relative; z-index:1; display:flex; flex-wrap:wrap; align-items:flex-end; justify-content:space-between; gap:var(--space-40); width:100%;}
.page-system .system-banner .txt .wrap {flex:1; min-width:0; max-width:404px;}
.page-system .system-banner .txt .tag {font-size:var(--fs-16); line-height:1.375; font-weight:500; letter-spacing:-.03em; color:rgba(255,255,255,.7); margin-bottom:var(--space-10);}
.page-system .system-banner .txt h4 {font-size:var(--fs-28); line-height:1.43; font-weight:500; letter-spacing:-.03em; color:#fff; word-break:keep-all;}
.page-system .system-banner .txt > p {font-size:var(--fs-18); line-height:1.67; font-weight:400; letter-spacing:-.03em; color:#fff; text-align:right; word-break:keep-all;}
.page-system .system-boxes {display:flex; flex-wrap:wrap; gap:var(--space-20); margin-top:var(--space-40);}
.page-system .system-box {display:flex; flex-direction:column; gap:var(--space-20); flex:1 1 calc(50% - 10px); min-height:clamp(0px, calc(288 / var(--inner) * 100vw), 288px); padding:var(--space-50); background:#f8f8f8; box-sizing:border-box;}
.page-system .system-box .ico {display:flex; align-items:center; justify-content:center; width:clamp(56px, calc(64 / var(--inner) * 100vw), 64px); height:clamp(56px, calc(64 / var(--inner) * 100vw), 64px); border-radius:50%; background:#e9eaf2;}
.page-system .system-box .ico img {display:block; width:clamp(34px, calc(40 / var(--inner) * 100vw), 40px); height:clamp(34px, calc(40 / var(--inner) * 100vw), 40px); object-fit:contain;}
.page-system .system-box .cnt {display:flex; flex-direction:column; gap:var(--space-20);}
.page-system .system-box .cnt h5 {font-size:var(--fs-22); line-height:1.45; font-weight:500; letter-spacing:-.03em; color:#000; word-break:keep-all;}
.page-system .system-box .cnt h5 .note {font-size:var(--fs-14); font-weight:500;}
.page-system .system-box .cnt p {font-size:var(--fs-16); line-height:1.625; font-weight:400; letter-spacing:-.03em; color:#555; word-break:keep-all;}

/* 산업안전 보건관리 */
.page-safety {width:100%;}
.page-safety .safety-cards {display:flex; flex-wrap:wrap; gap:var(--space-20); margin-bottom:60px;}
.page-safety .safety-card {display:flex; flex-direction:column; gap:clamp(16px, calc(23 / var(--inner) * 100vw), 23px); flex:1 1 calc(33.333% - 14px); min-width:min(100%, 280px);}
.page-safety .safety-card .thumb {position:relative; display:flex; align-items:center; justify-content:center; height:clamp(200px, calc(265 / var(--inner) * 100vw), 265px); overflow:hidden;}
.page-safety .safety-card .thumb .bg {position:absolute; inset:0; z-index:0;}
.page-safety .safety-card .thumb .bg img {display:block; width:100%; height:100%; object-fit:cover;}
.page-safety .safety-card .thumb .txt {position:relative; z-index:1; display:flex; flex-direction:column; align-items:center; gap:var(--space-10); text-align:center;}
.page-safety .safety-card .thumb .num {font-size:var(--fs-40); line-height:1.2; font-weight:500; letter-spacing:-.03em; color:rgba(255,255,255,.4);}
.page-safety .safety-card .thumb h3 {font-size:var(--fs-22); line-height:1.36; font-weight:500; letter-spacing:-.03em; color:#fff; word-break:keep-all;}
.page-safety .safety-card ul {display:flex; flex-direction:column; gap:var(--space-20); padding:0 10px;}
.page-safety .safety-card ul li {position:relative; padding-left:24px; font-size:var(--fs-16); line-height:1.375; font-weight:400; letter-spacing:-.03em; color:#555; word-break:keep-all;}
.page-safety .safety-card ul li:before {content:""; position:absolute; top:3px; left:0; width:16px; height:16px; background:url("../images/sub/safety-check.svg") 50% 50% no-repeat; background-size:contain;}
.page-safety .safety-card .case {display:flex; flex-direction:column; align-items:center; gap:7px; padding:15px 10px; background:#e9eaf2; text-align:center;}
.page-safety .safety-card .case .tag {display:inline-flex; align-items:center; justify-content:center; min-height:24px; padding:4px 6px; border-radius:99px; background:linear-gradient(-90deg, #2b489b .77%, #229fff 99.23%); font-size:var(--fs-12); line-height:1.33; font-weight:500; letter-spacing:-.03em; color:#fff;}
.page-safety .safety-card .case p {font-size:var(--fs-14); line-height:1.29; font-weight:400; letter-spacing:-.03em; color:#000; word-break:keep-all;}
.page-safety .safety-card .case .date {display:block; font-size:var(--fs-12); color:#555;}
.page-safety .safety-gallery .doc-tit {margin-bottom:var(--space-30);}
.page-safety .safety-gallery ul {display:grid; grid-template-columns:repeat(4, 1fr); gap:var(--space-20); margin-top: clamp(20px, calc(30 / var(--inner) * 100vw), 30px);}
.page-safety .safety-gallery ul li {overflow:hidden;}
.page-safety .safety-gallery ul li img {display:block; width:100%; aspect-ratio:285 / 234; object-fit:cover;}

/* 사이트맵 */
.sitemap {*zoom:1; max-width:1100px; margin:60px auto 0;}
.sitemap:after {content:" "; display:block; clear:both;}
.sitemap dl {float:left; width:25%; padding:0 10px; margin-bottom:40px;}
.sitemap dl:nth-child(4n+1) {clear:left;}
.sitemap dl dt {height:36px; font-size:15px;line-height:34px;font-weight:500;letter-spacing:-.04em; color:#555; background:#f2f2f2; border:1px solid #eaeaea; text-align:center; margin:0 0 5px 0;}
.sitemap dl dd {font-size:14px; line-height:30px; border-bottom:1px dotted #ccc;}
.sitemap dl dd a {display:block; padding:8px 0 8px 23px; color:#666; line-height:16px; background:url("../images/sub/dot.gif") 10px 13px no-repeat;}
.sitemap dl dd ul {background:#f7f7f7; padding:8px 0;}
.sitemap dl dd ul li a {background:none; font-size:14px; letter-spacing:-1px; line-height:22px; padding:2px 0 2px 15px; *padding:0 0 0 15px; text-decoration:none;}
.sitemap dl dd a:hover {text-decoration:underline;}

.doc-title {color: #000; font-size: 28px; font-weight: 500; line-height: 1.3em; margin-bottom: 40px; position: relative; padding-left: 32px;}
.doc-title:before {content: ''; width: 18px; height: 18px; border: 5px solid #3d6499; position: absolute; top: 9px; left: 0;}


.c-bk {color:#000000 !important;}
.c-co {color:#5b6b26 !important;}
.c-gr {color:#2a9e06 !important;}
.c-bl {color:#276dc3 !important;}
