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

#site {
    padding-top: 116px;
    font-size: 18px;
    font-family: "Inter", "notokr", sans-serif;
    letter-spacing: -0.034em;
}

a,
button {
    transition: all ease 0.15s;
    -webkit-transition: all ease 0.15s;
    -moz-transition: all ease 0.15s;
    -ms-transition: all ease 0.15s;
    -o-transition: all ease 0.15s;
}

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

p {
    line-height: 1.7em;
}

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

.btn.btn-primary {
    background-color: #212499;
    border-color: #212499;
}
.btn.btn-lg {
    font-size: 14px;
}
.btn.btn-primary:hover,
.btn.btn-primary:focus {
    background-color: #14166a;
    border-color: #14166a;
}
.btn.btn-outline-primary:hover,
.btn.btn-outline-primary:focus {
    background-color: #5a5cb8;
    color: #fff;
}
.btn.btn-outline-primary {
    background: none;
    border: 1px solid #5a5cb8;
    color: #5a5cb8;
}

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

/* 언어 전환 버튼 (다국어) */
.menu-top {
    position: relative;
    margin: 10px 0 -15px;
    text-align: right;
    z-index: 1000;
}
.menu-top ul {
    display: inline-block;
    margin-bottom: 0;
    padding-left: 0;
    list-style: none;
}
.menu-top ul > li {
    float: left;
    position: relative;
    display: inline-block;
    line-height: 1;
}
.menu-top ul > li .lang {
    padding: 7px 10px 6px;
    font-size: 11px;
    font-weight: 500;
    color: #777;
    line-height: 1;
    background: #eee;
    border: none;
    opacity: 0.9;
}
.menu-top ul > li:nth-child(1) .lang {
    border-radius: 30px 0 0 30px;
}
.menu-top ul > li:nth-child(2) .lang {
    border-radius: 0 30px 30px 0;
}
.menu-top ul > li .lang.active {
    color: #fff;
    font-weight: 500;
    background: #5a5cb8;
    opacity: 1;
}
.menu-top ul > li .lang:not(.active):hover {
    color: #000;
    opacity: 1;
}
.menu-top ul > li .lang:focus {
    outline: none;
}

/* 컨텐츠 준비중 입니다. */
.prepare-page {
    width: 100%;
    display: inline-block;
    padding: 85px;
    text-align: center;
    background-color: #f5f5f5;
}
.prepare-page > .exclamation i {
    font-size: 80px;
    color: #5b5cb4;
}
.prepare-page > h4 {
    margin: 25px 0 15px;
    font-size: 28px;
    font-weight: 400;
    color: #333;
}
.prepare-page > h4 strong {
    font-weight: 700;
}
.prepare-page > p {
    margin: 0;
    font-size: 15px;
    color: #787878;
    line-height: 1.55;
}

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

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

#navbar-bg {
    height: 0;
    top: 116px;
    right: 0;
    left: 0;
    position: fixed;
    background: #fff;
    box-shadow: rgba(0, 0, 0, 0.15) 1px 1px 5px;
    transition: height 0.6s cubic-bezier(0.16, 1, 0.3, 1);
    z-index: 1000;
}

.navbar-inverse .navbar-brand img {
    height: 45px;
    margin-top: 8px;
}

.navbar-inverse .navbar-nav > li > a {
    font-size: 20px;
    font-weight: 500;
    color: #000;
}
body[lang="en"] .navbar-inverse .navbar-nav > li > a {
    font-size: 18px;
}
.navbar-inverse .navbar-nav > li > a:hover,
.navbar-inverse .navbar-nav > li > a:focus {
    color: #5a5cb8;
}

.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: #5a5cb8;
}
.navbar-inverse .navbar-nav > li > a::after {
    content: "";
    left: 50%;
    bottom: 0;
    width: 0;
    height: 3px;
    position: absolute;
    background: #5a5cb8;
    transform: translateX(-50%);
    transition: all 0.35s;
}

@media (max-width: 767px) {
    /*.navbar-inverse .navbar-toggle{border:1px solid #666;}*/
    .navbar-inverse .navbar-toggle {
        border: 0;
        padding: 9px 0;
        margin: 30px 15px 30px 0;
    }
    .navbar-inverse .navbar-toggle .icon-bar {
        background-color: #333;
        transition: ease-in-out 0.15s all;
        opacity: 1;
        position: relative;
    }
    .navbar-inverse .navbar-toggle:hover,
    .navbar-inverse .navbar-toggle:focus {
        background: none;
        border-color: #386daf;
    }
    .navbar-inverse .navbar-toggle:hover .icon-bar,
    .navbar-inverse .navbar-toggle:focus .icon-bar {
        background-color: #386daf;
    }
    .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;
        transform: translate(-50%, 0px);
        border-radius: 0px;
        border: none;
        margin-top: 15px;
        padding: 0px;
        background: transparent;
        /* background: rgba(0,0,0,0.85); */
        box-shadow: none;
        /* -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: 0.4s;
        animation-name: fadeIn;
        z-index: 1030;
        /* min-width: 180px; */
        width: 120px;
    }
    .navbar-inverse .navbar-nav .dropdown-menu > li > a {
        box-sizing: border-box;
        padding: 8px 15px;
        font-size: 16px;
        color: #111;
        text-align: center;
        white-space: normal;
    }
    body[lang="en"] .navbar-inverse .navbar-nav .dropdown-menu > li > a {
        font-size: 14px;
    }
    .navbar-inverse .navbar-nav .dropdown-menu > li > a:hover,
    .navbar-inverse .navbar-nav .dropdown-menu > li > a:focus {
        color: #5a5cb8;
        background: transparent;
        /* background: #5A5CB8; */
    }
    .navbar-inverse .navbar-nav > li > a:hover::after,
    .navbar-inverse .navbar-nav > li > a:focus::after,
    .navbar-inverse .navbar-nav .dropdown.open .dropdown-toggle::after,
    .navbar-inverse .navbar-nav .dropdown.open:hover .dropdown-toggle::after,
    .navbar-inverse .navbar-nav .dropdown.open:focus .dropdown-toggle::after {
        width: 160px;
    }
    .navbar-inverse .navbar-nav > li#gnbauth > a i {
        font-size: 0.95em;
    }
}

@media (min-width: 992px) {
    .navbar-inverse .navbar-right {
        margin-right: -30px;
    }
    #site[lang="en"] .navbar-inverse .navbar-right {
        margin-right: -100px;
    }
    .navbar-inverse .navbar-nav > li > a {
        padding: 35px 30px;
    }
    body[lang="en"] .navbar-inverse .navbar-nav > li > a {
        padding: 35px;
    }
    html.logined body[lang="en"] .navbar-inverse .navbar-nav > li > a {
        padding-right: 25px;
        padding-left: 25px;
    }
}

/* 슬라이드 공통 */
.carousel-control {
    text-shadow: 0px 2px 6px rgba(0, 0, 0, 0.125);
    transition: ease-in-out 0.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: #fff;
    border: 1px solid #fff;
    margin: 0 4px;
    border-radius: 30px;
    transition: ease-in-out 0.15s all;
}
.carousel-indicators li.active {
    width: 12px;
    height: 12px;
    background-color: transparent;
    margin: 0 4px;
    box-shadow: 0px 2px 6pxrgba (0, 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: 6px;
        height: 6px;
    }
}

/* 푸터 */
#site footer {
    margin-top: 0px;
    background-color: #333;
    color: #ddd;
}
#site footer .footer-info {
    padding: 45px 0 40px;
}
#site footer .footer-info .container {
    position: relative;
}
#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: 15px;
    margin-right: 15px;
    line-height: 24px;
    letter-spacing: -0.015em;
    color: #eee;
    font-weight: 300;
}
#site[lang="en"] footer .footer-info ul li {
    font-size: 14px;
}
#site footer .footer-info ul li:first-child {
    font-weight: 600;
    color: #ebebeb;
    margin-bottom: 7px;
}
#site footer .footer-info ul li.copy {
    margin-top: 7px;
    color: #a1a1a1;
    letter-spacing: 0;
}
#site footer .footer-info ul li .tit {
    position: relative;
    padding-right: 9px;
    margin-right: 9px;
    font-weight: 500;
    color: #ebebeb;
}
#site footer .footer-info ul li .tit::before {
    content: "";
    display: block;
    position: absolute;
    width: 1px;
    height: 13px;
    background: #6a6a6a;
    right: -3px;
    top: 13%;
}
#site footer .footer-info ul li + li .tit {
    padding-left: 10px;
}
#site footer .footer-info ul li + li .tit::before {
    content: "";
    top: 3px;
    left: -3px;
    height: 11px;
    position: absolute;
    border-right: 1px solid #999;
}
/* 로그인/로그아웃 버튼 */
#site footer .footer-info .wrap-btn {
    top: 0;
    right: 0;
    position: absolute;
}
#site footer .footer-info .btn {
    min-width: 74px;
    padding: 13px 15px;
    font-size: 13px;
    font-weight: 400;
    color: #bfcbe3;
    letter-spacing: 0;
    line-height: 0;
    border-radius: 2px;
    border: 1px solid #bfcbe3;
}
#site footer .footer-info .btn:hover,
#site footer .footer-info .btn:focus {
    color: #fff;
    border-color: #5a5cb8;
    background: #5a5cb8;
}
#site footer .footer-info .btn.logout {
    display: none;
}
html.logined #site footer .footer-info .btn.login {
    display: none;
}
html.logined #site footer .footer-info .btn.logout {
    display: inline-block;
}

/* 메인 페이지 */
#mainCarousel .carousel-inner .item {
    height: 740px;
}
#mainCarousel .carousel-caption h1 {
    margin: 0 0 35px;
    font-size: 74px;
    /* font-size: 72px; */
    font-weight: 700;
    letter-spacing: -0.05em;
}
#mainCarousel .carousel-caption p {
    font-size: 24px;
    font-weight: 400;
    line-height: 1.3em;
}
@media (max-width: 767px) {
    #mainCarousel .carousel-inner .item {
        height: 250px;
    }
    #mainCarousel .carousel-caption h1 {
        font-size: 24px;
    }
    #mainCarousel .carousel-caption p {
        font-size: 12px;
    }
}

#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 .inner {
    margin-top: 0;
    margin-bottom: 0;
}

.board_box_video .inner:hover,
.board_box_blog2 .inner:hover {
    border-color: #8081a3;
}

.board_box_blog2 .inner .bottom {
    padding: 15px;
    background: #fff;
}

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

.board_box_blog2 .inner .bottom .title a {
    font-size: 16px;
    font-weight: 500;
}

.board_box_blog2 .inner .bottom .title a:hover {
    color: #14166a;
    text-decoration: none;
}

.board_box_blog2 .inner .bottom .info {
    display: none;
}

.board_box_blog2 .inner .top a .thumb {
    height: 220px;
}

/* 메인 추가 스타일 */
.mainPage {
    padding: 115px 0;
    /* padding: 115px 0 0; */
}
.mainPage h2,
.mainPage h3 {
    margin: 0 0 60px;
    /* margin: 0 0 40px; */
    font-size: 42px;
    /* font-size: 40px; */
    font-weight: 600;
    color: #111;
    text-align: center;
    letter-spacing: -0.065em;
}
.mainPage #section2 h3 {
    text-align: left;
    font-size: 25px;
    margin: 0 0 15px;
}
/* 생산분야 */
.mainPage .box-production > div:nth-child(n + 3) {
    margin-top: 50px;
}
.mainPage .box-production a {
    text-align: center;
    text-decoration: none;
}
.mainPage .box-production .w_img {
    position: relative;
    background: #000;
    overflow: hidden;
}
.mainPage .box-production .w_img::before,
.mainPage .box-production .w_img::after {
    content: "";
    width: 0;
    height: 0;
    position: absolute;
    transition: all 0.4s;
    z-index: 100;
}
.mainPage .box-production .w_img::before {
    top: 0;
    left: 0;
    border-top: 4px solid transparent;
    border-left: 4px solid transparent;
}
.mainPage .box-production .w_img::after {
    right: 0;
    bottom: 0;
    border-right: 4px solid transparent;
    border-bottom: 4px solid transparent;
}
.mainPage .box-production .w_img img {
    transform: scale(1);
    transition: all cubic-bezier(0.27, 0.51, 0.38, 1.01) 0.35s;
}
.mainPage .box-production .w_img i {
    top: 50%;
    left: 50%;
    width: 60px;
    height: 60px;
    position: absolute;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 30px;
    color: #fff;
    box-shadow: 0 5px 10px rgba(0, 0, 0, 0.8);
    transform: translate(-50%, -50%);
    transition: all cubic-bezier(0.27, 0.51, 0.38, 1.01) 0.35s;
    background: #5a5cb8;
    opacity: 0;
}
.mainPage .box-production .tit {
    margin: 40px 0 0;
    /* margin: 30px 0 0; */
    font-size: 24px;
    /* font-size: 22px; */
    font-weight: 600;
    letter-spacing: -0.055em;
    text-align: center;
}
.mainPage .box-production p {
    margin: 15px 0 0;
    font-size: 17px;
    line-height: 1.6em;
    /* line-height: 1.5em; */
}
.mainPage .box-production a:hover .tit {
    color: #3c3ea1;
}
.mainPage .box-production a:hover .w_img::before,
.mainPage .box-production a:hover .w_img::after {
    width: 100%;
    height: 100%;
    border-color: #5a5cb8;
}
.mainPage .box-production a:hover .w_img i {
    opacity: 1;
}
.mainPage .box-production a:hover .w_img img {
    transform: scale(1.1);
    opacity: 0.4;
}
/* 하단 */
/* .mainPage #section2 {
    margin-top: 115px;
    padding: 75px 0 0;
    background: #f5f5f5;
    display: none;
} */
#section_44f683 {
    padding: 70px 0;
    /* padding-bottom: 50px; */
    background: #f5f5f5;
}
#section_44f683 .container > .row {
    display: flex;
}
#section_44f683 .page-header {
    margin: 0;
    padding-bottom: 0;
    border-bottom: none;
}
#section_44f683 .page-header .pull-right {
    text-decoration: none;
}
#section_44f683 .page-header .pull-right i {
    display: flex;
    align-items: center;
    justify-content: center;
    color: #333;
    background: #fff;
    border: 0;
    font-size: 20px;
    aspect-ratio: 1;
    width: 20px;
    margin-top: 2px;
}
#section_44f683 .page-header .pull-right i::before {
    /* content: "\f948"; */
    /* font: normal normal normal 1em/1 "Phosphor"; */
}
#section_44f683 .page-header .pull-right:hover i {
    color: #fff;
    background: #5a5cb8;
}
#section_44f683 .page-header h4 {
    margin: 0 0 15px;
    font-size: 24px;
    /* font-size: 22px; */
    font-weight: 600;
    letter-spacing: -0.055em;
    padding-bottom: 17px;
    border-bottom: 1px solid #999;
}
.board_box_list ul li {
    padding: 4px 0;
}
.board_box_list ul li a:hover {
    color: #3c3ea1;
}
.board_box_list .info span {
    font-size: 0.9em;
}
.board_box_list .info span.hits {
    display: none;
}
/* 오시는 길 */
#section_44f683 .location {
    position: relative;
    flex-basis: calc(50% - 15px);
    margin-left: 15px;
    padding: 30px 40px 20px;
    background: #fff;
    display: flex;
    flex-direction: column;
}
#section_44f683 .location .page-header .pull-right i {
    width: 80px;
    height: 32px;
    margin-top: -4px;
    background: #fff;
    border: 1px solid #5a5cb8;
    border-radius: 50px;
    transition: all ease 0.15s;
}
#section_44f683 .location .page-header .pull-right i::before {
    top: 35px;
    right: 54px;
    font-size: 13px;
    position: absolute;
    color: #5a5cb8;
}
#section_44f683 .location .page-header .pull-right i::after {
    content: "더보기";
    top: 35px;
    right: 67px;
    position: absolute;
    font-size: 14px;
    font-weight: 500;
    font-family: "notokr";
    color: #5a5cb8;
}
body[lang="en"] #section_44f683 .location .page-header .pull-right i::after {
    content: "More";
}
#section_44f683 .location .page-header .pull-right:hover i {
    background: #5a5cb8;
}
#section_44f683 .location .page-header .pull-right:hover i::before,
#section_44f683 .location .page-header .pull-right:hover i::after {
    color: #fff;
}
#section_44f683 .location .page-header h4 {
    padding-bottom: 0;
    border-bottom: none;
}
body[lang="en"] #section_44f683 .location .page-header h4 {
    margin: 0;
}
main ul.list-contact {
    top: 27px;
    left: 135px;
    width: auto;
    /* position: absolute; */
    /* margin: 5px 0 0; */
    padding: 0;
    margin-block: 0 15px;
    border: none;
}
body[lang="en"] main ul.list-contact {
    top: 0;
    left: 0;
    position: relative;
    display: inline-block;
    margin: 0 0 12px;
}
main ul.list-contact > li.addr {
    flex-basis: 100%;
    font-size: 17px;
    /* justify-content: right; */
}
main ul.list-contact > li.addr i {
    width: 20px;
    height: 21px;
    margin-right: 6px;
    padding: 5px 6px;
    font-size: 12px;
}
@media (min-width: 767px) {
    #section_44f683 [class^="board_box_"] {
        flex-basis: calc(50% - 15px);
        margin-bottom: 0 !important;
        padding: 30px 40px 20px;
        background: #fff;
        margin-right: 15px;
    }
}

/*************** 서브 시작 ***************/
/* 공통 스타일 */
.navbar-inverse + .container {
    width: 100%;
    padding: 0;
}
.subPage > .pageTop {
    height: 265px;
    /* height: 255px; */
    position: relative;
    color: #fff;
    text-align: center;
    background: #333 url(/public/img/sub/back_page_top01.jpg) no-repeat;
    background-size: cover;
    background-position: center;
}
.subPage[id^="production"] > .pageTop {
    background: #333 url(/public/img/sub/back_page_top02.jpg) no-repeat;
}
.subPage[id^="equipment"] > .pageTop {
    background: #333 url(/public/img/sub/back_page_top03.jpg) no-repeat;
}
.subPage[id^="esg"] > .pageTop {
    background: #333 url(/public/img/sub/esg-top.jpg) no-repeat;
}
.subPage#project > .pageTop {
    background: #333 url(/public/img/sub/back_page_top04.jpg) no-repeat;
}
.subPage#notice > .pageTop {
    background: #333 url(/public/img/sub/back_page_top05.jpg) no-repeat;
}
.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 h1,
.subPage > .pageTop h2 {
    margin: -50px 0 0;
    font-size: 44px;
    /* font-size: 41px; */
    font-weight: 300;
    letter-spacing: -0.06em;
}
#project .pageTop h1,
#notice .pageTop h1 {
    margin: -35px 0 0;
}
/* Breadcrumb */
.subPage .breadcrumb {
    top: 54%;
    left: 50%;
    transform: translateX(-50%);
    position: absolute;
    margin: 0;
    padding: 0;
    font-size: 16px;
    /* font-size: 14px; */
    font-weight: 300;
    letter-spacing: 0;
    background-color: transparent;
}
.subPage .breadcrumb .current {
    font-weight: 400;
}
.breadcrumb > li + li:before {
    content: "\f054";
    padding: 0 6px;
    font-size: 8px;
    font-weight: 900;
    font-family: "Font Awesome 6 Free";
}
#project .breadcrumb,
#notice .breadcrumb {
    top: 58%;
}
/* Link */
.subPage .link {
    position: relative;
}
.subPage .link ul {
    display: flex;
    margin-top: -35px;
    background: #fff;
    box-shadow: 3px 3px 13px rgba(0, 0, 0, 0.17);
}
.subPage .link ul > li {
    flex: 1 1 0%;
    text-align: center;
}
.subPage .link ul > li > a {
    width: 100%;
    height: 100%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: clamp(15px,5vw,19px) 5px;
    font-size: clamp(15px,2vw,18px);
    font-weight: 600;
    color: #9f9f9f;
    letter-spacing: 0;
    text-align: center;
    transition: none;
    letter-spacing: -0.05em;
    border-top: 3px solid #ffffff;
    line-height: 1.5em;
}
.subPage .link ul > li + li > a::before {
    content: "";
    top: 50%;
    left: -1px;
    height: 19px;
    position: absolute;
    border-left: 1px solid #d5d5d5;
    transform: translateY(-50%);
}
.subPage .link ul > li.active > a,
.subPage .link ul > li:not(.active) > a:hover,
.subPage .link ul > li:not(.active) > a:focus {
    font-weight: 600;
    color: #2b2ea7;
    background: transparent;
    border-top: 3px solid #2e32b9;
}

.subPage > .contents {
    padding: 120px 0 140px;
    /* padding: 100px 0 120px; */
}
.subPage > .contents .row:not(.page-title) + .row {
    margin-top: 140px;
    /* margin-top: 90px; */
}
.subPage[id*="esg"] > .contents .row:not(.page-title) + .row {
    margin-top: clamp(100px, 15vw, 200px);
}
#production02 #row3 {
    margin-top: 60px;
}
#intro02 .contents {
    padding-bottom: 90px;
}
/* #intro02 .contents {
    padding: 90px 0 90px;
} */
#production02 .contents {
    padding: 100px 0 70px;
}
.title-lv-1 {
    margin: 0 0 100px;
    font-size: 43px;
    /* font-size: 40px; */
    font-weight: 700;
    color: #111;
    letter-spacing: -0.055em;
    text-align: center;
}
.title-lv-2 {
    position: relative;
    margin: 0 0 35px;
    /* margin: 0 0 20px; */
    font-size: 32px;
    /* font-size: 30px; */
    font-weight: 600;
    color: #222;
    letter-spacing: -0.055em;
    padding-left: 12px;
}
[id*="esg"] .title-lv-2 {
    margin-bottom: clamp(40px, 10vw, 60px);
}
#intro04 .title-lv-2 {
    padding-left: 0;
    /* margin: 0 0 20px; */
}
#intro04 .title-lv-2::before {
    display: none;
}
#intro04 .fa-solid.fa-map-location {
    margin-right: 10px;
}
.title-lv-3 {
    position: relative;
    margin: 0 0 25px;
    /* margin: 0 0 15px; */
    padding-left: 12px;
    font-size: 21px;
    /* font-size: 19px; */
    font-weight: 600;
    color: #222;
    letter-spacing: -0.05em;
}
[id*="esg"] .title-lv-3 {
    margin-bottom: 40px;
}
.title-lv-3::before {
    content: "";
    display: block;
    position: absolute;
    width: 5px;
    height: 5px;
    background: #333;
    border-radius: 50%;
    left: 0;
    top: 6px;
}
.title-lv-2::before {
    content: "";
    background: #222;
    top: 4px;
    left: 0;
    position: absolute;
    width: 4px;
    height: 27px;
}

.list-default {
    margin: 0;
    padding-left: 0;
    list-style-type: none;
}
.list-default > li {
    position: relative;
}
.list-num > li {
    padding-left: 32px;
}
.list-num > li + li {
    margin-top: 16px;
}
.list-num > li .no {
    top: -1px;
    left: 0;
    width: 24px;
    height: 24px;
    position: absolute;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 700;
    color: #5a5cb8;
    line-height: 1em;
    border-radius: 30px;
}
.list-num > li .no::after {
    content: ".";
}
.list-dash > li {
    padding-left: 12px;
}
.list-dash > li::before {
    content: "-";
    left: 0;
    position: absolute;
}

table.tb-default {
    margin-bottom: 0;
}
table.tb-default > thead > tr > th,
table.tb-default > tbody > tr > th,
table.tb-default > tbody > tr > td {
    padding: 18px;
    /* padding: 16px; */
    border-bottom: 1px solid #e5e5e5;
    vertical-align: middle;
}
table.tb-default > thead > tr > th,
table.tb-default > tbody > tr > th {
    text-align: center;
}
table.tb-style-1 {
    border-top: 2px solid #ddd;
    /* border-top: 2px solid #333; */
}
table.tb-style-1 > thead > tr > th,
table.tb-style-1 > tbody > tr > th,
table.tb-style-1 > tbody > tr > td {
    padding: 18px;
    /* padding: 15px; */
    font-size: 17px;
    /* font-size: 15px; */
    text-align: center;
}
table.tb-style-1 > thead > tr > th {
    letter-spacing: -0.02em;
    background: #f7f7f7;
}

/* 경영이념 및 조직도 (페이지) */
.wrap-ideology {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
}
.wrap-ideology .tit {
    flex-basis: 30%;
}
.wrap-ideology .tit .inner {
    width: 450px;
    height: 450px;
    display: flex;
    position: relative;
    align-items: center;
    justify-content: center;
    padding: 60px;
    padding-right: 80px;
    background: #e8eff7;
    border-radius: 100%;
}
/* .wrap-ideology .tit h4 {
    width: 260px;
    height: 260px;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    margin: 0;
    font-size: 22px;
    font-weight: 600;
    color: #fff;
    line-height: 1.45em;
    background: #141767;
    border-radius: 100%;
    text-align: center;
} */
.wrap-ideology .tit .inner::before {
    content: "";
    top: 15px;
    left: 15px;
    width: calc(100% - 30px);
    height: calc(100% - 30px);
    position: absolute;
    border: 1px dotted #3f62a6;
    /* border: 1px solid rgb(255 255 255 / 67%); */
    border-radius: 100%;
    /* opacity: 0.5; */
}
.wrap-ideology .desc {
    margin-left: -80px;
}
/* .wrap-ideology .desc .item+.item {
    margin-top: 12px;
} */
.wrap-ideology .desc .item:nth-child(1),
.wrap-ideology .desc .item:nth-child(4) {
    margin-left: -120px;
}
.wrap-ideology .desc .item:nth-child(2),
.wrap-ideology .desc .item:nth-child(3) {
    padding: 17px 0;
    margin-left: 20px;
}
.wrap-ideology .desc .inner {
    display: flex;
    align-items: center;
}
.wrap-ideology .desc h5 {
    width: 120px;
    height: 120px;
    position: relative;
    margin: 0 30px 0 0;
    padding: 16px 45px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 20px;
    font-weight: 500;
    color: #fff;
    text-align: center;
    background: #012e8b;
    border-radius: 100%;
    letter-spacing: -0.045em;
    line-height: 1.2em;
    box-shadow: 7px 7px 15px rgb(0 0 0 / 5%);
}
body[lang="en"] .wrap-ideology .desc h5 {
    font-size: 17px;
}
.wrap-ideology .desc p {
    margin: 0;
    font-size: 18px;
    font-weight: 500;
    letter-spacing: -0.045em;
    line-height: 1.5em;
}

/* 연혁 및 인증현황 (페이지) */
.wrap-history {
    position: relative;
}
.wrap-history::before {
    content: "";
    top: 15px;
    left: 24.4%;
    height: 99%;
    position: absolute;
    border-left: 10px solid #f5f5f5;
    border-radius: 30px;
}
.wrap-history > ul > li {
    display: flex;
    flex-wrap: wrap;
}
.wrap-history > ul > li + li {
    margin-top: 35px;
}
.wrap-history > ul > li .year {
    flex-basis: 20%;
    position: relative;
    margin: 0;
    font-size: 41px;
    /* font-size: 39px; */
    font-weight: 200;
    font-style: italic;
    color: #5a5cb8;
    line-height: 1.3;
}
.wrap-history > ul > li .year::before {
    content: "";
    top: 23.5px;
    right: -40px;
    width: 55px;
    /* width: 70px; */
    position: absolute;
    border-top: 1px solid #ddd;
}
.wrap-history > ul > li .year::after {
    content: "";
    top: 15px;
    right: -47px;
    width: 18px;
    height: 18px;
    position: absolute;
    background: #5a5cb8;
    border: 4px solid #e1e1f5;
    border-radius: 50px;
}
.wrap-history .detail {
    flex-basis: 80%;
    padding: 13px 0 0 90px;
}
.wrap-history .detail ul {
    position: relative;
}
.wrap-history .detail ul > li {
    color: #444;
}
.wrap-history .detail ul > li + li {
    margin-top: 10px;
}
.wrap-history .detail ul > li.img + li {
    margin-top: 20px;
}
.wrap-history .detail ul > li img {
    width: 120px;
    margin: 5px 0 0;
    padding: 3px;
    border: 1px solid #ececed;
    box-shadow: 1px 1px 5px #eee;
}

/* 인증현황 (페이지) */
.wrap-certi .certi figure {
    margin-bottom: 50px;
}
.wrap-certi .certi figure img {
    padding: 5px;
    border: 1px solid #ececed;
    box-shadow: 1px 1px 5px #eee;
}
.wrap-certi .certi.multiple figure img {
    padding: 0;
    border: none;
    box-shadow: none;
}
.wrap-certi .certi figure figcaption {
    margin-top: 15px;
    font-size: 16px;
    font-weight: 400;
    text-align: center;
    color: #222;
    letter-spacing: -0.04em;
}
#intro02 #row2 .table-responsive {
    margin-bottom: 35px;
}
#intro02 #row2 table > thead > tr > th {
    width: 50%;
}
#intro02 #row2 table > thead > tr > th:nth-child(2) {
    width: 20%;
}
#intro02 #row2 table > thead > tr > th:nth-child(3) {
    width: 30%;
}
#intro02 #row2 .wrap-certi {
    margin: 0 -10px;
}
#intro02 #row2 .wrap-certi .certi.col {
    width: 20%;
    float: left;
    padding: 0 10px;
}

/* 주요 거래처 (페이지) */
.box-partners {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    margin: 0 -10px;
}
.box-partners .item {
    flex-basis: 20%;
    margin-bottom: 20px;
    padding: 0 10px;
}
.box-partners .item .inner {
    height: 100%;
    display: flex;
    align-items: center;
    padding: 15px;
    border: 1px solid #ececed;
}
.box-partners .item img {
    max-width: 150px;
    max-height: 75px;
    /* max-width: 130px;
    max-height: 60px; */
}
.box-partners .clearfix {
    flex-basis: 100%;
}

/* 오시는 길 (페이지) */
ul.list-contact {
    width: 100%;
    display: flex;
    justify-content: center;
    margin: 10px 0 0;
    padding: 30px;
    border: 5px solid #eee;
}
ul.list-contact > li {
    flex: 1 1 auto;
    display: inline-block;
    font-size: 20px;
    /* font-size: 18px; */
    font-weight: 600;
}
ul.list-contact > li:not(.addr) + li {
    margin-left: 30px;
}
ul.list-contact > li:not(.addr) + li::before {
    content: "";
    top: 6px;
    left: -20px;
    height: 14px;
    position: absolute;
    border-left: 1px solid #ddd;
}
ul.list-contact > li.addr {
    flex-basis: 61%;
    font-size: 21px;
    font-weight: 400;
    letter-spacing: -0.04em;
    display: flex;
    align-items: center;
}
ul.list-contact > li.addr i {
    margin-right: 8px;
    width: 30px;
    height: 30px;
    background: #e5e5ef;
    color: #14166a;
    border-radius: 50%;
    padding: 7px 10px;
    font-size: 15px;
}
ul.list-contact > li .tit {
    margin-right: 12px;
    font-size: 0.96em;
    font-weight: 600;
    color: #999;
}
body[lang="en"] ul.list-contact {
    display: inline-block;
}
body[lang="en"] ul.list-contact > li.addr {
    margin-bottom: 10px;
}

/* 제철설비 (페이지) */
#production01 .box-top {
    display: flex;
    margin: 0 -10px 50px;
}
#production01 .box-top.bottom {
    margin: 50px -10px 0;
}
#production01 .box-top > figure {
    flex-basis: 20%;
    padding: 0 10px;
}
#production01 .box-top > figure img {
    border: 1px solid #ddd;
}
#production01 .box-top > figure.multiple {
    flex-basis: 40%;
}
#production01 .box-top > figure.multiple img {
    float: left;
    width: calc(50% - 10px);
    display: inline-block;
}
#production01 .box-top > figure.multiple img:nth-of-type(1) {
    margin-right: 10px;
}
#production01 .box-top > figure.multiple img:nth-of-type(2) {
    margin-left: 10px;
}
#production01 .box-top > figure figcaption {
    margin-top: 10px;
    padding: 10px;
    font-weight: 500;
    text-align: center;
    background: #979cbb;
    position: relative;
    color: #fff;
}
#production01 .box-top > figure figcaption::before {
    content: "";
    display: block;
    position: absolute;
    width: 0px;
    height: 0px;
    border-bottom: 10px solid transparent;
    border-left: 10px solid #979cbb;
    transform: rotate(225deg) translateX(50%);
    top: 41px;
    left: 50%;
}
#production01 .box-top > .item.triple {
    text-align: center;
}
#production01 .box-top > .item.triple img {
    float: left;
    width: 33.3%;
    padding: 0 10px;
}

.box-prod {
    display: flex;
    flex-wrap: wrap;
    margin: 0 -10px;
    padding-bottom: 20px;
}
.box-prod > .item {
    flex-basis: 25%;
    padding: 0 10px 0px;
}
.box-prod > .item .bottom,
.box-top > .item .bottom {
    margin: 20px 0 45px;
    /* margin: 15px 0 45px; */
}
.box-top > .item .bottom {
    margin-bottom: 0;
}
.box-prod > .item .name,
.box-top > .item .name {
    margin: 0 0 7px;
    font-size: 19px;
    /* font-size: 16px; */
    font-weight: 600;
    /* font-weight: 500; */
    color: #000;
}
.box-prod > .item .desc {
    font-size: 17px;
    /* font-size: 14px; */
    line-height: 1.4em;
    letter-spacing: 0;
    color: #9d9d9d;
}
#production01 .row:not(#row3) .box-prod > .item {
    flex-basis: 50%;
}
/* 비철 */
#production01 #row2 .box-prod > .item.multiple {
    flex-basis: 56%;
}
#production01 #row2 .box-prod > .item.multiple img {
    width: 550px;
}
#production01 #row2 .box-prod > .item.multiple img + img {
    width: 500px;
    margin-top: 50px;
}
#production01 #row2 .box-prod > .item.multiple .bottom {
    padding-left: 60px;
}
#production01 #row2 .box-prod > .item.multiple-next {
    flex-basis: 22%;
    margin-top: 60px;
    padding: 0 20px;
}
/* 주강품 */
/* #production01 #row3 .box-prod > .item:nth-child(5) {
    flex-basis: 38%;
}
#production01 #row3 .box-prod > .item:nth-child(6) {
    flex-basis: 37%;
    padding-left: 40px;
}
#production01 #row3 .box-prod > .item:nth-child(6) img {
    width: 100%;
    height: 211px;
}
#production01 #row3 .box-prod > .item:nth-child(7) {
    flex-basis: 25%;
    text-align: center;
}
#production01 #row3 .box-prod > .item:nth-child(8) {
    flex-basis: 59%;
    margin-top: -80px;
}
#production01 #row3 .box-prod > .item:nth-child(8) .bottom {
    float: left;
    width: 33.3%;
    text-align: center;
} */
/* ROLLER */
/* #production01 #row4 .item:nth-child(5) img,
#production01 #row4 .item:nth-child(6) img {
    padding: 30px;
    border: 1px solid #ddd;
} */
/* #production01 #row4 .box-prod > .item:nth-child(19) {
    flex-basis: 50%;
}
#production01 #row4 .box-prod > .item:nth-child(20),
#production01 #row4 .box-prod > .item:nth-child(22) {
    flex-basis: 22%;
}
#production01 #row4 .box-prod > .item:nth-child(21),
#production01 #row4 .box-prod > .item:nth-child(23) {
    flex-basis: 28%;
} */
/* SEGMENT SYSTEM / PAY OFF REEL SYSTEM */
#production01 #row5 img {
    padding: 30px;
    border: 1px solid #ddd;
}
/* BM,RM,FM SCREW SHAFT & NUT SYSTEM */
#production01 #row6 .box-prod > .item {
    text-align: center;
}
/* CROSS HEAD SYSTEM SET */
#production01 #row7 img {
    padding: 30px;
    border: 1px solid #ddd;
}
/* row 9 */
#production01 #row9 img {
    margin-bottom: 20px;
    padding: 30px;
    border: 1px solid #ddd;
}
/* #production01 #row9 > div > img {
    margin-bottom: 20px;
    padding: 30px;
    border: 1px solid #ddd;
}
#production01 #row9 .item > img {
    padding: 20px;
    border: 1px solid #ddd;
} */
/* row 10 */
#production01 #row10 img {
    margin-bottom: 20px;
    padding: 30px;
    border: 1px solid #ddd;
}
/* row 11 */
#production01 #row11 .box-prod > .item:nth-child(1) {
    flex-basis: 55%;
}
#production01 #row11 .box-prod > .item:nth-child(1) img {
    padding: 20px;
    border: 1px solid #ddd;
}
#production01 #row11 .box-prod > .item:nth-child(2) {
    flex-basis: 45%;
}
/* row 12 */
#production01 #row12 img {
    padding: 30px;
    border: 1px solid #ddd;
}

/* 집진설비 및 발전소 (페이지) */
/* 집진설비 */
#production02 .box-prod2 {
    display: flex;
    flex-wrap: wrap;
    align-items: end;
    width: 1140px;
}
#production02 .box-prod2 .inner {
    display: flex;
    padding: 25px 0;
    border: 1px solid #ddd;
}
#production02 .box-prod2 img {
    padding: 0 64px;
}
#production02 .box-prod2 img + img {
    border-left: 1px dashed #ddd;
}
/* #production02 .box-prod2 p {
    margin: 0;
    font-weight: 500;
    margin-top: 15px;
    color: #000;
} */
/* 전기집진설비 */
#production02 #row2 > div + div {
    margin-top: 70px;
    /* margin-top: 50px; */
}
#production02 #row2 .col1 .box-prod > .item {
    flex-basis: 33.3%;
}
#production02 #row2 .col2 .box-prod > .item {
    flex-basis: 33.3%;
    text-align: center;
}
/* #production02 #row2 .col2 .box-prod > .item:nth-child(1) {
    padding-right: 60px;
    padding-bottom: 0;
} */
#production02 #row2 .box-prod > .item.multiple {
    right: 6px;
    bottom: -66px;
    width: 66.6%;
    position: absolute;
    padding: 0 0 0 7px;
    /* padding: 0; */
    text-align: center;
}
#production02 #row2 .box-prod > .item.multiple img {
    float: left;
    width: 33.3%;
    padding: 0 10px;
}
#production02 #row2 .col3 .box-prod > .item:nth-child(1) {
    flex-basis: 54%;
}
#production02 #row2 .col3 .box-prod > .item:nth-child(2) {
    flex-basis: 46%;
}
#production02 #row2 .col3 .box-prod > .item img + img {
    margin-top: 30px;
}
#production02 #row2 .col4 .box-prod > .item {
    flex-basis: 33.3%;
}
/* #production02 #row2 .col4 .box-prod > .item:nth-child(4),
#production02 #row2 .col4 .box-prod > .item:nth-child(5) {
    flex-basis: 24%;
}
#production02 #row2 .col4 .box-prod > .item:nth-child(6) {
    flex-basis: 52%;
} */
#production02 #row2 .col4 .box-prod > .item:nth-child(4) {
    flex-basis: 100%;
    text-align: center;
}
#production02 #row2 .col4 .box-prod > .item:nth-child(4) img {
    width: 100%;
    padding: 30px;
    border: 1px solid #ddd;
}
/* 발전소 관련 제품 */
#production02 #row3 .box-prod > .item {
    flex-basis: 50%;
    text-align: center;
}
#production02 #row3 .col1 .box-prod > .item:nth-child(1),
#production02 #row3 .col1 .box-prod > .item:nth-child(2) {
    flex-basis: 24%;
}
#production02 #row3 .col1 .box-prod > .item:nth-child(3) {
    flex-basis: 52%;
}
#production02 #row3 .col2 img {
    padding: 30px;
    border: 1px solid #ddd;
}
/* #production02 #row3 .col1 .box-prod > .item.multiple1 {
    flex-basis: 100%;
    margin: 0 -10px;
}
#production02 #row3 .col1 .box-prod > .item.multiple1 img {
    float: left;
    width: 45%;
    padding: 0 10px;
}
#production02 #row3 .col1 .box-prod > .item.multiple1 img:nth-of-type(1) {
    width: 55%;
}
#production02 #row3 .col1 .box-prod > .item.multiple2 {
    flex-basis: 100%;
    margin: 0 -10px;
}
#production02 #row3 .col1 .box-prod > .item.multiple2 img {
    float: left;
    width: 31%;
    padding: 0 10px;
}
#production02 #row3 .col1 .box-prod > .item.multiple2 img:nth-of-type(3) {
    width: 38%;
} */
/* #production02 #row3 .col2 .box-prod > .item {
    flex-basis: 35%;
    padding-bottom: 0;
}
#production02 #row3 .col2 .box-prod > .item:nth-of-type(3) {
    flex-basis: 30%;
}
#production02 .col-md-12.col2 .item:nth-child(3) img{
    margin-right:0;
}
#production02 #row3 .col2 .box-prod > .item.multiple {
    flex-basis: 75%;
    margin: -310px -20px 0;
    padding: 0 30px 0;
}
#production02 #row3 .col2 .box-prod > .item.multiple img {
    float: left;
    width: 45%;
    padding: 0 20px;
}
#production02 #row3 .col2 .box-prod > .item.multiple img:nth-of-type(2) {
    width: 55%;
} */

/* 조선해양 (페이지) */
#production03 #row1 img {
    padding: 50px;
    border: 1px solid #ddd;
}

/* 프로젝트 (페이지) */
#project p.notice {
    margin: 0 0 50px;
    /* margin: 0 0 20px; */
    font-size: 0.96em;
    font-weight: 400;
    color: #555;
    text-align: right;
    letter-spacing: -0.04em;
}
.panel-group.panel-rnd {
    margin-bottom: 0;
}
.panel-group.panel-rnd .panel {
    border: none;
    border-radius: 0;
}
.panel-group.panel-rnd .panel + .panel {
    margin-top: 15px;
}
.panel-group.panel-rnd .panel .panel-heading {
    padding: 0;
    background-color: #f1f1f9;
}
.panel-group.panel-rnd .panel .panel-heading a {
    width: 100%;
    position: relative;
    display: inline-block;
    padding: 23px 23px;
    text-decoration: none;
    border: 1px solid #e1e1f5;
    font-size: 19px;
    /* font-size: 17px; */
}
.panel-group.panel-rnd .panel .panel-heading a:hover,
.panel-group.panel-rnd .panel .panel-heading a:focus,
.panel-group.panel-rnd .panel .panel-heading a[aria-expanded="true"] {
    color: #5a5cb8;
    border-color: #8c8dcc;
}
.panel-group.panel-rnd .panel .panel-heading a::after {
    content: "\fb48";
    top: 23px;
    right: 21px;
    position: absolute;
    font: normal normal normal 1em/1 "Phosphor";
    color: #8c8dcc;
    font-size: 18px;
}
.panel-group.panel-rnd .panel .panel-heading a[aria-expanded="true"]::after {
    content: "\fb4b";
}
.panel-group.panel-rnd .panel .panel-body {
    margin-top: 10px;
    padding: 35px;
    border: 1px solid #e1e1f5;
}
/* #collapse4 .panel-body > .row {
    display: flex;
    align-items: center;
}
#collapse4 .panel-body .col-md-7 {
    padding-left: 45px;
} */
.panel-body .tit-box-rounded {
    margin-top: 30px;
    text-align: center;
}
.panel-body .tit-box-rounded p {
    display: inline-block;
    margin: 0;
    padding: 10px 35px;
    font-size: 20px;
    font-weight: 500;
    color: #fff;
    background: #5a5cb8;
    /* background: #f16b2d; */
    border-radius: 30px;
}
.panel-body .list-border {
    margin-bottom: 0;
    padding: 30px 30px 30px 55px;
    font-weight: 500;
    background: #fff;
    border: 6px solid #efefef;
}
body[lang="en"] .panel-body .list-border {
    padding: 30px 20px 30px 45px;
}
.panel-body .list-border > li + li {
    margin-top: 5px;
}
.panel-body .text-border {
    padding: 30px;
    font-size: 20px;
    font-weight: 600;
    text-align: center;
    background: #fff;
    border: 6px solid #efefef;
}
.panel-body .text-border p:last-child {
    margin-bottom: 0;
}
.panel-body .w_badge {
    position: relative;
}
.panel-body .w_badge.left {
    padding-left: 5px;
}
.panel-body .w_badge.right {
    padding-right: 20px;
}
.panel-body .badge {
    position: absolute;
    padding: 0;
    background: transparent;
    border-radius: 0;
}
.panel-body .badge.default-prod {
    top: -15px;
    left: -20px;
    width: 110px;
    height: 110px;
    position: absolute;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0;
    font-size: 21px;
    font-weight: 500;
    color: #fff;
    letter-spacing: 0;
    line-height: 1.2em;
    background: #5a5cb8;
    border: 5px solid #f1f1f9;
    border-radius: 100%;
    box-shadow: 1px 2px 5px rgb(0 0 0 / 80%);
}
body[lang="en"] .panel-body .badge.default-prod {
    font-size: 19px;
}
.panel-body .badge.patent {
    top: 0;
    right: 0;
    width: 90px;
    height: 111px;
    position: absolute;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0;
    font-size: 72px;
    font-weight: 500;
    color: #fab005;
    letter-spacing: 0;
    z-index: 100;
}
/* .panel-body > .w_badge .badge.patent {
    top: -15px;
    right: -30px;
} */
.panel-body .badge.patent::before {
    content: "";
    top: -15px;
    right: -20px;
    width: 90px;
    height: 111px;
    position: absolute;
    background: url(/public/img/sub/icon_badge2.png) no-repeat center / cover;
}
.panel-body .badge.patent::after {
    content: "특허";
    top: 15px;
    right: 5px;
    position: absolute;
    padding: 6px 0;
    font-size: 22px;
    font-weight: 500;
    color: #fff;
}
body[lang="en"] .panel-body .badge.patent::after {
    content: "Patent";
    top: 16px;
    right: 0;
    font-size: 16px;
}
.panel-body figure figcaption {
    margin-top: 20px;
    text-align: center;
}
.panel-body .highlight {
    margin: 35px 0;
    padding: 15px;
    font-size: 18px;
    /* margin: 30px 0;
    padding: 10px;
    font-size: 16px; */
    font-weight: 700;
    color: #5b5cb7;
    line-height: 1.4em;
    text-align: center;
    background: #f1f1f9;
    border: 2px solid #5b5cb7;
}
.panel-body hr {
    margin: 80px 0;
    border-top: 1px dashed #e1e1f5;
}
.red {
    color: #ff0000;
}
.clearfix.space {
    margin: 30px 0;
}
.w_arrow i {
    top: 50%;
    left: 0;
    content: "\faae";
    position: absolute;
    font-size: 100px;
    color: #3e2f4f;
    text-shadow: 2px 2px 5px rgb(0 0 0 / 30%);
    transform: translateY(-50%);
}
#project #collapse01 .row {
    display: flex;
    align-items: center;
    padding: 0 30px;
}
#project #collapse01 .row .left {
    flex-basis: 20%;
}
#project #collapse01 .right {
    flex-basis: 80%;
    padding-left: 120px;
}
#project #collapse01 .text-border {
    margin-top: 50px;
}
#project #collapse02 .w_badge {
    padding-top: 30px;
    padding-right: 30px;
}
#project #collapse02 .row2 .left img {
    margin-bottom: 30px;
}
#project #collapse02 .row2 .right {
    padding-left: 120px;
}
#project #collapse02 .w_arrow {
    top: 90px;
    left: -115px;
    position: relative;
}
#project #collapse02 .w_arrow span {
    position: absolute;
    z-index: 100;
}
#project #collapse02 .w_arrow span:nth-of-type(1) {
    top: -14px;
    left: 26px;
    color: #fff;
    font-size: 22px;
    font-weight: 300;
}
body[lang="en"] #project #collapse02 .w_arrow span:nth-of-type(1) {
    top: -11px;
    left: 16px;
    font-size: 15px;
}
#project #collapse02 .w_arrow span:nth-of-type(2) {
    top: 50px;
    left: 18px;
    font-weight: 600;
    text-align: center;
}
body[lang="en"] #project #collapse02 .w_arrow span:nth-of-type(2) {
    left: -10px;
    font-size: 15px;
}
#project #collapse03 .right {
    padding: 0 50px;
}
#project #collapse04 .row {
    display: flex;
    align-items: center;
}
#project #collapse04 .right {
    padding-left: 90px;
}
#project #collapse04 .right::before {
    top: 52%;
    left: -10px;
    /* left: 10px; */
    content: "\faae";
    position: absolute;
    font-size: 90px;
    /* font-size: 60px; */
    font-family: "Phosphor";
    color: #ff0000;
    transform: translateY(-50%);
}
#project #collapse06 .left {
    padding-top: 20px;
}
#project #collapse06 .left img {
    padding: 15px;
}
#project #collapse07 .right {
    padding-top: 30px;
}
#project #collapse08 .wrap-images {
    display: flex;
    align-items: flex-end;
    justify-content: center;
}
#project #collapse09 .wrap-images {
    display: flex;
    align-items: flex-end;
    justify-content: center;
}
#project #collapse10 .wrap-images {
    display: flex;
    align-items: flex-end;
    margin-top: 30px;
}
#project #collapse10 .wrap-images .w_img {
    padding: 0 30px;
}
/* #project #collapse10 .wrap-images img {
    float: right;
    max-width: 700px;
    margin-top: -100px;
} */
#project #collapse11 .wrap-images {
    display: flex;
    align-items: center;
    justify-content: center;
}
#project #collapse13 .wrap-images {
    display: flex;
    align-items: center;
    justify-content: center;
}
#project #collapse13 .wrap-images > div {
    width: 30%;
}
#project #collapse13 .wrap-images > div:nth-child(1) {
    padding-right: 40px;
}
#project #collapse13 .wrap-images > div:nth-child(2) {
    width: 40%;
    padding-left: 100px;
}
#project #collapse13 .wrap-images > div:nth-child(3) {
    padding-right: 0;
}
#project #collapse13 .w_arrow i {
    top: 47%;
    left: -20px;
}
/* #project #collapse13 .wrap-images .image2::before {
    top: 46%;
    left: -30px;
    content: "\faae";
    position: absolute;
    font-size: 65px;
    font-family: "Phosphor";
    color: #3e2f4f;
    text-shadow: 2px 2px 5px rgb(0 0 0 / 30%);
    transform: translateY(-50%);
} */

/* 설비정보 */
.box-equip {
    display: flex;
    flex-wrap: wrap;
    margin: 0 -10px;
}
.box-equip > .item {
    flex-basis: 50%;
    padding: 0 12px 24px;
}
.box-equip > .item .inner {
    height: 100%;
    display: flex;
    align-items: center;
    padding: 25px 20px;
    /* padding: 30px; */
    border: 1px solid #ddd;
    border-radius: 5px;
}
.box-equip > .item .img {
    flex-basis: 42%;
    /* flex-basis: 45%; */
    /* margin-top: 10px; */
}
.box-equip > .item .desc {
    flex-basis: 58%;
    /* flex-basis: 55%; */
    padding: 10px 0 20px 20px;
    /* padding: 10px 30px 20px; */
}
.box-equip > .item .desc h4 {
    margin: 0 0 20px;
    /* margin: 0 0 15px; */
    font-size: 21px;
    /* font-size: 20px; */
    font-weight: 700;
    letter-spacing: 0.01em;
}
.box-equip > .item .desc dl {
    margin-bottom: 0;
}
.box-equip > .item .desc dl dt {
    min-width: 88px;
    position: absolute;
    padding: 3px 10px;
    font-size: 14px;
    /* font-size: 13px; */
    font-weight: 400;
    color: #fff;
    text-align: center;
    background: #777;
    border-radius: 40px;
    letter-spacing: 0;
}
.box-equip > .item .desc dl dd {
    padding-left: 100px;
    /* padding-left: 95px; */
    font-size: 18px;
    /* font-size: 17px; */
    letter-spacing: -0.05em;
    /* font-size: 15px; */
    /* color: #9d9d9d; */
}
.box-equip > .item .desc dl .clearfix {
    margin: 4px 0;
}
#equipment01 .box-equip > .item10 {
    flex-basis: 100%;
    padding: 10px 10px 0;
    border: none;
}
#equipment01 .box-equip > .item10 .inner {
    padding: 0;
    border: none;
}
#equipment01 .box-equip > .item10 .desc {
    flex-basis: 45%;
    /* flex-basis: 49%; */
    padding: 0;
}
#equipment01 .box-equip > .item10 .img {
    flex-basis: 55%;
    /* flex-basis: 51%; */
    padding: 0 0 0 30px;
}
#equipment01 .box-equip > .item10 .img img {
    width: 100%;
    height: 430px;
}
#equipment01 .box-equip > .item13 {
    flex-basis: 100%;
}
#equipment01 .box-equip > .item13 .row {
    display: flex;
    align-items: center;
}
#equipment01 .box-equip > .item13 .left {
    display: flex;
    gap: 10px;
    width: 62%;
}
#equipment01 .box-equip > .item13 .right {
    width: 38%;
}
#equipment01 .box-equip > .item13 .desc dl dt {
    min-width: 157px;
}
#equipment01 .box-equip > .item13 .desc dl dd {
    padding-left: 165px;
}
/* #equipment01 .box-equip > .item12 .img img {
    width: 100%;
    height: 145px;
} */

/* 게시판, 주문폼 공통 스타일 */
.board_wrapper,
.calendar_wrapper {
    margin-top: 0;
    margin-bottom: 0;
}
.search_wrap {
    margin-bottom: 0;
}
.board_wrapper .table.table_default {
    border-top: 1px solid #333;
}
.table.table_default tr th,
.table.table_default tr td {
    padding: 15px 0px;
    font-size: 14px;
    border-color: #e6e6e6;
    letter-spacing: -0.015em;
}
.table.table_default tr td.subject {
    color: #333;
    position: relative;
}
.board_wrapper .table.table_default thead th {
    color: #222;
    font-weight: 600;
    background: #fff;
    border-color: #e3e3e3;
}
.table.table_default tbody .subject .badge {
    top: 15px;
    padding: 4px 6px 3px;
    position: absolute;
    font-weight: 500;
    line-height: 1.3em;
    color: #333;
    background: #fff;
    border: 1px solid #ccc;
    border-radius: 0;
}
.table.table_default tbody .subject a {
    font-size: 16px;
}
.table.table_default tbody .subject a:hover {
    text-decoration: underline;
}
.table.table_default tbody .subject span > .badge + a {
    padding-left: 62px;
}
.board_data_view {
    border-bottom: 1px solid #ccc;
    border-top: 1px solid #333;
}
.board_data_view .header_wrap {
    padding: 0;

    border-bottom: 1px solid #ccc;
}
.board_data_view .header_wrap .title {
    padding: 40px 5px 38px;
    font-size: 25px;
    color: #111;
    border-bottom: 1px solid #eee;
}
.board_data_view .header_wrap .info {
    margin: 0;
    padding: 14px 0 15px;
}
.board_data_view .header_wrap .info span {
    font-size: 14px;
    color: #909090;
}
.board_data_view .header_wrap .info span + span {
    margin-left: 10px;
}
.board_data_view p {
    line-height: 1.65em;
    font-size: 18px;
}
.board_data_view p strong {
    line-height: normal;
    font-weight: 500 !important;
    letter-spacing: -0.05em;
}
.board_data_view p strong span {
    font-size: 18px !important;
}
.pagination_wrap ul li.active a,
.pagination_wrap ul li.active a:hover,
.pagination_wrap ul li.active a:focus {
    color: #386daf;
}
.pagination_wrap ul li.box a {
    border: none;
}
.pagination_wrap ul li.box:hover a,
.pagination_wrap ul li.box:focus a {
    color: #386daf;
}
.board_wrapper .text-center {
    margin-bottom: 0;
}
#reply_list span {
    font-size: 16px !important;
}
/* 게시글 작성 */
.board_wrapper .table.board_write_table tbody tr th,
.board_wrapper .table.board_write_table tbody tr td {
    font-size: 15px;
    letter-spacing: -0.04em;
    border-color: #e6e6e6;
}
.board_wrapper .table.board_write_table {
    border-top: 2px solid #333;
}
.board_wrapper .table.board_write_table tbody tr th {
    width: 180px;
    font-weight: 500;
    color: #222;
    background: #fff;
    padding-left: 10px;
}
/* .board_wrapper .table.board_write_table tbody tr th > span:nth-child(1) {
    color: #ff0000;
    margin-right: 3px;
} */
.board_wrapper .table.board_write_table tbody tr th > span.required_text {
    color: #ff0000;
}
.board_wrapper .table.board_write_table .files .fileInput .file_add {
    padding: 3px 5px;
}
.form-control {
    letter-spacing: -0.03em;
    font-size: 15px;
}
/* 주문폼 */
.board_wrapper .table.board_write_table tbody tr td .form-control {
    width: 350px;
}
.board_wrapper .table.board_write_table tbody tr td .text-muted {
    margin-top: 10px !important;
    font-size: 14px;
}
.board_wrapper .table.board_write_table .checkbox a {
    font-weight: 500;
    color: #0a79cb;
    text-decoration: underline;
}
.form-control:not([readonly]):focus {
    border-color: #555;
}
/* 블로그B 게시판 */
.table_video dd .inner .top a .thumb,
.table_blog2 dd .inner .top a .thumb {
    height: 220px;
}
.table_video dd .inner:hover,
.table_blog2 dd .inner:hover {
    border-color: #9b9ddd;
}
.table_video dd .inner .bottom,
.table_blog2 dd .inner .bottom {
    padding: 18px;
}
.table_video dd .inner .bottom .title a:hover,
.table_video dd .inner .bottom .title a:focus,
.table_blog2 dd .inner .bottom .title a:hover,
.table_blog2 dd .inner .bottom .title a:focus {
    color: #14166a;
    text-decoration: none;
}
.table_blog2 dd .inner .bottom .info span {
    font-size: 14px;
}
.table_blog2 dd .inner .bottom .title a {
    font-size: 16px;
    font-weight: 500;
}

/* 생산분야 > 실적 게시글 스타일 */
.board-result-tit {
    text-align: center;
}
.board-result-tit p {
    display: inline-block;
    margin: 0;
    padding: 8px 25px;
    font-size: 17px;
    font-weight: 500;
    color: #fff;
    background: #f16b2d;
    border-radius: 30px;
}
.board-result-list {
    padding: 30px 30px 30px 55px;
    border: 6px solid #efefef;
    margin-bottom: 0;
}
table.tb-result {
    border-top: 2px solid #333;
}
table.tb-result > thead > tr > th,
table.tb-result > tbody > tr > th,
table.tb-result > tbody > tr > td {
    padding: 12px;
    font-size: 14px;
    text-align: center;
}
table.tb-result > thead > tr > th {
    letter-spacing: -0.02em;
    background: #f7f7f7;
}
body[lang="en"] .board_wrapper .table.table_default col:last-child {
    width: 10%;
}
/**************** 서브 끝 ****************/
/*********** 모바일 최적화 시작 ***********/
@media (max-width: 1199px) {
    /* Small·Medium·Large devices */
}
@media (max-width: 767px) {
    /* Small devices (col-xs-*) 모바일 */
    #site {
        padding-top: 115px;
    }
    .menu-top ul > li .lang {
        padding: 6px 8px 5px;
        font-size: 10px;
    }

    #section_44f683 {
        padding-bottom: 0;
    }
    #section_44f683 .container > .row {
        flex-direction: column;
    }
    #section_44f683 .board_box_list,
    #section_44f683 .location {
        width: 100%;
    }
    #section_44f683 .location {
        margin-left: 0;
    }
    .mainPage {
        padding: 80px 0;
    }
    .mainPage h2 {
        font-size: 29px;
    }
    .mainPage .box-production a {
        margin-bottom: 30px;
        display: block;
    }
    .mainPage .box-production .tit {
        font-size: 22px;
        margin-top: 20px;
    }
    .mainPage .box-production p {
        font-size: 15px;
    }
    :where(.board_box_list, .board_box_status, .board_box_map) ul li a {
        font-size: 15px;
    }
    main ul.list-contact {
        top: auto;
        left: auto;
        width: auto;
        position: relative;
        margin: 5px 0 10px;
        padding: 0;
        border: none;
    }
    main ul.list-contact > li.addr {
        justify-content: flex-start;
    }
    .subPage > .pageTop {
        height: 180px;
    }
    .subPage .link {
        display: none;
    }
    [id*="esg"].subPage .link {
        display: block;
    }
    [id*="esg"].subPage .link ul {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        margin: 15px 0 0 0;
    }
    [id*="esg"].subPage .link ul::before,
    [id*="esg"].subPage .link ul::after{
        display: none;
    }
    .subPage .breadcrumb {
        font-size: 12px;
        width: 100%;
        padding-inline: 10px;
    }
    .subPage > .pageTop h1,
    .subPage > .pageTop h2 {
        margin: -38px 0 0;
        font-size: 36px;
    }
    .subPage > .contents {
        padding: 70px 0 100px;
    }
    .title-lv-1 {
        margin: 0 0 80px;
        font-size: 30px;
    }
    .title-lv-2 {
        position: relative;
        margin: 0 0 35px;
        font-size: 26px;
    }
    .title-lv-2::before {
        height: 19px;
    }
    .wrap-ideology .tit .inner {
        width: 330px;
        height: 330px;
    }

    .wrap-ideology .desc {
        margin-left: 0;
    }
    .wrap-ideology .desc .inner {
        margin-top: 10px;
    }
    .wrap-ideology .desc h5 {
        width: 85px;
        height: 85px;
        position: relative;
        margin: 0;
        padding: 16px 0px;
    }
    body[lang="en"] .wrap-ideology .desc h5 {
        font-size: 13px;
    }
    .wrap-ideology .desc p {
        margin: 0;
        font-size: 15px;
        width: calc(100% - 85px);
        padding-left: 15px;
    }
    .wrap-ideology .desc .item:nth-child(1),
    .wrap-ideology .desc .item:nth-child(4) {
        margin-left: 0;
    }
    .wrap-ideology .desc .item:nth-child(2),
    .wrap-ideology .desc .item:nth-child(3) {
        padding: 0;
        margin-left: 0;
    }
    .wrap-history .detail {
        flex-basis: 100%;
        padding: 13px 0 0 0;
    }
    .wrap-history::before {
        left: 0;
    }
    .wrap-history > ul > li .year::before {
        display: none;
    }
    .wrap-history > ul > li .year::after {
        content: "";
        top: 15px;
        right: auto;
        left: -44px;
    }
    .wrap-history > ul > li {
        display: flex;
        flex-wrap: wrap;
        padding-left: 40px;
    }
    .wrap-history > ul > li .year {
        flex-basis: 20%;
        position: relative;
        margin: 0;
        font-size: 32px;
    }
    .wrap-history .detail ul > li {
        color: #444;
        font-size: 15px;
    }
    table.tb-style-1 > thead > tr > th,
    table.tb-style-1 > tbody > tr > th,
    table.tb-style-1 > tbody > tr > td {
        font-size: 15px;
    }
    ul.list-contact {
        flex-direction: column;
        align-items: flex-start;
    }
    ul.list-contact > li.addr {
        flex-basis: 100%;
        font-size: 15px;
    }
    ul.list-contact > li {
        flex: 1 1 auto;
        display: inline-block;
        font-size: 17px;
    }
    ul.list-contact > li:not(.addr) + li {
        margin-left: 0;
    }
    ul.list-contact > li:not(.addr) + li::before {
        display: none;
    }
    .box-prod > .item {
        flex-basis: 100% !important;
    }
    #production02 .box-prod2 {
        flex-direction: column;
        width: auto;
    }
    #production02 .box-prod2 .inner {
        flex-direction: column;
    }
    #production02 #row2 .box-prod > .item.multiple {
        right: auto;
        bottom: auto;
        width: auto;
        position: relative;
        padding: 0;
        /* padding: 0; */
        text-align: center;
    }
    .box-equip {
        display: flex;
        flex-wrap: wrap;
        margin: 0;
        flex-direction: column;
    }
    .box-equip > .item .inner {
        height: 100%;
        display: flex;
        padding: 25px 20px;
        /* padding: 30px; */
        border: 1px solid #ddd;
        border-radius: 5px;
        flex-direction: column;
    }
    #equipment01 .box-equip > .item13 .row {
        display: flex;
        align-items: center;
        flex-direction: column;
    }
    .box-equip > .item .img {
        flex-basis: 100%;
        /* flex-basis: 45%; */
        /* margin-top: 10px; */
    }
    .box-equip > .item .img img {
        width: 100%;
    }
    #equipment01 .box-equip > .item13 .right {
        width: 100%;
    }
    .box-equip > .item .desc dl dt {
        min-width: 88px;
        position: relative !important;
    }
    .box-equip > .item .desc dl dd {
        padding-left: 0 !important;
    }
    .box-equip > .item .desc {
        flex-basis: 100%;
        /* flex-basis: 55%; */
        padding: 10px 0 20px;
        /* padding: 10px 30px 20px; */
        width: 100%;
    }
    #equipment01 .box-equip > .item10 .img {
        flex-basis: 100%;
        /* flex-basis: 51%; */
        padding: 15px 0 0;
    }
    .box-equip > .item {
        flex-basis: 100%;
        padding: 0;
        width: 100%;
    }
    .box-equip > .item .desc dl {
        margin-bottom: 0;
        text-align: center;
    }
    .box-equip > .item .desc h4 {
        text-align: center;
    }
    #project p.notice {
        font-size: 10px;
    }
    .panel-group.panel-rnd .panel .panel-heading a {
        width: 100%;
        position: relative;
        display: inline-block;
        padding: 23px 23px;
        text-decoration: none;
        border: 1px solid #e1e1f5;
        font-size: 15px;
        padding-right: 80px;
        /* font-size: 17px; */
    }
    .panel-group.panel-rnd .panel .panel-body {
        margin-top: 10px;
        padding: 15px;
        border: 1px solid #e1e1f5;
    }
    .w_arrow i {
        top: 50%;
        left: 0;
        content: "\faae";
        position: absolute;
        font-size: 36px;
    }
    #project #collapse01 .row .left {
        flex-basis: 38%;
    }
    #project #collapse01 .right {
        flex-basis: 74%;
        padding-left: 50px;
    }
    .panel-body .badge.default-prod {
        top: 0px;
        left: -10px;
        width: 70px;
        height: 70px;
        position: absolute;
        display: flex;
        align-items: center;
        justify-content: center;
        margin: 0;
        font-size: 15px;
    }
    body[lang="en"] .panel-body .badge.default-prod {
        font-size: 12px;
    }
    .panel-body .badge.patent::before {
        top: -14px;
        right: -12px;
        width: 70px;
        height: 86px;
    }
    .panel-body .badge.patent::after {
        top: 7px;
        right: 6px;
        font-size: 18px;
    }
    body[lang="en"] .panel-body .badge.patent::after {
        top: 8px;
        right: 1px;
        font-size: 14px;
    }
    .panel-body .tit-box-rounded p {
        display: inline-block;
        margin: 0;
        padding: 10px 35px;
        font-size: 17px;
    }
    #project #collapse02 .row2 .right {
        padding-left: 15px;
    }
    #project #collapse02 .w_arrow {
        top: auto;
        left: auto;
        position: relative;
        padding: 50px 0;
    }
    #project #collapse02 .w_arrow span {
        position: relative;
        z-index: 100;
    }
    #project #collapse02 .row2 .right .w_arrow i {
        font-size: 100px;
        top: auto;
        left: auto;
        display: block;
        text-align: center;
        width: 100%;
    }
    #project #collapse02 .row2 .right .w_arrow i::before {
        content: "\faa4";
    }
    #project #collapse02 .w_arrow span:nth-of-type(1) {
        top: auto;
        left: auto;
        color: #fff;
        font-size: 19px;
        font-weight: 300;
        display: block;
        text-align: center;
    }
    body[lang="en"] #project #collapse02 .w_arrow span:nth-of-type(1) {
        top: 5px;
        left: 0;
        font-size: 14px;
    }
    #project #collapse02 .w_arrow span:nth-of-type(2) {
        top: auto;
        left: auto;
        /* right: -80px; */
        font-weight: 600;
        text-align: center;
        display: block;
        margin-top: 54px;
    }
    body[lang="en"] #project #collapse02 .w_arrow span:nth-of-type(2) {
        left: 0;
    }
    #project #collapse04 .row {
        display: flex;
        align-items: center;
        flex-direction: column;
    }
    #project #collapse04 .right {
        padding-left: 15px;
    }
    #project #collapse04 .right::before {
        top: auto;
        left: auto;
        /* left: 10px; */
        content: "\faa4";
        position: relative;
        font-size: 90px;
        /* font-size: 60px; */
        font-family: "Phosphor";
        color: #ff0000;
        transform: translateY(0%);
        margin: 0 auto;
        display: block;
        text-align: center;
    }
    .panel-body .list-border > li {
        font-size: 14px;
    }
    #project #collapse13 .wrap-images {
        display: flex;
        justify-content: center;
        flex-direction: column;
        align-items: center;
    }
    #project #collapse13 .wrap-images > div {
        width: 100%;
    }
    #project #collapse13 .wrap-images > div:nth-child(1) {
        padding-right: 15px;
    }
    #project #collapse13 .wrap-images > div:nth-child(2) {
        width: 100%;
        padding: 0 15px;
    }
    #project #collapse13 .w_arrow i {
        top: auto;
        left: auto;
        position: relative;
        transform: translate(0);
        text-align: center;
        display: block;
        padding: 15px 0;
    }
    #project #collapse13 .w_arrow i::before {
        content: "\faa4";
    }
    .board_wrapper .table.table_default colgroup,
    .board_wrapper .table.table_default .num,
    .board_wrapper .table.table_default .regdate,
    .board_wrapper .table.table_default .hits,
    .board_wrapper .table.table_default .writer {
        display: none;
    }
}
@media (min-width: 768px) {
    /* Medium·Large·Extra large devices */
}
@media (min-width: 768px) and (max-width: 1199px) {
    /* Medium·Large devices */
}
@media (min-width: 768px) and (max-width: 991px) {
    /* Medium devices (col-sm-*) */
    .box-production > div {
        width: 50%;
        margin-bottom: 30px;
        float: left;
    }
    main ul.list-contact {
        top: auto;
        left: auto;
        width: auto;
        position: relative;
        margin: 5px 0 6px;
        padding: 0;
        border: none;
    }
    main ul.list-contact > li.addr {
        flex-basis: 100%;
        font-size: 15px;
        /* font-size: 15px; */
        justify-content: left;
    }
    .navbar-inverse .navbar-nav > li > a {
        font-size: 15px;
    }
    .navbar-inverse .navbar-brand img {
        height: 32px;
        margin-top: -5px;
    }
    #site {
        padding-top: 50px;
    }
    #navbar-bg {
        height: 0;
        top: 50px;
        right: 0;
        left: 0;
        position: fixed;
        background: #fff;
        box-shadow: rgb(0 0 0 / 15%) 1px 1px 5px;
        transition: height 0.6s cubic-bezier(0.16, 1, 0.3, 1);
        z-index: 1000;
    }
    .navbar-inverse .navbar-nav .dropdown-menu > li > a {
        padding: 8px 15px;
        font-size: 12px;
        color: #111;
        text-align: center;
    }
    .navbar-inverse .navbar-nav > li > a:hover::after,
    .navbar-inverse .navbar-nav > li > a:focus::after,
    .navbar-inverse .navbar-nav .dropdown.open .dropdown-toggle::after,
    .navbar-inverse .navbar-nav .dropdown.open:hover .dropdown-toggle::after,
    .navbar-inverse .navbar-nav .dropdown.open:focus .dropdown-toggle::after {
        width: 62px;
    }
    .wrap-ideology .desc {
        margin-left: 0;
        display: flex;
        flex-wrap: wrap;
        align-items: flex-start;
        justify-content: space-between;
    }
    .wrap-ideology .desc .item {
        width: 50%;
    }
    .wrap-ideology .desc .item:nth-child(1),
    .wrap-ideology .desc .item:nth-child(4) {
        margin-left: 0;
        padding: 10px 0;
    }
    .wrap-ideology .desc .item:nth-child(2),
    .wrap-ideology .desc .item:nth-child(3) {
        padding: 10px 0;
        margin-left: 0;
    }
    .wrap-ideology .desc p {
        margin: 0;
        font-size: 14px;
        font-weight: 500;
        letter-spacing: -0.045em;
        line-height: 1.5em;
    }
    .box-prod > .item {
        flex-basis: 50%;
        padding: 0 10px 0px;
    }
    .box-prod > .item img {
        width: 100%;
    }
    #production02 .box-prod2 {
        display: flex;
        flex-wrap: wrap;
        align-items: end;
        width: auto;
    }
    #production02 .box-prod2 img {
        padding: 0 64px;
        width: 50%;
    }
    .box-equip > .item .inner {
        height: 100%;
        display: flex;
        align-items: center;
        padding: 25px 20px;
        /* padding: 30px; */
        border: 1px solid #ddd;
        border-radius: 5px;
        flex-direction: column;
    }
    #equipment01 .box-equip > .item13 .left {
        display: flex;
        gap: 10px;
        width: 36%;
        flex-direction: column;
    }
    #equipment01 .box-equip > .item13 .right {
        width: 64%;
    }
    #equipment01 .box-equip > .item10 .inner {
        padding: 0;
        border: none;
        flex-direction: row;
    }
    #equipment01 .box-equip > .item10 .desc {
        flex-basis: 70%;
        /* flex-basis: 49%; */
        padding: 0;
    }
    #equipment01 .box-equip > .item10 .img {
        flex-basis: 30%;
        /* flex-basis: 51%; */
        padding: 0 0 0 30px;
    }
    #equipment01 .box-equip > .item10 .img img {
        width: 100%;
        height: auto;
    }

    #project #collapse04 .row {
        display: flex;
        align-items: center;
        flex-direction: column;
    }
    #project #collapse04 .right {
        padding-left: 15px;
    }
    #project #collapse04 .right::before {
        top: auto;
        left: auto;
        /* left: 10px; */
        content: "\faa4";
        position: relative;
        font-size: 90px;
        /* font-size: 60px; */
        font-family: "Phosphor";
        color: #ff0000;
        transform: translateY(0%);
        margin: 0 auto;
        display: block;
        text-align: center;
    }
    .panel-body .list-border > li {
        font-size: 14px;
    }
    .clearfix.space + .col-md-4,
    .clearfix.space + .col-md-4 + .col-md-4,
    .clearfix.space + .col-md-4 + .col-md-4 + .col-md-4 {
        width: calc(100% / 3);
        float: left;
    }
    #project #collapse06 .left > div {
        width: calc(100% / 2);
        float: left;
    }
}
@media (min-width: 992px) and (max-width: 1199px) {
    /* Large devices (col-md-*) */
    .navbar-inverse .navbar-nav > li > a {
        padding: 35px 23px;
    }
    .wrap-history::before {
        content: "";
        top: 15px;
        left: 23.4%;
    }
    ul.list-contact > li {
        flex: 1 1 auto;
        display: inline-block;
        font-size: 16px;
    }
    #production02 .box-prod2 {
        display: flex;
        flex-wrap: wrap;
        align-items: end;
        width: auto;
    }
    #production02 .box-prod2 img {
        padding: 0 64px;
        width: 50%;
    }
}
@media (min-width: 1200px) {
    /* Extra large devices (col-lg-*) */
    #project #collapse10 .text {
        max-width: 730px;
    }
    #project #collapse10 .wrap-images {
        margin-top: -150px;
        padding-left: 170px;
    }
}
/************ 모바일 최적화 끝 ************/

/* 240612 */
.title-h4 {
    text-align: center;
    margin-bottom: 80px;
}

.title-h4 h4 {
    font-size: 32px;
    font-weight: 700;
    color: #2b2ea7;
}

.title-h5 {
    margin-bottom: 20px;
}
:is(.title-h5, [class*="-box"]) + .title-h5 {
    margin-top: 80px;
}
.title-h5 h5 {
    font-size: 22px;
    font-weight: 700;
    margin-bottom: 25px;
}
.title-h5 p {
    margin-top: 10px;
    font-size: 16px;
}
.title-h5 p + ul {
    margin-top: 15px;
}
.title-h5 li {
    font-size: 16px;
}
.title-h5 + img {
    margin-block: 80px;
}
.tab-wrap .nav-tabs {
    display: flex;
    margin-bottom: 70px;
}
.tab-wrap .nav-tabs li {
    flex: 1;
}
.tab-wrap .nav-tabs li.active a {
    width: 100%;
    padding-left: 1px;
    color: #222;
    border-top: solid 2px #333;
    border-bottom: solid 1px #fff;
    border-left: solid 1px #999;
    border-right: solid 1px #999;
    background: #fff;
    font-weight: 600;
}
.tab-wrap .nav-tabs li a {
    transition: unset;
    display: flex;
    justify-content: center;
    align-items: center;
    border: solid 1px #dedede;
    border-bottom: solid 1px #999;
    border-left: none;
    background: #f8f8f8;
    height: clamp(55px,5vw,58px);
    text-align: center;
    color: #666;
    font-size: clamp(14px,2vw,16px);
    padding: 0;
}

.rule-wrap {
    padding: 50px;
    background-color: #f7f7f7;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 35px;
}
.rule-wrap .col {
    display: flex;
    align-items: flex-start;
    gap: 20px;
}
.rule-wrap .col.title {
    grid-column: span 2;
}
.rule-wrap .col.title h4 {
    font-size: 24px;
}

.rule-wrap .icon {
    flex-shrink: 0;
    width: clamp(70px, 5vw, 100px);
    aspect-ratio: 1;
    display: flex;
    justify-content: center;
    align-items: center;
    background-color: #fff;
    border-radius: 50%;
}
.rule-wrap .icon i {
    font-size: 36px;
}
.rule-wrap span.num {
    font-size: 32px;
    font-weight: 700;
    color: #2b2ea7;
}
.rule-wrap h5 {
    font-size: clamp(18px, 3vw, 22px);
    font-weight: 600;
    margin-bottom: 10px;
}
.rule-wrap p {
    font-size: 15px;
}
/* [max-medium / landscape phones]  태블릿/모바일, 768px 미만 ▼ */
@media (width <= 767.98px) {
    .rule-wrap {
        display: flex;
        flex-direction: column;
        padding: 30px;
    }
    .rule-wrap .col {
        /* flex-direction: column; */
    }
}
.icon-box {
    display: flex;
    padding-block: 30px;
    border: 1px solid #ccc;
}
.icon-box i {
    font-size: 42px;
    margin-bottom: 20px;
}
.icon-box h6 {
    font-size: 18px;
    font-weight: 700;
    margin-bottom: 10px;
}
.icon-box #tab_link_btn {
    all: unset;
    cursor: pointer;
    display: inline-block;
    width: fit-content;
    padding: 10px 25px;
    border: 1px solid #888;
}
.icon-box :is(p, a) {
    margin-top: 10px;
    font-size: 16px;
}
.icon-box .col {
    flex: 1;
    text-align: center;
    padding: 20px 20px;
}
.icon-box .col + .col {
    border-left: 1px solid #ccc;
}
/* [max-medium / landscape phones]  태블릿/모바일, 768px 미만 ▼ */
@media (width <= 767.98px) {
    .icon-box {
        flex-direction: column;
    }
}
.process-box {
    display: flex;
    align-items: center;
    padding-block: 50px;
    border: 1px solid #ccc;
    margin-bottom: 40px;
}
.process-box .col {
    flex: 1;
    text-align: center;
}
.process-box .col i {
    font-size: 42px;
}
/* [max-medium / landscape phones]  태블릿/모바일, 768px 미만 ▼ */
@media (width <= 767.98px) {
    .process-box {
        flex-direction: column;
    }
    .process-box .arrow {
        rotate: 90deg;
        margin-bottom: 20px;
    }
}
.maintenance {
    background: #f4f4f4;
    padding: 120px 25px;
    text-align: center;
    border-radius: 20px;
}
.maintenance i {
    display: inline-block;
    line-height: 1;
    font-size: 74px;
    margin-bottom: 20px;
}
.maintenance .big-cont {
    display: block;
    line-height: 1;
    font-size: 22px;
    font-weight: bold;
    letter-spacing: -0.05em;
    margin-bottom: 20px;
}
.maintenance .small-cont {
    display: block;
    line-height: 1.5;
    font-size: 14px;
    letter-spacing: -0.03em;
    color: #818181;
    margin-bottom: 20px;
}

a[href^="/form/form_history"] {
    display: none !important;
}
.down-wrap {
    margin-top: 70px;
    display: block;
    position: relative;
    border-block: 1px solid #ccc;
}
.down-wrap .col + .col {
    border-top: 1px solid #ccc;
}
.down-wrap .col {
    padding: 20px 30px;
    gap: 20px;
    display: flex;
    /* justify-content: space-between; */
    align-items: center;
    /* margin-bottom: 40px; */
}
.down-wrap .col h5 {
    font-size: 18px;
    margin-right: auto;
}
.down-wrap .col .down-btn {
}
/* [max-medium / landscape phones]  태블릿/모바일, 768px 미만 ▼ */
@media (width <= 767.98px) {
    .down-wrap .col {
        flex-direction: column;
        text-align: center;
    }
}
.list-wrap {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
}
.list-wrap .col {
    margin: -1px 0 0 -1px;
    background-color: #fff;
    border: 1px solid #ccc;
    padding: 20px;
    display: flex;
    gap: 15px;
}
.list-wrap .col * {
    font-size: 15px;
}
.list-wrap .col :is(span, .down-icon) {
    white-space: nowrap;
}
.list-wrap .col h5 {
    flex: 1;
    line-height: 1.5;
    margin-block: 0;
}
.list-wrap .down-icon::after {
    content: "";
}

#site .table-style {
    --border-color: #ccc;
    border: 1px solid var(--border-color);
    background-color: #fff;
    margin: 0;
}
#site .table-style :where(th, td) {
    padding: 15px 19px;
    font-size: 16px;
    vertical-align: middle;
    border: 1px solid var(--border-color);
}
#site .table-style td {
    color: #444;
}
#site .table-style thead th {
    border-bottom: 0;
    background-color: #eee;
    border: 1px solid var(--border-color);
    color: #222;
    /* text-align: center; */
    font-weight: 600;
}
#site .table-style thead,
#site .table-style tbody:only-child {
    border-top: 2px solid var(--page-point-color);
}
#site .table-style tbody th {
    /* background-color: #f7f7f7; */
    /* text-align: center; */
    font-weight: 600;
}

.exp-wrap h5 {
    font-size: clamp(24px, 2vw, 28px);
    margin-bottom: 20px;
    line-height: 1.65;
    padding-bottom: clamp(25px, 5vw, 40px);
    margin-bottom: clamp(40px, 5vw, 60px);
    margin-top: 60px;
    border-bottom: 1px solid #ccc;
}
.exp-wrap p {
    font-size: clamp(15px, 2vw, 17px);
}
.exp-wrap p + p {
    margin-top: 20px;
}

.part-wrap .col {
    display: flex;
    align-items: flex-start;
    background-color: #f7f7f7;
}
.part-wrap .col + .col {
    margin-top: 30px;
}
.part-wrap h5 {
    font-size: 20px;
    font-weight: 700;
    margin-bottom: 15px;
}
.part-wrap .img-box {
    flex: 0 1 40%;
    aspect-ratio: 5/3;
    background-color: #ccc;
}

.part-wrap .info {
    flex: 1;
    padding: 40px 50px;
}

/* [max-medium / landscape phones]  태블릿/모바일, 768px 미만 ▼ */
@media (max-width: 767.98px) {
    .part-wrap {
        max-width: 500px;
    }
    .part-wrap .col {
        flex-direction: column;
    }
    .part-wrap .info {
        padding: 20px;
    }
}

#esg06 .subject_col {
    width: 100%;
}
#esg06 :is(.regdate, .regdate_col) {
    display: none;
}

.icon-wrap {
    display: flex;
    margin-bottom: 40px;
    background-color: #f7f7f7;
    padding: 50px 80px;
}
.icon-wrap + img {
    margin-bottom: 40px;
}
.icon-wrap .col {
    flex: 1;
    text-align: center;
}
.icon-wrap .icon {
    display: inline-flex;
    justify-content: center;
    align-items: center;
    width: 120px;
    aspect-ratio: 1;
    border-radius: 9999px;
    border: 1px solid #ccc;
    margin-bottom: 20px;
    font-size: 42px;
    background-color: #fff;
}
/* [max-medium / landscape phones]  태블릿/모바일, 768px 미만 ▼ */
@media (max-width: 767.98px) {
    .icon-wrap {
        flex-direction: column;
        padding: 30px;
        gap: 30px;
    }
}
