@charset "utf-8";
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap');

@font-face {
    font-family: 'NanumSquare';
    font-weight: 700;
    src: url('/public/font/NanumSquare/NanumSquareEB.eot');
    src: url('/public/font/NanumSquare/NanumSquareEB.eot?#iefix') format('embedded-opentype'),
         url('/public/font/NanumSquare/NanumSquareEB.woff') format('woff'),
         url('/public/font/NanumSquare/NanumSquareEB.ttf') format('truetype');
}
@font-face {
    font-family: 'NanumSquare';
    font-weight: 600;
    src: url('/public/font/NanumSquare/NanumSquareB.eot');
    src: url('/public/font/NanumSquare/NanumSquareB.eot?#iefix') format('embedded-opentype'),
         url('/public/font/NanumSquare/NanumSquareB.woff') format('woff'),
         url('/public/font/NanumSquare/NanumSquareB.ttf') format('truetype');
}
@font-face {
    font-family: 'NanumSquare';
    font-weight: 400;
    src: url('/public/font/NanumSquare/NanumSquareR.eot');
    src: url('/public/font/NanumSquare/NanumSquareR.eot?#iefix') format('embedded-opentype'),
         url('/public/font/NanumSquare/NanumSquareR.woff') format('woff'),
         url('/public/font/NanumSquare/NanumSquareR.ttf') format('truetype');
}
@font-face {
    font-family: 'NanumSquare';
    font-weight: 300;
    src: url('/public/font/NanumSquare/NanumSquareL.eot');
    src: url('/public/font/NanumSquare/NanumSquareL.eot?#iefix') format('embedded-opentype'),
         url('/public/font/NanumSquare/NanumSquareL.woff') format('woff'),
         url('/public/font/NanumSquare/NanumSquareL.ttf') format('truetype');
}

#site {
    padding-top: 101px;
    font-size: 16px;
    font-family: 'Inter', 'notokr', sans-serif;
    letter-spacing: -0.034em;
}

a,
button {
    transition: all ease-in-out .15s;
    -webkit-transition: all ease-in-out .15s;
    -moz-transition: all ease-in-out .15s;
    -ms-transition: all ease-in-out .15s;
    -o-transition: all ease-in-out .15s;
}

a,
a:hover,
a:focus {
    color: inherit;
}

p {
    line-height: 1.6em;
}

a[href^="mailto"] {
    color: inherit;
}

.btn.btn-primary {
    background-color: #005498;
    border-color: #005498;
}

.btn.btn-primary:hover,
.btn.btn-primary:focus {
    color: #005498;
    background: #fff;
}

h1, h2, h3, h4, h5, h6, p, li, td, dt, dd, figcaption {
    word-break: keep-all;
}

/* 불필요 항목 삭제 */
.navbar .caret{display:none;}

/* 상단 메뉴 */
.navbar-inverse{background:#fff;position:fixed;margin-bottom:0;border:0;border-top:5px solid #203763;box-shadow:0px 1px 12px rgba(0, 0, 0, 0.1);}

.navbar-inverse .navbar-brand img{height: 65px;margin-top: 0;}

.navbar-inverse .navbar-nav > li > a{font-size:17px;font-weight:500;color:#333;}
.navbar-inverse .navbar-nav > li > a:hover,.navbar-inverse .navbar-nav > li > a:focus{color:#005498;}

.navbar-inverse .navbar-nav .dropdown.open .dropdown-toggle,
.navbar-inverse .navbar-nav .dropdown.open:hover .dropdown-toggle,
.navbar-inverse .navbar-nav .dropdown.open:focus .dropdown-toggle{background:none;color:#005498;}

@media (max-width: 767px) {
 /*.navbar-inverse .navbar-toggle{border:1px solid #666;}*/
 .navbar-inverse .navbar-toggle{border:0;padding:16px 0;}
 .navbar-inverse .navbar-toggle .icon-bar{background-color:#333;transition:ease-in-out .15s all;opacity:1;position:relative;}
 .navbar-inverse .navbar-toggle:hover,.navbar-inverse .navbar-toggle:focus{background:none;border-color:#005498;}
 .navbar-inverse .navbar-toggle:hover .icon-bar,.navbar-inverse .navbar-toggle:focus .icon-bar{background-color:#005498;}
 .navbar-inverse .navbar-collapse, .navbar-inverse .navbar-form{border-color:transparent;}

 .navbar-inverse.open .navbar-toggle > .icon-bar:nth-of-type(1){transform:rotate(45deg);top:6px;}
 .navbar-inverse.open .navbar-toggle > .icon-bar:nth-of-type(2){opacity:0;}
 .navbar-inverse.open .navbar-toggle > .icon-bar:nth-of-type(3){transform:rotate(-45deg);top:-6px;}
}

@media (min-width: 768px) {
 .navbar-inverse .navbar-nav .dropdown-menu{left:50%;right:auto;background-color:rgba(0,0,0,.8);transform:translate(-50%,0);border-radius:0;border:none;padding:0;-webkit-box-shadow:0px 4px 8px rgba(0,0,0,.125);box-shadow:0px 4px 8px rgba(0,0,0,.125);
    animation-fill-mode: both;
    animation-duration: .4s;
    animation-name: fadeIn;}
 .navbar-inverse .navbar-nav .dropdown-menu>li>a{padding: 11px 20px;color:#fff;text-align:center;border-bottom: 1px solid rgba(255, 255, 255, 0.14);font-size: 15px;}
    .navbar-inverse .navbar-nav .dropdown-menu>li:last-child>a{border-bottom: 0;}
 .navbar-inverse .navbar-nav .dropdown-menu>li>a:hover,.navbar-inverse .navbar-nav .dropdown-menu>li>a:focus{background:#005498;}
.navbar-inverse .navbar-nav .dropdown-menu::before {
    content:'';
    display:block;
    position:absolute;
    width: 6px;
    height: 6px;
    background:#005da7;
    border-radius:50%;
    top: -20px;
    left: 50%;
    transform:translateX(-50%);
}
}

@media (min-width: 992px) {
 .navbar-inverse .navbar-right{margin-right:-30px;}
 .navbar-inverse .navbar-nav > li > a {padding:38px 27px;}   
}

/* 슬라이드 공통 */
.carousel-control{text-shadow:0px 2px 6px rgba(0, 0, 0, .125);transition:ease-in-out .15s all;}
.carousel-control.left .glyphicon::before{content:'\f053';font-family:'Font Awesome 5 Free';font-weight:900;}
.carousel-control.right .glyphicon::before{content:'\f054';font-family:'Font Awesome 5 Free';font-weight:900;}
.carousel-indicators li{width:12px;height:12px;background-color:rgba(255,255,255,.1);border:1px solid #fff;margin:0 8px;border-radius:0;transition:ease-in-out .15s all;}
.carousel-indicators li.active{width:12px;height:12px;background-color:#fff;margin:0 8px;box-shadow:0px 2px 6px rgba(0, 0, 0, .125);transform:rotate(45deg);}

.carousel-caption {text-shadow:none;text-align: left;}

@media (max-width: 767px) {
 .carousel-control{font-size:14px;}
 .carousel-indicators li, .carousel-indicators li.active{width:10px;height:10px;}
}

/* 푸터 */
#site footer{margin-top:0px;background-color: #333;color:#eee}
#site footer .footer-info{padding: 45px 0;}
#site footer .footer-info ul{position:relative;margin:0;padding:0;font-size:0}
#site footer .footer-info ul li{list-style:none;display:inline-block;font-size:14px;margin-right:15px;line-height:26px;color: #bfbfbf;}
#site footer .footer-info ul li.name {
    color: #fff;
}
#site footer .footer-info ul li.copy {
    font-size: 13px;
    color: #9b9b9b;
    letter-spacing: 0;
    display: block;
    line-height: 1.25em;
    margin-top: 5px;
}

/* 메인 페이지 */
#mainCarousel .carousel-inner .item{height: 670px;}
#mainCarousel .carousel-caption {
    top: 40%;
}
#mainCarousel .carousel-caption h1 {
    margin: 0 0 20px;
    font-size: 65px;
    font-weight: 500;
    letter-spacing: -0.06em;
}
#mainCarousel .carousel-caption p {
    font-size: 22px;
    font-weight: 300;
    letter-spacing: -0.045em;
}
@media (max-width: 767px) {
 #mainCarousel .carousel-control {display:none}
 #mainCarousel .carousel-inner .item{height:320px}
 #mainCarousel .carousel-inner .item::before {
    content: '';
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    position: absolute;
    background: #000;
    opacity: 0.4;
 }
 #mainCarousel .carousel-caption{top:48%;right:5%;left:5%;text-align:center}
 #mainCarousel .carousel-caption h1{font-size:38px}
 #mainCarousel .carousel-caption p{font-size:16px;}
}

#section_a684ec {
  padding: 20px 0;
}

#section_b53b3a {
  min-height: 400px;
}

#section_b53b3a .container {
  width: 100%;
  padding: 0;
}

.root_daum_roughmap {
  width: 100% !important;
  padding: 0 !important;
}

.root_daum_roughmap .map_border {
  display: none !important;
}
 
@media (min-width: 767px) {
  #section_a684ec div[class^="board_box_"] {
    width: 50%;
  }
}

.board_box_blog2 .row {
  margin-left: -5px;
  margin-right: -5px;
}

.board_box_blog2 .row > div[class^="col-"] {
  padding-left: 5px;
  padding-right: 5px;
}

.board_box_blog2 .inner {
  margin-top: 0;
  margin-bottom: 0;
}

.board_box_blog2 .inner .bottom {
  padding: 12px 10px;
}
  
.board_box_blog2 .inner .bottom .title {
  margin-bottom: 0;
}

.board_box_blog2 .inner .bottom .title a {
  font-size: 14px;
}
  
.board_box_blog2 .inner .bottom .info {
  display: none;
}
  
.board_box_blog2 .inner .top a .thumb {
  height: 100px;
}

/* 설계분야 */
.mainPage {
    background-color: #ffffff;
}
.mainPage section {
    padding: 100px 0;
}
.mainPage h2 {
    margin: 0 0 35px;
    font-size: 39px;
    font-weight: 700;
    color: #111;
    text-align: center;
}
.mainPage .box-field {
    position: relative;
    margin: 0;
    z-index: 0;
}
.mainPage .box-field::before {
    content: '';
    display: block;
    position: absolute;
    width: 90%;
    height: 1px;
    background: #dfe3e9;
    top: 50%;
    transform: translateY(-50%);
    left: 50px;
    z-index: -1;
}
.mainPage .box-field > .col {
    padding: 0;
    text-align: center;
}
.mainPage .box-field > .col .inner {
    height: 248px;
    padding-top: 73px;
    background: #ffffff;
    border: 1px solid #dfe3e9;
    transition: all ease-in-out .15s;
    margin: 0 20px;
    border-radius: 50%;
    position: relative;
}
.mainPage .box-field > .col .inner::before {
    content: '';
    display: block;
    position: absolute;
    width: 14px;
    height: 14px;
    background: #203763;
    border: 4px solid #d7deee;
    left: -7px;
    top: 50%;
    transform: translateY(-50%);
    border-radius: 50%;
}
.mainPage .box-field > .col.col1 .inner::before {
    display:none;
}
.mainPage .box-field > .col1 .inner {
    color: #fff;
    background: #203763;
    border-color: #203763;
}
.mainPage .box-field > .col:not(.col1) .inner:hover {
    background: #d7deee;
}
.mainPage .box-field > .col h3 {
    margin: 20px 0 0;
    font-size: 21px;
    letter-spacing: -0.045em;
}
.mainPage .box-field > .col i {
    padding-top: 10px;
    padding-bottom: 20px;
    font-size: 40px;
    color: #005498;
}
.mainPage .box-field > .col .txt {
    font-size: 17px;
    font-weight: 600;
    letter-spacing: -0.04em;
}
.mainPage .wrap-btn {
    margin-top: 30px;
    text-align: center;
}
.mainPage .wrap-btn > .btn {
    position: relative;
    padding: 11px 60px;
    padding-left: 40px;
    font-size: 16px;
    color: #fff;
    background: #005498;
    border: 1px solid #005498;
}
.mainPage .wrap-btn > .btn::before {
    content: '+';
    top: 5px;
    right: 35px;
    position: absolute;
    font-size: 1.4em;
    font-weight: 300;
}
.mainPage .wrap-btn > .btn:hover,
.mainPage .wrap-btn > .btn:focus {
    color: #005498;
    background: #fff;
}
.mainPage #section2 {
    background: #f5f5f5;
}
.mainPage #section1 video {
    margin-top: 25px;
    border: 1px solid #eee;
}

/*************** 서브 시작 ***************/
/* 공통 스타일 */
.navbar-inverse + .container {
    width: 100%;
    padding: 0;
}
.subPage > .pageTop {
    height: 250px;
    position: relative;
    color: #fff;
    text-align: center;
    background: #333 url(/public/img/sub/bg_sub_top.jpg) no-repeat center / cover;
}
.subPage > .pageTop::before {
    content: '';
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    position: absolute;
    display: block;
    background: #000;
    opacity: 0.4;
}
.subPage > .pageTop > .container {
    height: 100%;
    position: relative;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
}
.subPage > .pageTop h2 {
    margin: 10px 0 0;
    font-size: 42px;
    font-weight: 700;
    font-family: 'NanumSquare', 'notokr', sans-serif;
    letter-spacing: -0.045em;
}

/* Breadcrumb */
.subPage .breadcrumb {
    bottom: 15px;
    right: 15px;
    position: absolute;
    margin: 0;
    padding: 0;
    font-size: 13px; 
    background-color: transparent;
    opacity: 0.8;
}

.subPage > .contents {
    padding: 90px 0 130px;
}

.space-bottom {
    margin-bottom: 100px;
}

.page-title {
    text-align: center;
}

.page-title .en {
    margin-bottom: 20px;
    font-size: 18px;
    font-weight: 300;
    color: #222;
    letter-spacing: 0.02em;
    line-height: 1em;
    opacity: 0.7;
}

.title-lv-1 {
    position: relative;
    margin: 0 0 90px;
    font-size: 42px;
    font-weight: 700;
    font-family: 'NanumSquare', 'notokr', sans-serif;
    color: #111;
    line-height: 1;
    letter-spacing: -0.045em;
}
.title-lv-2 {
    position: relative;
    margin: 0 0 30px;
    padding-left: 40px;
    font-size: 32px;
    font-weight: 300;
    color: #111;
    line-height: 1;
    letter-spacing: -0.056em;
}
.title-lv-2::before {
    content: "\f773";
    top: -1px;
    left: -2px;
    position: absolute;
    font-family: 'Font Awesome 6 Free';
    font-weight: 900;
    color: #203763;
    transform: scaleX(0.8);
}
.title-lv-num {
    position: relative;
    margin: 0 0 24px;
    padding-left: 32px;
    font-size: 25px;
    font-weight: 700;
    color: #203763;
    line-height: 1;
}
.title-lv-num > .num {
    top: 0;
    left: 0;
    width: 23px;
    height: 23px;
    position: absolute;
    padding-top: 3px;
    font-size: 0.7em;
    font-weight: 600;
    color: #fff;
    text-align: center;
    background-color: #203763;
}

.list-default {
    margin: 0;
    padding-left: 0;
    list-style-type: none;
}
.list-default > li {
    position: relative;
}
.list-num > li {
    padding-left: 30px;
}
.list-num > li+li {
    margin-top: 15px;
}
.list-num > li .num {
    top: 1px;
    left: 0;
    width: 23px;
    height: 23px;
    position: absolute;
    padding-top: 1px;
    font-size: 14px;
    font-weight: 600;
    color: #fff;
    text-align: center;
    background-color: #5d7fbf;
    border-radius: 50%;
}
.list-num > li strong {
    font-size: 17px;
}
.list-style-1 > li {
    padding-left: 12px;
    letter-spacing: 0;
    font-size: 15px;
}
.list-style-1 > li::before {
    content: '';
    top: 9px;
    left: 0;
    width: 4px;
    height: 4px;
    position: absolute;
    background: #222;
    border-radius: 30px;
}
.list-style-1 > li+li {
    margin-top: 3px;
}

table.tb-default {
    margin-bottom: 0px;
    border: none;
}
table.tb-default>thead>tr>th,
table.tb-default>tbody>tr>th,
table.tb-default>tbody>tr>td {
    padding: 16px;
    border-bottom: 1px solid #ddd;
    vertical-align: middle;
}
table.tb-default>thead>tr>th {
    text-align: center;
}
table.tb-style-1>thead>tr>th,
table.tb-style-1>tbody>tr>th,
table.tb-style-1>tbody>tr>td,
table.tb-style-1>tfoot>tr>th,
table.tb-style-1>tfoot>tr>td {
    padding: 10px;
    font-size: 14px;
    text-align: center;
}
table.tb-style-1>thead>tr>th {
    font-size: 15px;
    font-weight: 500;
    color: #fff;
    background: #264595;
}
table.tb-style-1>tbody>tr>th {
    font-size: 15px;
    font-weight: 500;
    background: #fffdf0;
}
table.tb-style-1>tfoot>tr>th,
table.tb-style-1>tfoot>tr>td {
    font-size: 15px;
    font-weight: 500;
    color: #243666;
    background: #eff2f9;
}

/* 인사말 (페이지) */
#greeting .image {
    padding-top: 8px;
}
#greeting .image img {
    width: 260px;
    box-shadow: 8px 8px 0 #d7e0f6;
}
#greeting .text {
    padding-left: 42px;
}
#greeting .text p {
    margin-bottom: 15px;
    letter-spacing: -0.04em;
    line-height: 1.45em;
    color: #696969;
}
#greeting .text h3 {
    margin: 0 0 50px;
    font-size: 26px;
    font-weight: 600;
    color: #005498;
    line-height: 1.45em;
    letter-spacing: -0.055em;
    position: relative;
}
#greeting .text h3::after {
    content: '';
    display: block;
    position: absolute;
    width: 50px;
    height: 1px;
    background: #cbcbcb;
    bottom: -27px;
}
#greeting .from {
    margin-top: 15px;
    font-weight: 600;
    text-align: right;
}
#greeting .from > .name {
    padding-left: 10px;
    font-size: 19px;
}

/* 오시는길 (페이지) */
ul.list-contact {
    padding: 35px;
    text-align: right;
    background: #f5f5f5;
}
ul.list-contact > li {
    display: inline-block;
    letter-spacing: 0em;
}
ul.list-contact > li+li {
    margin-left: 25px;
}
ul.list-contact > li.name {
    float: left;
    margin-bottom: -65px;
    font-size: 24px;
    font-weight: 700;
    color: #203764;
    line-height: 1.2em;
    text-align: left;
}
ul.list-contact > li.name .en {
    font-size: 16px;
    font-weight: 300;
    color: #203764;
}
ul.list-contact > li.addr {
    margin-bottom: 10px;
    font-size: 17px;
}
ul.list-contact > li.addr i {
    top: 3px;
    left: -18px;
    color: #385fab;
    position: absolute;
}
ul.list-contact > li .tit {
    position: relative;
    margin-right: 7px;
    font-weight: 700;
    font-size: 0.9em;
    color: #999;
}
ul.list-contact > li .tit::after {
    content: '';
    right: -5px;
    bottom: 3px;
    width: 3px;
    height: 3px;
    position: absolute;
    background: #999;
    border-radius: 30px;
}

/* 설계분야 (페이지) */
#design_field #section1 {
    margin-bottom: 100px;
}
.row-design-field .box-text {
    display: flex;
    padding: 40px 40px 20px;
    padding-left: 0;
    background: #fff;
    border-radius: 5px;
    position: relative;
    margin: 10px;
}
.row-design-field .box-text::before {
    content: '';
    top: -10px;
    left: -10px;
    display: block;
    width: calc(100% + 20px);
    height: calc(100% + 20px);
    position: absolute;
    background: url(/public/img/sub/line-bg.png) repeat center;
    z-index: -1;
}
.row-design-field .box-text .tit {
    flex-basis: 30%;
    text-align: center;
}
.row-design-field .box-text .tit i {
    margin-bottom: 15px;
    padding: 20px;
    font-size: 30px;
    color: #fff;
    background: #203763;
    border: 5px solid #d9dee8;
    border-radius: 50%;
}
.row-design-field .box-text .tit h3 {
    margin: 0 0 30px;
    font-weight: 600;
    font-size: 21px;
    color: #203763;
}
.row-design-area > .col+.col {
    margin-top: 120px;
}
.row-design-area .row+.row {
    margin-top: 70px;
}
.row-design-area h5 {
    position: relative;
    margin: 0 0 30px;
    padding-left: 16px;
    font-size: 20px;
    font-weight: 700;
    color: #111;
    line-height: 1.2em;
}
.row-design-area h5::before {
    content: '';
    top: 8px;
    left: 0;
    width: 8px;
    height: 8px;
    position: absolute;
    background-color: #a1b5e7;
    border-radius: 50px;
}
.row-design-area .images {
    width: calc(66.66666667% - 15px);
    margin-right: 15px;
    padding: 20px 5px;
    background: #f6f6f6;
    margin-top: 50px;
    border-radius: 5px;
}
.row-design-area .images > div:first-child {
    padding-right: 10px;
}
.row-design-area .images > div:last-child {
    padding-left: 10px;
}
.row-design-area .list-process {
    display: flex;
    margin: 0 -20px;
}
.row-design-area .list-process > li {
    flex-basis: 25%;
    padding: 0 20px;
}
.row-design-area .list-process > li+li::before {
    content: "\ef05";
    top: 50%;
    left: -20px;
    position: absolute;
    font-size: 42px;
    font-weight: 600;
    font-family: "Phosphor";
    color: #8f8f8f;
    transform: translateY(-50%);
}
.row-design-area .list-process > li .inner {
    height: 100%;
    padding: 20px;
    background: #f4f5f8;
    border-radius: 5px;
}
.row-design-area .list-process > li h6 {
    margin: -20px -20px 20px;
    padding: 13px 12px;
    font-size: 16px;
    font-weight: 500;
    color: #fff;
    letter-spacing: 0;
    background: #203763;
    border-radius: 5px 5px 0px 0px;
}
.row-design-area .list-process > li img+img {
    margin-top: 10px;
}
.row-design-area .list-process > li img+.caption {
    margin: 7px 0 0;
    font-size: 0.75em;
    letter-spacing: 0.01em;
    text-align: right;
}
.row-design-area .list-process > li ul {
    margin-top: 17px;
    font-size: 14px;
}
.row-design-area .col01 .images > div:first-child img {
    padding-top: 80px;
}
.row-design-area .col03 .list-process > li {
    flex-basis: 29%;
}
.row-design-area .col03 .list-process > li:nth-child(2) {
    flex-basis: 42%;
}

/* 주요 실적 (페이지) */
#performance > .contents {
    padding: 0;
}
#performance section {
    padding: 100px 0;
}
#performance section:last-child {
    padding-bottom: 120px;
}
#performance #section2 {
    background: #f5f5f5;
}
.row-perform-summary+.row-perform-summary {
    margin-top: 80px;
}
.row-perform-summary .image {
    margin-bottom: 20px;
    padding: 0 10px;
}
.row-perform-summary .image > .bottom {
    padding: 15px;
    color: #203764;
    background: #eff2f9;
}
.row-perform-summary .image .tit {
    margin: 0 0 6px;
    font-size: 16px;
    font-weight: 600;
    letter-spacing: 0;
}
.row-perform-summary .image .period {
    font-size: 14px;
    font-weight: 600;
    color: #747474;
    letter-spacing: 0;
}
.row-perform-summary .report.col-top {
    margin-bottom: 60px;
}
.row-perform-summary .report .tit {
    margin: 0 0 20px;
    font-size: 28px;
    font-weight: 300;
    color: #203763;
    line-height: 1;
}
.row-perform-summary .report .tit em {
    font-weight: 700;
    font-style: normal;
    color: #5d7fbf;
}
.row-perform-summary .report.col-bottom table > thead > tr > th {
    padding: 6px 2px;
}
.row-perform-summary .report.col-bottom table > tbody > tr > th {
    width: 7%;
}
.row-perform-summary .report.col-bottom table > tbody > tr > td {
    width: 6.444%;
}
.row-perform-summary .report.col-bottom table > tbody > tr > td:nth-child(2) {
    width: 26%;
}
.row-perform-summary .report.col-bottom table > tbody > tr > td:nth-child(3) {
    width: 9%;
}
.row-perform-detail > .col+.col {
    margin-top: 60px;
}
.row-perform-detail .inner {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    padding: 40px 30px;
    background: #fff;
}
.row-perform-detail .top {
    flex-basis: 100%;
    margin-bottom: 30px;
    padding-bottom: 25px;
}
.row-perform-detail .top::after {
    content: '';
    bottom: 0;
    left: 15px;
    width: calc(100% - 30px);
    position: absolute;
    border-bottom: 1px solid #ddd;
}
.row-perform-detail .top .tit {
    margin: 0 0 9px;
    font-size: 23px;
    font-weight: 700;
    color: #203763;
    display: flex;
    align-items: center;
    letter-spacing: 0;
}
.row-perform-detail .top .period {
    position: relative;
    padding-left: 30px;
    font-size: 16px;
    font-weight: 500;
    color: #333;
    letter-spacing: 0;
}
.row-perform-detail .top .period::before {
    content: '';
    top: -2px;
    left: 15px;
    height: 18px;
    position: absolute;
    border-left: 1px solid #ccc;
    transform: rotate(22deg);
}
.row-perform-detail .top .type {
    padding-bottom: 0;
    font-size: 17px;
    font-weight: 500;
    color: #707070;
}
.row-perform-detail .image {
    padding-right: 20px;
}
.row-perform-detail .image.full {
    padding: 0;
}
.row-perform-detail .detail {
    padding-left: 20px;
}
.row-perform-detail .detail ul {
    margin-bottom: 30px;
    padding: 25px;
    background: #f5f5f5;
}
.col-md-12.col.col06 .list-default.list-style-1, .col-md-12.col.col07 .list-default.list-style-1, 
.col-md-12.col.col08 .list-default.list-style-1, .col-md-12.col.col09 .list-default.list-style-1 {
    margin-bottom: 0;
}
.row-perform-detail .detail img+img {
    margin-top: 30px;
}
.row-perform-detail .col01 img,
.row-perform-detail .col02 img,
.row-perform-detail .col03 img {
    width: 100%;
}
.row-perform-detail .col01 .image img,
.row-perform-detail .col02 .image img {
    height: 618px;
}
.row-perform-detail .col01 .detail img,
.row-perform-detail .col02 .detail img,
.row-perform-detail .col03 .detail img {
    height: 224px;
}
.row-perform-detail .col03 .image img {
    height: 500px;
}
.row-perform-detail .col06 img {
    width: 100%;
    height: 250px;
}
.row-perform-detail .col07 img {
    width: 100%;
    height: 210px;
}
.row-perform-detail .col08 img {
    width: 100%;
    height: 160px;
}
.row-perform-detail .col13 img {
    width: 100%;
    height: 460px;
}

/*********** 모바일 최적화 시작 ***********/
@media (max-width: 1199px) { /* Small·Medium·Large devices */
    .mainPage .box-field{margin:-5px}
    .mainPage .box-field::before{display:none}
    .mainPage .box-field > .col{padding:5px}
    .mainPage .box-field > .col .inner::before{display:none}
}
@media (max-width: 767px) { /* Small devices (col-xs-*) 모바일 */
    #site{padding-top:67px;font-size:15px}
    p{line-height:1.5em}

    .navbar-inverse .navbar-brand img{height:40px;margin-top:-4px}
    .navbar-inverse .navbar-nav{margin:0 -15px}
    .navbar-inverse .navbar-nav > .open{background-color:#f6f6f6}
    .navbar-inverse .navbar-nav > li > a{padding:10px 15px;font-size:16px}
    .navbar-inverse .navbar-nav > li > a:hover,
    .navbar-inverse .navbar-nav > li > a:focus{color:#005498}
    .navbar-inverse .navbar-nav .dropdown.open .dropdown-toggle,
    .navbar-inverse .navbar-nav .dropdown.open:hover .dropdown-toggle,
    .navbar-inverse .navbar-nav .dropdown.open:focus .dropdown-toggle{color:#fff !important;background:#005498}
    .navbar-inverse .navbar-nav .dropdown.open .dropdown-toggle .caret,
    .navbar-inverse .navbar-nav .dropdown.open:hover .dropdown-toggle .caret,
    .navbar-inverse .navbar-nav .dropdown.open:focus .dropdown-toggle .caret{border-top-color:#fff}
    .navbar-inverse .navbar-nav > .open .dropdown-menu{padding:10px 0}
    .navbar-inverse .navbar-nav > .open .dropdown-menu > li > a{padding:5px 25px;font-size:15px;color:#111}
    .navbar-inverse .navbar-nav > .open .dropdown-menu > li > a:hover,
    .navbar-inverse .navbar-nav > .open .dropdown-menu > li > a:focus{font-weight:600;color:#111}

    .mainPage section{padding:60px 0}
    .mainPage h2{margin:0 0 25px;font-size:33px}
    .mainPage .box-field > .col .inner{width:100%;height:130px;margin:0;padding:15px 12px;border-radius:10px}
    .mainPage .box-field > .col1 .inner{padding-top:18px}
    .mainPage .box-field > .col h3{margin:17px 0 0;font-size:16px}
    .mainPage .box-field > .col .txt{font-size:14px}
    .mainPage .wrap-btn > .btn{padding:10px 52px 10px 40px;font-size:15px}

    #site footer .footer-info{padding:30px 0}
    #site footer .footer-info ul li{font-size:11px;margin-right:12px;line-height:20px}
    #site footer .footer-info ul li.copy{font-size:10px}

    .title-lv-1{margin:0 0 55px;font-size:38px}
    .title-lv-2{margin:0 0 25px;padding-left:33px;font-size:28px}
    .title-lv-2::before{top:0}
    .title-lv-num{margin:0 0 20px;padding-left:29px;font-size:23px}
    .title-lv-num > .num{width:21px;height:21px}
    table.tb-style-1 > thead > tr > th,
    table.tb-style-1>tbody>tr>th,
    table.tb-style-1>tbody>tr>td,
    table.tb-style-1>tfoot>tr>th,
    table.tb-style-1 > tfoot > tr > td{padding:8px;font-size:13px}
    table.tb-style-1 > thead > tr > th{font-size:14px}
    table.tb-style-1 > tbody > tr > th{font-size:14px}

    .subPage > .pageTop{height:200px}
    .subPage > .pageTop h2{font-size:38px}
    .subPage .breadcrumb{font-size:11px}
    .subPage > .contents{padding:60px 0 80px}
    .page-title .en{margin-bottom:15px;font-size:16px}

    #greeting .image img{width:230px}
    #greeting .text{padding-left:15px}
    #greeting .text h3{margin:50px 0 35px;font-size:23px}
    #greeting .text h3::after{bottom:-17px;width:45px}
    #location .root_daum_roughmap{height:300px}
    #design_field #section1{margin-bottom:60px}
    ul.list-contact{padding:25px 20px;text-align:left}
    ul.list-contact > li{margin-right:6px}
    ul.list-contact > li+li{margin-left:0}
    ul.list-contact > li.name{margin-bottom:15px;font-size:22px;line-height:1.1em}
    ul.list-contact > li.name .en{font-size:15px}
    ul.list-contact > li.addr{padding-left:18px;font-size:16px}
    ul.list-contact > li.addr i{left:0}
    .row-design-field .box-text{flex-wrap:wrap;margin:10px 15px;padding:30px 25px}
    .row-design-field .box-text .tit{flex-basis:100%}
    .row-design-area > .col+.col{margin-top:60px}
    .row-design-area .row+.row{margin-top:45px}
    .row-design-area h5{margin:0 0 25px;padding-left:14px;font-size:18px}
    .row-design-area h5::before{top:6px;width:7px;height:7px}
    .row-design-area .images{width:calc(100% - 30px);margin-top:30px;margin-left:15px;padding:15px 0}
    .row-design-area .images > div+div{padding-top:15px}
    .row-design-area .images > div:first-child{padding-right:15px}
    .row-design-area .images > div:last-child{padding-left:15px}
    .row-design-area .col01 .images > div:first-child img{padding-top:0}
    .row-design-area .list-process{flex-wrap:wrap;margin:0 -15px}
    .row-design-area .list-process > li{flex-basis:100% !important;padding:0 15px}
    .row-design-area .list-process > li+li{margin-top:40px}
    .row-design-area .list-process > li+li::before{top:-50px;left:50%;transform:translateX(-50%) rotate(90deg)}
    .row-design-area .list-process > li img{max-height:300px}
    #performance section{padding:60px 0}
    #performance section:last-child{padding-bottom:80px}
    .row-perform-summary+.row-perform-summary{margin-top:60px}
    .row-perform-summary .image{padding:0 15px}
    .row-perform-summary .report.col-top{margin-bottom:40px}
    .row-perform-summary .report .tit{margin:0 0 18px;font-size:24px}
    .row-perform-detail > .col+.col{margin-top:30px}
    .row-perform-detail .inner{padding:25px 5px}
    .row-perform-detail .top{margin-bottom:20px;padding-bottom:15px}
    .row-perform-detail .top .tit{flex-wrap:wrap;font-size:21px}
    .row-perform-detail .top .period{display:inline-block;margin-top:5px;padding-left:15px;font-size:15px}
    .row-perform-detail .top .period::before{top:2px;left:5px;height:11px}
    .row-perform-detail .top .type{font-size:15px}
    .row-perform-detail .image{flex-basis:100%;padding-right:15px}
    .row-perform-detail .image:not(.full) > div[class^='col']{padding:0}
    .row-perform-detail .image > div[class^='col']+div{margin-top:15px}
    .row-perform-detail .col01 .image img,
    .row-perform-detail .col02 .image img{height:360px}
    .row-perform-detail .col03 .image img{height:280px}
    .row-perform-detail .col07 img{height:270px}
    .row-perform-detail .detail{flex-basis:100%;padding-top:35px;padding-left:15px}
    .row-perform-detail .detail ul{margin-bottom:20px;padding:20px}
    .row-perform-detail .detail img+img{margin-top:15px}
    .row-perform-detail .col01 .detail img,
    .row-perform-detail .col02 .detail img,
    .row-perform-detail .col03 .detail img{height:140px}
    .row-perform-detail .col13 img{height:260px}

    .member_wrapper{padding-top:60px;padding-bottom:100px}
}
@media (min-width: 768px) and (max-width: 1199px) { /* Medium·Large devices */
    #mainCarousel .carousel-caption{top:45%;text-align:center}
    .mainPage .box-field > .col .inner{width:100%;height:180px;margin:0;padding-top:40px;border-radius:10px}
    .row-design-area .list-process{flex-wrap:wrap}
    .row-design-area .list-process > li{flex-basis:50%;margin-bottom:30px}
    .row-perform-summary+.row-perform-summary .image > .bottom{min-height:92px}
}
/************ 모바일 최적화 끝 ************/