@charset "utf-8";

/* Guide
----------------------------------------------------------------------------------------------------------------------------------------------------------

▶사이즈
pc : 1200px
mobile : 767px ~
         480px ~ 320px

▶미디어쿼리는 (주석으로 구분 되어있는)파트마다 각각 작성함.

*/


/* Font
---------------------------------------------------------------------------------------------------------------------------------------------------------- */
/* 출처 : 이 사이트에는 네이버에서 제공한 나눔글꼴이 적용되어 있습니다. */
/* 나눔스퀘어 */
@font-face {
    font-family: 'Nanum Square';
    src: url('/tpl/webfont/NanumSquareR.eot');
    src: url('/tpl/webfont/NanumSquareR.eot?#iefix') format('embedded-opentype'),
        url('/tpl/webfont/NanumSquareR.woff') format('woff'),
        url('/tpl/webfont/NanumSquareR.ttf') format('truetype');
}

@font-face {
    font-family: 'Nanum Square';
    font-weight: bold;
    src: url('/tpl/webfont/NanumSquareB.eot');
    src: url('/tpl/webfont/NanumSquareB.eot?#iefix') format('embedded-opentype'),
        url('/tpl/webfont/NanumSquareB.woff') format('woff'),
        url('/tpl/webfont/NanumSquareB.ttf') format('truetype');
}



/* Reset
---------------------------------------------------------------------------------------------------------------------------------------------------------- */
body,
div,
dl,
dt,
dd,
ul,
ol,
li,
h1,
h2,
h3,
h4,
h5,
h6,
pre,
code,
form,
fieldset,
legend,
textarea,
p,
blockquote,
th,
td,
input,
select,
textarea,
button {
    margin: 0;
    padding: 0;
    font-family: "Malgun Gothic", sans-serif;
}

dl,
ul,
ol,
menu,
li {
    list-style: none;
    color: #444;
}

body {
    font-family: "Malgun Gothic", sans-serif;
    font-size: 14px;
    font-weight: normal;
    color: #444;
    letter-spacing: -1px;
}

*,
*:before,
*:after {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

:focus {
    outline: 0 !important;
}

iframe {
    border: none;
    width: 100%;
}

a {
    font-family: "Malgun Gothic", sans-serif;
    color: inherit;
    -webkit-transition: all .2s ease-out;
    -moz-transition: all .2s ease-out;
    transition: all .2s ease-out;
    color: #444;
}

a:hover,
a:active {
    text-decoration: none;
    color: #1766b6;
}

img {
    max-width: 100%;
}

textarea {
    max-width: 100%;
    resize: none;
}

@media only screen and (min-width: 320px) {
    body {
        min-width: 320px;
        overflow-x: hidden;
    }
}

.hidden {
    margin: 0;
    padding: 0;
    font-size: 0;
    line-height: 0;
    text-indent: -9999em;
    overflow: hidden;
}

#divWMSSLLoading {
    display: none;
}


/* Parallax
---------------------------------------------------------------------------------------------------------------------------------------------------------- */
.parallax {
    background-position: 0 0;
    background-repeat: no-repeat;
    background-size: 100% auto;
    width: 100%;
    background-size: cover;
    background-attachment: fixed;
}


/* Preloader
---------------------------------------------------------------------------------------------------------------------------------------------------------- */
.animationload {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: #fff;
    z-index: 999999;
}

.loader {
    width: 200px;
    height: 200px;
    font-size: 24px;
    text-align: center;
    position: absolute;
    left: 50%;
    top: 50%;
    background-image: url(/images/basic_resp/img/preloader.gif);
    background-repeat: no-repeat;
    background-position: center;
    margin: -100px 0 0 -100px;
}


/* Back to top (탑 버튼)
---------------------------------------------------------------------------------------------------------------------------------------------------------- */
.back-to-top {
    width: 40px;
    height: 40px;
    position: fixed;
    bottom: 10px;
    right: 20px;
    display: none;
    text-align: center;
    z-index: 10000;
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    border-radius: 50%;
    background: #5177a7;
}

.back-to-top i {
    color: #fff;
    font-size: 15px;
    display: block;
    line-height: 33px;
}


/* Layoyt (레이아웃)
---------------------------------------------------------------------------------------------------------------------------------------------------------- */
#wrapper {
    position: relative;
    min-width: 1200px;
}

#header {
    z-index: 10000;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    box-sizing: border-box;
    height: 90px;
    background-color: rgba(0, 0, 0, 0.15);
    border-bottom: 1px solid rgba(0, 0, 0, 0.3);
    transition: all 0.5s;
}

#header.header-bg {
    background-color: #2e2e2e;
}

.header-area {
    padding: 0 25px;
    margin: 0 auto;
    width: 1200px;
    box-sizing: border-box;
}

#L_SITE_LOGO {
    float: left;
}

#L_SITE_LOGO h1 {
    margin: 0;
}

#L_SITE_LOGO a {
    display: flex;
    flex-direction: column;
    justify-content: center;
    height: 9rem;
}

#L_SITE_LOGO img {
    position: relative;
}

@media only screen and (max-width:1590px) {
    #header {
        height: auto;
    }
}

@media only screen and (max-width: 1200px) {
    #wrapper {
        min-width: 320px;
    }

    .header-area {
        width: 100%;
    }
}

@media only screen and (max-width: 980px) {
    .header-area {
        position: relative;
        padding: 0;
        height: 65px;
    }

    #L_SITE_LOGO {
        padding: 0 25px;
    }

    #L_SITE_LOGO a {
        height: 6.5rem;
    }

    #L_SITE_LOGO img {
        height: 4rem;
    }
}

@media only screen and (max-width: 767px) {
    .header-area {
        height: 50px;
    }

    #L_SITE_LOGO {
        padding: 0 20px;
    }

    #L_SITE_LOGO a {
        height: 5rem;
    }

    #L_SITE_LOGO img {
        height: 4rem;
    }
}


/* Navigation (상단 메뉴)
---------------------------------------------------------------------------------------------------------------------------------------------------------- */
#gnb {
    z-index: 999;
}

.navigation .menu-item > a {
    display: block;
    font-family: "Nanum Square";
    font-size: 18px;
    font-weight: bold;
    color: #fff;
}

.navigation .menu-item.on > a {
    color: #1766b6;
}

.navigation .menu-item > a:hover,
.navigation .menu-item > a:active,
.navigation .menu-item > a:focus {
    text-decoration: none;
    color: #949494;
}

@media only screen and (min-width: 980px) {
    #gnb {
        display: block !important;
    }

    #menuArea {
        float: right;
    }

    .navigation {
        margin: 35px 0 0;
    }

    .navigation:after {
        content: "";
        display: block;
        clear: both;
    }

    .navigation .menu-item {
        position: relative;
        float: left;
        margin-left: 90px;
    }

    .navigation .menu-item:first-child {
        margin-left: 0;
    }
}

@media only screen and (max-width: 980px) {
    #gnb {
        display: none;
        width: 100%;
        height: auto;
        box-sizing: border-box;
        background: #2e2e2e;
    }

    #gnb {
        position: absolute;
        top: 65px;
        border-bottom: 1px solid #555;
    }

    #gnb .navigation .menu-item:last-child a {
        border-bottom: 0;
    }

    #menuArea {
        float: none;
        width: 100%;
        height: 100%;
    }

    nav [data-type='menu-btn'] {
        z-index: 1000;
        position: absolute;
        right: 25px;
        top: calc(50% - 12px);
        width: 24px;
        height: 24px;
        border-radius: 5px;
        cursor: pointer;
        transition: .4s all linear;
    }

    nav [data-type='menu-btn'] span {
        display: block;
        position: absolute;
        left: 1px;
        width: 22px;
        height: 3px;
        transition: .3s all linear;
        background: #fff;
    }

    nav [data-type='menu-btn'] span:nth-child(1) {
        top: 4px;
        transform: rotate(0deg);
    }

    nav [data-type='menu-btn'] span:nth-child(2),
    nav [data-type='menu-btn'] span:nth-child(3) {
        top: 11px;
        transform: rotate(0deg);
    }

    nav [data-type='menu-btn'] span:nth-child(4) {
        top: 18px;
    }

    nav.open [data-type='menu-btn'] span:nth-child(1) {
        left: 50%;
        width: 0;
    }

    nav.open [data-type='menu-btn'] span:nth-child(2) {
        transform: rotate(45deg);
    }

    nav.open [data-type='menu-btn'] span:nth-child(3) {
        transform: rotate(-45deg);
    }

    nav.open [data-type='menu-btn'] span:nth-child(4) {
        left: 50%;
        width: 0;
    }

    .navigation .menu-item > a {
        padding: 0 25px;
        text-align: center;
        width: 100%;
        line-height: 40px;
        font-size: 17px;
        transition: none;
        border-bottom: 1px solid #555;
        color: #fff;
    }

    .navigation .menu-item:first-child > a {
        border-top: 1px solid #555;
    }

    .navigation .menu-item.on > a {
        color: #fff;
    }
}

@media only screen and (max-width: 767px) {
    #gnb {
        top: 50px;
    }

    #btnMenuOpen {
        right: 20px;
    }

    nav [data-type='menu-btn'] {
        right: 20px;
    }

    .navigation .menu-item > a {
        padding: 0 20px;
    }
}


/* Button (공통 버튼)
---------------------------------------------------------------------------------------------------------------------------------------------------------- */
.btn {
    font-family: "Malgun Gothic", sans-serif;
    text-transform: uppercase;
    border-radius: 0;
    line-height: 24px;
}

.btn:focus,
.btn:active {
    outline: none;
    color: #fff;
}

.btn-custom {
    border-radius: 3px;
    padding: 0.8em 1.8em;
    -webkit-transition: all .2s ease-out;
    -moz-transition: all .2s ease-out;
    transition: all .2s ease-out;
    text-transform: uppercase;
    background-color: #003aaf;
    border-color: #003aaf;
    color: #fff;
}

.btn-custom:hover,
.btn-custom:focus {
    background-color: #00208e;
    border-color: #00208e;
    color: #fff;
}

.btn-custom-outline {
    border-radius: 3px;
    padding: 0.8em 1.8em;
    color: #fff;
    -webkit-transition: all .2s ease-out;
    transition: all .2s ease-out;
    text-transform: uppercase;
    background-color: transparent;
    border-color: #fff;
}

.btn-custom-outline:hover,
.btn-custom-outline:focus {
    color: #fff;
    background-color: rgba(255, 255, 255, .5);
}

.btn-bar a {
    margin-right: 10px;
}

.form-control {
    box-shadow: none;
    -webkit-box-shadow: none;
    border-radius: 3px;
    height: 38px;
}

.form-control:focus {
    outline: none;
    box-shadow: none;
    -webkit-box-shadow: none;
    border-color: #003aaf;
}



/* Footer (하단메시지)
---------------------------------------------------------------------------------------------------------------------------------------------------------- */
#footer {
    padding: 30px 0px;
    width: 100%;
    background: #1a191f;
    color: #fff;
}

.footer-area {
    margin: 0 auto;
    padding: 0 10%;
    width: 1200px;
    box-sizing: border-box;
    text-align: center;
}

#footer p,
#footer li {
    font-size: 12px;
    letter-spacing: 0;
    color: #adadad;
}

#footer p._info {
    white-space: pre-line;
    word-break: keep-all;
}

.footer-menu {
    margin: 0 auto 30px;
}

.footer-menu li {
    display: inline-block;
    margin-left: 20px;
    padding-left: 20px;
    line-height: 8px;
    border-left: 1px solid #fff;
}

.footer-menu li:first-child {
    margin-left: 0;
    padding-left: 0;
    border-left: 0;
}

.footer-menu li a {
    line-height: 8px;
    font-size: 12px;
    color: #fff;
}

.footer-info {
    text-align: center;
    margin-bottom: 10px;
}

.footer-info span {
    color: #fff;
}

.footer-info + p a {
    color: #adadad;
}

@media only screen and (max-width:1200px) {
    .footer-area {
        width: 100%;
    }
}

@media only screen and (max-width:767px) {
    .footer-area {
        padding: 0 25px;
        box-sizing: border-box;
    }

    .footer-menu li {
        margin-left: 10px;
        padding-left: 10px;
    }

    #footer p._info {
        white-space: normal;
    }

    #footer p._info a {
        display: block;
    }
}

@media only screen and (max-width:480px) {
    .footer-area {
        padding: 0 20px;
    }

    .footer-menu li {
        margin-left: 5px;
        padding-left: 5px;
    }
}



/* Main Contents (메인 컨텐츠)
---------------------------------------------------------------------------------------------------------------------------------------------------------- */
#mainContents {
    z-index: 88;
}

#mainContents > section > div {
    margin: 0 auto;
    padding: 100px 25px;
    width: 1200px;
    box-sizing: border-box;
}

#mainContents > section > div:after {
    content: "";
    display: block;
    clear: both;
}

#mainContents > #section01 > div {
    margin: 0;
    padding: 0px;
    width: 100%;
}

#mainContents h2 {
    margin-bottom: 80px;
    text-align: center;
    font-family: 'Nanum Square';
    font-weight: bold;
    font-size: 45px;
    color: #000;
}

#mainContents h2:before {
    display: block;
    content: "";
    margin: 0 auto 30px;
    width: 35px;
    height: 3px;
    background: #000;
    transform: rotate(-30deg);
}

#mainContents .section02,
#mainContents .section03,
#mainContents .section04 {
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: center;
    width: 100%;
    height: 878px;
}


#mainContents .section02 h2,
#mainContents .section03 h2,
#mainContents .section04 h2 {
    color: #fff;
}

#mainContents .section02 h2:before,
#mainContents .section03 h2:before,
#mainContents .section04 h2:before {
    background: #fff;
}

#mainContents .section-title h2 {
    margin-bottom: 20px;
}

#mainContents .section-title h2 + p {
    margin-bottom: 80px;
    text-align: center;
    font-size: 18px;
    text-transform: uppercase;
    letter-spacing: 0;
    color: #535353;
}

.txt-area {
    display: inline-flex;
    flex-direction: column;
    width: 100%;
    box-sizing: border-box;
    justify-content: center;
}

.txt-area p {
    color: #fff;
    font-family: 'Nanum Square';
    font-size: 2.5rem;
    text-align: center;
    line-height: 1.5;
    word-break: keep-all;
    white-space: pre-line;
}

.txt-area p._first {
    margin-bottom: 3rem;
    font-size: 3.5rem;
    text-align: center;
    line-height: 1.5;
    word-break: keep-all;
    white-space: pre-line;
}

.section02 .img-area {
    display: table-cell;
    padding-right: 20px;
    width: 50%;
    box-sizing: border-box;
    vertical-align: middle;
}

.section02 .img-area img {
    width: 100%;
}

.section02 {
    background: url('/images/kor01r-17-0384/section02_bg.jpg') no-repeat center center/cover;
}

.section03 {
    background: url('/images/kor01r-17-0384/section03_bg.jpg') no-repeat center center/cover;
}

.section04 {
    background: url('/images/kor01r-17-0384/section04_bg.jpg') no-repeat center center/cover;
}

.section04 .map-box {
    position: relative;
    display: flex;
    flex-direction: row;
}

/* 다음지도 */
.section04 .map-area {
    display: table-cell;
    width: 50%;
    vertical-align: middle;
}

.section04 .root_daum_roughmap {
    width: 100%;
}

.section04 .info-area {
    display: table-cell;
    padding-left: 50px;
    width: 50%;
    box-sizing: border-box;
    vertical-align: middle;
}

.section04 .info-area dl {
    margin: 25px 0 0;
    color: #fff;
    border-bottom: 1px dashed rgba(255, 255, 255, 0.5);
}

.section04 .info-area dl:first-child {
    margin-top: 0;
}

.section04 .info-area dt {
    display: inline-block;
    margin-bottom: 5px;
    padding: 3px 7px;
    text-align: center;
    font-family: 'Nanum Square';
    font-weight: bold;
    font-size: 22px;
}

.section04 .info-area dd {
    line-height: 1.5;
    font-family: 'Nanum Square';
    font-size: 19px;
}

.section05 {
    background: #ededed;
}

@media only screen and (max-width:1590px) {
    #mainContents > #section01 > div {
        padding: 0px;
    }
}

@media only screen and (max-width:1200px) {
    #mainContents > section > div {
        width: 100%;
    }

    .txt-area p {
        white-space: normal;
    }

    .txt-area p._first {
        white-space: normal;
    }
}

@media only screen and (max-width:980px) {
    #mainContents > section > div {
        padding: 70px 25px;
    }

    #mainContents > #section01 > div {
        padding: 0px;
    }

    .section02 .txt-area {
        display: block;
        padding-right: 0;
        width: 100%;
        text-align: center;
    }

    .section02 .img-area {
        display: block;
        padding-left: 0;
        margin-bottom: 50px;
        width: 100%;
    }

    .section02 .txt-area p._first {
        margin-bottom: 20px;
    }

    .section04 .map-box {
        flex-direction: column;
    }

    .section04 .map-area {
        display: block;
        margin-bottom: 50px;
        width: 100%;
    }

    .section04 .info-area {
        display: block;
        padding-left: 0;
        width: 100%;
    }
}

@media only screen and (max-width:767px) {
    #mainContents > section > div {
        padding: 50px 20px;
    }

    #mainContents > #section01 > div {
        padding: 0px;
    }

    #mainContents h2 {
        margin-bottom: 40px;
        font-size: 3rem;
    }

    #mainContents h2:before {
        margin: 0 auto 20px;
    }

    #mainContents .section-title h2 {
        margin-bottom: 10px;
    }

    #mainContents .section-title h2 + p {
        margin-bottom: 40px;
        font-size: 14px;
    }

    .txt-area p {
        font-size: 1.6rem;
    }

    .txt-area p._first {
        font-size: 1.8rem;
    }

    .section04 .map-area {
        margin-bottom: 30px;
    }

    .section04 .info-area dl {
        margin: 20px 0 0;
    }

    .section04 .info-area dt {
        font-size: 18px;
    }

    .section04 .info-area dd {
        font-size: 16px;
    }

    #mainContents .section02,
    #mainContents .section03,
    #mainContents .section04 {
        height: inherit;
        min-height: 640px;
    }
}



/* Main Visual  - section01 (메인 비주얼)
---------------------------------------------------------------------------------------------------------------------------------------------------------- */
.main-visual .carousel-inner > .item {
    height: 878px;
}

.main-visual .carousel-inner > .item.main-img01 {
    background: url('/images/kor01r-17-0384/section01_bg.jpg') no-repeat center center/cover;
}

.main-visual .carousel-inner > .item.main-img02 {
    background: url('/images/kor01r-17-0384/section01_bg01.jpg') no-repeat center center/cover;
}

.main-visual .carousel-inner > .item.main-img03 {
    background: url('/images/kor01r-17-0384/section01_bg01.jpg') no-repeat center center/cover;
}

.main-visual .carousel-inner > .item.main-img04 {
    background: url('/images/kor01r-17-0384/section01_bg01.jpg') no-repeat center center/cover;
}

.main-visual .carousel-caption {
    top: 50%;
    left: 9%;
    right: 5%;
    bottom: auto;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    text-shadow: 0 1px 2px rgba(0, 0, 0, .3);
    text-align: center;
    width: 1200px;
    margin: 0 auto;
}

.main-visual .carousel-caption p {
    margin-top: 90px;
    font-family: 'Nanum Square';
    font-size: 27px;
    line-height: 1.8;
    letter-spacing: 1px;
}

.main-visual .carousel-indicators {
    bottom: 80px;
}

.main-visual .carousel-indicators li {
    margin: 0 4px;
    width: 20px;
    height: 20px;
    background: #fff;
    border: 0;
}

.main-visual .carousel-indicators li.active {
    margin: 0 4px;
    width: 40px;
    height: 20px;
    background: #5177a7;
    box-sizing: border-box;
}

@media screen and (max-width:1590px) {
    .main-visual .carousel-caption {
        top: 50%;
        left: 5%;
        right: 5%;
        bottom: auto;
        -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
        transform: translateY(-50%);
        text-shadow: 0 1px 2px rgba(0, 0, 0, .3);
        text-align: left;
        width: auto;
        margin: 0;
    }
}

@media screen and (max-width:980px) {
    .main-visual .carousel-indicators li {
        width: 15px;
        height: 15px;
    }

    .main-visual .carousel-indicators li.active {
        width: 30px;
        height: 15px;
    }
}

@media screen and (max-width:767px) {
    .main-visual .carousel-inner > .item {
        height: 540px;
    }

    .main-visual .carousel-caption p {
        margin-top: 50px;
        font-size: 18px;
        line-height: 1.5;
        letter-spacing: 0;
    }

    .main-visual .carousel-indicators {
        bottom: 40px;
    }

    .main-visual .carousel-indicators li {
        margin: 0 2px;
        width: 12px;
        height: 12px;
    }

    .main-visual .carousel-indicators li.active {
        margin: 0 2px;
        width: 24px;
        height: 12px;
    }
}
