@charset "utf-8";




#visual {
    padding:50px 0;
    position: relative;
}
#visual .visual_bg_point {
    width:100%;
    height:300px;
    position:absolute;
    left:0;
    top:-50px;
    z-index:-1;
}
#visual .visual_bg_point::before {
    content:'';
    width:100%;
    height:100%;
    position:absolute;
    left:0;
    top:0;
    background: rgba(255, 255, 255, 4);
    background: linear-gradient(116deg, rgba(255, 255, 255, 0.8) 0%, rgba(255, 255, 255, 0.4) 80%);
}

#visual .splide__track {
    width:100%;
    max-width:1030px;
    margin:auto;
}
#visual .visual_bnn .inner {
    display:flex;
    align-items:center;
    justify-content:center;
    gap:30px;
}
#visual .visual_bnn .inner .img img {
    border-radius:30px;
}
#visual .visual_bnn .inner .text {
    display:flex;
    flex-direction:column;
    gap:20px;
    margin-bottom:40px;
    max-width:240px;
    flex:1;
}
#visual .visual_bnn .inner .text .bnn_ti {
    font-size:1.11rem;
    font-weight:700;
}
#visual .visual_bnn .inner .text .bnn_co {
    font-size:0.88rem;
    font-weight:500;
}
#visual .visual_bnn .splide__arrows {
    width:100%;
    max-width:1030px;
    margin:auto;
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
}
#visual .visual_bnn .slide_btns {
    display:flex;
    align-items:center;
    gap:10px;
    position:absolute;
    right: 0;
    bottom:-65px;
    width:320px;
}
#visual .visual_bnn .slide_btns .splide__progress {
    width:170px;
    background:rgba(255, 255, 255, 0.4);
}
#visual .visual_bnn .slide_btns .splide__progress .splide__progress__bar {
    background:#fff;
}
#visual .visual_bnn .slide_btns .slideCounter {
    display:flex;
    align-items:center;
    gap:3px;
}
#visual .visual_bnn .slide_btns .slideCounter span {
    font-size:0.77rem;
    font-weight: 500;
}
#visual .visual_bnn .slide_btns .slideCounter .counter_point {
    font-weight:700;
}
#visual .visual_bnn .slide_btns .splide__toggle {
    background:transparent;
}
#visual .visual_bnn .splide__arrows .splide__arrow {
    background:transparent;
    width:50px;
    height:50px;
    border-radius:0;
}
#visual .visual_bnn .splide__arrows .splide__arrow svg {
    width:auto;
    height:auto;
}
#visual .visual_bnn .splide__arrows .splide__arrow--prev svg {
    transform:unset;
}

#index_container {
    display:flex;
    flex-direction:column;
    gap:80px;
}
#index_container .main_title_wrapper {
    display:flex;
    align-items:center;
    justify-content:space-between;
    margin-bottom:20px;
}
#index_container .main_title {
    flex:1;
    font-size:1.55rem;
    font-weight:400;
    letter-spacing:-0.84px;
}
#index_container .main_title span {
    font-weight:700;
}
#index_container .control_btn_wrap {
    display:flex;
    align-items:center;
    gap:10px;
}
#index_container .control_btn_wrap button {
    background:transparent;
}


/* 실시간 연재작품 realTime */
#realTime .realTime_box {
    display:flex;
    flex-direction:column;
    gap:15px;
}
#realTime .realTime_box .text {
    display:flex;
    flex-direction:column;
    gap:5px;
}
#realTime .realTime_box .text .realTime_subject {
    font-size:1.11rem;
    font-weight:500;
    line-height:120%;
    letter-spacing:-0.6px;
}
#realTime .realTime_box .text .realTime_author {
    font-size:0.88rem;
    font-weight:500;
    letter-spacing:-0.48px;
    color:#555;
}
#realTime .realTime_box .literature_info {
    display:flex;
    flex-wrap: wrap;
    gap:0px 10px;
}
#realTime .realTime_box .literature_info p {
    font-size:0.77rem;
    font-weight:400;
    letter-spacing:-0.42px;
    line-height:142%;
    color:#774C9E;
}


/* 역대 문학제 수상작품집 award */
#award .award_box {
    position: relative;
    overflow: hidden;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    border-radius:20px;
    z-index: 1;
    padding:20px;
    display:flex;
    flex-direction:column;
    gap:15px;
}
#award .award_box::before {
    content: '';
    width: 100%;
    height: 100%;
    background: #000000;
    background: linear-gradient(180deg, rgba(0, 0, 0, 0.8) 0%, rgba(0, 0, 0, 0.04) 100%);
    position: absolute;
    left: 0;
    top: 0;
    z-index: -1;
}
#award .award_box .award_title {
    font-size:1.11rem;
    font-weight:700;
    color:#fff;
    text-align:center;
}
#award .award_box .img {
    text-align:center;
} 
#award .award_box .text p {
    text-align:center;
    font-size:1rem;
    font-weight:400;
    color:#fff;
}
#award .award_box .literature_info {
    display:flex;
    flex-wrap: wrap;
    align-items:center;
    justify-content:center;
    gap:10px;
}
#award .award_box .literature_info p {
    padding:4px 10px;
    text-align:center;
    background-color:#fff;
    border:1px solid #CACACA;
    font-size:0.77rem;
    font-weight:400;
    letter-spacing:-0.42px;
    border-radius:999px;
    color:#555;
}


/* 키워드별 도서 keyword */
#keyword .keyword_tab {
    display:flex;
    align-items:center;
    gap:10px;
}
#keyword .keyword_tab span {
    border:1px solid #CACACA;
    border-radius:999px;
    padding:1px 20px;
    font-size:0.88rem;
    font-weight:500;
    letter-spacing:-0.48px;
    line-height:225%;
    color:#555;
    cursor: pointer;
    background-color:#fff;
}
#keyword .keyword_tab span.active {
    border-color:#774C9E;
    background-color:#FAF5FF;
    color:#774C9E;
    font-weight:600;
}

#keyword .keyword_box {}
#keyword .keyword_box ul {
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:20px;
}
#keyword .keyword_box .list {
    flex:1;
    display:flex;
    flex-direction:column;
    gap:15px;
}
#keyword .keyword_box .list .text {
    display:flex;
    flex-direction:column;
    gap:5px;
}
#keyword .keyword_box .list .text .keyword_book_ti {
    font-size:1rem;
    font-weight:500;
    line-height:120%;
    letter-spacing:-0.6px;
}
#keyword .keyword_box .list .text .keyword_book_write {
    font-size:0.88rem;
    font-weight:500; 
    letter-spacing:-0.48px;
    color:#555;
}


/* 문학누리 작가소개 author */
#author .author_box {
    display:block;
    position: relative;
    border-radius:10px;
    overflow:hidden;
}
#author .author_box .author_hover {
    width:100%;
    height:100%;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    gap:40px;
    position:absolute;
    left:50%;
    top:100%;
    transform:translateX(-50%);
    transition:top .5s;
    background: #22222200;
    background: linear-gradient(0deg, rgba(34, 34, 34, 0.9) 0%, rgba(34, 34, 34, 0.9) 100%);
    box-shadow: 0px 4px 4px 0px rgba(0, 0, 0, 0.25);
}
#author .author_box .author_hover .author_name {
    font-size:1.22rem;
    font-weight:600;
    letter-spacing:-0.66px;
    line-height:136%;
    color:#fff;
    text-align:center;
}
#author .author_box .author_hover .author_info {
    font-size:0.88rem;
    font-weight:500;
    letter-spacing:-0.48px;
    color:#fff;
    text-align:center;
    position: relative;
}
#author .author_box .author_hover .author_info::before {
    content:'';
    width:43px;
    height:1px;
    background-color:#fff;
    position:absolute;
    left:50%;
    top:-20px;
    transform:translateX(-50%);
}
#author .author_box:hover .author_hover {
    top:0;
    transition:top .5s;
}


/* 이달의 리뷰 review */
#review .review_box {
    display:flex;
    flex-direction:column;
    justify-content:space-between;
    border:1px solid #CACACA;
    border-radius:10px;
    padding:30px;
    height:320px;
}
#review .review_box .review_ti {
    font-size:1rem;
    font-weight:400;
    line-height:133%;
    letter-spacing:-0.54px;
    color:#555;
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 4;
    -webkit-box-orient: vertical;
}
#review .review_box .review_book {
    display:flex;
    align-items:flex-end;
    gap:20px;
}
#review .review_box .review_book .review_book_text {
    flex:1;
    display:flex;
    flex-direction:column;
    gap:5px;
}
#review .review_box .review_book .review_book_text .review_book_text_ti {
    font-size:1.11rem;
    font-weight:500;
    line-height:120%;
    letter-spacing:-0.6px;
    word-break: keep-all;
}
#review .review_box .review_book .review_book_text .review_book_text_co {
    font-size:0.88rem;
    font-weight:500;
    letter-spacing:-0.48px;
    color:#555;
}
#review .review_box .review_book .review_book_img {
    flex:1;
    max-width:100px;
}
#review .review_box .review_book .review_book_img img {
    width:100%;
}
#review .review_box:hover .review_ti {
    text-decoration:underline;
}



/* 공지사항 notice*/
#notice {
    position: relative;
    padding-bottom: 50px;
}
#notice::before {
    content:'';
    width:100%;
    min-width:1260px;
    height:280px;
    border-radius: 20px 100px 100px 100px;
    background: #F4EEF8;
    background: linear-gradient(80deg, rgba(244, 238, 248, 0.9) 28%, rgba(226, 212, 238, 1) 100%);
    position:absolute;
    left:50%;
    bottom:0;
    transform:translateX(-50%);
}
#notice .notice_slide {
    display:flex;
    align-items:center;
    gap:30px;
}
#notice .notice_slide .main_title_wrapper {
    flex-direction:column;
    gap:30px;
    align-items: flex-start;
    justify-content:flex-start;
    width:200px;
}
#notice .notice_slide .notice_cont {
    flex:1;
    width: 75%;
}
#notice .notice_slide .notice_cont .inner {
    background-color:#fff;
    padding:30px;
    border-radius:10px;
    border:1px solid #CACACA;
    height:280px;
    display:block;
}
#notice .notice_slide .notice_cont .inner .slide_txt {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    height: 100%;
}
#notice .notice_slide .notice_cont .inner .slide_txt .slide_tit {
    font-size:1.33rem;
    font-weight:500;
    line-height:141%;
    letter-spacing:-0.72px;
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    height:60px;
}
#notice .notice_slide .notice_cont .inner .slide_txt .slide_co {
    font-size:1rem;
    font-weight:400;
    line-height:150%;
    height:90px;
    letter-spacing:-0.54px;
    color:#555;
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 4;
    -webkit-box-orient: vertical;
}
#notice .notice_slide .notice_cont .inner .slide_txt .slide_date {
    font-size:0.88rem;
    font-weight:600;
    letter-spacing:-0.48px;
    line-height:125%;
    color:#8E8E8E;
    text-align:right;
    display:block;
}
#notice .notice_slide .notice_cont .inner:hover .slide_txt .slide_tit {
    text-decoration:underline;
}


/* 반응형 미디어 쿼리 css */
@media (max-width:1440px) {
    #realTime .realTime_box .img img {
        width:100%;
    }
    #keyword .keyword_box .list img {
        width:100%;
    }

    #notice::before {
        min-width:110%;
    }

}
@media (max-width:1200px) {
    #visual .visual_bnn .inner .img {
        max-width:400px;
    }
    #visual .visual_bnn .inner .img img {
        width:100%;
    }
}
@media (max-width:1024px) {}
@media (max-width:991px) {
    #index_container {
        gap:50px;
    }

    #visual .visual_bnn .inner {
        flex-direction:column-reverse;
    }
    #visual .visual_bnn .slide_btns {
        right: 50%;
        bottom: -80px;
        width: auto;
        transform: translateX(50%);
    }
    #visual .visual_bnn .inner .text {
        min-height:95px;
    }
    #visual .visual_bnn .splide__arrows {
        top:15%;
    }



    #notice {
        padding-top:20px;
        padding-bottom:0;
    }
    #notice::before {
        min-width:calc(100% + 40px);
        bottom:auto;
        top:0;
        border-radius:20px 0 0 20px;
    }
    #notice .notice_slide {
        flex-direction:column;
        gap:0;
    }
    #notice .notice_slide .main_title_wrapper {
        width: 100%;
        text-align: center;
        align-items: center;
        gap: 10px;
    }
    #notice .notice_slide .notice_cont {
        width: 90%;
    }
}
@media (max-width:768px) {
    #keyword .keyword_box ul li:nth-child(5) {
        display:none;
    }
    #index_container  #keyword  .main_title_wrapper {
        flex-direction:column;
        gap:10px;
    }
}
@media (max-width:640px) {
    #index_container {
        gap:30px;
    }
    #index_container .main_title_wrapper {
        flex-direction:column;
        gap:10px;
    }

    #visual .visual_bnn .splide__arrows .splide__arrow {
        width:30px;
        height:30px;
    }
    #visual .visual_bnn .splide__arrows .splide__arrow svg {
        width:30px;
        height:30px;
    }
    #visual .visual_bnn .inner .img {
        max-width:70%;
    }

    #award {
        padding-right:10px;
    }
   
    #keyword .keyword_box ul li:nth-child(4) {
        display:none;
    }

    #review {
        padding-right:10px;
    }

    #notice::before {
        min-width:calc(100% + 10px);
    }
    .notice_slide {
        height: 320px; /* 적절한 값으로 조정 가능 */
    }
    #notice .notice_slide .notice_cont .inner .slide_txt .slide_co {
        display:none;
    }
}