@charset "utf-8";

@media screen and (min-width: 750px) and (max-width: 1200px){#_device_pc{display: none;} #_device_ta{display: block;} #_device_mo{display: none;} .__pc{display: none !important;} .__ta{display: block !important;} .__mo{display: none;}}
@media screen and (max-width: 750px){#_device_pc{display: none;} #_device_ta{display: none;} #_device_mo{display: block;} .__pc{display: none !important;} .__ta{display: none;} .__mo{display: block !important;}.__pcta{display: none !important;}}
@media screen and (min-width: 750px){.__ta{display: none;} .__mo{display: none !important;} .__pcta{display: block !important;}}

@media screen and (max-width: 1200px) {

    /* Common */
    body,td,form,select,input,button,textarea,div,option,pre,p,span,blockquote,li,dt,dd {font-size: 13px;}

    /* Accessibility */
    #skip-to-article a {font-size: 20px;line-height: 70px;}
    #skip-to-article a:focus {height: 70px;}

    /* Input */
    .inp.w100,
    .slt.w100 {width: 100%;}
    .inp.wfull,
    .slt.wfull {width: 100%;}
    .inp.w50,
    .slt.w50 {width: 50%;}
    .inp.w33,
    .slt.w33 {width: 35%;}

    textarea {min-height: 100px;}
    .many_inputs{white-space: nowrap;display: flex;justify-content: space-between;flex-wrap: wrap;align-items: center;}
    .many_inputs.len3 > *{width: calc((100% / 3) - (20px / 3));}
    .many_inputs.len2 > *{width: calc((100% / 2) - (10px / 2));}
    .many_inputs .hipen{font-size: 10px;margin: 0;width: 10px !important;}

    .lab + label{padding-left: 25px;line-height: 20px;font-size: 14px;}
    .lab + label:before{width: 20px;height: 20px;}
    .lab:checked + label:after{width: 20px;line-height: 20px;font-size: 12px;}
    .lab.radio + label:before{width: 20px;height: 20px;}
    .lab.radio:checked + label:after{width: 20px;line-height: 20px;}

    .finp{padding-right: 85px;width: 100%;box-sizing: border-box;min-width: 0;}
    .finp .input p{line-height: 40px !important;padding: 0 15px;}
    .finp button{width: 85px;height: 40px !important;padding: 0 !important;}
    
    /* Captcha */
    #zigger-captcha .inp {margin-left: 0;margin-top: 5px;width: 100%;}

    /* Button */
    .btn-wrap {margin-top: 30px;min-height: 40px;}
    .btn1, .btn2, .btn3, .btn1.small, .btn2.small, .btn3.small{padding: 0 15px;font-size: 14px;height: 40px;letter-spacing: -0.05em;line-height: 38px;min-width: 80px;text-align: center;}
    .btn-wrap .right.clear {clear: both;display: block;position: static;text-align: right;}
    
    /* Tab */
    .article-tab{margin-bottom: 20px;}
    .article-tab li a{line-height: 45px;font-size: 14px;}
    .article-tab li.on a{line-height: 46px;}

    /* Table */
    .table colgroup {display: none;}
    .table tr > * {font-size: 13px;letter-spacing: -0.05em;line-height: 16px;padding: 10px 5px;}
    .table > tbody > tr > th {min-width: 80px;}
    .table > tbody > tr > td.no {font-size: 11px;}
    .table > tbody > tr > td p {line-height: 18px;}

    .table_wrt colgroup {display: none;}
    .table_wrt tr > * {font-size: 13px;letter-spacing: -0.05em;line-height: 16px;padding: 10px;}
    .table_wrt tbody th {width: 70px;font-size: 12px;padding: 10px;}
    .table_wrt tbody td p {line-height: 18px;}

    span.tbltxt {font-size: 12px;line-height: 14px;}
    ul.tbltxt {margin: 5px 0 0 0;}
    ul.tbltxt li {font-size: 12px;line-height: 14px;}
    ul.tbltxt li:before {top: 6px;}

    .list-nodata{padding: 20px;font-size: 13px;}

    /* notice box */
    .article-notice {font-size: 14px;line-height: 20px;margin-bottom: 10px;padding: 20px 15px;}
    .article-notice i {font-size: 20px;}
    .article-notice em {font-size: 12px;line-height: 16px;}

    /* 기본 폼 */
    .tblform h4 {font-size: 14px;font-weight: bold;letter-spacing: -0.05em;margin-bottom: 10px;}
    .tblform h4 em {font-size: 12px;font-weight: normal;letter-spacing: -0.05em;line-height: 15px;margin-top: 5px;}
    .tblform h5 {font-size: 13px;letter-spacing: -0.05em;}
    .agr-box {margin-bottom: 15px;padding: 20px 15px;}
    .agr-box .txt {height: 100px;padding: 10px;}
    .agr-box .chk {font-size: 12px;}
    .mypoint {font-size: 13px;letter-spacing: -0.05em;margin-bottom: 10px;padding: 20px;}
    .mypoint strong {font-size: 18px;}

    /* Popup */
    .ph-pop {height: auto !important;left: 20px !important;top: 80px !important;width: calc(100% - 40px) !important;box-sizing: border-box;}
    .ph-pop .pop-cont {height: auto !important;width: auto !important;}
    .ph-pop .pop-cont img {max-width: 100% !important;width: auto !important;height: auto !important;}

    /* Init progress bar */
    #loading-screen .in{width: 200px;}

    /* Multi ajax popup */
    .layer-ajaxpopBG{z-index: 300;}
    .layer-ajaxpop{top: 50%;left: 20px;transform: translate(0, -50%);padding-top: 50px;width: calc(100% - 40px) !important;height: auto !important;}
    .layer-ajaxpop .pop-tit{height: 50px;}
    .layer-ajaxpop .pop-tit h3{font-size: 14px;line-height: 50px;}
    .layer-ajaxpop .pop-tit .close{width: 50px;height: 50px;line-height: 50px;}
    .layer-ajaxpop .pop-tit .close:after{line-height: 50px;font-size: 14px;}
    .layer-ajaxpop .pop-wrap{height: auto;max-height: calc(100dvh - 90px);}

    /* Etc */
    .no-data{font-size: 15px;}

}

/**************************************************

    Layout

**************************************************/
@media screen and (max-width: 1200px){

    #smooth-content{padding-top: 60px;}

    #error-page {margin: 50px auto;}
    #error-page em{font-size: 120px;letter-spacing: -3px;}
    #error-page h1{font-size: 25px;}
    #error-page h2{font-size: 14px;}
    
    #header{position: fixed;top: 0;left: 0;width: 100%;box-shadow: 0 3px 3px rgba(0,0,0,0.05);padding: 0;}
	#header .inner{width: auto;height: 60px;}
    #header .logo{position: absolute;left: 15px;height: 100%;line-height: 60px;}
    #header .logo img{width: auto;max-width: 100px;max-height: 35px;}
    #header:after{content: '';display: block;position: absolute;bottom: -1px;width: 100%;height: 1px;background: rgba(0,0,0,0.05);}

    /* layout */
    #tnb{top: 50%;transform: translate(0, -50%);right: 60px;}
    #tnb > li{margin-left: 5px;display: none;}
    #tnb > li.visible_for_mo{display: inline-block;}
    #tnb > li a{font-size: 13px;color: #666;display: block;text-decoration: none;color: #333;line-height: 30px;border-radius: 30px;border: 1px solid #ddd;padding: 0 12px;font-weight: bold;letter-spacing: -1px;}

	#gnb{display: none;}
    #hd-lan{display: none;}
    #hd-sch{display: none;}

    #slide-btn{top: 0;right: 0;width: 60px;height: 60px;display: block;transform: none;}
    #slide-btn button span,
    #slide-btn button:before,
    #slide-btn button:after{width: 23px;transform: translate(-50%, 0);left: 50%;}
    #slide-btn button span{top: 50%;margin-top: -1px;}
    #slide-btn button:before{top: 22px;}
    #slide-btn button:after{bottom: 22px;}

    #slide-bg{position: fixed;z-index: 200;top: 0;left: 0;width: 100%;height: 100%;background: rgba(0,0,0,0.3);}
    #slide-bg.on{display: block;}
    #slide-close{position: absolute;top: 0;right: 5px;width: 60px;height: 60px;background: url('../images/ico_close.svg') no-repeat center center;background-size: 20px auto;}

    #slide-menu{position: fixed;top: 0;right: 0;width: 100%;height: 100%;display: none;background: #fff;z-index: 201;overflow-y: auto;transition: all 0.3s cubic-bezier(0.930, 0.635, 0.650, 0.970);}
    #slide-menu .tit{height: 60px;position: relative;border-bottom: 1px solid #eee;}
    #slide-menu.on{display: block;opacity: 0;animation:slide_menu_open 0.3s ease forwards;-webkit-animation:slide_menu_open 0.3s ease forwards;}
    @keyframes slide_menu_open {
        0% {opacity: 0;transform: scale(0.9);border-radius: 80px;}
        100% {opacity: 1;transform: scale(1);border-radius: 0;}
    }

    #slide-menu .utill_menu{padding: 30px;padding-top: 50px;}
    #slide-menu .utill_menu li{margin-right: 10px;}
    #slide-menu .utill_menu li a{font-size: 15px;letter-spacing: -1px;color: #999;}

    #gnb-mo{margin-top: 25px;}
    #gnb-mo li.hidden{display: none;}
    #gnb-mo > li > a{position: relative;display: block;line-height: 50px;padding: 0 30px 0 30px;font-size: 18px;letter-spacing: -1px;color: #000;font-weight: 600;text-decoration: none;}
    #gnb-mo > li > a:before{content: '\f12f';display: block;font-family: axicon;position: absolute;top: calc(50% - 1px);right: 30px;font-size: 13px;color: #000;line-height: 0;}
    #gnb-mo > li > ul{padding: 0 20px 20px 30px;margin-top: -5px;border-width: 1px 0;margin-bottom: -1px;display: none;}
    #gnb-mo > li > ul > li > a{line-height: 40px;font-size: 17px;color: #333333;text-decoration: none;padding-left: 0;letter-spacing: -1px;display: block;}
    #gnb-mo > li > ul > li > ul{display: none;}
    #gnb-mo > li > ul > li > ul li a{line-height: 32px;font-size: 16px;color: #666;text-decoration: none;padding-left: 0;letter-spacing: -1px;display: block;padding-left: 12px;position: relative;}
    #gnb-mo > li > ul > li > ul li a:before{content: '';display: block;position: absolute;top: 17px;left: 0;width: 5px;height: 2px;background: #666;}
    #gnb-mo > li.on > a:before{transform: rotate(180deg);}

    #hd-lan-mo{position: absolute;top: 0;left: 30px;z-index: 92;display: none;}
    #hd-lan-mo > a{display: block;line-height: 60px;padding: 0 10px 0 24px;font-size: 16px;color: #000;text-decoration: none;background: url('../images/ico_globe.svg') no-repeat 0 center / 18px auto, url('../images/ico_arrow_down.svg') no-repeat right center / 6px auto;}
    #hd-lan-mo > ul{position: absolute;top: 50px;left: 50%;display: none;width: 80px;margin-left: -40px;padding: 10px 0;border: 1px solid #b8b8b8;background: #fff;border-radius: 3px;}
    #hd-lan-mo > ul:before{position: absolute;top: -7px;left: 50%;content: '';display: block;width: 6px;height: 7px;margin-left: -3px;}
    #hd-lan-mo > ul li a{display: block;font-size: 15px;line-height: 20px;color: #666666;text-decoration: none;text-align: center;}
    #hd-lan-mo.on > ul{display: block;}

    #hd-sch-mo{position: absolute;top: 50%;transform: translate(0, -50%);left: 100px;z-index: 91;display: none;}
    #hd-sch-mo .btn{display: block;width: 20px;height: 20px;background: url('../images/ico_search.svg') no-repeat center center;background-size: contain;text-indent: -999em;border: none;}
    #hd-sch-mo form{position: fixed;display: none;top: 60px;right: 0;width: 80%;padding-right: 50px;border: 1px solid #333;border-width: 1px 0 1px 0;overflow: hidden;background: #fff;box-sizing: border-box;}
    #hd-sch-mo legend{display: none;}

    #hd-sch-pop{position: fixed;top: 0;left: 0;width: 100%;z-index: 202;box-shadow: 3px 10px 30px rgba(0,0,0,0.1);padding: 0;border: none;}
    #hd-sch-pop form{width: auto;padding: 0;}
    #hd-sch-pop .inp{width: calc(100% - 110px);text-indent: 10px;font-size: 15px;height: 60px;}
    #hd-sch-pop .sbm{width: 55px;height: 60px;background-size: 20px auto;}
    #hd-sch-pop .close{width: 55px;height: 60px;background-size: 18px auto;}

    #footer {padding: 30px 0;text-align: center;}
    #footer .ft_cont .ft_left *,
    #footer .ft_cont .ft_right * { letter-spacing: -0.5px;}
    #footer .ft_cont { display: block;}
    #footer .ft_cont .ft_left { max-width: none; }
    #footer .ft_cont .ft_left strong { font-size: 15px;}
    #footer .ft_cont .ft_left .add { justify-content: center; margin: -2px -5px; padding-top: 15px;}
    #footer .ft_cont .ft_left .add li { padding: 2px 5px; font-size: 12px; }

    #footer .ft_cont .ft_right { margin-top: 20px; text-align: center; }
    #footer .ft_cont .ft_right p { font-size: 13px; }
    #footer .ft_cont .ft_right .tel { margin-top: 5px; font-size: 14px; }
    #footer .ft_cont .ft_right .time { padding-top: 5px; font-size: 12px;}
    #footer .ft_cont .ft_right .copyright { margin-top: 15px; font-size: 12px;}
    #footer .btm_box { display: block; margin-top: 20px; padding: 15px;}
    #footer .btm_box dl { display: block;}
    #footer .btm_box dl + dl { padding: 15px 0 0;}
    #footer .btm_box dt { padding: 0 0 8px; font-size: 14px; }
    #footer .btm_box dd { display: inline-block; padding: 3px; }
    #footer .btm_box dd + dd { padding-left: 3px; }
    #footer .btm_box dd img { max-height: 23px; }
    #footer .btm_box dd .small1 { max-height: 21px; }
    #footer .btm_box dd .small2 { max-height: 20px; }

    #fnb { margin-top: 15px; }
    #fnb li { margin: 0 5px;}
    #fnb li a {font-size: 12px;}

}

/**************************************************

    Main

**************************************************/
@media screen and (max-width: 1200px) {

    #main{overflow: hidden;}
    #main #mainWrap{width: auto;padding: 0;}
    #main img{max-width: 100%;}

    #main .visual .roll{left: auto;transform: none;width: auto;}
    #main .visual .roll .item .img{height: 300px;}
    #main .visual .roll .item *.pc{display: none;}
    #main .visual .roll .item *.mobile{display: block;}
    #main .visual .roll .item{font-family: empty;font-size: 0;}
    #main .visual .roll .item img{width: 100%;height: auto;}
    #main .visual .dots{bottom: 30px;}
    #main .visual .dots span{margin: 0 3px;}
    #main .visual .dots span.swiper-pagination-bullet{width: 10px;height: 10px;border-radius: 10px;}
    #main .visual .dots span.swiper-pagination-bullet-active{width: 20px;}

    #main .lat-wrap {display: block;}
    #main .lat-wrap > *{width: 100%;}

    #main .lat.gallery ul li .icons{top: 10px;left: 10px;}
    #main .lat.gallery ul li .icons .icon{width: 30px;line-height: 30px;border-radius: 30px;font-size: 12px;letter-spacing: -1px;}
    

    #mainWrap section { padding: 50px 0; }
    #mainWrap .inner { padding: 0 15px;}

    .main_tit_box { padding-bottom: 25px; }
    .main_tit_box em { font-size: 16px; }
    .main_tit_box h3 { font-size: 20px; }
    .main_tit_box p { padding-top: 5px; font-size: 14px;}

    .main_tit_box em + h3 { padding-top: 5px; }

    .main_slogan h2 { font-size: 24px; }
    .main_slogan .scroll { margin-top: 30px; }
    .main_slogan .scroll .mouse { }
    .main_slogan .scroll p { padding-left: 5px; font-size: 13px; }


    .visual_poster { height: 95vh;}
    .visual_poster .tit_box { width: 65%;}
    .visual_poster .obj_box .school { width: 110px; top: 10%; left: 5%; }
    .visual_poster .obj_box .phone { width: 130px; bottom: 25%; left: 10%; }
    .visual_poster .obj_box .prize { width: 150px; bottom: 18%; }
    .visual_poster .obj_box .shoes { width: 180px; right: 1%;  }
    .visual_poster .obj_box .rank { width: 50%; bottom: -45px; right: 15%; }


    .main_totay .list_box { padding: 15px; }
    .main_totay .list_box ul { padding: 10px 0;}
    .main_totay .list_box li { padding: 20px 0; }
    .main_totay .list_box li .ico { width: 35px; background-size: contain; }
    .main_totay .list_box li dl { padding-top: 10px; }
    .main_totay .list_box li dt { padding-top: 10px; font-size: 15px;}
    .main_totay .list_box li dd { font-size: 18px; }
    .main_totay .list_box li dd .num  { font-size: 24px; }

    
    #mainWrap #nowrank { padding-top: 50px; }
    .main_nowrank .list_box { padding: 50px 35px 0;}
    .main_nowrank .date { top: 15px; right: 15px; padding: 5px 10px; font-size: 14px; }
    .main_nowrank .side_obj .left { top: 25px; left: 15px; max-height: 55px; }
    .main_nowrank .side_obj .right { top: 55px; right: 15px; max-height: 55px;}

    .main_nowrank .list_box ul { margin: 0 -10px;  }
    .main_nowrank .list_box li { padding: 0 10px; }
    .main_nowrank .list_box li .txt_bg { padding: 25px 3px; }
    .main_nowrank .list_box li .txt_bg .ico_medal { left: 10px; width: 28px;}
    .main_nowrank .list_box li .txt_bg .ico_challenge { width: 65px; }
    .main_nowrank .list_box li .txt_bg .txt p { padding: 0; font-size: 14px; word-break: break-all !important; line-height: 1.2;}
    .main_nowrank .list_box li .txt_bg .txt span { padding-top: 2px; font-size: 13px; }
    .main_nowrank .list_box li .bar_box { padding-top: 15px; }
    #main  .main_nowrank .list_box li .bar_box img { max-width: 80%; }


    .main_todayrank .list_box { padding: 15px; }
    .main_todayrank .list_box ul { padding: 0 10px; }
    .main_todayrank .list_box .rank { width: 13%; }
    .main_todayrank .list_box .school { width: 36%; }
    .main_todayrank .list_box .students { width: 17%; }
    .main_todayrank .list_box .participate_rate { width: 14%; }
    .main_todayrank .list_box .goal_rate { width: 20%; }

    .main_todayrank .list_box .rank_head li,
    .main_todayrank .list_box .rank_list li > div { line-height: 1.3; padding: 12px 5px; }

    .main_todayrank .list_box .rank_head li { font-size: 12px;}

    .main_todayrank .list_box .rank_list li > div { font-size: 12px;}
    .main_todayrank .list_box .rank_list li > div > span { margin: 0 5px; word-break: break-all !important; }

    .main_todayrank .list_box .rank_list .first .school span::before,
    .main_todayrank .list_box .rank_list .second .school span::before,
    .main_todayrank .list_box .rank_list .third .school span::before { left: -15px; width: 15px; }
    .main_todayrank .list_box .rank_list .success span::after { display: block; position: static; width: 50px; transform: none;}


    .main_personal_rank .top_bg_box p { font-size: 15px; }
    .main_personal_rank .top_bg_box p img { max-height: 23px; padding: 0 5px; }

    .main_personal_rank .list_box { margin-top: 10px;  padding: 15px; }
    .main_personal_rank .list_box ol { margin: -3px -5px; }
    .main_personal_rank .list_box li { width: calc(50% - 10px); margin: 3px 5px; height: 60px; padding: 0 15px; }
    .main_personal_rank .list_box li > div { padding-left: 30px; }
    .main_personal_rank .list_box li .rank { width: 20px; top: 0; transform: none; }
    .main_personal_rank .list_box li .rank:not(.first, .second, .third) { font-size: 14px;}
    .main_personal_rank .list_box li .word { font-size: 15px; }
    .main_personal_rank .list_box li .school { padding-left: 7px; font-size: 13px;}
    .main_personal_rank .list_box li .walk { font-size: 14px; }


    .main_personal_rank .event_box { padding: 140px 10px 130px; margin-top: 35px;  }
    .main_personal_rank .event_box h4 { font-size: 20px;}
    .main_personal_rank .event_box p { padding-top: 10px; font-size: 15px;}
    .main_personal_rank .event_box a { height: 40px; margin-top: 20px; font-size: 14px; }
    #main .main_personal_rank .obj_box img { max-width: 100px; }
    .main_personal_rank .obj_box .left { top: 10px; left: 50%; transform: translateX(-50%); }
    .main_personal_rank .obj_box .right { top: auto; bottom: 10px; right: 50%; transform: translateX(50%); }


    .main_tip .list_box li +  li { }
    .main_tip .list_box li > div { padding: 0 15px;}
    .main_tip .list_box li .question_box { padding: 10px 15px; }
    .main_tip .list_box li .question_box span { width: 25px; font-size: 16px;}
    .main_tip .list_box li .question_box p { width: calc(100% - 33px); margin-left: 8px; font-size: 15px; }
    .main_tip .list_box li .question_box i { font-size: 20px; }
    .main_tip .list_box li .answer_box { margin-top: -5px; padding-bottom: 15px; }
    .main_tip .list_box li .answer_box p { padding-left: 33px; font-size: 14px;}


}


@media screen and (max-width: 750px) {
    .visual_poster { height: 75vh;}
    .visual_poster .obj_box .school { width: 80px; top: 8%; left: 2%; }
    .visual_poster .obj_box .phone { width: 100px; left: 5%; }
    .visual_poster .obj_box .prize { width: 120px; left: 43%;}
    .visual_poster .obj_box .shoes { width: 150px; bottom: 10%; right: 0;  }
    .visual_poster .obj_box .rank { width: 55%; bottom: -30px; } 


    .main_totay .list_box ul { flex-wrap: wrap; }
    .main_totay .list_box li { width: 50%; padding: 12px 0;}
    .main_totay .list_box li:nth-child(2n+3):before { display: none; } 


    .main_nowrank .list_box { padding: 70px 12px 0;}
    .main_nowrank .list_box ul { margin: 0 -7px; }
    .main_nowrank .list_box li { padding: 0 7px; }
    .main_nowrank .list_box li .txt_bg { padding: 30px 5px 15px;}
    .main_nowrank .list_box li .txt_bg .ico_medal { left: 6px; width: 22px;}
    .main_nowrank .list_box li .txt_bg .ico_challenge { width: 46px; transform: translate(30%,-40%); }


    .main_todayrank .list_box .rank_list .success span::after { width: 58px; }


    .main_personal_rank .list_box li { display: block; width: calc(100% - 10px); height: auto; padding: 12px 15px; }
    .main_personal_rank .list_box li > div { flex-wrap: wrap; align-items: flex-start; }
    .main_personal_rank .list_box li .walk { display: block; padding-top: 10px; text-align: right; } 
    .main_personal_rank .list_box li .school { display: block; width: 100%; padding: 3px 0 0;}
    

}

/**************************************************

    Sub

**************************************************/
@media screen and (max-width: 1200px) {

    #sub{overflow: hidden;}
    #sub #content {padding: 40px 15px;width: auto;}
    #sub #content section { padding: 50px 0;}
    #sub img{max-width: 100%;}

    #sub .sub_visual{height: 140px;}
    #sub .sub_visual .inner{width: auto;}
    #sub .sub_visual h3{font-size: 22px;}
    #sub .sub_visual p{font-size: 13px;}

    #status{margin-bottom: 20px;}
    #status > li{padding: 0 15px;}
    #status > li:before{font-size: 13px;}
    #status > li a{font-size: 13px;}

    #navigator{border-width: 0 0 1px 0;}
    #navigator > ul{width: auto;border-left: none;padding-left: 40px;}
    #navigator > ul > li{width: 50%;box-sizing: border-box;}
    #navigator > ul > li:nth-child(4){display: none;}
    #navigator > ul > li > a{min-width: 0;font-size: 13px;padding: 0 20px 0 10px;line-height: 40px;background-size: 8px auto;}
    #navigator > ul > li:first-child{position: absolute;top: 0;left: 0;width: 40px;}
    #navigator > ul > li:first-child a{width: 40px;background: none;}
    #navigator > ul > li.d2{border: none;}
    #navigator > ul > li > ul{top: 40px;left: -1px;}
    #navigator > ul > li.d2 > ul{border-right: none;}
    #navigator > ul > li > ul li a{padding: 10px;font-size: 13px;}

    #sub-tit {margin-bottom: 20px;}
    #sub-tit h2 {font-size: 16px;}

    .lnb_wrap {display: none;}

    /* Signin */
    #signin {margin: 20px auto;padding: 0 30px;width: auto;}
    #signin h4 {font-size: 20px;margin-bottom: 10px;}
    #signin .log-noti {font-size: 12px;margin-bottom: 30px;}
    #signin .log-noti a {font-size: 12px;}
    #signin .snsbox h5 {font-size: 12px;margin-bottom: 10px;}
    #signin .snsbox ul {margin: -2px;}
    #signin .snsbox ul li a {font-size: 12px;}
    #signin .snsbox ul li a img {height: auto;margin-top: -1px;width: 15px;}
    #signin .or {font-size: 12px;margin: 20px 0;}
    #signin .inp-wrap label {font-size: 13px;margin-top: 15px;}
    #signin .inp-wrap label.chk {font-size: 13px;}
    #signin .inp-wrap label a {font-size: 13px;}
    #signin .inp-wrap .agree_wrap{margin: 20px 0 10px 0;}
    #signin .inp-wrap .agree_wrap label{font-size: 14px;}
    #signin .inp-wrap .agree_wrap label a{font-size: 14px;}
    #signin .mb_email {font-size: 13px;margin-bottom: 5px;}
    #signin .ft-btns {margin-top: 15px;}
    #signin .ft-btns li {padding: 0 15px;}
    #signin .ft-btns li a {font-size: 14px;}
    #signin .ft-btns li:before {height: 12px;}
    #signin button[type=submit]{font-size: 14px;}
    
    #signin .snsbox h5 {font-size: 12px;margin-bottom: 10px;}
    #signin .snsbox ul {margin: -2px;}
    #signin .snsbox ul li a {font-size: 12px;}
    #signin .snsbox ul li a img {height: auto;margin-top: -1px;width: 15px;}
    #signin .or {font-size: 12px;margin: 20px 0;}

    /* signup */
    #signup_terms{width: auto;}
    #signup_terms fieldset{margin-top: 30px;}
    #signup_terms .sns_signup_wrap{padding: 25px 0;}
    #signup_terms .sns_signup_wrap h5{display: block;margin-right: 0;margin-bottom: 10px;font-size: 14px;text-align: center;}
    #signup_terms .sns_signup_wrap ul{display: block;}
    #signup_terms .sns_signup_wrap ul li a {font-size: 13px;line-height: 35px;padding: 0 15px;}
    #signup_terms .sns_signup_wrap ul li a img {width: 16px;height: auto;}

    #signupForm{width: auto;}
    #signupForm .send-sms-code,
    #signupForm .confirm-sms-code{margin-top: 5px;width: 100%;}

    #infoForm{width: auto;}
    #infoForm .send-sms-code,
    #infoForm .confirm-sms-code{margin-top: 5px;width: 100%;}

    /* agreebox (for subpage) */
    #policy-agree-box {font-size: 13px;line-height: 20px;}
    #policy-agree-box h4 {font-size: 15px;margin-bottom: 10px;}

    /* agreebox (for emement) */
    .agreebox .scroll_txt{padding: 15px;font-size: 13px;line-height: 18px;height: 80px;border-radius: 5px;}
    .agreebox .scroll_txt p{font-size: 13px;}
    .agreebox .chk_wrap{margin-top: 10px;}
    .agreebox .chk_wrap label{font-size: 14px;}

    /* Search head */
    .list-head{margin-bottom: 20px;display: block;}
    .list-head .right{width: 100%;text-align: right;margin-top: 20px;}

    #search-form fieldset {display: block;margin: 4px 0;width: 100%;}
    #search-form fieldset .datebox {margin-bottom: -1px;width: calc(50% + 0.5px);}
    #search-form fieldset .datebox .inp {height: 35px;padding-right: 35px;width: 100%;}
    #search-form fieldset .keyword {height: 35px;margin-top: 5px;width: calc(100% - 70px);}
    #search-form fieldset .sltbox {height: 35px;margin-bottom: -1px;margin-right: -1px;width: 100%;}
    #search-form fieldset .sltbox select {height: 33px;}
    #search-form fieldset .keyword {width: 100%;margin-top: 0;}
    #search-form fieldset .submit {height: 35px;line-height: 33px;margin-top: 5px;}
    #search-form fieldset .submit.mo-w100p {width: 100%;}
    #search-form fieldset hr {display: none;}
    #search-form .reset-btn {background: #f7f7f7;border: 1px solid #eeeeee;box-sizing: border-box;display: block;font-size: 13px;line-height: 32px;margin-left: 0;text-align: center;width: 100%;}

    #search-sort{position: static;transform: none;margin-top: 20px;}
    #search-sort li{padding: 0 10px;}
    #search-sort li:first-child{padding-left: 0;}
    #search-sort li a{font-size: 13px;}
    
    /* Mypage */
    .mypagebox {margin-bottom: 20px;}
    .mypagebox > li {padding-bottom: 15px;width: 50%;}
    .mypagebox > li:before {background: rgba(0,0,0,0.06);content: '';display: block;height: 100%;left: 0;position: absolute;top: 0;width: 1px;}
    .mypagebox > li:nth-child(odd):before {display: none;}
    .mypagebox > li:nth-child(3),
    .mypagebox > li:nth-child(4) {border-top: 1px solid #ddd;}
    .mypagebox > li h5 {font-size: 13px;line-height: 40px;}
    .mypagebox > li .txt {font-size: 13px;line-height: 40px;}
    .mypagebox > li .txt strong {font-size: 14px;margin-right: 3px;}
    .mypagebox > li .btn2 {font-size: 12px;height: 32px;line-height: 30px;}

    #pointgift-send {height: 60%;left: 5%;margin-left: 0;margin-top: 0;padding-top: 45px;top: 20%;width: 90%;}
    #pointgift-send .tit {line-height: 50px;padding: 0 15px;}
    #pointgift-send .tit h2 {font-size: 14px;}
    #pointgift-send .tit .close {height: 50px;line-height: 50px;width: 50px;}
    #pointgift-send .cont {padding: 15px;}
    #pointgift-send .tbl colgroup {display: none;}
    #pointgift-send .tbl tbody th {font-size: 12px;width: 50px;}
    #pointgift-send .tbl tbody td {font-size: 12px;}

    /* Blocked */
    #blocked {margin: 40px 20px;width: auto;}

    /* Emailchk */
    #emailchk {margin: 40px 15px;width: auto;}

    /* Zig Alert */
    #zig-alert {width: calc(100% - 80px)}
    #zig-alert .content {padding: 25px;}
    #zig-alert .content p {font-size: 14px;line-height: 22px;}
    #zig-alert .button {padding: 10px;text-align: center;}
    #zig-alert .button button {font-size: 16px;padding: 0 30px;}
    #zig-alert .button button.yes{background: #f7f7f7;}

    /* Zig Confirm */
    #zig-confirm {width: calc(100% - 80px)}
    #zig-confirm .content {padding: 25px;}
    #zig-confirm .content p {font-size: 14px;line-height: 22px;}
    #zig-confirm .button {padding: 10px;text-align: center;}
    #zig-confirm .button button {font-size: 16px;padding: 0 30px;}
    #zig-confirm .button button.yes{background: #f7f7f7;}

}

/**************************************************

	Subpage utility
	(모든 서브페이지에서 공통으로 사용되는 utility 스타일)

**************************************************/
@media screen and (max-width: 1200px) {

    /* fullsizing wrapper */
    .full_wrapper{width: auto;left: auto;transform: none;box-sizing: border-box;margin: 0 -20px;}
    .full_wrapper.bg_gray{padding: 40px 20px;}
    .full_wrapper .inner{width: auto;}

    /* etc */
    .sub_title{margin-bottom: 30px;}
    .sub_title h3{font-size: 20px;}
    .sub_title p{margin-top: 5px;font-size: 14px;}

    .content_title{font-size: 16px;margin-bottom: 15px;}
    .content_text{font-size: 14px;}

    .sub_tit_box { padding-bottom: 25px; }
    .sub_tit_box em { font-size: 16px; }
    .sub_tit_box h5 { font-size: 20px; }
    .sub_tit_box p { padding-top: 5px; font-size: 14px;}

    .sub_tit_box em + h5 { padding-top: 10px;}

}

/**************************************************

	Subpage styling
	(각 서브페이지별 스타일. 식별을 위해 경로 주석 표기)
	
	- class명은 snake style로 선언 ( greetings_box1 (ㅇ) / greetingsBox1 (x) )

**************************************************/
@media screen and (max-width: 1200px) {

    /* campaign > guide */
    #sub #content .campaign_guide_cont1 { margin: 0; }
    .campaign_guide { margin: -40px 0; }
    .campaign_guide_cont1 { height: 95vh;}
    .campaign_guide_cont1 .inner { width: 100%;}
    .campaign_guide_cont1 .cont_box { margin: 0 -20px;}
    .campaign_guide_cont1 .tit_box { width: 67%; margin: 0 auto;}
    .campaign_guide_cont1 .obj_box > .obj1 { }
    .campaign_guide_cont1 .obj_box > .obj2 { top: 55%; width: 120px; left: 3%; }
    .campaign_guide_cont1 .obj_box > .obj3 { top: 55%; width: 110px; right: 3%; }
    /* .campaign_guide_cont1 .obj_box .school { width: 110px; top: 10%; left: 5%; }
    .campaign_guide_cont1 .obj_box .phone { width: 130px; bottom: 25%; left: 10%; }
    .campaign_guide_cont1 .obj_box .prize { width: 150px; bottom: 18%; }
    .campaign_guide_cont1 .obj_box .shoes { width: 180px; right: 1%;  }
    .campaign_guide_cont1 .obj_box .rank { width: 50%; bottom: -45px; right: 15%; } */

    .campaign_guide_cont1 .hidden_txt h4 { font-size: 28px; }

    .campaign_guide_cont2 .list_box li .img_box { max-width: 140px; height: 150px; margin: 0 auto;}
    .campaign_guide_cont2 .list_box li .img_box img { max-height: 100%;}
    .campaign_guide_cont2 .list_box li h5 { padding-top: 20px; font-size: 18px; }
    .campaign_guide_cont2 .list_box li p { padding-top: 10px; font-size: 14px;}

    .campaign_guide_cont3 .list_box li + li { padding-top: 40px; }
    .campaign_guide_cont3 .list_box li .img_box { width: calc(50% - 20px); margin-right: 20px;}
    .campaign_guide_cont3 .list_box li .img_box + .txt_box { padding-left: 20px; }
    .campaign_guide_cont3 .list_box li .txt_box + .img_box { margin-left: 20px; }

    .campaign_guide_cont3 .list_box li .txt_box .sub_item_tit_box .bg_ico { width: 25px; }
    .campaign_guide_cont3 .list_box li .txt_box .sub_item_tit_box .axi-star3 { font-size: 14px; }
    .campaign_guide_cont3 .list_box li .txt_box .sub_item_tit_box .ico2 { background-size: 50%;}
    .campaign_guide_cont3 .list_box li .txt_box .sub_item_tit_box .axi-insert-chart { font-size: 16px; }
    .campaign_guide_cont3 .list_box li .txt_box .sub_item_tit_box em { padding-left: 5px; font-size: 16px;}
    .campaign_guide_cont3 .list_box li .txt_box h5 { padding-top: 15px; font-size: 20px;}
    .campaign_guide_cont3 .list_box li .txt_box p { padding-top: 15px; font-size: 15px;}
    .campaign_guide_cont3 .list_box li .txt_box p + p { padding-top: 10px; }
    .campaign_guide_cont3 .list_box li .txt_box a { height: 40px; margin-top: 25px; font-size: 14px;}

    .campaign_guide .map_cont .cont_box { margin-top: 40px;}
    .campaign_guide .map_cont .tit_box { margin-left: 40px; }
    .campaign_guide .map_cont .tit_box h5 { font-size: 23px; }
    .campaign_guide .map_cont .tit_box p { padding-top: 10px; font-size: 15px; }
    .campaign_guide .map_cont .tit_box .hidden_box { transform: none;}

    #sub #content #highschool { padding-top: 50px;}
    .campaign_guide_cont6 .brd_box { padding: 50px 15px; }
    .campaign_guide_cont6 .brd_box .ico { width: 60px; }
    .campaign_guide_cont6 .brd_box h5 { padding-top: 20px; }

    .campaign_guide_cont7 { }
    .campaign_guide_cont7 .list_box li { width: calc((100%/3) - 10px); margin: 0 5px; padding: 40px 15px;}
    .campaign_guide_cont7 li .num { height: 32px; padding: 0 13px; font-size: 14px; }
    .campaign_guide_cont7 li .tit_box { padding-bottom: 12px; }
    .campaign_guide_cont7 li .tit_box h6 { font-size: 18px; }
    .campaign_guide_cont7 li .tit_box .check { padding-top: 10px; font-size: 16px; }
    .campaign_guide_cont7 li .tit_box .txt { padding-top: 5px; font-size: 14px;}
    .campaign_guide_cont7 li .txt_box { padding-top: 10px; }
    .campaign_guide_cont7 li .txt_box p { margin: 0; font-size: 12px; }

    .campaign_guide_cont8 .sub_tit_box img { width: 65px;}
    .campaign_guide_cont8 .list_box { padding: 15px; }
    .campaign_guide_cont8 .list_box ul { margin: -5px; }
    .campaign_guide_cont8 .list_box li { width: calc(50% - 10px); margin: 5px; padding: 10px; }
    .campaign_guide_cont8 .list_box li .num { width: 22px; font-size: 13px; }
    .campaign_guide_cont8 .list_box li p { padding-left: 5px; font-size: 14px; }


    /* challenge > guide */
    .challenge_guide { margin: -40px 0; }

    .challenge_guide_cont2 { width: 100vw;}
    .challenge_guide_cont2 .cont_box { padding: 0 15px; box-sizing: border-box;}
    .challenge_guide_cont2 .cont_box h4 { font-size: 24px; }
    .challenge_guide_cont2 .cont_box p { padding-top: 20px; font-size: 16px; }

    .challenge_guide_cont3 .list_box ul { margin: 0 -15px; }
    .challenge_guide_cont3 .list_box li { padding: 0 15px; }
    .challenge_guide_cont3 .list_box li h5 { padding-top: 20px; font-size: 18px; }
    .challenge_guide_cont3 .list_box li p { padding-top: 10px; font-size: 14px;}

    .challenge_guide_cont4 .cont_box { height: 60vh; }
    .challenge_guide_cont4 h5 { font-size: 24px; }
    .challenge_guide_cont4 .qr { margin-top: 20px; padding: 12px; }
    .challenge_guide_cont4 .btn_box { padding: 0 15px;}
    .challenge_guide_cont4 .btn_box a { height: 40px; margin-top: 20px; }
    .challenge_guide_cont4 .btn_box a + a { margin-left: 10px; }
    .challenge_guide_cont4 .btn_box a img { max-height: 22px; }

    .challenge_guide_cont4 .obj_box img { width: 28%;}

    .challenge_guide_cont4 .img_box { width: 85%; padding: 150px 15px 0; }

    .challenge_guide_cont5 .list_box ol { margin: 0 -10px; }
    .challenge_guide_cont5 .list_box li { padding: 0 10px; }
    .challenge_guide_cont5 .list_box li .img_box { padding: 8px; border-radius: 35px; }
    .challenge_guide_cont5 .list_box li .img_box > div { border-radius: 26px; }
    .challenge_guide_cont5 .list_box li .txt_box { padding-top: 12px; }
    .challenge_guide_cont5 .list_box li .txt_box .num { height: 33px; padding: 0 15px; font-size: 15px; }
    .challenge_guide_cont5 .list_box li .txt_box .tit { padding-top: 10px; font-size: 20px; }
    .challenge_guide_cont5 .list_box li .txt_box .txt { padding-top: 5px; font-size: 14px; }
    .challenge_guide_cont5 .list_box a { height: 40px; margin-top: 30px; font-size: 14px;}

}

@media screen and (max-width: 750px) {

    /* campaign > guide */
    .campaign_guide_cont1 { height: 75vh;}
    .campaign_guide_cont1 .tit_box { width: 70%; }
    .campaign_guide_cont1 .obj_box > .obj2 { top: 22%; left: 1%; }
    .campaign_guide_cont1 .obj_box > .obj3 { top: 80%; right: 1%; }

    .campaign_guide_cont1 .hidden_txt h4 { font-size: 20px; }

    .campaign_guide_cont2 .list_box ul { display: block; margin: -15px 0; }
    .campaign_guide_cont2 .list_box li { padding: 15px 0; }
    .campaign_guide_cont2 .list_box li .img_box { max-width: 100px; height: auto; }

    .campaign_guide_cont3 .list_box li { flex-wrap: wrap; }
    .campaign_guide_cont3 .list_box li:nth-child(even) { flex-direction: column-reverse; }
    .campaign_guide_cont3 .list_box li .img_box { width: 100%; margin-right: 0;}
    .campaign_guide_cont3 .list_box li .txt_box { width: 100%; }
    .campaign_guide_cont3 .list_box li .img_box + .txt_box { padding: 20px 0 0; }
    .campaign_guide_cont3 .list_box li .txt_box + .img_box { margin: 0 0 20px; }

    .campaign_guide .map_cont .tit_box { margin-left: 20px; }
    .campaign_guide .map_cont .tit_box h5 { font-size: 17px; line-height: 1.4; }
    .campaign_guide .map_cont .tit_box p { padding-top: 5px; font-size: 12px; line-height: 1.3; }

    .campaign_guide_cont7 .list_box ul { display: block; margin: -15px 0;}
    .campaign_guide_cont7 .list_box li { width: 100%; margin: 15px 0; }

    .campaign_guide_cont8 .list_box li { width: calc(100% - 10px);}


    /* challenge > guide */
    .challenge_guide_cont2 {  }

    .challenge_guide_cont3 .list_box ul { display: block; margin: -15px 0; }
    .challenge_guide_cont3 .list_box li { padding: 15px 0;}
    .challenge_guide_cont3 .list_box li .img_box { max-width: 150px; margin: 0 auto; }

    .challenge_guide_cont4 .cont_box { height: 56vh; min-height: 470px; padding-top: 200px; }
    .challenge_guide_cont4 .obj_box img { width: auto; max-height: 180px; object-fit: contain;}
    .challenge_guide_cont4 .obj_box .left { bottom: auto; top: -10px ;}
    .challenge_guide_cont4 .obj_box .right { bottom: -20px; }

    .challenge_guide_cont4 .img_box { width: 92%; padding: 60px 0 0; }

    .challenge_guide_cont5 .list_box ol { display: block; margin: -20px 0; }
    .challenge_guide_cont5 .list_box li { padding: 20px 0;}
    .challenge_guide_cont5 .list_box li .img_box { max-width: 200px; padding: 6px; border-radius: 30px; }


}