@charset "utf-8";
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+KR:wght@300;400;500;700&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Gothic+A1:wght@700&display=swap');
/*-------------------------------------------------
Author : WB,Seo
Create date : 2023. 01. 09.
Last update : 9999. 99. 99. 10:47
-------------------------------------------------*/

/* =================================
    RESET
=================================== */
* {box-sizing: border-box;}
body {
    color: #333;
    font-family: 'Noto Sans KR', sans-serif;
    overflow-x: hidden;
}
hr {display: none;}
a {text-decoration: none; color: #202525;}
b {font-weight: 700;}
button {padding: 0; border: none; background: none; cursor: pointer;}
img {border: none; -webkit-user-drag: none;}
html {font-size: 0.625em;}
.clear:after {content: ""; clear: both; display: block;}
.blind {position: absolute; top: -9999px; left: -9999px;}
input,
textarea,
select,
button {
    font-family: 'Noto Sans KR', sans-serif;
    appearance: none;
    -webkit-appearance: none;
}
input::placeholder,
textarea::placeholder {color: #b0b0b0;}
input[type="checkbox"]:checked,
select {
    appearance: auto;
    -webkit-appearance: auto;
}
table {
    width: 100%;
    border-spacing: 0;
    table-layout: fixed;
}
caption, figcaption {
    visibility: hidden;
    overflow: hidden;
    width: 0; height: 0;
    font-size: 0;
    line-height:0
}
input[type="number"]::-webkit-outer-spin-button,
input[type="number"]::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}
.pc {display: none;}
label {cursor: pointer;}
.pe-none {pointer-events: none;}
/*
body::-webkit-scrollbar {width: 10px;}
body::-webkit-scrollbar-track-piece {background-color: #fff;}
body::-webkit-scrollbar-thumb {
    background-color: #d5d5d5;
    border-radius: 6px;
}
body::-webkit-scrollbar-thumb:hover {background-color: #c6c6c6;}
*/
:root {
    --point : #006968;
    --pointHover : #025857;
}
.ff-gothic {font-family: 'Gothic A1', sans-serif;}
/* ==================================
    MOBILE
=================================== */
/* ============= HEADER === */
header {
    position: fixed;
    top: 0; left: 0;
    width: 100%;
    z-index: 99;
}
.nav-wrap {
    height: 60px;
    border-bottom: 1px solid rgba(255,255,255,.16);
    transition: background-color .3s;
}
h1 {
    position: absolute;
    top: 50%; left: 16px; transform: translateY(-50%);
}
h1 a {
    display: block;
    text-indent: -9999px;
    width: 156px; height: 27px;
    background: url(/image/common/logo_white_joosin.svg) no-repeat center/contain;
}
.nav-wrap .btn-menu {
    position: absolute;
    top: 50%; right: 16px; transform: translateY(-50%);
    width: 21px; height: 12px;
    transition: all 0.3s ease 0s;
}
.nav-wrap .btn-menu span {
    position: absolute;
    top: 0; right: 0;
    width: 100%; height: 1px;
    background: #fff;
}
.nav-wrap .btn-menu span:nth-child(2) {
    top: 50%;
    width: 17px;
}
.nav-wrap .btn-menu span:nth-child(3) {top: 100%;}
.nav-wrap .btn-menu span:nth-child(1),
.nav-wrap .btn-menu span:nth-child(3) {
    transition: all 0.3s ease;
    transition-property: top, transform;
    transition-delay: 0.3s, 0s;
}
.nav-inner {
    position: absolute;
    top: 60px;
    width: 100%; height: calc(100vh - 60px);
    padding: 29px 4.533% 0;
    background: url(/image/common/header_bg_m.jpg) no-repeat center/cover;
    opacity: 0;
    visibility: hidden;
    transition: all .5s;
}
.nav-inner:after {
    position: absolute;
    top: 0; left: 50%;
    content: '';
    width: 1px; height: 100%;
    background: rgba(255,255,255,.16);
}
.mobile-nav > li:nth-child(n+2) {margin-top: 25px;}
.mobile-nav > li > a {
    display: inline-block;
    font-size: 2.1rem; color: #fff;
}
.mobile-nav .lnb {
    position: absolute;
    padding: 26px 24px 0;
    top: 0; left: 50%;
    opacity: 0;
    transform: translateX(7%);
    transition: .1s;
    visibility: hidden;
}
.mobile-nav .lnb li:nth-child(n+2) {margin-top: 13px;}
.mobile-nav .lnb li a {
    display: block;
    font-size: 1.6rem; color: #fff;
    line-height: 27px;
}

/* ===== nav-wrap scroll === */
.nav-wrap.scroll {
	background: #fff;
	border-bottom-color: #f6f6f6f6;
}
.nav-wrap.scroll h1 a {background-image: url(/image/common/logo_joosin.svg);}
.nav-wrap.scroll .btn-menu span {background: #202525;}

/* ===== nav-wrap mobile-focus === */
body.menu-open {overflow: hidden;}
.nav-wrap.mobile-focus {background: #006968;}
.nav-wrap.mobile-focus .btn-menu {
    margin-top: -3px;
    transform: rotate(180deg);
}
.nav-wrap.mobile-focus .btn-menu span:nth-child(1),
.nav-wrap.mobile-focus .btn-menu span:nth-child(3) {
    transition-delay: 0s, 0.3s;
}
.nav-wrap.mobile-focus .btn-menu span:nth-child(1) {
    top: 10px;
    transform: rotate(-45deg);
}
.nav-wrap.mobile-focus .btn-menu span:nth-child(3) {
    top: 10px;
    transform: rotate(45deg);
}
.nav-wrap.mobile-focus .btn-menu span:nth-child(2) {background: transparent;}
.nav-wrap.mobile-focus .nav-inner {
    opacity: 1;
    visibility: visible;
}
.mobile-nav .lnb.active {
    opacity: 1;
    transform: translateX(0);
    transition: .5s;
    visibility: visible;
}
.nav-wrap.mobile-focus.scroll h1 a {background-image: url(/image/common/logo_white_joosin.svg);}
.nav-wrap.mobile-focus.scroll .btn-menu span {background: #fff;}
.nav-wrap.mobile-focus.scroll .btn-menu span:nth-child(2) {background: transparent;}

/* ============= FOOTER === */
footer {background: #080808;}
.footer-wrap {padding: 37px 16px 0;}
.footer-wrap .footer-list li {font-size: 1.4rem;}
.footer-wrap .footer-list li .tit {color: #fff;}
.footer-wrap .footer-list li .cont {color: #888;}
.footer-wrap .footer-list li .cont .sp {
    display: inline-block;
    color: #888;
}
.footer-wrap .footer-list li .cont .sp:nth-child(n+2):before {
    display: inline-block;
    content: '';
    margin: 0 18px;
    width: 1px; height: 9px;
    background: #424242;
}
.footer-wrap .info-box img {
    height: 23px;
    opacity: 0.5;
}
.footer-wrap .info-box .info-list {margin-top: 31px;}
.footer-wrap .info-box .info-list li:nth-child(n+2) {margin-top: 18px;}
.footer-wrap .info-box .info-list li {display: flex;}
.footer-wrap .info-box .info-list li .tit {width: 82px;}
.footer-wrap .info-box .info-list li .cont {width: calc(100% - 82px);}
.footer-wrap .footer-lower-inner ul {
    display: flex;
    padding: 18px 0;
    justify-content: center;
    margin-top: 36px;
    border-top: 1px solid rgba(255,255,255,.15);
}
.footer-wrap .footer-lower-inner ul li:nth-child(2) {margin-left: 21px;}
.footer-wrap .footer-lower-inner ul li a {
    display: block;
    font-size: 1.4rem; color: #888;
}
.footer-wrap .footer-lower-inner .copyright {
    display: block;
    position: relative;
    padding: 18px 0;
    font-size: 1.3rem; color: #888;
    font-weight: 700;
    letter-spacing: -0.05rem;
    text-align: center;
}
.footer-wrap .footer-lower-inner .copyright:before {
    position: absolute;
    top: 0; left: 50%; transform: translateX(-50%);
    content: '';
    width: 100vw; height: 1px;
    background: rgba(255,255,255,.15);
}

/* ============= SUBPAGE === */
/* ===== sub-visual === */
.sub-visual-inner {
    height: 341px;
    padding-top: 118px;
    color: #fff;
    background: url(/image/service/sub_visual_m.jpg) no-repeat center/cover;
    text-align: center;
}
.sub-visual-inner .title-area .depth1 {
    position: relative;
    display: inline-block;
    font-size: 1.5rem;
    font-weight: 700;
}
.sub-visual-inner .title-area .depth1:after {
    display: block;
    margin: 4px 0 16px;
    content: '';
    width: 100%; height: 2px;
    background: #fff;
}
.sub-visual-inner .title-area .page-name {
    font-size: 4.3rem;
    letter-spacing: -0.15rem;
    font-weight: 500;
}
.sub-visual-inner .title-area .navi {
    display: flex;
    margin-top: 32px;
    justify-content: center;
}
.sub-visual-inner .title-area .navi img {height: 12px;}
.sub-visual-inner .title-area .navi li {
    font-size: 1.5rem;
    font-weight: 700;
}
.sub-visual-inner .title-area .navi li:nth-child(n+2):before {
    display: inline-block;
    content: '';
    width: 4px; height: 4px;
    margin: 0 18px;
    border-radius: 100%;
    background: #fff;
    vertical-align: 3px;
}
/* ===== common-inner === */
.common-inner {padding: 56px 16px 64px;}
.common-inner .page-tit-area {
    display: flex;
    margin-bottom: 28px;
    justify-content: space-between;
    align-items: center;
}
.common-inner .page-tit-area h3 {
    font-size: 2.8rem;
    font-weight: 700;
}
.common-inner .page-tit-area .line {
    display: block;
    width: 108px; height: 1px;
    background: #202525;
}
/* ===== paging === */
.common-inner .paging-wrap {margin-top: 46px;}
.common-inner .paging-wrap ul {
    display: flex;
    justify-content: center;
}
.common-inner .paging-wrap ul li {width: 34px;}
.common-inner .paging-wrap ul li:nth-child(n+2) {margin-left: 4px;}
.common-inner .paging-wrap ul li a {
    position: relative;
    display: block;
    font-size: 1.6rem;
    height: 34px;
    line-height: 33px;
    text-align: center;
}
.common-inner .paging-wrap ul li.active a {font-weight: 700;}
.common-inner .paging-wrap ul li.active a:after {
    position: absolute;
    content: '';
    left: 50%; bottom: 0; transform: translateX(-50%);
    width: 24px; height: 2px;
    background: #000;
}
.common-inner .paging-wrap ul li.page-arrow a {line-height: 37px;}
.common-inner .paging-wrap ul li.next-page a img {transform: rotate(180deg);}
.common-inner .paging-wrap ul li a img {width: 10px;}
.common-inner .paging-wrap ul .page-most-arrow a img {width: 17px;}
/* ===== tabs === */
.common-inner .page-tab-area {margin-bottom: 28px;}
.common-inner .page-tab-area .tabs {
    display: flex;
    flex-wrap: wrap;
    gap: 8px 2%;
}
.common-inner .page-tab-area li {width: 32%;}
.common-inner .page-tab-area li a {
    display: block;
    line-height: 34px;
    font-size: 1.5rem;
    color: #666;
    font-weight: 300;
    background: #f8f8f8;
    text-align: center;
    border-radius: 20px;
}
.common-inner .page-tab-area li a.focus {
    color: #fff;
    background: #006968;
    box-shadow: 1px 2px 9px 0px rgb(0 0 0 / 19%);
}
/* ===== quick_btn === */
#quick_area {
    position: fixed;
    bottom: 26px; right: 16px;
    z-index: 9;
}
#quick_area button {
    width: 80px; height: 80px;
    background: var(--point);
    border-radius: 100%;
    box-shadow: 2px 3px 5px 0px rgba(0, 0, 0, 0.25);
}
#quick_area button .btn-name {
    margin-top: 3px;
    font-size: 1.4rem; color: #fff;
}
#quick_area .btn-inquire img {height: 20px;}

.main_popup {
    position: absolute;
    z-index: 10000;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: calc(100% - 40px);
    max-width: 560px;
}

.main_popup a { display: block; }

.main_popup img {
    width: 100%;
}

.popup_bottom {
    position: absolute;
    width: 100%;
    background-color: #000;
    height: 30px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    font-size: 1.5rem;
    padding: 0 20px;
}

.popup_bottom a {
    color: #fff;
}

/* ==================================
    PC
=================================== */
@media screen and (min-width:1084px){
    /* ==================================
        RESET
    =================================== */
    .pc {display: block;}
    .mobile {display: none;}

    /* ============= HEADER === */
    .nav-wrap {
        height: 102px;
        border-bottom-color: rgba(160,160,160,.36);
    }
    h1 {left: 128px;}
    h1 a {
        display: block;
        width: 197px; height: 34px;
    }
    .nav-wrap .btn-menu {
        right: 128px;
        width: 32px; height: 22px;
        z-index: 99;
    }
    .nav-wrap .btn-menu span:nth-child(2) {width: 24px;}
    .nav-inner {
        display: flex;
        justify-content: flex-end;
        position: static;
        width: auto; height: auto;
        padding: 0;
        background: none;
        opacity: 1;
        visibility: visible;
    }
    .nav-inner:after {display: none;}
    .pc-nav {margin-right: 212px;}
    .pc-nav > li {display: inline-block;}
    .pc-nav > li > a {
        display: block;
        padding: 0 42px;
        font-size: 1.6rem; color: #fff;
        line-height: 101px;
    }
    .nav-inner .pc-nav-box {
        display: none;
        position: absolute;
        top: 102px; left: 0;
        width: 100%; height: 186px;
    }
    .nav-inner .pc-nav-box .pc-nav-img {
        float: left;
        width: calc(100% - 800px); height: 100%;
        background: url(/image/common/header_bg.jpg) no-repeat center/cover;
        transition: background-position 1.3s .1s;
    }
    .nav-inner .pc-nav-box .lnb-box {
        float: right;
        width: 800px; height: 100%;
        background: #fff;
    }
    .nav-inner .pc-nav-box.active .pc-nav-img {background-position: top;}
    .pc-nav .lnb-box {
        display: none;
        position: absolute;
        top: 101px; right: 0;
    }
    .pc-nav .lnb {
        display: flex;
        padding-left: 50px;
        width: 800px; height: 186px;
        align-items: center;
        align-content: center;
        flex-wrap: wrap;
    }
    .pc-nav .lnb li {display: inline-block;}
    .pc-nav .lnb li:nth-child(n+2) {margin-left: 43px;}
    .pc-nav .lnb li a {
        position: relative;
        font-size: 1.6rem; color: #787979;
    }
    .pc-nav .lnb li a:after {
        position: absolute;
        top: 1px; right: -4px;
        content: '';
        width: 11px; height: 11px;
        border-radius: 100%;
        background: #006968;
        opacity: 0.5;
        transform: scale(0);
        transition: transform .5s;
    }
    .pc-nav .lnb li a:hover:after {
        transform: scale(1);
    }

    /* ===== nav-wrap scroll === */
    .nav-wrap.scroll .pc-nav > li > a {color: #202525;}

    /* ============= SITEMAP === */
    .sitemap-wrap:after {
        position: absolute;
        top: 0; left: 0;
        width: 100%; height: 72px;
        background: rgba(0,0,0,.9);
    }
    .sitemap-wrap {
        position: absolute;
        top: 0; left: 0;
        width: 100vw; height: 100vh;
        min-width: 1240px;
        padding-top: 72px;
        min-height: 660px;
        visibility: hidden;
        opacity: 0;
    }
    .sitemap-wrap .left-area {
        position: relative;
        float: left;
        padding: 98px 0 0 124px;
        width: 59.85%; height: 100%;
        background: #fff;
        overflow: hidden;
    }
    .sitemap-wrap .left-area:after {
        position: absolute;
        content: '';
        bottom: -12px; right: -15px;
        width: 382px; height: 352px;
        background: url(/image/common/sitemap_logo_symbol.png) no-repeat center/contain;
    }
    .sitemap-wrap .left-area .logo-box {margin-bottom: 72px;}
    .sitemap-wrap .left-area .logo-box img {width: 321px;}
    .sitemap-wrap .left-area .sitemap > li > a {
        display: inline-block;
        margin-bottom: 32px;
        font-size: 4.6rem; font-weight: 700;
    }
    .sitemap-wrap .left-area .sitemap > li:nth-child(n+2) {margin-top: 51px;}
    .sitemap-wrap .left-area .lnb li {display: inline-block;}
    .sitemap-wrap .left-area .lnb li:nth-child(n+2) {margin-left: 42px;}
    .sitemap-wrap .left-area .lnb li a {
        font-size: 1.8rem; color: #919090;
        font-weight: 500;
    }
    .sitemap-wrap .right-area {
        float: right;
        width: 40.15%;
        background: #fff;
    }
    .sitemap-wrap .right-area .slide-cont {
        position: relative;
        width: 100%; height: calc(100vh - 72px);
    }
    .sitemap-wrap .right-area .slide-cont:after {
        position: absolute;
        top: 0; left: 0;
        width: 100%; height: 100%;
        content: '';
        background: url(/image/common/sitemap_right_cover.png) no-repeat center/cover;
    }
    .sitemap-wrap .right-area img {
        width: 100%; height: 100%;
        object-fit: cover;
    }
    .sitemap-wrap .right-area .slide-cont .cont {
        position: absolute;
        bottom: 16px; right: 25px;
        font-size: 1.5rem; color: #fff;
        z-index: 99;
    }
    .nav-wrap.sitemap-focus .btn-menu {
        margin-top: -24px;
        transform: rotate(180deg);
    }
    .nav-wrap.sitemap-focus .btn-menu span:nth-child(1),
    .nav-wrap.sitemap-focus .btn-menu span:nth-child(3) {
        transition-delay: 0s, 0.3s;
    }
    .nav-wrap.sitemap-focus .btn-menu span:nth-child(1) {
        top: 10px;
        transform: rotate(-45deg);
    }
    .nav-wrap.sitemap-focus .btn-menu span:nth-child(3) {
        top: 10px;
        transform: rotate(45deg);
    }
    .nav-wrap.sitemap-focus .btn-menu span:nth-child(2),
    .nav-wrap.sitemap-focus.scroll .btn-menu span:nth-child(2) {background: transparent;}
    .nav-wrap.sitemap-focus.scroll .btn-menu span {background: #fff;}
    .nav-wrap.sitemap-focus .sitemap-wrap {
        opacity: 1;
        visibility: visible;
        transition: .5s;
    }

    /* ============= FOOTER === */
    .footer-wrap {
        padding: 42px 0 0;
        width: 1194px;
        margin: 0 auto;
    }
    .footer-wrap .footer-upper-inner {
        display: flex;
    }
    .footer-wrap .footer-list li {font-size: 1.5rem;}
    .footer-wrap .footer-list li .cont .sp:nth-child(n+2):before {
        margin: 0 12px;
        width: 1px; height: 10px;
    }
    .footer-wrap .info-box {
        position: relative;
        width: 514px;
        padding: 0 56px;
    }
    .footer-wrap .info-box img {height: 34px;}
    .footer-wrap .info-box .info-list {margin-top: 50px;}
    .footer-wrap .info-box .info-list li:nth-child(n+2) {margin-top: 25px;}
    .footer-wrap .info-box .info-list li .tit {width: 97px;}
    .footer-wrap .info-box .info-list li .cont {width: calc(100% - 97px);}
    .footer-wrap .fnb-box {
        display: block;
        position: relative;
        width: 680px;
        padding: 84px 56px 0;
    }
    .footer-wrap .info-box:before,
    .footer-wrap .fnb-box:before,
    .footer-wrap .fnb-box:after {
        position: absolute;
        top: -42px; left: 0;
        content: '';
        width: 1px; height: 428px;
        background: rgba(255,255,255,.15);
    }
    .footer-wrap .fnb-box:after {
        left: auto; right: 0;
    }
    .footer-wrap .fnb-box .fnb > li {display: flex;}
    .footer-wrap .fnb-box .fnb > li:nth-child(n+2) {margin-top: 25px;}
    .footer-wrap .fnb-box .fnb .pe-none {
        display: block;
        margin: 0 46px 8px 0;
        font-size: 1.5rem; color: #fff;
    }
    .footer-wrap .fnb-box .fnb .depth2 {
        display: flex;
        flex-wrap: wrap;
        gap: 6px 0;
    }
    .footer-wrap .fnb-box .fnb .depth2 li:nth-child(n+2):before {
        display: inline-block;
        content: '';
        margin: 0 20px;
        width: 1px; height: 10px;
        background: #424242;
    }
    .footer-wrap .fnb-box .fnb .depth2 li a {font-size: 1.5rem; color: #888;}
    .footer-wrap .footer-lower-inner {
        position: relative;
        margin-top: 86px;
    }
    .footer-wrap .footer-lower-inner ul {
        position: absolute;
        width: 100%;
        top: 50%; transform: translateY(-50%); left: 0;
        margin: 0;
        border: 0;
        display: flex;
        padding: 0;
        justify-content: space-between;
        z-index: 2;
    }
    .footer-wrap .footer-lower-inner ul li:nth-child(2) {margin-left: 21px;}
    .footer-wrap .footer-lower-inner ul li a {
        display: block;
        font-size: 1.4rem; color: #888;
    }
    .footer-wrap .footer-lower-inner .copyright {
        padding: 26px 0 25px;
        font-size: 1.5rem;
        font-weight: 700;
        letter-spacing: 0;
    }

    /* ===== sub-visual === */
    .sub-visual-inner {
        height: 520px;
        padding-top: 194px;
        background-image: url(/image/service/sub_visual.jpg);
    }
    .sub-visual-inner .title-area .depth1:after {margin: 6px 0 24px;}
    .sub-visual-inner .title-area .page-name {font-size: 5.6rem;}
    .sub-visual-inner .title-area .navi {margin-top: 65px;}
    /* ===== common-inner === */
    .common-inner {
        padding: 109px 0 124px;
        width: 1194px;
        margin: 0 auto;
    }
    .common-inner .page-tit-area {margin-bottom: 51px;}
    .common-inner .page-tit-area h3 {font-size: 3.8rem;}
    .common-inner .page-tit-area .line {width: 169px; height: 2px;}
    /* ===== paging === */
    .common-inner .paging-wrap {margin-top: 52px;}
    .common-inner .paging-wrap ul li {width: 36px;}
    .common-inner .paging-wrap ul li:nth-child(n+2) {margin-left: 5px;}
    .common-inner .paging-wrap ul li a {
        height: 36px;
        line-height: 35px;
    }
    .common-inner .paging-wrap ul li.page-arrow a {line-height: 39px;}
    /* ===== tabs === */
    .common-inner .page-tab-area {margin-bottom: 38px;}
    .common-inner .page-tab-area .tabs {gap: 8px 7px;}
    .common-inner .page-tab-area li {width: 124px;}
    .common-inner .page-tab-area li a {
        line-height: 39px;
        font-size: 1.6rem;
    }

    /* ===== quick_btn === */
    #quick_area {bottom: 49px; right: 46px;}
    #quick_area button {width: 90px; height: 90px;}
    #quick_area button:hover {
        background: var(--pointHover);
        transition: background-color .5s;
    }
    #quick_area button .btn-name {
        margin-top: 3px;
        font-size: 1.5rem;
    }


    .main_popup {
        top: 140px;
        left: auto;
        right: 100px;
        transform: translate(0, 0);
    }

}

