/* BASIC css start */
/* PC/모바일 이미지 표시 제어 (main 영역 전용) */
/* 모바일 기본: PC 이미지 완전히 숨기기 */
.main .pc-only,
.main img.pc-only,
.main-banner .pc-only,
#section05 .pc-only {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    width: 0 !important;
    height: 0 !important;
    position: absolute !important;
    left: -9999px !important;
}

/* 모바일 기본: 모바일 이미지 보이기 */
.main .mo-only,
.main img.mo-only,
.main-banner .mo-only,
#section05 .mo-only {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    width: 100% !important;
    height: auto !important;
    position: relative !important;
    left: 0 !important;
}

/* PC (768px 이상): 모바일 이미지 완전히 숨기고 PC 이미지 보이기 */
@media (min-width: 768px) {
    .main .pc-only,
    .main img.pc-only,
    .main-banner .pc-only,
    #section05 .pc-only {
        display: block !important;
        visibility: visible !important;
        opacity: 1 !important;
        width: 100% !important;
        height: auto !important;
        position: relative !important;
        left: 0 !important;
    }
    
    .main .mo-only,
    .main img.mo-only,
    .main-banner .mo-only,
    #section05 .mo-only {
        display: none !important;
        visibility: hidden !important;
        opacity: 0 !important;
        width: 0 !important;
        height: 0 !important;
        position: absolute !important;
        left: -9999px !important;
    }
}

/* 롤링배너 */
#event .MS_img-wrap { position: relative; width: 100%; overflow: hidden; }
#event .event-imgs { position: relative; }
#event .MS_img-area { float: left; }
#event .MS_img-area:not(:first-child) { display: none; }
#event .MS_img-area img { width: 100%; }
#event .pagination { position: relative; left: 0; text-align: center; width: 100%; }
#event .pagination .swiper-pagination-switch { display: inline-block; margin: 0 2px; text-indent: -9999px; background: url(/images/d3/m_01/bull/event_now@2x.gif) no-repeat 0 50%; background-size: 19px 7px; width: 10px; height: 10px; }
#event .pagination .swiper-active-switch { background-position: -12px 50%; }
/* //롤링배너 */
.main .topBanner {margin-top:15px;}
.main .topBanner .topBannerLeft {width:49%; float:left; position:relative;}
.main .topBanner .topBannerRight {width:49%; float:right; position:relative;}
.main .topBanner img {width:100%; vertical-align:top;}
.main .topBanner .topBannerTitle {width:100%; font-size:1.083em; font-weight:bold; padding:2px 0; background-color:rgba(0,0,0,0.4);; text-align:center; color:#fff; position:absolute; bottom:0; left:0;}

/*쿠폰 혜택 버튼*/
.main .coupon-benefit {position:relative; margin:-25px 0 10px 0}
.main .btn-coupon { display:inline-block; height:16px; padding:0; margin-left:5px; border:1px solid #000; font-size:10px;}
.main .btn-coupon span { display:inline-block; height:16px; padding:0 5px; color:#fff; background:#000; vertical-align:top; font-size:11px; }
.main .btn-coupon em { display:inline-block; height:16px; padding:0 3px 0 0; font-size:10px; vertical-align:top; color:#000; }

/* 메인 비쥬얼 배너 - 원본 비율 유지 (기존 코드 복구) */
.main-banner .swiper-slide img {
    width: 100%;
    display: block;
}

.main-banner .swiper-pagination-wrap {
    position: absolute;
    bottom: 20px;
    right: 20px;
    display: flex;
    gap: 15px;
    width: 45px;
    height: 15px;
    z-index: 1;
}

.main-banner .swiper-button-prev, .main-banner .swiper-button-next {
    display: none;
}

.main-banner .swiper-pagination-fraction {
    position: relative;
    display: flex;
    gap: 20px;
    align-items: center;
    justify-content: center;
    height: 100%;
    top: 0;
}

.main-banner .swiper-pagination-fraction:before {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 1px;
    height: 9px;
    background: #AAAAAA;
}


.main-banner .swiper-pagination-fraction > span {
    font-weight: 700;
    font-size: 12px;
    text-align: center;
    color: #AAAAAA;
}

.main-banner .swiper-pagination-fraction .swiper-pagination-current {
    color: #FFFFFF;
}

#section01 {
    margin-bottom: 50px;
}

#section01 .category-wrap {
    padding: 50px 16px;
    box-sizing: border-box;
}

#section01 .category-wrap .category-list {
    height: 100%;
    display: flex;
    flex-wrap: wrap;
    gap: 30px 27px;
    justify-content: center;
    align-items: center;
}

#section01 .category-wrap .category-list li {
    width: calc(100% / 3 - 27px);  /* 모바일: 3개씩 */
}

#section01 .category-wrap .category-list li a {
    display: flex;
    gap: 15px;
    flex-direction: column;
    align-items: center;
}

#section01 .category-wrap .category-list li a > img {
    display: block;
    margin: 0 auto;  /* 좌우 중앙 정렬 */
    /* 1. 가로 세로를 34px로 딱 고정합니다 */
    width: 60px !important;  /* 모바일에서는 60px (3개씩이니 작게) */
    height: 60px !important;
    
    /* 2. 이게 핵심! 사진이 찌그러지지 않게 틀에 맞춰 채워줍니다 */
    object-fit: contain; 
    
    /* 혹시 모를 잔상 제거 */
    max-width: none !important;
}

#section01 .category-wrap .category-list li a > span {
    font-weight: 400;
    font-size: 12px;  /* 모바일에서 작게 */
    text-align: center;
    color: #000000;
    word-break: keep-all;
    line-height: 1.3;  /* 2줄일 때를 대비한 줄간격 */
}

#section01 .swiper-wrap .swiper-wrapper {
    padding-left: 15px;
}

#section01 .swiper-container {
    padding-bottom: 28px;
}

#section01 .category-swiper .swiper-slide a {
    display: block !important;
    position: relative !important;
    width: 100% !important;
    
    /* 숫자를 바꾸고 뒤에 꼭 !important를 붙여주세요 */
    padding-bottom: 70% !important;  /* 60%에서 70%로 증가 (세로 늘림) */
    border-radius: 25px !important;
    overflow: hidden !important;
}

#section01 .category-swiper .swiper-slide a img {
    position: absolute !important;
    left: 0 !important;
    top: 0 !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
}

#section01 .category-swiper .swiper-slide a > .txt {
    position: absolute;
    top: 35px;
    left: 25px;
    width: 90%;
    color: #000;
    word-break: keep-all;
    font-weight: 700;
    font-size: 16px;
    line-height: 1.3;
}

#section01 .category-swiper .swiper-slide a > .txt > strong {
    display: block;
    font-weight: 700;
}

#section01 .category-swiper .swiper-pagination {
    top: auto !important;
    bottom: 0 !important;
}

#section01 .category-swiper .swiper-pagination-bullet {
    width: 8px;
    height: 8px;
    background: var(--color-gray);
    opacity: 1;
}

#section01 .category-swiper .swiper-pagination-bullet-active {
    background: #000000;
}

.title {
    font-weight: 800;
    font-size: 20px;
    text-align: center;
    margin-bottom: 25px;
}

#section02 {
    margin-bottom: 50px;
}

/* section02 상품 아이콘 가운데 정렬 */
#section02 .prd-ico {
    text-align: center;  /* 가운데 정렬 */
}

/* section02 상품명 스타일 */
#section02 .prd-name {
    text-align: center;  /* 가운데 정렬 */
}

#section02 .prd-name a {
    font-size: 14px;     /* 모바일 글씨 크기 (조금 줄임) */
    font-weight: 400;    /* 보통 굵기 (볼드 제거) */
    line-height: 1.4;    /* 줄간격 */
}

/* section02 가격 스타일 */
#section02 .prd-price {
    text-align: center;  /* 가운데 정렬 */
}

#section02 .prd-price .price {
    justify-content: center;  /* 가격 요소들 가운데 정렬 */
}

#section02 .prd-price .normal {
    font-size: 16px;     /* 판매가 글씨 크기 (조금 줄임) */
    font-weight: 600;    /* 약간 굵게 (700에서 600으로) */
}

#section02 .prd-price .consumer {
    font-size: 13px;     /* 소비자가 글씨 크기 */
    font-weight: 400;    /* 보통 굵기 */
}

#section02 .tab-content-wrap .tab-content {
    display: none;
}

#section02 .tab-content-wrap .tab-content.active {
    display: block;
}

.btn-wrap {
    width: 100%;
    display: flex;
    gap: 4px;
    justify-content: center;
}

.btn-wrap .btn-more {
    display: flex;
    gap: 2px;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 34px;
    background: var(--color-gray-light);
    border-radius: 5px;
    font-weight: 600;
    font-size: 11px;
    text-align: center;
    color: #AAAAAA;
}

.btn-wrap .btn-more:after {
    content: '';
    display: block;
    width: 8px;
    height: 8px;
    background: url('//skin.makeshop.co.kr/skin/onstore/mo/images/ic_plus.png') no-repeat center;
    background-size: cover;
}

#section02 .product-list-wrap {
    margin-bottom: 25px;
}


#section03 {
    margin-bottom: 50px;
}

#section03 .event-wrap {
    display: flex;
    gap: 20px;
    flex-direction: column;
    margin-bottom: 25px;
}

#section03 .event-wrap > a {
    /* height: 160px; <-- 이미지 높이에 맞춰지게 지우거나 auto로! */
    height: auto !important; 
    border-radius: 15px;
    padding: 0 !important;      /* 글자 밀어내던 패딩 0으로 초기화! */
    box-sizing: border-box;
    color: #000000;
    overflow: hidden;           /* 이미지가 삐져나가지 않게 */
    background: none !important; /* 기존 배경 이미지 싹 지우기! */
    display: block;
}

/* 통이미지 자체의 스타일 */
#section03 .event-wrap > a img {
    width: 100%;
    display: block;
    height: auto;
    object-fit: cover; /* 이미지가 비율에 맞춰 꽉 차게 잘림(왜곡 방지) */
}

#section03 .event-wrap .item-box strong {
    display: block;
    margin-bottom: 15px;
    font-weight: 700;
    font-size: 18px;
}

#section03 .event-wrap .item-box p {
    font-weight: 400;
    font-size: 11px;
}

#section04 {
    margin-bottom: 50px;
}

#section04 .product-list-wrap {
    margin-bottom: 25px;
}

#section05 {
    margin-bottom: 50px;
}

#section05 .inner-box {
    background: none !important; 
    padding: 0 !important;       
    display: block !important;   
    text-align: center;
    word-break: keep-all;
}

#section05 .inner-box a {
    display: block;
}

#section05 .inner-box img {
    width: 100% !important;     
    height: auto !important;    /* 원본 비율대로 */
    display: block;
    max-width: none !important;
}

#section06 {
    margin-bottom: 50px;
}

@media (min-width: 768px) {
    #container {
        padding: 0 0 50px;
    }

    /* 메인 비쥬얼 배너 */
    .main-banner .swiper-slide img {
        width: 100%;
    }

    .main-banner .swiper-pagination-wrap {
        position: absolute;
        bottom: 26px;
        left: 50%;
        transform: translateX(-50%);
        display: flex;
        gap: 15px;
        width: 160px;
        height: 42px;
        border-radius: 25px;
        background: rgba(0, 0, 0, 0.4);
        z-index: 1;
    }

    .main-banner .swiper-button-prev, .main-banner .swiper-button-next {
        display: block;
        width: 24px;
        height: 24px;
        top: 50%;
        transform: translateY(-50%);
        margin: 0;
        z-index: 20;
    }

    .main-banner .swiper-button-prev {
        background: url('//skin.makeshop.co.kr/skin/onstore/pc/images/ic_arrow_w_prev.png') no-repeat center;
    }

    .main-banner .swiper-button-next {
        background: url('//skin.makeshop.co.kr/skin/onstore/pc/images/ic_arrow_w_next.png') no-repeat center;
    }

    .main-banner .swiper-pagination-fraction {
        position: relative;
        display: flex;
        gap: 20px;
        align-items: center;
        justify-content: center;
        height: 100%;
        top: 0;
    }

    .main-banner .swiper-pagination-fraction:before {
        content: '';
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        width: 1px;
        height: 10px;
        background: #AAAAAA;
    }

    .main-banner .swiper-pagination-fraction > span {
        font-weight: 700;
        font-size: 14px;
        text-align: center;
        color: #AAAAAA;
    }

    .main-banner .swiper-pagination-fraction .swiper-pagination-current {
        color: #FFFFFF;
    }

    #section01 {
        margin-bottom: 80px;
    }

    #section01 .category-wrap {
        width: 100%;
        max-width: 1760px;
        margin: 0 auto;
    }

    #section01 .category-wrap .category-list {
        flex-wrap: nowrap;
    }

    /* PC에서는 5개씩 정렬 */
    #section01 .category-wrap .category-list li {
        width: calc(100% / 5);  /* PC: 5개씩 */
    }

    /* PC에서는 아이콘 크기 80px */
    #section01 .category-wrap .category-list li a > img {
        width: 80px !important;
        height: 80px !important;
    }

    /* PC에서는 글씨 크기 원래대로 */
    #section01 .category-wrap .category-list li a > span {
        font-size: 16px;
    }

    #section01 .category-swiper .swiper-slide a {
        padding-bottom: 115%;
    }

    #section01 .category-swiper .swiper-slide a > .txt {
        position: absolute;
        top: 3vw;
        left: 2vw;
        width: calc(100% - 80px);
        font-weight: 400;
        font-size: 2vw;
        color: #000;
        word-break: keep-all;
    }

    #section01 .swiper-wrap .swiper-wrapper {
        padding-left: 0;
    }

    #section02{
        width: 100%;
        max-width: 1760px;
        margin: 0 auto 120px;
    }

    /* PC에서 상품명 */
    #section02 .prd-name a {
        font-size: 16px;     /* PC에서 살짝 크게 */
        font-weight: 400;    /* 보통 굵기 유지 */
    }

    /* PC에서 가격 */
    #section02 .prd-price .normal {
        font-size: 18px;     /* PC에서 살짝 크게 */
        font-weight: 600;    /* 약간 굵게 유지 */
    }

    #section02 .prd-price .consumer {
        font-size: 14px;
        font-weight: 400;
    }

    .btn-wrap .btn-more {
        display: flex;
        gap: 5px;
        align-items: center;
        justify-content: center;
        width: 106px;
        height: 32px;
        border-radius: 25px;
        background: var(--color-gray-light);
        font-weight: 600;
        font-size: 14px;
        text-align: center;
        color: #1c1c1c;
    }

    .title {
        font-weight: 800;
        font-size: 26px;
        text-align: center;
        margin-bottom: 50px;
    }

    #section03 {
        width: 100%;
        max-width: 1760px;
        margin: 0 auto 160px;
    }

    #section03 .event-wrap {
        display: flex;
        gap: 28px;
        flex-direction: row;
        margin-bottom: 50px;
    }

    #section03 .event-wrap > a {
        flex: 1;
        height: 260px;
        border-radius: 15px;
        padding: 60px 60px 0 40px;
        box-sizing: border-box;
        color: #000000;
    }

    #section03 .event-wrap > a:nth-child(1) {
        background: url('//skin.makeshop.co.kr/skin/onstore/pc/images/section03_bg01.png') no-repeat center / cover;
    }

    #section03 .event-wrap > a:nth-child(2) {
        background: url('//skin.makeshop.co.kr/skin/onstore/pc/images/section03_bg02.png') no-repeat center / cover;
    }

    #section03 .event-wrap .item-box strong {
        display: block;
        margin-bottom: 25px;
        font-weight: 700;
        font-size: 26px;
    }

    #section03 .event-wrap .item-box p {
        font-weight: 400;
        font-size: 14px;
    }

    #section04 {
        width: 100%;
        max-width: 1760px;
        margin: 0 auto 80px;
    }

    #section05 {
        margin-bottom: 80px;
    }

    #section05 .inner-box {
        flex-direction: row-reverse;
        gap: 8px;
        justify-content: center;
        align-items: center;
        height: 300px;
        background: #F4F7FF;
        color: #000000;
        padding: 45px 16px 30px;
    }

    #section06 {
        width: 100%;
        max-width: 1760px;
        margin: 0 auto 150px;
    }
}

@media (min-width: 1024px) {
    #section01 .swiper-wrap .swiper-wrapper {
        padding-left: 15px;
    }

    #section01 .swiper-wrap {
        padding-left: 80px;
    }

    #section03 .event-wrap > a {
        padding: 94px 90px 0 90px;
    }

    #section05 .inner-box {
        gap: 217px;
        padding: 0;
    }

    #section05 .inner-box .top p {
        font-weight: 700;
        font-size: 26px;
        line-height: 1.4;
        margin-bottom: 30px;
        text-align: left;
    }

    #section05 .inner-box .top .btn-link {
        display: block;
        font-weight: 800;
        font-size: 14px;
        text-align: center;
        width: 120px;
        height: 34px;
        line-height: 34px;
        color: #FFFFFF;
        background: var(--color-default);
        border-radius: 25px;
        margin: 0;
    }
/* BASIC css end */

