@charset "utf-8";
@font-face {
    font-family: 'NanumSquareNeo';
    src: url(https://hangeul.pstatic.net/hangeul_static/webfont/NanumSquareNeo/NanumSquareNeoTTF-aLt.woff2);
    font-weight: 300;
    font-display: swap;
}

@font-face {
    font-family: 'NanumSquareNeo';
    src: url(https://hangeul.pstatic.net/hangeul_static/webfont/NanumSquareNeo/NanumSquareNeoTTF-aLt.woff2);
    font-weight: 400;
    font-display: swap;
}
@font-face {
    font-family: 'NanumSquareNeo';
    src: url(https://hangeul.pstatic.net/hangeul_static/webfont/NanumSquareNeo/NanumSquareNeoTTF-bRg.woff2);
    font-weight: 400;
    font-display: swap;
}
@font-face {
    font-family: 'NanumSquareNeo';
    src: url(https://hangeul.pstatic.net/hangeul_static/webfont/NanumSquareNeo/NanumSquareNeoTTF-cBd.woff2);
    font-weight: 400;
    font-display: swap;
}
@font-face {
    font-family: 'NanumSquareNeo';
    src: url(https://hangeul.pstatic.net/hangeul_static/webfont/NanumSquareNeo/NanumSquareNeoTTF-dEb.woff2);
    font-weight: 400;
    font-display: swap;
}
@font-face {
    font-family: 'NanumSquareNeo';
    src: url(https://hangeul.pstatic.net/hangeul_static/webfont/NanumSquareNeo/NanumSquareNeoTTF-eHv.woff2);
    font-weight: 400;
    font-display: swap;
}
@font-face {
    font-family: 'NanumSquareNeo';
    src: url(https://hangeul.pstatic.net/hangeul_static/webfont/NanumSquareNeo/NanumSquareNeo-Variable.woff2);
    font-weight: 400;
    font-display: swap;
}

@font-face {
    font-family: 'NanumSquareNeo';
    src: url(https://hangeul.pstatic.net/hangeul_static/webfont/NanumSquareNeo/NanumSquareNeoTTF-bRg.woff2);
    font-weight: 400;
    font-display: swap;
}

@font-face {
    font-family: 'NanumSquareNeo';
    src: url(https://hangeul.pstatic.net/hangeul_static/webfont/NanumSquareNeo/NanumSquareNeoTTF-cBd.woff2);
    font-weight: 700;
    font-display: swap;
}

@font-face {
    font-family: 'NanumSquareNeo';
    src: url(https://hangeul.pstatic.net/hangeul_static/webfont/NanumSquareNeo/NanumSquareNeoTTF-dEb.woff2);
    font-weight: 800;
    font-display: swap;
}

@font-face {
    font-family: 'NanumSquareNeo';
    src: url(https://hangeul.pstatic.net/hangeul_static/webfont/NanumSquareNeo/NanumSquareNeoTTF-eHv.woff2);
    font-weight: 900;
    font-display: swap;
}

@font-face {
    font-family: 'RomanticGumi';
    src: url('https://cdn.jsdelivr.net/gh/projectnoonnu/2410-1@1.0/GumiRomanceTTF.woff2') format('woff2');
    font-weight: normal;
    font-display: swap;
}

/******************** 공통 ********************/
.dim {position:fixed; left:0; top:0; width:100%; height:100%; background:rgba(0, 0, 0, 0.6); z-index:1000; display:none;}
body.noScroll {display:block; height:100%; overflow:hidden;}
* {letter-spacing:-1px; font-weight:400; line-height:1.0; word-break:keep-all;}
.wrap * {font-family:'NanumSquareNeo'; font-weight:400; font-size:18px;}
.embed-container { position: relative; padding-bottom: 56.25%; height: 0; overflow: hidden; max-width: 100%; height: auto; } 
.embed-container iframe, .embed-container object, .embed-container embed , .embed-container video { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }
.evWrap {position:relative; overflow:hidden;}
.evWrap .subDim {position:absolute; left:0; top:0; width:100%; height:100%; background:rgba(0, 0, 0, 0.3); z-index:51; display:none;}

.gloHeader {display:flex; justify-content:space-between; align-items:center; position:absolute; left:0; top:0; padding:50px 80px; width:100%; z-index:100;}
.gloHeader .brand a {display:block; width:127px; height:54px; background:url(../../../img/logo_mt_all.svg) no-repeat 50% 50%; background-size:100%;}
.gloHeader .gloUtil {display:flex; justify-content:flex-start; align-items:center; gap:17px;}
.gloHeader .gloUtil .account {display:flex; justify-content:flex-start; align-items:center; gap:26px;}
.gloHeader .gloUtil .account .txtMenu {display:block; position:relative;}
.gloHeader .gloUtil .account .txtMenu a {display:block; color:#000; font-size:14px; font-weight:500; padding:12px 14px; border-radius:50px; border:1px solid #000;}
.gloHeader .gloUtil .logo a {display:block; width:75px; height:21px; background:url(../../../img/logo_miraen_kr.svg) no-repeat 50% 50%;}

.gloHeader.white .gloUtil .account .txtMenu a {color:#FFF; border:1px solid #FFF;}
.gloHeader.white .gloUtil .logo a {display:block; width:75px; height:21px; background:url(../../../img/logo_miraen_kr_w.svg) no-repeat 50% 50%; background-size:100%;}

/** 이벤트 하단 공통 **/
.eventCauSec {background:#331D0A; position:relative; z-index:10;}
.eventCauSec .innerCon {padding:90px 0; width:100%; max-width:1200px; margin:0 auto;}

.cauCon {display:block; height:auto; overflow:hidden;}
.cauCon .title {color:#FFF; font-size:40px; font-weight:900; margin-bottom:30px; display:flex; align-items:center; gap:8px;}
.cauCon .title:before {content:''; width:43px; height:43px; background:url(../img/ico_cau.svg) no-repeat 50% 50%; background-size:100%; margin:0 10px 5px 0;}
.cauCon .cauBox {display:block; height:auto; overflow:hidden; margin-bottom:30px; padding-left:10px;}
.cauCon .cauBox .caTitle {color:#FFF; font-size:22px; padding-left:0px; position:relative; font-weight:500; margin-bottom:10px;}
.cauCon .cauBox li {display:block; height:auto; overflow:hidden; padding:4px 0 4px 35px; font-size:22px; position:relative; color:#FFF; line-height:1.6; font-weight:400;}
.cauCon .cauBox li a {color:#FFE77A; font-weight:500; font-size:22px; line-height:1.6; text-decoration:underline;}
.cauCon .cauBox li:after {content:''; position:absolute; left:20px; top:18px; width:5px; height:1px; background:#FFF;}
.cauCon .cauBox li em {color:#FFF;}
.cauCon .cauBox li.cauMidTitle {color:#222; font-size:18px; margin-bottom:5px; padding-left:15px;}
.cauCon .cauBox li.cauMidTitle.device {margin-top:15px;}
.cauCon .cauBox li.cauMidTitle:after {background:none;}
.cauCon .cauBox li.simple:after {display:none;}

/** paging **/
.pagingWrap {display:flex; justify-content:center; align-items:center; gap:5px; margin:60px 0;}
.pagingWrap a {display:inline-flex; justify-content:center; align-items:center; border-radius:50%; color:#000; font-size:16px; width:40px; height:40px; line-height:1.0; font-weight:400;}
.pagingWrap a.dir {border:2px solid transparent; width:30px;}
.pagingWrap a.dir.first {background:url(../../../img/btn_dir_end.svg) no-repeat 50% 50%; background-size:auto 36px; transform:rotate(180deg);}
.pagingWrap a.dir.forward {background:url(../../../img/btn_dir.svg) no-repeat 50% 50%; background-size:auto 36px; transform:rotate(180deg);}
.pagingWrap a.dir.back {background:url(../../../img/btn_dir_end.svg) no-repeat 50% 50%; background-size:auto 36px;}
.pagingWrap a.dir.backword {background:url(../../../img/btn_dir.svg) no-repeat 50% 50%; background-size:auto 36px;}
.pagingWrap a.on {background:#5A371E; color:#FFF; font-weight:700; position:relative;}

.forDesk {display:block;}
.forPc {display:block;}
.forMo {display:none;}

.jconfirm .jconfirm-box div.jconfirm-content-pane .jconfirm-content div {height:auto; padding:5px 0;}

/******* btn *******/
a.pBtn {display:flex; justify-content:center; align-items:center; padding:28px 0; gap:8px; color:#FFF; font-size:28px; font-weight:600; position:relative; border-radius:8px; width:100%; max-width:454px;}
a.pBtn:after {content:''; width:11px; height:22px; background:url(../img/ar_tail_w.svg) no-repeat 50% 50%; background-size:100%;}
a.pBtn.policy {background:#000;}
a.pBtn.mypoint {background:#FF4A73;}

/*
a.goTop {position:fixed; right:24px; bottom:24px; width:66px; height:66px; border-radius:50%; background:#2F2C29; display:flex; justify-content:center; align-items:center; flex-direction:column; color:#FFF; font-size:15px; font-weight:600; text-align:center; gap:8px;  z-index:1000; opacity:1; transform:translateX(0); transition:.4s all;}
a.goTop:before {content:''; width:18px; height:11px; background:url(../../../img/ar_top.svg) no-repeat 50% 50%; background-size:100%; flex:0 0 auto;}
a.goTop.hide {opacity:0; transform:translateX(120px);}
*/
/******************** 공통 ********************/

/******************** 개별 이벤트 ********************/
.quickFloat {position:fixed; left:32px; top:50%; transform:translate(0, -50%); width:146px; height:319px; background:url(../img/quick_bg.svg) no-repeat 50% 50%; background-size:100%; z-index:100;}
.quickFloat .qMenu {width:calc(100% -  10px);  margin:0 auto;}
.quickFloat .qMenu ul {display:flex; flex-direction:column; margin-top:4px;}
.quickFloat .qMenu ul li {display:block;}
.quickFloat .qMenu ul li a {display:flex; justify-content:center; align-items:center; text-align:center; height:64px; color:#5A371E; font-size:18px; line-height:1.2; z-index:30;}
.quickFloat .qMenu ul li a.on {font-weight:800;}
.quickFloat .qMenu ul li.top a {height:52px; background:url(../img/quick_top.svg) no-repeat center top 24px;}

.innerCon {position:relative; width:100%; max-width:1200px; margin:0 auto; z-index:10;}
.evHead {position:relative; background:#FFF3E1 url(../img/ev_head_line.png) repeat-x left bottom; background-size:auto 25px; padding:90px 0;}
.evHead:after {content:''; position:absolute; left:0; top:50%; transform:translate(0, -50%); width:100%; height:70px; background:#FFEED4;}
.evHead:before {content:''; position:absolute; right:35%; top:0; width:70px; height:calc(100% - 25px); background:#FFEED4;}
.evHead .innerCon {max-width:1340px; background:url(../img/ev_head_deco.svg) no-repeat 50% 50%; background-size:cover;}
.evHead .flower01 {position:absolute; left:30px; bottom:-68px; z-index:20; animation: decoSway 9.5s cubic-bezier(.45,0,.55,1) infinite;}
.evHead .evHeadTitle {position:relative; width:100%; max-width:906px; margin:67px auto 0;}
.evHead .evHeadTitle .inBox {border-radius:4px; background:#FFF; z-index:10; position:relative; text-align:center; padding:60px 0 40px; z-index:10;}
.evHead .evHeadTitle .inBox:before {content:''; position:absolute; left:25%; top:0; width:25%; height:100%; background: linear-gradient(78deg, rgba(255, 255, 255, 0.00) 24.86%, #E4E4E4 143.39%);}
.evHead .evHeadTitle .inBox:after {content:''; position:absolute; right:-114px; bottom:0; width:164px; height:200px; background:url(../img/ev_head_charc.png) no-repeat 50% 50%; background-size:100%;}
.evHead .evHeadTitle .inBox > img {position:relative; z-index:10;}
.evHead .evHeadTitle .shadow {position:absolute; left:0; top:0; width:100%; height:100%; background:rgba(107, 0, 0, 0.1); transform:rotate(-1deg); border-radius:4px; z-index:3;}
.evHead .evHeadTitle .evHeadBg {position:absolute; left:0; top:0; width:100%; height:100%; background:#FF9AB0; transform:rotate(-3.5deg); border-radius:4px; z-index:1;}
.evHead .evHeadTitle .flower02 {position:absolute; right:-148px; top:-102px; z-index:2; animation: decoSway01 9.5s cubic-bezier(.45,0,.55,1) infinite;}
.evHead .evHeadTitle .decoRebon {position:absolute; left:50%; bottom:-36px; transform:translate(-50%, 0); width:77px; height:61px; background:url(../img/ev_head_rebon.svg) no-repeat 50% 50%; background-size:100%; z-index:20;}
.evHead .evHeadDesc {text-align:center; margin-top:48px; color:#5A371E; font-size:28px; font-weight:700; line-height:1.6;}
.evHead .evHeadDesc strong {font-weight:900; font-size:28px;}

.fadeUp {opacity:0; transform:translateY(40px); transition:opacity 1.2s cubic-bezier(0.22,1,0.36,1), transform 1.2s cubic-bezier(0.22,1,0.36,1);}
.fadeUp.on {opacity:1; transform:translateY(0);}
/* 좌우 흔들림 + 아주 미세 회전 */
@keyframes decoSway{
	0%   {transform: translate3d(0, 0, 0) rotate(0deg) scale(1);}
	25%  {transform: translate3d(20px, 0, 0) rotate(2.5deg) scale(1.05);}
	50%  {transform: translate3d(0, 0, 0) rotate(0deg) scale(1);}
	75%  {transform: translate3d(-20px, 0, 0) rotate(-2.5deg) scale(1.05);}
	100% {transform: translate3d(0, 0, 0) rotate(0deg) scale(1);}
}

@keyframes decoSway01{
	0%   {transform: translate3d(0, 0, 0) rotate(0deg) scale(1);}
	25%  {transform: translate3d(-20px, 0, 0) rotate(1.5deg) scale(1.05);}
	50%  {transform: translate3d(0, 0, 0) rotate(0deg) scale(1);}
	75%  {transform: translate3d(20px, 0, 0) rotate(-1.5deg) scale(1.05);}
	100% {transform: translate3d(0, 0, 0) rotate(0deg) scale(1);}
}

.comnEvSec {position:relative; padding:90px 0 80px;}
.comnEvSec .evTitleSec {position:relative; width:100%; max-width:854px; margin:0 auto;}
.comnEvSec .evTitleSec .evTitle {text-align:center;}
.comnEvSec .evTitleSec .evDescSec {position:relative; margin-top:20px;}
.comnEvSec .evTitleSec .evDescSec:after {content:''; position:absolute; left:0; top:calc(50% - 5px); transform:translate(0, -50%); width:100%; height:1px; background:#FFA3B0;}
.comnEvSec .evTitleSec .evDescSec:before {content:''; position:absolute; left:0; top:calc(50% + 5px); transform:translate(0, -50%); width:100%; height:1px; background:#FFA3B0;}
.comnEvSec .evTitleSec .evDescSec .per {position:relative; color:#215F2B; font-size:62px; text-align:center; line-height:1.0; font-family:'RomanticGumi'; padding:20px 0;}
.comnEvSec .evTitleSec .evDescSec .per:after {content:''; position:absolute; left:0; top:-5px; width:100%; height:1px; background:#FFA3B0;}
.comnEvSec .evTitleSec .evDescSec .per:before {content:''; position:absolute; left:0; top:5px; transform:translate(0, -50%); width:100%; height:1px; background:#FFA3B0;}
.comnEvSec .evTitleSec .evDescSec .per:last-of-type:after {content:''; position:absolute; left:0; top:unset; bottom:-5px; width:100%; height:1px; background:#FFA3B0;}
.comnEvSec .evTitleSec .evDescSec .per:last-of-type:before {content:''; position:absolute; left:0; top:unset; bottom:5px; width:100%; height:1px; background:#FFA3B0;}
.comnEvSec .evTitleSec .evDescSec.heart .per {color:#653E22;}
.comnEvSec .evTitleSec .evTxt {text-align:center; margin:36px 0; color:#5A371E; font-size:28px; font-weight:700; line-height:1.4;}
.comnEvSec .target {display:flex; justify-content:center; align-items:center; gap:52px;}
.comnEvSec .target li {display:flex; gap:16px; align-items:center;}
.comnEvSec .target li .item {padding:10px 32px; color:#FFF; font-size:24px; font-weight:900; background:#F35B5B; border-radius:100px;}
.comnEvSec .target li .ipCon {color:#414042; font-size:24px; letter-spacing:0;}
.comnEvSec .cTitleSec {position:relative; margin-bottom:42px; text-align:center;}
.comnEvSec .cTitleSec .cTitle {display:inline-block; position:relative; background:#FFF8ED; border-radius:4px; color:#653E22; font-size:48px; line-height:1.0; font-family:'RomanticGumi'; padding:10px 56px;}
.comnEvSec .cTitleSec .cTitle:before {content:''; position:absolute; left:-8px; top:-8px; width:48px; height:46px; background:url(../img/t_sticker.svg) no-repeat 50% 50%; background-size:100%;}
.comnEvSec .cTitleSec .cTitle:after {content:''; position:absolute; right:-8px; bottom:-8px; width:48px; height:46px; background:url(../img/t_sticker.svg) no-repeat 50% 50%; background-size:100%; transform:rotate(180deg);}

.comnEvSec.sec01:after {content:''; position:absolute; left:0; bottom:0; width:100%; height:37px; background:#FF9AB0; z-index:1;}
.comnEvSec.sec01 .lt {position:absolute; left:0; top:0; width:504px; height:153px; background:url(../img/sec02_deco.png) no-repeat 50% 50%; background-size:100%;}
.comnEvSec.sec01 .rt {position:absolute; right:0; top:0; width:504px; height:153px; background:url(../img/sec02_deco.png) no-repeat 50% 50%; background-size:100%; transform:scaleX(-1);}
.comnEvSec.sec01 .lb {position:absolute; left:12%; bottom:226px; width:182px; height:159px; background:url(../img/sec02_box01.svg) no-repeat 50% 50%; background-size:100%;}
.comnEvSec.sec01 .rb {position:absolute; right:5%; bottom:137px; width:310px; height:296px; background:url(../img/sec02_box02.svg) no-repeat 50% 50%; background-size:100%;}
.comnEvSec.sec01 .innerCon {max-width:1200px; z-index:20;}
.comnEvSec.sec01 .btmBar {position:absolute; left:0; bottom:0; width:100%; height:230px; background:#FFBBCA;}
.comnEvSec.sec01 .giftImg {margin:46px auto 0; position:relative; max-width:1000px;}
.comnEvSec.sec01 .giftImg .txt {position:absolute; left:0; bottom:55px; width:100%; color:#FFF; font-size:32px; font-weight:900; text-align:center;}

.comnEvSec.sec02 {background:#FFE3E9; padding:120px 0; z-index:10;}
.comnEvSec.sec02:before {content:''; position:absolute; left:0; bottom:24%; width:250px; height:295px; background:url(../img/sec03_deco02.svg) no-repeat 50% 50%; background-size:100%;}
.comnEvSec.sec02:after {content:''; position:absolute; right:6%; bottom:-220px; width:265px; height:353px; background:url(../img/sec04_deco01.svg) no-repeat 50% 50%; background-size:100%; animation: decoSway01 9.5s cubic-bezier(.45,0,.55,1) infinite;}
.comnEvSec.sec02 .innerCon {max-width:1200px;}

.comnEvSec.sec03 {padding:120px 0; background:url(../img/sec04_bg.svg) no-repeat 50% 50%;}

.comnEvSec.sec04 {padding:120px 0; background:#FFF6E9;}
.evTitleTxt {display:flex; justify-content:center; align-items:center; gap:12px; margin-bottom:60px;}
.evTitleTxt p {display:flex; justify-content:center; align-items:center; gap:12px; color:#653E22; font-size:48px; font-family:'RomanticGumi'; line-height:1.0;}
.evTitleTxt p img {margin-bottom:6px;}

.comnEvSec.sec05 {padding:120px 0; background:#FFE3E9;}
.comnEvSec.sec05 .cTitleSec .cTitle {background:#FFF;}

.comnEvSec.sec06 {padding:120px 0; background:#FFF url(../img/ptn.png) repeat left top;}
.comnEvSec.sec06 .innerCon {max-width:1036px;}

.comnEvSec.sec07 {padding:90px 0; background:#FF9AB0;}
.comnEvSec.sec07 .innerCon {max-width:1070px;}

.giftKind {display:flex; gap:16px; align-items:flex-end;}
.giftKind .perGift {width:calc(25% - 12px); position:relative;}
.giftKind .perGift:after {content:''; position:absolute; right:-50px; top:-34px; width:85px; height:43px; background:url(../img/ar_step.svg) no-repeat 50% 50%; background-size:100%;}
.giftKind .perGift:nth-child(3):after {top:-8px;}
.giftKind .perGift:last-child:after {display:none;}
.giftKind .perGift .giftBox {position:relative; background:url(../img/obj_post_back.svg) no-repeat left bottom 43px; background-size:100% 211px; padding:0 25px 24px; overflow:hidden;}
.giftKind .perGift .giftBox .postFront {position:absolute; left:0; bottom:0; width:100%; height:172px; background:url(../img/obj_post_front.svg) no-repeat left bottom; background-size:100%; z-index:1; text-align:center}
.giftKind .perGift .giftBox .postFront img.target {margin:36px auto 0;}
.giftKind .perGift .giftBox .img {opacity:0; display:block; transform:translateY(80px); transition:.8s all;}
.giftKind .perGift .giftBox .img.on {opacity:1.0; display:block; transform:translateY(0px);}
.giftKind .perGift .txt {height:56px; text-align:center; margin-top:12px; color:#5A371E; font-size:20px; font-weight:700; line-height:1.4;}


.evFormSec {position:relative;}
.evFormSec:after {content:''; position:absolute; right:-180px; bottom:70px; width:291px; height:238px; background:url(../img/sec03_deco01.svg) no-repeat 50% 50%; background-size:100%; z-index:20; animation: decoSway 9.5s cubic-bezier(.45,0,.55,1) infinite;}
.evFormSec .shadowBox {position:relative;}
.evFormSec .shadowBox:after {content:''; position:absolute; left:-8px; top:0; width:101%; height:100%; background:#FFBBCA; border-radius:4px; transform:rotate(2deg);}
.evFormSec .inForm {position:relative; padding:24px 24px 24px 348px; background:#FFF; border-radius:4px; z-index:10;}
.evFormSec .agreeSec {text-align:center; margin:44px 0;}
.evFormSec .agreeSec .comnChk {color:#808080; font-size:22px; font-weight:700; line-height:1.4;}

.imgAttachForm {position:absolute; left:24px; top:24px; width:300px;}
.imgAttachForm input[type="file"] {position:absolute; left:-9999px; width:1px; height:1px; overflow:hidden;}
.imgAttachForm .attachGrid {display:block;}
.imgAttachForm .thumbBox {position:relative; border:1px dashed #AAA; background:#F8F8F8; border-radius:4px; overflow:hidden; cursor:pointer;}
.imgAttachForm .mainThumb {width:100%; position:relative;}
.imgAttachForm .mainThumb:after {content:''; display:block; height:auto; padding-bottom:100%;}
.imgAttachForm .subThumbs {display:flex; gap:24px; margin-top:24px;}
.imgAttachForm .subThumb {flex:1 1 0; position:relative;}
.imgAttachForm .subThumb:after {content:''; display:block; height:auto; padding-bottom:100%;}
.imgAttachForm .thumbBox img {display:none; width:100%; height:100%; object-fit:cover;}
.imgAttachForm .thumbEmpty {position:absolute; top:50%; left:50%; width:30px; height:30px; transform:translate(-50%, -50%); background:url(../img/ico_img.svg) no-repeat 50% 50%; background-size:100%;}
.imgAttachForm .mainThumb .thumbEmpty {width:60px; height:60px; background:url(../img/ico_img.svg) no-repeat 50% 50%; background-size:100%;}
.imgAttachForm .thumbBox.isFilled {background:#FFF;}
.imgAttachForm .thumbBox.isFilled img {display:block; position:absolute; left:50%; top:50%; transform:translate(-50%, -50%); width:100%; height:auto;}
.imgAttachForm .thumbBox.isFilled .thumbEmpty {display:none;}
.imgAttachForm .btnDel {display:none; position:absolute; top:6px; right:6px; z-index:2; width:24px; height:24px; border:none; border-radius:50%; background:rgba(0,0,0,0.6); color:#fff; font-size:16px; line-height:24px; text-align:center; cursor:pointer;}
.imgAttachForm .thumbBox.isFilled .btnDel {display:block;}

.inputForm {flex:1;}
.inputForm .txtEdit {position:relative; border:1px solid #aaa; border-radius:4px;}
.inputForm .txtEdit textarea {display:block; width:100%; height:251px; background:transparent; border:0; padding:24px; color:#333; font-size:22px; line-height:1.3;}
.inputForm .txtEdit .inputByte {display:block; text-align:right; margin:0 24px 24px 0; text-align:right; color:#999; font-size:22px;}
.inputForm .joinCau {position:relative; margin-top:24px;}
.inputForm .joinCau li {display:block; position:relative; padding-left:14px; color:#9B9B9B; font-size:18px; line-height:1.5;}
.inputForm .joinCau li:after {content:''; position:absolute; left:6px; top:6px; width:4px; height:1px; background:#9B9B9B;}
.inputForm .joinCau li.jcTitle {font-weight:700; padding:0;}
.inputForm .joinCau li.jcTitle:after {display:none;}
.inputForm .joinCau li.tRed {color:#FE6D6D;}
.inputForm .joinCau li.tRed:after {background:#FE6D6D;}

.comnChk {display:inline-flex; justify-content:flex-start; align-items:center; gap:32px;}
.comnChk input {display:flex; justify-content:flex-start; align-items:center; gap:0px; cursor:pointer; width:0; height:0; position:relative;}
.comnChk input:before {content:''; width:28px; height:28px; background:url(../img/bg_chk_off.svg) no-repeat 50% top; background-size:24px; flex:0 0 auto;}
.comnChk input:checked:before {content:''; background:url(../img/bg_chk_on.svg) no-repeat left top; background-size:24px;}

.evRvListSec {position:relative; margin-top:80px;}
.rvListWrap {position:relative; padding:0 86px;}
.rvListWrap .rv-prev {position:absolute; left:0; top:50%; transform:translate(0, -50%) rotate(180deg); width:60px; height:60px; background:url(../img/dir_on.svg) no-repeat 50% 50%; background-size:100%; cursor:pointer;}
.rvListWrap .rv-next {position:absolute; right:0; top:50%; transform:translate(0, -50%); width:60px; height:60px; background:url(../img/dir_on.svg) no-repeat 50% 50%; background-size:100%; cursor:pointer;}
.rvListWrap .swiper-button-disabled {background:url(../img/dir_off.svg) no-repeat 50% 50%; background-size:100%;}
.rvListWrap .rvList {position:relative; overflow:hidden;}
.rvListWrap .rvList .rvGroup {display:flex; flex-flow:row wrap; gap:4px; padding:20px; background:#FFF; border-radius:4px;}
.rvListWrap .rvList .rvGroup .perRv {width:calc(25% - 3px); position:relative; border-radius:4px; overflow:hidden; background:#F8F8F8;}
.rvListWrap .rvList .rvGroup .perRv:after {content:''; display:block; height:auto; padding-bottom:100%;}
.rvListWrap .rvList .rvGroup .perRv .hoverCont {position:absolute; left:0; top:0; width:100%; height:100%; background:rgba(0, 0 ,0, 0.7); padding:0 16px; opacity:0; z-index:10; transition:.4s all;}
.rvListWrap .rvList .rvGroup .perRv .hoverCont .txt {color:#FFF; margin-top:56px; font-size:18px; line-height:1.4; height:62%; overflow:hidden; text-overflow:ellipsis; display: -webkit-box; word-wrap: break-word; -webkit-line-clamp: 6; -webkit-box-orient: vertical;}
/* .rvListWrap .rvList .rvGroup .perRv:hover .hoverCont {display:block;} */
.rvListWrap .rvList .rvGroup .perRv .rvFunc {position:absolute; right:12px; top:16px; display:flex; gap:8px; z-index:20;}
.rvListWrap .rvList .rvGroup .perRv .rvFunc > a {display:inline-block; padding:4px 10px; background:#FFF; border-radius:4px; color:#000; font-size:18px;}
.rvListWrap .rvList .rvGroup .perRv > a {display:block; position:absolute; left:0; top:0; width:100%; height:100%;}
.rvListWrap .rvList .rvGroup .perRv > a img {position:absolute; left:0; top:0; width:100%; height:100%; object-fit:cover; object-position:50% 50%;}


/* .rvListWrap {position:relative;}
.rvListWrap .rvList {overflow:hidden;}
.rvListWrap .rvList .swiper-slide {height:auto;}
.rvListWrap .rvList .rvGroup {display:flex; flex-wrap:wrap;}
.rvListWrap .rvList .perRv {box-sizing:border-box; width:25%;}
.rvListWrap .rvList .perRv:empty {display:block; min-height:1px;} */


.btnArea {display:flex; justify-content:center; align-items:center; gap:10px;}
a.btn {display:inline-flex; justify-content:center; align-items:center; gap:10px; padding:20px 36px; color:#FFF; font-size:24px; font-weight:800; background:#5A371E; border-radius:8px;}

.popProud {position:fixed; left:50%; top:50%; width:100%; transform:translate(-50%, -50%); max-width:612px; height:auto; z-index:2000; display:none;}
.popProud:after {content:''; position:absolute; left:50%; top:-34px; transform:translate(-50%, 0); width:183px; height:56px; background:url(../img/obj_sticker.svg) no-repeat 50% 50%; background-size:100%;}
.popProud .popClose {position:absolute; right:0; top:-48px; width:48px; height:48px; background:url(../img/ico_close.svg) no-repeat 50% 50%; background-size:100%; cursor:pointer;}
.popProud .inPopCont {background:#FFF; padding:36px; border-radius:4px; position:relative; height:auto; max-height:760px; overflow:hidden; overflow-y:auto;}
.popProud .inPopCont .popImgSec {position:relative;}
.popImgSec .img-prev {position:absolute; left:-20px; top:50%; transform:translate(0, -50%) rotate(180deg); width:40px; height:40px; background:url(../img/dir_on.svg) no-repeat 50% 50%; background-size:100%; cursor:pointer; z-index:10;}
.popImgSec .img-next {position:absolute; right:-20px; top:50%; transform:translate(0, -50%); width:40px; height:40px; background:url(../img/dir_on.svg) no-repeat 50% 50%; background-size:100%; cursor:pointer; z-index:10;}
.popImgSec .swiper-button-disabled {background:url(../img/dir_off.svg) no-repeat 50% 50%; background-size:100%;}

.popProud .inPopCont .popImgSec .thumb {display:block; margin-bottom:24px;}
.popProud .inPopCont .popImgSec .thumb .swiper-slide {position:relative;}
.popProud .inPopCont .popImgSec .thumb .swiper-slide:after {content:''; display:block; height:auto; padding-bottom:100%;}
.popProud .inPopCont .popImgSec .thumb .swiper-slide img {position:absolute; left:0; top:0; width:100%; height:100%; object-fit:cover; object-position:50% 50%;}
.popProud .inPopCont .inPopTxt {color:#414042; font-size:18px; font-weight:700; line-height:1.5; word-break:break-all;}
.popProud .inPopCont .inPopWriter {display:flex; justify-content:center; align-items:center; color:#414042; font-size:20px; margin-top:28px; gap:10px;}

.infoHeart {position:relative; display:flex; gap:14px; align-items:center; padding:30px 48px; background:#FFF; border-radius:2px; margin-top:50px;}
.infoHeart:after {content:''; position:absolute; left:10px; top:10px; border:1px solid #F4D6B3; border-radius:2px; width:calc(100% - 20px); height:calc(100% - 20px);}
.infoHeart:before {content:''; position:absolute; right:0; bottom:-1px; width:36px; height:38px; background:url(../img/info_corner.svg) no-repeat 50% 50%; background-size:100%; z-index:1;}
.infoHeart .imgSec {position:relative; z-index:10; width:343px; flex:0 0 auto;}
.infoHeart .txtSec {position:relative; z-index:10; width:calc(100% - 357px);}
.infoHeart .txtSec p {padding:0 5px;}
.infoHeart .txtSec .txt {color:#222; font-size:24px; font-weight:700; line-height:1.7; background:url(../img/t_line.png) repeat-x left bottom;}
.infoHeart .txtSec .txt strong {color:#222; font-size:24px; font-weight:900;}
.infoHeart .txtSec .txt01 {margin-top:10px; color:#999; font-size:24px; line-height:1.7; background:url(../img/t_line.png) repeat-x left top -4px;}

.howToBox {position:relative; margin-top:120px;}
.howToBox .howTo {display:flex; align-items:stretch; position:relative;}
.howToBox .howTo:after {content:''; position:absolute; left:50%; top:0; width:1px; height:100%; border-left:1px dashed #aaa;}
.howToBox .howTo .perHow {width:50%; position:relative; border-radius:4px; background:#FFF;}
.howToBox .howTo .perHow .hTitle {text-align:center; background:#DFF0FA; color:#5A371E; font-size:32px; font-weight:800; padding:15px; border-radius:4px 0 0 0;}
.howToBox .howTo .perHow .in {background:#FFF; padding:20px 0 24px;}
.howToBox .howTo .perHow .in .txt {text-align:center; color:#222; font-size:20px; line-height:1.4; font-weight:700; margin-bottom:20px;}
.howToBox .howTo .perHow .in .txt span {font-size:20px; color:#FF7593;}
.howToBox .howTo .perHow .in .img {padding:0 68px;}
.howToBox .howTo .perHow:last-child .hTitle {border-radius:0 4px 0 0;}

.rankingStats {position:relative; display:flex; align-items:stretch; gap:20px;}
.rankingStats:before {content:''; position:absolute; left:50%; top:25px; transform:translate(-50%, 0); width:94px; height:56px; background:url(../img/sec06_spring.svg) no-repeat 50% 50%; background-size:100%; z-index:30;}
.rankingStats .mapSec {position:relative; width:calc(50% - 10px);}
.rankingStats .mapSec:after {content:''; position:absolute; left:8px; bottom:-20px; width:calc(100% - 16px); height:47px; background:url(../img/sec06_back.png) no-repeat 50% 50%; background-size:cover;}
.rankingStats .mapSec .inMap {background:#FF9AB0; border-radius:2px; position:relative; padding:28px 24px 16px 24px; z-index:20; box-shadow: 0 4px 0 0 rgba(255, 117, 147, 0.80); z-index:20;}
.rankingStats .mapSec .inMap:before {content:''; position:absolute; left:0; top:0; width:42px; height:51px; background:url(../img/map_corner.svg) no-repeat 50% 50%; background-size:100%; z-index:1;}
.rankingStats .mapSec .inMap .mTitie {color:#5A371E; font-size:24px; font-weight:900; text-align:center;}
.rankingStats .mapSec .inMap .koreaMap {position:relative; width:100%; max-width:542px; margin:0 auto;}
.rankingStats .mapSec .inMap .koreaMap .mapSvg {position:relative; width:100%;}
.rankingStats .mapSec .inMap .koreaMap .mapSvg svg {display:block; width:100%; height:auto;}
.rankingStats .mapSec .inMap .koreaMap .mapSvg.base {position:relative; z-index:1;}
.rankingStats .mapSec .inMap .koreaMap .mapSvg.overlay {position:absolute; left:0; top:0; width:100%; z-index:2; pointer-events:none;}
.rankingStats .mapSec .inMap .koreaMap .mapSvg.overlay svg g[id$="_on"] {display:none;}
.rankingStats .mapSec .inMap .koreaMap .mapSvg.overlay svg g[id$="_on"].is-hover,
.rankingStats .mapSec .inMap .koreaMap .mapSvg.overlay svg g[id$="_on"].is-active {display:block;}
.rankingStats .mapSec .inMap .koreaMap .mapSvg.base svg g[id^="sec_"] {cursor:pointer;}
.rankingStats .mapSec .inMap .koreaMap .mapSvg.base svg text {pointer-events:none;}
.rankingStats .mapSec .inMap .koreaMap .mapSvg.base svg [id^="line"] {pointer-events:none;}
.rankingStats .mapSec .inMap .koreaMap .mapSvg.overlay svg text {pointer-events:none;}
.rankingStats .mapSec .inMap .koreaMap .mapSvg.overlay svg [id^="line"] {pointer-events:none;}
.rankingStats .mapSec .inMap .koreaMap .mapError {padding:20px; text-align:center; color:#666; border:1px solid #ddd; border-radius:12px;}

.rankingStats .schoolInfo {position:relative; width:calc(50% - 10px);}
.rankingStats .schoolInfo:after {content:''; position:absolute; left:8px; bottom:-20px; width:calc(100% - 16px); height:47px; background:url(../img/sec06_back.png) no-repeat 50% 50%; background-size:cover;}
.rankingStats .schoolInfo:before {content:''; position:absolute; right:-61px; top:67px; width:130px; height:107px; background:url(../img/sec06_deco01.svg) no-repeat 50% 50%; background-size:100%;}
.rankingStats .schoolInfo .inCont {background:#FFF; border-radius:2px; position:relative; padding:64px 52px 40px 52px; z-index:20; box-shadow: 0 4px 0 0 rgba(255, 117, 147, 0.50); z-index:20; height:100%;}
.rankingStats .schoolInfo .inCont:after {content:''; position:absolute; right:-110px; bottom:-90px; width:225px; height:215px; background:url(../img/sec06_deco02.svg) no-repeat 50% 50%; background-size:100%; z-index:30; animation: decoSway 9.5s cubic-bezier(.45,0,.55,1) infinite;}
.rankingStats .schoolInfo .inCont .scTitle {text-align:center; color:#653E22; font-size:32px; font-weight:900; margin-bottom:16px;}
.rankingStats .schoolInfo .inCont .grade {display:flex; justify-content:center; align-items:center; gap:10px;}
.rankingStats .schoolInfo .inCont .grade a {display:block; padding:6px 20px; color:#F35B5B; font-size:18px; font-weight:700; border:1px solid #F35B5B; border-radius:100px;}
.rankingStats .schoolInfo .inCont .grade a.on {color:#FFF; background:#F35B5B;}
.rankingStats .schoolInfo .inCont .grade a.on:hover {color:#FFF; background:#F35B5B;}
.rankingStats .schoolInfo .inCont .grade a:hover {background:#fff6f6;}
.rankingStats .schoolInfo .inCont .rankingList {display:flex; flex-direction:column; border-bottom:1px solid #ddd; margin-top:24px;}
.rankingStats .schoolInfo .inCont .rankingList ul {display:flex; align-items:stretch; border-top:1px solid #ddd; width:100%;}
.rankingStats .schoolInfo .inCont .rankingList ul li {padding:16px 10px; color:#222; font-size:18px; font-weight:500; border-right:1px solid #ddd;}
.rankingStats .schoolInfo .inCont .rankingList ul li:last-child {border-right:0; width:120px;}
.rankingStats .schoolInfo .inCont .rankingList ul li.rank {width:80px; display:flex; justify-content:center; align-items:center; font-weight:900; gap:4px; flex:0 0 auto;}
.rankingStats .schoolInfo .inCont .rankingList ul li.school {width:calc(100% - 200px); line-height:1.3;}
.rankingStats .schoolInfo .inCont .shareTxt {margin-top:36px; display:flex; justify-content:center; align-items:center; color:#653E22; font-size:32px; font-weight:900; gap:20px; position:relative; z-index:40;}
.rankingStats .schoolInfo .inCont .cauTxt {color:#777; font-size:18px; display:flex; align-items:center; justify-content:center; position:relative; gap:4px; margin-top:14px;}
.rankingStats .schoolInfo .inCont .cauTxt:before {content:'※';}

.joinSec {margin-top:140px; position:relative;}
.joinSec:before {content:''; position:absolute; left:50%; top:94px; transform:translate(-50%, 0); width:85px; height:67px; background:url(../img/sec06_rebon.svg) no-repeat 50% 50%; background-size:100%; z-index:30;}
.joinSec .joinFormBox {position:relative; border:16px solid #FFBCCB; background:#FFF; padding:44px;}
.joinSec .joinFormBox .deco01 {position:absolute; left:-82px; bottom:-40px; width:136px; height:119px; background:url(../img/sec06_box01.svg) no-repeat 50% 50%; background-size:100%;}
.joinSec .joinFormBox .deco02 {position:absolute; right:-170px; bottom:-40px; width:219px; height:150px; background:url(../img/sec06_box02.svg) no-repeat 50% 50%; background-size:100%;}
.joinSec .joinFormBox .mySchool {display:flex; gap:34px; border-bottom:1px dashed #B29E90; padding-bottom:40px; margin-bottom:40px;}
.joinSec .joinFormBox .mySchool .perBlock {width:calc(50% - 17px);}
.joinSec .pbTitle {color:#653E22; font-size:32px; font-weight:900; margin-bottom:16px;}
.joinSec .pbTitle span {color:#FE6D6D; font-size:22px; font-weight:800; margin-left:10px;}
.schoolSearch {position:relative;}
.schoolSearch .schForm {position:relative; border:1px solid #414042; border-radius:2px; display:flex; align-items:center; gap:10px; padding:0 16px;}
.schoolSearch .schForm input[type="text"] {flex:1; height:56px; border:0; padding:0; color:#222; font-size:16px; font-weight:700;}
.schoolSearch .schForm button {width:24px; height:24px; background:url(../img/ico_search.svg) no-repeat 50% 50%; background-size:100%; text-indent:-9999px; cursor:pointer;}
.schoolSearch .resultForm {position:absolute; left:0; top:56px; width:100%; height:200px; background:#FFF; overflow:hidden; overflow-y:auto; border:1px solid #414042; padding:10px; z-index:30; display:none;}
.schoolSearch .resultForm table {padding:0; margin:0; width:100%; table-layout:fixed;}
.schoolSearch .resultForm table th, .schoolSearch .resultForm table td {border-bottom:1px solid #ddd; padding:10px; font-size:16px; line-height:1.3;}
.schoolSearch .resultForm table td a {display:block; color:#222; font-size:16px; line-height:1.3;}

.joinSec .joinFormBox .makeCard {display:flex; gap:0px 34px; flex-wrap:wrap;}
.joinSec .joinFormBox .makeCard .pbTitle {width:100%;}
.joinSec .joinFormBox .makeCard .cardEdit {width:calc(50% - 17px); position:relative; flex:0 0 auto;}
.joinSec .joinFormBox .makeCard .cardEdit:after {content:''; display:block; height:auto; padding-bottom:100%;}
.joinSec .joinFormBox .makeCard .cardEdit > img.choiceImg {position:absolute; left:50%; top:50%; width:100%; height:100%; transform:translate(-50%, -50%);}
.joinSec .joinFormBox .makeCard .cardEdit .editTxt {position:absolute; left:0; top:34px; padding:0 24px; width:100%; z-index:1; text-align:center;}
.joinSec .joinFormBox .makeCard .cardEdit .editTxt textarea {text-align:center; line-height:1.3; color:#000; font-size:30px; height:140px; font-weight:700; background:transparent; border:0; white-space:pre-line;}
.joinSec .joinFormBox .makeCard .cardEdit .editTxt a.btnEdit {display:inline-flex; align-items:center; gap:8px; color:#000; font-size:20px; padding:10px 16px; border:1px solid #aaa; border-radius:2px; background:#FFF;}
.joinSec .joinFormBox .makeCard .cardEdit .editTxt a.btnEdit:before {content:''; width:14px; height:15px; background:url(../img/sec06_t.svg) no-repeat 50% 50%; background-size:100%;}
.joinSec .joinFormBox .makeCard .cardEdit.cardBg01 {background:#F0F0F0;}
.joinSec .joinFormBox .makeCard .cardEdit.cardBg02 {background:#E0EDD3;}
.joinSec .joinFormBox .makeCard .cardEdit.cardBg03 {background:#FFE4EA;}
.joinSec .joinFormBox .makeCard .cardEdit.cardBg04 {background:#FFF3E1;}
.joinSec .joinFormBox .makeCard .cardEdit.cardBg05 {background:#F0E6FC;}
.joinSec .joinFormBox .makeCard .cardEdit.cardBg06 {background:#DFF0FA;}
.joinSec .joinFormBox .makeCard .cardArea {width:calc(50% - 17px); position:relative; flex:0 0 auto;}
.joinSec .joinFormBox .makeCard .cardArea .cardList {display:flex; gap:8px; flex-wrap:wrap;}
.joinSec .joinFormBox .makeCard .cardArea .cardList a {display:block; width:calc(33.33334% - 5.4px); border-radius:2px; overflow:hidden;}
.joinSec .joinFormBox .makeCard .cardArea .cardList a.on {border:2px solid #5A371E;}
.joinSec .joinFormBox .makeCard .cardArea .btnArea {display:flex; justify-content:center; align-items:center; gap:10px; margin-top:44px;}

.myTags {display:flex; gap:8px; padding:8px 0;}
.myTags span {color:#FC5F5F; font-size:20px; font-weight:800; padding:10px 20px; background:#FFE5EA; border-radius:100px;}

.joinTab {display:flex; justify-content:center; align-items:center; gap:10px; margin-bottom:60px;}
.joinTab a {display:block; color:#5A371E; font-size:24px; font-weight:700; height:46px; line-height:46px; border-radius:100px; background:transparent; padding:0 20px;}
.joinTab a.on {background:#5A371E; color:#FFF; font-weight:700;}

.joinList {display:flex; gap:8px; flex-wrap:wrap;}
.joinList .perJoin {width:calc(33.33334% - 5.4px); position:relative;}
.joinList .perJoin > div, .joinList .perJoin > p {position:absolute;}
.joinList .perJoin .tags {left:16px; top:16px; width:100%;}
.joinList .perJoin .tags span {display:inline-block; color:#414042; font-size:16px; font-weight:700; padding:6px 12px; background:#FFF; border-radius:100px; min-width:0; max-width:46%; overflow:hidden; text-overflow:ellipsis; white-space:nowrap;}
.joinList .perJoin .jTxt {left:0; top:70px; width:100%; height:100px; display:flex; justify-content:center; align-items:center; text-align:center; color:#000; font-size:24px; font-weight:700; line-height:1.4; word-break:break-all; padding:0 10px;}
.joinList .perJoin .writer {left:0; bottom:16px; width:100%; display:flex; justify-content:center; align-items:center; gap:10px;}
.joinList .perJoin .writer span {color:#7C7C7C; font-size:16px; font-weight:500;}

.perJoin .funcBtn {position:absolute; right:16px; top:20px;}
.perJoin .funcBtn > a.icoFunc {display:block; width:20px; height:20px; background:url(../img/ico_func.svg) no-repeat 50% 50%; background-size:100%;}
.perJoin .funcBtn .btns {display:none; position:absolute; right:0; top:26px; background:#FFF; border-radius:4px; box-shadow: 0px 0px 8px 0 rgba(0, 0, 0, 0.2); z-index:10;}
.perJoin .funcBtn .btns a {display:block; position:relative; color:#231815; font-size:16px; padding:8px 25px;}
.perJoin .funcBtn .btns a:hover {background:#f0f0f0;}
.perJoin .funcBtn .btns a:after {content:''; position:absolute; left:0; bottom:0; width:100%; height:1px; background:#E6E6E6;}
.perJoin .funcBtn .btns a:last-child:after {display:none;}

.newJoinBox {display:flex; justify-content:center; align-items:center; text-align:center; background:url(../img/sec07_bg.png) no-repeat 50% 50%; width:100%; max-width:1070px; height:430px; margin:0 auto; background-size:100% auto; position:relative;}
.newJoinBox:before {content:''; position:absolute; left:-60px; bottom:0; width:231px; height:426px; background:url(../img/sec07_deco01.svg) no-repeat 50% 50%; background-size:100%; animation: decoSway 9.5s cubic-bezier(.45,0,.55,1) infinite;}
.newJoinBox:after {content:''; position:absolute; right:-36px; bottom:5px; width:204px; height:335px; background:url(../img/sec07_deco02.svg) no-repeat 50% 50%; background-size:100%;}
.newJoinBox .njTitle {color:#5A371E; font-size:40px; font-weight:900; line-height:1.4;}
.newJoinBox .njDesc {color:#5A371E; font-size:28px; font-weight:700; line-height:1.4; margin:8px 0 24px;}

.emptyTxt {text-align:center; padding:120px 20px; color:#5A371E; font-size:24px; font-weight:600; flex:1; line-height:1.4;}
.emptyTxt br {display:none;}

@media (hover: hover) and (pointer: fine) {
	.rvListWrap .rvList .rvGroup .perRv:hover .hoverCont {
		opacity:1.0;
	}
}

@media only screen and (max-width:1200px) {
	.gloHeader {padding:20px;}
	.evInner {padding:0 20px;}
	.eventCauSec .innerCon {padding:90px 20px;}
}

@media only screen and (max-width:1024px) {
	.forDesk {display:none !important;}
	.forMo {display:block;}

	.gloHeader {padding:15px;}
	.gloHeader .brand a {width:64px; height:28px;}
	.gloHeader .gloUtil {gap:16px;}
	.gloHeader .gloUtil .logo a {width:75px !important; height:22px !important; background-size:100% auto !important;}
	.gloHeader .gloUtil .account .txtMenu a {font-size:12px; padding:6px 12px;}

	#mo-footer {margin-top:0;}
	#mo-footer .mo-ft-top {padding-top:0;}

	.eventCauSec .innerCon {padding:30px 20px;}
	.cauCon {margin-top:0px;}
	.cauCon .title {font-size:18px; margin-bottom:20px;}
	.cauCon .title:before {width:18px; height:18px; vertical-align:-2px; margin-right:5px;}
	.cauCon .cauBox {padding-left:11px;}
	.cauCon .cauBox:last-child {margin-bottom:0;}
	.cauCon .cauBox .caTitle {font-size:16px; padding-left:10px; margin-bottom:5px;}
	.cauCon .cauBox .caTitle:after {width:4px; height:4px; top:7px;}
	.cauCon .cauBox li {font-size:14px; line-height:1.3; padding:4px 0 4px 10px;}
	.cauCon .cauBox li:after {left:0px; top:11px;}

	/*********** 개별 이벤트  **************/
	.quickFloat {display:none;}
	.evHead {padding:44px 0 60px; background-size:auto 13px; overflow:hidden;}
	.evHead:before {width:24px; height:calc(100% - 13px);}
	.evHead:after {height:24px;}
	.evHead .innerCon {padding:0 30px;}
	.evHead .evHeadTitle .inBox {padding: 30px 30px 0;}
	.evHead .evHeadTitle .inBox:before {width:50%; left:0%;}
	.evHead .evHeadTitle .inBox:after {width:60px; height:73px; right:-42px;}
	.evHead .evHeadTitle .decoRebon {width:36px; height:29px; bottom:-16px;}
	.evHead .flower01 {left:-70px; bottom:unset; top:20px;}
	.evHead .flower01 img {width:40%;}
	.evHead .evHeadTitle .flower02 {right:-324px; top:-44px;}
	.evHead .evHeadTitle .flower02 img {width:40%;}
	.evHead .evHeadDesc {font-size:16px; margin-top:30px;}
	.evHead .evHeadDesc strong {font-size:16px;}

	.comnEvSec.sec01 {overflow:hidden;}
	.comnEvSec.sec01 .lt {width:165px; height:50px; left:-40px;}
	.comnEvSec.sec01 .rt {width:165px; height:50px; right:-40px;}

	.comnEvSec {padding:60px 0;}
	.comnEvSec .evTitleSec {padding:0 16px;}
	.comnEvSec .evTitleSec .evTitle {width:180px; margin:0 auto;}
	.comnEvSec .evTitleSec .evDescSec:before {top:calc(50% + 2px);}
	.comnEvSec .evTitleSec .evDescSec:after {top:calc(50% - 2px);}
	.comnEvSec .evTitleSec .evDescSec .per {font-size:28px; padding:12px 0;}
	.comnEvSec .evTitleSec .evDescSec .per:after {top:2px;}
	.comnEvSec .evTitleSec .evDescSec .per:before {top:-2px;}
	.comnEvSec .evTitleSec .evDescSec .per:last-of-type:after {bottom:-2px;}
	.comnEvSec .evTitleSec .evDescSec .per:last-of-type:before {bottom:2px;}
	.comnEvSec .evTitleSec .evTxt {font-size:16px; margin:18px 0;}

	.comnEvSec .target {flex-direction:column; justify-content:center; align-items:flex-start; gap:8px; padding:0 14%;}
	.comnEvSec .target li {gap:8px;}
	.comnEvSec .target li .item {font-size:14px; padding:6px 16px;}
	.comnEvSec .target li .ipCon {font-size:14px;}

	.comnEvSec.sec01 .giftImg .txt {font-size:14px; bottom:18px;}
	.comnEvSec.sec01 .btmBar {height:120px;}
	.comnEvSec.sec01:after {height:20px;}
	.comnEvSec.sec01 .lb {width:60px; height:53px; left:-18px; bottom:116px; z-index:10;}
	.comnEvSec.sec01 .rb {width:103px; height:98px; right:-56px; bottom:106px; z-index:10;}
	.comnEvSec.sec01 .giftImg {margin-top:24px;}

	.comnEvSec.sec02 {padding:60px 0; overflow:hidden;}
	.comnEvSec.sec02:before {display:none;}
	.comnEvSec.sec02:after {display:none;}
	.comnEvSec .cTitleSec {margin-bottom:24px;}
	.comnEvSec .cTitleSec .cTitle {font-size:24px; padding:6px 26px;}
	.comnEvSec .cTitleSec .cTitle:before {width:24px; height:23px; left:-4px; top:-4px;}
	.comnEvSec .cTitleSec .cTitle:after {width:24px; height:23px; right:-4px; bottom:-4px;}

	.evFormSec .shadowBox:after {transform:rotate(1.4deg); left:-2px;}
	.evFormSec .inForm {padding:12px;}
	.inputForm .txtEdit textarea {height:142px; padding:16px; font-size:16px;}
	.inputForm .txtEdit .inputByte {font-size:14px;	 margin:0 12px 12px 0;}

	.imgAttachForm {position:relative; left:unset; top:unset; width:100%; margin-top:12px;}
	.imgAttachForm .attachGrid {display:flex; gap:12px;}
	.imgAttachForm .mainThumb {width:calc(33.33334% - 12px);}
	.imgAttachForm .mainThumb .thumbEmpty {width:30px; height:30px;}
	.imgAttachForm .subThumbs {gap:12px; margin:0; width:calc(100% - 33.33334%);}
	.inputForm .joinCau li.jcTitle {font-size:12px;}
	.inputForm .joinCau li {font-size:12px; word-break:break-all; line-height:1.4;}

	.evFormSec {padding:0 16px;}
	.evFormSec:after {width:100px; height:82px; right:-30px; bottom:unset; top:-40px;}
	.evFormSec .agreeSec {margin:24px 0;}
	.evFormSec .agreeSec .comnChk {font-size:14px;}
	.comnChk {gap:24px;}
	.comnChk input:before {width:18px; height:18px; background-size:100%;}
	.comnChk input:checked:before {width:18px; height:18px; background-size:100%;}

	.evRvListSec {margin-top:50px;}
	.rvListWrap {padding:0 30px;}
	.rvListWrap .rvList .rvGroup {padding:10px;}
	.rvListWrap .rvList .rvGroup .perRv .hoverCont {display:none;}
	.rvListWrap .rvList .rvGroup .perRv .rvFunc {right:6px; top:6px;}
	.rvListWrap .rvList .rvGroup .perRv .rvFunc > a {font-size:12px; padding:10px 12px;}
	.rvListWrap .rv-prev {width:40px; height:40px; z-index:10; left:10px;}
	.rvListWrap .rv-next {width:40px; height:40px; z-index:10; right:10px;}

	.comnEvSec.sec03 {padding:50px 0; position:relative; z-index:30;}
	.comnEvSec.sec03:after {content:''; position:absolute; right:24px; top:-45px; width:80px; height:107px; background:url(../img/sec04_deco01.svg) no-repeat 50% 50%; background-size:100%; animation: decoSway01 9.5s cubic-bezier(.45,0,.55,1) infinite;}

	.comnEvSec.sec04 {padding:60px 0;}
	.comnEvSec.sec04 .innerCon {padding:0 16px;}

	.evTitleTxt {margin-bottom:30px;}
	.evTitleTxt p {font-size:24px; text-align:center; line-height:1.3; align-items:flex-end; gap:4px;}
	.evTitleTxt p img {width:38px; margin:0 0 3px;}
	.evTitleTxt p.absTy img {display:none;}
	.evTitleTxt p.absTy {display:inline-block; position:relative;}
	.evTitleTxt p.absTy:after {content:''; position:absolute; right:-46px; bottom:5px; width:38px; height:34px; background:url(../img/sec05_title01.svg) no-repeat 50% 50%; background-size:100%;}

	.giftKind {flex-wrap:wrap; gap:8px 16px;}
	.giftKind .perGift {width:calc(50% - 8px);}
	.giftKind .perGift:after {display:none;}
	.giftKind .perGift .giftBox {background-position:left bottom -20px; padding:0 14px 14px;}
	.giftKind .perGift .giftBox .postFront img.target {padding:0; width:66px; display:block; margin:92px auto 0;}
	.giftKind .perGift .txt {font-size:14px; height:40px;}

	.infoHeart {flex-direction:column; gap:10px; padding:42px 24px; margin-top:36px;}
	.infoHeart:before {width:24px; height:24px;}
	.infoHeart .imgSec {width:100%; padding:0 10px;}
	.infoHeart .txtSec {width:100%;}
	.infoHeart .txtSec .txt {font-size:16px; text-align:center; background:none;}
	.infoHeart .txtSec .txt strong {font-size:16px;}
	.infoHeart .txtSec .txt01 {font-size:16px; text-align:center; background:none;}

	.howToBox {margin-top:40px;}
	.howToBox .howTo {flex-direction:column; align-items:flex-start;}
	.howToBox .howTo:after {display:none;}
	.howToBox .howTo .perHow {width:100%;}
	.howToBox .howTo .perHow .hTitle {font-size:18px; padding:12px 0;}
	.howToBox .howTo .perHow .in {padding-top:16px;}
	.howToBox .howTo .perHow .in .txt {font-size:14px; margin-bottom:16px;}
	.howToBox .howTo .perHow .in .img {padding:0 25px;}
	.howToBox .howTo .perHow .in .txt span {font-size:14px;}

	.comnEvSec.sec05 {padding:50px 0; overflow:hidden;}
	.comnEvSec.sec05 .innerCon {padding:0 16px;}
	.rankingStats {flex-direction:column; gap:20px;}
	.rankingStats:before {display:none;}
	.rankingStats .mapSec:before {bottom:-50px; left:unset; transform:rotate(90deg); right:16px; width:48px; height:77px; content:''; position:absolute; background:url(../img/sec06_spring.svg) no-repeat 50% 50%; background-size:100%; z-index:30;}
	.rankingStats .mapSec {width:100%;}
	.rankingStats .mapSec:after {height:24px; background-size:100% 24px; bottom:-12px;}
	.rankingStats .mapSec .inMap {padding:0 0 8px;}
	.rankingStats .mapSec .inMap:before {width:24px; height:30px;}
	.rankingStats .mapSec .inMap .mTitie {font-size:14px; padding:16px 0 6px;}
	.rankingStats .schoolInfo {width:100%;}
	.rankingStats .schoolInfo:before {display:none;}
	.rankingStats .schoolInfo:after {bottom:-16px; height:34px;}

	.rankingStats .schoolInfo .inCont {padding:42px 30px;}
	.rankingStats .schoolInfo .inCont .scTitle {font-size:18px;}
	.rankingStats .schoolInfo .inCont .grade {gap:6px;}
	.rankingStats .schoolInfo .inCont .grade a {font-size:14px; padding:8px 16px;}
	.rankingStats .schoolInfo .inCont .rankingList ul li {font-size:12px; padding:8px 6px;}
	.rankingStats .schoolInfo .inCont .rankingList ul li.rank {width:54px;}
	.rankingStats .schoolInfo .inCont .rankingList ul li.rank img {width:15px;}
	.rankingStats .schoolInfo .inCont .rankingList ul li:last-child {width:80px;}
	.rankingStats .schoolInfo .inCont .rankingList ul li.school {width:calc(100% - 134px);}
	.rankingStats .schoolInfo .inCont .shareTxt {font-size:18px; justify-content:space-between; gap:0;}
	.rankingStats .schoolInfo .inCont .shareTxt a.btn {padding:14px 20px; flex:0 0 auto;}
	.rankingStats .schoolInfo .inCont .cauTxt {font-size:14px; line-height:1.3; align-items:flex-start;}
	.rankingStats .schoolInfo .inCont:after {width:90px; height:86px; right:-20px; bottom:-50px;}

	.joinSec {margin-top:70px;}
	.joinSec:before {width:51px; height:40px; top:50px;}
	.joinSec .joinFormBox {border-width:8px; padding:36px 16px;}
	.joinSec .joinFormBox .mySchool {padding-bottom:20px; margin-bottom:20px; flex-direction:column; gap:16px;}
	.joinSec .joinFormBox .mySchool .perBlock {width:100%;}
	.joinSec .pbTitle {font-size:18px; margin-bottom:10px; line-height:1.3;}
	.joinSec .pbTitle span {font-size:12px; margin-left:4px;}

	.schoolSearch .schForm input[type="text"] {height:40px; line-height:38px;}
	.schoolSearch .schForm button {width:18px; height:18px;}
	.schoolSearch .resultForm {top:41px; padding:6px;}
	.schoolSearch .resultForm table td a {font-size:12px;}
	.schoolSearch .resultForm table th, .schoolSearch .resultForm table td {font-size:12px; padding:6px;}
	.myTags {gap:4px; padding:0; flex-wrap:wrap;}
	.myTags span {font-size:14px; padding:6px 10px;}

	.joinSec .joinFormBox .makeCard {flex-direction:column; gap:16px;}
	.joinSec .joinFormBox .makeCard .cardEdit {width:100%;}
	.joinSec .joinFormBox .makeCard .cardArea {width:100%;}

	.joinSec .joinFormBox .makeCard .cardEdit .editTxt {top:24px; padding:0 16px;}
	.joinSec .joinFormBox .makeCard .cardEdit .editTxt textarea {font-size:20px; height:80px; padding:0;}
	.joinSec .joinFormBox .makeCard .cardEdit .editTxt a.btnEdit {font-size:14px;}
	.joinSec .joinFormBox .makeCard .cardEdit .editTxt a.btnEdit:before {width:10px; height:11px;}

	.joinSec .joinFormBox .makeCard .cardArea .cardList {gap:4px;}
	.joinSec .joinFormBox .makeCard .cardArea .cardList a {width:calc(33.33334% - 2.66666px);}
	.joinSec .joinFormBox .makeCard .cardArea .btnArea {margin-top:20px;}
	.joinSec .joinFormBox .deco01 {width:88px; height:77px; left:-40px; bottom:-30px;}
	.joinSec .joinFormBox .deco02 {width:139px; height:95px; right:-70px; bottom:-30px;}

	.comnEvSec.sec06 {padding:50px 0;}
	.comnEvSec.sec06 .innerCon {padding:0 16px;}
	.joinTab {margin-bottom:24px; gap:0;}
	.joinTab a {font-size:14px; padding:0 14px; height:34px; line-height:34px;}

	.joinList .perJoin {width:calc(50% - 4px);}
	.joinList .perJoin .tags {left:4px; top:6px; gap:4px;}
	.joinList .perJoin .tags span {font-size:12px; padding:4px 6px; max-width:54%; min-width:0;}
	.joinList .perJoin .tags span:first-child {max-width:30%;}
	.joinList .perJoin .jTxt {font-size:13px; height:58px; top:34px; padding:0 10px;}
	.joinList .perJoin .writer {gap:6px; bottom:8px;}
	.joinList .perJoin .writer span {font-size:10px;}

	.perJoin .funcBtn {right:0; top:6px;}
	.perJoin .funcBtn > a.icoFunc {background-size:14px;}
	.perJoin .funcBtn .btns a {font-size:13px; padding:7px 14px;}

	.pagingWrap {margin:30px 0 0;}
	.pagingWrap a {width:30px; height:30px; font-size:14px;}

	.comnEvSec.sec07 {padding:60px 0; overflow:hidden;}
	.comnEvSec.sec07 .innerCon {padding:0 20px;}
	.newJoinBox {width:329px; height:280px; background:url(../img/sec07_bg_mo.png) no-repeat 50% 50%; background-size:cover;}

	.newJoinBox .njTitle {font-size:24px;}
	.newJoinBox .njDesc {font-size:16px;}
	.newJoinBox:after {width:100px; height:164px; right:-60px; bottom:-16px;}
	.newJoinBox:before {width:100px; height:185px; bottom:-16px;}

	a.btn {font-size:16px; padding:14px 20px; text-align:center; flex:0 0 auto;}

	a.goTop {width:48px; height:48px; font-size:10px; gap:4px; right:16px; bottom:16px;}
	a.goTop:before {height:8px; background-size:auto 8px;}

	.rvListWrap .rvList .rvGroup .perRv {width:calc(50% - 2px);}

	.cauCon .cauBox li a {font-size:14px; line-height:1.4;}

	.popProud {max-height:80%;}
	.popProud .inPopCont {padding:20px; max-height:calc(100vh - 160px);}
	.popProud:after {width:98px; height:30px; top:-16px;}
	.popProud .inPopCont .inPopTxt {font-size:16px;}
	.popProud .inPopCont .inPopWriter {font-size:16px; margin-top:16px; gap:5px;}
	.popProud .inPopCont .inPopWriter span {font-size:16px;}
	.popProud .popClose {width:36px; height:36px; top:-40px; right:10px;}

	.popImgSec .img-next {width:30px; height:30px; right:-10px;}
	.popImgSec .img-prev {width:30px; height:30px; left:-10px;}

	.emptyTxt {padding:60px 10px; color:#5A371E; font-size:16px; font-weight:600; flex:1; line-height:1.4;}
	.emptyTxt br {display:block;}

}

@media only screen and (max-width:390px) {
	.joinList .perJoin .tags span {max-width:41%;}
}