.board_output {
    background: none;
}
.board_output a:link {
    font-family: 'pretendard', 'Noto Sans KR', 'Roboto', sans-serif !important;
    color: #666 !important;
    margin: 0 !important;
    padding: 0 !important;
    font-size: 15px !important;
    line-height: 180% !important;
}

.youtube-wrap {
    position: relative;
    width: 100%;
    padding-bottom: 56.25%;
}
.player {
    position: absolute;
    width: 100%;
    height: 100%;
    background: #000;
}

.more-btn a {
    display: block;
    border: 1px solid #0669bf;
    margin-top: 30px;
    padding: 5px;
    text-align: center;
    color: #0669bf;
    text-transform: uppercase;
}
.more-btn a:hover {
    background: #0669bf;
    color: #fff;
}

.sub_nav {
    margin-bottom: 50px;
}
.sub_nav li {
    width: 50%;
}
.sub_nav a {
    display: block;
    padding: 10px;
    background: #eee;
    border: 1px solid #fff;
    font-size: 1.1em;
    letter-spacing: -0.02em;
    font-weight: 500;
}
select {
    height: 37px !important;
    width: 100%;
    padding: 5px;
    cursor: pointer;
    border-color: #ddd;
}

@media (max-width: 768px) {
    .sub_nav ul {
        flex-wrap: wrap;
    }
}

.sub_nav li:hover a,
#snav01 li:nth-child(1) a,
#snav02 li:nth-child(2) a,
#snav03 li:nth-child(3) a,
#snav04 li:nth-child(4) a,
#snav05 li:nth-child(5) a,
#snav06 li:nth-child(6) a,
#snav07 li:nth-child(7) a,
#snav08 li:nth-child(8) a,
#snav09 li:nth-child(9) a,
#snav10 li:nth-child(10) a {
    background: #0669bf;
    color: #fff;
}

@media screen and (max-width: 575px) {
    .sub_nav a {
        padding: 5px;
        font-size: 1em;
    }
}

/*서브 영역 타이틀*/
.subarea {
    padding: 80px 0;
}
.subarea .container {
    max-width: 1150px;
}

.sub_tit_s1 {
    color: #000;
    font-size: 32px;
    display: block;
    margin-bottom: 15px;
    border-bottom: 1px solid #999;
    padding-bottom: 15px;
}
.sub_tit_s1 span {
    position: relative;
    display: block;
    width: 35px;
    height: 4px;
    background: #ddd;
    margin-bottom: 4px;
}
.sub_tit_s1 span::before {
    content: '';
    width: 10px;
    height: 100%;
    background: #0669bf;
    display: block;
    position: absolute;
    left: 0;
    top: 0;
}
.shtitle .sub_tit_s1 h2 {
    font-weight: 400;
    font-size: 32px;
    line-height: 1.5;
}

/*서브 영역 내용*/
.sub-cont {
    padding: 30px 10px;
    letter-spacing: -0.02em;
    word-break: keep-all;
}
.sub-cont h3 {
    color: #222;
    font-size: 2rem;
    line-height: 1.8;
    display: inline-block;
}
.sub-cont h3 strong {
    color: #0669bf;
}
.sub-cont h4 {
    color: #333;
    font-size: 1.2em;
    font-weight: 500;
    line-height: 1.8;
    margin-bottom: 15px;
    letter-spacing: -0.05em;
}
.sub-cont p {
    color: #444;
    font-size: 16px;
    line-height: 1.5;
    margin-bottom: 15px;
}
.sub-cont p:last-child {
    margin-bottom: 0;
}

.sub-cont h3 span {
    position: relative;
}
.sub-cont h3 span::before {
    content: '';
    position: absolute;
    top: 2px;
    right: -20px;
    width: 10px;
    height: 10px;
    border-radius: 100%;
    background: #0669bf;
}
.product-divs .container {
    position: relative;
}
#search_display1 input {
    width: 100% !important;
}
#search_display1 {
    margin: 0 10px !important;
}
.est_btn_cell {
    width: 65px !important;
}

@media (max-width: 768px) {
    .sub-cont h3 {
        font-size: 1.8rem;
        word-break: keep-all;
    }
    .sub-cont h3 span {
        display: inline-block;
    }
    .shtitle .sub_tit_s1 h2 {
        font-size: 2rem;
    }
    .sub-cont p {
        font-size: 1em !important;
    }
    .subarea {
        padding: 50px 0;
    }
}

@media (max-width: 575px) {
    .subarea {
        padding: 50px 0;
    }
    .sub-cont {
        padding: 10px 0px;
    }
    .sub-cont h3 {
        font-size: 1.5rem;
        line-height: 1.5;
    }
    .sub-cont h3 span::before {
        display: none;
    }
    .sub-cont h4 {
        font-size: 1.3rem;
        word-break: keep-all;
        line-height: 1.5;
        margin-bottom: 5px;
    }

    hr.gap30px {
        height: 20px !important;
    }
}

/*회사소개 > 인사말*/
.sub-cont .sign {
    margin-top: 30px;
}
.sub-cont .sign span {
    font-family: 'KOTRA_SONGEULSSI' !important;
    font-size: 1.5em;
    color: #333;
    padding-left: 15px;
    letter-spacing: 0.5em;
}

/*회사소개 > 연혁*/

/*연혁-기본*/
.his_title {
    width: 200px;
    height: 200px;
    display: flex;
    justify-content: center;
    align-items: center;
    margin: 20px auto 0 auto;
    text-align: center;
    border-radius: 50%;
    position: relative;
    background: linear-gradient(#0680c7, #00588b);
    color: #fff;
}
.his_title::after {
    content: '';
    width: 230px;
    height: 230px;
    border-radius: 50%;
    border: 1px dashed #999;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    display: block;
    position: absolute;
    transition: 0.3s all;
}
.his_title h2 {
    font-size: 26px;
    font-weight: 600;
}
.his_list {
    position: relative;
    width: 100%;
    padding-top: 50px;
}
.his_list::before {
    content: '';
    position: absolute;
    height: 100%;
    width: 2px;
    top: 0;
    left: 50%;
    background-color: #333;
}
.his_list ul {
    margin: 0 auto !important;
    padding: 0 !important;
}
.his_list ul li {
    margin-bottom: 50px;
    list-style-type: none;
    display: flex;
    flex-direction: row;
    align-items: center;
}
.his_point {
    min-width: 15px;
    height: 15px;
    background-color: #fff;
    border-radius: 100%;
    z-index: 2;
    border: 3px #0669bf solid;
    position: absolute;
    left: 50%;
    margin-left: -6px;
    transition: all 0.5s;
}
.his_list ul li:hover .his_point {
    background: #0669bf;
}
.his_list h3 {
    margin-bottom: 0px !important;
    font-family: 'SpoqaHanSans' !important;
    color: #0669bf;
    font-weight: 400;
}
.his_list ul li .his_content {
    width: 45%;
}
.his_list ul li .date {
    width: 50%;
    padding: 0 20px;
    font-weight: normal;
}
.his_list p {
    margin-bottom: 0;
    font-size: 16px !important;
}
.h_no {
    display: inline-block;
    color: #0669bf;
    font-weight: 600;
    vertical-align: top;
}
.his_list ul li:nth-child(odd) .his_content .h_no {
    padding-left: 10px;
    float: right;
}
.h_cons {
    display: inline-block;
    padding-left: 0px;
}
.h_cons br {
    display: inline-block !important;
}

/*연혁 좌측 정렬*/
.his_list ul li:nth-child(odd) {
    text-align: right;
}
.his_list ul li:nth-child(odd) .his_content {
    padding-left: 0;
}
.his_list ul li:nth-child(odd) .date {
    padding-right: 0;
}

/*연혁 우측 정렬*/
.his_list ul li:nth-child(even) .his_content {
    padding-right: 0;
}
.his_list ul li:nth-child(even) .his_content .h_no {
    padding-right: 10px;
}
.his_list ul li:nth-child(even) .date {
    padding-left: 0;
}
.his_list ul li:nth-child(even) {
    flex-direction: row-reverse;
}

@media (max-width: 575px) {
    /*
    .his_point,
    .his_list::before{left:0;}
*/
    .his_list ul li {
        position: relative;
    }
    .his_point {
        top: -6px;
    }
    .his_list ul li .his_content {
        width: 96%;
        margin: 0 auto;
        padding: 15px 20px !important;
        background: #fff;
        border: 1px solid #ddd;
    }
    .his_list ul li:nth-child(odd) {
        text-align: left;
    }
    .his_list ul li:nth-child(even) {
        flex-direction: row;
    }
    .his_list ul li:nth-child(odd) .his_content .h_no {
        padding-left: 0px;
        padding-right: 10px;
        float: inherit;
    }
}

@media (max-width: 480px) {
    .h_cons {
        display: block;
    }
    .h_cons {
        padding-left: 0;
        letter-spacing: -0.02em;
    }
}

/*연혁-테이블스타일*/
.cp-history {
    width: 100%;
    margin: 30px auto 30px;
    max-width: 700px;
}
.cp-history h2 {
    color: #0669bf;
    font-weight: 600;
    font-size: 2em;
    margin: 0 auto 10px;
}
.cp-history .ul-history {
    padding: 30px !important;
    background: #f5f5f5;
    border-top: 2px solid #0669bf;
}
.cp-history .ul-history li {
    padding: 5px 0;
    list-style: none !important;
}
.cp-history .ul-history li i {
    font-weight: 600;
    display: inline-block;
    width: 40px;
    font-style: normal;
    color: #222;
}

@media all and (max-width: 575px) {
    .cp-history .ul-history {
        padding: 15px !important;
    }
}

/*연혁-말풍선스타일*/
.his-timeline {
    max-width: 700px;
    margin: 0 auto;
}
.his-timeline .sub-timeline {
    list-style: none;
    margin: 0 0 0 50px;
    padding: 0 0 40px 100px;
    border-left: 1px solid #0669bf;
}
.his-timeline .sub-timeline > li {
    padding: 30px;
    position: relative;
    box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.15);
    background: #f7f7f7;
}
.his-timeline .sub-timeline > li::before {
    display: block;
    content: '';
    width: 20px;
    height: 20px;
    transform: rotate(45deg);
    position: absolute;
    left: -10px;
    top: 42px;
    background: rgb(247, 247, 247);
    background: -moz-linear-gradient(
        225deg,
        rgba(247, 247, 247, 1) 40%,
        rgba(221, 221, 221, 1) 100%
    );
    background: -webkit-linear-gradient(
        225deg,
        rgba(247, 247, 247, 1) 40%,
        rgba(221, 221, 221, 1) 100%
    );
    background: linear-gradient(
        225deg,
        rgba(247, 247, 247, 1) 40%,
        rgba(221, 221, 221, 1) 100%
    );
}
.his-timeline .sub-timeline li .tit h3 {
    font-size: 22px;
    color: #fff;
    position: absolute;
    left: -146px;
    background: #0669bf;
    padding: 10px 18px;
    line-height: 1;
    margin: 0;
}
.his-timeline .sub-timeline li .desc {
}
.his-timeline .sub-timeline li .desc ul {
    margin: 0;
    padding: 0;
    list-style: none;
}
.his-timeline .sub-timeline li .desc ul li {
}
.his-timeline .sub-timeline li .desc ul li span {
    font-weight: bold;
    display: block;
    border-top: 1px solid #ddd;
    padding-top: 15px;
    margin-top: 15px;
}
.his-timeline .sub-timeline li .desc ul li:first-child span {
    border-top: none;
    padding-top: 0;
    margin-top: 0;
}
.his-timeline .sub-timeline li .desc ul li p {
    padding-left: 16px;
    margin-bottom: 10px;
    line-height: 1;
}
.his-timeline .sub-timeline li .desc ul li p::before {
    width: 4px;
    height: 4px;
    display: block;
    content: '';
    background: #999;
    transform: rotate(45deg);
    position: relative;
    left: -15px;
    top: 11px;
}

@media all and (max-width: 575px) {
    .his-timeline .sub-timeline {
        margin: 0;
        margin-left: 15px;
        padding: 0 0 30px 45px;
    }
    .his-timeline .sub-timeline > li {
        padding: 10px 20px;
        letter-spacing: -0.05em;
    }
    .his-timeline .sub-timeline > li::before {
        top: 20px;
    }
    .his-timeline .sub-timeline li .tit h3 {
        left: -70px;
        font-size: 1em;
        padding: 10px 10px;
    }
    .his-timeline .sub-timeline li .desc ul li span {
        font-size: 0.985em;
    }
    .his-timeline .sub-timeline li .desc ul li p {
        font-size: 0.925em !important;
    }
}

/* 연혁-슬라이드스타일 */
#history-slider {
    margin-top: 0px;
}
#history-slider .bx-wrapper {
    box-shadow: none;
}
#history-slider .his-img img.disable-lazyload {
    width: 60% !important;
}
#history-slider .history-wrapper {
    height: 150px;
}

/*
.ls-numbers .ls-nav-prev:before, .ls-numbers .ls-nav-prev:after, .ls-numbers .ls-nav-next:before, .ls-numbers .ls-nav-next:after
{background-color:#666!important;}
.ls-numbers .ls-nav-prev, .ls-numbers .ls-nav-next
{background:none!important;}
*/

#history-slider .history-area {
    justify-content: center;
    width: 100%;
    margin: 0 auto;
    padding: 0 50px;
}
#history-slider .history-wrapper {
    width: 25%;
}
#history-slider .history-info {
    border-top: 1px solid #999;
    padding-top: 10px;
}
#history-slider .history-year {
    font-size: 25px;
    font-weight: 700;
    color: #222;
    letter-spacing: -0.05em;
    padding-bottom: 10px;
    position: relative;
}
#history-slider .history-year::before {
    content: '';
    position: absolute;
    bottom: -3px;
    left: 50%;
    width: 30px;
    height: 3px;
    background: #000;
    transform: translateX(-50%);
}
#history-slider .history-item strong {
    font-size: 20px;
    color: #222;
}
#history-slider .history-item p {
    max-width: 300px;
    margin: 10px auto;
    font-size: 15px;
    color: #333;
    letter-spacing: -0.05em;
    line-height: 1.2;
}
#history-slider .his-img {
    margin-bottom: 15px;
}
#history-slider .ls-roundedflat .ls-nav-prev {
    left: 0;
}
#history-slider .ls-roundedflat .ls-nav-next {
    right: 0;
}
#history-slider .ls-roundedflat .ls-nav-prev,
#history-slider .ls-roundedflat .ls-nav-next {
    background: rgba(0, 0, 0, 0);
    top: 30%;
}
#history-slider .ls-roundedflat .ls-nav-prev:hover,
#history-slider .ls-roundedflat .ls-nav-next:hover {
    background: rgba(0, 0, 0, 0) !important;
}
#history-slider .ls-roundedflat .ls-nav-stop:before {
    top: 3px;
    border-color: #666;
}
#history-slider .ls-roundedflat .ls-nav-stop:hover:before {
    border-color: #333;
}
#history-slider .ls-roundedflat .ls-nav-start:before {
    top: 3px;
}
#history-slider .ls-roundedflat .ls-nav-start:before,
#history-slider .ls-roundedflat .ls-nav-start-active:before,
#history-slider .ls-roundedflat .ls-nav-start:hover:before {
    border-color: transparent transparent transparent #666;
}
#history-slider .ls-roundedflat .ls-nav-prev:before,
#history-slider .ls-roundedflat .ls-nav-prev:after,
#history-slider .ls-roundedflat .ls-nav-next:before,
#history-slider .ls-roundedflat .ls-nav-next:after {
    background-color: #4c4c4c;
}
#history-slider .ls-numbers .ls-bottom-slidebuttons a {
    background: none !important;
    border: 1px solid #ddd !important;
    border-radius: 50px;
}
#history-slider .ls-numbers .ls-bottom-slidebuttons a:before {
    color: #666 !important;
}
#history-slider .ls-numbers .ls-bottom-slidebuttons a.ls-nav-active:before,
#history-slider .ls-numbers .ls-bottom-slidebuttons a:hover:before {
    color: #ba120a !important;
}
#history-slider .ls-numbers .ls-bottom-slidebuttons a.ls-nav-active,
#history-slider .ls-numbers .ls-bottom-slidebuttons a:hover {
    border-color: #ba120a !important;
}

/* bx-slider */
#history-slider .bx-wrapper {
    box-shadow: none;
    border: none;
    background: none;
    margin: 0 auto;
}
#history-slider .bx-wrapper .bx-controls-direction a {
    top: 50px;
}
#history-slider .bx-wrapper img {
    max-width: 100%;
    display: block;
    margin: 0 auto;
}
#history-slider .bx-wrapper .bx-viewport {
    box-shadow: none !important;
    border: none !important;
    height: auto !important;
}
#history-slider .bx-wrapper .bx-pager.bx-default-pager a {
    background: #ddd;
    text-indent: 0;
    display: block;
    height: 30px;
    margin: 0 5px;
    width: 30px;
    font-size: 14px;
    color: #666;
    border-radius: 50px;
    line-height: 30px;
}
#history-slider .bx-wrapper .bx-pager.bx-default-pager a.bx-pager-link.active {
    background: #0669bf;
    color: #fff !important;
}
#history-slider .bx-wrapper .bx-next,
#history-slider .bx-wrapper .bx-prev {
    background: none;
}
#history-slider .bx-wrapper .bx-prev {
    left: 0;
}
#history-slider .bx-wrapper .bx-next {
    right: 0;
}
#history-slider .bx-controls-direction a::after,
.bx-controls-direction a::before {
    content: '';
    position: absolute;
    width: 20px;
    height: 5px;
    background: #ddd;
    z-index: 10000;
    right: 0;
    left: 0;
}
#history-slider .bx-controls-direction .bx-prev::after {
    top: -6px;
    left: 0;
    transform: rotate(-45deg);
}
#history-slider .bx-controls-direction .bx-prev::before {
    top: 6px;
    left: 0;
    transform: rotate(45deg);
}
#history-slider .bx-controls-direction .bx-next::after {
    top: 6px;
    right: 0;
    transform: rotate(-45deg);
}
#history-slider .bx-controls-direction .bx-next::before {
    top: -6px;
    right: 0;
    transform: rotate(45deg);
}
#history-slider .bx-controls-direction a:hover::after,
#history-slider .bx-controls-direction a:hover::before {
    background: #666;
}

@media only screen and (max-width: 768px) {
    #history-slider .history-area {
        width: 100% !important;
        flex-wrap: wrap;
        justify-content: center !important;
        padding: 0;
    }
    #history-slider .history-wrapper {
        height: auto;
        width: auto;
    }
    #history-slider .bx-wrapper img {
        max-width: 100% !important;
    }
    #history-slider .his-slide .ls-layers {
        overflow: visible !important;
    }
    #history-slider .his-slide .ls-roundedflat .ls-nav-prev {
        left: 0px !important;
    }
    #history-slider .his-slide .ls-roundedflat .ls-nav-next {
        right: 0px !important;
    }
    #history-slider .history-item p {
        padding: 0 10px !important;
        line-height: 1.2;
        font-size: 0.925em !important;
        letter-spacing: -0.05em !important;
    }
    #history-slider .his-slide .ls-roundedflat .ls-nav-prev,
    #history-slider .his-slide .ls-roundedflat .ls-nav-next {
        top: 27% !important;
    }
    #history-slider .main_his {
        display: none !important;
    }
}

@media only screen and (max-width: 575px) {
    #history-slider .bx-wrapper {
        padding-top: 80px;
    }
    #history-slider .history-wrapper {
        width: 100%;
        margin-bottom: 15px;
    }
    #history-slider .bx-wrapper .bx-pager {
        bottom: auto;
        top: 0;
        padding-top: 0;
    }
    #history-slider .bx-wrapper .bx-controls-direction a {
        top: 30px;
    }
}

/*회사소개 > 오시는길*/
.sub-cont iframe {
    width: 100%;
    box-shadow: 10px 20px 30px rgba(10, 10, 10, 0.2);
}
.add-area {
    border-top: 1px solid #3e3e3d;
    padding: 30px 30px;
    border-bottom: 1px solid #ddd;
}
dl:last-child,
dd:last-child {
    margin: 0;
}
.add-area dt {
    float: left;
    min-width: 80px;
    font-weight: 500;
    color: #222;
    letter-spacing: 1em;
}
.locaate-logo {
    display: flex;
    align-items: center;
}

@media (max-width: 575px) {
    .sub-cont iframe {
        height: 200px;
    }
    .locaate-logo {
        display: block;
        text-align: center;
        margin-bottom: 10px;
    }
    .locaate-logo img {
        max-width: 200px;
    }
    .add-area {
        padding: 20px 0;
    }
    .add-area dt,
    .add-area dd {
        font-size: 1rem;
        min-width: 60px;
    }
}

/*사업영역 > 방수공사*/
h4.subtit {
    padding: 10px 0px;
}
h4.subtit span {
    font-size: 26px;
    font-weight: 500;
    color: #333;
    position: relative;
    padding-right: 20px;
}
h4.subtit span::before {
    content: '';
    position: absolute;
    right: 0;
    top: 3px;
    width: 8px;
    height: 8px;
    background: #0669bf;
    border-radius: 50%;
}
h5.cont-tit {
    font-size: 20px;
    margin-top: 30px;
}
.business-explain {
    margin-left: 20px;
    padding-left: 20px;
    position: relative;
    border-left: 2px solid #ddd;
    padding-bottom: 10px;
}
.business-explain:before {
    content: '';
    position: absolute;
    left: -2px;
    width: 3px;
    height: 40px;
    background: #0669bf;
    top: 0px;
}
.nav-tabs {
    justify-content: center;
    margin-bottom: 50px !important;
}
.nav-link {
    padding: 10px 20px !important;
    letter-spacing: -0.02em;
    color: #666;
    margin: 0 10px;
    font-size: 18px;
    font-weight: 700;
}
.cate_board a {
    display: block;
    border: 1px solid #fff;
    color: #666;
    padding: 10px 20px;
}
.nav-tabs .nav-item.show .nav-link,
.nav-tabs .nav-link.active,
.nav-link:hover {
    color: #0669bf !important;
    background-color: #fff !important;
    border-color: #fff #fff #0669bf !important;
}
.eng {
    font-size: 0.825em;
    color: #777;
}
h4.subtit span.model {
    float: right;
    font-size: 18px !important;
    background: #0669bf;
    padding: 5px 25px !important;
    font-weight: 700;
    border-radius: 50px;
    color: #fff;
}
span.model::before {
    display: none;
}
.biz-cnt .img-wrapper {
    margin-bottom: 50px;
}
.biz-cnt .img-wrapper img {
    border: 1px solid #ddd;
}
.tab-content .business-explain li {
    font-size: 17px;
    letter-spacing: -0.02em;
}
.tab-content .business-explain h5.cont-tit {
    margin-top: 0;
}
.tab-content .business-explain {
    padding-top: 15px;
    margin-bottom: 50px;
    padding-bottom: 15px;
}
.tab-content h4.subtit {
    margin-bottom: 30px;
}
.nav.nav-tabs.t8 {
    border-bottom: none;
}
.nav.nav-tabs.t8 .nav-item {
    width: 25%;
    text-align: center;
    border-bottom: 1px solid #ddd;
    margin-bottom: 5px;
}

@media (max-width: 575px) {
    .nav-tabs {
        margin-bottom: 30px !important;
    }
    .nav-link {
        padding: 5px !important;
        font-size: 1rem;
        margin: 0 2px;
    }
    .tab-content > .tab-pane .row > div:first-child {
        margin-bottom: 30px;
    }
    h4.subtit span {
        font-size: 1.5rem;
        padding-right: 15px;
    }
    h4.subtit span.model {
        float: inherit;
        font-size: 1rem !important;
        padding: 5px 5px !important;
        border-radius: 0;
        display: block;
        text-align: center;
        margin-top: 10px;
    }

    .tab-content h4.subtit {
        margin-bottom: 15px;
    }
    .tab-content .business-explain {
        padding-top: 5px;
        padding-bottom: 5px;
        padding-left: 15px;
        margin-bottom: 30px;
        margin-left: 5px;
    }
    h5.cont-tit {
        font-size: 1.2rem;
    }
    .business-explain:before {
        width: 2px;
        height: 25px;
    }
    .tab-content .business-explain li {
        font-size: 1rem;
        line-height: 1.5;
    }
}

/*history-tab*/
#sec-history .nav-tabs {
    border-bottom: none !important;
    margin-bottom: 50px;
}
#sec-history .nav-tabs .nav-item {
    margin-bottom: 0;
    width: 33.33%;
    text-align: center;
    border: 1px solid #ddd;
}
#sec-history .nav-link {
    position: relative;
    color: #222;
    font-weight: 500;
    margin: 0;
}
#sec-history .nav-link::before {
    content: '';
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: #333;
    left: 50%;
    top: 100%;
    transform: translate(-50%, -50%);
    display: block;
    z-index: 10;
    position: absolute;
    transition: 0.3s all;
}
#sec-history .nav-link::after {
    content: '';
    width: 16px;
    height: 16px;
    border-radius: 50%;
    background: #fff;
    border: 1px solid #333;
    left: 50%;
    top: 100%;
    transform: translate(-50%, -50%);
    display: block;
    position: absolute;
    transition: 0.3s all;
}
#sec-history .nav-link.active::before,
#sec-history .nav-link:hover::before {
    background-color: #0069c0;
}
#sec-history .nav-link.active::after,
#sec-history .nav-link:hover::after {
    border-color: #0069c0;
}

/*시공실적 > 주요실적*/
.webzine_type2 .webzine_type_img_td {
    vertical-align: middle !important;
    width: 25%;
    padding-right: 20px;
}
.webzine_type2 .webzine_type_img_td img {
    border: 1px solid #ddd !important;
    width: 100%;
    height: auto;
    max-height: 150px;
    object-fit: cover;
    object-position: center;
    transition: all 0.5s;
}
.webzine_type2 tr:hover .webzine_type_img_td img {
    opacity: 0.6;
}
.board .webzine_type2 dd {
    border: none !important;
    padding: 0;
    margin: 0;
    height: 30px !important;
}
.webzine_type2 > tbody > tr {
    transition: all 0.5s;
}
.webzine_type2 > tbody > tr:hover {
    background: #f7f7f7;
}
.newslist .webzine_type2 .obj_name {
    border: none !important;
    font-size: 15px !important;
    font-family: 'pretendard', 'Noto Sans KR', 'Roboto', sans-serif !important;
}
.webzine_type2 .obj_name {
    background: none !important;
}
td.webzine_type2_table_line {
    display: none !important;
}
.webzine_type2 dl {
    border-top: 1px solid #ddd;
    padding: 20px 0 20px 20px !important;
}
.webzine_type2 {
    border-top: 1px solid #ddd;
    border-bottom: 1px solid #ddd;
}
.webzine_type2 .obj_value {
    height: auto !important;
    padding: 0 0px !important;
    font-family: 'pretendard', 'Noto Sans KR', 'Roboto', sans-serif !important;
    font-size: 15px !important;
}
.webzine_type2 .obj_name {
    height: auto !important;
    padding: 0px !important;
}
.webzine_type2 .webzine_type_text_td_right {
    padding: 0 !important;
}
.webzine_type2 tbody tr:nth-child(1) dl {
    border-top: none;
}
.board_bgcolor {
    min-width: 200px;
}
#post_area img {
    height: auto !important;
}

/*카테고리*/
#sec-performance .sul_menu {
    display: none;
}
.cate_board a {
    position: relative;
    display: block;
    text-align: center;
    font-size: 16px;
    color: #666;
    font-weight: 300;
    border: 1px solid #ddd;
    width: 100%;
    padding: 5px;
}
.cate_board li:nth-child(n + 2) a {
    border-left: none;
}
.cate_board li {
    width: 24.5%;
    margin-bottom: 10px;
}
.cate_board {
    display: flex;
    justify-content: space-between;
    margin: 0px 0 30px !important;
}
.cate_board li:first-child a {
    background-color: #3e3e3d;
    color: #fff;
    font-weight: 600;
}
.cate_board .on {
    background-color: #0669bf;
    color: #fff !important;
    font-weight: 600;
}
.cate_board li a:hover {
    color: #fff;
    background-color: #0669bf;
}

@media (max-width: 575px) {
    .cate_board li a {
        font-size: 14px;
        padding: 2px 8px;
    }
}

/*게시판 페이지네이션*/
.paging {
    color: #0669bf !important;
    padding-top: 30px !important;
    font-family: 'pretendard', 'Noto Sans KR', 'Roboto', sans-serif !important;
}
.paging b,
.pagelist b,
#sec-notice #container_list #paing_table tr .ept_link_cell b {
    background: #0669bf;
    color: #fff;
    width: 30px;
    height: 30px;
    display: inline-block;
    border-radius: 100%;
    line-height: 30px;
    font-weight: 400;
    border: none;
}
.paging a:link {
    font-family: 'pretendard', 'Noto Sans KR', 'Roboto', sans-serif !important;
}
.news_title {
    font-family: 'pretendard', 'Noto Sans KR', 'Roboto', sans-serif !important;
    color: #222 !important;
    font-size: 16px !important;
    transition: all 0.5s;
}
.news_title:hover {
    color: #0669bf !important;
}

/*게시판 읽기*/
.board_bgcolor font,
.board_desc {
    font-family: 'pretendard', 'Noto Sans KR', 'Roboto', sans-serif !important;
    font-size: 15px !important;
    color: #666 !important;
}
.board_bgcolor,
.board_desc {
    padding: 5px 10px !important;
}

@media (max-width: 767px) {
    .cate_board {
        flex-wrap: wrap;
        justify-content: flex-start;
    }
    .cate_board li {
        width: auto;
        padding: 0 2px;
        margin-bottom: 5px;
    }
    .cate_board a {
        border: 1px solid #ddd !important;
        padding: 5px 10px;
    }

    .webzine_type2 {
        border: none;
    }
    .webzine_type2 > tbody > tr {
        display: block;
    }
    .webzine_type2 .webzine_type_img_td {
        width: auto;
        padding-right: 0px;
        display: block;
        height: auto;
        text-align: center;
        margin: 0 auto;
        max-width: 300px;
    }
    .webzine_type2 .webzine_type_img_td img {
        height: auto;
        max-height: initial;
    }
    .webzine_type2 dl {
        border: none;
        padding: 20px 0 20px 0px !important;
    }
    .board .webzine_type2 .webzine_subject {
        height: auto !important;
        margin-bottom: 10px;
        word-break: keep-all;
        border-bottom: 1px solid #ddd !important;
        padding-bottom: 10px;
    }
    .board .webzine_type2 .webzine_subject > span {
        display: block;
    }

    .board_bgcolor {
        min-width: 10px;
        white-space: nowrap;
    }
}

/*시공실적 > 시공갤러리*/
/*3단갤러리*/
.glist3t {
    width: 100%;
}
.glist3t tr {
    display: inline;
    font-size: 0;
}
.glist3t td {
    display: inline-block;
    text-align: center;
    vertical-align: middle;
    margin-bottom: 10px;
}
.glist3t td table {
    width: 96%;
    margin: 0 auto;
}
.glist3t img {
    max-width: 100%;
    min-height: 100%;
    width: 330px;
    height: 250px;
    object-fit: cover;
    object-position: center;
    transition: 0.3s ease;
}
.glist3t > tbody > tr > td:hover img {
    opacity: 0.6;
}
.glist3t .board_admin_bgcolor table {
    display: none;
}
/*.glist3t input[type=checkbox], .glist3t input[type=radio]{display: none;}*/
.gallery_title {
    font-family: 'pretendard', 'Noto Sans KR', 'Roboto', sans-serif !important;
    color: #666 !important;
    font-size: 16px !important;
    padding-top: 10px;
    transition: all 0.5s;
}
.glist3t > tbody > tr > td:hover .gallery_title {
    color: #0669bf !important;
}
.pagelist {
    text-align: center;
}

@media (max-width: 767px) {
    .glist3t td {
        width: 100%;
    }
}

@media (max-width: 575px) {
    .webzine_type2 > tbody > tr {
        margin-bottom: 30px;
    }
    .webzine_type2 > tbody > tr:last-child {
        margin-bottom: 0px;
    }
}

/*온라인문의*/
.formmail_title_bgcolor {
    background: #f7f7f7;
}
.table_02 td td {
    border: none;
}
input.formmail_border[type='text'] {
    padding: 5px;
}
input.formmail_border[name='name'],
input.formmail_border[name='add1'],
input.formmail_border[name='receiver_email'],
input.formmail_border[name='address'],
input.formmail_border[name='title1'] {
    width: 96%;
}
input.formmail_border[name='address_post1'] {
    margin-bottom: 5px;
}
input.formmail_border[name='attachment[]'] {
    font-size: 12px;
    color: #666;
    border: none;
    cursor: pointer;
}
textarea {
    width: 96%;
    border-color: #ddd;
}
.formmail_cell_bgcolor a {
    background: #414141;
    display: inline-block;
    vertical-align: middle;
    margin-left: 10px;
    transition: all 0.5s;
}
.formmail_cell_bgcolor a:hover {
    background: #0669bf;
}
.formmail_cell_bgcolor a img {
    padding-bottom: 3px;
}

/*전송버튼*/
.formamil01 div {
    max-width: 50%;
    margin: auto;
}
.formamil01 div li {
    padding: 0 5px;
}
.formamil01 div a {
    display: block;
    padding: 10px;
}
.formamil01 div a:hover {
    opacity: 0.6;
}
.formamil01 div li:nth-child(1) a {
    background-color: #0669bf;
    color: #fff;
}
.formamil01 div li:nth-child(2) a {
    background-color: #ddd;
}

/*라디오버튼*/
input[type='radio'] {
    -webkit-appearance: none;
    box-sizing: border-box;
    padding: 0;
    width: 15px !important;
    height: 15px !important;
    margin-right: 7px !important;
    border-radius: 50%;
    border: 1px solid #666;
    outline: none;
}
input[type='radio']:checked {
    border-color: #0669bf;
}
input[type='radio']:before {
    content: '';
    display: block;
    width: 60%;
    height: 60%;
    margin: 20% auto;
    border-radius: 50%;
}
input[type='radio']:checked:before {
    background: #0669bf;
}
/*체크박스*/
input[type='checkbox'] {
    -webkit-appearance: none;
    position: relative;
    width: 16px;
    height: 16px;
    cursor: pointer;
    outline: none !important;
    border: 1px solid #ccc;
    border-radius: 2px;
    background: #fbfbfb;
}
input[type='checkbox']::before {
    content: '\2713';
    position: absolute;
    top: 50%;
    left: 50%;
    overflow: hidden;
    transform: scale(0) translate(-50%, -50%);
    line-height: 1;
}
input[type='checkbox']:hover {
    border-color: rgba(170, 170, 170, 0.5);
}
input[type='checkbox']:checked {
    background-color: #0669bf;
    border-color: rgba(255, 255, 255, 0.3);
    color: white;
}
input[type='checkbox']:checked::before {
    border-radius: 2px;
    transform: scale(1) translate(-50%, -50%);
}

.formmail {
    margin: 0 auto;
}

@media (max-width: 575px) {
    input.formmail_border[type='text'] {
        max-width: 300px;
    }
    .formmail_title_bgcolor {
        word-break: keep-all;
    }
    .table_02 .formmail_cell_bgcolor > table > tbody > tr > td {
        white-space: nowrap;
        display: block;
        text-align: left;
    }
    .table_02 table.formmail_cell_bgcolor > tbody > tr > td {
        white-space: nowrap;
        display: inline-block;
    }

    .formamil01 div {
        max-width: 90%;
    }
}

/*고객센터 > 공지사항*/
.est_cate_cell section {
    height: 37px !important;
}
#ext_search {
    min-width: 35% !important;
    margin-bottom: 10px;
}
#search_display1 input {
    padding: 5px;
    margin: 0 2px;
    border: 1px solid #ddd;
    height: 37px !important;
}

.bbs .board td a {
    font-size: 18px;
    font-family: 'Pretendard', 'Noto Sans KR', 'Roboto', sans-serif !important;
    text-align: center;
    padding: 0;
    font-weight: 500;
    color: #333;
}
.bbs .board tr {
    border-bottom: 1px solid #ddd;
    transition: all 0.5s;
}
.bbs .board tr:nth-child(n + 2):hover {
    background: #f1f3f7;
}
.bbs .board td {
    font-size: 18px;
    font-family: 'Pretendard', 'Noto Sans KR', 'Roboto', sans-serif !important;
    text-align: center;
    padding: 20px 10px;
    font-weight: 500;
    color: #555;
    letter-spacing: -0.02em;
}
.bbs .board .bbsnewf5 {
    text-align: left;
}
.bbs .board td.bbsetc_dateof_write,
.bbs td.bbsdescription,
.bbs td.bbsetc_view_count {
    font-size: 1em;
    color: #999;
    white-space: nowrap;
}
.bbs .board td.att_title {
    background: #f7f7f7;
    border-top: 1px solid #ddd;
}
.bbs .board td.att_title font {
    font-size: 15px !important;
    color: #333 !important;
}
.bbs .board td.bbsno {
    color: #ccc;
}

@media (max-width: 768px) {
    #search_table {
        margin: 0 auto;
    }
    #ext_search {
      width: 80% !important;
      margin-left: 0 !important;
      margin-right: auto !important;
    }
    td.est_cate_cell {
      width: 30%;
    }
}

/*약관*/
.textareainfo {
    min-height: 300px;
    padding: 50px 30px;
    background: #f7f7f7;
}

.info_box {
    border: 1px solid #ddd;
    padding: 30px 20px 30px 150px;
    word-break: keep-all;
    background: url('info_icon.png') no-repeat 50px center;
}
.sub-cont .info_box h4 {
    color: #0669bf;
    font-weight: 400;
    margin: 0;
    font-size: 1.4rem;
}
.emailinfo ol {
    padding-left: 20px;
}
.emailinfo ol > li {
    list-style: circle;
    margin-bottom: 10px;
}
.emailinfo ol > li ul {
    padding-left: 20px;
}
.emailinfo ol > li ul li {
    list-style: disc;
    line-height: 1.5;
    font-size: 1rem;
}
.emailinfo h5 {
    margin-top: 50px;
    color: #333;
    margin-bottom: 10px;
}

@media (max-width: 575px) {
    .textareainfo {
        font-size: 12px;
        padding: 30px 10px;
        min-height: 200px;
    }
    .info_box {
        padding: 100px 30px 30px;
        background-position: center 10%;
    }
}

/*관리자 > 로그인*/
.login_box p b {
    font-size: 1.25em;
}
.login_box .box {
    padding: 25px 10px !important;
}
.login_box .txt_01 {
    padding: 10px 0 !important;
}
#sec-admin table {
    border-collapse: collapse;
    width: 100%;
    max-width: 500px;
    margin: auto;
}
#sec-admin table tr:nth-child(1) td input {
    border-radius: 5px 5px 0 0;
}
#sec-admin table tr:nth-child(2) td input {
    border-radius: 0 0 5px 5px;
    margin-bottom: 30px;
}
.btn_login {
    padding: 15px 0;
    background: #0669bf;
    color: #fff;
    width: 100%;
    border-radius: 5px;
    font-size: 1.3em;
}
.btn_login:hover {
    opacity: 0.6;
}

@media (max-width: 575px) {
    .login_box {
        padding: 30px !important;
    }
}

.col-md-3.col-sm-3 p {
    margin-bottom: 30px !important;
    line-height: 1.2;
}

/*조직도*/
.system {
    position: relative;
}
.system::before {
    content: '';
    width: 1px;
    height: 230px;
    background: #ddd;
    position: absolute;
    left: 50%;
    top: 0;
}

.system .ceo {
    position: absolute;
    top: 0;
    left: 50%;
    width: 160px;
    height: 160px;
    line-height: 160px;
    transform: translateX(-50%);
    text-align: center;
    font-size: 1.3em;
    color: #fff;
    background: #0669bf url('ceo-bg.png') center center no-repeat;
    background-size: contain;
    border-radius: 100%;
    letter-spacing: -0.05em;
}
.system .ceo::before {
    content: '';
    width: 180px;
    height: 180px;
    border: 2px dotted rgb(0, 123, 255, 0.5);
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    border-radius: 50%;
}
.system .part1 {
    display: flex;
    position: relative;
    padding-top: 160px;
    justify-content: space-between;
}
.system .part1::before {
    content: '';
    position: absolute;
    top: 230px;
    left: 50%;
    width: 705px;
    height: 1px;
    background: #ddd;
    transform: translateX(-50%);
}
.system .part1 > li > strong {
    text-align: center;
    display: block;
    width: 140px;
    height: 140px;
    line-height: 140px;
    font-size: 1.2em;
    border-radius: 100%;
    background: #0884a6;
    color: #fff;
    font-weight: 500;
    position: absolute;
    z-index: 2;
    transition: all 0.3s ease-in-out;
}
.system .part1 > li:first-child > strong {
    left: 138px;
}
.system .part1 > li:last-child > strong {
    right: 138px;
}
.system .part1 > li > strong::after,
.system .part2 > li > strong::before {
    content: '';
    position: absolute;
    width: 1px;
    height: 20px;
    background: #ddd;
    z-index: 0;
    top: -20px;
    left: 50%;
    transform: translateX(-50%);
}
.system .part1 > li > strong::after {
    top: auto;
    bottom: -25px;
    height: 25px;
}
.system .part2 > li > strong::before {
    top: -35px;
}
.system .part2 {
    padding-top: 200px;
    display: flex;
    justify-content: space-between;
    position: relative;
}
.system .part2::before {
    content: '';
    position: absolute;
    height: 1px;
    background: #ddd;
    top: 165px;
    left: 50%;
    transform: translateX(-50%);
}
.system .part1 > li:nth-child(1) > .part2::before {
    width: 80%;
}
.system .part1 > li:nth-child(2) > .part2::before {
    width: 1px;
    height: 120px;
    top: 70px;
}
.system .part1 > li:nth-child(3) > .part2::before {
    width: 140px;
}
.system .part2 > li {
    width: 125px;
    margin: 0 7px;
    transition: all 0.3s ease-in-out;
}
.system .part2 > li > strong {
    position: relative;
    text-align: center;
    display: block;
    background: #333;
    color: #fff;
    font-weight: 400;
    padding: 5px;
}
.system .part1 > li:nth-child(2) > .part2 > li > strong::before {
    display: none;
}
.system .part2 > li > strong::after {
    content: '';
    position: absolute;
    left: 50%;
    width: 8px;
    height: 8px;
    background: #333;
    transform: translateX(-50%);
    border-radius: 100%;
    top: -10px;
}
.system .part3 {
    background: #f1f3f7;
    padding: 15px 8px;
    margin-top: 5px;
    border: 1px solid #ddd;
    font-size: 0.9em;
    letter-spacing: -0.05em;
    height: 225px;
}
.system .part3 span {
    display: block;
    line-height: 1.5;
    font-weight: 500;
    text-align: center;
}
.system .part1 > li > strong:hover {
    background: #0087cb !important;
    box-shadow: 0px 0px 20px rgba(0, 135, 203, 0.8);
}
.system .part2 > li:hover {
    transform: translateY(-10px) scale(1.05);
}
.system .part2 > li:hover > strong::before {
    opacity: 0;
}

@media (max-width: 1200px) {
    /*    .system::before {width: 5px; height: 75%; background: #0669bf;}*/
    .system .part1::before {
        display: none;
    }
    .system .part1 > li {
        padding-top: 0px;
    }
    .system .part1 {
        display: block;
        padding-top: 220px;
    }
    .system .part1 > li {
        width: 100%;
    }
    .system .part1 > li:first-child > strong,
    .system .part1 > li:last-child > strong {
        left: 50%;
        right: auto;
        transform: translateX(-50%);
    }
    .system .part2 {
        justify-content: center;
    }
    .system .part1 > li:nth-child(2) .part2 {
        padding: 50px 0;
        border-top: 1px solid #ddd;
        border-bottom: 1px solid #ddd;
        margin: 50px auto;
    }
    .system .part1 > li:nth-child(1) > .part2::before {
        width: 55%;
    }
    .system .part3 {
        height: auto;
    }
}

@media (max-width: 575px) {
    .system .part1 {
        padding-top: 180px;
    }
    .system .part2 {
        padding-top: 40px;
    }
    .system .part2 > li {
        margin: 0 1px;
    }
    .system .part2::before,
    .system .part2 > li > strong::before,
    .system .part1 > li > strong::after,
    .system::before,
    .system .part2 > li > strong::after {
        opacity: 0;
    }
    .system .part1 > li > strong {
        width: 100%;
        height: auto;
        line-height: 1.5;
        padding: 5px;
        border-radius: 0;
    }
}

/*조직도2*/
.system2 {
    position: relative;
}
.system2::before {
    content: '';
    width: 1px;
    height: 50%;
    background: #ddd;
    position: absolute;
    left: 50%;
    top: 0;
}
.system2 .ceo {
    position: absolute;
    top: 0;
    left: 50%;
    width: 160px;
    height: 160px;
    line-height: 160px;
    transform: translateX(-50%);
    text-align: center;
    font-size: 1.3em;
    color: #fff;
    background: #0069c0 url('ceo-bg.png') center center no-repeat;
    background-size: contain;
    border-radius: 100%;
    letter-spacing: -0.05em;
}
.system2 .ceo::before {
    content: '';
    width: 180px;
    height: 180px;
    border: 2px dotted rgb(0, 123, 255, 0.5);
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    border-radius: 50%;
}
.system2 .part1 {
    display: flex;
    position: relative;
    padding-top: 330px;
    justify-content: space-between;
}
.system2 .part1::before {
    content: '';
    position: absolute;
    top: 300px;
    left: 50%;
    width: 66.66%;
    height: 1px;
    background: #ddd;
    transform: translateX(-50%);
}
.system2 .part1 > li {
    width: 33.33%;
    position: relative;
}
.system2 .part1 > li > strong {
    text-align: center;
    display: block;
    width: 140px;
    height: 140px;
    line-height: 140px;
    font-size: 1.2em;
    border-radius: 100%;
    border: 1px solid #0069c0;
    background: #fff;
    color: #0069c0;
    font-weight: 500;
    position: absolute;
    transition: all 0.5s ease-in-out;
    left: 50%;
    transform: translateX(-50%);
    z-index: 1;
}
.system2 .part1 > li > strong::before {
    content: '';
    position: absolute;
    left: 50%;
    width: 1px;
    height: 30px;
    background: #ddd;
    top: -31px;
}
.system2 .part1 > li:last-child > strong {
    right: 138px;
}
.system2 .part1 > li > strong::after,
.system2 .part2 > li > strong::before {
    content: '';
    position: absolute;
    width: 1px;
    height: 20px;
    background: #ddd;
    top: -20px;
    left: 50%;
    transform: translateX(-50%);
}
.system2 .part1 > li > strong::after {
    top: auto;
    bottom: -105px;
    height: 105px;
}
.system2 .part1 > li:nth-child(2) > strong::after {
    bottom: -25px;
    height: 25px;
}
.system2 .part2 > li > strong::before {
    top: -35px;
}
.system2 .part2 {
    padding-top: 240px;
    display: flex;
    position: relative;
}
.system2 .part2::before {
    content: '';
    position: absolute;
    height: 1px;
    background: #ddd;
    top: 165px;
    left: 50%;
    transform: translateX(-50%);
}
.system2 .part1 > li:nth-child(2) > .part2 {
    padding-top: 200px;
}
.system2 .part1 > li:nth-child(2) > .part2::before {
    width: 50%;
}
.system2 .part2 > li {
    width: 90%;
    margin: 0 auto;
    max-width: 160px;
    transition: all 0.3s ease-in-out;
}
.system2 .part2 > li > strong {
    position: relative;
    text-align: center;
    display: block;
    background: #333;
    color: #fff;
    font-weight: 400;
    padding: 5px;
}
.system2 .part2 > li > strong::after {
    content: '';
    position: absolute;
    left: 50%;
    width: 8px;
    height: 8px;
    background: #333;
    transform: translateX(-50%);
    border-radius: 100%;
    top: -10px;
}
.system2 .part3 {
    background: #f1f3f7;
    padding: 20px 8px;
    margin-top: 5px;
    border: 1px solid #ddd;
    font-size: 0.9em;
    letter-spacing: -0.05em;
    height: 225px;
}
.system2 .part3 span {
    display: block;
    line-height: 1.3;
    font-weight: 500;
    text-align: center;
    margin-bottom: 5px;
}
.system2 .part1 > li > strong:hover {
    background: #0087cb !important;
    box-shadow: 0px 0px 20px rgba(0, 135, 203, 0.8);
    color: #fff;
}
.system2 .part2 > li:hover {
    transform: translateY(-10px) scale(1.05);
}
.system2 .part2 > li:hover > strong::before {
    opacity: 0;
}
.system2 .branch {
    position: absolute;
    left: 60%;
    top: 200px;
    z-index: 1;
}
.system2 .branch > li > strong {
    position: relative;
    font-size: 1.1em;
    background: #0087cb;
    padding: 10px 30px;
    color: #fff;
    font-weight: 400;
}
.system2 .branch > li > strong::before {
    content: '';
    width: 180%;
    height: 1px;
    position: absolute;
    left: -100px;
    background: #ddd;
    top: 50%;
    z-index: -1;
}
.system2 .branch > li > strong::after {
    content: '';
    width: 1px;
    height: 50px;
    position: absolute;
    right: -10px;
    top: 50%;
    background: #ddd;
    transform: translateY(-50%);
}
.system2 .branch2 {
    position: absolute;
    left: 120%;
    top: 50%;
    transform: translateY(-50%);
    width: 100%;
    text-align: center;
}
.system2 .branch2 li {
    position: relative;
    font-size: 1em;
    font-weight: 300;
    background: #f1f3f7;
    border: 1px solid #ddd;
    padding: 5px 20px;
    margin-bottom: 10px;
}
.system2 .branch2 li:last-child {
    margin-bottom: 0;
}
.system2 .branch2 li::before {
    content: '';
    position: absolute;
    width: 20px;
    height: 1px;
    background: #ddd;
    left: -20px;
    top: 50%;
}

@media (max-width: 1200px) {
    .system2::before {
        height: 100%;
    }
    .system2 .part1::before {
        display: none;
    }
    .system2 .part1 > li {
        padding-top: 30px;
        width: 100% !important;
    }
    .system2 .part1 {
        display: block;
        padding-top: 240px;
    }
    .system2 .part2 {
        padding-top: 150px;
    }
    .system2 .part3 {
        height: auto;
    }
    .system2 .branch {
        left: 50%;
        transform: translateX(-50%);
    }
    .system2 .branch > li > strong::before {
        width: 5px;
        left: auto;
        right: -5px;
    }
}

@media (max-width: 575px) {
    .system2 .part1 {
        padding-top: 300px;
    }
    .system2 .branch > li > strong {
        display: block;
        text-align: center;
    }
    .system2 .branch2 {
        display: flex;
        justify-content: space-between;
        position: static;
        width: 100%;
        transform: translate(0);
        margin-top: 5px;
    }
    .system2 .branch2 li {
        padding: 5px 20px;
        margin: 0 10px;
    }
    .system2 .branch > li > strong::before,
    .system2 .branch > li > strong::after,
    .system2 .branch2 li::before {
        display: none;
    }
}

/*monitor*/
.imac {
    padding: 0 0;
    margin: 0 auto;
    max-width: 700px;
}
.imac .screen {
    background: #000;
    border-radius: 3% 3% 0 0 / 5% 5% 0 0; /* for aspect ratio */
    position: relative;
    width: 100%;
}
.imac .screen:before {
    content: '';
    display: block; /* for aspect ratio ~3:5 */
    padding-top: 60%;
}
.imac .logo {
    background: linear-gradient(90deg, #a6a6aa, #e1e2e4);
    border-radius: 0 0 3% 3%/ 0 0 33.33% 33.33%; /* for aspect ratio */
    position: relative;
    width: 100%;
}
.imac .logo:before {
    content: '';
    display: block; /* for aspect ratio ~9:100 */
    padding-top: 9%;
}
.imac .logo:after {
    content: '';
    background: url(../img/logo.png) no-repeat center center;
    left: 0;
    margin-left: -2.4%;
    position: absolute;
    top: 20%;
    width: 100%;
    padding-top: 4.8%;
    background-size: contain;
}
.viewport {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    top: 0;
    margin: 4%;
    background: #333;
}
.imac .leg {
    margin: 0 auto; /* for aspect ratio */
    position: relative;
    width: 20%;
}
.imac .leg:before {
    content: '';
    display: block; /* for aspect ratio ~46:100 */
    padding-top: 46%;
    background: linear-gradient(
        #7a7b80,
        #abacaf 26%,
        #d0d1d2 57%,
        #f2f2f2 76%,
        #e4e4e4 84%,
        #787878
    );
}
.imac .foot {
    /* for aspect ratio */
    position: relative;
    width: 20%;
    margin: 0 auto; /* for perspective */
    perspective: 180px;
}
.imac .foot:before {
    content: '';
    display: block; /* for aspect ratio ~2:5 */
    padding-top: 40%; /* for perspective */
    transform: rotateX(68deg);
    transform-origin: center top;
    background: linear-gradient(
        #7b7b7b,
        #7f7f7f 39%,
        #a6a6a6 53%,
        #ccc 67%,
        #aaa 86%,
        #eee 88%,
        #fff 95%,
        #a9a9a9 95%,
        #000
    );
    border-radius: 0 0 10% 10% / 0 0 30% 30%;
    box-shadow: 0 -10px 5px rgba(255, 255, 255, 0.1) inset,
        0 -17px 6px rgba(0, 0, 0, 0.1) inset;
}

/* Screenshot Hover Scroll Additions */
.imac .viewport {
    transition: background-position 5s ease;
    background-position: 0 0;
    background-size: 100% auto;
    overflow: hidden;
    cursor: pointer;
}
.imac:hover .viewport {
    background-position: 0 100%;
}
.imac .viewport:after {
    background: radial-gradient(
        circle at right bottom,
        transparent 75%,
        rgba(255, 255, 255, 0.05) 75%,
        transparent
    );
    bottom: 0;
    content: '';
    left: 0;
    position: absolute;
    right: 0;
    top: 0;
}

.bg-img {
    display: flex;
    justify-content: center;
    align-items: center;
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
    height: 400px;
    position: relative;
    z-index: -1;
}
.bg-img::before {
    content: '';
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    background: #000;
    opacity: 0.3;
    z-index: -1;
}
.m0101_bg {
    background-image: url('../img/m01_p01-01.jpg');
}
.bg-img .bg-tit {
    font-size: 36px;
    color: #fff;
    font-weight: 700;
    text-shadow: 0 0 10px rgb(0, 0, 0, 0.8);
    padding: 0 15px;
    word-break: keep-all;
}

@media (max-width: 575px) {
    .bg-img {
        height: 250px;
    }
    .bg-img .bg-tit {
        font-size: 1.8em;
    }
}

/*로딩중*/
#preloader {
    /*position: fixed;*/
    /*전체화면에 적용하려면 position: fixed; 주석해지, position: absolute; 삭제*/
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    right: 0;
    background-color: #fff;
    z-index: 999999999999;
}
.preloader {
    position: absolute;
    left: 50%;
    top: 50%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
}
.preloader span {
    display: inline-block;
    background-color: #3556a0;
    width: 15px;
    height: 15px;
    -webkit-animation: 1s preload ease-in-out infinite;
    animation: preload 1s ease-in-out infinite;
    -webkit-transform: scale(0);
    -ms-transform: scale(0);
    transform: scale(0);
    border-radius: 50%;
}
.preloader span:nth-child(1) {
    -webkit-animation-delay: 0s;
    animation-delay: 0s;
}
.preloader span:nth-child(2) {
    -webkit-animation-delay: 0.1s;
    animation-delay: 0.1s;
}
.preloader span:nth-child(3) {
    -webkit-animation-delay: 0.15s;
    animation-delay: 0.15s;
}
.preloader span:nth-child(4) {
    -webkit-animation-delay: 0.2s;
    animation-delay: 0.2s;
}

@-webkit-keyframes preload {
    0% {
        -webkit-transform: scale(0);
        transform: scale(0);
    }
    50% {
        -webkit-transform: scale(1);
        transform: scale(1);
    }
    100% {
        -webkit-transform: scale(0);
        transform: scale(0);
    }
}

@keyframes preload {
    0% {
        -webkit-transform: scale(0);
        transform: scale(0);
    }
    50% {
        -webkit-transform: scale(1);
        transform: scale(1);
    }
    100% {
        -webkit-transform: scale(0);
        transform: scale(0);
    }
}

/*확대보기 아이콘*/
.zoom {
    margin-bottom: 30px;
}
.zoom a {
    border: 1px solid #ddd;
    display: block;
    overflow: hidden;
    position: relative;
}
.zoom a::after {
    content: '+';
    position: absolute;
    font-size: 43px;
    color: #fff;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    width: 50px;
    height: 50px;
    background: #0669bf;
    line-height: 45px;
    border-radius: 50%;
    text-align: center;
    z-index: 1;
    opacity: 0;
    transition: all 0.3s ease-in-out;
}
.zoom a::before {
    content: '';
    width: 100%;
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    background: rgba(0, 0, 0, 0.5);
    z-index: 1;
    opacity: 0;
    transition: all 0.3s ease-in-out;
}
.zoom a:hover::after,
.zoom a:hover::before {
    opacity: 1;
}

/*리스트 디자인*/
ul.list {
    padding-left: 10px;
}
ul.list li {
    padding-left: 15px;
    position: relative;
}
ul.list li::before {
    content: '';
    position: absolute;
    top: 11px;
    left: 0;
    width: 6px;
    height: 6px;
    background: #0669bf;
    border-radius: 100%;
}

.pro-gallery-area {
    position: relative;
}

.pro-gallery-area .swiper-container {
    max-width: 1100px !important;
    display: block;
    margin: auto;
    overflow: hidden;
    width: 100%;
}
.pro-gallery-area .swiper-button-prev.biz-prev-btn,
.pro-gallery-area .swiper-button-next.biz-next-btn {
    top: 50% !important;
}
.pro-gallery-area .swiper-button-prev.biz-prev-btn {
    left: -70px !important;
}
.pro-gallery-area .swiper-button-next.biz-next-btn {
    right: -70px !important;
}

.swiper-button-prev.biz-prev-btn::after,
.swiper-button-next.biz-next-btn::after {
    color: #ddd;
}

.swiper-button-prev.biz-prev-btn:hover::after,
.swiper-button-next.biz-next-btn:hover::after {
    color: #05428a;
}

.pro-gallery-area .swiper-slide .bbsnewf5 img {
    width: 550px;
    height: 400px;
    object-fit: cover;
    object-position: center;
}
.pro-gallery-area.slid-img3 .swiper-slide .bbsnewf5 img {
    width: 360px;
    height: 280px;
}
@media (max-width: 1200px) {
    .pro-gallery-area table.board_output.gallerybbs.gallery-cont01 {
        margin: 0 auto;
    }
    .pro-gallery-area .swiper-container {
        max-width: 900px !important;
    }
    .pro-gallery-area .swiper-button-next.biz-next-btn {
        right: 0px !important;
    }
    .pro-gallery-area .swiper-button-prev.biz-prev-btn {
        left: 0px !important;
    }
    .pro-gallery-area .swiper-slide .bbsnewf5 img {
        height: 300px;
    }
    .pro-gallery-area.slid-img3 .swiper-slide .bbsnewf5 img {
        height: 200px;
    }
}

@media (max-width: 991px) {
    .pro-gallery-area .swiper-container {
        max-width: 720px !important;
    }
    .pro-gallery-area .swiper-slide .bbsnewf5 img,
    .pro-gallery-area.slid-img3 .swiper-slide .bbsnewf5 img {
        height: 220px;
    }
}
@media (max-width: 767px) {
    .pro-gallery-area .swiper-container {
        max-width: 520px !important;
    }
    .pro-gallery-area .swiper-slide .bbsnewf5 img,
    .pro-gallery-area.slid-img3 .swiper-slide .bbsnewf5 img {
        height: 180px;
    }
}
@media (max-width: 575px) {
    .pro-gallery-area .swiper-container {
        max-width: 425px !important;
    }
}
@media (max-width: 460px) {
    .pro-gallery-area .swiper-container {
        max-width: 345px !important;
    }
    .pro-gallery-area .swiper-slide .bbsnewf5 img,
    .pro-gallery-area.slid-img3 .swiper-slide .bbsnewf5 img {
        height: 120px;
    }
}
