@charset "utf-8";
/************************************************************************
 * filename     : sub-common.css
 * description  : 더페스티벌 sub common style CSS
 * date         : 2025.02.22
************************************************************************/

/*===== LAYOUT =====*/
.wrapper.wrapper-sub{
    padding-bottom:35rem;
}

/*===== SUB LAYOUT FLEX =====*/
.layout-flex.layout-sub{
    display:flex;
    flex-wrap:wrap;
    flex-direction:column;
    margin:0 -10px 2rem;
}
.layout-flex.layout-sub .flex-item{
    flex:1; 
    padding:0 10px;
}

/*===== SUB SECTION =====*/
.sub-section{
    margin-bottom:1.5rem;
}
.sub-section-header{
    margin-bottom:1rem;
}
.sub-section .section-item{
    margin-bottom:1.5rem;
}
.sub-section .section-item .item-header{
    padding:0 0 1rem 0;
    font-size:1rem;
    font-weight:600;
}

/*===== SUB TAB =====*/
/* https://hongpage.kr/16 */
.wrapper-sub .sub-tabs-header{
    display:flex;
    margin-bottom:1rem;
}
.wrapper-sub .sub-tabs{
    display:flex;
    flex-wrap:wrap;
    flex:1;
    border-bottom:0 none;
}
.wrapper-sub .sub-tabs li{
    padding-right:5px;
    padding-bottom:5px;
}
.wrapper-sub .sub-tabs li a{
    display:inline-block;
    position:relative;
    text-align:center;
    cursor:pointer;
    color:#b0b2b9;
    padding:.45rem 0 .25rem;
    margin-bottom:0;
    margin-right:1rem;
    border:0 none;
    border-bottom:0 none;
    background-color:#ffffff;
    border-top-left-radius:5px;
    border-top-right-radius:5px;
    font-size:1rem;
    white-space:nowrap;
}
.wrapper-sub .sub-tabs li a.active{
    background-color:#ffffff;
    color:#EC0F7A;
    font-weight:700;
    border:0 none;
    border-bottom:3px solid #EC0F7A;
}

/*===== CONTENT =====*/
#content{
    padding:4rem 1.5rem 6rem;
}
#content-in{
    max-width:1280px;
    margin:0 auto;
}
.content-header{
    display:flex;
    flex-direction:column;
    padding:1.5rem 0 1.5rem;
}
.content-header::after{
    content:"";
    display:block;
    clear:both;
}
.content-header .header-title{
    font-size:1.4rem;
    font-weight:600;
    flex-grow:1;
    padding-bottom:5px;
}
.content-header .header-title small{
    font-size:1.4rem;
    font-weight:600;
    flex-grow:1;
}
.content-header .header-location .breadcrumb{
    display:-webkit-flex;
    display:-ms-flexbox;
    display:flex;
    -webkit-flex-wrap:wrap;
    -ms-flex-wrap:wrap;
    flex-wrap:wrap;
    list-style:none;
}
.content-header .header-location .breadcrumb .breadcrumb-item{
    padding-left:0.2rem;
    font-size:.85rem;
    color:rgba(31, 35, 48, 0.3);
}
.content-header .header-location .breadcrumb .breadcrumb-item a,
.content-header .header-location .breadcrumb .breadcrumb-item a i{
    font-size:.85rem;
    color:rgba(31, 35, 48, 0.3);
}
.content-header .header-location .breadcrumb .breadcrumb-item.active{
    color:#333;
    font-weight:600;
}
.content-header .header-location .breadcrumb-item+.breadcrumb-item::before{
    font-size:1rem;
    display:inline-block;
    padding-right:0.2rem;
    color:rgba(31, 35, 48, 0.3);
    content:"\e93f";
    font-family:xeicon !important;
    vertical-align:-2px;
}
.content-header .header-location .breadcrumb .breadcrumb-item i{
    vertical-align:-2px;
}
.content-sub .sub-in{
    height:100%;
}
.content-sub .sub-in .sub-header{
    margin:1rem 0;
}

/*===== [개별] 로그인 =====*/
#sub-content-login{
    padding-top:3rem;
}
#sub-content-login .login-box{
    max-width: 500px;
    margin: 0 auto;
}
.login-box .box-header{
    padding:0 0 1.5rem 0;
}
.login-box .box-header .header-title{
    padding-bottom:.5rem;
    font-size:1.6rem;
    font-weight:600;
    text-align:center;
}
.login-box .box-header .header-guide{
    font-size:.85rem;
    text-align:center;
}
.login-box .box-header .header-guide strong{
    font-weight:700;
    color:#EC0F7A;
}

/*===== [개별] 로그인 - 로그인 폼 =====*/
/*https://www.codingnepalweb.com/css-animation-input-label/*/
.login-form .form-group .input-field{
    position: relative;
}
.login-form .form-group .input-field .form-control{
    width: 100%;
    height: 50px;
    border-radius: 5px;
    font-size: .85rem;
    padding: 0 15px;
    border: 1px solid #8d8d8d;
    background: transparent;
    color: #333;
    outline: none;
}
.login-form .form-group .input-field label{
    position: absolute;
    top: 50%;
    left: 15px;
    transform: translateY(-50%);
    color: #ccc;
    font-size: 1rem;
    pointer-events: none;
    transition: 0.3s;
}
.login-form .form-group .input-field .form-control:focus{
    border: 2px solid #EC0F7A;
    outline: none;
    box-shadow: none;
}
.login-form .form-group .input-field .form-control:valid ~ label{
    top: 0;
    left: 10px;
    font-size: .85rem;
    padding: 0 5px;
    background: #fff;
    color:#333;
}
.login-form .form-group .input-field .form-control:focus ~ label{
    top: 0;
    left: 10px;
    font-size: .85rem;
    padding: 0 5px;
    background: #fff;
    color:#EC0F7A;
}
.login-form .form-group .form-icon{
    display: inline-block;
    position: absolute;
    right: 15px;
    top: 13px;
    font-size: 1.1rem;
    color: rgba(0, 0, 0, 0.7);
}
.login-form .form-group.form-id .form-icon::after{
    font-family: xeicon !important;
    content: "\e9f5";
}
.login-form .form-group.form-password .form-icon::after{
    font-family: xeicon !important;
    content: "\e966";
}
.login-form .form-group .input-field .form-control:focus ~ .form-icon {
    color: #EC0F7A;
}
.login-menu{
    display:flex;
    justify-content: space-between;
    margin-bottom:1rem;
}
.login-menu .idpw-find ul{
    display:flex;
}
.login-menu .idpw-find ul li{
    padding-right:10px;
    margin-right:10px;
    position:relative;
}
.login-menu .idpw-find ul li:last-child{
    padding-right:0px;
    margin-right:0px;
}
.login-menu .idpw-find ul li::before{
    content: '';
    position: absolute;
    top: 6px;
    right:0;
    width: 1px;
    height: 12px;
    background-color: #dadada;
}
.login-menu .idpw-find ul li:last-child::before{
    content: '';
    display:none;
}
.login-menu a{
    color:#787878;
    display:inline-block;
    font-size:.85rem;
    white-space: nowrap;
}
.login-menu a:hover{
    color:#616161;
}
.login-form .btn-login{
    display:block;
    width:100%; height:45px;
    font-weight:600;
    background-color: #EC0F7A;
    border:1px solid #EC0F7A;
    color:#fff;
}

/*===== [개별] 아이디 비밀번호 찾기 =====*/
.login-form .idpw-find ul li{
    padding-right:10px;
    margin-right:10px;
}
.login-form .idpw-find ul li:last-child{
    padding-right:0px;
    margin-right:0px;
}
.login-form .idpw-find ul li::before{
    top: 3px;
    right:0;
    width: 1px;
    height: 12px;
    border-radius: 0.5px;
}
.login-form .idpw-find ul li a{
    font-size:1rem;
}

/*===== [개별] 비밀번호 찾기 확인 읽기 =====*/
.login-form .form-group label{
    display: block;
    margin-bottom: 5px;
    font-size: .85rem;
    font-weight: 600;
}
.login-form .form-group .form-input-text{
    padding: 13px 15px;
    height:50px;
    background-color: #f5f5f5;
}

/*===== [개별] 유효성 검사 =====*/
.form-validate{
    position: relative;
    padding-bottom:.85rem;
}
.error-message, 
.error-message strong{
    color: #ec0404;
    font-size:.85rem;
}

/*===== [개별] 약관동의&회원가입 =====*/
#sub-content-join{
    padding-top:3rem;
}
#sub-content-join .join-box{
    max-width: 450px;
    margin: 0 auto;
}
.join-box .box-header{
    padding:0 0 1.5rem 0;
}
.join-box .box-header .header-title{
    padding-bottom:.5rem;
    font-size:1.6rem;
    font-weight:600;
    text-align:center;
}
.join-box .box-header .header-guide{
    font-size:.85rem;
    text-align:center;
}
.join-box .box-header .header-guide strong{
    font-weight:700;
    color:#EC0F7A;
}
.join-box .box-header .header-guide-img{
    display:inline-block;
    width:60px; height:60px;
    padding:14px 0;
    margin-bottom:20px;
    background-color: rgba(236, 15, 122, 0.2);
    text-align: center;
    border-radius: 50%;
}
.join-box .box-header .header-guide-img i{
    color:#EC0F7A;
    font-size:2.2rem;
}
.join-box .btn-container,
.login-box .btn-container{
    padding-top:.85rem;
}
.join-box .btn-container .btn-lg{
    width:100%;
}

/*===== [개별] 약관동의 : 약관동의 폼 =====*/
.agree-form .agree-list{
    margin-bottom:1rem;
    padding-bottom:1rem;
    border-bottom:1px solid #f5f5f5;
}
.agree-form .form-group label strong{
    font-size:inherit;
}
.agree-form .form-group .btn-go{
    float:right;
    cursor: pointer;
    margin-top: .2rem;
}
.agree-form .form-group .btn-go::before{
    content: "\e93e";
    font-family: xeicon !important;
    font-size:.9rem;
    display: inline-block;
    speak: none;
    font-style: normal;
    font-weight: 400;
    font-variant: normal;
    text-transform: none;
    line-height: 1;
    transition:transform 0.3s ease;
}
.agree-form .form-group .btn-go.active::before{
    -webkit-transform: rotate(90deg);
    transform: rotate(90deg);
}
.agree-form .form-group .terms-content{
    display:none;
    padding: 1rem;
    background: #f9f9f9;
    border: 1px solid #f5f5f5;
    margin-top: 1rem;
    max-height:150px;
    overflow-y:auto;
}
.agree-form .form-group .terms-content li{
    font-size:.75rem;
}
.agree-form .form-group .guide-content{
    padding-top:.5rem;
    padding-left:1.5rem;
}
.agree-form .form-group .guide-content li{
    font-size:.75rem;
    color:rgba(51, 51, 51, 0.6);
}
.agree-form .agree-all{
    margin-bottom:2rem;
}

/*===== [개별] 회원가입 : 회원가입 폼 =====*/
.join-form{
    padding: 30px;
    background-color: #fff;
    border:1px solid #e5e5e5;
}
.join-form .form-group {
    width: 100%;
    margin-bottom: 15px
}
.join-form .form-group label {
    text-align: left;
    display: block;
    margin-bottom: 5px;
    font-size: .85rem;
    font-weight: 600;
}
.join-form .form-group label .form-necessary {
    color: #ed5c23;
    vertical-align: -2px;
    display: inline-block;
    margin-left: 5px;
    height: 15px;
}
.join-form .form-group .form-control{
    display: block;
    padding: 13px 15px;
    height:50px;
}
.join-form .form-group .form-input-text{
    padding: 13px 15px;
    height:50px;
}
.form-group-email .input-group{/* 이메일 입력창 */
	margin-bottom:5px;
	display:table;
}
.form-group-email .input-group input[type="text"].form-control{
    width:100%;
    display:table-cell;
}
.form-group-email .input-group .email-at{
    padding: 13px 10px 0;
    margin-left:0 !important;
    display:table-cell;
}
.form-group-address .form-control{/* 주소 입력창 */
    margin-bottom:5px;
}
.form-group-address .input-group{
    max-width:250px;
    margin-bottom:5px;
}
.form-group-address .input-group .form-control{
    margin-bottom:0;
}
.form-group-phone .form-control{/* 휴대폰 번호 */
    margin-bottom:5px;
}
.form-group-phone .input-group{
    margin-bottom:5px;
}
.form-group-phone .input-group .form-control{
    margin-bottom:0;
}
.form-group-phone .input-group .btn{
    border-left:0 none !important;
}

/*===== [공통] 시기 및 지역 셀렉트박스 =====*/
.list-setting{
    display:flex;
    flex-direction:column;
    gap:1rem;
    margin-bottom:1rem;
}
.list-setting .btn-search{
    height:38px;  /* 20250510수정 */
    border:0 none;
    background-color:#EE2C9E;
    color:#fff;
    border-radius:.35rem;
    padding:.35rem 1.5rem;
}
.list-setting .list-select{
    flex:1;
    display:flex;
    gap:.5rem;
}
.list-setting .list-select .select-box{
    position:relative;
    display:inline-block;
    width:35%;  /* 20250510수정 */
    flex:1;
	margin:3px;  /* 20250510수정 */
}
.list-setting .list-select .select-box::after{
    font-family:xeicon !important;
    content:"\e942";
    position:absolute;
    top:50%; right:15px;
    transform:translateY(-50%);
    pointer-events:none;
    font-size:1rem;
    color:#333;
}
.list-setting .list-select .select-box select{
    width:100%;
    padding:.5rem .8rem;
    padding-right:40px;
    background-color:#fff;
    border:1px solid #333; 
    border-radius:.35rem;
    font-size:.85rem;
    appearance:none;
    -webkit-appearance:none;
    -moz-appearance:none;
    cursor:pointer;
}   
.list-setting .list-select .select-box select:focus{
    outline:none;
    border-color:#EE2C9E;
}
.list-setting .list-select .select-box select option{
    background:#ffffff;
    color:#333;
    padding:10px;
}
.list-setting .list-select .select-box.select-date select{
    background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='black'%3E%3Cpath d='M3 6v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2V6a2 2 0 0 0-2-2h-2V2h-2v2H9V2H7v2H5a2 2 0 0 0-2 2zm16 14H5V8h14z'/%3E%3C/svg%3E");
    background-color:#fff;
    background-size:20px 20px;
    background-position:12px 8px;
    background-repeat:no-repeat;
    padding-left:40px;
}
.list-setting .list-select .select-box.select-area select{
    background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='black'%3E%3Cpath d='M12 2C7.589 2 4 5.589 4 9.995 3.971 16.44 11.696 21.784 12 22c0 0 8.029-5.56 8-12 0-4.411-3.589-8-8-8zm0 12c-2.21 0-4-1.79-4-4s1.79-4 4-4 4 1.79 4 4-1.79 4-4 4z'/%3E%3C/svg%3E");
    background-color:#fff;
    background-size:20px 20px;
    background-position:12px 8px;
    background-repeat:no-repeat;
    padding-left:40px;
}

/*===== 시기 선택 =====*/
.list-setting .list-sort{
    display:flex;
    align-items:center;
    gap:.5rem;
}
.list-setting .list-sort .btn-sort{
    font-size:.85rem;
    color:rgba(51, 51, 51, .3);
    cursor:pointer;
}
.list-setting .list-sort .btn-sort:hover{
    color:rgba(51, 51, 51, .5);
}
.list-setting .list-sort .btn-sort.active{
    color:#333;
    font-weight:600;
    cursor:pointer;
}
.list-setting .list-sort .btn-sort::before{
    margin-right:.5rem;
    content:"";
    display:inline-block;
    width:1px; height:14px;
    vertical-align:-2px;
    background-color:rgba(51, 51, 51, .15);
}
.list-setting .list-sort .btn-sort:first-child:before{
    display:none;
}

/*===== [공통] 리스트 상단 안내 =====*/
.list-guide{
    background: #a9b3f50f;
    border:1px solid #5b71ff26;
    padding: 1rem;
    margin: 1rem 0 .5rem;
}
.list-guide.list-guide-ad .guide-text{
}
.list-guide.list-guide-ad .guide-text strong{
    font-weight: 500;
}
.list-guide.list-guide-ad .guide-text::before{
    content: "\e9a7";
    font-family: xeicon !important;
    font-size:1rem;
    display: inline-block;
    padding-right: .4rem;
    vertical-align: -1px;
    color: #1bc154;
}

/*===== [서브] 축제 달력 =====*/
#schedule-content{
    display:flex;
    flex-wrap:wrap;
    margin:0 -1rem;
    flex-direction:column;
}
#schedule-header{
    flex:0 0 auto;
    width:100%;
    display:flex;
    justify-content:center;
    align-items:center;
    padding:0 1rem;
}
#schedule-header #currentMonth{
    margin:0;
    display:flex;
    align-items:center;
    gap:5px;
    font-size:1.2rem;
    font-weight:600;
}
#schedule-header .btn-calendar-arrow{
    padding:.15rem .35rem;
    margin:0 1rem;
    border:none;
    background-color:#fff;
    color:#333333;
    border:1px solid #ddd;
    border-radius:3px;
    cursor:pointer;
    font-size:0.65rem;
}
#schedule-header .btn-calendar-arrow:hover{
    border:1px solid #ddd;
    background-color:#f5f5f5;
}
#schedule-header .btn-arrow-prev::before{
    display:inline-block;
    font-family:xeicon !important;
    content:"\e93d";
}
#schedule-header .btn-arrow-next::before{
    display:inline-block;
    font-family:xeicon !important;
    content:"\e940";
}

/*===== 축제 달력 =====*/
#schedule-calendar{
    flex:0 0 auto;
    width:100%;
    padding:0 1rem;
}
#schedule-calendar .calendar-header{                                            
    margin-bottom:10px;
}
#schedule-calendar .calendar-header .calendar-week{
    display:grid;
    grid-template-columns:repeat(7, 1fr);
    gap:5px;
    width:100%;
    max-width:100%;
}
#schedule-calendar .calendar-header .calendar-item{
    background-color:#EAECF3;
    padding:10px;
    border-radius:8px;
    text-align:center;
    font-size:.85rem;
    font-weight:bold;
}
#schedule-calendar .calendar-body .calendar{
    display:grid;
    grid-template-columns:repeat(7, 1fr);
    gap:5px;
    width:100%;
    max-width:100%;
}
#schedule-calendar .calendar-body .calendar .calendar-item{
    background-color:#F5F6FA;
    padding:10px;
    border-radius:8px;
    position:relative;
    display:flex;
    flex-direction:column;
    justify-content:space-between;
    height:110px;
    min-height:110px;
}
#schedule-calendar .calendar-body .calendar .calendar-item:hover{
    background-color:#eef1ff;
}
#schedule-calendar .calendar-body .calendar .calendar-item.current-day{
    background-color:#e0e7ff;
}
#schedule-calendar .calendar-body .calendar .calendar-item .selected-button{
    filter:brightness(1.2);
    color:#fff;
}
#schedule-calendar .calendar-body .calendar .calendar-item .day{
    font-weight:bold;
    text-align:left;
    font-size:.85rem;
}
#schedule-calendar .calendar-body .calendar .events{
    display:flex;
    flex-direction:column;
    gap:2px;
    overflow:hidden;
}
#schedule-calendar .calendar-body .calendar .festival-progress,
#schedule-calendar .calendar-body .calendar .festival-start,
#schedule-calendar .calendar-body .calendar .festival-ended{
    color:#fff;
    font-size:11px;
    cursor:pointer;
    border-radius:3px;
    padding:.1rem;
}
#schedule-calendar .calendar-body .calendar .festival-progress{
    background-color:#5B71FF;
}
#schedule-calendar .calendar-body .calendar .festival-start{
    background-color:#EE2C9E;
}
#schedule-calendar .calendar-body .calendar .festival-ended{
    background-color:#5F5F5F;
}
#schedule-calendar .calendar-body .calendar .festival-text{
    color:#fff;
    padding-right:2px;
    font-size:inherit;
    display:none;
}
#schedule-calendar .calendar-body .calendar .festival-count{
    color:#fff;
    font-size:inherit;
}
#schedule-calendar .calendar-footer{
    padding:2rem 0;
}
#schedule-calendar .calendar-footer .calendar-info{
    display:flex;
}
#schedule-calendar .calendar-footer .calendar-info .info-item{
    margin-right:1rem;
}
#schedule-calendar .calendar-footer .calendar-info .info-item .info-state{
    display:inline-block;
    font-size:.85rem;
}
#schedule-calendar .calendar-footer .calendar-info .info-item .info-state::before{
    content:"";
    display:inline-block;
    width:13px; height:13px;
    background-color:transparent;
    margin-right:5px;
    border-radius:3px;
    vertical-align:-2px;
}
#schedule-calendar .calendar-footer .calendar-info .info-item .info-state.state-progress::before{
    background-color:#5B71FF;
}
#schedule-calendar .calendar-footer .calendar-info .info-item .info-state.state-start::before{
    background-color:#EE2C9E;
}
#schedule-calendar .calendar-footer .calendar-info .info-item .info-state.state-ended::before{
    background-color:#5F5F5F;
}

/*===== 축제 달력 상세보기 =====*/
#schedule-calendar-detail{
    flex:0 0 auto;
    width:100%;
    padding:0 1rem;
}  
#schedule-calendar-detail .calendar-detail-header{
    margin-bottom:10px;
    padding:.5rem;
    background-color:#EAECF3;
    border-radius:8px;
    text-align:center;
}
#schedule-calendar-detail .calendar-detail-body .details-panel{
    border:1px solid #5F5F5F;
    border-radius:8px;
    background-color:#fff;
}
#schedule-calendar-detail .calendar-detail-body .details-panel .paner-header{
    padding:.5rem;
    background-color:#5F5F5F;
    border-top-left-radius:8px;
    border-top-right-radius:8px;
    text-align:center;
}
#schedule-calendar-detail .calendar-detail-body .details-panel.festival-progress{
    border:1px solid #5B71FF;
}
#schedule-calendar-detail .calendar-detail-body .details-panel.festival-progress .paner-header{
    background-color:#5B71FF;
}
#schedule-calendar-detail .calendar-detail-body .details-panel.festival-start{
    border:1px solid #EE2C9E;
}
#schedule-calendar-detail .calendar-detail-body .details-panel.festival-start .paner-header{
    background-color:#EE2C9E;
}
#schedule-calendar-detail .calendar-detail-body .details-panel.festival-ended{
    border:1px solid #5F5F5F;
}
#schedule-calendar-detail .calendar-detail-body .details-panel.festival-ended .paner-header{
    background-color:#5F5F5F;
}
#schedule-calendar-detail .calendar-detail-body .details-panel .paner-header #selectedDate{
    display:inline-block;
    color:#fff;
    text-align:center;
}
#schedule-calendar-detail .calendar-detail-body .details-panel .paner-header #detailsContent{
    display:inline-block;
    color:#fff;
    text-align:center;
}
#schedule-calendar-detail .calendar-detail-body .details-panel .paner-body{
    padding:1rem;
}

/*===== 축제 달력 상세보기 리스트 =====*/
.details-panel .paner-body .festival-list{
    display:flex;
    flex-wrap:wrap;
}
.details-panel .paner-body .festival-list .list-item{
    flex:0 0 auto;
    width:calc(100%/2);
    margin-bottom:1.5rem;
    padding:0 .5rem;
}
.details-panel .paner-body .festival-list .list-item:last-child{
    margin-bottom:0;
}
.details-panel .paner-body .festival-list .list-item .item-in a{
    display:flex;
    flex-direction:column;
    text-align:center;
    align-items:center;
}
.details-panel .paner-body .festival-list .list-item .item-in .item-img{
    flex:0 0 auto;
    width:110px; height:150px;
    margin-bottom:1rem;
    text-align:center;
    border:1px solid rgba(51, 51, 51, .05);
    position:relative;
    overflow:hidden;
    background:#f9f9f9;
    border-radius:.35rem;
}
.details-panel .paner-body .festival-list .list-item .item-in .item-img img{
    width:100%;
    height:100%;
    position:absolute;
    top:0;
    left:0;
    object-fit:cover;
    object-position:center;
    transition:transform 0.3s ease;
    transform:scale(1);
    transition-duration:.3s;
}
.details-panel .paner-body .festival-list .list-item .item-in a:hover .item-img img{
    transform:scale(1.2);
}
.details-panel .paner-body .festival-list .list-item .item-in .item-info{
    flex:0 0 auto;
    flex-direction:column;
    width:100%;
    display:flex;
    align-items:left;
}
.details-panel .paner-body .festival-list .list-item .item-in .item-info dl{
    display:flex;
    flex-direction:column;
    min-width:0;
}
.details-panel .paner-body .festival-list .list-item .item-in .item-info dl dt{
    font-weight:600;
    font-size:1rem;
    padding-bottom:.5rem;
    white-space:nowrap;
    text-overflow:ellipsis;
    overflow:hidden;
}
.details-panel .paner-body .festival-list .list-item .item-in a:hover .item-info dl dt{
    text-decoration:underline;
}
.details-panel .paner-body .festival-list .list-item .item-in .item-info dl dd{
    font-size:.85rem;
    color:rgba(51, 51, 51, 0.6);
}
.details-panel .paner-body .festival-list .list-item .item-in .item-info dl dd:last-child{
    white-space:nowrap;
    text-overflow:ellipsis;
    overflow:hidden;
}

/*===== [서브] 축제 순위 =====*/
#ranking-container{
    display:flex;
    flex-wrap:wrap;
    margin:0 -1rem;
    flex-direction:column;
}
#ranking-content{
    flex:0 0 auto;
    width:100%;
    padding:0 1rem;
}
#ranking-content #ranking-header{
    display:flex;
    justify-content:space-between;
}
#ranking-content #ranking-header .header-title{
    font-size:1.2rem;
    padding-top:.5rem;
}
#ranking-content #ranking-header .header-title .dropdown{
    margin-left:.5rem;
    vertical-align:middle;
}
#ranking-content #ranking-header .header-title .dropdown > a{
    display:inline-block;
}
#ranking-content #ranking-header .header-title .dropdown > a i{
    font-size:1.5rem;
    color:#C2C2C2;
}
#ranking-content #ranking-header .header-title .dropdown .dropdown-content .dropdown-header .header-title{
    padding:0;
    font-size:1rem;
}
#ranking-content .dropdown-guide-ranking{
    white-space:nowrap;
}

/*===== [서브] 축제 순위 리스트 =====*/
.ranking-table-list .table-list-header .table-row{
    border:0 none;
    border-top:2px solid #333;
    border-bottom:1px solid rgba(51, 51, 51, 0.4);
}
.ranking-table-list .table-list-body .table-row{
    border:0 none;
    border-bottom:1px solid #F1f1f1;
    flex-direction:row;
}
.ranking-table-list .table-row .table-th,
.ranking-table-list .table-row .table-td{
    text-align:center;
    font-size:.85rem;
}
.ranking-table-list .table-row .table-th:first-child,
.ranking-table-list .table-row .table-td:first-child{
    width:70px;
    min-width:70px;
    flex:0 0 auto;
}
.ranking-table-list .table-row .table-th:nth-child(2),
.ranking-table-list .table-row .table-td:nth-child(2){
    text-align:left;
}
.ranking-table-list .table-row .table-th:nth-child(3),
.ranking-table-list .table-row .table-td:nth-child(3){
    text-align:center;
    width:100px;
    min-width:100px;
    flex:0 0 auto;
}
.ranking-table-list .table-row .table-th:nth-child(4),
.ranking-table-list .table-row .table-td:nth-child(4){
    text-align:center;
    width:80px;
    min-width:80px;
    flex:0 0 auto;
}

/*===== [서브] 축제 순위 리스트 : 1 =====*/
.ranking-table-list .table-row .table-td .td-item{
    display:flex;
    flex-direction:column;
}
.ranking-table-list .table-row .table-td .td-item .rank-num{
    flex:0 0 25px;
    font-size:.85rem;
    font-weight:600;
    text-align:center;
}
.ranking-table-list .table-row .table-td .td-item .rank-change{
    text-align:center;
    flex:0 0 auto;
    min-width:35px;
    white-space:nowrap;
}
.td-item .rank-change .change-box > span.change-state{
    display:none;
}
.td-item .rank-change .change-box em{
    display:inline-block;
    font-size:12px;
    color:#757271;
    vertical-align:middle;
    font-style:normal;
}
.td-item .rank-change .change-box .change-arrow{
    display:inline-block;
    vertical-align:middle;
}
.td-item .rank-change .change-box.up .change-arrow{
    display:inline-block;
    font-family:boxicons !important;
    font-weight:400;
    font-style:normal;
    font-variant:normal;
    line-height:1;
}
.td-item .rank-change .change-box.up .change-arrow::before{
    content:"\ec5d";
    display:inline-block;
    font-size:16px;
    color:#FF564C;
}
.td-item .rank-change .change-box.up > em{
    display:inline-block;
    margin-top:1px;
    font-weight:700;
    color:#FF564C;
    line-height:18px;
}
.td-item .rank-change .change-box.down .change-arrow{
    display:inline-block;
    font-family:boxicons !important;
    font-weight:400;
    font-style:normal;
    font-variant:normal;
    line-height:1;
}
.td-item .rank-change .change-box.down .change-arrow::before{
    content:"\eab7";
    display:inline-block;
    font-size:16px;
}
.td-item .rank-change .change-box.down > em{
    display:inline-block;
    margin-top:1px;
    font-weight:700;
    line-height:18px;
}
.td-item .rank-change .change-box.none em{
    height:2px;
    width:6px;
    text-indent:-1000em;
    background-color:#9C9A9A;
}

/*===== [서브] 축제 순위 리스트 : 2 =====*/
.ranking-table-list .table-row .table-td .rank-title > a{
    display:flex;
    flex-direction:column;
    align-items:left;
}
.ranking-table-list .table-row .table-td .rank-title > a .rank-thumb{
    overflow:hidden;
    text-align:center;
    position:relative;
    border-radius:3px;
    width:65px; height:85px;
    margin-bottom:.65rem;
    border:1px solid rgba(51, 51, 51, .05);
}
.ranking-table-list .table-row .table-td .rank-title > a .rank-thumb img{
    position:absolute;
    top:50%; left:50%; right:auto; bottom:auto;
    transform:translate(-50%, -50%);
    max-height:none;
    max-width:none;
    margin:auto;
    width:100%; min-height:100%;
    object-fit:cover;
}
.ranking-table-list .table-row .table-td .rank-title > a .rank-title{
    font-size:.85rem;
    font-weight:600;
}
.ranking-table-list .table-row .table-td .rank-title > a:hover .rank-title{
    text-decoration:underline;
}

/*===== [서브] aside : 기타컨텐츠 =====*/
.aside-content .aside-item{
    margin-bottom:1rem;
}
.aside-content .aside-item .aside-header{
    display:flex;
    padding:1rem 1rem 0;
}
.aside-content .aside-item .aside-header .header-title{
    font-size:1rem;
    font-weight:600;
    flex-grow:1;
}
.aside-content .aside-item .aside-header .header-btn{
    display:flex;
    gap:.5rem;
}
.aside-content .aside-item .aside-header .header-btn a,
.aside-content .aside-item .aside-header .header-btn button{
    display: flex;
    cursor: pointer;
    color: #333;
    padding-top: 0px;
    align-items: center;
}
.aside-content .aside-item .aside-header .header-btn a i,
.aside-content .aside-item .aside-header .header-btn button i{
    vertical-align: -3px;
}
.aside-content .aside-item .aside-header .header-btn a:hover,
.aside-content .aside-item .aside-header .header-btn button:hover{
    filter:brightness(1.2);
}
.aside-content .aside-item .aside-body{
    padding:1rem;
}

/*===== [서브] 축제 순위 투표하기 =====*/
.vote-list-header{
    margin-bottom:2rem;
}
.vote-visual .vote-visual-in{
    display:flex;
    flex-direction: column;
    justify-content: center;
    padding:2rem 1rem;
    height:400px;
    text-align:center;
    background: url(../../images/sub/bg-visual-vote.jpg) no-repeat center bottom;
}
.vote-visual .vote-visual-in .visual-title{
    margin-bottom:1.5rem;
    font-size:2rem;
    font-weight:500;
    color:#fff;
}
.vote-visual .vote-visual-in .visual-title strong{
    font-size:inherit;
    color:inherit;
    font-weight:700;
}
.vote-visual .vote-visual-in .visual-text{
    font-size:1rem;
    color:#fff;
}

.vote-content .vote-header .header-title{
    margin-bottom:1rem;
    font-weight:600;
    font-size:1.5rem;
}
.vote-list-anwser{
    display:flex;
    flex-wrap: wrap;
    margin: 0 -1rem;
}
.vote-item{
    flex:0 0 50%;
    margin-bottom: 1rem;
    padding: 1rem;
    position: relative;
    text-align: center;
}
.vote-item label{
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 1rem;
    cursor: pointer;
    border: 1px solid #EEEEEE;
    border-top-left-radius: .85rem;
    border-top-right-radius: .85rem;
    transition: background-color 0.3s;
}
.vote-item .vote-img{
    display: block;
    text-align: center;
    border: 1px solid rgba(51, 51, 51, .05);
    position: relative;
    width: 100%;
    padding-top: 120%;
    margin-bottom:1rem;
    overflow: hidden;
    background: #f9f9f9;
    border-radius: .35rem;
}
.vote-item .vote-img img{
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    object-fit: cover;
    object-position: center;
    transition: transform 0.3s ease;
    transform: scale(1);
    transition-duration: .3s;
}
.vote-item label:hover .vote-img img{
    transform: scale(1.2);
}


.vote-item .vote-info{
    flex-grow: 1;
}
.vote-item .info-title{
    font-size: .85rem;
    font-weight: 600;
    word-break: keep-all;
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    min-height:38px;
}
.vote-item input[type="checkbox"]{
    width: 20px;
    height: 20px;
    -webkit-appearance: none;
    appearance: none;
    border: 2px solid #ccc;
    border-radius: 4px;
    cursor: pointer;
    position: relative;
    transition: background-color 0.3s, border-color 0.3s;
    position:absolute;
    left:2.5rem; top:2.5rem;
    z-index: 1;
}
.vote-item input[type="checkbox"]:checked{
    background-color: #EE2C9E;
    border-color: #EE2C9E;
}
.vote-item input[type="checkbox"]:checked + label {
    border: 2px solid #EE2C9E;
    border-bottom:0 none;
}
.vote-item input[type="checkbox"]:checked ~ .btn-link{
    border: 2px solid #EE2C9E;
    border-top:0 none;
}
.vote-item input[type="checkbox"]:checked::after{
    content: "";
    position: absolute;
    left: 5px;
    top: 1px;
    width: 5px;
    height: 10px;
    border: solid #fff;
    border-width: 0 2px 2px 0;
    transform: rotate(45deg);
}
.vote-item .btn-link{
    color: #ccc;
    display: block;
    padding: .35rem !important;
    background-color: #fff;
    border:1px solid #eee;
    border-top:0 none;
    font-size: .85rem;
    border-radius: .85rem;
    text-decoration: none;
    border-top-left-radius: 0;
    border-top-right-radius: 0;
}
.vote-item .btn-link:hover,
.vote-item .btn-link:focus{
    background-color: #f9f9f9;
    filter: brightness(1);
}

/*===== [서브] aside : 기타 컨텐츠 : 추천 정보 =====*/
#aside-recommend{
    flex:0 0 auto;
    width:100%;
    padding:0 1rem;
}
#aside-recommend .aside-item{
    border:1px solid #EEEEEE;
}
#aside-recommend .aside-item .slide-list .item-slide{
    padding:0 .8rem;
}
#aside-recommend .aside-item .slide-list .item-slide .slide-img{
    text-align:center;
    margin-bottom:1rem;
    border:1px solid rgba(51, 51, 51, .05);
    position:relative;
    width:100%;
    padding-top:100%;
    overflow:hidden;
    background:#f9f9f9;
    border-radius:.65rem;
}
#aside-recommend .aside-item .slide-list .item-slide .slide-img img{
    width:100%;
    height:100%;
    position:absolute;
    top:0;
    left:0;
    object-fit:cover;
    object-position:center;
    transition:transform 0.3s ease;
    transform:scale(1);
    transition-duration:.3s;
}
#aside-recommend .aside-item .slide-list .item-slide a:hover .slide-img img{
    transform:scale(1.2);
}
#aside-recommend .aside-item .slide-list .item-slide .slide-subtitle{
    padding-bottom:.3rem;
    font-size:.65rem;
    color:rgba(51, 51, 51, .5);
    font-weight:500;
    text-align:left;
    overflow:hidden;
    text-overflow:ellipsis;
    display:-webkit-box;
    -webkit-line-clamp:1;
    -webkit-box-orient:vertical;
}
#aside-recommend .aside-item .slide-list .item-slide .slide-title{
    min-height:40px;
    font-size:1rem;
    color:#333;
    font-weight:600;
    text-align:left;
    line-height:1.2;
    word-break:keep-all;
    overflow:hidden;
    text-overflow:ellipsis;
    display:-webkit-box;
    -webkit-line-clamp:1;
    -webkit-box-orient:vertical;
}

/*===== [서브] aside : 주변 축제 =====*/
#aside-festival{
    flex:0 0 auto;
    width:100%;
    padding:0 1rem;
}
#aside-festival .aside-item{
    border:1px solid #EEEEEE;
}
#aside-festival .aside-item .festival-list{
    display:flex;
    flex-wrap:wrap;
}
#aside-festival .aside-item .festival-list .list-item{
    flex:0 0 auto;
    width:calc(100%/2);
    margin-bottom:1.5rem;
    padding:0;
}
#aside-festival .aside-item .festival-list .list-item:last-child{
    margin-bottom:0;
}
#aside-festival .aside-item .festival-list .list-item .item-in a{
    display:flex;
    flex-direction:column;
    text-align:center;
    align-items:center;
}
#aside-festival .aside-item .festival-list .list-item .item-in .item-img{
    flex:0 0 auto;
    width:110px; height:150px;
    margin-bottom:1rem;
    text-align:center;
    border:1px solid rgba(51, 51, 51, .05);
    position:relative;
    overflow:hidden;
    background:#f9f9f9;
    border-radius:.35rem;
}
#aside-festival .aside-item .festival-list .list-item .item-in .item-img img{
    width:100%;
    height:100%;
    position:absolute;
    top:0;
    left:0;
    object-fit:cover;
    object-position:center;
    transition:transform 0.3s ease;
    transform:scale(1);
    transition-duration:.3s;
}
#aside-festival .aside-item .festival-list .list-item .item-in a:hover .item-img img{
    transform:scale(1.2);
}
#aside-festival .aside-item .festival-list .list-item .item-in .item-info{
    flex:0 0 auto;
    flex-direction:column;
    width:100%;
    display:flex;
    align-items:left;
}
#aside-festival .aside-item .festival-list .list-item .item-in .item-info dl{
    display:flex;
    flex-direction:column;
    min-width:0;
}
#aside-festival .aside-item .festival-list .list-item .item-in .item-info dl dt{
    font-weight:600;
    font-size:1rem;
    padding-bottom:.5rem;
    white-space:nowrap;
    text-overflow:ellipsis;
    overflow:hidden;
}
#aside-festival .aside-item .festival-list .list-item .item-in a:hover .item-info dl dt{
    text-decoration:underline;
}
#aside-festival .aside-item .festival-list .list-item .item-in .item-info dl dd{
    font-size:.85rem;
    color:rgba(51, 51, 51, 0.6);
}
#aside-festival .aside-item .festival-list .list-item .item-in .item-info dl dd:last-child{
    white-space:nowrap;
    text-overflow:ellipsis;
    overflow:hidden;
}
#aside-festival .aside-item .festival-list .list-item .item-in .item-info dl dd .info-reaction{
    display:flex;
    align-items:center;
    justify-content:center;
    padding-top:.5rem;
    gap:.5rem;
    font-size:.85rem;
}

/*===== [서브] aside : 광고 =====*/
#aside-ad{
    flex:0 0 auto;
    width:100%;
    padding:0 1rem;
}
#aside-ad .aside-item{
    border:0 none;
}
#aside-recommend .aside-item:has(.ad-list),
#aside-festival .aside-item:has(.ad-list){
    border:0 none;
}
.aside-content .aside-item .aside-body:has(> .ad-list){
    padding:0;
}
.ad-list{
    display:flex;
    flex-wrap:wrap;
    flex-direction: row;
    margin: 0 -1rem;
}
.ad-list .list-item{
    flex:0 0 auto;
    width:50%;
    margin-bottom:1.5rem;
}
.ad-list .list-item .item-in{
    padding:0 1rem;
}
.ad-list .list-item a{
    display: block;
}
.ad-list .list-item a .item-img{
    display: block;
    text-align: center;
    border: 1px solid rgba(51, 51, 51, .05);
    position: relative;
    width: 100%;
    padding-top: 140%;
    overflow: hidden;
    background: #f9f9f9;
}
.ad-list .list-item a .item-img img {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    object-fit: cover;
    object-position: center;
    transition: transform 0.3s ease;
    transform: scale(1);
    transition-duration: .3s;
}
.ad-list .list-item a:hover img{
    transform:scale(1.2);
}

/*===== [서브] 축제 정보 센터 : 리스트 =====*/
#fvinfo-list{
    border-top:2px solid #333333;
}
#fvinfo-list .list-in{
    display:flex;
    flex-direction:column;
}
#fvinfo-list .list-item{
    flex:1 1 100%;
    padding:1rem 1rem;
    border-bottom:1px solid #eee;
}
#fvinfo-list .list-item.list-item-ad{
    background-color: #a9b3f50f;
    border-right: 1px solid #5b71ff26;
    border-bottom: 1px solid #5b71ff26;
    border-left: 1px solid #5b71ff26;
}
#fvinfo-list .list-item.list-item-ad:first-child{
    border: 1px solid #5b71ff26;
}
#fvinfo-list .list-item .item-in{
    display:flex;
    flex-direction:column;
}
#fvinfo-list .list-item .item-in .item-img{
    flex:0 0 auto;
    width:120px;
    margin-bottom:1rem;
}
#fvinfo-list .list-item .item-in .item-img a{
    display:block;
    text-align:center;
    border:1px solid rgba(51, 51, 51, .05);
    position:relative;
    width:100%;
    padding-top:140%;
    overflow:hidden;
    background:#f9f9f9;
    border-radius:.35rem;
}
#fvinfo-list .list-item .item-in .item-img a .label-state{
    position:absolute;
    left:10px; top:10px;
    display:inline-block;
    padding:.15rem .45rem;
    font-size:.75rem;
    z-index:1;
    border-radius:.25rem;
    background-color:transparent;
    cursor:pointer;
}
#fvinfo-list .list-item .item-in .item-img a .label-state.info-state-progress{
    background-color:#5B71FF;
    color:#fff;
}
#fvinfo-list .list-item .item-in .item-img a .label-state.info-state-start{
    background-color:#EE2C9E;
    color:#fff;
}
#fvinfo-list .list-item .item-in .item-img a .label-state.info-state-ended{
    background-color:#5F5F5F;
    color:#fff;
}
#fvinfo-list .list-item .item-in .item-img a img{
    width:100%;
    height:100%;
    position:absolute;
    top:0;
    left:0;
    object-fit:cover;
    object-position:center;
    transition:transform 0.3s ease;
    transform:scale(1);
    transition-duration:.3s;
}
#fvinfo-list .list-item .item-in .item-img a:hover img{
    transform:scale(1.2);
}
#fvinfo-list .list-item .item-in .item-info{
    flex:0 0 auto;
    width:100%;
}
#fvinfo-list .list-item .item-in .item-info .info-title{
    margin-bottom:1rem;
}
#fvinfo-list .list-item .item-in .item-info .info-title a{
    font-size:1.2rem;
    font-weight:600;
}
#fvinfo-list .list-item .item-in .item-info .info-title a:hover{
    text-decoration:underline;
}
#fvinfo-list .list-item .item-in .item-info .info-title .label-ad{
    display:inline-block;
    vertical-align: middle;
    padding-left:.15rem;
    font-size:.85rem;
    color: #818285;
}
#fvinfo-list .list-item .item-in .item-info .info-title .label-ad::before{
    content: "\e9a7";
    font-family: xeicon !important;
    font-size:1rem;
    display: inline-block;
    padding-right: .15rem;
    vertical-align: -2px;
    color: #1bc154;
    
}
#fvinfo-list .list-item .item-in .item-info .info-list{
    margin-bottom:1rem;
}
#fvinfo-list .list-item .item-in .item-info .info-list li{
    display:flex;
    margin-bottom:.35rem;
    font-size:.85rem;
}
#fvinfo-list .list-item .item-in .item-info .info-list li .info-key{
    flex:0 0 auto;
    width:80px;
    font-weight:600;
    font-size:inherit;
}
#fvinfo-list .list-item .item-in .item-info .info-list li .info-value{
    flex:1;
    font-size:inherit;
}
#fvinfo-list .list-item .item-in .item-info .info-list li .info-value a.text-link{
    color:#5B71FF;
    word-break:break-all;
    font-size:inherit;
}
#fvinfo-list .list-item .item-in .item-info .info-list li .info-value a.text-link:hover{
    text-decoration:underline;
}
#fvinfo-list .list-item .item-in .item-info .info-list li .info-value .label-tag{
    display:inline-block;
    padding:.35rem .55rem;
    font-size:.85rem;
    line-height:1;
    color:rgba(51, 51, 51, 0.6);
    background-color:#F4F4F4;
}
#fvinfo-list .list-item .item-in .item-info .info-list li .info-value .label-tag::before{
    content:'#';
    margin-right:.25rem;
}

/* [서브] 축제 정보 센터 : 리스트 - 찜, 즐겨찾기, 댓글 수 */
#fvinfo-list .list-item .item-in .item-info .info-reaction{
    display:flex;
    gap:.85rem;
    font-size:.85rem;
}
.info-reaction .reaction-rating,
.info-reaction .reaction-favorite,
.info-reaction .reaction-review,
.info-reaction .reaction-view{
    font-size:inherit;
}
.info-reaction .label-rating,
.info-reaction .label-favorite,
.info-reaction .label-review,
.info-reaction .label-view{
    font-size:inherit;
}
.info-reaction .reaction-rating .label-rating::before{
    font-family:xeicon !important;
    content:"\ea0f";
    color:#f3c81b;
    margin-right:.25rem;
}
.info-reaction .reaction-favorite .label-favorite::before{
    font-family:xeicon !important;
    content:"\ea10";
    color:#fc3e40;
    margin-right:.25rem;
}
.info-reaction .reaction-review .label-review::before{
    font-family:xeicon !important;
    content:"\ea14";
    color:rgba(51, 51, 51, 0.6);
    margin-right:.25rem;
}
.info-reaction .reaction-view .label-view::before{
    font-family:xeicon !important;
    content:"\e951";
    color:rgba(51, 51, 51, 0.6);
    margin-right:.25rem;
}

/*===== [서브] 축제 정보 센터 : 보기 =====*/
#fvinfo-festival-view{
    display:flex;
    flex-wrap:wrap;
    margin:0 -1rem;
    flex-direction:column;
}
#fvinfo-festival-view #fvinfo-coreData{
    flex:0 0 auto;
    width:100%;
    padding:0 1rem;
}
#fvinfo-festival-view #fvinfo-extraData{
    flex:0 0 auto;
    width:100%;
    padding:0 1rem;
}
#fvinfo-festival-view .aside-content{
    flex:0 0 auto;
    width:100%;
    padding:0;
    padding:0 1rem;
}
#fvinfo-festival-view #fvinfo-extraData{
    flex:0 0 auto;
    width:100%;
    padding:0 1rem;
}
#fvinfo-festival-view #fvinfo-review{
    flex:0 0 auto;
    width:100%;
    padding:0 1rem;
}

/*===== [서브] 축제 정보 센터 : 보기 - 주요 정보 =====*/
#fvinfo-coreData .fvinfo-intro{
    display:flex;
    flex-direction:column;
    border:1px solid rgba(51, 51, 51, .1);
    padding:1rem;
}
#fvinfo-coreData .fvinfo-intro .intro-img{
    flex:0 0 auto;
    width:120px;
    margin-bottom:1rem;
}
#fvinfo-coreData .fvinfo-intro .intro-img a{
    display:block;
    text-align:center;
    border:1px solid rgba(51, 51, 51, .05);
    position:relative;
    width:100%;
    padding-top:140%;
    overflow:hidden;
    background:#f9f9f9;
    border-radius:.35rem;
}
#fvinfo-coreData .fvinfo-intro .intro-img a .label-state{
    position:absolute;
    left:10px; top:10px;
    display:inline-block;
    padding:.15rem .45rem;
    font-size:.75rem;
    z-index:1;
    border-radius:.25rem;
    background-color:transparent;
    cursor:pointer;
}
#fvinfo-coreData .fvinfo-intro .intro-img a .label-state.info-state-progress{
    background-color:#5B71FF;
    color:#fff;
}
#fvinfo-coreData .fvinfo-intro .intro-img a .label-state.info-state-start{
    background-color:#EE2C9E;
    color:#fff;
}
#fvinfo-coreData .fvinfo-intro .intro-img a .label-state.info-state-ended{
    background-color:#5F5F5F;
    color:#fff;
}
#fvinfo-coreData .fvinfo-intro .intro-img a img{
    width:100%;
    height:100%;
    position:absolute;
    top:0;
    left:0;
    object-fit:cover;
    object-position:center;
    transition:transform 0.3s ease;
    transform:scale(1);
    transition-duration:.3s;
}
#fvinfo-coreData .fvinfo-intro .intro-img a:hover img{
    transform:scale(1.2);
}
#fvinfo-coreData .fvinfo-intro .intro-info{
    flex:0 0 auto;
    width:100%;
}
#fvinfo-coreData .fvinfo-intro .intro-info .info-state{
    margin-bottom:1rem;
    display:flex;
    gap:.3rem;
}
#fvinfo-coreData .fvinfo-intro .intro-info .info-state .label-state{
    display:flex;
    align-items: center;
    padding:.25rem .45rem;
    font-size:.75rem;
    z-index:1;
    border-radius:.25rem;
    background-color:transparent;
}
#fvinfo-coreData .fvinfo-intro .intro-info .info-state .label-state.info-state-progress{
    background-color:#5B71FF;
    color:#fff;
}
#fvinfo-coreData .fvinfo-intro .intro-info .info-state .label-state.info-state-start{
    background-color:#EE2C9E;
    color:#fff;
}
#fvinfo-coreData .fvinfo-intro .intro-info .info-state .label-state.info-state-ended{
    background-color:#5F5F5F;
    color:#fff;
}
#fvinfo-coreData .fvinfo-intro .intro-info .info-state .info-favorite .favorite-container{
    display:inline-flex;
    align-items:center;
    cursor:pointer;
    padding:.25rem .45rem;
    font-size:.75rem;
    user-select:none;
    border-radius:.25rem;
    border:1px solid rgba(51, 51, 51, 0.3);
    color:rgba(51, 51, 51, 0.6);
}
#fvinfo-coreData .fvinfo-intro .intro-info .info-state .info-favorite .favorite-container .favorite-text{
    font-size:inherit;
    color:inherit;
}
#fvinfo-coreData .fvinfo-intro .intro-info .info-state .info-favorite .favorite-checkbox{
    display:none;
}
.info-favorite .favorite-container .heart-icon{
    margin-right:.25rem;
    font-size:1rem;
    color:rgba(51, 51, 51, 0.6);
    transition:color 0.3s ease;
}
.info-favorite .favorite-checkbox:checked + .favorite-container .heart-icon{
    color:#FC3E40;
}
.info-favorite .favorite-checkbox + .favorite-container .heart-icon::before{
    content:"\ea11";
}
.info-favorite .favorite-checkbox:checked + .favorite-container .heart-icon::before{
    content:"\ea10";
}
.info-favorite .favorite-text::after{
    content:"찜하기";
}
.info-favorite .favorite-checkbox:checked + .favorite-container .favorite-text::after{
    content:"찜해제";
}

#fvinfo-coreData .fvinfo-intro .intro-info .info-title{
    margin-bottom:1rem;
    font-size:1.2rem;
    font-weight:600;
}
#fvinfo-coreData .fvinfo-intro .intro-info .info-title a:hover{
    text-decoration:underline;
}
#fvinfo-coreData .fvinfo-intro .intro-info .info-list{
    margin-bottom:1rem;
}
#fvinfo-coreData .fvinfo-intro .intro-info .info-list li{
    display:flex;
    margin-bottom:.35rem;
    font-size:.85rem;
}
#fvinfo-coreData .fvinfo-intro .intro-info .info-list li .info-key{
    flex:0 0 auto;
    width:80px;
    font-weight:600;
    font-size:inherit;
}
#fvinfo-coreData .fvinfo-intro .intro-info .info-list li .info-value{
    flex:1;
    font-size:inherit;
}
#fvinfo-coreData .fvinfo-intro .intro-info .info-list li .info-value a.text-link{
    color:#5B71FF;
    word-break:break-all;
    font-size:inherit;
}
#fvinfo-coreData .fvinfo-intro .intro-info .info-list li .info-value a.text-link:hover{
    text-decoration:underline;
}
#fvinfo-coreData .fvinfo-intro .intro-info .info-list li .info-value .label-tag{
    display:inline-block;
    padding:.35rem .55rem;
    font-size:.85rem;
    line-height:1;
    color:rgba(51, 51, 51, 0.6);
    background-color:#F4F4F4;
}
#fvinfo-coreData .fvinfo-intro .intro-info .info-list li .info-value .label-tag::before{
    content:'#';
    margin-right:.25rem;
}

/*===== [서브] 축제 정보 센터 : 보기 - 찜, 즐겨찾기, 댓글 수 =====*/
#fvinfo-coreData .fvinfo-intro .intro-info .info-reaction{
    display:flex;
    gap:.85rem;
    font-size:.85rem;
}

/*===== [서브] 축제 정보 센터 : 보기 - 부가 정보 =====*/
#fvinfo-extraData{}


/*===== [공통] 축제 정보 센터 : 보기 - 리뷰 =====*/

/* 리뷰 쓰기 */
.review-container .review-input{
    background-color:#F7F7F7;
    border:1px solid #EEEEEE;
    padding:1rem;
    display:flex;
    flex-direction:column;
    gap:10px;
    margin-bottom:20px;
}
.review-container textarea{
    width:100%;
    height:80px;
    padding:.85rem;
    border:1px solid #ddd;
    resize:none;
}
.review-container .review-buttons{
    display:flex;
    justify-content:flex-end;
    gap:.5rem;
}
.review-container .btn-write{
    background-color:#EE2C9E;
    border:1px solid #EE2C9E;
    color:#fff;
}
.review-container .btn-photo{
    background-color:#ffffff;
    border:1px solid #DDDDDD;
    color:#9F9F9F;
    min-width:50px;
}
.review-container .btn-photo::before{
    font-family:xeicon !important;
    content:"\ea4b";
    font-size:1rem;
}
.review-container .review-input .review-photo{
    margin-bottom:.5rem;
}
.review-container .review-input .review-photo .photo-list{
    display:flex;
    gap:.5rem;
    flex-wrap:wrap;
}
.review-container .review-input .review-photo .photo-list .list-item{
    position:relative;
}
.review-container .review-input .review-photo .photo-list .list-item a.btn-view-photo{
    width:60px;
    height:60px;
    display:block;
    text-align:center;
    border:1px solid #eee;
    position:relative;
    overflow:hidden;
}
.review-container .review-input .review-photo .photo-list .list-item a.btn-view-photo img{
    width:100%;
    height:100%;
    position:absolute;
    top:0;
    left:0;
    object-fit:cover;
    object-position:center;
}
.review-container .review-input .review-photo .photo-list .list-item a.btn-delete-photo{
    display:inline-block;
    width:18px; height:18px;
    text-align:center;
    position:absolute;
    right:0; top:0;
    background-color:rgba(51, 51, 51, .5);
}
.review-container .review-input .review-photo .photo-list .list-item a.btn-delete-photo:hover{
    background-color:rgba(51, 51, 51, .8);
}
.review-container .review-input .review-photo .photo-list .list-item a.btn-delete-photo::before{
    display:inline-block;
    color:#fff;
    content:"\e922";
    font-family:xeicon !important;
    line-height:1;
}
/*  사진추가 UI 버튼으로 수정
.review-container .review-input .review-photo .photo-list .list-item a.btn-add-photo{
    width:80px;
    height:80px;
    display:block;
    text-align:center;
    border:1px solid #eee;
    position:relative;
    overflow:hidden;
    background-color:rgba(51, 51, 51, .5);
    border:1px solid #919191;
}
.review-container .review-input .review-photo .photo-list .list-item a.btn-add-photo:hover{
    background-color:rgba(51, 51, 51, .6);
}
.review-container .review-input .review-photo .photo-list .list-item a.btn-add-photo::after{
    font-family:xeicon !important;
    content:"\e913";
    color:#fff;
    display:block;
    position:absolute;
    left:50%; top:50%;
    transform:translate(-50%, -50%);
}*/

/* 리뷰 리스트 */
.review-container .review-list{
    margin-top:20px;
}
.review-container .review-list .review-item{
    display:flex;
    align-items:flex-start;
    flex-direction:column;
    gap:1rem;
    padding:1rem 0;
    background:#fff;
    border-radius:5px;
    border-bottom:1px solid #eee;
}
.review-container .review-list .review-item .item-in{
    width:100%;
    display:flex;
    align-items:flex-start;
    gap:1rem;
}
.review-container .review-list .review-item .item-in .review-userphoto{
    text-align:center;
    border:1px solid transparent;
    position:relative;
    overflow:hidden;
    background:#f9f9f9;
    width:50px; height:50px;
    border-radius:50%;
}
.review-container .review-list .review-item .item-in .review-userphoto img{
    width:100%;
    height:100%;
    position:absolute;
    top:0;
    left:0;
    object-fit:cover;
    object-position:center;
}
.review-container .review-list .review-item .item-in .review-content{
    flex-grow:1;
}
.review-container .review-list .review-item .item-in .review-content .review-text{
    font-size:.85em;
    margin-bottom:.5rem;
}
.review-container .review-list .review-item .item-in .review-content .review-text .reply-username{
    font-size:inherit;
    color:#007bff;
    font-weight:600;
    margin-right:.25rem;
}
.review-container .review-list .review-item .item-in .review-content .review-photo{
    margin-bottom:.5rem;
}
.review-container .review-list .review-item .item-in .review-content .review-photo .photo-list{
    display:flex;
    gap:.5rem;
    flex-wrap:wrap;
}
.review-container .review-list .review-item .item-in .review-content .review-photo .photo-list .list-item.list-item-more a::after{
    content:"";
    color:#fff;
    display:block;
    position:absolute;
    left:0; top:0; right:0; bottom:0;
    background-color:rgba(51, 51, 51, .8);
}
.review-container .review-list .review-item .item-in .review-content .review-photo .photo-list .list-item a.btn-view-photo{
    width:60px; height:60px;
    display:block;
    text-align:center;
    border:1px solid #eee;
    position:relative;
    overflow:hidden;
}
.review-container .review-list .review-item .item-in .review-content .review-photo .photo-list .list-item a.btn-view-photo img{
    width:100%;
    height:100%;
    position:absolute;
    top:0;
    left:0;
    object-fit:cover;
    object-position:center;
}
.review-container .review-list .review-item .item-in .review-content .review-photo .photo-list .list-item a.btn-view-photo .photo-count{
    display:inline-block;
    position:absolute;
    left:50%; top:50%;
    transform:translate(-50%,-50%);
    color:#fff;
    font-size:1rem;
    z-index:1;
}
.review-container .review-list .review-item .item-in .review-content .review-meta{
    display:flex;
    margin-bottom:.5rem;
    font-size:.85em;
    justify-content:space-between;
}
.review-container .review-list .review-item .item-in .review-content .review-meta span{
    position:relative;
    display:inline-block;
    font-size:inherit;
}
.review-container .review-list .review-item .item-in .review-content .review-meta span:last-child::after{
    display:none;
}
.review-container .review-list .review-item .item-in .review-content .review-meta .review-username{
    font-weight:600;
    color:#333;
}
.review-container .review-list .review-item .item-in .review-content .review-meta .dropdown-review{
    font-weight:600;
    color:#333;
}
.review-container .review-list .review-item .item-in .review-content .review-meta .dropdown-review .dropdown-toggle{
    cursor:pointer;
}
.review-container .review-list .review-item .item-in .review-content .review-meta .dropdown-review .dropdown-toggle::before{
    content:"";
    font-family:xeicon !important;
    content:"\e949";
    color:rgba(51, 51, 51, 0.6);
    margin-right:.25rem;
}
.review-container .review-list .review-item .item-in .review-content .review-meta .dropdown-review .dropdown-content{
    min-width:55px;
}
.review-container .review-list .review-item .item-in .review-content .review-meta .dropdown-review .dropdown-content .dropdown-body a.btn-dropdown{
    display:block;
    padding:.25rem 0;
    font-weight:600;
    color:#333;
    font-size:.85rem;
    text-align:center;
}
.review-container .review-list .review-item .item-in .review-content .review-reaction{
    display:flex;
    gap:.3rem;
}
.review-container .review-list .review-item .item-in .review-content .review-reaction .btn::before,
.review-container .review-list .review-item .item-in .review-content .review-reaction .review-favorite::before{
    content:"";
    display:inline-block;
    width:1px; height:12px;
    background-color:#eee;
    position:absolute;
    left:-2px; top:8px; 
}
.review-container .review-list .review-item .item-in .review-content .review-reaction .btn{
    cursor:pointer;
    padding:.25rem .5rem;
    font-size:.85rem;
    border:0 none;
    color:rgba(51, 51, 51, 0.6);
    position:relative;
}
.review-container .review-list .review-item .item-in .review-content .review-reaction .btn:hover{
    filter:brightness(1) !important;
    color:rgba(51, 51, 51, 0.8);
}
.review-container .review-list .review-item .item-in .review-content .review-reaction .review-favorite{
    position:relative;
}
.review-container .review-list .review-item .item-in .review-content .review-reaction span.review-date{
    padding:.25rem .5rem .25rem 0;
    font-size:.85rem;
    color:rgba(51, 51, 51, 0.6);
}
.review-container .review-list .review-item .item-in .review-content .edit-section,
.review-container .review-list .review-item .item-in .review-content .reply-section{
    width:100%;
    margin-top:10px;
    gap:5px;
    text-align:right;
}
.review-container .review-list .review-item .item-in .review-content .review-favorite .favorite-container{
    display:inline-flex;
    align-items:center;
    cursor:pointer;
    padding:.25rem .5rem .25rem .5rem;
    font-size:.85rem;
    user-select:none;
    border-radius:.25rem;
    border:0 none;
    color:rgba(51, 51, 51, 0.6);
}
.review-container .review-list .review-item .item-in .review-content .review-favorite .favorite-container .favorite-text{
    font-size:inherit;
    color:inherit;
}
.review-container .review-list .review-item .item-in .review-content .review-favorite .favorite-checkbox{
    display:none;
}
.review-favorite .favorite-container .heart-icon{
    margin-right:.25rem;
    font-size:1rem;
    color:rgba(51, 51, 51, 0.6);
    transition:color 0.3s ease;
}
.review-favorite .favorite-checkbox:checked + .favorite-container .heart-icon{
    color:#FC3E40;
}
.review-favorite .favorite-checkbox + .favorite-container .heart-icon::before{
    content:"\ea11";
}
.review-favorite .favorite-checkbox:checked + .favorite-container .heart-icon::before{
    content:"\ea10";
}

/* 답글 */
.review-container .review-list .review-item.review-item-reply{
    padding-left:65px;
}


/*===== [서브] 축제 뉴스 : 리스트 =====*/
#fvnews-list-setting.list-setting{
    justify-content: flex-end;
}
#fvnews-list{
    border-top:2px solid #333333;
}
#fvnews-list .list-in{
    display:flex;
    flex-wrap: wrap;
    margin:0 -1rem;
}
#fvnews-list .list-item{
    flex:0 0 50%;
    padding:1rem 1rem;
}
#fvnews-list .list-item .item-in a{
    display: flex;
    flex-direction: column;
    text-align: left;
    align-items: left;
}
#fvnews-list .list-item .item-in a .item-img{
    display:block;
    text-align:center;
    border:1px solid rgba(51, 51, 51, .05);
    position:relative;
    width:100%;
    padding-top:140%;
    margin-bottom:1rem;
    overflow:hidden;
    background:#f9f9f9;
    border-radius:.35rem;
}
#fvnews-list .list-item .item-in a .item-img img{
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    object-fit: cover;
    object-position: center;
    transition: transform 0.3s ease;
    transform: scale(1);
    transition-duration: .3s;
}
#fvnews-list .list-item .item-in a:hover .item-img img{
    transform:scale(1.2);
}
#fvnews-list .list-item .item-in a .item-info{
    flex: 0 0 auto;
    flex-direction: column;
    display: flex;
    align-items: left;
}
#fvnews-list .list-item .item-in a .item-info .info-subtitle{
    padding-bottom: .5rem;
    font-size: .85rem;
    color: rgba(51, 51, 51, 0.6);
}
#fvnews-list .list-item .item-in a .item-info .info-title{
    font-weight: 600;
    font-size: 1rem;
    text-overflow: ellipsis;
    overflow: hidden;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;    
}
#fvnews-list .list-item .item-in a:hover .item-info .info-subtitle,
#fvnews-list .list-item .item-in a:hover .item-info .info-title{
    filter:brightness(1.5);
}

/*===== [서브] 축제 뉴스 : 보기 =====*/
#fvnews-festival-view{
    display:flex;
    flex-wrap:wrap;
    margin:0 -1rem;
    flex-direction:column;
}
#fvnews-festival-view #fvnews-coreData{
    flex:0 0 auto;
    width:100%;
    padding:0 1rem;
}
#fvnews-festival-view .aside-content{
    flex:0 0 auto;
    width:100%;
    padding:0;
    padding:0 1rem;
}
#fvnews-festival-view #fvnews-extraData{
    flex:0 0 auto;
    width:100%;
    padding:0 1rem;
}
#fvnews-festival-view #fvnews-review{
    flex:0 0 auto;
    width:100%;
    padding:0 1rem;
}

/*===== [서브] 축제 뉴스 : 보기 - 주요 정보 =====*/
#fvnews-coreData .fvnews-intro{
    display:flex;
    flex-direction:column;
    border:1px solid rgba(51, 51, 51, .1);
    padding:1rem;
}
#fvnews-coreData .fvnews-intro .intro-info{
    display:flex;
    flex-direction:column;
    padding-bottom:1rem;
    margin-bottom:1rem;
    border-bottom:1px solid rgba(51, 51, 51, .1);
}
#fvnews-coreData .fvnews-intro .intro-info .info-title{
    margin-bottom: 1rem;
    font-size: 1.2rem;
    font-weight: 600;
}
#fvnews-coreData .fvnews-intro .intro-info .info-meta{
    display:flex;
    gap: .85rem;
    margin-bottom:.85rem;
}
#fvnews-coreData .fvnews-intro .intro-info .info-meta .meta-item::after{
    margin-left: .5rem;
    content: "";
    display: inline-block;
    width: 1px;
    height: 14px;
    vertical-align: -2px;
    background-color: rgba(51, 51, 51, .15);
}
#fvnews-coreData .fvnews-intro .intro-info .info-meta .meta-item:last-child::after{
    display:none;
}
#fvnews-coreData .fvnews-intro .intro-info .info-reaction{
    display:flex;
    gap: .85rem;
}

/*===== 공지사항 =====*/
#notice-content.form-control-plaintext{
    min-height:350px;
}

/*===== 자주하는 질문 =====*/
.faq-list{
    border-top: 1px solid #373F57;
    display:flex;
    flex-direction:column;
}
.faq-list .ab-accordion-section{
    border-bottom:1px solid #f5f5f5;
}
.faq-list .ab-accordion-toggle{
    display:flex;
    cursor: pointer;
    padding:1rem 1rem;
}
.faq-list .ab-accordion-toggle .ab-accordion-title{
    flex:1;
    position:relative;
    padding-left:1.5rem;
    font-size:1rem;
    font-weight:600;
}
.faq-list .ab-accordion-toggle.active .ab-accordion-title{
    color: #EE2C9E;
}
.faq-list .ab-accordion-toggle .ab-accordion-title::before{
    content: 'Q.';
    font-weight: 700;
    display: inline-block;
    position: absolute;
    left:0px;
    top:0px;
}
.faq-list .ab-accordion-toggle .btn-go{
    float:right;
    cursor: pointer;
    margin-top: .2rem;
}
.faq-list .ab-accordion-toggle .btn-go::before{
    content: "\e93e";
    font-family: xeicon !important;
    font-size:.9rem;
    display: inline-block;
    speak: none;
    font-style: normal;
    font-weight: 400;
    font-variant: normal;
    text-transform: none;
    line-height: 1;
    transition:transform 0.3s ease;
}
.faq-list .ab-accordion-toggle.active .btn-go::before{
    -webkit-transform: rotate(90deg);
    transform: rotate(90deg);
}
.faq-list .faq-content{
    display:none;
    padding: 1rem;
    background: #f9f9f9;
    border: 1px solid #f5f5f5;
    max-height:150px;
    overflow-y:auto;
}
.faq-list .faq-content .faq-list-in{
    font-size:.95rem;
}


/*===== MEDIA QUERIES : DESKTOP =====*/
@media screen and (min-width:768px){

    /*===== LAYOUT =====*/
    .wrapper.wrapper-sub{
        padding-bottom:25em;
    }

    /*===== SUB LAYOUT FLEX =====*/
    .layout-flex.layout-sub{
        flex-direction:row;
        margin:0 -10px 3rem;
    }
    .layout-flex.layout-sub .flex-item{
        flex:1 1 50%; 
    }
    
    /*===== SUB SECTION =====*/
    .sub-section{
        margin-bottom:2.5rem;
    }
    .sub-section-header{
        margin-bottom:1.5rem;
    }
    .sub-section .section-item{
        margin-bottom:2.5rem;
    }
    .sub-section .section-item .item-header{
        font-size:1.1rem;
    }

    /*===== SUB TAB =====*/
    .wrapper-sub .sub-tabs li{
        padding-right:5px;
        padding-bottom:0;
    }
    .wrapper-sub .sub-tabs li a{
        padding:.45rem 0;
        margin-right:1rem;
        font-size:1.2rem;
    }
    .wrapper-sub .sub-tabs li a.active{
        border-bottom:4px solid #EE2C9E;
    }
    .wrapper-sub .tab-content{
        padding:1.5rem 0;
    }

    /*===== CONTENT =====*/
    #content{
        padding:5rem 1.5rem 7rem;
    }
    .content-header{
        padding:2rem 0 2rem;
        flex-direction:unset;
    }
    .content-header .header-title{
        font-size:1.6rem;
        padding-bottom:0;
    }
    .content-sub .sub-in .sub-header{
        margin:2rem 0;
    }

    /*===== [개별] 로그인 =====*/
    .login-box .box-header .header-title{
        padding-bottom:.5rem;
        font-size:1.8rem;
    }
    .login-box .box-header .header-guide{
        font-size:.85rem;
    }

    /*===== [개별] 로그인 - 로그인 폼 =====*/
    .login-form .form-group .input-field .form-control{
        height: 55px;
        font-size: .9rem;
        padding: 0 15px;
    }
    .login-form .form-group .form-icon{
        right: 15px;
        top: 15px;
        font-size: 1.3rem;
    }
    .login-menu .idpw-find ul li::before{
        top: 5px;
        right: 0;
        width: 1px;
        height: 12px;
    }
    .login-menu a{
        font-size:.9rem;
    }
    .login-form .btn-login{
        height:50px;
    }

    /*===== [개별] 비밀번호 찾기 확인 읽기 =====*/
    .login-form .form-group label{
        font-size: 1rem;
    }
    .login-form .form-group .form-input-text{
        padding: 13px 15px;
        height:55px;
    }

    /*===== [개별] 유효성 검사 =====*/
    .form-validate{
        padding-bottom:.9rem;
    }
    .error-message, 
    .error-message strong{
        font-size:.9rem;
    }

    /*===== [개별] 약관동의&회원가입 =====*/
    .join-box .box-header .header-title{
        padding-bottom:.5rem;
        font-size:1.8rem;
    }
    .join-box .box-header .header-guide{
        font-size:.85rem;
    }

    .join-box .btn-container,
    .login-box .btn-container{
        padding-top:.95rem;
    }

    /*===== [개별] 약관동의 : 약관동의 폼 =====*/
    .join-form .form-group{
        margin-bottom:25px;
    }
    .join-form .form-group .form-check{
        margin-bottom:5px;
    }
    .join-form .form-group .terms-content{
        height:200px;
        padding:15px;
        font-size:1rem;
    }
    .join-form .form-group .terms-content ul li{
        font-size:15px;
    }
    .join-form .form-group .terms-content ul li strong{
        padding-bottom:.65rem;
        font-size:15px;
    }
    .agree-form .form-group .btn-go::before{
        font-size:.95rem;
    }
    .agree-form .form-group .terms-content{
        padding: 1rem;
        margin-top: 1rem;
        max-height:150px;
    }
    .agree-form .form-group .terms-content li{
        font-size:.8rem;
    }
    .agree-form .form-group .guide-content{
        padding-top:.5rem;
        padding-left:1.5rem;
    }
    .agree-form .form-group .guide-content li{
        font-size:.8rem;
    }

    /*===== [개별] 회원가입 : 회원가입 폼 =====*/
    .join-form .form-group label {
        font-size: 1rem;
    }
    .join-form .form-group .form-control{
        height:50px;
    }
    .join-form .form-group .form-input-text{
        height:50px;
    }

    /*===== [공통] 시기 및 지역 셀렉트박스 =====*/
    .list-setting{
        flex-direction:row;
        gap:0;
        justify-content: space-between;
    }
    .list-setting .list-select{
        flex:1;
        display:flex;
        gap:.5rem;
    }
    .list-setting .list-select .select-box{
        flex:0 0 auto;
        width:150px;
    }
    .list-setting .list-select .select-box::after{
        right:15px;
        font-size:1rem;
    }
    .list-setting .list-select .select-box select{
        padding:.5rem .8rem;
        padding-right:40px;
        border-radius:.35rem;
        font-size:1rem;
    }
    .list-setting .list-sort .btn-sort{
        font-size:1rem;
    }

    /*===== [서브] 축제 달력 =====*/
    #schedule-header{
        width:100%;
    }
    #schedule-header #currentMonth{
        font-size:1.4rem;
    }
    #schedule-header #currentMonth{
        font-size:1.2rem;
    }
    #schedule-header .btn-calendar-arrow{
        padding:.25rem .45rem;
        font-size:0.85rem;
    }

    /*===== 축제 달력 =====*/
    #schedule-calendar{
        width:100%;
    }
    #schedule-calendar .calendar-header .calendar-week{
        gap:10px;
    }
    #schedule-calendar .calendar-body .calendar{
        gap:10px;
        grid-template-columns:repeat(7, 1fr);
    }
    #schedule-calendar .calendar-header .calendar-item{
        font-size:1rem;
    }
    #schedule-calendar .calendar-body .calendar .calendar-item{
        height:120px;
        min-height:120px;
    }
    #schedule-calendar .calendar-body .calendar .calendar-item .day{
        font-size:1rem;
    }
    #schedule-calendar .calendar-body .calendar .events{
        gap:5px;
    }
    #schedule-calendar .calendar-body .calendar .festival-progress,
    #schedule-calendar .calendar-body .calendar .festival-start,
    #schedule-calendar .calendar-body .calendar .festival-ended{
        font-size:12px;
    }
    #schedule-calendar .calendar-body .calendar .festival-text{
        display:inline;
    }
    
    /*===== 축제 달력 상세보기 =====*/
    #schedule-calendar-detail{
        width:100%;
    }
    #schedule-calendar-detail .calendar-detail-header{
        padding:.6rem;
    }
    #schedule-calendar-detail .calendar-detail-body .details-panel .paner-header{
        padding:.6rem;
    }
    #schedule-calendar-detail .calendar-detail-body .details-panel .paner-body{
        padding:1rem;
    }

    /*===== 축제 달력 상세보기 리스트 =====*/
    .details-panel .paner-body .festival-list .list-item{
        width:calc(100%/3);
        margin-bottom:1.5rem;
    }
    .details-panel .paner-body .festival-list .list-item .item-in a{
        flex-direction:column;
    }
    .details-panel .paner-body .festival-list .list-item .item-in .item-img{
        width:130px; height:180px;
    }

    /*===== [서브] 축제 순위 =====*/  
    #ranking-content{
        width:100%;
    }
    #ranking-content #ranking-header .header-title{
        font-size:1.5rem;
    }

    /*===== [서브] 축제 순위 리스트 =====*/
    .ranking-table-list .table-list-body .table-row{
        flex-direction:row;
    }
    .ranking-table-list .table-row .table-th,
    .ranking-table-list .table-row .table-td{
        text-align:left;
        font-size:1rem;
        word-break:keep-all;
    }
    .ranking-table-list .table-row .table-th:first-child,
    .ranking-table-list .table-row .table-td:first-child{
        width:110px;
        min-width:110px;
        flex:0 0 auto;
    }
    .ranking-table-list .table-row .table-th:nth-child(2),
    .ranking-table-list .table-row .table-td:nth-child(2){
    }
    .ranking-table-list .table-row .table-th:nth-child(3),
    .ranking-table-list .table-row .table-td:nth-child(3){
        text-align:center;
        width:120px;
        min-width:120px;
        flex:0 0 auto;
    }
    .ranking-table-list .table-row .table-th:nth-child(4),
    .ranking-table-list .table-row .table-td:nth-child(4){
        text-align:center;
        width:90px;
        min-width:90px;
        flex:0 0 auto;
    }

    /*===== [서브] 축제 순위 리스트 : 1 =====*/
    .ranking-table-list .table-row .table-td .td-item{
        flex-direction:row;
    }
    .ranking-table-list .table-row .table-td .td-item .rank-num{
        flex:0 0 34px;
        padding-right:.5rem;
        font-size:1rem;
        text-align:center;
    }
    /*===== [서브] 축제 순위 리스트 : 2 =====*/
    .ranking-table-list .table-row .table-td .rank-title > a{
        display:flex;
        flex-direction:row;
        align-items:center;
    }
    .ranking-table-list .table-row .table-td .rank-title > a .rank-thumb{
        margin-right:1rem;
        width:75px; height:95px;
        margin-bottom:0;
    }
    .ranking-table-list .table-row .table-td .rank-title > a .rank-title{
        font-size:1rem;
    }

    /*===== [서브] aside : 기타컨텐츠 =====*/
    .aside-content .aside-item .aside-header{
        padding:1.5rem 1.2rem 0;
    }
    .aside-content .aside-item .aside-header .header-title{
        font-size:1.1rem;
    }
    .aside-content .aside-item .aside-body{
        padding:1.5rem 1.2rem;
    }

    /*===== [서브] 축제 순위 투표하기 =====*/
    .vote-list-header{
        margin-bottom:2.5rem;
    }
    .vote-visual .vote-visual-in{
        padding:2.5rem 1rem;
        height:500px;
    }
    .vote-visual .vote-visual-in .visual-title{
        margin-bottom:1.2rem;
        font-size:2.5rem;
    }
    .vote-visual .vote-visual-in .visual-text{
        font-size:1rem;
    }
    .vote-item{
        flex:0 0 calc(100%/3);
    }
    .vote-item .info-title{
        font-size: 1rem;
        min-height:44px;
    }

    /*===== [서브] aside : 기타 컨텐츠 : 추천 정보 =====*/
    #aside-recommend{
        width:100%;
    }
    #aside-recommend .aside-item .slide-list .item-slide{
        padding:0 .9rem;
    }
    #aside-recommend .aside-item .slide-list .item-slide .slide-img{
        border-radius:.75rem;
    }
    #aside-recommend .aside-item .slide-list .item-slide .slide-subtitle{
        padding-bottom:.3rem;
        font-size:.85rem;
    }
    #aside-recommend .aside-item .slide-list .item-slide .slide-title{
        min-height:20px;
        font-size:1rem;
        line-height:1.2;
    }

    /*===== [서브] aside : 주변 축제 =====*/
    #aside-festival{
        width:100%;
    }
    #aside-festival .aside-item .festival-list .list-item{
        width:calc(100%/3);
        margin-bottom:1.5rem;
    }
    #aside-festival .aside-item .festival-list .list-item .item-in a{
        flex-direction:column;
    }
    #aside-festival .aside-item .festival-list .list-item .item-in .item-img{
        width:130px; height:180px;
    }

    /*===== [서브] aside : 광고 =====*/
    #aside-ad{
        width:100%;
    }
    .ad-list{
        flex-direction: column;
        flex-wrap: nowrap;
    }
    .ad-list .list-item{
        width:100%;
    }
    .ad-list .list-item:last-child{
        margin-bottom:0;
    }
    .ad-list .list-item .item-in{
        padding:0 1rem;
    }

    /*===== [서브] 축제 정보 센터 =====*/    

    /*===== [서브] 축제 정보 센터 : 리스트 =====*/
    #fvinfo-list .list-item{
        padding:1.5rem 1.5rem;
    }
    #fvinfo-list .list-item .item-in{
        display:flex;
        flex-direction:row;
    }
    #fvinfo-list .list-item .item-in .item-img{
        flex:0 0 auto;
        width:25%;
        margin:0;
    }
    #fvinfo-list .list-item .item-in .item-img a{
        border-radius:.55rem;
    }
    #fvinfo-list .list-item .item-in .item-img a .label-state{
        left:12px; top:12px;
        padding:.2rem .55rem;
        font-size:.85rem;
        border-radius:.25rem;
    }
    #fvinfo-list .list-item .item-in .item-info{
        flex:1 0 auto;
        width:75%;
        padding-left:2rem;
    }
    #fvinfo-list .list-item .item-in .item-info .info-title{
        margin-bottom:1.5rem;
    }
    #fvinfo-list .list-item .item-in .item-info .info-title a{
        font-size:1.4rem;
    }
    #fvinfo-list .list-item .item-in .item-info .info-list{
        margin-bottom:1.2rem;
    }
    #fvinfo-list .list-item .item-in .item-info .info-list li{
        margin-bottom:.45rem;
        font-size:.9rem;
    }
    #fvinfo-list .list-item .item-in .item-info .info-list li .info-key{
        width:90px;
    }

    /* [서브] 축제 정보 센터 : 리스트 - 찜, 즐겨찾기, 댓글 수 */
    #fvinfo-list .list-item .item-in .item-info .info-reaction{
        font-size:.9rem;
    }


    /*===== [서브] 축제 정보 센터 : 보기 =====*/
    #fvinfo-coreData{
    }

    /*===== [서브] 축제 정보 센터 : 주요 정보 =====*/
    #fvinfo-coreData .fvinfo-intro{
        display:flex;
        flex-direction:row;
        padding:1.5rem;
    }
    #fvinfo-coreData .fvinfo-intro .intro-img{
        flex:0 0 auto;
        width:25%;
        margin:0;
    }
    #fvinfo-coreData .fvinfo-intro .intro-img a{
        border-radius:.55rem;
    }
    #fvinfo-coreData .fvinfo-intro .intro-img a .label-state{
        left:12px; top:12px;
        padding:.2rem .55rem;
        font-size:.85rem;
        border-radius:.25rem;
    }
    #fvinfo-coreData .fvinfo-intro .intro-info{
        flex:1 0 auto;
        width:75%;
        padding-left:2rem;
    }
    #fvinfo-coreData .fvinfo-intro .intro-info .info-state .label-state{
        padding:.2rem .55rem;
        font-size:.85rem;
        border-radius:.25rem;
    }
    #fvinfo-coreData .fvinfo-intro .intro-info .info-state .info-favorite .favorite-container{
        padding:.2rem .55rem;
        font-size:.85rem;
        border-radius:.25rem;
    }
    #fvinfo-coreData .fvinfo-intro .intro-info .info-title{
        margin-bottom:1.5rem;
        font-size:1.4rem;
    }
    .info-favorite .favorite-container .heart-icon{
        margin-right:.25rem;
        font-size:1rem;
    }
    #fvinfo-coreData .fvinfo-intro .intro-info .info-list{
        margin-bottom:1.2rem;
    }
    #fvinfo-coreData .fvinfo-intro .intro-info .info-list li{
        margin-bottom:.45rem;
        font-size:.9rem;
    }
    #fvinfo-coreData .fvinfo-intro .intro-info .info-list li .info-key{
        width:90px;
    }

    /*===== [서브] 축제 정보 센터 : 보기 - 찜, 즐겨찾기, 댓글 수 =====*/
    #fvinfo-coreData .fvinfo-intro .intro-info .info-reaction{
        font-size:.9rem;
    }

    /*===== [서브] 축제 정보 센터 : 보기 - 리뷰 =====*/
    /* 리뷰 쓰기 */
    .review-container .review-input{
        padding:1rem;
        margin-bottom:20px;
    }
    .review-container textarea{
        padding:.85rem;
        font-size:1rem;
    }
    .review-container .review-buttons{
        gap:.5rem;
    }
    .review-container .review-input .review-photo .photo-list .list-item a.btn-view-photo{
        width:80px;
        height:80px;
    }

    /* 리뷰 리스트 */
    .review-container .review-list{
        margin-top:20px;
    }
    .review-container .review-list .review-item{
        gap:1rem;
        padding:1rem 0;
    }
    .review-container .review-list .review-item .item-in{
        gap:1rem;
    }
    .review-container .review-list .review-item .item-in .review-userphoto{
        width:50px; height:50px;
        border-radius:50%;
    }
    .review-container .review-list .review-item .item-in .review-content .review-text{
        font-size:1em;
    }
    .review-container .review-list .review-item .item-in .review-content .review-photo{
        margin-bottom:.5rem;
    }
    .review-container .review-list .review-item .item-in .review-content .review-meta{
        font-size:1rem;
    }
    .review-container .review-list .review-item .item-in .review-content .review-photo .photo-list .list-item a.btn-view-photo{
        width:80px; height:80px;
    }

    /*===== [서브] 축제 뉴스 =====*/    

    /*===== [서브] 축제 뉴스 : 리스트 =====*/
    #fvnews-list .list-item{
        flex:0 0 calc(100%/3);
        padding:1.5rem 1rem;;
    }
    #fvnews-list .list-item .item-in a .item-info .info-subtitle{
        font-size: 1rem;
    }
    #fvnews-list .list-item .item-in a .item-info .info-title{
        font-size: 1.2rem;
    }

    /*===== [서브] 축제 뉴스 : 보기 =====*/
    #fvnews-festival-view{
        flex-direction:row;
    }
    #fvnews-festival-view #fvnews-coreData{
        flex:0 0 auto;
        width:70%;
    }
    #fvnews-festival-view .aside-content{
        flex:0 0 auto;
        width:30%;
    }
    #fvnews-festival-view #fvnews-review{
        flex:0 0 auto;
        width:100%;
        padding:0 1rem;
    }

    /*===== [서브] 축제 뉴스 : 보기 - 주요 정보 =====*/
    #fvnews-coreData .fvnews-intro{
        padding:1.5rem;
    }
    #fvnews-coreData .fvnews-intro .intro-info{
        margin-bottom:1.5rem;
    }
    #fvnews-coreData .fvnews-intro .intro-info .info-title{
        margin-bottom: 1.2rem;
        font-size: 1.4rem;
    }

    /*===== 자주하는 질문 =====*/
    .faq-list .ab-accordion-toggle{
        padding:1.2rem 1.2rem;
    }
    .faq-list .ab-accordion-toggle .ab-accordion-title{
        padding-left:1.6rem;
        font-size:1.2rem;
    }
    .faq-list .faq-content{
        padding: 1.5rem;
    }
    .faq-list .faq-content .faq-list-in{
        font-size:1rem;
    }
    
    

}


/*===== MEDIA QUERIES : WIDE DESKTOP =====*/
@media screen and (min-width:992px){

    /*===== LAYOUT =====*/
    .wrapper.wrapper-sub{
        padding-bottom:30rem;
    }

    /*===== SUB LAYOUT FLEX =====*/
    .layout-flex.layout-sub{
        margin:0 -10px 4rem;
    }

    /*===== SUB SECTION =====*/
    .sub-section{
        margin-bottom:3.5rem;
    }
    .sub-section-header{
        margin-bottom:2rem;
    }
    .sub-section .section-item{
        margin-bottom:3.5rem;
    }
    .sub-section .section-item .item-header{
        font-size:1.2rem;
    }

    /*===== CONTENT =====*/
    #content{
        padding:6rem 1.5rem 8rem;
    }
    .content-header{
        padding:2.5rem 0 2.5rem;
    }
    .content-header .header-title{
        font-size:1.8rem;
    }
    .content-sub .sub-in .sub-header{
        margin:3rem 0;
    }

    /*===== [개별] 로그인 =====*/
    .login-box .box-header .header-title{
        padding-bottom:.5rem;
        font-size:2rem;
    }
    .login-box .box-header .header-guide{
        font-size:1rem;
    }

    /*===== [개별] 로그인 - 로그인 폼 =====*/
    .login-form .form-group .input-field .form-control{
        height: 60px;
        font-size: 1rem;
        padding: 0 15px;
    }
    .login-form .form-group .form-icon{
        right: 15px;
        top: 15px;
        font-size: 1.3rem;
    }
    .login-menu .idpw-find ul li::before{
        top: 3px;
        right: 0;
        width: 1px;
        height: 15px;
    }
    .login-menu a{
        font-size:1rem;
    }
    .login-form .btn-login{
        height:55px;
    }

    /*===== [개별] 비밀번호 찾기 확인 읽기 =====*/
    .login-form .form-group .form-input-text{
        height:55px;
    }

    /*===== [개별] 유효성 검사 =====*/
    .form-validate{
        padding-bottom:1rem;
    }
    .error-message, 
    .error-message strong{
        font-size:1rem;
    }

    /*===== [개별] 약관동의&회원가입 =====*/
    .join-box .box-header .header-title{
        padding-bottom:.5rem;
        font-size:2rem;
    }
    .join-box .box-header .header-guide{
        font-size:1rem;
    }

    .join-box .btn-container,
    .login-box .btn-container{
        padding-top:1rem;
    }

    /*===== [개별] 약관동의 : 약관동의 폼 =====*/
    .agree-form .form-group .btn-go::before{
        font-size:1rem;
    }
    .agree-form .form-group .terms-content li{
        font-size:.85rem;
    }
    .agree-form .form-group .guide-content li{
        font-size:.85rem;
    }

    /*===== [개별] 회원가입 =====*/
    .wrapper-join #content{
        padding:9rem 0 0;
    }
    .wrapper-join .box-header .header-title{
        padding-bottom:.85rem;
        font-size:2rem;
    }
    .wrapper-join .box-header .header-guide{
        font-size:1rem;
    }
    .wrapper-join #content #content-in .content-body{
        padding:2rem 1.5rem 10rem;
    }

    /*===== [서브] 축제 달력 =====*/
    #schedule-content{
        flex-direction:row;
    }
    #schedule-header{
        width:70%;
    }

    /*===== 축제 달력 =====*/
    #schedule-calendar{
        width:70%;
    }
    #schedule-calendar .calendar-body .calendar{
        grid-template-columns:repeat(7, 1fr);
    }
    #schedule-calendar .calendar-body .calendar .calendar-item{
        height:120px;
        min-height:120px;
    }

    /*===== 축제 달력 상세보기 =====*/
    #schedule-calendar-detail{
        width:30%;
    }  

    /*===== 축제 달력 상세보기 리스트 =====*/
    .details-panel .paner-body .festival-list{
        flex-direction:column;
    }
    .details-panel .paner-body .festival-list .list-item{
        margin-bottom:1rem;
        width:100%;
    }
    .details-panel .paner-body .festival-list .list-item .item-in a{
        text-align:left;
        flex-direction:row;
        align-items:stretch;
    }
    .details-panel .paner-body .festival-list .list-item .item-in .item-img{
        width:80px; height:110px;
        margin-bottom:0;
    }
    .details-panel .paner-body .festival-list .list-item .item-in .item-info{
        flex-direction:row;
        padding-left:1rem;
        width:70%;
        align-items:center;
    }

    /*===== [서브] 축제 순위 =====*/    
    #ranking-container{
        flex-direction:row;
    }
    #ranking-content{
        flex:0 0 auto;
        width:80%;
        padding:0 1rem;
    }

    /*===== [서브] 축제 순위 리스트 =====*/
    .ranking-table-list .table-row .table-th:first-child,
    .ranking-table-list .table-row .table-td:first-child{
        width:150px;
        min-width:150px;
        flex:0 0 auto;
    }
    .ranking-table-list .table-row .table-th:nth-child(3),
    .ranking-table-list .table-row .table-td:nth-child(3){
        width:150px;
        min-width:150px;
        flex:0 0 auto;
    }
    .ranking-table-list .table-row .table-th:nth-child(4),
    .ranking-table-list .table-row .table-td:nth-child(4){
        width:100px;
        min-width:100px;
        flex:0 0 auto;
    }

    /*===== [서브] 축제 순위 리스트 : 2 =====*/
    .ranking-table-list .table-row .table-td .rank-title > a .rank-thumb{
        width:80px; height:105px;
    }
    .ranking-table-list .table-row .table-td .rank-title > a .rank-title{
        font-size:1rem;
    }

    /*===== [서브] aside : 기타컨텐츠 =====*/
    .aside-content .aside-item .aside-header{
        padding:2rem 1.5rem 0;
    }
    .aside-content .aside-item .aside-header .header-title{
        font-size:1.2rem;
    }
    .aside-content .aside-item .aside-body{
        padding:1.8rem 1.5rem;
    }

    /*===== [서브] 축제 순위 투표하기 =====*/
    .vote-list-header{
        margin-bottom:3rem;
    }
    .vote-visual .vote-visual-in{
        padding:3rem 1rem;
        height:600px;
    }
    .vote-visual .vote-visual-in .visual-title{
        margin-bottom:1.5rem;
        font-size:3rem;
        font-weight:500;
    }
    .vote-visual .vote-visual-in .visual-text{
        font-size:1.5rem;
    }
    .vote-item{
        flex:0 0 20%;
    }

    /*===== [서브] aside : 기타 컨텐츠 : 추천 정보 =====*/
    #aside-recommend{
        flex:0 0 auto;
        width:20%;
        padding:0 1rem;
    }
    #aside-recommend .aside-item .slide-list .item-slide{
        padding:0;
    }
    #aside-recommend .aside-item .slide-list .item-slide .slide-img{
        border-radius:.85rem;
    }
    #aside-recommend .aside-item .slide-list .item-slide .slide-subtitle{
        padding-bottom:.3rem;
        font-size:.85rem;
    }
    #aside-recommend .aside-item .slide-list .item-slide .slide-title{
        min-height:25px;
        font-size:1.2rem;
        line-height:1.2;
    }

    /*===== [서브] aside : 주변 축제 =====*/
    #aside-festival{
        flex:0 0 auto;
        width:20%;
        padding:0 1rem;
    }
    #aside-festival .aside-item .festival-list{
        flex-direction:column;
    }
    #aside-festival .aside-item .festival-list .list-item{
        margin-bottom:1rem;
        width:100%;
    }
    #aside-festival .aside-item .festival-list .list-item .item-in a{
        text-align:left;
        flex-direction:row;
        align-items:stretch;
    }
    #aside-festival .aside-item .festival-list .list-item .item-in .item-img{
        width:80px; height:110px;
        margin-bottom:0;
    }
    #aside-festival .aside-item .festival-list .list-item .item-in .item-info{
        flex-direction:row;
        padding-left:1rem;
        width:70%;
        align-items:center;
    }
    #aside-festival .aside-item .festival-list .list-item .item-in .item-info dl dd .info-reaction{
        justify-content:flex-start;
        align-items:flex-start;
    }

    /*===== [서브] aside : 광고 =====*/
    #aside-ad{
        width:25%;
    }
    
    /*===== [서브] 축제 정보 센터 =====*/

    /*===== [서브] 축제 정보 센터 : 리스트 =====*/
    #fvinfo-list .list-item{
        padding:2rem 2rem;
    }
    #fvinfo-list .list-item .item-in .item-img{
        width:20%;
    }
    #fvinfo-list .list-item .item-in .item-img a{
        border-radius:.65rem;
    }
    #fvinfo-list .list-item .item-in .item-img a .label-state{
        left:15px; top:15px;
        padding:.25rem .65rem;
        font-size:.85rem;
        border-radius:.25rem;
    }
    #fvinfo-list .list-item .item-in .item-info{
        width:80%;
        padding-left:2rem;
    }
    #fvinfo-list .list-item .item-in .item-info .info-title{
        margin-bottom:2rem;
    }
    #fvinfo-list .list-item .item-in .item-info .info-title a{
        font-size:1.5rem;
    }
    #fvinfo-list .list-item .item-in .item-info .info-list{
        margin-bottom:1.5rem;
    }
    #fvinfo-list .list-item .item-in .item-info .info-list li{
        display:flex;
        margin-bottom:.5rem;
        font-size:1rem;
    }
    #fvinfo-list .list-item .item-in .item-info .info-list li .info-key{
        width:100px;
    }

    /* [서브] 축제 정보 센터 : 리스트 - 찜, 즐겨찾기, 댓글 수 */
    #fvinfo-list .list-item .item-in .item-info .info-reaction{
        font-size:1rem;
    }

    /*===== [서브] 축제 정보 센터 : 보기 =====*/
    #fvinfo-festival-view{
        flex-direction:row;
    }
    #fvinfo-festival-view #fvinfo-coreData{
        flex:0 0 auto;
        width:100%;
    }
    #fvinfo-festival-view #fvinfo-extraData{
        flex:0 0 auto;
        width:70%;
    }
    #fvinfo-festival-view .aside-content{
        flex:0 0 auto;
        width:30%;
    }

    /*===== [서브] 축제 정보 센터 : 주요 정보 =====*/
    #fvinfo-coreData .fvinfo-intro .intro-img{
        width:20%;
    }
    #fvinfo-coreData .fvinfo-intro .intro-img a{
        border-radius:.65rem;
    }
    #fvinfo-coreData .fvinfo-intro .intro-img a .label-state{
        left:15px; top:15px;
        padding:.25rem .65rem;
        font-size:.85rem;
        border-radius:.25rem;
    }
    #fvinfo-coreData .fvinfo-intro{
        padding:2rem;
    }
    #fvinfo-coreData .fvinfo-intro .intro-info{
        width:80%;
        padding-left:2rem;
    }
    #fvinfo-coreData .fvinfo-intro .intro-info .info-state .label-state{
        padding:.25rem .65rem;
        font-size:.85rem;
        border-radius:.25rem;
    }
    #fvinfo-coreData .fvinfo-intro .intro-info .info-state .info-favorite .favorite-container{
        padding:.25rem .65rem;
        font-size:.85rem;
        border-radius:.25rem;
    }
    #fvinfo-coreData .fvinfo-intro .intro-info .info-title{
        /*margin-bottom:2rem;*/
        font-size:1.5rem;
    }
    #fvinfo-coreData .fvinfo-intro .intro-info .info-list{
        margin-bottom:1.5rem;
    }
    #fvinfo-coreData .fvinfo-intro .intro-info .info-list li{
        display:flex;
        margin-bottom:.5rem;
        font-size:1rem;
    }
    #fvinfo-coreData .fvinfo-intro .intro-info .info-list li .info-key{
        width:100px;
    }

    /*===== [서브] 축제 정보 센터 : 보기 - 찜, 즐겨찾기, 댓글 수 =====*/
    #fvinfo-coreData .fvinfo-intro .intro-info .info-reaction{
        font-size:1rem;
    }

    /*===== [서브] 축제 뉴스 =====*/

    /*===== [서브] 축제 뉴스 : 리스트 =====*/
    #fvnews-list .list-item{
        flex:0 0 20%;
        padding:2rem 1rem;
    }
    #fvnews-list .list-item .item-in a .item-info .info-subtitle{
        font-size: 1rem;
    }
    #fvnews-list .list-item .item-in a .item-info .info-title{
        font-size: 1.4rem;
    }

    /*===== [서브] 축제 뉴스 : 보기 =====*/
    #fvnews-festival-view{
    }
    #fvnews-festival-view #fvnews-coreData{
        flex:0 0 auto;
        width:75%;
    }
    #fvnews-festival-view .aside-content{
        flex:0 0 auto;
        width:25%;
    }

    /*===== [서브] 축제 뉴스 : 보기 - 주요 정보 =====*/
    #fvnews-coreData .fvnews-intro{
        padding:2rem;
    }
    #fvnews-coreData .fvnews-intro .intro-info{
        display:flex;
        flex-direction:column;
        margin-bottom:2rem;
    }
    #fvnews-coreData .fvnews-intro .intro-info .info-title{
        margin-bottom: 1.5rem;
        font-size: 1.5rem;
    }

    /*===== 자주하는 질문 =====*/
    .faq-list .ab-accordion-toggle{
        padding:1.4rem 1.4rem;
    }
    .faq-list .ab-accordion-toggle .ab-accordion-title{
        padding-left:1.7rem;
        font-size:1.4rem;
    }
    .faq-list .faq-content{
        padding: 2rem;
    }
    .faq-list .faq-content .faq-list-in{
        font-size:1.2rem;
    }
    


}

/*===== MEDIA QUERIES : MOBILE =====*/
@media screen and (max-width:767px){


}

/*===== MEDIA QUERIES : MINI MOBILE =====*/
@media only screen and (max-width:480px){

}
