/* Banner CSS moved to /public/banner/main/banner.css */

.naple_main_best_box     { margin-top: 60px;}
.naple_main_best_box h2  { font-weight: 600;}
.naple_main_best_list    { margin: 17px 0 10px 0; display: grid; grid-template-columns: repeat(4, 280px); gap: 26px; }
.naple_main_best_list li {
  display: flex; flex-direction: column; padding: 0px; min-height: 427px; border-radius: 7px; border-width: 1px; border-style: solid; border-color: #efefef; border-collapse: separate; background-color: #f7f8fc; box-shadow : 0px 1px 1px 1px #fafafa;
}
.naple_main_best_list li:hover { cursor: pointer;}
.naple_main_best_list li:last-child { /* gap 사용으로 margin 불필요 */ }
.naple_main_best_list li label { margin-left: 3px; text-align: left; font-size: 18px; color: #121212; }
.naple_main_best_list li h     { padding: 3px 0px 0px 17px; text-align: left; color: #212121; font-weight:700;  font-size:17px;}
.naple_main_best_list li p     { padding: 3px 0px 0px 17px; text-align: left; color: #323232; }
.naple_main_best_list li b     { padding: 3px 0px 0px 0px; text-align: left; color: #121212; font-size: 23px; font-weight:900;}
.naple_main_best_list li img   { width: 278px; height: 260px; border-radius: 7px 7px 0 0; object-fit: cover; margin-bottom: 0; }
.naple_main_best_list li .price-area { margin-top: auto; padding: 20px 17px 15px; }
.naple_main_best_list li .currency { font-size: 18px; font-weight: normal; color: #121212; padding: 0; }


.naple_main_second_box     { margin-top: 60px;}
.naple_main_second_box h2  { font-weight: 600;}
.naple_main_second_list    { margin: 17px 0 10px 0; display: grid; grid-template-columns: repeat(3, 382px); gap: 26px; }
.naple_main_second_list li {
  display: flex; flex-direction: column; padding: 0px; min-height: 427px; border-radius: 7px; border-width: 1px; border-style: solid; border-color: #efefef; border-collapse: separate; background-color: #f7f8fc; box-shadow : 0px 1px 1px 1px #fafafa;
}
.naple_main_second_list li:hover { cursor: pointer;}
.naple_main_second_list li:last-child { /* gap 사용으로 margin 불필요 */ }
.naple_main_second_list li label { margin-left: 3px; text-align: left; font-size: 18px; color: #121212; }
.naple_main_second_list li h     { padding: 3px 0px 0px 17px; text-align: left; color: #212121; font-weight:700;  font-size:17px;}
.naple_main_second_list li p     { padding: 3px 0px 0px 17px; text-align: left; color: #323232; }
.naple_main_second_list li b     { padding: 3px 0px 0px 0px; text-align: left; color: #121212; font-size: 23px; font-weight:900;}
.naple_main_second_list li img   { width: 380px; height: 260px; border-radius: 7px 7px 0 0; object-fit: cover; margin-bottom: 0; }
.naple_main_second_list li .price-area { margin-top: auto; padding: 20px 17px 15px; }
.naple_main_second_list li .currency { font-size: 18px; font-weight: normal; color: #121212; padding: 0; }


.naple_main_tabmenu_box { margin: 30px auto 0 auto; padding:60px 0 25px; background:#f1f6fc}
/*
.naple_main_tab_img_box tbody tr td { padding-right: 22px; vertical-align: top;}
.naple_main_tab_img_box tbody tr td:last-child { padding-right: 0px;}
.naple_main_tab_img_box_01 { padding-bottom: 20px;}
.naple_main_tab_img_01 { width: 590px; height: 450px; overflow: hidden;}
.naple_main_tab_img_02 { width: 282px; height: 215px; overflow: hidden; cursor: pointer;}
*/
.naple_tab               { margin-bottom: 15px; overflow: hidden; display:flex; width: 1200px; height: 92px; margin:0 auto; }
.naple_tab button        { display:flex;justify-content:space-around;align-items: center;cursor:pointer; color:#fff; font-size:18px; height:48px; line-height:48px; border-radius:30px; padding:0 26px;background:#b2b2b2; margin-right:15px }
.naple_tab button:hover  { color: #fff;font-weight:600; background:#000}
.naple_tab button.active { color: #fff;font-weight:600; background:#000}

.tabcontent { display: none; overflow: hidden; display:flex; width: 1200px; margin:0 auto; }
.tabcontent_item01    { margin: 0px 0 10px 0; display: flex; flex-wrap: wrap; }
.tabcontent_item01 li {
  display: flex; flex-direction: column; margin-right: 0px; margin-bottom: 26px; padding: 0px 26px 0px 790px; width: 1198px; min-height: 427px; border-radius: 7px; border-width: 1px; border-style: solid; border-color: #efefef; border-collapse: separate; background-color: #ffffff; box-shadow : 0px 1px 1px 1px #fafafa; background-size: auto 100%; background-repeat: no-repeat; background-position: left center;
}
.tabcontent_item01 li:hover { cursor: pointer;}
.tabcontent_item01 li h1    { padding: 130px 0px 0px 17px; text-align: left; color: #121212; font-weight:600; font-size:22px; }
.tabcontent_item01 li h     { padding: 3px 0px 0px 17px;  text-align: left; color: #212121; font-weight:700; font-size:17px;}
.tabcontent_item01 li label { margin-left: 3px; text-align: left; font-size: 18px; color: #121212; }
.tabcontent_item01 li p     { padding: 3px 0px 0px 17px;  text-align: left; color: #323232; }
.tabcontent_item01 li b     { padding: 3px 0px 0px 0px;  text-align: left; color: #121212; font-weight:900; font-size: 23px;}
.tabcontent_item01 li img   { width: 1196px; height: 260px; border-radius: 7px 7px 0 0; object-fit: cover; margin-bottom: 0; }

.tabcontent_item02    { margin: 0px 0 10px 0; display: flex; flex-wrap: wrap; }
.tabcontent_item02 li {
  display: flex; flex-direction: column; margin-right: 26px; margin-bottom: 26px; padding: 0px; width: 586px; min-height: 427px; border-radius: 7px; border-width: 1px; border-style: solid; border-color: #efefef; border-collapse: separate; background-color: #ffffff; box-shadow : 0px 1px 1px 1px #fafafa;
}
.tabcontent_item02 li:hover { cursor: pointer;}
.tabcontent_item02 li:last-child { margin-right: 0px;}
.tabcontent_item02 li label { margin-left: 3px; text-align: left; font-size: 18px; color: #121212; }
.tabcontent_item02 li h     { padding: 3px 0px 0px 17px; text-align: left; color: #212121; font-weight:700;  font-size:17px;}
.tabcontent_item02 li p     { padding: 3px 0px 0px 17px; text-align: left; color: #323232; }
.tabcontent_item02 li b     { padding: 3px 0px 0px 0px; text-align: left; color: #121212; font-size: 23px; font-weight:900;}
.tabcontent_item02 li img   { width: 584px; height: 260px; border-radius: 7px 7px 0 0; object-fit: cover; margin-bottom: 0; }

.tabcontent_item03    { margin: 0px 0 10px 0; display: flex; flex-wrap: wrap; }
.tabcontent_item03 li {
  display: flex; flex-direction: column; margin-right: 26px; margin-bottom: 26px; padding: 0px; width: 382px; min-height: 427px; border-radius: 7px; border-width: 1px; border-style: solid; border-color: #efefef; border-collapse: separate; background-color: #ffffff; box-shadow : 0px 1px 1px 1px #fafafa;
}
.tabcontent_item03 li:hover { cursor: pointer;}
.tabcontent_item03 li:last-child { margin-right: 0px;}
.tabcontent_item03 li label { margin-left: 3px; text-align: left; font-size: 18px; color: #121212; }
.tabcontent_item03 li h     { padding: 3px 0px 0px 17px; text-align: left; color: #212121; font-weight:700;  font-size:17px;}
.tabcontent_item03 li p     { padding: 3px 0px 0px 17px; text-align: left; color: #323232; }
.tabcontent_item03 li b     { padding: 3px 0px 0px 0px; text-align: left; color: #121212; font-size: 23px; font-weight:900;}
.tabcontent_item03 li img   { width: 380px; height: 260px; border-radius: 7px 7px 0 0; object-fit: cover; margin-bottom: 0; }

/* 공통 가격 영역 스타일 (메인페이지 전체) */
.price-area { margin-top: auto; padding: 20px 17px 15px; }
.price-area b { padding-left: 0; }
.price-area .currency { font-size: 18px; font-weight: normal; color: #121212; }
.price-area .currency-before { margin-right: 3px; }
.price-area .currency-after { margin-left: 3px; }
.price-area .currency-before + b { padding-left: 10px; }

.naple_main_review_box          { width:1200px; margin:0 auto; background:#fff; color:#fff;  padding:20px; }
.naple_main_review_box p.link   { padding-top:10px; font-size:12px; }
.naple_main_review_box p.link a { color:#fff; }
.naple_main_review_box h2       { color:#000; font-size:46px; font-weight:400; margin:60px auto 30px;text-align:center;}
.naple_main_review_box p        { display:block; margin:20px 0 0; color:#333; text-align:center; font-size:16px; }
.naple_main_review_box h3       { background:#fff;color:#3498db;font-size:36px;line-height:100px;margin:10px;padding:2%;position:relative;text-align:center;}
.naple_main_review_box .review_btn{ margin:25px auto 50px; display:block; width:170px; height:45px; line-height:45px; font-size:20px; text-align:center; border:2px solid #222; border-radius: 30px}
.naple_main_review_box { overflow: hidden; }
.naple_main_review_list    { margin: 18px 0 10px 0; white-space: nowrap; position: relative;}
.naple_main_review_list li {
  display: inline-block; vertical-align: top; margin-right: 32px; padding: 0px; width: 268px; height: 435px; border-radius: 7px; border-width: 1px; border-style: solid; border-color: #efefef; border-collapse: separate; background-color: #ffffff; box-shadow : 0px 1px 1px 1px #fafafa;
}
.naple_main_review_list li:hover { cursor: pointer;}
.naple_main_review_list li:last-child { margin-right: 32px;}
.naple_main_review_list li img   { width: 266px; height: 180px; border-radius: 7px 7px 0 0; object-fit: contain; background-color: #f5f5f5; margin-bottom: 20px; }
/* CSS 별점 시스템 */
.star-rating { display: flex; margin-left: 10px; margin-right: 10px; }
.star-rating .star {
    font-size: 20px;
    color: #ddd;
    margin-right: 2px;
    line-height: 1;
    font-family: 'Arial', sans-serif;
}
.star-rating .star.filled { color: #ffd700; }

.naple_main_review_list li .icon_star5 { display: flex; float: left; margin-left: 10px; margin-right: 10px; }
.naple_main_review_list li .icon_star5::before { content: "⭐⭐⭐⭐⭐"; font-size: 21px; line-height: 1; letter-spacing: -2px; }

.naple_main_review_list li .icon_star4 { display: flex; float: left; margin-left: 10px; margin-right: 10px; }
.naple_main_review_list li .icon_star4::before { content: "⭐⭐⭐⭐☆"; font-size: 21px; color: #ffd200; line-height: 1; letter-spacing: -2px; }

.naple_main_review_list li .icon_star3 { display: flex; float: left; margin-left: 10px; margin-right: 10px; }
.naple_main_review_list li .icon_star3::before { content: "⭐⭐⭐☆☆"; font-size: 21px; color: #ffd200; line-height: 1; letter-spacing: -2px; }

.naple_main_review_list li .icon_star2 { display: flex; float: left; margin-left: 10px; margin-right: 10px; }
.naple_main_review_list li .icon_star2::before { content: "⭐⭐☆☆☆"; font-size: 21px; color: #ffd200; line-height: 1; letter-spacing: -2px; }

.naple_main_review_list li .icon_star1 { display: flex; float: left; margin-left: 10px; margin-right: 10px; }
.naple_main_review_list li .icon_star1::before { content: "⭐☆☆☆☆"; font-size: 21px; color: #ffd200; line-height: 1; letter-spacing: -2px; }
.naple_main_review_box .naple_main_review_list li .name{ display:flex; justify-content:space-between; clear:both; margin-left:10px; margin-right:10px; font-size:15px; color:#707070; line-height:100%; margin-top:35px; }
.naple_main_review_box .naple_main_review_list li .date{ font-size:13px; color:#707070; }
.naple_main_review_list li .txt{
    display: -webkit-box;
    margin: 15px 10px 15px;
    font-size: 12px;
    color: #666;
    line-height: 160%;
    text-align: justify;
    overflow: hidden;
    -webkit-line-clamp: 5;
    line-clamp: 5;
    -webkit-box-orient: vertical;
    text-overflow: ellipsis;
    white-space: normal;
    max-height: 180px;
}
.naple_main_review_list li .txt .tit{ display:block; margin-top:10px; margin-bottom:10px; font-weight:500; font-size:16px; color:#000; }
.naple_main_review_list li .txt .txt_content{
    display: -webkit-box;
    -webkit-line-clamp: 5;
    line-clamp: 5;
    -webkit-box-orient: vertical;
    overflow: hidden;
    white-space: pre-wrap;
    line-height: 1.5;
}

/* 리뷰 하단 네비게이션 */
.review-navigation {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 30px;
    margin-top: 30px;
    margin-bottom: 20px;
}

.review-nav-btn {
    background: transparent;
    border: none;
    font-size: 21px;
    color: #707070;
    cursor: pointer;
    padding: 0px 20px;
    transition: color 0.3s;
}

.review-nav-btn:hover {
    color: #555;
}

.s_sticker_wrap     { position:relative; margin:60px auto; padding-bottom:25px; background:#fff;}
.s_sticker_wrap h2  { color:#000; font-size:46px; font-weight:400; margin:60px auto 30px; text-align:center;}
.s_sticker_wrap p   { display:block; margin:0px 0 0; color:#333; text-align:center; font-size:16px; }
.s_sticker_wrap .review_btn{ margin:25px auto 50px; display:block; width:170px; height:45px; line-height:45px; font-size:20px; text-align:center; border:2px solid #222; border-radius: 30px}
.s_sticker_wrap .business_d    { width:1200px; margin: 0 auto; overflow:hidden;}
.s_sticker_wrap .business_d li { width:220px; height:220px;  float:left; margin-right:25px; margin-bottom:25px; cursor: pointer; z-index:1000;}
.s_sticker_wrap .business_d li:nth-child(5n){ margin-right:0px; }

/* 팝업 */
.stickerPopup          {
  position: fixed; z-index: 3000; top: 0; left: 0; right: 0; bottom: 0; overflow: auto; display: none;
	background: rgba(0,0,0,.5); transition: all .0s ease-in-out; -moz-transition: all .0s ease-in-out; -webkit-transition: all .0s ease-in-out;
}
.stickerPopup .box          { width:580px; position: relative;  background:#fff; left: 35%; top: 10%; padding:30px; }
.stickerPopup .box .close   { width:24px; height:24px; margin-bottom: 24px; cursor: pointer; position: relative; }
.stickerPopup .box .close::before,
.stickerPopup .box .close::after { content: ''; position: absolute; top: 50%; left: 50%; width: 20px; height: 2px; background-color: #666; }
.stickerPopup .box .close::before { transform: translate(-50%, -50%) rotate(45deg); }
.stickerPopup .box .close::after  { transform: translate(-50%, -50%) rotate(-45deg); }
.stickerPopup .box .title   { width:100%; text-align:right !important; font-weight:300; }
.stickerPopup .box .title a { right:0; text-align:right !important ; color:#fff; border:0; font-weight:100;}

.stickerPopup .box .con .img{ display:block}
.stickerPopup .box .con .txt{ display:block; margin-top:12px; background:#494848; padding:30px; color:#fff; text-align:left; font-weight:100;}
.stickerPopup .box .con .txt .tit  {  display:block; font-weight:700; color:#fff; padding-bottom: 8px; }
.stickerPopup .box .con .txt .msg  {  display:block; color:#efefef; }
