@charset "utf-8";

html, body {
    font-family:'Pretendard',sans-serif;
    font-size:16px;
    line-height:1.2;
    letter-spacing: -0.05em;
}

html.ov_h, body.ov_h{
    overflow: hidden;
}


/* 웹접근성 바로가기 */
#accessibility a {
    position: fixed;
    left: 0px;
    top: -50px;
    display: block;
    width: 100%;
    height: 48px;
    padding: 15px 0px;
    background-color: #003dad;
    color: #fff;
    line-height: 100%;
    text-align: center;
    font-weight: 400;
    line-height: 100%;
    z-index: 9999;
}

#accessibility a:focus {
    top: 0px;
}

.wrapper {
    position:relative;
    max-width:1920px;
    margin:0 auto;
}

html.ov_h .wrapper::before, body.ov_h .wrapper::before {
    content:"";
    display:block;
    width:100%;
    height:100%;
    position:absolute;
    left:0;
    top:0;
    background-color:rgba(0,0,0,0.2);
    z-index:1;
}

.inner {
    max-width:1600px;
    width:100%;
    height:100%;
    margin:0 auto;
}

/*공통 헤더 & 서브 헤더*/

#header {
    position:relative;
    width:100%;
    height:100px;
    border-top:1px solid #ebebeb;
    border-bottom:1px solid rgba(255,255,255,0.2);
    box-sizing: border-box;
    z-index:2;
}

#header .inner {
    display:flex;
    align-items: center;
    justify-content: space-between;
    height:100%;
}

#header.scroll {
    top:0;
    transition: all 0.2s;
}

#header.main-header.scroll {
    position:fixed;
    background-color:rgb(0, 179, 146);
    border-top:0;
    border-bottom:1px solid rgb(28, 182, 154);
    height:85px;
    transition: all 0.2s;
    z-index:3333;
}

#header #gnb {
    max-width:920px;
    width:100%;
    height:100%;
    position:relative;
}

#header #gnb > ul {
    display:flex;
    height:100%;
    justify-content: center;
    position:relative;
}

#header #gnb > ul > li {
    width:calc(100% / 5);
}

#header #gnb > ul > li .depth1 {
    display:flex;
    align-items: center;
    justify-content:center;
    color:#000;
    font-weight:600;
    font-size:1.125rem;
    height:100%;
    padding:0 32px;
}

#header #gnb > ul > li:hover .depth1 {
    color:#4892f1 !important
}

#header #gnb > ul > li .menu-drop {
    display:none;
    position:absolute;
    left:0;
    width:100%;
    background-color:#ffffff;
    border-top:1px solid #dddddd;
    border-bottom:1px solid #dddddd;
    box-sizing: border-box;
}

#header #gnb > ul > li .depth2 {
    /* transform: translateX(-50%); */
    width:100%;
    max-width:920px;
    margin:0 auto;
    box-sizing: border-box;
    display:flex;
    flex-wrap:wrap;
    padding:15px 0;
}

#header #gnb > ul > li .depth2 .depth2-item {
    width:calc(100% / 4);
    border-right:1px solid rgba(0,0,0,0.1);
    padding:0 32px;
    margin:15px 0;
    box-sizing: border-box;
}

#header #gnb > ul > li .depth2 .depth2-item:nth-of-type(4n) {
    border-right:0;
}

#header #gnb > ul > li .depth2 .depth2-item:last-of-type {
    border-right:0;
}

#header #gnb > ul > li .depth2 .depth2-item .depth2-name {
    margin-bottom:15px;
}

#header #gnb > ul > li .depth2 .depth2-item .depth2-name a {
    color:#4892f1;
    font-weight:600;
    font-size:15px;
    letter-spacing: -0.05em;
}

/* #header #gnb.open > ul > li .depth2 {
    border-left:0;
}

#header #gnb.open > ul > li:first-child .depth2 {
    border-left:1px solid #dddddd;
} */

#header #gnb.open > ul > li.open .menu-drop {
    display:block;
}

#header #gnb > ul > li .depth2 .depth2-item.col2  {
    width:calc(100% / 2);
    border-right:0;
}

#header #gnb > ul > li .depth2 .depth2-item.col2 ul {
    display: grid;
    grid-auto-flow: column;
    grid-template-columns: repeat(2, 1fr);  /* ← 이 줄 추가 */
    grid-template-rows: repeat(5, auto);
    width: 100%;
}

#header #gnb > ul > li .depth2 .depth2-item.col2 ul li {
    width: 100%; /* grid 셀 안에서 100%로 꽉 차게 */
    box-sizing: border-box;
}

#header #gnb > ul > li .depth2 .depth2-item.col3  {
    width:calc((100% / 4) * 3);
    border-right:0;
}

#header #gnb > ul > li .depth2 .depth2-item.col3 ul {
    display: grid;
    grid-auto-flow: column;
    grid-template-columns: repeat(3, 1fr);  /* ← 이 줄 추가 */
    grid-template-rows: repeat(5, auto);
    width: 100%;
}

#header #gnb > ul > li .depth2 .depth2-item.col3 ul li {
    width: 100%; /* grid 셀 안에서 100%로 꽉 차게 */
    box-sizing: border-box;
}

#header #gnb > ul > li .depth2 .depth2-item ul li {
    margin-bottom:15px;
}

#header #gnb > ul > li .depth2 .depth2-item ul li {
    position:relative;
    padding-left:8px;
}

#header #gnb > ul > li .depth2 .depth2-item ul li::before {
    content:"";
    display:block;
    width:3px;
    height:3px;
    background-color:#000;
    position:absolute;
    left:0;
    top:8px;
}

#header #gnb > ul > li .depth2 .depth2-item ul li:nth-child(5n) {
    margin-bottom:0;
}

#header #gnb > ul > li .menu-drop .etc-depth {
    position:fixed;
    right:0;
    top:148px;
    width:100%;
    max-width:calc((100% - 850px) / 2);
    background-image:url(../images/etc_depth_bg.png);
    background-position:center;
    background-size:cover;
    display:flex;
    align-items: flex-end;
}

#header.scroll #gnb > ul > li .menu-drop .etc-depth {
    top:85px
}

#header #gnb > ul > li .menu-drop .etc-depth .links {
    padding:35px;
    box-sizing:border-box;
}

#header #gnb > ul > li .menu-drop .etc-depth .links a {
    background-color:#4892f1;
    width:271px;
    max-width:100%;
    height:50px;
    box-sizing: border-box;
    display:flex;
    align-items: center;
    color:#ffffff;
    padding:0 15px;
    font-size:16px;
    margin-bottom:8px;
    justify-content: space-between;
}

#header #gnb > ul > li .menu-drop .etc-depth .links a:hover {
    background-color:#3877c9
}

#header #gnb > ul > li .menu-drop .etc-depth .links a::after {
    content:"";
    display:block;
    width:14px;
    height:12px;
    background-image:url(../images/etc_link_arrow.png);
    background-repeat:no-repeat;
}

#header #gnb > ul > li .menu-drop .etc-depth .links a:last-of-type {
    margin-bottom:0;
}

#header #gnb > ul > li .depth2 ul li a {
    color:#000;
    display:block;
    font-size:0.9375rem;
}

#header #gnb > ul > li .depth2 ul li a:hover{
    color:#00b493;
    font-weight:600;
}

#header #gnb.open .dropbg {
    content:"";
    display:block;
    width:100%;
    background-color:#ffffff;
    border-top:1px solid #dddddd;
    border-bottom:1px solid #dddddd;
    position:fixed;
    left:0;
    z-index:-1;
}

#header .right-util {
    display:flex;
    align-items: center;
    height:100%;
}

#header .right-util .lang-select {
    position:relative;
    margin-right:4px;
}

#header .right-util .lang-select button[type="button"]{
    border:1px solid #cccccc;
    font-size:0.875rem;
    display:flex;
    align-items: center;
    justify-content: center;
    border-radius:4px;
    height:35px;
    padding:0 8px;
    position:relative;
    z-index:1;
}

#header .right-util .lang-select .lang-option {
    position:absolute;
    background-color:#fff;
    width:100%;
    border:1px solid #cccccc;
    border-top:0;
    border-radius:0 0 4px 4px;
    top:34px;
    display:none;
}

#header .right-util .lang-select .lang-option.on {
    display:block;
}

#header .right-util .lang-select .lang-option ul li a {
    display:block;
    padding:5px 8px;
    border-bottom:1px solid #dddddd;
    color:#000;
    font-size:0.875rem;
}

#header .right-util .lang-select .lang-option ul li a:hover {
    background-color:#f2f2f2;
}

#header .right-util .lang-select .lang-option ul li:last-child a {
    border-bottom:0;
}


#header .right-util .lang-select button[type="button"]::before {
    content:"";
    display:block;
    width:17px;
    height:17px;
    background-image:url(../images/ico_top_lang.png);
    margin-right:4px;
}

#header .right-util a.login {
    font-size:0.875rem;
    border:1px solid #cccccc;
    border-radius:4px;
    display:flex;
    align-items: center;
    justify-content: center;
    height:35px;
    width:100px;
    color:#000;
    font-weight:600;
    margin-right:4px;
}

#header .right-util a.login:last-of-type{
    margin-right:0;
}

#header .right-util .quick-links {
    display:flex;
    align-items: center;
}

#header .right-util .quick-links a {
    font-size:0.875rem;
    border:1px solid #cccccc;
    border-radius:4px;
    display:flex;
    align-items: center;
    justify-content: center;
    height:35px;
    width:80px;
    color:#000;
    font-weight:600;
    margin-right:6px;
}

#header.mopen .right-util .quick-links a {
    color:#000;
}

#header .right-util .utils {
    display:flex;
    align-items: center;
    margin-left:20px;
}

#header .right-util .utils a {
    color:#ffffff;
    display:flex;
    align-items: center;
    justify-content: center;
    border-radius:3px;
    height:35px;
    width:45px;
    font-size:14px;
    letter-spacing: -0.025em;
    background-color:#6d7681;
    margin-right:6px;
}

#header .right-util .utils a:nth-of-type(2) {
    margin-right:0;
}

#header .right-util .utils a.sitemap {
    font-size:0;
    text-indent:-99999999em;
    background-color:transparent;
    background-image:url(../images/menu_all_black.png);
    background-repeat:no-repeat;
    background-position:center;
}

#header .right-util button.all-menu {
    display:none;
    font-size:0;
    text-indent:-99999999em;
    width:20px;
    height:20px;
    background-image:url(../images/menu_all_black.png);
    background-repeat:no-repeat;
    background-position:center;
    margin-left:23px;
}

#header .right-util button.all-menu.open{
    background-image:url(../images/menu_all_close_black.png);
}


#header .seoulmsoul {
    display:block;
    position:absolute;
    right:25px;
}


/*메인 헤더*/

#header.main-header {
    position:absolute;
    top:0;
    width:100%;
    height:100px;
    border-top:1px solid #ebebeb;
    border-bottom:1px solid rgba(255,255,255,0.2);
}

#header.main-header #gnb > ul > li .depth1 {
    color:#fff;
    padding:0 32px;
    box-sizing:border-box;
}

#header.main-header .right-util a.login {
    color:#fff;
    border:1px solid rgba(255,255,255,0.42);
}

#header.main-header .right-util .lang-select button[type="button"] {
    color:#fff;
    border:1px solid rgba(255,255,255,0.42);
}

#header.main-header .right-util .lang-select button[type="button"]::before{
    background-image: url(../images/ico_top_lang_w.png);
}

#header.main-header .right-util .lang-select .lang-option {
    background-color:rgba(0,0,0,0.2);
}

#header.main-header .right-util .lang-select .lang-option ul li a {
    color:#fff;
    border-bottom:1px solid rgba(255,255,255,0.42);
}

#header.main-header .right-util .lang-select .lang-option ul li a:hover {
    background-color:#000;
}

#header.main-header .right-util .quick-links a {
    border:1px solid rgba(255,255,255,0.42);
    color:#ffffff;
}

#header.main-header .right-util .utils a.sitemap {
    font-size:0;
    text-indent:-99999999em;
    background-color:transparent;
    background-image:url(../images/menu_all_white.png);
    background-repeat:no-repeat;
    background-position:center;
}

#header.main-header .right-util button.all-menu {
    background-image:url(../images/menu_all_white.png);
}

#header.main-header .right-util button.all-menu.open {
    background-image:url(../images/menu_all_close_white.png)
}

#header.main-header #gnb > ul > li .menu-drop {
    background-color:#051427;
    border:0;
    border-top:1px solid rgba(255,255,255,0.2)
}

#header.main-header #gnb.open .dropbg {
    background-color:#051427;
    border:0;
    border-top:1px solid rgba(255,255,255,0.2)
}

#header.main-header #gnb > ul > li .depth2 .depth2-item {
    border-right:1px solid rgba(255,255,255,0.1);
}

#header.main-header #gnb > ul > li .depth2 .depth2-item:nth-of-type(4n) {
    border-right:0;
}

#header.main-header #gnb > ul > li .depth2 .depth2-item:last-of-type {
    border-right:0;
}

#header.main-header #gnb > ul > li .depth2 .depth2-item ul li::before {
    background-color:#ffffff;
}

#header.main-header #gnb > ul > li .depth2 ul li a {
    color:#fff;
}

#header.main-header #gnb > ul > li .depth2 ul li a:hover{
    color:#00b493;
}

#header.main-header #gnb.open > ul > li .depth2 {
    box-shadow:none;
}


#footer {
    background-color:#212121;
}

#footer .ft-top {
    padding:25px 0;
    border-bottom:1px solid rgba(255,255,255,0.1);
}

#footer .ft-top .ft-utils ul {
    display:flex;
    align-items: center;
}

#footer .ft-top .ft-utils ul li {
    padding-right:15px;
    margin-right:15px;
    position:relative;
}

#footer .ft-top .ft-utils ul li:last-child {
    padding-right:0;
    margin-right:0;
}

#footer .ft-top .ft-utils ul li::after{
    content:"";
    display:block;
    width:1px;
    height:14px;
    background-color:#fff;
    position:absolute;
    right:0;
    top:calc(50% - 2px);
    transform: translateY(-50%);
}

#footer .ft-top .ft-utils ul li:last-child::after {
    display:none;
}

#footer .ft-top .ft-utils ul li a {
    color:#ffffff;
    font-size:1.1875rem;
    letter-spacing: -0.025em;
    font-weight:300;
}

#footer .ft-top .ft-utils ul li.privacy a {
    color:#ff9f9f;
}

#footer .ft-bottom {
    padding:45px 0;
}

#footer .ft-bottom .inner {
    display:flex;
    align-items: center;
    justify-content: space-between;
}

#footer .ft-bottom .ft-bottom-left {
    display:flex;
    align-items: center;
}

#footer .ft-bottom .ft-bottom-left .ft-info {
    margin-left:50px;
    color:rgba(255,255,255,0.8);
    font-size:1.0625rem;
}

#footer .ft-bottom .ft-bottom-left .ft-info ul {
    display:flex;
    align-items: center;
    margin-bottom:12px;
}

#footer .ft-bottom .ft-bottom-left .ft-info ul li {
    color:rgba(255,255,255,0.8);
    margin-right:15px;
    letter-spacing: -0.02em;
}

#footer .ft-bottom .ft-bottom-right .host ul {
    display:flex;
    align-items: center;
}

#footer .ft-bottom .ft-bottom-right .host ul li {
    display:flex;
    align-items: center;
    color:#fff;
    margin-right:25px;
    padding-right:25px;
    position:relative;
}

#footer .ft-bottom .ft-bottom-right .host ul li span.tit {
    margin-right:15px;
}

#footer .ft-bottom .ft-bottom-right .host ul li span.seoulcity {
    margin-top:-12px;
}

#footer .ft-bottom .ft-bottom-right .host ul li span.wego {
    margin-left:20px;
}

#footer .ft-bottom .ft-bottom-right .host ul li::after {
    content:"";
    position:absolute;
    right:-1px;
    top:50%;
    transform: translateY(-50%);
    display:block;
    width:2px;
    height:17px;
    background-color:rgba(255,255,255,0.6);
}

#footer .ft-bottom .ft-bottom-right .host ul li:last-child::after{
    display:none;
}

.common-btns {
    display:flex;
    align-items: center;
    justify-content: center;
    margin-top:50px;
}

.common-btns a, .common-btns button {
    display:flex;
    align-items: center;
    justify-content: center;
    width:242px;
    height:74px;
    font-size:1.625rem;
    font-weight:600;
    font-family:'Pretendard',sans-serif;
    box-sizing: border-box;
    margin-right:8px;
}

.common-btns a:last-of-type, .common-btns button:last-of-type {
    margin-right:0;
}

.common-btns .cancle-btn {
    background-color:#f6f6f6;
    border:1px solid #cccccc;
    color:#000000
}

.common-btns .confirm-btn {
    background-color:#00b493;
    color:#fff
}


.common-btns .dmain {
    background-color:#f6f6f6;
    border:1px solid #cccccc;
    color:#000000;
    width:242px;
}

.common-btns .dlogin {
    background-color:#00b493;
    color:#fff;
    width:242px;
}

.common-btns .fesdown-btn {
    width:calc((100% - 8px)/2);
    max-width:333px;
    background-color:#f6f6f6;
    border:1px solid #cccccc;
    color:#000000
}

.common-btns .fesconfirm-btn {
    width:calc((100% - 8px)/2);
    max-width:333px;
    background-color:#00b493;
    color:#fff
}


.layer-pop {
    display:none;
    position:fixed;
    top:50%;
    left:50%;
    transform: translateX(-50%) translateY(-50%);
    width:100%;
    max-width:710px;
    border:1px solid #dddddd;
    background-color:#fff;
    z-index:2;
}

.layer-pop.open {
    display:block;
}

.layer-pop .layer-pop-top {
    background-color:#fafafa;
    border-bottom:1px solid #dddddd;
    padding:15px 35px;
    display:flex;
    align-items: center;
    justify-content: space-between;
    box-sizing: border-box;
}

.layer-pop .layer-pop-top strong {
    font-size:1.25rem;
    font-weight:800;
}

.layer-pop .layer-pop-top .close-pop {
    width:35px;
    height:35px;
    border:1px solid #dddddd;
    background-color:#ffffff;
    background-position:center;
    background-repeat:no-repeat;
    background-image:url(../images/close_btn.png);
}

.layer-pop .layer-pop-con {
    padding:15px 35px 25px 35px;
}

.layer-pop .layer-pop-con table {
    width:100%;
}

.layer-pop .layer-pop-con table tbody tr th {
    padding:6px 0;
    font-size:1.125rem;
}

.layer-pop .layer-pop-con table tbody tr td {
    padding:6px 0;
}

.layer-pop .layer-pop-con table tbody tr th .req {
    color:#d40000;
    margin-left:4px;
}

.layer-pop .layer-pop-con table tbody tr td input[type="text"],
.layer-pop .layer-pop-con table tbody tr td select {
    width:100%;
    max-width:147px;
    height:39px;
    border:1px solid #dddddd;
    padding:0 8px;
    box-sizing: border-box;
    font-size:1.125rem;
    color:#888888;
}

.layer-pop .layer-pop-con table tbody tr td .email-form {
    display:flex;
    align-items: center;
}

.layer-pop .layer-pop-con table tbody tr td .email-form input[type="text"],
.layer-pop .layer-pop-con table tbody tr td .email-form select {
    margin-right:4px;
}

.layer-pop .layer-pop-con table tbody tr td .email-form span {
    color:#888888;
    font-size:1.125rem;
    margin-right:4px;
}

.layer-pop .layer-pop-con table tbody tr td .email-form a {
    display:flex;
    align-items: center;
    justify-content: center;
    width:67px;
    height:40px;
    background-color:#04163c;
    color:#fff;
    border-radius:3px;
    font-size:1.25rem;
    font-weight:600
}

.layer-pop .layer-pop-con .layer-pop-btns {
    display:flex;
    align-items: center;
    justify-content: center;
    margin-top:25px;
}

.layer-pop .layer-pop-con .layer-pop-btns a,
.layer-pop .layer-pop-con .layer-pop-btns button {
    max-width:120px;
    width:100%;
    height:50px;
    display:flex;
    align-items: center;
    justify-content: center;
    border-radius:3px;
    font-size:1.125rem;
    margin-right:8px;
}

.layer-pop .layer-pop-con .layer-pop-btns a:last-of-type,
.layer-pop .layer-pop-con .layer-pop-btns button:last-of-type {
    margin-right:0;
}

.layer-pop .layer-pop-con .layer-pop-btns .close-btn {
    border:1px solid #aaaaaa;
    color:#000;
}

.layer-pop .layer-pop-con .layer-pop-btns .confirm-btn {
    background-color:#00b493;
    color:#fff;
}


.layer-pop .layer-pop-con .layer-pop-btns a.djoin {
    max-width:218px;
    background-color:#00b493;
    color:#fff;
}

@media all and (max-width:1860px){
    #header .seoulmsoul {
        display:none;
    }

}

@media all and (max-width:1620px){
    .inner {
        padding:0 15px;
        box-sizing: border-box;
    }


}

@media all and (max-width:1480px){
    html, body {
        font-size:15px;
    }


    #header .right-util .utils a.sitemap {
        display:none;
    }

    #header .right-util button.all-menu {
        display:block;
    }

    #header.main-header {
        position:fixed;
        top:48px;
        transition: all 0.2s;
        z-index:9999999;
    }

    #header.mopen {
        background-color:#051427;
        border-top:0;
        border-bottom:1px solid rgba(255,255,255,0.5);
    }

    #header .right-util a.login {
        width:auto;
        padding:0 8px;
    }

    #header.mopen .right-util .lang-select button[type="button"] {
        color:#fff;
    }

    #header.mopen .right-util .lang-select button[type="button"]::before {
        background-image:url(../images/ico_top_lang_w.png);
    }

    #header.mopen .right-util a.login {
        color:#fff;
        border:1px solid #fff;
    }


    #header.scroll {
        top:0;
        transition: all 0.2s;
    }

    #header.main-header.scroll {
        background-color:#051427;
        border-top:0;
        border-bottom:1px solid #ffffff;
        height:85px;
        transition: all 0.2s;
    }

    #header #gnb {
        max-width:100%;
        position:fixed;
        z-index:999999;
        right:-100%;
        top:148px;
        z-index:9999;
        transition: all 0.2s;
    }

    #header.scroll #gnb {
        top:85px;
        transition: all 0.2s;
    }

    #header.main-header #gnb {
        background-color:#051427;
        border-left:1px solid rgba(255,255,255,0.2);
    }

    #header #gnb.mopen {
        right:0;
        background-color:#051427;
        box-shadow:-10px 12px 20px rgba(0,0,0,0.4);
        overflow-y: auto;
        max-height:calc(100% - 148px);
    }

    #header #gnb ul {
        display:block;
    }

    #header #gnb.mopen > ul{
        display:block;
    }

    #header #gnb.mopen > ul > li {
        width:100%;
    }

    #header #gnb.mopen > ul > li .depth1 {
        justify-content: flex-start;
        display:flex;
        align-items: center;
        height:45px;
        padding:0 8px;
        width:100%;
        border-bottom:1px solid rgba(255,255,255,0.2);
        color:#fff;
    }

    #header #gnb.mopen > ul > li.active .depth1 {
        color:#4892f1
    }

    #header #gnb.mopen > ul > li .depth2 {
        position:static;
        display:none;
        transform: none;
        background-color:rgba(0,0,0,0.1);
        border:none;
        border-bottom:1px solid rgba(255,255,255,0.2);
        border-radius:0;
        padding:0;
        margin:0;
    }

    #header #gnb.mopen > ul > li:first-child .depth2 {
        border-radius:0;
    }

    #header.main-header #gnb.open > ul > li:first-child .depth2 {
        border-left:0;
    }

    #header #gnb.mopen > ul > li:first-child .depth2 {
        border-left:0;
    }

    #header #gnb.mopen > ul > li.active .menu-drop {
        display:block;
        position:static;
        padding:15px;
        background-color:rgb(14, 34, 59);
        border:0;
    }

    #header #gnb.mopen > ul > li.active .menu-drop .etc-depth {
        position:static;
        height:auto !important;
        background-image:none;
        width:100%;
        max-width:100%;
    }

    #header #gnb.mopen > ul > li.active .menu-drop .etc-depth .links {
        padding:15px 0 0 0;
        display:flex;
        align-items: center;
        width:100%;
    }

    #header #gnb.mopen > ul > li.active .menu-drop .etc-depth .links a {
        margin:0 8px 0 0;
        height:35px;
        font-size:0.9375rem;
        width:calc((100% - 8px) / 2);
    }

    #header #gnb.mopen > ul > li.active .menu-drop .etc-depth .links a:last-of-type {
        margin:0;
    }

    #header #gnb.mopen > ul > li.active .depth2 {
        display:block;
        width:100%;
        max-width:100%;
        background-color:transparent;
    }

    #header #gnb.mopen > ul > li.active .depth2 .depth2-item {
        padding:0;
        margin:0;
        min-width:100%;
        margin-bottom:15px;
        border-right:0;
    }

    #header #gnb.mopen > ul > li .depth2 ul li a {
        color:#fff;
    }

    #header #gnb.mopen > ul > li.active .depth2 .depth2-item .depth2-name {
        margin-bottom:8px;
        font-size:1rem;
    }

    #header #gnb.mopen > ul > li.active .depth2 .depth2-item ul li::before {
        background-color:#ffffff;
    }

    #header #gnb.open .dropbg {
        display:none;
    }

    #header.sub-header .right-util button.all-menu.open {
        background-image:url(../images/menu_all_close_white.png)
    }
}


@media all and (max-width:1280px) {
    html.ovh {
        overflow: hidden;
    }

    #footer .ft-bottom .inner {
        flex-wrap:wrap;
    }

    #footer .ft-bottom .ft-bottom-left {
        width:100%;
    }

    #footer .ft-bottom .ft-bottom-left .ft-info {
        margin-left:25px;
    }

    #footer .ft-bottom .ft-bottom-right {
        width:100%;
        margin-top:25px;
    }

    #footer .ft-bottom .ft-bottom-right .host {
        width:100%;
    }

    #footer .ft-bottom .ft-bottom-right .host ul {
        width:100%;
        justify-content: flex-end;
    }

}


@media all and (max-width:768px) {

    html, body {
        font-size:14px;
    }

    #header, #header.main-header {
        height: 80px;
    }

    #header #gnb {
        top:128px;
    }

    #header #gnb.mopen {
        overflow-y: auto;
        max-height:calc(100% - 148px);
    }

    #header .right-util .quick-links a {
        width:60px;
        height:30px;
    }

    #header .right-util .utils {
        margin-left:4px;
    }

    #header .right-util .utils a {
        height:30px;
    }

    #header .right-util button.all-menu {
        margin-left:15px;
    }

    #footer .ft-top {
        padding:15px 0;
    }

    #footer .ft-bottom {
        padding:25px 0;
    }

    #footer .ft-bottom .ft-bottom-left {
        flex-wrap:wrap;
    }

    #footer .ft-bottom .ft-bottom-left .ft-logo {
        width:100%;
    }

    #footer .ft-bottom .ft-bottom-left .ft-info {
        width:100%;
        margin-left:0;
        margin-top:15px;
    }

    #footer .ft-bottom .ft-bottom-left .ft-info ul {
        margin-bottom:8px;
    }

    #footer .ft-bottom .ft-bottom-left .ft-info p {
    }

    #footer .ft-bottom .ft-bottom-right .host ul {
        justify-content: flex-start;
    }

}

@media all and (max-width:640px) {
    html, body {
        font-size:13px;
    }

    #header .inner h1.logo a img {
        width:140px;
        padding-right: 10px;
    }

    #header .right-util .quick-links a {
        width:50px;
        height:28px;
        margin-right:4px;
    }

    #header .right-util .utils {
        margin-left:0;
    }

    #header .right-util .utils a {
        height:28px;
        width:32px;
        margin-right:4px;
        font-size:11px;
    }

    #header .right-util button.all-menu {
        margin-left:10px;
    }

    #footer .ft-bottom .ft-bottom-left .ft-info ul {
        flex-wrap:wrap;
    }

    #footer .ft-bottom .ft-bottom-left .ft-info ul li {
        width:100%;
        margin-bottom:4px;
    }
    #footer .ft-bottom .ft-bottom-left .ft-info ul li:last-child{
        margin-bottom:0;
    }

    .common-btns a, .common-btns button {
        height:55px;
        font-size:1.3125rem;
        width:calc((100% - 8px) / 2);
    }

}


/*2405 추가*/
.fixedclear::after{ content: ""; display: block; clear: both; }

.b-line-btn{ display: inline-block; background: #fff; border: 1px solid #000; padding: 8px 15px; color: #000; }
.line-box-1{ padding: 50px 60px; border: 1px solid #ccc; background: #f6f6f6;; }
.down-btn{ color: #000; border: 1px solid #bbb; border-radius: 3px; padding: 5px 5px 5px 36px; background: url(../images/down-btn.png) no-repeat 5px center; }
.info-box-gray{ background: #f6f6f6; padding: 30px; font-size: 1.25rem; }
.info-box-con{ margin-top: 10px; line-height: 1.5; }
.common-btns .list-btn { background-color:#f6f6f6; border:1px solid #cccccc; color:#000000 }
.common-btns .cancle-btn.type2 { background: #ffebef; }
.small-btn-1{ display: inline-block; background: #04163c; padding: 5px 10px; color: #fff; vertical-align: middle; margin: 0 5px; font-size: 1.125rem; }

.write-table tr th span.txt-b{ color:#444; font-weight: 400; font-size: 1.125rem; margin-top: 10px; display: block; }
.write-table tr td.wr-w-short input[type="text"], .write-table tr td.wr-w-short .input-phone input[type="text"], .write-table tr td.wr-w-short .input-phone select{ max-width: 110px; }
.write-table tr td.wr-w-long input[type="text"]{ max-width: 100%; }
.write-table tr td.wr-h-long input[type="text"]{ height: 120px; }
.radio-wrap { display:flex; align-items: center;}
.radio-wrap .radio-item { display:flex;align-items: center; margin-right:15px;}
.radio-wrap .radio-item input[type="radio"] { width:20px; height:20px; margin-right:5px;}
.radio-wrap .radio-item label span { color:#00b493;}

.write-table tr td .repw-form button{ display: flex; align-items: center; justify-content: center; height: 40px; color: #fff;background-color: #04163c;font-size: 1.0625rem; width: 108px; }
.homepage-form{ display: flex; align-items: center; flex-wrap: wrap; }
.homepage-form button{ display: flex; align-items: center; justify-content: center; height: 40px; color: #fff;background-color: #04163c;font-size: 1.0625rem; width: 108px; margin-left: 8px; }

/*tab*/
.intab{ margin-bottom: 50px; }
.intab ul{ display: flex;  }
.intab ul li{ width: 100%; border: 1px solid #ccc; border-left: 0; background: #fafafa; display: flex; align-items: center; }
.intab ul li:first-of-type{ border-left: 1px solid #ccc; }
.intab ul li a{ display: block; text-align: center; color: #333; font-size: 1.25rem; width: 100%; padding: 20px 5px; }
.intab ul li.on{ background: #00b493;  }
.intab ul li.on a{  font-weight: 600; color: #fff; }



@media all and (max-width:1280px) {
    .line-box-1{ padding: 30px 30px; }
}

@media all and (max-width:768px) {

    .layer-pop .layer-pop-top{ padding: 10px 20px; }
    .layer-pop .layer-pop-con{ padding: 0 20px 20px; }

    .info-box-gray{ padding: 20px; }
    .common-btns{ margin-top: 30px; }
    .intab ul{ flex-wrap: wrap; }
    .intab ul li{ border-left: 1px solid #ccc; border-bottom: 0; }
    .intab ul li:last-of-type{ border-bottom: 1px solid #ccc;; }
    .intab ul li a{ padding: 10px 5px; }

}

@media all and (max-width:768px) {
    .homepage-form button{ margin-left: 0; width: 100%; }
}
