@charset "utf-8";

.doc-tit {margin-bottom:20px; font-size:var(--fz28); font-weight:700; line-height:1.4em; letter-spacing:-.05em; color:#121212;}
.doc-tit:before {margin-bottom:7px; content:''; width:20px; height:4px; background:var(--color-primary); display:block;}

.greeting {display:flex;}
.greeting .cnt {background:url('/images/sub/greeting-ico.png') no-repeat 0 26px; position:relative; width:50%; padding:58px 110px 0 68px;}
.greeting .cnt:before {content:''; position:absolute; left:0; top:0; width:80%; height:4px; background:var(--color-primary);}
.greeting .cnt h2 {margin-bottom:105px; font-size:var(--fz32); font-weight:600; letter-spacing:-.05em; line-height:1.56em;}
.greeting .cnt h2 strong {color:var(--color-primary); font-weight:800;}
.greeting .cnt .txt-wrap {max-width:505px; text-align:justify; }
.greeting .cnt .txt {margin-bottom:50px; font-size:var(--fz20); font-weight:400; letter-spacing:-.05em; line-height:1.5em; color:#505050;}
.greeting .cnt .tt {margin-bottom:95px; font-size:var(--fz20); font-weight:600; letter-spacing:-.05em; line-height:1.5em; color:#121212; text-align:center;}
.greeting .cnt .ceo {font-size:var(--fz19); font-weight:400; letter-spacing:-.05em; line-height:1.5em; color:#505050; text-align:right;}
.greeting .cnt .ceo strong {display:inline-block; margin-left:20px; font-weight:600; color:#121212;}
.greeting .img {width:50%;}

.vision-container {background:url('/images/sub/vision-bg.jpg') no-repeat 50% 100% / cover;}

.history-bnr {padding:0 85px; height:300px; background:url('/images/sub/history-bg.jpg') no-repeat 50% 50% /cover; color:#fff; display:flex; flex-direction:column; justify-content:center;}
.history-bnr h2 {margin-bottom:5px; font-size:var(--fz48); font-weight:700; letter-spacing:-.03em; line-height:1.4em;}
.history-bnr .t1 {margin-bottom:3px; font-size:var(--fz26); font-weight:800; letter-spacing:-.03em; line-height:1.4em;}
.history-bnr .t2 {font-size:var(--fz20); font-weight:400; letter-spacing:-.03em; line-height:1.8em;}
.history {padding:120px 87px 0; position:relative;}
.history .group {display:flex;}
.history .group .year {position:relative; width:149px; font-size:var(--fz32); font-weight:800; letter-spacing:-.05em; line-height:1em; color:var(--color-primary);}
.history .year:after {content:''; position:absolute; right:0; top:-.1em; width:40px; height:40px; margin-right:-20px; border-radius:100%; border:14px solid #dff2ff; background:var(--color-primary);}
.history .list {padding:0 0 70px 85px; position:relative; flex:1 1 auto; min-width:0; width:1%;}
.history .group:last-child .list {padding-bottom:0;}
.history .list:before {z-index:-1; content:''; position:absolute; left:0; top:0; bottom:0; width:1px; background:#ccc;}
.history .group:first-child .list:before {top:-150px;}
.history .list ul li {display:flex; font-size:var(--fz20); font-weight:400; letter-spacing:-.05em; line-height:1.4em; color:#505050;}
.history .list ul strong {min-width:39px; font-weight:800; color:var(--color-primary);}

.org {text-align:center; background:url('/images/sub/org-bg.png') no-repeat 50% 56%;}

.root_daum_roughmap {width:100% !important;}
.root_daum_roughmap .cont {display:none;}
.directions {margin-top:40px;}
.directions .address-info {margin-bottom:30px;}
.directions .address-info .comp {color:#193d7a; font-weight:600; margin-bottom:2px;}
.directions .address-info .addr {color:#242424; font-size:23px; font-weight:600; line-height:1.33em; letter-spacing:-.03em; margin-bottom:5px;}
.directions .address-info .etc {color:#454545;}
.directions .address-info .etc span {display:inline-block; margin-right:16px;}
.directions .address-info .etc span:last-child {margin-right:0;}
.directions .contact-info {border-top:1px solid #ddd; line-height:1.5em;}
.directions .contact-info dl {display:flex; padding:28px 0; border-bottom:1px solid #ddd;}
.directions .contact-info dt {width:180px; padding-left:30px; color:#333; font-size:var(--fz22); font-weight:500;}
.directions .contact-info dt svg {vertical-align:middle; margin:-.2em 15px 0 0;}
.directions .contact-info dt path {fill:#758baf;}
.directions .contact-info dd {flex:1 1 auto; min-width:0; width:1%; color:#333; font-size:var(--fz22);}

.project-head {margin-bottom:50px;}
.project-head .tt {font-size:var(--fz20); font-weight:800; line-height:1.4em; color:var(--color-primary);}
.project-head h2 {font-size:var(--fz32); font-weight:400; line-height:1.4em; letter-spacing:-.05em;}
.project-head h2 strong {font-weight:800;}

.project-cnt:not(:last-child) {margin-bottom:70px;}

.project-info .row {display:flex; margin:-3px;}
.project-info .col {padding:3px; display:flex; flex-direction:column; width:16.666%; text-align:center;}
.project-info.col-4 .col {width:25%;}
.project-info.col-5 .col {width:20%;}
.project-info .img {height:100%;position:relative; border-radius:6px; overflow:hidden;}
.project-info .img img {position:absolute; top:50%; left:0; transform:translateY(-50%); -ms-transform:translateY(-50%); -webkit-transform:translateY(-50%); width:100%; height:auto !important; max-width:100%; min-height:100%; object-fit:cover;}
.project-info .tit {margin-bottom:8px; display:flex; align-items:center; justify-content:center; border-radius:6px; height:44px; color:#fff; font-size:var(--fz22); font-weight:700; line-height:1.33em; letter-spacing:-.05em; background:#5daec9;}
.project-info .box {padding:0 3px; display:flex; flex-direction:column; justify-content:center; align-items:center; min-height:134px; background:#f2f2f2; border-radius:6px;}
.project-info .box .txt {font-size:var(--fz19); font-weight:400; letter-spacing:-.05em; color:#505050; line-height:1.4em;}
.project-info .box .txt strong {font-size:var(--fz20);}
.project-info.type2 .tit {font-weight:500; margin-bottom:0; border-radius:6px 6px 0 0;}
.project-info.type2 .box {border-radius:0 0 6px 6px;}
.project-info .box.type2 {padding:0 15px;}
.project-info .box.type2 .txt {display:flex; align-items:center; justify-content:center; min-height:60px; width:100%; border-bottom:1px dashed #e0e0e0;}
.project-info .box.type2 .txt:last-child {border-bottom:0;}
.project-info .em {font-size:1.2em;}
.project-info .bg1 {background:var(--color-primary) !important;}
.project-info .bg2 {background:#e8f3fb !important;}
.project-info .bg3 {background:#ff651a !important;}
.project-info .bg4 {background:#fcf3ee !important;}
.project-info .bg5 {background:#138fe3 !important;}
.project-info .bg6 {background:var(--color-primary) !important;}
.project-info .bg7 {background:#3266b0!important;}
.project-info .c1 {color:var(--color-primary) !important;}
.project-info .c2 {color:#004574 !important;}
.project-info.space .row {margin: -10px;}
.project-info.space .col {padding: 10px;}

.project-imgs {margin-top:27px;}
.project-imgs ul {display:flex; margin:0 -16px;}
.project-imgs ul li {width:33.333%; text-align:center; padding:0 16px;}
.project-imgs.col-1 ul li {width:100%;}
.project-imgs.col-2 ul li {width:50%;}

.table01 {margin-bottom:40px;}
.table01 table {width:100%; border-collapse:collapse; border-spacing:0; border-top:2px solid var(--color-primary);}
.table01 thead th {padding:10px; border-right:1px solid #ccc; border-bottom:1px solid var(--color-primary); font-size:var(--fz23); font-weight:600; line-height:1.4em; color:#121212; letter-spacing:-.05em; background:#c8e5fd;}
.table01 thead th:last-child {border-right:0;}
.table01 tbody th {padding:11px; border-bottom:1px solid #ccc; border-right:1px solid #ccc; font-size:var(--fz20); font-weight:600; line-height:1.4em; color:#121212; letter-spacing:-.05em; background:#f0f6fb;}
.table01 tbody td {padding:11px 11px 11px 70px; border-bottom:1px solid #ccc; font-size:var(--fz20); font-weight:400; line-height:1.4em; color:#505050; letter-spacing:-.05em;}
.table01 tbody td.center {padding:3px; text-align:center;}
.table01.type2 tbody th {padding:8px; background:#e9e9e9; font-weight:400; color:#505050;}
.table01.type2 tbody td {height:44px; padding-left:54px;}

.orderer-imgs ul {display:flex; margin:0 -10px;}
.orderer-imgs ul li {width:25.3%; padding:0 10px;}
.orderer-imgs ul li:first-child {width:49.4%;}
.orderer-imgs ul li img {width:100%;}

.guide {max-width:436px; margin:0 auto 130px;}
.guide h1 {margin-bottom:65px; text-align:center; font-size:var(--fz32); font-weight:700; line-height:1.3em; letter-spacing:-.03em;}

.process {margin-bottom:80px;}
.process ul {margin-bottom:40px;}
.process ul li {margin-bottom:6px; padding-left:.8em; text-indent:-.8em; font-size:var(--fz20); font-weight:400; letter-spacing:-.05em; line-height:1.5em; color:#505050;}
.process ul li:last-child {margin-bottom:0;}
.process .table01 {margin-bottom:0;}

.important .wrap {display:flex;}
.important .img {width:42.7%; margin-right:27px;}
.important .table01 {flex:1 1 auto; min-width:0; width:1%; margin-bottom:0;}