@charset "utf-8";

/* 초기 설정 */
* {
    margin: 0;
    padding: 0;
    font-family: 'NanumSquare', 'SCore Dream', sans-serif !important;
    color: #333;
}

.score_dream {
    font-family: 'SCore Dream', sans-serif !important;
}

img {
    vertical-align: top;
}

ul {
    list-style: none;
}

h1,
h2,
h3,
h4,
h5,
h6,
p,
ul {
    margin: 0;
}

.row {
    margin: 0;
}

a {
    text-decoration: none;
    color: inherit;
}

a:hover {
    text-decoration: none;
    color: inherit;
}

.mobile-menu {
    display: none;
}

button,
button:focus,
button:hover {
    color: inherit;
    border: 0;
    outline: 0;
    background: transparent;
    cursor: pointer;
}

/* 초기 설정 */

/* 전체 박스 및 section별 공통 설정 */
.wrap {
    width: 100%;
    max-width: 1020px;
    margin: 0 auto;
    border: 1px solid #ddd;
    border-top: none;
    overflow: hidden;
}

/* 전체 박스 및 section별 공통 설정 */

.top {
    background: url("../images/main_bg.jpg") no-repeat;
    /* background-position: 50%; */
    background-size: cover;
    height: 440px;
}

.top>div {
    position: relative;
    margin: 0 40px;
}

.top .webzine {
    display: block;
    color: #fff;
    width: 100%;
    margin-top:98px;
    max-width: 394px;
}

.top h1 {
    position: absolute;
    top:0;
    right:0;
    display: flex;
    align-items: flex-end;
    margin-top: 34px;
}

.top h1 a:last-child {
    margin-left: 19px;
    margin-bottom: 11px;
}

.main,
.main2 {
    margin: 0 40px;
}

.main .nav {
    width: 100%;
    max-width: 940px;
    margin: 0 auto;
    border: 1px solid #e5e5e5;
    transform: translateY(-50%);
    background-color: #fff;
    margin-bottom: 60px;
}

.main .nav li {
    /*    width: 100%;*/
    /*    max-width: 187px;*/
    width: calc(100% / 5);
    border-right: 1px solid #e5e5e5;
}

.main .nav li:last-of-type {
    border-right: none;
}

.main .nav li a {
    display: block;
    text-align: center;
    font-family: 'SCore Dream', sans-serif !important;
    font-weight: 500;
    padding: 20px 0;
}

.main .nav li:hover,
.main .nav li.on {
    background-color: #154a96;
}

.main .nav li:hover a,
.main .nav li.on a {
    color: #fff;
}

.main .nav.active {
    position: fixed;
    top: 0;
    transform: translateY(0);
    z-index: 99999;

    /*    width:100%;*/
    max-width: 1020px;
    left: 50%;
    transform: translateX(-50%);
}

.main .nav.active li {
    width: calc(100% / 5);
}

.backdrop {
    display:none;
    position:fixed;
    top:0;
    bottom:0;
    width:100%;
    background: rgba(0, 0, 0, 0.5);
    z-index:9999;
}

footer {
    background-color: #404041;
    padding: 0 40px;
}

footer .border-bx {
    border-bottom: 1px solid #fff;
}

footer ul {
    padding: 20px 0;
    width: 100%;
    max-width: 460px;
    margin: 0 auto;
}

footer ul li {
    width: 100%;
    max-width: 100px;
    position: relative;
}

footer ul li a {
    color: #fff;
    font-size: 13px;
    font-family: 'NanumSquare', sans-serif !important;
    margin-left: 25px;
    display: block;
}

footer ul li {
    background: url("../images/f_1.png") no-repeat;
    background-position: left center;
}

footer ul li:nth-child(2) {
    background: url("../images/f_2.png") no-repeat;
    background-position: left center;
}

footer ul li:nth-child(3) {
    background: url("../images/f_3.png") no-repeat;
    background-position: left center;
    margin-right: 20px;
}

footer ul li:last-child {
    background: url("../images/f_4.png") no-repeat;
    background-position: left center;
}

footer ul li:hover a {
    color: #99dbff;
}

footer ul li:hover {
    background: url("../images/f_5.png") no-repeat;
    background-position: left center;
}

footer ul li:nth-child(2):hover {
    background: url("../images/f_6.png") no-repeat;
    background-position: left center;
}

footer ul li:nth-child(3):hover {
    background: url("../images/f_7.png") no-repeat;
    background-position: left center;
}

footer ul li:last-child:hover {
    background: url("../images/f_8.png") no-repeat;
    background-position: left center;
}

footer div h1 {
    text-align: center;
    margin: 20px 0 30px;
}

footer div p span br {
    display: none;
}

footer div p {
    font-size: 12px;
    text-align: center;
    color: #aeaeae;
    padding-bottom: 60px;
}

footer div p span {
    color: #fff;
}

@media(max-width:1020px) {
    .warp {
        border: 0;
    }

    .main,
    .main2 {
        margin: 0 20px;
    }


    .main .nav,
    .main2 .content:last-of-type>a::after,
    .top h1 {
        display: none;
    }

    .contents_g .d-flex,
    .main .d-flex,
    .main2 .d-flex,
    .top .d-flex {
        display: block !important;
    }

    .top {
        display:flex;
        align-items:center;
        margin-top: 84px;
        height: 360px;
        background-color:#99dbff;
        background-position:center;
    }

    .top>div {
        margin: 0 30px;
    }

    .top .webzine{
        margin-top:0;
    }

    .mobile-menu {
        display: block;
        width: 100%;
        position: fixed;
        top: 0;
        background-color: #fff;
        padding-top: 15px;
        z-index: 999999;
    }
    
    .mobile-menu>div{
        padding:0px 20px 20px 20px;
        border-bottom:1px solid #e5e5e5;
    }

    .mobile-menu .nav_wrap .logo {
        display: flex;
    }

    .mobile-menu .nav_wrap .logo a:first-of-type {
        display: block;
        width: 140px;
        margin-right: 24px;
    }

    .mobile-menu .nav_wrap .logo a:first-of-type img {
        padding-top: 15px;
    }

    .mobile-menu .nav_wrap .logo a:last-of-type {
        display: block;
        width: 134px;
    }

    .mobile-menu .menu {
        position: relative;
        width: 38px;
        height: 25px;
        cursor: pointer;
    }

    .mobile-menu .menu span {
        display: block;
        width: 100%;
        height: 3px;
        background-color: #154a96;
        text-indent: -9999px;
        position: absolute;
        top: 0;
        left: 0;
    }

    .mobile-menu .menu span:nth-child(2) {
        top: 50%;
        transform: translateY(-66%);
    }

    .mobile-menu .menu span:last-child {
        top: auto;
        bottom: 0;
    }

    .mobile-menu .mobile-nav {
        position: relative;
        padding:10px 20px 20px;

    }

    .mobile-menu .mobile-nav li {
        padding: 10px 0;
    }

    .mobile-menu .mobile-nav li a {
        display: block;
        font-size:18px;
    }

    .mobile-menu .mobile-nav>li {
        position: relative;
        font-weight: 700;
    }

    .mobile-menu .mobile-nav li.sub_menu span {
        position: absolute;
        top: 5px;
        right: 10px;
        font-weight: 700;
        transition: all 0.5s;
    }

    .mobile-menu .mobile-nav>li button {
        display: block;
        width: 100%;
        font-size:18px;
        text-align: left;
        font-weight: 700;
    }

    .mobile-menu .mobile-nav>li>ul {
        display: none;
        margin-top: 5px;
        padding: 5px 10px;
        font-weight: 500;
        background: #f9f9f9;
    }

    .mobile-menu .mobile-nav>li>ul>li {
        border-bottom: 1px solid #e5e5e5;
    }

    .mobile-menu .mobile-nav>li>ul>li a{
        font-size:16px;
    }

    .mobile-menu .mobile-nav>li>ul>li:last-child {
        border-bottom: none;
    }

    .top h1 {
        justify-content: flex-end;
        margin-left: auto;
        margin-top: 80px;
        padding-top: 20px;
    }

    .top h1 a:last-child {
        margin-bottom: 5px;
    }

    .top h1 img {
        display: block;
        margin-left: auto;
    }

    .main .imgbox {
        margin: 0 auto;
    }

    .main {
        padding-top: 60px;
    }

    .main .content {
        margin-top: 40px;
    }


}

@media(max-width:700px) {
    .top {
        background-image:url("../images/main_bg_m.jpg");
        justify-content:center;
        align-items: flex-start;
    }
    /* .top .webzine{
        padding:20px 30px;
        margin-top:0;
    } */
    .top .webzine{
        max-width:250px;
        margin-top:10px;
    }
    .main .content {
        padding-left: 0 !important;
    }

    .main .content h1 img {
        display: none;
    }

    footer ul.justify-content-center {
        flex-wrap: wrap !important;
        justify-content: space-between !important;
    }

    footer ul li {
        width: 38%;
        max-width: none;
    }

    footer ul li:nth-child(2)~li {
        margin-top: 10px;
    }

    footer div p span br {
        display: block;
    }

}

@media(max-width:540px) {
    .mobile-menu .nav_wrap .logo a:first-of-type {
        width: 120px;
        margin-right: 15px;
    }

    .mobile-menu .nav_wrap .logo a:first-of-type img {
        padding-top: 12px;
    }

    .mobile-menu .nav_wrap .logo a:last-of-type {
        width: 114px;
    }
}