
@media screen and (max-width: 1400px) {
    /* 공통:: 레이아웃 */
    .inner-layer {
        padding-left: 20px;
        padding-right: 20px;
    }

    /* 헤더:: gnb */
    .util-wrap {
        gap: 15px;
    }
    .util-menu,
    .sns-wrap {
        margin-left: 0;
    }
    .sns-wrap {
        gap: 5px;
    }


    /* 헤더:: gnb */
    .gnb-wrap {
        padding-left: 0;
        padding-right: 0;
    }
    .gnb .inner-layer {
        padding-left: 10px;
        padding-right: 10px;
    }
    .gnb .inner-layer > li {
        width: 100%;
    }
    .gnb .inner-layer > li > a {
        font-size: 15px;
        padding: 0 5px;
    }
    .gnb .inner-layer > li > ul > li > a {
        font-size: 15px;
    }


    /* 푸터:: 스폰서 슬라이드 */
    .sponsor-list .inner-layer {
        gap: 20px;
    }
    .sponsor-list .in-text span {
        word-break: break-all;
    }


    /* 메인:: 비주얼 */
    .main-visual .inner-layer {
        gap: 20px;
    }
    .main-visual-menu {
        gap: 20px;
    }
    .main-visual-wrap .slick-dots {
        gap: 10px;
        bottom: 30px;
        padding: 10px 20px;
    }


    /* 메인:: 비주얼 메뉴*/
    .main-visual-menu > li .icon {
        right: 20px;
        bottom: 20px;
    }
    .main-visual-menu > li {
        width: calc(50% - 10px);
        padding: 20px 0 20px 20px;
    }
    .main-visual-menu > li ul li + li {
        margin-top: 5px;
    }
    .main-visual-menu > li .tit {
        margin-bottom: 10px;
        font-size: 2rem;
    }
    .main-visual-menu > li ul li {
        font-size: 14px;
    }


    /* 메인:: 다운로드 뉴스레터 */
    .main-top-wrap {
        gap: 20px;
    }
    .main-link > li .title {
        font-size: 17px;
    }
    .main-link .trigger {
        font-size: 14px;
    }

    /* 서브:: 비주얼 */
    .sub-visual {
        background-position: left -240px top;
    }
}

@media screen and (max-width: 1240px) {
    .gnb .inner-layer > li > ul > li > a {
        word-break: break-all;
    }

    .main-download-wrap::before {
        background-size: auto 82px;
        background-position: right 18px bottom 0;
    }
    .main-download-wrap > div {
        padding-top: 25px;
        padding-left: 25px;
    }	

    /**/
    .main-date ul {
        flex-wrap: wrap;
    }
    .main-date li {
        width: calc(50% - 10px);
    }
}
@media screen and (max-width: 1024px) {
    /* 공통:: 레이아웃 */
    #container {
        padding-top: 70px;
        background-color: #fff;
    }
    #wrapper.main {
        background-color: #f6f9ff;
    }
    #container.main {
        background-color: #f6f9ff;
    }

    .main-date,
    .main-cont {
        background-color: #fff;
    }



    /* 헤더:: */
    .header-wrap .dday-wrap,
    .header-wrap .util-menu,
    .header-wrap .sns-wrap {
        display: none;
    }
    .header-wrap {
        display: block;
        text-align: center;
        height: 70px;
    }
    .header-logo {
        display: block;
        position: absolute;
        top: 21px;
        left: 50%;
        transform: translateX(-50%);
        height: 28px;
    }
    .header-logo > a {
        display: inline-block;
        height: 100%;
    }
    .header-logo > a img {
        height: 100%;
    }
    .btn-menu-open {
        position: absolute;
        top: 0;
        right: 1px;
        display: block;
        width: 60px;
        height: 70px;
        background-repeat: no-repeat;
        background-position: right 20px center;
        background-image: url('/image/common/ic_menu_open.png');
        background-size: 26px;
    }
    .go-home { 
        z-index: 10;
        display: block;
        position: absolute; 
        left: 0; 
        top: 0; 
        width: 60px; 
        height: 70px; 
        background: url('/image/main/goHome_m.png')no-repeat left 20px center / 27px;
        text-indent: -9999px;
    }

    /* 헤더:: gnb */
    .m-gnb-header {
        display: block;
    }
    .m-gnb-header .dday-wrap {
        position: relative;
        display: block;
        margin: 15px;
        padding: 0;
        border: 1px solid #5830bc;
        border-radius: 5px;
        background-color: #fff;
    }
    .m-gnb-header .dday-wrap img {
        position: absolute;
        left: 20px;
        top: 50%;
        width: 74px;
        transform: translateY(-50%);
    }
    .m-gnb-header .dday-wrap p {
        display: block;
        padding: 10px 15px 10px 115px;
        margin: 0;
        border-radius: 5px 5px 0 0;
        font-size: 16px;
        line-height: 1;
        text-align: left;
        border: 0;
    }
    .m-gnb-header .dday-wrap .dday {
        display: block;
        width: 100%;
        height: auto;
        font-size: 33px;
        font-weight: 500;
        line-height: 1;
        background-image: linear-gradient(to right, #7baeff,#572cba);
    }

    .m-gnb-header .util-menu {
        display: flex;
        justify-content: center;
        align-items: stretch;
        width: 100%;
        background-color: #22304f;
    }
    .m-gnb-header .util-menu li {
        width: 100%;
        text-align: center;
    }
    .m-gnb-header .util-menu li + li {
        padding-left: 0;
        margin-left: 0;
        border-left: 1px solid rgba(255,255,255,0.2);
    }
    .m-gnb-header .util-menu li + li:before {
        display: none;
    }
    .m-gnb-header .util-menu li > a {
        display: block;
        padding: 17px 0;
        background: none;
        font-size: 16px;
        font-weight: 600;
        line-height: 1;
        color: #ffff;
    }

    #gnb {
        position: fixed;
        top: 0;
        right: -100%;    
        z-index: 10;    
        width: 80%;
        height: 100% !important;
        background: #fff;
    }
    .gnb {
        background-color: transparent;
    }
    .gnb-wrap .inner-layer {
        display: block;
        overflow-y: auto;
        height: calc(100vh - 183px);
        padding: 0 20px;
        background-image: linear-gradient(to right, #398ae4, #2dced0);
    }
    .gnb .inner-layer > li {
        display: block;
        width: 100%;
    }
    .gnb .inner-layer > li > a {
        display: block;
        height: auto;
        padding: 20px 0;
        font-size: 18px;
        font-weight: 500;
        line-height: 1;
        text-align: left;
        color: #fff;
        border-bottom: 1px solid rgba(255,255,255,0.2);
    }
    .gnb .inner-layer > li:hover > a,
    .gnb .inner-layer > li.on > a {
        color: #fff;
        font-weight: 700;
    }
    .gnb .inner-layer > li > ul {
        display: none;
        position: static;
        transform: none;
        -webkit-transform: none;
        padding: 15px;
        margin-top: -1px;
        border-bottom: 1px solid rgba(255,255,255,0.2);
    }
    .gnb .inner-layer > li:hover ul {
        background-color: transparent;
    }
    .gnb .inner-layer > li > ul > li > a {
        padding: 10px 0;
        font-size: 14px;
        font-weight: 400;
        text-align: left;
        color: #fff;
        word-break: keep-all;
    }
    .gnb .inner-layer > li > ul > li:hover > a {
        color: #fff;
        font-weight: 400;
    }
    .btn-menu-close {
        display: block;
        position: absolute;
        top: 20px;
        left: -50px;
        width: 30px;
        height: 30px;
        background-repeat: no-repeat;
        background-position: center;
        background-image: url('/image/common/ic_menu_close.png');
        background-size: 24px;
    }


    /* 푸터:: 스폰서슬라이드 */
    .sponsor-list .in-text span {
        font-size: 6px;
    }
    .footer-info .inner-layer {
        gap: 20px;
    }
    .footer-info .btn-wrap {
        width: 150px;
    }


    /* 메인:: 비주얼 */
    .main-visual {
        padding-top: 0;
    }
    .main-visual .inner-layer,
    .main-top-wrap {
        display: block;
    }
    .main-visual-wrap,
    .main-visual-menu,
    .left-wrap,
    .main-notice {
        width: 100%;
    }
    .main-visual-menu,
    .main-notice {
        margin-top: 25px;
    }

    /* 메인:: 비주얼 메뉴 */
    .main-visual-menu {
        gap: 10px;
    }
    .main-visual-menu > li {
        width: calc(50% - 5px);
        height: 120px;
        padding: 0;
        border: 3px solid;
        border-radius: 5px 5px 20px;
    }
    .main-visual-menu > li .tit {
        padding: 20px 0 40px 20px;
        margin: 0;
        display: block;
        font-size: 16px;
        color: #fff !important;
    }
    .main-visual-menu > li .icon {
        right: 20px;
        top: 50%;
        transform: translateY(-50%);
    }
    .main-visual-menu > li ul li {
        padding: 4px 0;
    }
    .main-visual-menu > li ul li + li {
        margin-top: 0;
    }
    .main-visual-menu > li:hover ul {
        display: none;
    }
    .main-visual-menu > li:hover .icon {
        opacity: 1 !important;
    }
    .main-visual-menu > li:nth-of-type(1) { 
        background: #0055b8 !important; 
    }
    .main-visual-menu > li:nth-of-type(2) { 
        background: #1b3b71 !important; 
    }
    .main-visual-menu > li:nth-of-type(3) { 
        background: #2794e5 !important; 
    }
    .main-visual-menu > li:nth-of-type(4) { 
        background: #c0284b !important; 
    }
        
    .main-visual-menu > li:nth-child(1) .icon { 
        width: 34px; 
        height: 40px; 
    }
    .main-visual-menu > li:nth-child(2) .icon { 
        width: 36px; 
        height: 43px; 
    }
    .main-visual-menu > li:nth-child(3) .icon { 
        width: 49px; 
        height: 33px; 
    }
    .main-visual-menu > li:nth-child(4) .icon { 
        width: 42px; 
        height: 39px; 
    }


    /* 메인:: 슬라이드 */
    .main-list {
        padding: 30px;
    }
    .main-list .slick-list {
        margin: 0 -10px;
    }
    .main-list .slider {
        padding: 0 10px;
    }
    .speaker-wrap .slider a {
        gap: 15px;
    }
    .speaker-wrap .slider .img-wrap {
        width: 100px;
        height: 120px;
    }

    
    /* 서브:: 비주얼 */
    .sub-visual {
        height: 220px;
        background-size: auto 220px;
        background-position: left -150px top;
    }
}

@media screen and (max-width: 768px) {
    /* 공통:: 레이아웃 */
    #wrapper {
        font-size: 14px;
    }
    #container {
        margin-bottom: 50px;
    }
    #container.main {
        padding-bottom: 30px;
    }
    #container.sub {
        padding-top: 0;
    }
    #goTop { 
        position: fixed; 
        right: 20px; 
        bottom: 50px; 
        width: 40px; 
        height: 40px; 
    }
    #goTop a { 
        background-size: 16px; 
    }

    /* 헤더:: */
    #header {
        overflow: unset;
        position: static;
    }
    .header-wrap {
        height: auto;
    }
    /* 헤더:: gnb */ 
    .gnb .inner-layer > li > a {
        font-size: 16px;
    }
    .sub .go-home{
        display: none;
    }

    /* 푸터:: 스폰서 슬라이드 */
    .sponsor-wrap {
        position: relative;
        padding: 20px 0;
    }
    .sponsor-rolling-wrap .tit {
        display: block;
        width: 100%;
        margin-bottom: 10px;
        font-size: 13px;
    }
    .sponsor-rolling {
        position: static;
        width: 100%;
        margin: 0;
    }
    .sponsor-rolling a {
        height: auto;
        margin: 0 5px;
    }
    .sponsor-rolling a img {
        width: auto;
    }
    .sponsor-rolling .slick-list {
        margin: 0 -5px;
    }
    .sponsor-rolling .slick-arrow {
        top: 30px;
        right: 20px;
        width: 15px;
        height: 20px;
        background-position: center;
        background-size: 8px;
    }
    .sponsor-rolling .slick-prev {
        left: auto;
        right: 40px;
    }


    /* 푸터:: 스폰서 */
    .footer-info,
    .sponsor-list {
        padding: 30px 0;
    }
    #footer .sponsor-list{
        padding: 30px 0;
    }
    .sponsor-list .inner-layer,
    .footer-info .inner-layer {
        flex-direction: column;
        gap: 20px;
    }
    .sponsor-list .left,
    .sponsor-list .right {
        width: 100%;
        max-width: none;
    }
    .sponsor-list .title {
        margin-bottom: 10px;
        font-size: 13px;
    }
    .sponsor-list .right ul {
        gap: 10px;
    }
    .sponsor-list .right li {
        width: calc(50% - 5px);
    }
    .sponsor-list .in-text span {
        font-size: 6px;
    }


    /* 푸터:: 주소 */
    .footer-info dt {
        margin-bottom: 10px;
        font-size: 13px;
        font-weight: 700;
    }
    .footer-info dd {
        font-size: 12px;
    }
    .footer-info .btn-wrap {
        width: auto;
        display: flex;
        justify-content: flex-start;
        align-items: stretch;
        gap: 10px;
    }
    .footer-info .btn-wrap a {
        padding: 10px 15px;
    }
    .footer-info .btn-wrap a + a {
        margin: 0;
    }
    #footer .copyright {
        padding: 10px 0;
        font-size: 12px;
    }


    /* 메인:: 공통 */
    .main-section {
        margin-top: 30px;
    }
    .main-tit-wrap {
        margin-bottom: 15px;
        text-align: center;
    }
    .main-tit-wrap h3 {
        font-size: 20px;
    }


    /* 메인:: 비주얼 */
    .main-visual {
        padding: 0 0 20px;
    }
    .main-visual-wrap .slick-dots > li button {
        width: 5px;
        height: 5px;
    }
    .main-visual-wrap .slick-dots > li.slick-active button {
        width: 8px;
        height: 8px;
    }
    .main-visual-menu > li {
        height: 90px;
    }
    .main-visual-menu > li .icon {
        right: 15px;
        top: auto;
        bottom: 10px;
        transform: translateY(0)
    }


    /* 메인:: 날짜 */
    .main-date {
        padding: 30px 0;
    }
    .main-date .main-tit-wrap::before,
    .main-date .main-tit-wrap::after {
        display: none;
    }
    .main-date .main-tit-wrap {
        padding-left: 0;
    }
    .main-date .main-tit-wrap h3 {
        padding-right: 0;
    }
    .main-date ul {
        flex-wrap: wrap;
        flex-direction: column;
        gap: 10px;
    }
    .main-date li {
        align-items: center;
        width: 100%;
        min-height: 105px;
        padding: 15px;
        border-radius: 5px 5px 15px;
    }
    .main-date li .text-wrap p {
        margin-bottom: 5px;
        font-size: 17px;
    }
    .main-date li .img-wrap {
        right: 15px;
        display: flex;
        justify-content: flex-end;
        align-items: center;
    }
    .main-date li .img-wrap img {
        width: 40px;
        margin: 0;
    }
    .main-date li .img-wrap p {
        font-size: 18px;
    }

    /* 메인:: 다운로드 뉴스레터 */
    .main-download {
        padding: 17px 20px;
        border-radius: 5px 5px 15px;
    }
    .main-download p {
        font-size: 16px;
    }
    .main-download img {
        height: 50px;
    }

    /* 메인:: 다운로드 뉴스레터 링크 영역 추가 : 25.05.14 : 임수비 */
    .main-download-wrap {
        padding: 2px;
        border-radius: 5px 5px 15px;
    }
    .main-download-wrap::before {
        background-size: auto 50px;
        background-position: right 0 bottom 0;
    }
    .main-download-wrap > div {
        padding-top: 20px;
        padding-left: 15px;
        background-size: auto 67px;
        border-radius: 5px 5px 15px;
    }
    .main-download-wrap > div > p  {
        font-size: 16px;
    }
    .main-download-link {
        opacity: 1;
        display: block;
        margin-top: 5px;
        color: #fff;
    }
    .main-download-wrap:hover .main-download-link {
        color: #333;
    }
    .main-download-link > ul.listBar > li + li {
        margin-top: 0;
    }

    .main-link {
        padding: 20px 15px;
        border-radius: 5px 5px 15px;
    }
    .main-link > li {
        width: 100%;
    }
    .main-link > li + li {
        margin-top: 10px;
    }
    .main-link > li .title {
        font-size: 14px;
    }
    .main-link .trigger {
        padding: 10px;
        line-height: 1;
    }
    .main-link .toggleArea .toggleCon {
        top: 34px;
        max-height: 100px;
    }

    /* main-link type 추가 - 25.06.18 mj.park */
    .main-link.type2 > li{
        gap: 10px;
    }
    .main-link.type2 > li .toggleArea{
        width: 100%;
    }


    /* 메인:: 공지사항 */
    .main-notice .main-tit-wrap {
        padding-bottom: 10px;
    }
    .main-notice .main-tit-wrap .plus {
        font-size: 30px;
    }
    .main-notice li span {
        padding: 5px 15px;
        font-size: 12px;
    }

    

    /* 메인:: 슬라이드 */
    .main-list {
        padding: 30px 20px;
        margin: 0 -20px;
        border-radius: 0;
    }
    .main-list .main-tit-wrap {
        margin-bottom: 30px;
    }
    .main-list .list-arrow {
        gap: 10px;
    }
    .main-list .slick-arrow {
        width: 20px;
        height: 20px;
        background-size: auto 18px;
        background-position: center;
    }
    .speaker-wrap {
        margin-top: 25px;
    }
    
    /* 서브:: 메뉴 */
    .sub-tab-wrap {
        margin-bottom: 30px;
    }
    .sub-tab-menu {
        background-color: #fff;
    }
    .sub-tab-menu > li {
        height: 40px;
        border: 1px solid #dddddd;
        -webkit-transition: 0.3s ease;
        transition: 0.3s ease;
    }    
    .sub-tab-menu > li > a {
        font-size: 14px;
        line-height: 1.2;
        color: #5e5451;
    }
    .sub-tab-menu > li.on,
    .sub-tab-menu >:hover {
        background-color: #e55a16;
    }
    .sub-tab-menu > li.on > a {
        color: #fff;
    }    
    .sub-tab-menu > li > a > span:before {
        display: none;
    }
    .sub-tab-menu > li:hover > a > span, 
    .sub-tab-menu > li.on > a > span {
        color: #fff;
    }
    .sub-tab-menu.n2 > li,
    .sub-tab-menu.n4 > li {
        width: 50%;
        border-left: 0;
        border-top: 0;
    }
    .sub-tab-menu.n2 > li {
        border-top: 1px solid #dddddd;
    }
    .sub-tab-menu.n2 > li:nth-child(2n+1) {
        border-left: 1px solid #ddd;
    }    
    .sub-tab-menu.n3 > li {
        width: 100%;
        border: 1px solid #ddd;
        border-top: 0;
    }  
    .sub-tab-menu.n3 > li:first-child {
        border-top: 1px solid #ddd;
    }
    .sub-tab-menu.n4 > li:nth-child(-n+2) {
        border-top: 1px solid #ddd;
    }    
    .sub-tab-menu.n4 > li:nth-child(2n+1) {
        border-left: 1px solid #ddd;
    }
    .sub-tab-wrap + .sub-tit-wrap {
        margin-top: 0;
    }
    .sub-tab-menu > li > a > span {
        display: inline-block;
        height: auto;
        vertical-align: middle;
    }
    
    
    /* 서브:: 메뉴 */
    .sub-menu-wrap {
        width: 100%;
        height: auto;
        margin-top: 0;
        margin-bottom: 0;
        border: 0;
    }
    .sub-menu.inner-layer {
        padding: 0;
        background-color: #2c3751;
        border-radius: 0;
    }
    .sub-menu .btn-home {
        width: 60px;
        height: 70px;
        margin: 0;
        border-radius: 0;
        background-color: transparent;
        background-position: left 20px center;
    }
    .sub-menu-list {
        position: absolute;
        top: 0;
        left: 0;
        width: calc(100% - 120px);
        margin: 0 60px;
        border: 0;
    }
    .sub-menu-list > li {
        width: 100%;
    }
    .btn-sub-menu {
        display: flex;
        justify-content: center;
        align-items: center;
        height: 70px;
        padding: 0;
        font-size: 16px;
        color: #fff;
        line-height: 1.2;
        word-break: keep-all;
    }
    .btn-sub-menu:after {         
        display: inline-block;
        margin-left: 12px;
        position: static;
        top: auto;
        -webkit-transform: none;
        transform: none;
        right: auto;   
        font-size: 10px; 
    }
    .btn-sub-menu.on:after {
        margin-top: 12px;
    }
	.sub-menu-list:not(:has(.sub-menu-depth02)) .sub-menu-depth01 {
		width: 100%;
	}
	.sub-menu-depth01:not(:has(ul)) .btn-sub-menu:after {
		display: none;
    }
    
    .sub-menu-depth02 .btn-sub-menu {
        height: 50px;
        background-color: #f6f9ff;
        border-radius: 5px;
        color: #343434;
    }
    .sub-menu-list .sub-menu-depth02 {
        width: calc(100% + 80px);
        margin-top: 15px;
        margin-left: -40px;
    }
    .sub-menu-list .sub-menu-depth02 > ul {
        top: 49px;
        width: 100%;
        margin-left: 0;
        border-top: 0;
        background-color: #f6f9ff;
        border-top: 1px solid rgba(0,0,0,0.1);
        border-radius: 0 0 5px 5px;
    }
    .sub-menu-list .sub-menu-depth02 > ul > li > a {
        color: #343434;
    }
    .sub-menu-list .sub-menu-depth02 > ul > li:hover > a {
        color: #343434;
    }
    .sub-menu-list li + li {
        border-left: 0;
    }
    .sub-menu-list li > ul {
        top: 70px;
        width: calc(100% + 120px);
        padding: 15px;
        margin-left: -60px;
        border: 0;
        background-color: #2c3751;
    }
    .sub-menu-list .sub-menu-depth01 > ul {
        z-index: 6;
    }
    .sub-menu-list .sub-menu-depth01 > ul:after {
        display: block;
        content: '';
        clear: both;
        position: absolute;
        top: 0;
        left: 50%;
        -webkit-transform: translateX(-50%);
        transform: translateX(-50%);
        width: calc(100% - 30px);
        height: 1px;
        background-color: rgba(255,255,255,0.8);
    }
    .sub-menu-list li > ul > li {
        text-align: center;
    }
    .sub-menu-list li > ul > li > a {
        padding: 7px 15px;
        font-size: 14px;
        color: #fff;
    }
    .sub-menu-list li > ul > li:hover > a {
        color: #fff;
    }


    /* 서브:: 헤더 */
    .sub .header-logo {
        display: none;
    }
    .sub .btn-menu-open {
        background-image: url('/image/common/ic_menu_open_wh.png');
    }


    /* 서브:: 비주얼 */
    .sub-visual {
        display: none;
    }


    /* 서브:: 공통 */
    .sub-contents {
        padding-top: 70px;
    }    
    .page-tit-wrap { 
        display: none; 
    }
    .subTit { 
        margin: 20px 0;
        font-size: 18px;
        background-size: contain;
    }
    .ing { 
        width: 320px;
        height: 250px;
    }

    /* Poster Exhibition - 25.02.21 mj.park */
    ul.posterList .btn-small{
        padding: 5px 12px;
        font-size: 13px;
    }
    .subTit{
        background-size: auto 18px;
    }
    div.tableScroll table{
        width: 768px;
    }
}