#base_wrap {
    max-width: 600px;
    margin: 0 auto;
}

.main_inner {
    width: 100%;
    padding: 0 8%;
}

.content_img {
    display: flex;
    position: relative;
}

.main_sect1 {
    background-color: #F2EBE5;
}

.sect1_tab {
    position: absolute;
    bottom: 0;
    width: 100%;
    padding: 0 8%;
    height: 9.69654781%;
    display: flex;
}

.sect1_tab_btn {
    display: flex;
    width: calc(100% / 2);
    height: 100%;
    background-color: transparent;
}

.content_bg {
    background: url(https://kr.object.iwinv.kr/pepero/file/main_bg.png) no-repeat top center/cover;
    padding-top: 27.336%;
    padding-bottom: 36%;
}

.slide_bg {
    background: url(https://kr.object.iwinv.kr/pepero/file/bg_slide_main.png) no-repeat top center/cover;
    padding-top: 13.3333333%;
}

.slide_title {
    display: flex;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 8%;
    width: 74.6666667%;
}

.all_btn_wrap {
    display: flex;
    justify-content: flex-end;
}

.all_btn {
    display: flex;
    align-items: center;
    background-color: transparent;
    margin-bottom: 6.34920635%;
    font-size: 3.73333333vw;
    font-weight: 500;
    color: #5E5E5E;
}

.all_btn::after {
    content: '';
    display: block;
    width: 20px;
    height: 20px;
    background: url(https://kr.object.iwinv.kr/pepero/file/icon_arrow_gray.png) no-repeat center/contain;
}

.swiper {
    margin-bottom: 4.26666667%;
    padding-bottom: 4px !important;
}

.swiper .swiper-slide {
    display: flex;
    flex-direction: column;
    gap: 12px;
    background-color: #F2EBE5;
    border-radius: 16px;
    padding: 20px 16px;
}

.swiper .swiper-slide h2 {
    text-align: center;
    font-size: 4.26666667vw;
    font-weight: 700;
    color: #222;
}

.swiper .swiper-slide .img_wrap {
    display: flex;
}

.slide_desc {
    font-size: 4.8vw;
    font-weight: 500;
    color: #222;
    text-align: center;
    margin-bottom: 16.2761905%;
    ;
}

.slide_desc strong {
    color: var(--main-color);
}

.request_wrap {
    padding-bottom: 38.4920635%;
    position: relative;
}

.go_request {
    display: flex;
    position: relative;
}


.sect3_title {
    display: flex;
    margin-bottom: 3.064%;
}

.rank_list {
    /* transform: translateY(-2px); */
}

.rank_list li:not(:last-child) {
    margin-bottom: 2.53968254%;
}

.rank_list li {
    display: flex;
    align-items: center;
    background-color: #F8F8F8;
    border-radius: 10px;
    padding: 6.66666667% 5.07936508%;
    box-shadow: 2px 2px 4px 0 rgba(0, 0, 0, 0.2);
}

.rank_list strong {
    font-size: 10.6666667vw;
    font-weight: 800;
    color: #3B2E2A;
    display: flex;
    width: 13.4275%;
    flex-shrink: 0;
}

.rank_list li:nth-child(1) strong,
.rank_list li:nth-child(2) strong,
.rank_list li:nth-child(3) strong {
    color: var(--main-color);
}

.rank_list h2 {
    font-size: 5.33333333vw;
    font-weight: 800;
    color: #222;
}

.rank_list .img_wrap {
    display: flex;
    margin-left: auto;
    width: 35.3357%;
    aspect-ratio: 1/0.9235;
}

.peperos_img {
    margin: 0 auto;
    padding: 9.52380952% 0;
    width: 63.1746032%;
}

.popup_container .popup_center .popup_body {
    padding: 0px !important;
}

/* 전체조합 팝업닫기 */
.popup_all .popup_close {
    position: absolute;
    display: flex;
    width: 84%;
    height: 1.82798921%;
    bottom: 1.49835181%;
    left: 0;
    margin: 0 8%;
    background-color: transparent;
}

.bottom_choco::before {
    content: '';
    position: absolute;
    top: 1px;
    left: 0px;
    display: block;
    width: 100%;
    padding-bottom: 28%;
    background: url(https://kr.object.iwinv.kr/pepero/file/img_choco.png) no-repeat top center/contain;
    transform: translateY(-100%);
}

.top_choco::before {
    content: '';
    position: absolute;
    bottom: 1px;
    left: 0;
    display: block;
    width: 100%;
    padding-bottom: 28%;
    background: url(https://kr.object.iwinv.kr/pepero/file/img_choco.png) no-repeat top center/contain;
    transform: translateY(100%) rotate(180deg);
}

.sns_wrap {
    position: absolute;
    bottom: 3.51699883%;
    left: 0;
    width: 100%;
    padding: 0 7.86666667%;
}

.sns_wrap .btn_item {
    display: flex;
    background-color: transparent;
    width: 100%;
    padding-bottom: 19.3650794%;
}

@media screen and (min-width:600px) {
    .all_btn {
        font-size: 22px;
    }

    .all_btn::after {
        width: 24px;
        height: 24px;
    }

    .slide_desc {
        font-size: 28.8px;
    }

    .rank_list strong {
        font-size: 64px;
    }

    .rank_list h2 {
        font-size: 32px;
    }

    .swiper .swiper-slide h2 {
        font-size: 25px;
    }

}