Browse Source

Merge branch 'develop' into jsshin-dev

jsshin 4 years ago
parent
commit
d1b1138931
57 changed files with 2075 additions and 3323 deletions
  1. 8 0
      src/main/java/com/style24/front/biz/dao/TsfDisplayDao.java
  2. 105 15
      src/main/java/com/style24/front/biz/service/TsfCouponService.java
  3. 21 1
      src/main/java/com/style24/front/biz/service/TsfDisplayService.java
  4. 37 0
      src/main/java/com/style24/front/biz/service/TsfOrderService.java
  5. 20 2
      src/main/java/com/style24/front/biz/thirdparty/EigeneaiApi.java
  6. 21 1
      src/main/java/com/style24/front/biz/web/TsfDisplayController.java
  7. 28 28
      src/main/java/com/style24/front/biz/web/TsfGoodsController.java
  8. 68 3
      src/main/java/com/style24/front/biz/web/TsfOrderController.java
  9. 2 0
      src/main/java/com/style24/front/biz/web/TsfPlanningController.java
  10. 1 0
      src/main/java/com/style24/persistence/domain/Goods.java
  11. 1 0
      src/main/java/com/style24/persistence/domain/Social.java
  12. 6 0
      src/main/java/com/style24/persistence/domain/searchengine/GoodsListResponse.java
  13. 1 0
      src/main/java/com/style24/persistence/domain/searchengine/SearchEngine.java
  14. 1 2
      src/main/java/com/style24/persistence/mybatis/shop/TsfCart.xml
  15. 27 5
      src/main/java/com/style24/persistence/mybatis/shop/TsfCoupon.xml
  16. 49 3
      src/main/java/com/style24/persistence/mybatis/shop/TsfDisplay.xml
  17. 4 1
      src/main/java/com/style24/persistence/mybatis/shop/TsfGoods.xml
  18. 22 6
      src/main/java/com/style24/persistence/mybatis/shop/TsfPlanning.xml
  19. 7 1
      src/main/java/com/style24/persistence/mybatis/shop/TsfSocial.xml
  20. 4 101
      src/main/webapp/WEB-INF/views/mob/app/NoticeFormMob.html
  21. 12 5
      src/main/webapp/WEB-INF/views/mob/common/fragments/FooterMob.html
  22. 1 1
      src/main/webapp/WEB-INF/views/mob/display/BrandMainFormMob.html
  23. 58 115
      src/main/webapp/WEB-INF/views/mob/display/BrandSearchGoodsListFormMob.html
  24. 1 1
      src/main/webapp/WEB-INF/views/mob/display/CategoryMainFormMob.html
  25. 4 4
      src/main/webapp/WEB-INF/views/mob/display/OutletMainFormMob.html
  26. 57 117
      src/main/webapp/WEB-INF/views/mob/display/SearchGoodsListFormMob.html
  27. 142 212
      src/main/webapp/WEB-INF/views/mob/display/SearchLayerMob.html
  28. 100 98
      src/main/webapp/WEB-INF/views/mob/goods/GoodsDealDetailFormMob.html
  29. 146 145
      src/main/webapp/WEB-INF/views/mob/goods/GoodsDetailFormMob.html
  30. 1 1
      src/main/webapp/WEB-INF/views/mob/mypage/MypageCreExchangeDetailFormMob.html
  31. 1 1
      src/main/webapp/WEB-INF/views/mob/mypage/NoMemberCreExchangeDetailFormMob.html
  32. 0 1
      src/main/webapp/WEB-INF/views/mob/order/OrderCouponApplyPopMob.html
  33. 39 3
      src/main/webapp/WEB-INF/views/mob/order/OrderFormMob.html
  34. 1 1
      src/main/webapp/WEB-INF/views/web/display/BrandMainFormWeb.html
  35. 45 128
      src/main/webapp/WEB-INF/views/web/display/BrandSearchGoodsListFormWeb.html
  36. 35 6
      src/main/webapp/WEB-INF/views/web/display/LookbookDetailFormWeb.html
  37. 40 103
      src/main/webapp/WEB-INF/views/web/display/SearchGoodsListFormWeb.html
  38. 74 108
      src/main/webapp/WEB-INF/views/web/display/SearchLayerWeb.html
  39. 23 20
      src/main/webapp/WEB-INF/views/web/goods/GoodsCouponFormWeb.html
  40. 70 69
      src/main/webapp/WEB-INF/views/web/goods/GoodsDealDetailFormWeb.html
  41. 139 137
      src/main/webapp/WEB-INF/views/web/goods/GoodsDetailFormWeb.html
  42. 128 124
      src/main/webapp/WEB-INF/views/web/goods/GoodsIncludeFormWeb.html
  43. 1 1
      src/main/webapp/WEB-INF/views/web/mypage/MypageCreExchangeDetailFormWeb.html
  44. 1 1
      src/main/webapp/WEB-INF/views/web/mypage/NoMemberCreExchangeDetailFormWeb.html
  45. 0 1
      src/main/webapp/WEB-INF/views/web/order/OrderCouponApplyPopWeb.html
  46. 38 3
      src/main/webapp/WEB-INF/views/web/order/OrderFormWeb.html
  47. 2 1
      src/main/webapp/biz/goods.js
  48. 2 1
      src/main/webapp/biz/search.js
  49. 65 184
      src/main/webapp/ux/mo/css/common_m.css
  50. 114 224
      src/main/webapp/ux/mo/css/layout_m.css
  51. 35 323
      src/main/webapp/ux/mo/css/style24_m.css
  52. 7 249
      src/main/webapp/ux/mo/js/common_m.js
  53. 0 13
      src/main/webapp/ux/mo/js/main_m.js
  54. 70 264
      src/main/webapp/ux/pc/css/common.css
  55. 154 207
      src/main/webapp/ux/pc/css/layout.css
  56. 31 196
      src/main/webapp/ux/pc/css/main.css
  57. 5 86
      src/main/webapp/ux/pc/js/common-ui.js

+ 8 - 0
src/main/java/com/style24/front/biz/dao/TsfDisplayDao.java

@@ -256,4 +256,12 @@ public interface TsfDisplayDao {
 	 */
 	String getSplashImage();
 
+	/**
+	 * 몰메인 브랜드픽 타이틀 브랜드 목록
+	 * @param contents - 컨텐츠 정보
+	 * @return
+	 * @author bin2107
+	 * @date 2021. 7. 23
+	 */
+	Collection<Contents> getBrandpickTitleBrandList(Contents contents);
 }

+ 105 - 15
src/main/java/com/style24/front/biz/service/TsfCouponService.java

@@ -361,25 +361,84 @@ public class TsfCouponService {
 	 * @since 2021.03.12
 	 */
 	@Transactional("shopTxnManager")
-	public String createGoodsCoupon(Goods goods) {
+	public String createGoodsCoupon(Goods parmsGoods) {
 		String result = "SUCESS";
-		int downloadCnt = 1; 	// 쿠폰당 다운 받을수
+		
+		log.info("상품쿠폰 발급전 정보 goods {}", parmsGoods);
+		
+		// 쿠폰 모두 받기
+		if (parmsGoods.getArrGoodsCd() != null && parmsGoods.getArrGoodsCd().length > 0) {
+			
+			int idx = 0;
+			int couponCnt = 0; 
+			for (String goodsCd : parmsGoods.getArrGoodsCd()) {
+				Goods goods = new Goods();
+				goods.setGoodsCd(goodsCd);
+				goods.setCpnId(parmsGoods.getArrCpnId()[idx]);
+				goods.setCpnAllDownYn(parmsGoods.getCpnAllDownYn());
+				goods.setSiteCd(parmsGoods.getSiteCd());
+				goods.setCustGb(parmsGoods.getCustGb());
+				goods.setFrontGb(parmsGoods.getFrontGb());
+				goods.setPointUnit(parmsGoods.getPointUnit());
+				goods.setCustGrade(parmsGoods.getCustGrade());
+				goods.setCustNo(parmsGoods.getCustNo());
+				
+				result =  createCoupon(goods);
+				
+				if (result.indexOf("ERROR") < 0) {
+					couponCnt += Integer.parseInt(result);
+				}
+				
+				idx++;
+			}
+			
+			if (couponCnt > 0) {
+				result = Integer.toString(couponCnt);	
+			}else {
+				result = "ERROR_10";
+			}
+			
+		}else {
+			result =  createCoupon(parmsGoods);
+		
+		}
 
-		//log.info("상품쿠폰 발급전 정보 goods {}", goods);
+		return result;
+	}
 
+	private String createCoupon(Goods goods) {
+		
+		String result = "";
+		int downloadCnt = 1; 	// 쿠폰당 다운 받을수
+		int custPubLimitQty = 1;
+		int onePubQty = 1;
 		Collection<Coupon> goodsCouponList = couponDao.getGoodsCouponList(goods);
+		
 		if (goodsCouponList == null || goodsCouponList.isEmpty()) {
 			result = "ERROR_10";
 			return result;
 		}
 
 		Coupon coupon = goodsCouponList.iterator().next();
+		onePubQty = coupon.getOnePubQty();	// 1회 발급당 발행수량 설정
+
 		//log.info("상품쿠폰 쿠폰정보  coupon {}", coupon);
 
-		// 발급수 확인 -- 필요없나?
+		// 고객당 발급수량 확인
+		if (coupon.getCustPubLimitQty() > 0) {
+			int tempCustCouponCnt = coupon.getCustPubLimitQty() * onePubQty;
+			//if (coupon.getCustPubLimitQty() <= coupon.getCustCouponCnt()) {
+			if (tempCustCouponCnt <= coupon.getCustCouponCnt()) {
+				//log.info("상품쿠폰 다운  skip: 쿠폰발급수 : {}, 회원발급수 : {}", coupon.getCustPubLimitQty(), coupon.getCustCouponCnt());
+				result = "ERROR_30";
+				return result;
+			}
+		}
+		
+		// 발급수 확인
 		if (coupon.getTotPubLimitQty() > 0) {
-			if (coupon.getTotPubLimitQty() <= coupon.getCustCouponCnt()) {
-				//log.info("상품쿠폰 다운  skip: 쿠폰발급수 : {}, 회원발급수 : {}", coupon.getTotPubLimitQty(), coupon.getCustCouponCnt());
+			if (coupon.getTotPubLimitQty() <= coupon.getTotCouponCnt()) {
+				//log.info("상품쿠폰 다운  skip: 쿠폰총발급제한수 : {}, 전체발급수 : {}", coupon.getTotPubLimitQty(), coupon.getTotCouponCnt());
 				result = "ERROR_30";
 				return result;
 			}
@@ -404,6 +463,9 @@ public class TsfCouponService {
 			}
 		}
 
+		//총발급수량
+		downloadCnt = custPubLimitQty * onePubQty;
+		
 		// 신규회원 NEW_CUST_YN
 		if ("Y".equals(coupon.getNewCustYn())) {
 			Customer customer = customerService.getCustomerFindByCustNo(goods.getCustNo());
@@ -413,16 +475,14 @@ public class TsfCouponService {
 				return result;
 			}
 			//log.info("고객정보 customer {}", customer);
-			if (Integer.parseInt(customer.getJoinDt()) < Integer.parseInt(coupon.getCustJoinStdt()) ||
-				Integer.parseInt(customer.getJoinDt()) > Integer.parseInt(coupon.getCustJoinEddt())) {
+			if (Long.parseLong(customer.getJoinDt()) < Long.parseLong(coupon.getCustJoinStdt()) ||
+				Long.parseLong(customer.getJoinDt()) > Long.parseLong(coupon.getCustJoinEddt())) {
 				//log.info("상품쿠폰 다운  skip: 쿠폰 신규회원정보 : {}, {} ~ {} ", customer.getJoinDt(), coupon.getCustJoinStdt(), coupon.getCustJoinEddt());
 				result = "ERROR_20";
 				return result;
 			}
 		}
 
-		// 제휴링크 나중에 확인하자!!!!!
-
 		int count = 0;
 		for (Coupon tmpCoupon : goodsCouponList) {
 
@@ -444,8 +504,9 @@ public class TsfCouponService {
 			}
 		}
 		result = Integer.toString(count);	// 다운받은 쿠폰수
-
+		
 		return result;
+		
 	}
 
 	/**
@@ -502,6 +563,10 @@ public class TsfCouponService {
 	 */
 	@Transactional("shopTxnManager")
 	public String getPlanCouponInfo(Coupon coupon) {
+		int downloadCnt = 1; 	// 쿠폰당 다운 받을수
+		int custPubLimitQty = 1;
+		int onePubQty = 1;
+
 		coupon.setSiteCd(TscConstants.Site.STYLE24.value());
 		coupon.setFrontGb(TsfSession.getFrontGb());
 		coupon.setCustGb(TsfSession.getCustGb());
@@ -517,14 +582,39 @@ public class TsfCouponService {
 		}
 		Coupon temp = couponList.iterator().next();
 		temp.setCustNo(TsfSession.getInfo().getCustNo());
-		
-		
-		if (temp.getTotPubLimitQty() > 0) {
-			if (temp.getCustPubLimitQty() <= temp.getCustCouponCnt()) {
+		onePubQty = temp.getOnePubQty();	// 1회 발급당 발행수량 설정
+
+		log.info("기획전 쿠폰정보  temp {}", temp);
+
+		// 고객당 발급수량 확인
+		if (temp.getCustPubLimitQty() > 0) {
+			int tempCustCouponCnt = temp.getCustPubLimitQty() * onePubQty;
+			//if (coupon.getCustPubLimitQty() <= coupon.getCustCouponCnt()) {
+			log.info("기획전쿠폰 다운  skip: tempCustCouponCnt : {}, temp.getCustPubLimitQty() : {} , onePubQty : {}", tempCustCouponCnt, temp.getCustPubLimitQty(), onePubQty);
+			if (tempCustCouponCnt <= temp.getCustCouponCnt()) {
+				log.info("기획전쿠폰 다운  skip: 쿠폰발급수 : {}, 회원발급수 : {}", temp.getCustPubLimitQty(), temp.getCustCouponCnt());
 				result = "ERROR_30";
 				return result;
 			}
 		}
+
+		log.info("기획전쿠폰 다운 쿠폰총발급제한수  skip: temp.getTotPubLimitQty() : {}, temp.getTotCouponCnt() : {} ", temp.getTotPubLimitQty(), temp.getTotCouponCnt());
+		// 발급수 확인
+		if (temp.getTotPubLimitQty() > 0) {
+			if (temp.getTotPubLimitQty() <= temp.getTotCouponCnt()) {
+				log.info("기획전쿠폰 다운  skip: 쿠폰총발급제한수 : {}, 전체발급수 : {}", temp.getTotPubLimitQty(), temp.getTotCouponCnt());
+				result = "ERROR_40";
+				return result;
+			}
+		}
+		
+//		if (temp.getTotPubLimitQty() > 0) {
+//			if (temp.getCustPubLimitQty() <= temp.getCustCouponCnt()) {
+//				result = "ERROR_30";
+//				return result;
+//			}
+//		}
+
 		// 첫구매여부 (Y:구매이력이없음 | N:구매이력있음) - 구매기간일자 해당기간에 구매이력이 없으면 다운로드 가능
 		if ("Y".equals(temp.getFirstOrdYn())) {
 			int firstOrdcnt = orderService.getCustFirstOrderCount(temp);

+ 21 - 1
src/main/java/com/style24/front/biz/service/TsfDisplayService.java

@@ -554,7 +554,13 @@ public class TsfDisplayService {
 	 * @date 2021. 3. 30
 	 */
 	public Collection<Contents> getContentsForGoods(Contents contents) {
-		Collection<Contents> contentsList = displayDao.getContentsList(contents);
+		Collection<Contents> contentsList = new ArrayList<>();
+		if(contents.getContentsLoc().equals("SMM007")){
+			contentsList = displayDao.getBrandpickTitleBrandList(contents);
+		}else{
+			contentsList = displayDao.getContentsList(contents);
+		}
+
 		Collection<Goods> goodsList = new ArrayList<>();
 		Cate4Srch tempContents = new Cate4Srch();
 		for (Contents data : contentsList) {
@@ -563,6 +569,9 @@ public class TsfDisplayService {
 			tempContents.setMaxRow(20);
 			tempContents.setCustNo(TsfSession.isLogin() ? TsfSession.getInfo().getCustNo() : 0);
 			if ("SMM007".equals(data.getContentsLoc())) {
+				if(!"".equals(data.getBrandGroupNo()) && !"null".equals(data.getBrandGroupNo()) && !data.getBrandGroupNo().equals(null)){
+					tempContents.setBrandGroupNo(Integer.parseInt(data.getBrandGroupNo()));
+				}
 				data.setFrontGb(TsfSession.getFrontGb());
 				data.setBannerList(displayDao.getContentsBannerList(data));
 			}
@@ -964,4 +973,15 @@ public class TsfDisplayService {
 		return goodsDao.getContentsCategoryNewGoodsList(cate4Srch);
 	}
 
+	/**
+	 * 몰메인 브랜드픽 타이틀 브랜드 목록
+	 * @param contents - 컨텐츠 정보
+	 * @return
+	 * @author bin2107
+	 * @date 2021. 7. 23
+	 */
+	public Collection<Contents> getBrandpickTitleBrandList(Contents contents) {
+		return displayDao.getBrandpickTitleBrandList(contents);
+	}
+
 }

+ 37 - 0
src/main/java/com/style24/front/biz/service/TsfOrderService.java

@@ -2146,4 +2146,41 @@ public class TsfOrderService {
 	public int getNoMemberOrderInfo(Order order) {
 		return orderDao.getNoMemberOrderInfo(order);
 	}
+	
+	/**
+	 * 주문서 계산금액 재계산 로직
+	 * @param Order
+	 * @return
+	 * @author jsh77b
+	 * @since 2021. 07. 23
+	 */
+	public String orderAmtValidationCheck(Order order) {
+		String result = "";
+		
+		Order po = new Order();
+		
+		// 장바구니정보 및 상품쿠폰정보, 장바구니쿠폰정보, 선포인트정보, 포인트정보, 상품권정보
+		Collection<Order> orderDetailList = order.getOrderDetailList();
+		int [] cartSqArr = new int[orderDetailList.size()];
+		int idx = 0;
+		for (Order vo : orderDetailList) {
+			cartSqArr[idx] = vo.getCartSq();
+		}
+		
+		po.setCartSqArr(cartSqArr);
+		
+		// 판매가정보, 즉시할인금액, 옵션금액, 다다익선적용금액 정보 조회
+		Collection<Order> tmtbGoodsApplyList = cartService.getMoreBetterAmtList(po);
+		
+		
+		
+		
+		
+		
+		
+		
+		
+		
+		return result;
+	}
 }

+ 20 - 2
src/main/java/com/style24/front/biz/thirdparty/EigeneaiApi.java

@@ -163,7 +163,7 @@ public class EigeneaiApi {
 	 * @since 2021. 6. 30
 	 */
 	public Collection<Result> getBrandWeeklySellBestGoodsList(int size, Integer brandGroupNo) {
-		String requestUrl = apiUrl + "/m061?cuid=" + cuid + "&size=" + size + "&bids=" + brandGroupNo;
+		String requestUrl = apiUrl + "/m061?cuid=" + cuid + "&size=" + size + "&inbids=" + brandGroupNo;
 
 		Eigeneai eigeneai = this.getEigeneaiInfo(requestUrl);
 		if (eigeneai.getResults() != null && !eigeneai.getResults().isEmpty()) {
@@ -204,7 +204,7 @@ public class EigeneaiApi {
 	 * @since 2021. 6. 30
 	 */
 	public Collection<Result> getBrandMonthlyClickBestGoodsList(int size, Integer brandGroupNo) {
-		String requestUrl = apiUrl + "/m062?cuid=" + cuid + "&size=" + size + "&bids=" + brandGroupNo;
+		String requestUrl = apiUrl + "/m062?cuid=" + cuid + "&size=" + size + "&inbids=" + brandGroupNo;
 
 		Eigeneai eigeneai = this.getEigeneaiInfo(requestUrl);
 		if (eigeneai.getResults() != null && !eigeneai.getResults().isEmpty()) {
@@ -513,4 +513,22 @@ public class EigeneaiApi {
 		return gson.fromJson(responseJson, Eigeneai.class);
 	}
 
+	/**
+	 * 검색어 연관 상품 추천 목록
+	 * @return
+	 * @author bin2107
+	 * @since 2021. 7. 26
+	 */
+	public Collection<Result> getRecommendItemList(int size, String keyword) {
+		String requestUrl = "";
+		requestUrl = apiUrl + "/s003?size="+size+"&cuid=" + cuid + "&st=" + keyword + "&cps=true&cpt=m004";
+
+		Eigeneai eigeneai = this.getEigeneaiInfo(requestUrl);
+		if (eigeneai.getResults() != null && !eigeneai.getResults().isEmpty()) {
+			return eigeneai.getResults();
+		}
+
+		return new ArrayList<Result>();
+	}
+
 }

+ 21 - 1
src/main/java/com/style24/front/biz/web/TsfDisplayController.java

@@ -184,7 +184,11 @@ public class TsfDisplayController extends TsfBaseController {
 			mainLayout.setCate4Srch(cate4Srch);
 
 			if ("C".equals(mainLayout.getContentsYn())) {
-				mainLayout.setContentsList(displayService.getContentsList(contents));
+				if(contentsLoc.equals("SMM007")){
+					mainLayout.setContentsList(displayService.getBrandpickTitleBrandList(contents));
+				}else{
+					mainLayout.setContentsList(displayService.getContentsList(contents));
+				}
 			} else {
 				log.info("nullpoint contentsLoc::::{}", contentsLoc);
 				if ("SMM001".equals(contentsLoc)) {
@@ -1396,4 +1400,20 @@ public class TsfDisplayController extends TsfBaseController {
 		Collection<Item> goodsList = eigeneaiApi.getRealtimeViewGoodsList(20);
 		return goodsList;
 	}
+
+	/**
+	 * 검색어 연관 상품 추천 목록
+	 * @return
+	 * @author bin2107
+	 * @since 2021. 7. 26
+	 */
+	@GetMapping("/recommend/item/list")
+	@ResponseBody
+	public Collection<Result> getRecommendItemList(@RequestParam HashMap<String, String> paramMap) {
+		String keyword = paramMap.get("keyword");
+		int size = 5;
+		Collection<Result> itemList = eigeneaiApi.getRecommendItemList(size, keyword);
+
+		return itemList;
+	}
 }

+ 28 - 28
src/main/java/com/style24/front/biz/web/TsfGoodsController.java

@@ -5,8 +5,6 @@ import java.util.Arrays;
 import java.util.Collection;
 import java.util.HashMap;
 
-import com.style24.front.biz.thirdparty.SearchEngineDiquest;
-import com.style24.persistence.domain.searchengine.FeedbackResponse;
 import org.apache.commons.lang3.StringUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Value;
@@ -33,6 +31,7 @@ import com.style24.front.biz.service.TsfRendererService;
 import com.style24.front.biz.service.TsfReviewService;
 import com.style24.front.biz.service.TsfWishlistService;
 import com.style24.front.biz.thirdparty.EigeneaiApi;
+import com.style24.front.biz.thirdparty.SearchEngineDiquest;
 import com.style24.front.support.controller.TsfBaseController;
 import com.style24.front.support.env.TsfConstants;
 import com.style24.front.support.security.session.TsfSession;
@@ -54,6 +53,7 @@ import com.style24.persistence.domain.Review;
 import com.style24.persistence.domain.SizeInfo;
 import com.style24.persistence.domain.WishList;
 import com.style24.persistence.domain.eigene.Eigeneai.Result;
+import com.style24.persistence.domain.searchengine.FeedbackResponse;
 
 import lombok.extern.slf4j.Slf4j;
 
@@ -1071,32 +1071,32 @@ public class TsfGoodsController extends TsfBaseController {
 
 		// 상품관련 기본값 설정(회원 등급, 앱, PC/모바일 등)
 		setGoods(paramsGoods);
-		//log.info("createGoodsCoupon  paramsGoods {}", paramsGoods);
-
-		// 일반상품과 딜상품 구분
-		Goods goods = goodsService.getGoodsInfo(paramsGoods);
-		if (goods == null || StringUtils.isBlank(goods.getGoodsCd())) {
-			result.set("message", "발급가능 쿠폰이 없습니다.");
-			result.set("status", "200");
-			result.set("params", paramsGoods);
-			return result;
-		}
-
-		//log.info("createGoodsCoupon  goods {}", goods);
-		if (TscConstants.GoodsType.DEAL.value().equals(goods.getGoodsType())) {
-			Collection<Goods> goodsDealComposeList = goodsService.getGoodsDealComposeList(paramsGoods);
-			// 상품쿠폰
-			if (goodsDealComposeList != null && !goodsDealComposeList.isEmpty()) {
-
-				ArrayList<String> arrGoodsList = new ArrayList<>();
-				for (Goods goodsCompose : goodsDealComposeList) {
-					arrGoodsList.add(goodsCompose.getCompsGoodsCd());
-				}
-
-				String[] arrGoodsCd = arrGoodsList.stream().toArray(String[]::new);
-				paramsGoods.setArrGoodsCd(arrGoodsCd);
-			}
-		}
+		log.info("createGoodsCoupon  paramsGoods {}", paramsGoods);
+//
+//		// 일반상품과 딜상품 구분
+//		Goods goods = goodsService.getGoodsInfo(paramsGoods);
+//		if (goods == null || StringUtils.isBlank(goods.getGoodsCd())) {
+//			result.set("message", "발급가능 쿠폰이 없습니다.");
+//			result.set("status", "200");
+//			result.set("params", paramsGoods);
+//			return result;
+//		}
+//
+//		//log.info("createGoodsCoupon  goods {}", goods);
+//		if (TscConstants.GoodsType.DEAL.value().equals(goods.getGoodsType())) {
+//			Collection<Goods> goodsDealComposeList = goodsService.getGoodsDealComposeList(paramsGoods);
+//			// 상품쿠폰
+//			if (goodsDealComposeList != null && !goodsDealComposeList.isEmpty()) {
+//
+//				ArrayList<String> arrGoodsList = new ArrayList<>();
+//				for (Goods goodsCompose : goodsDealComposeList) {
+//					arrGoodsList.add(goodsCompose.getCompsGoodsCd());
+//				}
+//
+//				String[] arrGoodsCd = arrGoodsList.stream().toArray(String[]::new);
+//				paramsGoods.setArrGoodsCd(arrGoodsCd);
+//			}
+//		}
 
 		// 쿠폰발급
 		// ERROR_10: 발급가능 쿠폰없음, 20: 발급완료 쿠폰, 30: 발급받은 쿠폰

+ 68 - 3
src/main/java/com/style24/front/biz/web/TsfOrderController.java

@@ -771,6 +771,59 @@ public class TsfOrderController extends TsfBaseController {
 		
 		return mav;
 	}
+	
+	/**
+	 * 주문 데이터 생성 (주문접수) : 사용안함
+	 *
+	 * @param
+	 * @return
+	 * @author xodud1202
+	 * @since 2021. 03. 04
+	 */
+	@PostMapping("/validationCheck")
+	@ResponseBody
+	public ModelAndView validationCheck(@RequestBody Order order) {
+		ModelAndView mav = new ModelAndView();
+		 
+		// 2021.03.09 주문데이타 등록 
+		// 1. 로그인체크 후 custNo 설정
+		if (TsfSession.isLogin()) {
+			order.setCustNo(TsfSession.getInfo().getCustNo());
+		} else {
+			order.setJsessionId(TsfSession.getSessionId());
+			order.setCustNo(0);
+		}
+		
+		order.setFrontGb(TsfSession.getFrontGb());
+
+		// 2. 주문정보유효성체크
+		String resultStr = orderService.orderValidationCheck(order);
+		
+		// 주문정보유효성체크 실패
+		if (!"SUCCESS".equals(resultStr)) {
+			mav.addObject("message", resultStr);
+			mav.setViewName(super.getDeviceViewName("order/OrderEmpty"));
+			return mav;
+		}
+		
+		// 2.1 주문금액유효성체크
+		/*
+		resultStr = orderService.orderAmtValidationCheck(order);
+		
+		// 주문금액유효성체크 실패
+		if (!"SUCCESS".equals(resultStr)) {
+			mav.addObject("message", resultStr);
+			mav.setViewName(super.getDeviceViewName("order/OrderEmpty"));
+			return mav;
+		}
+		*/
+		
+		// 2021.05.10 추가
+		mav.addObject("message"	, resultStr);
+		mav.setViewName(super.getDeviceViewName("order/OrderEmpty"));
+
+		return mav;
+	}
 
 	/**
 	 * 주문 데이터 생성 (주문접수)
@@ -784,7 +837,7 @@ public class TsfOrderController extends TsfBaseController {
 	@ResponseBody
 	public ModelAndView createOrder(@RequestBody Order order) {
 		ModelAndView mav = new ModelAndView();
-		 
+		
 		// 2021.03.09 주문데이타 등록 
 		// 1. 로그인체크 후 custNo 설정
 		if (TsfSession.isLogin()) {
@@ -799,12 +852,24 @@ public class TsfOrderController extends TsfBaseController {
 		// 2. 주문정보유효성체크
 		String resultStr = orderService.orderValidationCheck(order);
 		
-		// 주문정보 유효성체크 실패
+		// 주문정보유효성체크 실패
+		if (!"SUCCESS".equals(resultStr)) {
+			mav.addObject("message", resultStr);
+			mav.setViewName(super.getDeviceViewName("order/OrderEmpty"));
+			return mav;
+		}
+		
+		// 2.1 주문금액유효성체크
+		/*
+		resultStr = orderService.orderAmtValidationCheck(order);
+		
+		// 주문금액유효성체크 실패
 		if (!"SUCCESS".equals(resultStr)) {
 			mav.addObject("message", resultStr);
 			mav.setViewName(super.getDeviceViewName("order/OrderEmpty"));
 			return mav;
 		}
+		*/
 		
 		// 3. 주문기본정보등록(주문접수)
 		coreOrderService.createPreOrder(order);
@@ -827,7 +892,7 @@ public class TsfOrderController extends TsfBaseController {
 				
 		mav.addObject("payment"				, payment);
 		mav.addObject("orderDetailList"		, order.getOrderDetailList());
-		mav.addObject("message"				, resultStr);
+		mav.addObject("message"				, "SUCCESS");
 		mav.setViewName(super.getDeviceViewName("pg/kcpOrder"));
 
 		return mav;

+ 2 - 0
src/main/java/com/style24/front/biz/web/TsfPlanningController.java

@@ -458,6 +458,8 @@ public class TsfPlanningController extends TsfBaseController {
 			result.set("message", "죄송합니다. 해당 쿠폰은 다운로드가 불가합니다.");
 		}else if("ERROR_30".equals(couponResult)){
 			result.set("message", "죄송합니다. 해당 쿠폰은 다운로드가 불가합니다.");
+		}else if("ERROR_40".equals(couponResult)){
+			result.set("message", "발급 가능 쿠폰 수량이 모두 소진되었습니다.");
 		}else {
 			result.set("message", "쿠폰이 발급되었습니다.");
 		}

+ 1 - 0
src/main/java/com/style24/persistence/domain/Goods.java

@@ -162,6 +162,7 @@ public class Goods extends TscBaseDomain {
 	private String optionSoldoutSkip; 	//품절제외 Y, N
 	private int floorUnit; // 절사단위(1:일원단위절사, 10:십원단위절사, 100:백원단위절사)
 	private Integer cpnId;			// 쿠폰ID
+	private String cpnAllDownYn;		// 쿠폰모두받기
 
 	private String skuModelNo;		// SKUModelNo(WMS)
 	private String compsGoodsCd;	// 세트 구성품 상품번호

+ 1 - 0
src/main/java/com/style24/persistence/domain/Social.java

@@ -89,6 +89,7 @@ public class Social extends TscBaseDomain{
 		// 몰메인
 		Collection<Social> socialGoodsList;
 		private String likeIt;	// 위시리스트에 담긴 상품
+		private String mainYn;	// 몰메인에서는 재고 조회하지않음
 		
 		// Pagination
 		private TscPageRequest pageable;

+ 6 - 0
src/main/java/com/style24/persistence/domain/searchengine/GoodsListResponse.java

@@ -17,6 +17,7 @@ public class GoodsListResponse implements Serializable {
 
 	private Integer returnCode;				// 응답코드(양수: 정상, 음수: 오류)
 	private int totalCount;					// 상품전체건수
+	private Collection<Recommend> recommend;
 	private Collection<SearchEngine> response;
 //	private Collection<Goods> response;
 //
@@ -40,4 +41,9 @@ public class GoodsListResponse implements Serializable {
 //		private String selfGoodsYn;		// 자사상품여부
 //	}
 
+	@Data
+	public class Recommend {
+		// 연관검색어
+		private String keyword;	// 키워드
+	}
 }

+ 1 - 0
src/main/java/com/style24/persistence/domain/searchengine/SearchEngine.java

@@ -86,6 +86,7 @@ public class SearchEngine implements Serializable {
 	private String selfGoodsYn;		// 자사상품여부
 	private String colorCd;
 	private String adFlag;			// 광고상품여부
+	private String id;
 
 //	private String adminIp;			// 검색엔진IP
 //	private String adminPort;		// 검색엔진포트

+ 1 - 2
src/main/java/com/style24/persistence/mybatis/shop/TsfCart.xml

@@ -365,8 +365,7 @@
 				ON	 T.TMTB_SQ = SUM_DATA.TMTB_SQ
 				LEFT   JOIN TB_OPTION OP
 				ON	 CD.ITEM_CD = OP.GOODS_CD
-				AND	CD.OPT_CD1 = OP.OPT_CD1
-				AND	CD.OPT_CD2 = OP.OPT_CD2
+				AND	 CD.OPT_CD = OP.OPT_CD
 				LEFT   OUTER JOIN TB_TMTB_APPLY_GOODS NOT_APPLY
 				ON	 T.TMTB_SQ = NOT_APPLY.TMTB_SQ
 				AND	C.GOODS_CD = NOT_APPLY.GOODS_CD

+ 27 - 5
src/main/java/com/style24/persistence/mybatis/shop/TsfCoupon.xml

@@ -260,6 +260,7 @@
 		     , A.CUST_PUB_LIMIT_QTY
 		     , A.TOT_PUB_LIMIT_QTY
 		     , A.BUY_LIMIT_AMT
+		     , A.ONE_PUB_QTY
 		     , A.MAX_DC_AMT
 		     , A.CPN_TYPE
 		     , A.AVAIL_STDT
@@ -271,6 +272,7 @@
 		     , A.FIRST_ORD_YN
 		     , A.BUY_STDT
 		     , A.BUY_EDDT
+		     , GOODS_CD
 		    -- , A.CURR_PRICE
 		     , DATE_FORMAT(A.AVAIL_EDDT, '%Y-%m-%d') AS AVAIL_EDDT
 		     , IFNULL((SELECT COUNT(1) FROM TB_CUST_COUPON WHERE CPN_ID = A.CPN_ID AND CUST_NO = #{custNo}),0) AS CUST_COUPON_CNT
@@ -285,6 +287,7 @@
 		       , CUST_PUB_LIMIT_QTY
 		       , TOT_PUB_LIMIT_QTY
 		       , BUY_LIMIT_AMT
+		       , ONE_PUB_QTY
 		       , MAX_DC_AMT
 		       , CPN_TYPE
 		       , AVAIL_STDT
@@ -296,6 +299,7 @@
 		       , FIRST_ORD_YN
 		       , BUY_STDT
 		       , BUY_EDDT
+		       , GOODS_CD
 		      -- , CURR_PRICE
 		       , RANK() OVER(ORDER BY DC_AMT DESC)  AS RNUM   -- 할인금액순
 		FROM   (
@@ -308,6 +312,7 @@
 		             , CP.CURR_PRICE                                          -- 즉시쿠폰적용판매가
 		             , CP.CUST_PUB_LIMIT_QTY                                  -- 1인당 발급제한수량
 		             , CP.TOT_PUB_LIMIT_QTY                                   -- 총발행제한수량(0은 무제한)
+		             , CP.ONE_PUB_QTY                                         -- 1회발행수량
 		             , CP.BUY_LIMIT_AMT                                       -- 구매제한금액
 		             , CP.CPN_TYPE                                            -- 쿠폰타입
 		             , CP.AVAIL_STDT                                          -- 유효시작일시
@@ -319,6 +324,7 @@
 		             , CP.FIRST_ORD_YN                                        -- 첫구매여부
 		             , CP.BUY_STDT                                            -- 첫구매시작일시
 		             , CP.BUY_EDDT                                            -- 첫구매종료일시
+		             , CP.GOODS_CD                                            -- 상품코드
 		             <![CDATA[
 		             , (CASE WHEN CP.DC_WAY = 'G240_10' THEN
 		           --         (CASE WHEN IFNULL(CP.MAX_DC_AMT, 0) >0 AND CP.MAX_DC_AMT < CP.DC_VAL THEN CP.MAX_DC_AMT ELSE CP.DC_VAL END)
@@ -340,6 +346,7 @@
 		                     , CP.TOT_PUB_LIMIT_QTY
 		                     , CP.CPN_TYPE
 		                     , CP.NEW_CUST_YN
+		                     , CP.ONE_PUB_QTY
 		                     , DATE_FORMAT(CP.CUST_JOIN_STDT, '%Y%m%d%H%i%S') AS CUST_JOIN_STDT
 		                     , DATE_FORMAT(CP.CUST_JOIN_EDDT, '%Y%m%d%H%i%S') AS CUST_JOIN_EDDT
 		                     , CP.FIRST_ORD_YN
@@ -1159,12 +1166,26 @@
 		      ,C.CPN_DESC       
 		      ,C.CPN_TYPE 
 		      ,C.BUY_LIMIT_AMT 
-		      ,C.CUST_PUB_LIMIT_QTY 
-		      ,C.TOT_PUB_LIMIT_QTY
-		      ,C.MAX_DC_AMT 
+		      ,C.CUST_PUB_LIMIT_QTY
+		      ,IF(C.DC_CD_GB = 'G233_30', LC.DOWN_LIMIT_QTY , C.TOT_PUB_LIMIT_QTY) AS TOT_PUB_LIMIT_QTY
+		      ,C.ONE_PUB_QTY
+		      ,C.MAX_DC_AMT
 		      ,C.FIRST_ORD_YN
 		      , IFNULL((SELECT COUNT(1) FROM TB_CUST_COUPON WHERE CPN_ID = C.CPN_ID AND CUST_NO = #{custNo}),0) AS CUST_COUPON_CNT
-		      , CONCAT(CASE WHEN C.BUY_LIMIT_AMT = 0 THEN ''
+		      , (
+		          CASE WHEN C.DC_CD_GB = 'G233_30' /* 선착순쿠폰일때 */ THEN IFNULL((
+		                                                   SELECT COUNT(1)
+		                                                   FROM TB_LIMITED_TIME_COUPON LTC
+		                                                      , TB_CUST_COUPON CC
+		                                                   WHERE LTC.CPN_ID  = CC.CPN_ID
+		                                                     AND   NOW() BETWEEN LTC.DOWN_STDT AND LTC.DOWN_EDDT
+		                                                     AND LTC.DEL_YN = 'N'
+		                                                     AND LTC.CPN_ID = C.CPN_ID
+		                                                     AND CC.REG_DT BETWEEN LTC.DOWN_STDT AND LTC.DOWN_EDDT
+		                                               ),0)
+		          ELSE IFNULL((SELECT COUNT(1) FROM TB_CUST_COUPON WHERE CPN_ID = C.CPN_ID),0) END
+		         ) AS TOT_COUPON_CNT
+		     , CONCAT(CASE WHEN C.BUY_LIMIT_AMT = 0 THEN ''
 		                   ELSE CONCAT(FORMAT(C.BUY_LIMIT_AMT , 0),'원 이상 구매 시 ')
 		              END
 		             ,CASE WHEN C.MAX_DC_AMT = 0 THEN ''
@@ -1184,12 +1205,13 @@
 		      ,IF (C.PD_GB = 'D', NOW(), C.AVAIL_STDT) AS AVAIL_STDT
 		      ,IF (C.PD_GB = 'D', CONCAT(CURRENT_DATE + INTERVAL C.AVAIL_DAYS DAY, ' 23:59:59'), C.AVAIL_EDDT) AS AVAIL_EDDT
 		FROM TB_COUPON C
+				 LEFT OUTER JOIN TB_LIMITED_TIME_COUPON LC ON C.CPN_ID = LC.CPN_ID AND NOW() BETWEEN LC.DOWN_STDT AND LC.DOWN_EDDT
 		WHERE 1=1
 		AND C.CPN_STAT = 'G232_11'
 		AND C.CPN_ID = #{cpnId}
 		AND C.SITE_CD = #{siteCd}
 		AND C.CPN_TYPE IN ('G230_11','G230_20','G230_30')
-		AND NOW() BETWEEN C.DOWN_STDT AND C.DOWN_EDDT
+		  AND NOW() BETWEEN IF(C.DC_CD_GB = 'G233_30', LC.DOWN_STDT, C.DOWN_STDT) AND IF(C.DC_CD_GB = 'G233_30', LC.DOWN_EDDT,  C.DOWN_EDDT)
 		AND NOW()  <![CDATA[<=]]> IF (C.PD_GB = 'D', CONCAT(CURRENT_DATE + INTERVAL C.AVAIL_DAYS DAY, ' 23:59:59'), C.AVAIL_EDDT)
 		AND (CASE WHEN #{frontGb} = 'P' THEN C.DC_PVAL
 		          WHEN #{frontGb} = 'M' THEN C.DC_MVAL

+ 49 - 3
src/main/java/com/style24/persistence/mybatis/shop/TsfDisplay.xml

@@ -18,7 +18,7 @@
 	<select id="getGnbBrandGroupList" parameterType="Contents" resultType="BrandGroup">
 		/* TsfDisplay.getGnbBrandGroupList */
 		WITH TAB AS (
-		    SELECT  STR_TITLE3
+		    SELECT  CAST(STR_TITLE3 AS UNSIGNED) AS STR_TITLE3
 		    FROM
 		<choose>
 		    <when test='preview != null and preview == "Y"'>
@@ -32,8 +32,8 @@
 		    AND   CONTENTS_LOC = #{contentsLoc}
 		    AND   DISP_STDT <![CDATA[<=]]> NOW()
 		    AND   DISP_EDDT <![CDATA[>=]]> NOW()
-		    GROUP BY STR_TITLE3
-		    ORDER BY STR_TITLE3
+		    GROUP BY  CAST(STR_TITLE3 AS UNSIGNED)
+		    ORDER BY  CAST(STR_TITLE3 AS UNSIGNED)
 		    LIMIT 1
 		)
 		SELECT B.STR_TITLE1     AS TITLE
@@ -1407,5 +1407,51 @@
 		ORDER  BY SPLASH_IMG_SQ DESC
 		LIMIT 1
 	</select>
+
+	<!-- 브랜드픽 타이틀 브랜드 조회 -->
+	<select id="getBrandpickTitleBrandList" parameterType="Contents" resultType="Contents">
+		/* TsfDisplay.getBrandpickTitleBrandList */
+		SELECT  T.BRAND_GROUP_NO
+		      , T.BRAND_GROUP_NM
+		      , T.BRAND_GROUP_IMG
+		      , ROW_NUMBER() OVER() AS DISP_ORD
+		      , T.CATE_NO
+		      , T.CONTENTS_LOC
+		FROM  (
+		         SELECT
+		                A.BRAND_GROUP_NO                                     /*브랜드그룹번호*/
+		              , (SELECT FN_GET_BRAND_GROUP_NM(A.BRAND_GROUP_NO)) AS BRAND_GROUP_NM
+		              , (SELECT LOGO_FILE_NM FROM TB_BRAND_GROUP WHERE 1=1 AND A.BRAND_GROUP_NO = BRAND_GROUP_NO) AS BRAND_GROUP_IMG		/*브랜드그룹이미지경로*/
+		              , A.CATE_NO
+		              , A.CONTENTS_LOC
+		         FROM
+		         <choose>
+		            <when test='preview != null and preview == "Y"'>
+		                TB_CONTENTS_PREVIEW A
+		            </when>
+		            <otherwise>
+		                TB_CONTENTS A
+		            </otherwise>
+		         </choose>
+		         WHERE  A.CONTENTS_LOC = #{contentsLoc}
+		         AND    A.USE_YN = 'Y'
+		        <if test="cateNo != null and cateNo != ''">
+		         AND    A.CATE_NO = #{cateNo}
+		        </if>
+		        <choose>
+		            <when test='preview != null and preview == "Y"'>
+		          AND    A.DISP_STDT <![CDATA[<=]]> STR_TO_DATE(#{viewDt},'%Y%m%d%H%i%S')
+		          AND    A.DISP_EDDT <![CDATA[>=]]> STR_TO_DATE(#{viewDt},'%Y%m%d%H%i%S')
+		            </when>
+		            <otherwise>
+		          AND    A.DISP_STDT <![CDATA[<=]]> NOW()
+		          AND    A.DISP_EDDT <![CDATA[>=]]> NOW()
+		            </otherwise>
+		        </choose>
+		         ORDER BY  A.DISP_ORD
+		      ) T
+		WHERE  1=1
+		GROUP BY  T.BRAND_GROUP_NO, T.CATE_NO, T.CONTENTS_LOC
+	</select>
 	
 </mapper>

+ 4 - 1
src/main/java/com/style24/persistence/mybatis/shop/TsfGoods.xml

@@ -1513,9 +1513,12 @@
 		                    AND		G.BRAND_CD = B.BRAND_CD
 		                    AND     B.BRAND_GROUP_NO = BG.BRAND_GROUP_NO
 		                    AND		CT.CONTENTS_LOC = #{contentsLoc}
-		                    <if test="contentsLoc == 'SMM009' or contentsLoc == 'SMM007' or contentsLoc == 'SMM012'">
+		                    <if test="contentsLoc == 'SMM009' or contentsLoc == 'SMM012'">
 		                    AND 	CTG.CONTENTS_SQ = #{dispOrd}
 		                    </if>
+		                    <if test="contentsLoc == 'SMM007'">
+		                    AND		CT.BRAND_GROUP_NO = #{brandGroupNo}
+		                    </if>
 		                    <if test="contentsLoc == 'SMM003' or contentsLoc == 'SBM007' or contentsLoc == 'SBM008' or contentsLoc == 'SBM009' or contentsLoc == 'SBM017' or contentsLoc == 'SBM018' or contentsLoc == 'SBM019' or contentsLoc == 'SOM003' or contentsLoc == 'SCM002' or contentsLoc == 'SCM003' or contentsLoc == 'SOM002'">
 		                    AND CT.CONTENTS_SQ IN ( SELECT TMP.CONTENTS_SQ FROM (SELECT A.CONTENTS_SQ FROM TB_CONTENTS A WHERE 1=1 AND A.CONTENTS_LOC = #{contentsLoc} AND NOW() BETWEEN A.DISP_STDT AND A.DISP_EDDT
 		                                                                                    <if test="brandGroupNo != null and brandGroupNo != ''">

+ 22 - 6
src/main/java/com/style24/persistence/mybatis/shop/TsfPlanning.xml

@@ -802,8 +802,9 @@
 		      ,C.CPN_TYPE 
 		      ,C.BUY_LIMIT_AMT 
 		      ,C.CUST_PUB_LIMIT_QTY 
-		      ,C.TOT_PUB_LIMIT_QTY
-		      ,C.MAX_DC_AMT 
+		      ,IF(C.DC_CD_GB = 'G233_30', LC.DOWN_LIMIT_QTY , C.TOT_PUB_LIMIT_QTY) AS TOT_PUB_LIMIT_QTY
+		      ,C.ONE_PUB_QTY
+		      ,C.MAX_DC_AMT
 		      ,C.CPN_STAT 
 		      ,C.REG_DT
 		      ,PC.TITLE
@@ -818,6 +819,19 @@
 		      ,PC.CPN_NOTE8
 		      ,PC.CPN_NOTE9
 		      , IFNULL((SELECT COUNT(1) FROM TB_CUST_COUPON WHERE CPN_ID = C.CPN_ID AND CUST_NO = #{custNo}),0) AS CUST_COUPON_CNT
+		      , (
+		          CASE WHEN C.DC_CD_GB = 'G233_30' /* 선착순쿠폰일때 */ THEN IFNULL((
+		                   SELECT COUNT(1)
+		                   FROM TB_LIMITED_TIME_COUPON LTC
+		                      , TB_CUST_COUPON CC
+		                   WHERE LTC.CPN_ID  = CC.CPN_ID
+		                   AND   NOW() BETWEEN LTC.DOWN_STDT AND LTC.DOWN_EDDT
+		                   AND LTC.DEL_YN = 'N'
+		                   AND LTC.CPN_ID = C.CPN_ID
+		                   AND CC.REG_DT BETWEEN LTC.DOWN_STDT AND LTC.DOWN_EDDT
+		                   ),0)
+		          ELSE IFNULL((SELECT COUNT(1) FROM TB_CUST_COUPON WHERE CPN_ID = C.CPN_ID),0) END
+		        ) AS TOT_COUPON_CNT
 		      , CONCAT(CASE WHEN C.BUY_LIMIT_AMT = 0 THEN ''
 		                   ELSE CONCAT(FORMAT(C.BUY_LIMIT_AMT , 0),'원 이상 구매 시 ')
 		              END
@@ -840,8 +854,9 @@
 		      ,IF (C.PD_GB = 'D', CONCAT(CURRENT_DATE + INTERVAL C.AVAIL_DAYS DAY, ' 23:59:59'), C.AVAIL_EDDT) AS AVAIL_EDDT
 		FROM TB_PLAN_CONTENTS PC 
 		             INNER JOIN TB_PLAN_CONTENTS_ITEM PCI ON PC.PLAN_CONT_SQ = PCI.PLAN_CONT_SQ 
-		             INNER JOIN TB_COUPON C ON PCI.ITEM_VAL = C.CPN_ID 
-		             LEFT JOIN TB_CUST_COUPON CC ON C.CPN_ID = CC.CPN_ID 
+		             INNER JOIN TB_COUPON C ON PCI.ITEM_VAL = C.CPN_ID
+		LEFT OUTER JOIN TB_LIMITED_TIME_COUPON LC ON C.CPN_ID = LC.CPN_ID AND NOW() BETWEEN LC.DOWN_STDT AND LC.DOWN_EDDT
+		LEFT JOIN TB_CUST_COUPON CC ON C.CPN_ID = CC.CPN_ID
 		WHERE 1=1
 		<if test="planSq != null and planSq != ''">
 		AND PC.PLAN_SQ = #{planSq}
@@ -852,7 +867,7 @@
 		AND C.CPN_ID  = #{cpnId}
 		</if>
 		AND C.CPN_TYPE IN ('G230_11','G230_30','G230_20')
-		AND NOW() BETWEEN C.DOWN_STDT AND C.DOWN_EDDT
+		AND NOW() BETWEEN IF(C.DC_CD_GB = 'G233_30', LC.DOWN_STDT, C.DOWN_STDT) AND IF(C.DC_CD_GB = 'G233_30', LC.DOWN_EDDT,  C.DOWN_EDDT)
 		AND NOW()  <![CDATA[<=]]>  IF (C.PD_GB = 'D', CONCAT(CURRENT_DATE + INTERVAL C.AVAIL_DAYS DAY, ' 23:59:59'), C.AVAIL_EDDT)
 		AND (CASE WHEN 'P' = #{frontGb} THEN C.DC_PVAL
 		          WHEN 'M' = #{frontGb} THEN C.DC_MVAL
@@ -864,7 +879,8 @@
 		           ,C.CPN_DESC       
 		           ,C.CPN_TYPE 
 		           ,C.BUY_LIMIT_AMT 
-		           ,C.CUST_PUB_LIMIT_QTY 
+		           ,C.CUST_PUB_LIMIT_QTY
+		           ,LC.DOWN_LIMIT_QTY
 		           ,C.TOT_PUB_LIMIT_QTY
 		           ,C.MAX_DC_AMT
 		           ,C.REG_DT

+ 7 - 1
src/main/java/com/style24/persistence/mybatis/shop/TsfSocial.xml

@@ -41,7 +41,7 @@
 		         , G.PARALLEL_IMPORT_YN                                      /*병행수입여부*/
 		         , G.ORDER_MADE_YN                                           /*주문제작여부*/
 		         , G.LIST_PRICE                                              /*정상가*/
-		         , FN_GET_BENEFIT_PRICE( 'P' /**P*/,G.GOODS_CD,SG.CURR_APRICE, 'G100_10' /**P*/)                     AS CURR_PRICE    /*현재판매가*/
+		         , SG.CURR_APRICE                          AS CURR_PRICE    /*현재판매가*/
 		         , SG.DC_ARATE                             AS DC_RATE        /*변경후할인율*/
 		         , SG.DISP_ORD                                               /*노출순서*/
 		         , G.GOODS_TYPE                                              /*상품유형*/
@@ -86,6 +86,7 @@
 		          ) Z
 		     GROUP BY GOODS_CD
 		)
+		<if test="mainYn == null or mainYn ==''">
 		, TAB_STOCK AS (
 		     SELECT G.GOODS_CD
 		         , SUM(case WHEN S.SOLDOUT_YN = 'Y' THEN 0
@@ -126,6 +127,7 @@
 		    WHERE  NUMB = 1
 		    GROUP BY GOODS_CD
 		    )
+		</if>
 		SELECT G.BRAND_GROUP_NM
 		     , G.GOODS_CD
 		     , FN_GET_GOODS_NM(G.GOODS_NM,G.GOODS_GB,G.FOREIGN_BUY_YN,G.PARALLEL_IMPORT_YN,G.ORDER_MADE_YN) AS GOODS_FULL_NM /*상품FULL명*/
@@ -140,8 +142,10 @@
 		     , 100 - ROUND((G.CURR_PRICE / G.LIST_PRICE) * 100 ,0) AS DC_RATE 
 		     , GI.SYS_IMG_NM
 		     , GI.SYS_IMG_NM2
+		<if test="mainYn == null or mainYn ==''">
 		     , S.STOCK_QTY_SUM
 		     , S.OPT_CD
+		</if>
 		     , G.MIN_ORD_QTY 
 		     , (SELECT GROUP_CONCAT(COMPS_GOODS_CD)  FROM TB_GOODS_COMPOSE WHERE GOODS_CD = G.GOODS_CD) AS COMPS_GOODS_CD  
 		     <choose>
@@ -154,7 +158,9 @@
 		     </choose>
 		FROM   TAB_GOODS G
 		LEFT OUTER JOIN TAB_GOODS_IMG GI ON G.GOODS_CD = GI.GOODS_CD
+		<if test="mainYn == null or mainYn ==''">
 		LEFT OUTER JOIN TAB_STOCK S ON G.GOODS_CD = S.GOODS_CD
+		</if>
 		<if test="custNo != null and custNo > 0"> <!-- 로그인 했으면 -->
 		LEFT OUTER JOIN TB_WISHLIST W ON G.GOODS_CD = W.GOODS_CD
 		                             AND W.CUST_NO = #{custNo}

+ 4 - 101
src/main/webapp/WEB-INF/views/mob/app/NoticeFormMob.html

@@ -42,11 +42,9 @@
 	});
 
 	var pushListInfo = function (pushList) {
-		alert('pushListInfo1 Call ===> ' + pushList);
 		let orgPushList;
-		//IOS는 앱에서 BASE64로 인코딩 한후 전달 한다.
-		if (_osType === 'I') {
-  			orgPushList = window.atob(pushList);
+		if (_osType === 'I') { //IOS는 앱에서 BASE64로 인코딩 한후 전달 한다. 아래와같이 해줘야 한글 안깨짐
+  			orgPushList = decodeURIComponent(escape(window.atob(pushList)));
 		} else if (_osType === 'A') {
 			orgPushList = pushList;
 		}
@@ -55,36 +53,14 @@
 			let pushListJosn = JSON.parse(orgPushList);
 			let html = '';
 			$.each(pushListJosn.pushList, function(idx, item) {
-				if (_osType === 'I') {
-					alert('fnDecodeUnicode :' + fnDecodeUnicode(item.content.toLowerCase())
-					 + 'escape :' + escape(item.content)
-					 + ' unescape :' + unescape(item.content)
-					 + ' encodeURI:' + encodeURI(item.content)
-					 + ' decodeURI:' + decodeURI(item.content)
-					 + ' encodeURIComponent:' + encodeURIComponent(item.content)
-					 + ' decodeURIComponent:' + decodeURIComponent(item.content)
-					);
-				}
 				html += '<div class="inner">\n';
 				html += '    <a href="'+item.link+'">\n';
 				html += '        <dl>\n';
 				html += '            <dt class="tit">\n';
-				let title = '';
-				if (_osType === 'I') {
-					title = fnDecodeUnicode(item.title.toLowerCase());
-				} else if(_osType === 'A') {
-					title = item.title;
-				}
-				html += title;
+				html += item.title;
 				html += '            </dt>\n'
 				html += '            <dd class="cont_txt">\n';
-				let content = '';
-				if (_osType === 'I') {
-					content = fnDecodeUnicode(item.content.toLowerCase());
-				} else if(_osType === 'A') {
-					content = item.content;
-				}
-				html += content;
+				html += item.content;
 				html += '            </dd>\n';
 				if (!gagajf.isNull(item.imgUrl)) {
 					html += '            <dd class="cont_img">\n';
@@ -107,72 +83,6 @@
 		}
 	}
 
-	var pushListInfo2 = function (pushList) {
-		alert('pushListInfo2 Call ===> ' + pushList);
-		// let orgPushList;
-		// //IOS는 앱에서 BASE64로 인코딩 한후 전달 한다.
-		// if (_osType === 'I') {
-  		// 	orgPushList = window.atob(pushList);
-		// } else if (_osType === 'A') {
-		// 	orgPushList = pushList;
-		// }
-
-		if (!gagajf.isNull(pushList)) {
-			let pushListJosn = JSON.parse(pushList);
-			let html = '';
-			$.each(pushListJosn.pushList, function(idx, item) {
-				if (_osType === 'I') {
-					alert('fnDecodeUnicode :' + fnDecodeUnicode(item.content.toLowerCase())
-					 + 'escape :' + escape(item.content)
-					 + ' unescape :' + unescape(item.content)
-					 + ' encodeURI:' + encodeURI(item.content)
-					 + ' decodeURI:' + decodeURI(item.content)
-					 + ' encodeURIComponent:' + encodeURIComponent(item.content)
-					 + ' decodeURIComponent:' + decodeURIComponent(item.content)
-					);
-				}
-				html += '<div class="inner">\n';
-				html += '    <a href="'+item.link+'">\n';
-				html += '        <dl>\n';
-				html += '            <dt class="tit">\n';
-				let title = '';
-				if (_osType === 'I') {
-					title = fnDecodeUnicode(item.title.toLowerCase());
-				} else if(_osType === 'A') {
-					title = item.title;
-				}
-				html += title;
-				html += '            </dt>\n'
-				html += '            <dd class="cont_txt">\n';
-				let content = '';
-				if (_osType === 'I') {
-					content = fnDecodeUnicode(item.content.toLowerCase());
-				} else if(_osType === 'A') {
-					content = item.content;
-				}
-				html += content;
-				html += '            </dd>\n';
-				if (!gagajf.isNull(item.imgUrl)) {
-					html += '            <dd class="cont_img">\n';
-					html += '                <img src="'+ item.imgUrl +'" />\n';
-					html += '            </dd>\n';
-				}
-				html += '            <dd class="cont_data">\n';
-				html += '                <span>\n';
-				html += fnDisplayDate(item.date);
-				html += '                </span>\n';
-				html += '            </dd>\n'
-				html += '        </dl>\n'
-				html += '    </a>';
-				html += '</div>\n'
-			});
-			$('#notice').removeClass('nodata');
-			$('#notice').html(html);
-		} else {
-			$('#notice').addClass('nodata');
-		}
-	}
-	
 	var fnDisplayDate = function (date) {
 		let resultDate = '';
 		if(!gagajf.isNull(date)) {
@@ -185,13 +95,6 @@
 	}
 
 
-	var fnDecodeUnicode = function(context) {
-		const regExp = /\\u([\d\w]{4})/gi;
-		context = context.replace(regExp, function (match, grp)
-		{ return String.fromCharCode(parseInt(grp, 16)); } );
-		return unescape(context);
-	}
-
 </script>
 
 </th:block>

+ 12 - 5
src/main/webapp/WEB-INF/views/mob/common/fragments/FooterMob.html

@@ -165,12 +165,17 @@
 	<div class="fullBody">
 		<div class="inner">
 
-			<div class="list_content">  <!-- 데이터 없을시 클래스 nodata 추가 -->
+			<div class="list_content" id="hstArea">  <!-- 데이터 없을시 클래스 nodata 추가 -->
 				<div class="count_wrap">
 					<div>
 						<p><span id="quickMenuTodayCount">0</span>개의 상품</p>
 					</div>
 				</div>
+				<div class="list_defult"> <!-- 210722_ 추가 : nodata 멘트 영역 -->
+					<div>
+						<p>최근 본 상품이 없습니다.</p>
+					</div>
+				</div>
 				<div class="itemsGrp" id="quickMenuTodayGoods"> <!-- itemsGrp rank hot deal -->
 					
 				</div>
@@ -283,10 +288,12 @@
 					})
 					
 				}else {
-					tag += '<div class="no_item">';
-					tag += '	최근 본 상품이 없습니다.';
-					tag += '</div>';
-					
+					// tag += '<div class="list_defult">';
+					// tag += '	<div>';
+					// tag += '	<p>최근 본 상품이 없습니다.</p>';
+					// tag += '	</div>';
+					// tag += '</div>';
+					$("#hstArea").addClass("nodata");
 				}
 				$('#quickMenuTodayGoods').html(tag);
 				

+ 1 - 1
src/main/webapp/WEB-INF/views/mob/display/BrandMainFormMob.html

@@ -39,7 +39,7 @@
 											<div class="img">
 												<img th:src="${@environment.getProperty('domain.image')+ContentsData.imgPath2}" alt="">
 											</div>
-											<div class="txtWrap">
+											<div class="txtWrap" th:classappend="${ContentsData.strVar7=='BLACK'?'':'w'}">
 												<p class="bMainTitle">
 													<input type="hidden" name="mainTitle" th:value="${ContentsData.strTitle1}"/>
 												</p>

+ 58 - 115
src/main/webapp/WEB-INF/views/mob/display/BrandSearchGoodsListFormMob.html

@@ -25,7 +25,7 @@
 				<form id="InnerSearchForm" name="InnerSearchForm">
 					<input type="hidden" name="brandGroupNo" th:value="${params.brandGroupNo}">
 					<div class="sch_title">
-						<input type="text" class="form_control" id="keyword" name="keyword" th:value="${params.keyword}" placeholder="" maxlength="100">
+						<input type="text" class="form_control" id="keyword" name="keyword" th:value="${params.keyword}" placeholder="" maxlength="100" autocomplete="off">
 						<!-- <button class="btn_x">X</button> -->
 						<button type="button" class="btn_sch" onclick="fnSearchData();"><img src="/images/mo/ico_btn_search.png" alt=""></button>
 					</div>
@@ -43,125 +43,13 @@
 				</div>
 
 				<!-- 이런상품은 어떤가요 -->
-				<div class="now_view">
+				<div class="now_view" id="recomArea" style="display:none;">
 					<div class="store_product">
 						<div class="allresult-tit">
 							<h3>이런 상품은 어떤가요?</h3>
 						</div>
 						<div class="swiper-container sch_product">
-							<div class="swiper-wrapper">
-								<div class="swiper-slide">
-									<div class="item_prod">
-										<div class="item_state">
-											<button type="button" class="itemLike">관심상품 추가</button>
-											<a href="#none" class="itemLink">
-												<div class="itemPic">
-													<img class="vLHTC pd_img" src="/images/mo/br_main03.png" alt="">
-												</div>
-												<p class="itemBrand">BRAND NAME</p>
-												<div class=" itemName">남성 헤링본 기모 팬츠 헤링본 기모 팬츠</div>
-												<p class="itemPrice">
-													<span class="itemPrice_original">89,000</span>
-													80,100
-													<span class="itemPercent">10%</span>
-												</p>
-												<div class="itemcolorchip">
-													<span class="chip_color35" value="ABM">BEIGE</span>
-													<span class="chip_color54" value="BDS">BLACK</span>
-													<span class="chip_color40" value="YBR">WHITE</span>
-												</div>
-												<p class="itemBadge">
-													<span class="badge13">베스트 </span>
-												</p>
-												<div class="itemComment">#주문 폭주 상품</div>
-											</a>
-										</div>
-									</div>
-								</div>
-								<div class="swiper-slide">
-									<div class="item_prod">
-										<div class="item_state">
-											<button type="button" class="itemLike">관심상품 추가</button>
-											<a href="#none" class="itemLink">
-												<div class="itemPic">
-													<img class="vLHTC pd_img" src="/images/mo/br_main03.png" alt="">
-												</div>
-												<p class="itemBrand">BRAND NAME</p>
-												<div class=" itemName">남성 헤링본 기모 팬츠 헤링본 기모 팬츠</div>
-												<p class="itemPrice">
-													<span class="itemPrice_original">89,000</span>
-													80,100
-													<span class="itemPercent">10%</span>
-												</p>
-												<div class="itemcolorchip">
-													<span class="chip_color35" value="ABM">BEIGE</span>
-													<span class="chip_color54" value="BDS">BLACK</span>
-													<span class="chip_color40" value="YBR">WHITE</span>
-												</div>
-												<p class="itemBadge">
-													<span class="badge13">베스트 </span>
-												</p>
-												<div class="itemComment">#주문 폭주 상품</div>
-											</a>
-										</div>
-									</div>
-								</div>
-								<div class="swiper-slide">
-									<div class="item_prod">
-										<div class="item_state">
-											<button type="button" class="itemLike">관심상품 추가</button>
-											<a href="#none" class="itemLink">
-												<div class="itemPic">
-													<img class="vLHTC pd_img" src="/images/mo/br_main03.png" alt="">
-												</div>
-												<p class="itemBrand">BRAND NAME</p>
-												<div class=" itemName">남성 헤링본 기모 팬츠 헤링본 기모 팬츠</div>
-												<p class="itemPrice">
-													<span class="itemPrice_original">89,000</span>
-													80,100
-													<span class="itemPercent">10%</span>
-												</p>
-												<div class="itemcolorchip">
-													<span class="chip_color35" value="ABM">BEIGE</span>
-													<span class="chip_color54" value="BDS">BLACK</span>
-													<span class="chip_color40" value="YBR">WHITE</span>
-												</div>
-												<p class="itemBadge">
-													<span class="badge13">베스트 </span>
-												</p>
-												<div class="itemComment">#주문 폭주 상품</div>
-											</a>
-										</div>
-									</div>
-								</div>
-								<div class="swiper-slide">
-									<div class="item_prod">
-										<div class="item_state">
-											<button type="button" class="itemLike">관심상품 추가</button>
-											<a href="#none" class="itemLink">
-												<div class="itemPic">
-													<img class="vLHTC pd_img" src="/images/mo/br_main03.png" alt="">
-												</div>
-												<p class="itemBrand">BRAND NAME</p>
-												<div class=" itemName">남성 헤링본 기모 팬츠 헤링본 기모 팬츠</div>
-												<p class="itemPrice">
-													<span class="itemPrice_original">89,000</span>
-													80,100
-													<span class="itemPercent">10%</span>
-												</p>
-												<div class="itemcolorchip">
-													<span class="chip_color35" value="ABM">BEIGE</span>
-													<span class="chip_color54" value="BDS">BLACK</span>
-													<span class="chip_color40" value="YBR">WHITE</span>
-												</div>
-												<p class="itemBadge">
-													<span class="badge13">베스트 </span>
-												</p>
-												<div class="itemComment">#주문 폭주 상품</div>
-											</a>
-										</div>
-									</div>
-								</div>
+							<div class="swiper-wrapper" id="recommendItemArea">
 								<div class="swiper-slide">
 									<div class="item_prod">
 										<div class="item_state">
@@ -631,6 +519,7 @@
 		$('#noDataFilter').hide();
 		$('#goodsNodata').hide();
 		$('#goodsKeyword').text('');
+		$('#recomArea').hide();
 		totalCnt = result.paging.totalCount;
 		$("#totCntId").text(totalCnt.addComma());
 		$("#prodListCnt").text('('+totalCnt.addComma()+')');
@@ -648,6 +537,7 @@
 			$('#eventNodata').hide();
 			$('#eventKeyword').text('');
 			$('#dataArea').show();
+			$('#recomArea').hide();
 			var goodsUrl = [[${@environment.getProperty('upload.goods.view')}]];
 			let lastPage = result.paging.pageNo;
 			let endRow = result.paging.endRow - result.paging.pageSize;
@@ -678,6 +568,9 @@
 				$('#goodsNodata').show();
 				$('#goodsKeyword').text([[${params.keyword}]]);
 				$('#dataArea').hide();
+				$('#recomArea').show();
+				// 검색어 연관 상품 추천
+				fnRecommendItemList([[${params.keyword}]]);
 			}
 			gagaInfiniteScroll.draw('not');
 		}
@@ -1035,6 +928,56 @@
 		return tag;
 	}
 
+	// 검색어 연관 상품 추천
+	var fnRecommendItemList = function (keyword){
+		if(gagajf.isNull(keyword)){
+			keyword = "";
+		}
+		var data = {keyword : keyword};
+		var html = '';
+
+		$.getJSON('/display/recommend/item/list', data, function (result){
+			$("#recommendItemArea").html('');
+			if(result.length > 0){
+				$.each(result, function (idx, item){
+					html += '<div class="swiper-slide">\n';
+					html += '	<div class="item_prod">\n';
+					html += '		<div class="item_state">\n';
+					html += '			<button type="button" class="itemLike">관심상품 추가</button>\n';
+					html += '			<a href="'+item.product.itemUrl+'" class="itemLink">\n';
+					html += '				<div class="itemPic">\n';
+					html += '					<img class="vLHTC pd_img" src="'+item.product.itemImage+'" alt="">\n';
+					html += '				</div>\n';
+					html += '				<p class="itemBrand">'+item.product.brandName+'</p>\n';
+					html += '				<div class=" itemName">'+item.product.itemName+'</div>\n';
+					html += '				<p class="itemPrice">\n';
+					if(item.product.salePrice < item.product.originalPrice) {
+						html += '			<span class="itemPrice_original">'+ item.product.originalPrice.addComma() +'</span>\n';
+					}
+					html += item.product.salePrice.addComma() ;
+					if(item.product.salePrice < item.product.originalPrice) {
+						html += '			<span class="itemPercent">' + Math.round((item.product.originalPrice - item.product.salePrice) / (item.product.originalPrice * 1.0) * 100) + '%</span>\n';
+					}
+					html += '				</p>\n';
+					html += '			</a>\n';
+					html += '		</div>\n';
+					html += '	</div>\n';
+					html += '</div>\n';
+				});
+			}
+			$("#recommendItemArea").append(html);
+
+			var swiperschProduct2 = new Swiper('.swiper-container.sch_product', {
+				slidesPerView: 2.2,
+				spaceBetween: 7,
+				autoplay: {
+					delay: 4000,
+				},
+				freeMode: true,
+			});
+		});
+	}
+
 	//TabWrap, TabIndex
 	$(document).on('click', '.tabIndex li a', function() {
 		var $this = $(this),

+ 1 - 1
src/main/webapp/WEB-INF/views/mob/display/CategoryMainFormMob.html

@@ -32,7 +32,7 @@
 											<div class="img">
 												<img th:src="${@environment.getProperty('domain.image') + '/' + item.imgPath1}" alt="">
 											</div>
-											<div class="txtWrap">
+											<div class="txtWrap" th:classAppend="${(item.strVar7 == 'BLACK') ? '' :'w'}">
 												<p class="bText">
 													<input type="hidden" name="bannerTitle" th:value="${item.strTitle1}">
 												</p>

+ 4 - 4
src/main/webapp/WEB-INF/views/mob/display/OutletMainFormMob.html

@@ -47,18 +47,18 @@
 					</div>
 				</th:block>
 
-<!--				<th:block th:if="${contentsLoc=='004'}">-->
-				<th:block th:if="${mainStat.index==1}" th:style="${'display:block'}" th:data="${mainStat.index}">
+				<th:block th:if="${contentsLoc=='004'}">
+<!--				<th:block th:if="${mainStat.index==1}" th:style="${'display:block'}" th:data="${mainStat.index}">-->
 					<div class="inner wide bg_gray">
 						<div class="dp_cate_list">
 						</div>
 					</div>
-				</th:block>
 <!--				</th:block>-->
+				</th:block>
 
 				<th:block th:if="${contentsLoc=='002'}">
 					<div class="inner wide" th:if="${mdPickGoodsList != null}">
-						<div class="md_item">
+						<div class="md_item inner">
 							<h2 class="dp_subtitle" th:text="${contentsTitle}">MD가 추천하는 아울렛 아이템</h2>
 							<div class="swiper-container item_list">
 								<div class="swiper-wrapper">

+ 57 - 117
src/main/webapp/WEB-INF/views/mob/display/SearchGoodsListFormMob.html

@@ -24,7 +24,7 @@
 			<div class="inner">
 				<div class="sch_title">
 					<form id="InnerSearchForm" name="InnerSearchForm">
-					<input type="text" class="form_control" id="keyword" name="keyword" th:value="${params.keyword}" placeholder="" maxlength="100">
+					<input type="text" class="form_control" id="keyword" name="keyword" th:value="${params.keyword}" placeholder="" maxlength="100" autocomplete="off">
 					<!-- <button class="btn_x">X</button> -->
 					<button type="button" class="btn_sch" onclick="fnSearchData();"><img src="/images/mo/ico_btn_search.png" alt=""></button>
 					</form>
@@ -58,7 +58,7 @@
 								<!-- // 전체 검색결과 없을때 -->
 							</div>
 
-							<div class="inner" style="display:none;">
+							<div class="inner" id="recomArea" style="display:none;">
 								<!-- 이런상품은 어떤가요 -->
 								<div class="now_view">
 									<div class="store_product">
@@ -66,119 +66,7 @@
 											<h3>이런 상품은 어떤가요?</h3>
 										</div>
 										<div class="swiper-container sch_product">
-											<div class="swiper-wrapper">
-												<div class="swiper-slide">
-													<div class="item_prod">
-														<div class="item_state">
-															<button type="button" class="itemLike">관심상품 추가</button>
-															<a href="#none" class="itemLink">
-																<div class="itemPic">
-																	<img class="vLHTC pd_img" src="/images/mo/br_main03.png" alt="">
-																</div>
-																<p class="itemBrand">BRAND NAME</p>
-																<div class=" itemName">남성 헤링본 기모 팬츠 헤링본 기모 팬츠</div>
-																<p class="itemPrice">
-																	<span class="itemPrice_original">89,000</span>
-																	80,100
-																	<span class="itemPercent">10%</span>
-																</p>
-																<div class="itemcolorchip">
-																	<span class="chip_color35" value="ABM">BEIGE</span>
-																	<span class="chip_color54" value="BDS">BLACK</span>
-																	<span class="chip_color40" value="YBR">WHITE</span>
-																</div>
-																<p class="itemBadge">
-																	<span class="badge13">베스트 </span>
-																</p>
-																<div class="itemComment">#주문 폭주 상품</div>
-															</a>
-														</div>
-													</div>
-												</div>
-												<div class="swiper-slide">
-													<div class="item_prod">
-														<div class="item_state">
-															<button type="button" class="itemLike">관심상품 추가</button>
-															<a href="#none" class="itemLink">
-																<div class="itemPic">
-																	<img class="vLHTC pd_img" src="/images/mo/br_main03.png" alt="">
-																</div>
-																<p class="itemBrand">BRAND NAME</p>
-																<div class=" itemName">남성 헤링본 기모 팬츠 헤링본 기모 팬츠</div>
-																<p class="itemPrice">
-																	<span class="itemPrice_original">89,000</span>
-																	80,100
-																	<span class="itemPercent">10%</span>
-																</p>
-																<div class="itemcolorchip">
-																	<span class="chip_color35" value="ABM">BEIGE</span>
-																	<span class="chip_color54" value="BDS">BLACK</span>
-																	<span class="chip_color40" value="YBR">WHITE</span>
-																</div>
-																<p class="itemBadge">
-																	<span class="badge13">베스트 </span>
-																</p>
-																<div class="itemComment">#주문 폭주 상품</div>
-															</a>
-														</div>
-													</div>
-												</div>
-												<div class="swiper-slide">
-													<div class="item_prod">
-														<div class="item_state">
-															<button type="button" class="itemLike">관심상품 추가</button>
-															<a href="#none" class="itemLink">
-																<div class="itemPic">
-																	<img class="vLHTC pd_img" src="/images/mo/br_main03.png" alt="">
-																</div>
-																<p class="itemBrand">BRAND NAME</p>
-																<div class=" itemName">남성 헤링본 기모 팬츠 헤링본 기모 팬츠</div>
-																<p class="itemPrice">
-																	<span class="itemPrice_original">89,000</span>
-																	80,100
-																	<span class="itemPercent">10%</span>
-																</p>
-																<div class="itemcolorchip">
-																	<span class="chip_color35" value="ABM">BEIGE</span>
-																	<span class="chip_color54" value="BDS">BLACK</span>
-																	<span class="chip_color40" value="YBR">WHITE</span>
-																</div>
-																<p class="itemBadge">
-																	<span class="badge13">베스트 </span>
-																</p>
-																<div class="itemComment">#주문 폭주 상품</div>
-															</a>
-														</div>
-													</div>
-												</div>
-												<div class="swiper-slide">
-													<div class="item_prod">
-														<div class="item_state">
-															<button type="button" class="itemLike">관심상품 추가</button>
-															<a href="#none" class="itemLink">
-																<div class="itemPic">
-																	<img class="vLHTC pd_img" src="/images/mo/br_main03.png" alt="">
-																</div>
-																<p class="itemBrand">BRAND NAME</p>
-																<div class=" itemName">남성 헤링본 기모 팬츠 헤링본 기모 팬츠</div>
-																<p class="itemPrice">
-																	<span class="itemPrice_original">89,000</span>
-																	80,100
-																	<span class="itemPercent">10%</span>
-																</p>
-																<div class="itemcolorchip">
-																	<span class="chip_color35" value="ABM">BEIGE</span>
-																	<span class="chip_color54" value="BDS">BLACK</span>
-																	<span class="chip_color40" value="YBR">WHITE</span>
-																</div>
-																<p class="itemBadge">
-																	<span class="badge13">베스트 </span>
-																</p>
-																<div class="itemComment">#주문 폭주 상품</div>
-															</a>
-														</div>
-													</div>
-												</div>
+											<div class="swiper-wrapper" id="recommendItemArea">
 												<div class="swiper-slide">
 													<div class="item_prod">
 														<div class="item_state">
@@ -724,6 +612,7 @@
 		$('#endPage').hide();
 		$('#noDataFilter').hide();
 		$('#goodsNodata').hide();
+		$('#recomArea').hide();
 		$('#goodsKeyword').text('');
 		totalCnt = result.paging.totalCount;
 		$("#totCntId").text(totalCnt.addComma());
@@ -774,14 +663,15 @@
 				$('#goodsNodata').show();
 				$('#goodsKeyword').text([[${params.keyword}]]);
 				$('#dataArea').hide();
+				$('#recomArea').show();
+				// 검색어 연관 상품 추천
+				fnRecommendItemList([[${params.keyword}]]);
 			}
 			gagaInfiniteScroll.draw('not');
 		}
 
 	}
 
-
-
 	// 이벤트 리스트
 	let fnGetSearchEventList = function (){
 		gagajf.ajaxFormSubmit("/display/search/event/list", document.searchGoodsForm, fnReturnEventList);
@@ -1131,6 +1021,56 @@
 		return tag;
 	}
 
+	// 검색어 연관 상품 추천
+	var fnRecommendItemList = function (keyword){
+		if(gagajf.isNull(keyword)){
+			keyword = "";
+		}
+		var data = {keyword : keyword};
+		var html = '';
+
+		$.getJSON('/display/recommend/item/list', data, function (result){
+			$("#recommendItemArea").html('');
+			if(result.length > 0){
+				$.each(result, function (idx, item){
+					html += '<div class="swiper-slide">\n';
+					html += '	<div class="item_prod">\n';
+					html += '		<div class="item_state">\n';
+					html += '			<button type="button" class="itemLike">관심상품 추가</button>\n';
+					html += '			<a href="'+item.product.itemUrl+'" class="itemLink">\n';
+					html += '				<div class="itemPic">\n';
+					html += '					<img class="vLHTC pd_img" src="'+item.product.itemImage+'" alt="">\n';
+					html += '				</div>\n';
+					html += '				<p class="itemBrand">'+item.product.brandName+'</p>\n';
+					html += '				<div class=" itemName">'+item.product.itemName+'</div>\n';
+					html += '				<p class="itemPrice">\n';
+					if(item.product.salePrice < item.product.originalPrice) {
+						html += '			<span class="itemPrice_original">'+ item.product.originalPrice.addComma() +'</span>\n';
+					}
+					html += item.product.salePrice.addComma() ;
+					if(item.product.salePrice < item.product.originalPrice) {
+						html += '			<span class="itemPercent">' + Math.round((item.product.originalPrice - item.product.salePrice) / (item.product.originalPrice * 1.0) * 100) + '%</span>\n';
+					}
+					html += '				</p>\n';
+					html += '			</a>\n';
+					html += '		</div>\n';
+					html += '	</div>\n';
+					html += '</div>\n';
+				});
+			}
+			$("#recommendItemArea").append(html);
+
+			var swiperschProduct2 = new Swiper('.swiper-container.sch_product', {
+				slidesPerView: 2.2,
+				spaceBetween: 7,
+				autoplay: {
+					delay: 4000,
+				},
+				freeMode: true,
+			});
+		});
+	}
+
 	//TabWrap, TabIndex
 	$(document).on('click', '.tabIndex li a', function() {
 		var $this = $(this),

+ 142 - 212
src/main/webapp/WEB-INF/views/mob/display/SearchLayerMob.html

@@ -172,106 +172,24 @@
 						<div class="store_product">
 							<div class="allresult-tit">
 								<h3>지금 많이 보고 있어요</h3>
-								<button class="btn_refresh"><span>17:30</span> 기준</button>
+								<button type="button" class="btn_refresh" onclick="fnRealtimeGoodsList();"><span th:text="${#calendars.format(#calendars.createNow(), 'HH:mm')}">17:30</span> 기준</button>
 							</div>
 							<div class="swiper-container sch_product">
-								<div class="swiper-wrapper">
-									<div class="swiper-slide">
-										<div class="item_prod">
-											<button type="button" class="itemLike">관심상품 추가</button>
-											<a href="#">
-												<img src="/images/mo/br_main03.png" alt="">
-												<div class="s-text">
-													<div class="itemName">여성 오버핏 투마일 웨어 아노락 에코</div>
-													<p class="itemTag">508명 보는중</p>
-												</div>
-											</a>
-										</div>
-									</div>
-									<div class="swiper-slide">
-										<div class="item_prod">
-											<button type="button" class="itemLike">관심상품 추가</button>
-											<a href="#">
-												<img src="/images/mo/br_main03.png" alt="">
-												<div class="s-text">
-													<div class="itemName">여성 오버핏 투마일 웨어 아노락 에코</div>
-													<p class="itemTag">508명 보는중</p>
-												</div>
-											</a>
-										</div>
-									</div>
-									<div class="swiper-slide">
-										<div class="item_prod">
-											<button type="button" class="itemLike">관심상품 추가</button>
-											<a href="#">
-												<img src="/images/mo/br_main03.png" alt="">
-												<div class="s-text">
-													<div class="itemName">여성 오버핏 투마일 웨어 아노락 에코</div>
-													<p class="itemTag">508명 보는중</p>
-												</div>
-											</a>
-										</div>
-									</div>
-									<div class="swiper-slide">
-										<div class="item_prod">
-											<button type="button" class="itemLike">관심상품 추가</button>
-											<a href="#">
-												<img src="/images/mo/br_main03.png" alt="">
-												<div class="s-text">
-													<div class="itemName">여성 오버핏 투마일 웨어 아노락 에코</div>
-													<p class="itemTag">508명 보는중</p>
-												</div>
-											</a>
-										</div>
-									</div>
-									<div class="swiper-slide">
-										<div class="item_prod">
-											<button type="button" class="itemLike">관심상품 추가</button>
-											<a href="#">
-												<img src="/images/mo/br_main03.png" alt="">
-												<div class="s-text">
-													<div class="itemName">여성 오버핏 투마일 웨어 아노락 에코</div>
-													<p class="itemTag">508명 보는중</p>
-												</div>
-											</a>
-										</div>
-									</div>
-									<div class="swiper-slide">
-										<div class="item_prod">
-											<button type="button" class="itemLike">관심상품 추가</button>
-											<a href="#">
-												<img src="/images/mo/br_main03.png" alt="">
-												<div class="s-text">
-													<div class="itemName">여성 오버핏 투마일 웨어 아노락 에코</div>
-													<p class="itemTag">508명 보는중</p>
-												</div>
-											</a>
-										</div>
-									</div>
-									<div class="swiper-slide">
-										<div class="item_prod">
-											<button type="button" class="itemLike">관심상품 추가</button>
-											<a href="#">
-												<img src="/images/mo/br_main03.png" alt="">
-												<div class="s-text">
-													<div class="itemName">여성 오버핏 투마일 웨어 아노락 에코</div>
-													<p class="itemTag">508명 보는중</p>
-												</div>
-											</a>
-										</div>
-									</div>
-									<div class="swiper-slide">
-										<div class="item_prod">
-											<button type="button" class="itemLike">관심상품 추가</button>
-											<a href="#">
-												<img src="/images/mo/br_main03.png" alt="">
-												<div class="s-text">
-													<div class="itemName">여성 오버핏 투마일 웨어 아노락 에코</div>
-													<p class="itemTag">508명 보는중</p>
-												</div>
-											</a>
+								<div class="swiper-wrapper" id="itemViewArea">
+									<th:block th:each="item, status : ${realtimeGoodsList}">
+										<div class="swiper-slide">
+											<div class="item_prod">
+												<button type="button" class="itemLike" th:classappend="${item.wishCnt > 0}? 'likeit' : ''" onclick="cfnMoPutWishList(this);" th:attr="goodsCd=${item.itemId}">관심상품 추가</button>
+												<a th:href="${item.itemUrl}">
+													<img th:src="${item.imageUrl}" alt="">
+													<div class="s-text">
+														<div class="itemName" th:text="${item.itemName}"></div>
+														<p class="itemTag" th:text="${item.count < 10 ? '10명 미만' : item.count + '명 보는중'}">508명 보는중</p>
+													</div>
+												</a>
+											</div>
 										</div>
-									</div>
+									</th:block>
 								</div>
 							</div>
 						</div>
@@ -425,120 +343,35 @@
 						<div class="store_product">
 							<div class="swiper-container recommand_slide">
 								<h3>이런 상품은 어떤가요?</h3>
-								<div class="swiper-wrapper">
-									<div class="swiper-slide">
-										<div class="item_prod">
-											<div class="item_state">
-												<button type="button" class="itemLike">관심상품 추가</button>
-												<a href="#none" class="itemLink">
-													<div class="itemPic">
-														<img class="vLHTC pd_img" src="/images/mo/thumb/br_main03.png" alt="">
-													</div>
-													<p class="itemBrand">BRAND NAME</p>
-													<div class="itemName">남성 헤링본 기모 팬츠 헤링본 기모 팬츠</div>
-													<p class="itemPrice">
-														<span class="itemPrice_original">89,000</span>
-														80,100
-														<span class="itemPercent">10%</span>
-													</p>
-													<div class="itemcolorchip">
-														<span class="chip_color35" value="ABM">BEIGE</span>
-														<span class="chip_color54" value="BDS">BLACK</span>
-														<span class="chip_color40" value="YBR">WHITE</span>
-													</div>
-													<p class="itemBadge">
-														<span class="badge13">베스트 </span>
-													</p>
-													<div class="itemComment">#주문 폭주 상품</div>
-												</a>
-											</div>
-										</div>
-
-									</div>
-									<div class="swiper-slide">
-										<div class="item_prod">
-											<div class="item_state">
-												<button type="button" class="itemLike">관심상품 추가</button>
-												<a href="#none" class="itemLink">
-													<div class="itemPic">
-														<img class="vLHTC pd_img" src="/images/mo/thumb/br_main03.png" alt="">
-													</div>
-													<p class="itemBrand">BRAND NAME</p>
-													<div class="itemName">남성 헤링본 기모 팬츠 헤링본 기모 팬츠</div>
-													<p class="itemPrice">
-														<span class="itemPrice_original">89,000</span>
-														80,100
-														<span class="itemPercent">10%</span>
-													</p>
-													<div class="itemcolorchip">
-														<span class="chip_color35" value="ABM">BEIGE</span>
-														<span class="chip_color54" value="BDS">BLACK</span>
-														<span class="chip_color40" value="YBR">WHITE</span>
-													</div>
-													<p class="itemBadge">
-														<span class="badge13">베스트 </span>
-													</p>
-													<div class="itemComment">#주문 폭주 상품</div>
-												</a>
-											</div>
-										</div>
-									</div>
-									<div class="swiper-slide">
-										<div class="item_prod">
-											<div class="item_state">
-												<button type="button" class="itemLike">관심상품 추가</button>
-												<a href="#none" class="itemLink">
-													<div class="itemPic">
-														<img class="vLHTC pd_img" src="/images/mo/thumb/br_main03.png" alt="">
-													</div>
-													<p class="itemBrand">BRAND NAME</p>
-													<div class="itemName">남성 헤링본 기모 팬츠 헤링본 기모 팬츠</div>
-													<p class="itemPrice">
-														<span class="itemPrice_original">89,000</span>
-														80,100
-														<span class="itemPercent">10%</span>
-													</p>
-													<div class="itemcolorchip">
-														<span class="chip_color35" value="ABM">BEIGE</span>
-														<span class="chip_color54" value="BDS">BLACK</span>
-														<span class="chip_color40" value="YBR">WHITE</span>
-													</div>
-													<p class="itemBadge">
-														<span class="badge13">베스트 </span>
-													</p>
-													<div class="itemComment">#주문 폭주 상품</div>
-												</a>
-											</div>
-										</div>
-									</div>
-									<div class="swiper-slide">
-										<div class="item_prod">
-											<div class="item_state">
-												<button type="button" class="itemLike">관심상품 추가</button>
-												<a href="#none" class="itemLink">
-													<div class="itemPic">
-														<img class="vLHTC pd_img" src="/images/mo/thumb/br_main03.png" alt="">
-													</div>
-													<p class="itemBrand">BRAND NAME</p>
-													<div class="itemName">남성 헤링본 기모 팬츠 헤링본 기모 팬츠</div>
-													<p class="itemPrice">
-														<span class="itemPrice_original">89,000</span>
-														80,100
-														<span class="itemPercent">10%</span>
-													</p>
-													<div class="itemcolorchip">
-														<span class="chip_color35" value="ABM">BEIGE</span>
-														<span class="chip_color54" value="BDS">BLACK</span>
-														<span class="chip_color40" value="YBR">WHITE</span>
-													</div>
-													<p class="itemBadge">
-														<span class="badge13">베스트 </span>
-													</p>
-													<div class="itemComment">#주문 폭주 상품</div>
-												</a>
-											</div>
-										</div>
-									</div>
+								<div class="swiper-wrapper" id="recommendItemArea">
+<!--									<div class="swiper-slide">-->
+<!--										<div class="item_prod">-->
+<!--											<div class="item_state">-->
+<!--												<button type="button" class="itemLike">관심상품 추가</button>-->
+<!--												<a href="#none" class="itemLink">-->
+<!--													<div class="itemPic">-->
+<!--														<img class="vLHTC pd_img" src="/images/mo/thumb/br_main03.png" alt="">-->
+<!--													</div>-->
+<!--													<p class="itemBrand">BRAND NAME</p>-->
+<!--													<div class="itemName">남성 헤링본 기모 팬츠 헤링본 기모 팬츠</div>-->
+<!--													<p class="itemPrice">-->
+<!--														<span class="itemPrice_original">89,000</span>-->
+<!--														80,100-->
+<!--														<span class="itemPercent">10%</span>-->
+<!--													</p>-->
+<!--													<div class="itemcolorchip">-->
+<!--														<span class="chip_color35" value="ABM">BEIGE</span>-->
+<!--														<span class="chip_color54" value="BDS">BLACK</span>-->
+<!--														<span class="chip_color40" value="YBR">WHITE</span>-->
+<!--													</div>-->
+<!--													<p class="itemBadge">-->
+<!--														<span class="badge13">베스트 </span>-->
+<!--													</p>-->
+<!--													<div class="itemComment">#주문 폭주 상품</div>-->
+<!--												</a>-->
+<!--											</div>-->
+<!--										</div>-->
+<!--									</div>-->
 								</div>
 							</div>
 						</div>
@@ -631,6 +464,8 @@
 			$("#noDataArea").find('#noDataKeyword').text($("#searchMainForm").find('input[name=keyword]').val());
 			$("#noDataArea").show();
 			$("#recommandArea").show();
+			// 검색어 연관 상품 추천
+			fnRecommendItemList($("#searchMainForm").find('input[name=keyword]').val());
 		}else{
 			// 자동완성 키워드
 			if(result.autoKeywords != null && result.autoKeywords.length > 0){
@@ -639,7 +474,7 @@
 				tag += '<ul>\n';
 				$.each(result.autoKeywords, function (idx,item){
 					tag += '<li>\n';
-					tag += '	<a href="javascript:void(0);">\n';
+					tag += '	<a href="javascript:void(0);" onclick="fnSearchKeyword(\''+result.autoKeywords[idx]+'\');">\n';
 					tag += '		<p><span>'+result.autoKeywords[idx]+'</span></p>\n';
 					tag += '	</a>\n';
 					tag += '</li>\n';
@@ -784,6 +619,101 @@
 		}
 	});
 
+	// 실시간 상품 새로고침
+	var fnRealtimeGoodsList = function (){
+		$("#itemViewArea").html('');
+		var html = '';
+
+		$.getJSON('/display/realtime/goods/list', function (result){
+			console.log(result);
+			if(result.length > 0){
+				$.each(result, function (idx, item){
+					html += '<div class="swiper-slide">\n';
+					html += '	<div class="item_prod">\n';
+					html += '		<button type="button" class="itemLike';
+					if(item.wishCnt > 0){
+						html += ' likeit';
+					}
+					html += '" onclick="cfnMoPutWishList(this);" goodsCd="'+item.itemId+'">관심상품 추가</button>\n';
+					html += '		<a href="'+item.itemUrl+'">\n';
+					html += '			<img src="'+item.imageUrl+'" alt="">\n';
+					html += '				<div class="s-text">\n';
+					html += '					<div class="itemName">'+item.itemName+'</div>\n';
+					if(item.count < 10){
+						html += '			<p class="itemTag">10명 미만</p>\n';
+					}else{
+						html += '			<p class="itemTag">'+item.count.addComma()+'명 보는중</p>\n';
+					}
+					html += '				</div>\n';
+					html += '		</a>\n';
+					html += '	</div>\n';
+					html += '</div>\n';
+				});
+			}
+			$("#itemViewArea").append(html);
+
+			var swiperschProduct2 = new Swiper('.swiper-container.sch_product', {
+				slidesPerView: 3,
+				spaceBetween: 7,
+				autoplay: {
+					delay: 4000,
+				},
+				freeMode: true,
+				//centeredSlides: true,
+			});
+		});
+	}
+
+	// 검색어 연관 상품 추천
+	var fnRecommendItemList = function (keyword){
+		if(gagajf.isNull(keyword)){
+			keyword = "";
+		}
+		var data = {keyword : keyword};
+		var html = '';
+
+		$.getJSON('/display/recommend/item/list', data, function (result){
+			$("#recommendItemArea").html('');
+			if(result.length > 0){
+				$.each(result, function (idx, item){
+					html += '<div class="swiper-slide">\n';
+					html += '	<div class="item_prod">\n';
+					html += '		<div class="item_state">\n';
+					html += '			<button type="button" class="itemLike">관심상품 추가</button>\n';
+					html += '			<a href="'+item.product.itemUrl+'" class="itemLink">\n';
+					html += '				<div class="itemPic">\n';
+					html += '					<img class="vLHTC pd_img" src="'+item.product.itemImage+'" alt="">\n';
+					html += '				</div>\n';
+					html += '				<p class="itemBrand">'+item.product.brandName+'</p>\n';
+					html += '				<div class="itemName">'+item.product.itemName+'</div>\n';
+					html += '				<p class="itemPrice">\n';
+					if(item.product.salePrice < item.product.originalPrice) {
+						html += '			<span class="itemPrice_original">'+ item.product.originalPrice.addComma() +'</span>\n';
+					}
+					html += item.product.salePrice.addComma() ;
+					if(item.product.salePrice < item.product.originalPrice) {
+						html += '			<span class="itemPercent">' + Math.round((item.product.originalPrice - item.product.salePrice) / (item.product.originalPrice * 1.0) * 100) + '%</span>\n';
+					}
+					html += '				</p>\n';
+					html += '			</a>\n';
+					html += '		</div>\n';
+					html += '	</div>\n';
+					html += '</div>\n';
+				});
+			}
+			$("#recommendItemArea").append(html);
+
+			var swiperschProduct3 = new Swiper('.swiper-container.recommand_slide', {
+				slidesPerView: 2.2,
+				spaceBetween: 8,
+				autoplay: {
+					delay: 4000,
+				},
+				freeMode: true,
+				//centeredSlides: true,
+			});
+		});
+	}
 	/*]]>*/
 </script>
 

+ 100 - 98
src/main/webapp/WEB-INF/views/mob/goods/GoodsDealDetailFormMob.html

@@ -190,112 +190,114 @@
 							</div>
 						</div>
 						<div style="margin-top:10px;">
-							<th:block th:with="buttonKey=${@environment.getProperty('naverPay.button.key')}">
-								<script type="text/javascript" th:src="${@environment.getProperty('naverPay.button.mobile.js.url')}" src="" charset="UTF-8"></script>
-
-								<script th:inline="javascript">
-									if(!wcs_add) var wcs_add = {};
-									wcs_add["wa"] = "${@environment.getProperty('naverPay.common.certification.key')}";
-									wcs.inflow("style24.com");
-									wcs_do();
-								</script>
-
-								<script type="text/javascript" >
-									/*버튼설정*/
-									naver.NaverPayButton.apply({
-										BUTTON_KEY              : "[[${buttonKey}]]",       // 네이버페이에서 제공받은 버튼 인증 키 입력
-										TYPE                    : "MA",                      // 버튼 모음 종류 설정
-										COLOR                   : 1,                        // 버튼 모음의 색 설정
-										COUNT                   : 1,                        // 버튼 개수 설정. 구매하기 버튼만 있으면(장바구니 페이지) 1, 찜하기 버튼도 있으면(상품 상세 페이지) 2를 입력.
-										ENABLE                  : "Y",                      // 품절 등의 이유로 버튼 모음을 비활성화할 때에는 "N" 입력
-										BUY_BUTTON_HANDLER      : buy_nc,                   // 구매하기 버튼 이벤트 Handler 함수 등록, 품절인 경우 not_buy_nc 함수 사용
-										"":""
-									});
-
-									/*네이버구매하기*/
-									function buy_nc(url) {
-										// 자사 일반 상품 정보
-										let compsList = [];
-
-										$("#cartForm .result_item input[name=cea]").each(function() {
-											let dealGoodsCd = "[[${goodsInfo.goodsCd}]]";
-											let goodsType = "[[${goodsInfo.goodsType}]]";
-											let goodsCd = $(this).parent().find("input[name=coption]").attr("goodscd");
-											let optCd = $(this).attr("optcd");
-											let goodsQty = $(this).val();
-
-											if (!goodsCd) {
-												mcxDialog.alert("상품정보가 존재하지 않습니다. 새로고침 후 다시 시도해주세요.");
-												return false;
-											}
+							<th:block th:if="${sessionInfo != null and (sessionInfo.custId == 'xodud1202' or sessionInfo.custId == 'jsh77b' or sessionInfo.custId == 'card007')}">
+								<th:block th:with="buttonKey=${@environment.getProperty('naverPay.button.key')}">
+									<script type="text/javascript" th:src="${@environment.getProperty('naverPay.button.mobile.js.url')}" src="" charset="UTF-8"></script>
+
+									<script th:inline="javascript">
+										if(!wcs_add) var wcs_add = {};
+										wcs_add["wa"] = "${@environment.getProperty('naverPay.common.certification.key')}";
+										wcs.inflow("style24.com");
+										wcs_do();
+									</script>
 
-											if (!goodsQty || goodsQty < 1) {
-												mcxDialog.alert("구매 수량을 확인해주세요.");      /*수량*/
-												return false;
-											}
+									<script type="text/javascript" >
+										/*버튼설정*/
+										naver.NaverPayButton.apply({
+											BUTTON_KEY              : "[[${buttonKey}]]",       // 네이버페이에서 제공받은 버튼 인증 키 입력
+											TYPE                    : "MA",                      // 버튼 모음 종류 설정
+											COLOR                   : 1,                        // 버튼 모음의 색 설정
+											COUNT                   : 1,                        // 버튼 개수 설정. 구매하기 버튼만 있으면(장바구니 페이지) 1, 찜하기 버튼도 있으면(상품 상세 페이지) 2를 입력.
+											ENABLE                  : "Y",                      // 품절 등의 이유로 버튼 모음을 비활성화할 때에는 "N" 입력
+											BUY_BUTTON_HANDLER      : buy_nc,                   // 구매하기 버튼 이벤트 Handler 함수 등록, 품절인 경우 not_buy_nc 함수 사용
+											"":""
+										});
 
-											if (!optCd) {
-												mcxDialog.alert("상품 옵션을 확인 할 수 없습니다. 새로고침 후 다시 시도해주세요.");   /*옵션*/
-												return false;
-											}
+										/*네이버구매하기*/
+										function buy_nc(url) {
+											// 자사 일반 상품 정보
+											let compsList = [];
+
+											$("#cartForm .result_item input[name=cea]").each(function() {
+												let dealGoodsCd = "[[${goodsInfo.goodsCd}]]";
+												let goodsType = "[[${goodsInfo.goodsType}]]";
+												let goodsCd = $(this).parent().find("input[name=coption]").attr("goodscd");
+												let optCd = $(this).attr("optcd");
+												let goodsQty = $(this).val();
+
+												if (!goodsCd) {
+													mcxDialog.alert("상품정보가 존재하지 않습니다. 새로고침 후 다시 시도해주세요.");
+													return false;
+												}
 
-											var obj = new Object();
-											obj.cartGb = "N";
-											obj.goodsType = goodsType;
-											obj.goodsCd = goodsCd;
-											obj.optCd = optCd;
-											obj.goodsQty = goodsQty;
-											obj.dealGoodsCd = $("#cartForm  input[name=goodsCd]").val();
-											obj.afLinkCd =$("#cartForm  input[name=afLinkCd]").val();
-											obj.ithrCd =$("#cartForm  input[name=ithrCd]").val();
-											obj.contentsLoc =$("#cartForm  input[name=contentsLoc]").val();
-											obj.planDtlSq = $("#cartForm  input[name=planDtlSq]").val();
-											compsList.push(obj);
-										});
+												if (!goodsQty || goodsQty < 1) {
+													mcxDialog.alert("구매 수량을 확인해주세요.");      /*수량*/
+													return false;
+												}
 
-										// 장바구니담기
-										cfnAddCart(compsList);
+												if (!optCd) {
+													mcxDialog.alert("상품 옵션을 확인 할 수 없습니다. 새로고침 후 다시 시도해주세요.");   /*옵션*/
+													return false;
+												}
 
-										return false;
-									}
+												var obj = new Object();
+												obj.cartGb = "N";
+												obj.goodsType = goodsType;
+												obj.goodsCd = goodsCd;
+												obj.optCd = optCd;
+												obj.goodsQty = goodsQty;
+												obj.dealGoodsCd = $("#cartForm  input[name=goodsCd]").val();
+												obj.afLinkCd =$("#cartForm  input[name=afLinkCd]").val();
+												obj.ithrCd =$("#cartForm  input[name=ithrCd]").val();
+												obj.contentsLoc =$("#cartForm  input[name=contentsLoc]").val();
+												obj.planDtlSq = $("#cartForm  input[name=planDtlSq]").val();
+												compsList.push(obj);
+											});
+
+											// 장바구니담기
+											cfnAddCart(compsList);
+
+											return false;
+										}
 
-									function buy_nc_req(cartSqArr) {
-										let data = {  cartSqArr : cartSqArr
-											, backUrl : location.href
-											, goodsUrl : _PAGE_GOODS_DETAIL
-										};
-										let jsonData = JSON.stringify(data);
-
-										$.ajax( {
-											type		: "POST",
-											url 		: "/pg/nPayReq",
-											dataType 	: 'json',
-											data		: jsonData,
-											beforeSend : function(xhr, settings) {
-												xhr.setRequestHeader("AJAX"			, "true");
-												xhr.setRequestHeader('Accept'		, 'application/json');
-												xhr.setRequestHeader('Content-Type'	, 'application/json');
-											},
-											error: function(xhr, status, error) {
-												mcxDialog.alert(status + '; ' + error);
-											},
-											success : function(result) {
-												if (result.state == "sucess") {
-													document.nPayForm.action = result.npayOrderUrl + "/" + result.orderKey + "/" + result.resultNo;
-													document.nPayForm.submit();
-												} else {
-													mcxDialog.alert(result.message);
+										function buy_nc_req(cartSqArr) {
+											let data = {  cartSqArr : cartSqArr
+												, backUrl : location.href
+												, goodsUrl : _PAGE_GOODS_DETAIL
+											};
+											let jsonData = JSON.stringify(data);
+
+											$.ajax( {
+												type		: "POST",
+												url 		: "/pg/nPayReq",
+												dataType 	: 'json',
+												data		: jsonData,
+												beforeSend : function(xhr, settings) {
+													xhr.setRequestHeader("AJAX"			, "true");
+													xhr.setRequestHeader('Accept'		, 'application/json');
+													xhr.setRequestHeader('Content-Type'	, 'application/json');
+												},
+												error: function(xhr, status, error) {
+													mcxDialog.alert(status + '; ' + error);
+												},
+												success : function(result) {
+													if (result.state == "sucess") {
+														document.nPayForm.action = result.npayOrderUrl + "/" + result.orderKey + "/" + result.resultNo;
+														document.nPayForm.submit();
+													} else {
+														mcxDialog.alert(result.message);
+													}
 												}
-											}
-										});
-									}
+											});
+										}
 
-									<!-- 구매불가 -->
-									function not_buy_nc() {
-										mcxDialog.alert("죄송합니다. 네이버페이로 구매가 불가한 상품입니다.");
-										return false;
-									}
-								</script>
+										<!-- 구매불가 -->
+										function not_buy_nc() {
+											mcxDialog.alert("죄송합니다. 네이버페이로 구매가 불가한 상품입니다.");
+											return false;
+										}
+									</script>
+								</th:block>
 							</th:block>
 						</div>
 					</div>

+ 146 - 145
src/main/webapp/WEB-INF/views/mob/goods/GoodsDetailFormMob.html

@@ -1065,91 +1065,53 @@
 						</div>
 						</th:block>
 					</div>
-
 					<div style="margin-top:10px;">
-						<th:block th:with="buttonKey=${@environment.getProperty('naverPay.button.key')}">
-							<script type="text/javascript" th:src="${@environment.getProperty('naverPay.button.mobile.js.url')}" src="" charset="UTF-8"></script>
-
-							<script th:inline="javascript">
-								if(!wcs_add) var wcs_add = {};
-								wcs_add["wa"] = "${@environment.getProperty('naverPay.common.certification.key')}";
-								wcs.inflow("style24.com");
-								wcs_do();
-							</script>
-
-							<script type="text/javascript" >
-								/*버튼설정*/
-								naver.NaverPayButton.apply({
-									BUTTON_KEY              : "[[${buttonKey}]]",       // 네이버페이에서 제공받은 버튼 인증 키 입력
-									TYPE                    : "MA",                      // 버튼 모음 종류 설정
-									COLOR                   : 1,                        // 버튼 모음의 색 설정
-									COUNT                   : 1,                        // 버튼 개수 설정. 구매하기 버튼만 있으면(장바구니 페이지) 1, 찜하기 버튼도 있으면(상품 상세 페이지) 2를 입력.
-									ENABLE                  : "Y",                      // 품절 등의 이유로 버튼 모음을 비활성화할 때에는 "N" 입력
-									BUY_BUTTON_HANDLER      : buy_nc,                   // 구매하기 버튼 이벤트 Handler 함수 등록, 품절인 경우 not_buy_nc 함수 사용
-									"":""
-								});
-
-								/*네이버구매하기*/
-								function buy_nc(url) {
-									let goodsType = "[[${goodsInfo.goodsType}]]";
-									let selfGoodsYn = "[[${goodsInfo.selfGoodsYn}]]";
-
-									if(goodsType == "G056_N") {
-										if(selfGoodsYn == "Y") {
-											// 자사 일반 상품 정보
-											let goodsCd = "[[${goodsInfo.goodsCd}]]";
-											let optCd = $(".opt_size .form_field input[type=radio]:checked").attr("optcd");
-											let goodsQty = $(".opt_count .number_count input[name=cea]").val();
-
-											if (!goodsQty || goodsQty < 1) {
-												mcxDialog.alert("구매 수량을 확인해주세요.");      /*수량*/
-												return false;
-											}
-
-											if (!optCd) {
-												mcxDialog.alert("상품 옵션을 확인 할 수 없습니다. 새로고침 후 다시 시도해주세요.");   /*옵션*/
-												return false;
-											}
-
-											let compsList = [];
-											let obj = new Object();
-											obj.goodsCd = goodsCd;
-											obj.optCd = optCd;
-											obj.goodsQty = goodsQty;
-											obj.goodsType = goodsType;
-											obj.cartGb = "N";
-											obj.afLinkCd =$("#cartForm  input[name=afLinkCd]").val();
-											obj.ithrCd =$("#cartForm  input[name=ithrCd]").val();
-											obj.contentsLoc =$("#cartForm  input[name=contentsLoc]").val();
-											obj.planDtlSq = $("#cartForm  input[name=planDtlSq]").val();
-											compsList.push(obj);
+						<th:block th:if="${sessionInfo != null and (sessionInfo.custId == 'xodud1202' or sessionInfo.custId == 'jsh77b' or sessionInfo.custId == 'card007')}">
+							<th:block th:with="buttonKey=${@environment.getProperty('naverPay.button.key')}">
+								<script type="text/javascript" th:src="${@environment.getProperty('naverPay.button.mobile.js.url')}" src="" charset="UTF-8"></script>
+
+								<script th:inline="javascript">
+									if(!wcs_add) var wcs_add = {};
+									wcs_add["wa"] = "${@environment.getProperty('naverPay.common.certification.key')}";
+									wcs.inflow("style24.com");
+									wcs_do();
+								</script>
 
-											// 장바구니담기
-											cfnAddCart(compsList);
-										} else {
-											// 입점 일반 상품 정보
-											let goodsCd = "[[${goodsInfo.goodsCd}]]";
-											let compsList = [];
+								<script type="text/javascript" >
+									/*버튼설정*/
+									naver.NaverPayButton.apply({
+										BUTTON_KEY              : "[[${buttonKey}]]",       // 네이버페이에서 제공받은 버튼 인증 키 입력
+										TYPE                    : "MA",                      // 버튼 모음 종류 설정
+										COLOR                   : 1,                        // 버튼 모음의 색 설정
+										COUNT                   : 1,                        // 버튼 개수 설정. 구매하기 버튼만 있으면(장바구니 페이지) 1, 찜하기 버튼도 있으면(상품 상세 페이지) 2를 입력.
+										ENABLE                  : "Y",                      // 품절 등의 이유로 버튼 모음을 비활성화할 때에는 "N" 입력
+										BUY_BUTTON_HANDLER      : buy_nc,                   // 구매하기 버튼 이벤트 Handler 함수 등록, 품절인 경우 not_buy_nc 함수 사용
+										"":""
+									});
 
-											if (!goodsCd) {
-												mcxDialog.alert("상품정보가 존재하지 않습니다. 새로고침 후 다시 시도해주세요.");
-												return false;
-											}
+									/*네이버구매하기*/
+									function buy_nc(url) {
+										let goodsType = "[[${goodsInfo.goodsType}]]";
+										let selfGoodsYn = "[[${goodsInfo.selfGoodsYn}]]";
 
-											$(".opt_result .number_count input[name=cea]").each(function() {
-												let optCd = $(this).attr("optcd");
-												let goodsQty = $(this).val();
+										if(goodsType == "G056_N") {
+											if(selfGoodsYn == "Y") {
+												// 자사 일반 상품 정보
+												let goodsCd = "[[${goodsInfo.goodsCd}]]";
+												let optCd = $(".opt_size .form_field input[type=radio]:checked").attr("optcd");
+												let goodsQty = $(".opt_count .number_count input[name=cea]").val();
 
-												if (!optCd) {
-													mcxDialog.alert("상품 옵션을 확인 할 수 없습니다. 새로고침 후 다시 시도해주세요.");   /*옵션*/
+												if (!goodsQty || goodsQty < 1) {
+													mcxDialog.alert("구매 수량을 확인해주세요.");      /*수량*/
 													return false;
 												}
 
-												if (!goodsQty || goodsQty < 1) {
-													mcxDialog.alert("구매 수량을 확인해주세요.");      /*수량*/
+												if (!optCd) {
+													mcxDialog.alert("상품 옵션을 확인 할 수 없습니다. 새로고침 후 다시 시도해주세요.");   /*옵션*/
 													return false;
 												}
 
+												let compsList = [];
 												let obj = new Object();
 												obj.goodsCd = goodsCd;
 												obj.optCd = optCd;
@@ -1161,86 +1123,125 @@
 												obj.contentsLoc =$("#cartForm  input[name=contentsLoc]").val();
 												obj.planDtlSq = $("#cartForm  input[name=planDtlSq]").val();
 												compsList.push(obj);
-											});
 
-											// 장바구니담기
-											cfnAddCart(compsList);
-										}
-									} else {
-										// 세트 상품 정보
-										let goodsCd = "[[${goodsInfo.goodsCd}]]";
-										let cartGoodsList = [];
-
-										$(".option_result .opt_result .result_item").each(function() {
-											let compsList = [];
-											let goodsList = {
-												cartCompsList : new Array()
+												// 장바구니담기
+												cfnAddCart(compsList);
+											} else {
+												// 입점 일반 상품 정보
+												let goodsCd = "[[${goodsInfo.goodsCd}]]";
+												let compsList = [];
+
+												if (!goodsCd) {
+													mcxDialog.alert("상품정보가 존재하지 않습니다. 새로고침 후 다시 시도해주세요.");
+													return false;
+												}
+
+												$(".opt_result .number_count input[name=cea]").each(function() {
+													let optCd = $(this).attr("optcd");
+													let goodsQty = $(this).val();
+
+													if (!optCd) {
+														mcxDialog.alert("상품 옵션을 확인 할 수 없습니다. 새로고침 후 다시 시도해주세요.");   /*옵션*/
+														return false;
+													}
+
+													if (!goodsQty || goodsQty < 1) {
+														mcxDialog.alert("구매 수량을 확인해주세요.");      /*수량*/
+														return false;
+													}
+
+													let obj = new Object();
+													obj.goodsCd = goodsCd;
+													obj.optCd = optCd;
+													obj.goodsQty = goodsQty;
+													obj.goodsType = goodsType;
+													obj.cartGb = "N";
+													obj.afLinkCd =$("#cartForm  input[name=afLinkCd]").val();
+													obj.ithrCd =$("#cartForm  input[name=ithrCd]").val();
+													obj.contentsLoc =$("#cartForm  input[name=contentsLoc]").val();
+													obj.planDtlSq = $("#cartForm  input[name=planDtlSq]").val();
+													compsList.push(obj);
+												});
+
+												// 장바구니담기
+												cfnAddCart(compsList);
 											}
+										} else {
+											// 세트 상품 정보
+											let goodsCd = "[[${goodsInfo.goodsCd}]]";
+											let cartGoodsList = [];
 
-											let goodsQty = $(this).find(".number_count input[name=cea]").val();
-											$(this).find(".bundle").each(function() {
-												var obj = new Object();
-												obj.cartGb = "N";
-												obj.goodsType = goodsType;
-												obj.goodsCd = goodsCd;
-												obj.itemCd = $(this).find("input[name=selOption]").attr("goodscd");
-												obj.optCd = $(this).find("input[name=selOption]").attr("optcd");
-												obj.goodsQty = goodsQty;
-												obj.afLinkCd =$("#cartForm  input[name=afLinkCd]").val();
-												obj.ithrCd =$("#cartForm  input[name=ithrCd]").val();
-												obj.contentsLoc =$("#cartForm  input[name=contentsLoc]").val();
-												obj.planDtlSq = $("#cartForm  input[name=planDtlSq]").val();
-												compsList.push(obj);
+											$(".option_result .opt_result .result_item").each(function() {
+												let compsList = [];
+												let goodsList = {
+													cartCompsList : new Array()
+												}
+
+												let goodsQty = $(this).find(".number_count input[name=cea]").val();
+												$(this).find(".bundle").each(function() {
+													var obj = new Object();
+													obj.cartGb = "N";
+													obj.goodsType = goodsType;
+													obj.goodsCd = goodsCd;
+													obj.itemCd = $(this).find("input[name=selOption]").attr("goodscd");
+													obj.optCd = $(this).find("input[name=selOption]").attr("optcd");
+													obj.goodsQty = goodsQty;
+													obj.afLinkCd =$("#cartForm  input[name=afLinkCd]").val();
+													obj.ithrCd =$("#cartForm  input[name=ithrCd]").val();
+													obj.contentsLoc =$("#cartForm  input[name=contentsLoc]").val();
+													obj.planDtlSq = $("#cartForm  input[name=planDtlSq]").val();
+													compsList.push(obj);
+												});
+
+												goodsList.cartCompsList = compsList;
+												cartGoodsList.push(goodsList);
 											});
 
-											goodsList.cartCompsList = compsList;
-											cartGoodsList.push(goodsList);
-										});
+											// 장바구니담기
+											cfnAddCart(cartGoodsList);
+										}
 
-										// 장바구니담기
-										cfnAddCart(cartGoodsList);
+										return false;
 									}
 
-									return false;
-								}
-
-								function buy_nc_req(cartSqArr) {
-									let data = {  cartSqArr : cartSqArr
-										, backUrl : location.href
-										, goodsUrl : _PAGE_GOODS_DETAIL
-									};
-									let jsonData = JSON.stringify(data);
-
-									$.ajax( {
-										type		: "POST",
-										url 		: "/pg/nPayReq",
-										dataType 	: 'json',
-										data		: jsonData,
-										beforeSend : function(xhr, settings) {
-											xhr.setRequestHeader("AJAX"			, "true");
-											xhr.setRequestHeader('Accept'		, 'application/json');
-											xhr.setRequestHeader('Content-Type'	, 'application/json');
-										},
-										error: function(xhr, status, error) {
-											mcxDialog.alert(status + '; ' + error);
-										},
-										success : function(result) {
-											if (result.state == "sucess") {
-												document.nPayForm.action = result.npayOrderUrl + "/" + result.orderKey + "/" + result.resultNo;
-												document.nPayForm.submit();
-											} else {
-												mcxDialog.alert(result.message);
+									function buy_nc_req(cartSqArr) {
+										let data = {  cartSqArr : cartSqArr
+											, backUrl : location.href
+											, goodsUrl : _PAGE_GOODS_DETAIL
+										};
+										let jsonData = JSON.stringify(data);
+
+										$.ajax( {
+											type		: "POST",
+											url 		: "/pg/nPayReq",
+											dataType 	: 'json',
+											data		: jsonData,
+											beforeSend : function(xhr, settings) {
+												xhr.setRequestHeader("AJAX"			, "true");
+												xhr.setRequestHeader('Accept'		, 'application/json');
+												xhr.setRequestHeader('Content-Type'	, 'application/json');
+											},
+											error: function(xhr, status, error) {
+												mcxDialog.alert(status + '; ' + error);
+											},
+											success : function(result) {
+												if (result.state == "sucess") {
+													document.nPayForm.action = result.npayOrderUrl + "/" + result.orderKey + "/" + result.resultNo;
+													document.nPayForm.submit();
+												} else {
+													mcxDialog.alert(result.message);
+												}
 											}
-										}
-									});
-								}
-
-								<!-- 구매불가 -->
-								function not_buy_nc() {
-									mcxDialog.alert("죄송합니다. 네이버페이로 구매가 불가한 상품입니다.");
-									return false;
-								}
-							</script>
+										});
+									}
+
+									<!-- 구매불가 -->
+									function not_buy_nc() {
+										mcxDialog.alert("죄송합니다. 네이버페이로 구매가 불가한 상품입니다.");
+										return false;
+									}
+								</script>
+							</th:block>
 						</th:block>
 					</div>
 				</div>

+ 1 - 1
src/main/webapp/WEB-INF/views/mob/mypage/MypageCreExchangeDetailFormMob.html

@@ -35,7 +35,7 @@
 					<th:block th:unless="${oneData.giftPackYn == 'Y'}">
 						<div class="goods_date">주문일<span class="date" th:text="${oneData.ordDt}"></span></div>
 					</th:block>
-					<th:block th:if="${oneData.chgStat == 'G685_20' or oneData.chgStat == 'G685_21'}">
+					<th:block th:if="${oneData.wdBfSendYn == 'N' and (oneData.chgStat == 'G685_20' or oneData.chgStat == 'G685_21')}">
 						<a href="javascript:void(0);" th:attr="ordNo=${oneData.ordNo}, ordChgSq=${oneData.ordChgSq}, cancelGb=${oneData.chgGb}" onclick="fnCreCancel(this);" class="detail_btn">전체신청취소</a>
 					</th:block>
 				</div>

+ 1 - 1
src/main/webapp/WEB-INF/views/mob/mypage/NoMemberCreExchangeDetailFormMob.html

@@ -30,7 +30,7 @@
 			<div class="part_goods">
 				<div class="goods_top">
 					<div class="goods_date">주문일<span class="date" th:text="${oneData.ordDt}"></span></div>
-					<th:block th:if="${oneData.chgStat == 'G685_20' or oneData.chgStat == 'G685_21'}">
+					<th:block th:if="${oneData.wdBfSendYn == 'N' and (oneData.chgStat == 'G685_20' or oneData.chgStat == 'G685_21')}">
 						<a href="javascript:void(0);" th:attr="ordNo=${oneData.ordNo}, ordChgSq=${oneData.ordChgSq}, cancelGb=${oneData.chgGb}" onclick="fnCreCancel(this, 'noMember');" class="detail_btn">전체신청취소</a>
 					</th:block>
 				</div>

+ 0 - 1
src/main/webapp/WEB-INF/views/mob/order/OrderCouponApplyPopMob.html

@@ -174,7 +174,6 @@
 			
 		</div>
 	</div>
-	<a href="#close-modal" rel="modal:close" id="couponModifyPop_close" class="close-modal">Close</a>
 </form>
 
 <script th:inline="javascript">

+ 39 - 3
src/main/webapp/WEB-INF/views/mob/order/OrderFormMob.html

@@ -400,7 +400,7 @@ var jsonObj 			= {};
 // 컨텐츠 호출
 $(document).ready( function() {
 	// 999. 개발화면정보설정
-	var devTemp = true;
+	var devTemp = false;
 	var arr = []
 	arr[0] = "orderInfo";
 	arr[1] = "freegiftInfo";
@@ -1352,8 +1352,15 @@ var paymentInfoSet = function() {
 							xhr.setRequestHeader("AJAX"			, "true");
 							xhr.setRequestHeader('Accept'		, 'application/json');
 							xhr.setRequestHeader('Content-Type'	, 'application/json');
+							
+							// 2021.07.24 유효성체크 분리작업
+							gagajf.showProgressbar(true);
 						},
 						success 	: function(result) {
+							
+							// 2021.07.24 유효성체크 분리작업
+							gagajf.showProgressbar(false);
+							
 							// 결재정보로드
 							$("#order_info").html(result);
 							
@@ -1490,8 +1497,11 @@ var dcAmtInfoSet = function() {
 							
 							$("#couponModifyPop").modal("show");
 							
-							// 쿠폰적용초기화(할인율최고)(상품,장바구니)
-							custGoodsCpnInit();
+							// 쿠폰초기화 2021.07.24 쿠폰팝업 초기화 기능 막음
+							//custGoodsCpnInit();
+							
+							custCpntemp = true;
+							
 							return false;
 						});
 						
@@ -1505,6 +1515,8 @@ var dcAmtInfoSet = function() {
 							$("body").css({"overflow":"hidden"});
 						});
 						
+						var custCpntemp = true;
+						
 						// 1.8.4 쿠폰적용버튼
 						$("#btn_coupon_apply").on("click", function(){
 							// 상품쿠폰적용
@@ -1524,9 +1536,33 @@ var dcAmtInfoSet = function() {
 								$("#chk-maxdisc").trigger("click");
 							}
 							
+							custCpntemp = false;
 							$("#couponModifyPop .close-modal").trigger("click");				// 팝업닫기
 						});
 						
+						// 2021.07.24 쿠폰닫기버튼일때도 쿠폰적용
+						$("#couponModifyPop .close-modal").on(function(){
+							if (custCpntemp) {
+								
+								// 상품쿠폰적용
+								$('#couponApplyForm .couponSelectPop ul li.selected').each(function(index){
+									custCpnApply($(this), index, "goodsCpn");
+								});
+								
+								// 장바구니쿠폰적용
+								$('#couponApplyForm .cartCpn').each(function(index){								
+									if ($(this).find("input[name=rdi-cart-coupon]").is(":checked")) {
+										custCpnApply($(this), index, "cartCpn");
+									}
+								});
+								
+								// 최대할인혜택적용 체크해제
+								if ($("#chk-maxdisc").is(":checked")) {
+									$("#chk-maxdisc").trigger("click");
+								}
+							}
+						});
+						
 						// 1.8.5 쿠폰 최대할인금액 초기화 버튼 설정
 						$("#orderForm #chk-maxdisc").on("click", function(){
 							// 2021.04.23 보유쿠폰이 없을때 적용

+ 1 - 1
src/main/webapp/WEB-INF/views/web/display/BrandMainFormWeb.html

@@ -36,7 +36,7 @@
 										<div class="swiper-slide">
 											<th:block th:if="${ContentsData.imgPath1!=null && ContentsData.imgPath1!=''}">
 												<div class="txtWrap">
-													<dl class="w" id="textArea">
+													<dl th:class="${ContentsData.strVar7=='BLACK'?'':'w'}" id="textArea">
 														<dd class="bMainTitle">
 															<input type="hidden" name="mainTitle" th:value="${ContentsData.strTitle1}"/>
 														</dd>

+ 45 - 128
src/main/webapp/WEB-INF/views/web/display/BrandSearchGoodsListFormWeb.html

@@ -36,7 +36,7 @@
 								<input type="hidden" name="brandGroupNo" th:value="${params.brandGroupNo}">
 								<fieldset>
 									<legend>결과 내 재검색</legend>
-									<input type="text" id="keyword" name="keyword" th:value="${params.keyword}" placeholder="" class="search_input" title="검색어 입력" maxlength="100" >
+									<input type="text" id="keyword" name="keyword" th:value="${params.keyword}" placeholder="" class="search_input" title="검색어 입력" maxlength="100" autocomplete="off">
 									<button type="button" class="sch_btn" onclick="fnSearchData();"><span>검색</span></button>
 								</fieldset>
 							</form>
@@ -111,134 +111,10 @@
 						</div>
 						<!-- //통합 상품 검색결과 없을 시 노출 -->
 						<!-- 추천상품 노출 -->
-						<div class="sch_recommend" style="display:none;">
+						<div class="sch_recommend" id="recomArea" style="display:none;">
 							<h3>이런 상품은 어떤가요?</h3>
-							<div class="itemsGrp">
-								<div class="item_prod">
-									<div class="item_state">
-										<button type="button" class="itemLike">관심상품 추가</button>
-										<a href="#none" class="itemLink">
-											<div class="itemPic">
-												<img alt="" class="vLHTC pd_img" src="/images/pc/thumb/tmp_pdTogether1.jpg">
-											</div>
-											<p class="itemBrand">BRAND NAME1</p>
-											<div class="itemName">남성 로고 자카드 방풍 패딩 스웨터 가디건 자카드 방풍 패딩 스웨터 가디건 자카드 방풍 패딩 스웨터 가디건</div>
-											<p class="itemPrice">80,100
-												<span class="itemPrice_original">89,000</span>
-												<span class="itemPercent">10%</span>
-											</p>
-											<p class="itemBadge">
-												<span class="badge13">베스트 </span>
-											</p>
-											<div class="itemcolorchip">
-												<span class="chip_color35" value="ABM">BEIGE</span>
-												<span class="chip_color54" value="BDS">BLACK</span>
-												<span class="chip_color40" value="YBR">WHITE</span>
-											</div>
-											<div class="itemComment">#주문 폭주 상품</div>
-										</a>
-									</div>
-								</div>
-								<div class="item_prod">
-									<div class="item_state">
-										<button type="button" class="itemLike">관심상품 추가</button>
-										<a href="#none" class="itemLink">
-											<div class="itemPic">
-												<img alt="" class="vLHTC pd_img" src="/images/pc/thumb/tmp_pdTogether1.jpg">
-											</div>
-											<p class="itemBrand">BRAND NAME1</p>
-											<div class="itemName">남성 로고 자카드 방풍 패딩 스웨터 가디건 자카드 방풍 패딩 스웨터 가디건 자카드 방풍 패딩 스웨터 가디건</div>
-											<p class="itemPrice">80,100
-												<span class="itemPrice_original">89,000</span>
-												<span class="itemPercent">10%</span>
-											</p>
-											<p class="itemBadge">
-												<span class="badge13">베스트 </span>
-											</p>
-											<div class="itemcolorchip">
-												<span class="chip_color35" value="ABM">BEIGE</span>
-												<span class="chip_color54" value="BDS">BLACK</span>
-												<span class="chip_color40" value="YBR">WHITE</span>
-											</div>
-											<div class="itemComment">#주문 폭주 상품</div>
-										</a>
-									</div>
-								</div>
-								<div class="item_prod">
-									<div class="item_state">
-										<button type="button" class="itemLike">관심상품 추가</button>
-										<a href="#none" class="itemLink">
-											<div class="itemPic">
-												<img alt="" class="vLHTC pd_img" src="/images/pc/thumb/tmp_pdTogether1.jpg">
-											</div>
-											<p class="itemBrand">BRAND NAME1</p>
-											<div class="itemName">남성 로고 자카드 방풍 패딩 스웨터 가디건 자카드 방풍 패딩 스웨터 가디건 자카드 방풍 패딩 스웨터 가디건</div>
-											<p class="itemPrice">80,100
-												<span class="itemPrice_original">89,000</span>
-												<span class="itemPercent">10%</span>
-											</p>
-											<p class="itemBadge">
-												<span class="badge13">베스트 </span>
-											</p>
-											<div class="itemcolorchip">
-												<span class="chip_color35" value="ABM">BEIGE</span>
-												<span class="chip_color54" value="BDS">BLACK</span>
-												<span class="chip_color40" value="YBR">WHITE</span>
-											</div>
-											<div class="itemComment">#주문 폭주 상품</div>
-										</a>
-									</div>
-								</div>
-								<div class="item_prod">
-									<div class="item_state">
-										<button type="button" class="itemLike">관심상품 추가</button>
-										<a href="#none" class="itemLink">
-											<div class="itemPic">
-												<img alt="" class="vLHTC pd_img" src="/images/pc/thumb/tmp_pdTogether1.jpg">
-											</div>
-											<p class="itemBrand">BRAND NAME1</p>
-											<div class="itemName">남성 로고 자카드 방풍 패딩 스웨터 가디건 자카드 방풍 패딩 스웨터 가디건 자카드 방풍 패딩 스웨터 가디건</div>
-											<p class="itemPrice">80,100
-												<span class="itemPrice_original">89,000</span>
-												<span class="itemPercent">10%</span>
-											</p>
-											<p class="itemBadge">
-												<span class="badge13">베스트 </span>
-											</p>
-											<div class="itemcolorchip">
-												<span class="chip_color35" value="ABM">BEIGE</span>
-												<span class="chip_color54" value="BDS">BLACK</span>
-												<span class="chip_color40" value="YBR">WHITE</span>
-											</div>
-											<div class="itemComment">#주문 폭주 상품</div>
-										</a>
-									</div>
-								</div>
-								<div class="item_prod">
-									<div class="item_state">
-										<button type="button" class="itemLike">관심상품 추가</button>
-										<a href="#none" class="itemLink">
-											<div class="itemPic">
-												<img alt="" class="vLHTC pd_img" src="/images/pc/thumb/tmp_pdTogether1.jpg">
-											</div>
-											<p class="itemBrand">BRAND NAME1</p>
-											<div class="itemName">남성 로고 자카드 방풍 패딩 스웨터 가디건 자카드 방풍 패딩 스웨터 가디건 자카드 방풍 패딩 스웨터 가디건</div>
-											<p class="itemPrice">80,100
-												<span class="itemPrice_original">89,000</span>
-												<span class="itemPercent">10%</span>
-											</p>
-											<p class="itemBadge">
-												<span class="badge13">베스트 </span>
-											</p>
-											<div class="itemcolorchip">
-												<span class="chip_color35" value="ABM">BEIGE</span>
-												<span class="chip_color54" value="BDS">BLACK</span>
-												<span class="chip_color40" value="YBR">WHITE</span>
-											</div>
-											<div class="itemComment">#주문 폭주 상품</div>
-										</a>
-									</div>
-								</div>
+							<div class="itemsGrp" id="recommendItemArea">
+
 							</div>
 						</div>
 						<!-- //추천상품 노출 -->
@@ -558,6 +434,7 @@
 				$('#noFilterData').hide();
 				$('#endPage').hide();
 				$('#goodsNodata').hide();
+				$('#recomArea').hide();
 				$('#goodsKeyword').text('');
 				$('.cont_body .lnb').show();
 				$('.cont_body .cont').show();
@@ -597,6 +474,9 @@
 					$('#goodsKeyword').text([[${params.keyword}]]);
 					$('.cont_body .lnb').hide();
 					$('.cont_body .cont').hide();
+					$('#recomArea').show();
+					// 검색어 연관 상품 추천
+					fnRecommendItemList([[${params.keyword}]]);
 				}
 				gagaInfiniteScroll.draw('not');
 			}
@@ -1071,6 +951,43 @@
 			});
 		}
 
+		// 검색어 연관 상품 추천
+		var fnRecommendItemList = function (keyword){
+			if(gagajf.isNull(keyword)){
+				keyword = "";
+			}
+			var data = {keyword : keyword};
+			var html = '';
+
+			$.getJSON('/display/recommend/item/list', data, function (result){
+				$("#recommendItemArea").html('');
+				if(result.length > 0){
+					$.each(result, function (idx, item){
+						html += '<div class="item_prod">\n';
+						html += '	<div class="item_state">\n';
+						html += '		<button type="button" class="itemLike">관심상품 추가</button>\n';
+						html += '		<a href="'+item.product.itemUrl+'" class="itemLink">\n';
+						html += '			<div class="itemPic">\n';
+						html += '				<img alt="" class="vLHTC pd_img" src="'+item.product.itemImage+'">\n';
+						html += '			</div>\n';
+						html += '			<p class="itemBrand">'+item.product.brandName+'</p>\n';
+						html += '			<div class="itemName">'+item.product.itemName+'</div>\n';
+						html += '			<p class="itemPrice">\n';
+						html += item.product.salePrice.addComma() ;
+						if(item.product.salePrice < item.product.originalPrice) {
+							html += '			<span class="itemPrice_original">'+ item.product.originalPrice.addComma() +'</span>\n';
+							html += '			<span class="itemPercent">' + Math.round((item.product.originalPrice - item.product.salePrice) / (item.product.originalPrice * 1.0) * 100) + '%</span>\n';
+						}
+						html += '			</p>\n';
+						html += '		</a>\n';
+						html += '	</div>\n';
+						html += '</div>\n';
+					});
+				}
+				$("#recommendItemArea").append(html);
+			});
+		}
+
 
 	</script>
 

+ 35 - 6
src/main/webapp/WEB-INF/views/web/display/LookbookDetailFormWeb.html

@@ -331,13 +331,25 @@
 			loopAdditionalSlides : 1,
 			slidesPerView: 'auto',
 			spaceBetween: 20,
-			speed : 800,
+			speed : 1000,
+			initialSlide: 1,
 			autoWidth: true,
 			autoHeight: true,
-			observer: false,
+			observer: true,
+			observeParents: true,
 			centeredSlides: true,
-			autoplay: false,
+			autoplay: { // 210723_ 추가 : loopAdditionalSlides 기능 상실에 대비한 자동 재생
+				delay: 10000,
+				disableOnInteraction: true,
+			},
 			nested: true,
+			a11y: {
+				enabled: true,
+				notificationClass: 'swiper-notification',
+				prevSlideMessage: '이전 슬라이드',
+				nextSlideMessage: '다음 슬라이드',
+				paginationBulletMessage: '슬라이드 {{index}}로 이동',
+			},
 			navigation: {
 				nextEl: '.br_lookbook_view.cont_visual .swiper-button-next',
 				prevEl: '.br_lookbook_view.cont_visual .swiper-button-prev',
@@ -346,6 +358,10 @@
 				el: '.br_lookbook_view.cont_visual .swiper-pagination',
 				clickable: true,
 			},
+			watchOverflow : true,
+			watchSlidesVisibility: true,
+			watchSlidesProgress: true,
+
 			on: {
 				slideChange:function(){
 					// 05.06_ 추가 : .ioTit
@@ -357,9 +373,6 @@
 					$('.itemsOut').eq(this.realIndex).addClass('active');
 				}
 			},
-			watchOverflow : true,
-			watchSlidesVisibility: true,
-			watchSlidesProgress: true,
 		});
 		
 		/* 슬라이드 - 룩북 상품 inSide */
@@ -368,6 +381,14 @@
 			observeParents: true,
 			slidesPerView: 6,
 			spaceBetween: 20,
+			speed:1000,
+			a11y: {
+				enabled: true,
+				notificationClass: 'swiper-notification',
+				prevSlideMessage: '이전 슬라이드',
+				nextSlideMessage: '다음 슬라이드',
+				paginationBulletMessage: '슬라이드 {{index}}로 이동',
+			},
 			scrollbar: {
 				el: '.br_lookbook_view.cont_items .swiper-scrollbar',
 				hide: true,
@@ -379,6 +400,14 @@
 		var br_ohter_slide = new Swiper('.br_lookbook_view.cont_others .swiper-container', {
 			slidesPerView: 5,
 			spaceBetween: 20,
+			speed:1000,
+			a11y: {
+				enabled: true,
+				notificationClass: 'swiper-notification',
+				prevSlideMessage: '이전 슬라이드',
+				nextSlideMessage: '다음 슬라이드',
+				paginationBulletMessage: '슬라이드 {{index}}로 이동',
+			},
 			navigation: {
 				nextEl: '.br_lookbook_view.cont_others .swiper-button-next',
 				prevEl: '.br_lookbook_view.cont_others .swiper-button-prev',

+ 40 - 103
src/main/webapp/WEB-INF/views/web/display/SearchGoodsListFormWeb.html

@@ -36,7 +36,7 @@
 								<input type="hidden" name="brandGroupNo" th:value="${params.brandGroupNo}">
 								<fieldset>
 									<legend>결과 내 재검색</legend>
-									<input type="text" id="keyword" name="keyword" th:value="${params.keyword}" placeholder="" class="search_input" title="검색어 입력" maxlength="100" >
+									<input type="text" id="keyword" name="keyword" th:value="${params.keyword}" placeholder="" class="search_input" title="검색어 입력" maxlength="100" autocomplete="off">
 									<button type="button" class="sch_btn" onclick="fnSearchData();"><span>검색</span></button>
 								</fieldset>
 							</form>
@@ -115,107 +115,7 @@
 						<!-- 추천상품 노출 -->
 						<div class="sch_recommend" style="display:none;">
 							<h3>이런 상품은 어떤가요?</h3>
-							<div class="itemsGrp">
-								<div class="item_prod">
-									<div class="item_state">
-										<button type="button" class="itemLike">관심상품 추가</button>
-										<a href="#none" class="itemLink">
-											<div class="itemPic">
-												<img alt="" class="vLHTC pd_img" src="/images/pc/thumb/tmp_pdTogether1.jpg">
-											</div>
-											<p class="itemBrand">BRAND NAME1</p>
-											<div class="itemName">남성 로고 자카드 방풍 패딩 스웨터 가디건 자카드 방풍 패딩 스웨터 가디건 자카드 방풍 패딩 스웨터 가디건</div>
-											<p class="itemPrice">80,100
-												<span class="itemPrice_original">89,000</span>
-												<span class="itemPercent">10%</span>
-											</p>
-											<p class="itemBadge">
-												<span class="badge13">베스트 </span>
-											</p>
-											<div class="itemcolorchip">
-												<span class="chip_color35" value="ABM">BEIGE</span>
-												<span class="chip_color54" value="BDS">BLACK</span>
-												<span class="chip_color40" value="YBR">WHITE</span>
-											</div>
-											<div class="itemComment">#주문 폭주 상품</div>
-										</a>
-									</div>
-								</div>
-								<div class="item_prod">
-									<div class="item_state">
-										<button type="button" class="itemLike">관심상품 추가</button>
-										<a href="#none" class="itemLink">
-											<div class="itemPic">
-												<img alt="" class="vLHTC pd_img" src="/images/pc/thumb/tmp_pdTogether1.jpg">
-											</div>
-											<p class="itemBrand">BRAND NAME1</p>
-											<div class="itemName">남성 로고 자카드 방풍 패딩 스웨터 가디건 자카드 방풍 패딩 스웨터 가디건 자카드 방풍 패딩 스웨터 가디건</div>
-											<p class="itemPrice">80,100
-												<span class="itemPrice_original">89,000</span>
-												<span class="itemPercent">10%</span>
-											</p>
-											<p class="itemBadge">
-												<span class="badge13">베스트 </span>
-											</p>
-											<div class="itemcolorchip">
-												<span class="chip_color35" value="ABM">BEIGE</span>
-												<span class="chip_color54" value="BDS">BLACK</span>
-												<span class="chip_color40" value="YBR">WHITE</span>
-											</div>
-											<div class="itemComment">#주문 폭주 상품</div>
-										</a>
-									</div>
-								</div>
-								<div class="item_prod">
-									<div class="item_state">
-										<button type="button" class="itemLike">관심상품 추가</button>
-										<a href="#none" class="itemLink">
-											<div class="itemPic">
-												<img alt="" class="vLHTC pd_img" src="/images/pc/thumb/tmp_pdTogether1.jpg">
-											</div>
-											<p class="itemBrand">BRAND NAME1</p>
-											<div class="itemName">남성 로고 자카드 방풍 패딩 스웨터 가디건 자카드 방풍 패딩 스웨터 가디건 자카드 방풍 패딩 스웨터 가디건</div>
-											<p class="itemPrice">80,100
-												<span class="itemPrice_original">89,000</span>
-												<span class="itemPercent">10%</span>
-											</p>
-											<p class="itemBadge">
-												<span class="badge13">베스트 </span>
-											</p>
-											<div class="itemcolorchip">
-												<span class="chip_color35" value="ABM">BEIGE</span>
-												<span class="chip_color54" value="BDS">BLACK</span>
-												<span class="chip_color40" value="YBR">WHITE</span>
-											</div>
-											<div class="itemComment">#주문 폭주 상품</div>
-										</a>
-									</div>
-								</div>
-								<div class="item_prod">
-									<div class="item_state">
-										<button type="button" class="itemLike">관심상품 추가</button>
-										<a href="#none" class="itemLink">
-											<div class="itemPic">
-												<img alt="" class="vLHTC pd_img" src="/images/pc/thumb/tmp_pdTogether1.jpg">
-											</div>
-											<p class="itemBrand">BRAND NAME1</p>
-											<div class="itemName">남성 로고 자카드 방풍 패딩 스웨터 가디건 자카드 방풍 패딩 스웨터 가디건 자카드 방풍 패딩 스웨터 가디건</div>
-											<p class="itemPrice">80,100
-												<span class="itemPrice_original">89,000</span>
-												<span class="itemPercent">10%</span>
-											</p>
-											<p class="itemBadge">
-												<span class="badge13">베스트 </span>
-											</p>
-											<div class="itemcolorchip">
-												<span class="chip_color35" value="ABM">BEIGE</span>
-												<span class="chip_color54" value="BDS">BLACK</span>
-												<span class="chip_color40" value="YBR">WHITE</span>
-											</div>
-											<div class="itemComment">#주문 폭주 상품</div>
-										</a>
-									</div>
-								</div>
+							<div class="itemsGrp" id="recommendItemArea">
 								<div class="item_prod">
 									<div class="item_state">
 										<button type="button" class="itemLike">관심상품 추가</button>
@@ -622,6 +522,7 @@
 				$('#noFilterData').hide();
 				$('#endPage').hide();
 				$('#goodsNodata').hide();
+				$('.sch_recommend').hide();
 				$('#goodsKeyword').text('');
 				$('.cont_body .lnb').show();
 				$('.cont_body .cont').show();
@@ -661,6 +562,9 @@
 					$('#goodsKeyword').text([[${params.keyword}]]);
 					$('.cont_body .lnb').hide();
 					$('.cont_body .cont').hide();
+					$('.sch_recommend').show();
+					// 검색어 연관 상품 추천
+					fnRecommendItemList([[${params.keyword}]]);
 				}
 				gagaInfiniteScroll.draw('not');
 			}
@@ -1264,8 +1168,41 @@
 			});
 		}
 
+		var fnRecommendItemList = function (keyword){
+			if(gagajf.isNull(keyword)){
+				keyword = "";
+			}
+			var data = {keyword : keyword};
+			var html = '';
 
-
+			$.getJSON('/display/recommend/item/list', data, function (result){
+				$("#recommendItemArea").html('');
+				if(result.length > 0){
+					$.each(result, function (idx, item){
+						html += '<div class="item_prod">\n';
+						html += '	<div class="item_state">\n';
+						html += '		<button type="button" class="itemLike">관심상품 추가</button>\n';
+						html += '		<a href="'+item.product.itemUrl+'" class="itemLink">\n';
+						html += '			<div class="itemPic">\n';
+						html += '				<img alt="" class="vLHTC pd_img" src="'+item.product.itemImage+'">\n';
+						html += '			</div>\n';
+						html += '			<p class="itemBrand">'+item.product.brandName+'</p>\n';
+						html += '			<div class="itemName">'+item.product.itemName+'</div>\n';
+						html += '			<p class="itemPrice">\n';
+						html += item.product.salePrice.addComma() ;
+						if(item.product.salePrice < item.product.originalPrice) {
+							html += '				<span class="itemPrice_original">'+ item.product.originalPrice.addComma() +'</span>\n';
+							html += '				<span class="itemPercent">' + Math.round((item.product.originalPrice - item.product.salePrice) / (item.product.originalPrice * 1.0) * 100) + '%</span>\n';
+						}
+						html += '			</p>\n';
+						html += '		</a>\n';
+						html += '	</div>\n';
+						html += '</div>\n';
+					});
+				}
+				$("#recommendItemArea").append(html);
+			});
+		}
 
 	</script>
 

+ 74 - 108
src/main/webapp/WEB-INF/views/web/display/SearchLayerWeb.html

@@ -166,97 +166,25 @@
 			</div>
 			<div class="pd_list recommend">
 				<h3>이런 상품은 어떤가요?</h3>
-				<div class="itemsGrp">
-					<div class="item_prod">
-						<div class="item_state">
-							<a href="#none" class="itemLink">
-								<div class="itemPic">
-									<img alt="" class="vLHTC pd_img" src="/images/pc/thumb/tmp_pdLookbook_item1.jpg">
-								</div>
-								<p class="itemBrand">BRAND NAME1</p>
-								<div class="itemName">남성 로고 자카드 방풍 패딩 스웨터 가디건 자카드 방풍 패딩 스웨터 가디건 자카드 방풍 패딩 스웨터 가디건</div>
-								<!-- cols 클래스 추가 후 itemPrice_original태그 위로 올려주시면 됩니다. -->
-								<p class="itemPrice cols">
-									<span class="itemPrice_original">89,000</span>
-									80,100
-									<span class="itemPercent">10%</span>
-								</p>
-								<!-- //cols 클래스 추가 후 itemPrice_original태그 위로 올려주시면 됩니다. -->
-							</a>
-						</div>
-					</div>
-					<div class="item_prod">
-						<div class="item_state">
-							<a href="#none" class="itemLink">
-								<div class="itemPic">
-									<img alt="" class="vLHTC pd_img" src="/images/pc/thumb/tmp_pdLookbook_item1.jpg">
-								</div>
-								<p class="itemBrand">BRAND NAME1</p>
-								<div class="itemName">남성 로고 자카드 방풍 패딩 스웨터 가디건 자카드 방풍 패딩 스웨터 가디건 자카드 방풍 패딩 스웨터 가디건</div>
-								<!-- cols 클래스 추가 후 itemPrice_original태그 위로 올려주시면 됩니다. -->
-								<p class="itemPrice cols">
-									<span class="itemPrice_original">89,000</span>
-									80,100
-									<span class="itemPercent">10%</span>
-								</p>
-								<!-- //cols 클래스 추가 후 itemPrice_original태그 위로 올려주시면 됩니다. -->
-							</a>
-						</div>
-					</div>
-					<div class="item_prod">
-						<div class="item_state">
-							<a href="#none" class="itemLink">
-								<div class="itemPic">
-									<img alt="" class="vLHTC pd_img" src="/images/pc/thumb/tmp_pdLookbook_item1.jpg">
-								</div>
-								<p class="itemBrand">BRAND NAME1</p>
-								<div class="itemName">남성 로고 자카드 방풍 패딩 스웨터 가디건 자카드 방풍 패딩 스웨터 가디건 자카드 방풍 패딩 스웨터 가디건</div>
-								<!-- cols 클래스 추가 후 itemPrice_original태그 위로 올려주시면 됩니다. -->
-								<p class="itemPrice cols">
-									<span class="itemPrice_original">89,000</span>
-									80,100
-									<span class="itemPercent">10%</span>
-								</p>
-								<!-- //cols 클래스 추가 후 itemPrice_original태그 위로 올려주시면 됩니다. -->
-							</a>
-						</div>
-					</div>
-					<div class="item_prod">
-						<div class="item_state">
-							<a href="#none" class="itemLink">
-								<div class="itemPic">
-									<img alt="" class="vLHTC pd_img" src="/images/pc/thumb/tmp_pdLookbook_item1.jpg">
-								</div>
-								<p class="itemBrand">BRAND NAME1</p>
-								<div class="itemName">남성 로고 자카드 방풍 패딩 스웨터 가디건 자카드 방풍 패딩 스웨터 가디건 자카드 방풍 패딩 스웨터 가디건</div>
-								<!-- cols 클래스 추가 후 itemPrice_original태그 위로 올려주시면 됩니다. -->
-								<p class="itemPrice cols">
-									<span class="itemPrice_original">89,000</span>
-									80,100
-									<span class="itemPercent">10%</span>
-								</p>
-								<!-- //cols 클래스 추가 후 itemPrice_original태그 위로 올려주시면 됩니다. -->
-							</a>
-						</div>
-					</div>
-					<div class="item_prod">
-						<div class="item_state">
-							<a href="#none" class="itemLink">
-								<div class="itemPic">
-									<img alt="" class="vLHTC pd_img" src="/images/pc/thumb/tmp_pdLookbook_item1.jpg">
-								</div>
-								<p class="itemBrand">BRAND NAME1</p>
-								<div class="itemName">남성 로고 자카드 방풍 패딩 스웨터 가디건 자카드 방풍 패딩 스웨터 가디건 자카드 방풍 패딩 스웨터 가디건</div>
-								<!-- cols 클래스 추가 후 itemPrice_original태그 위로 올려주시면 됩니다. -->
-								<p class="itemPrice cols">
-									<span class="itemPrice_original">89,000</span>
-									80,100
-									<span class="itemPercent">10%</span>
-								</p>
-								<!-- //cols 클래스 추가 후 itemPrice_original태그 위로 올려주시면 됩니다. -->
-							</a>
-						</div>
-					</div>
+				<div class="itemsGrp" id="recommendItemArea">
+<!--					<div class="item_prod">-->
+<!--						<div class="item_state">-->
+<!--							<a href="#none" class="itemLink">-->
+<!--								<div class="itemPic">-->
+<!--									<img alt="" class="vLHTC pd_img" src="/images/pc/thumb/tmp_pdLookbook_item1.jpg">-->
+<!--								</div>-->
+<!--								<p class="itemBrand">BRAND NAME1</p>-->
+<!--								<div class="itemName">남성 로고 자카드 방풍 패딩 스웨터 가디건 자카드 방풍 패딩 스웨터 가디건 자카드 방풍 패딩 스웨터 가디건</div>-->
+<!--								&lt;!&ndash; cols 클래스 추가 후 itemPrice_original태그 위로 올려주시면 됩니다. &ndash;&gt;-->
+<!--								<p class="itemPrice cols">-->
+<!--									<span class="itemPrice_original">89,000</span>-->
+<!--									80,100-->
+<!--									<span class="itemPercent">10%</span>-->
+<!--								</p>-->
+<!--								&lt;!&ndash; //cols 클래스 추가 후 itemPrice_original태그 위로 올려주시면 됩니다. &ndash;&gt;-->
+<!--							</a>-->
+<!--						</div>-->
+<!--					</div>-->
 				</div>
 			</div>
 		</div>
@@ -322,8 +250,6 @@
 	});
 
 	$(document).ready( function() {
-		console.log('xxxx brandNo::'+[[${brandGroupNo}]]);
-
 		$("#layer_search").addClass('active');
 
 		if (trendKeywordList.length > 0) {
@@ -357,6 +283,8 @@
 			$('.common_search .area_result .searching_box').hide();
 			$('.common_search .area_result .empty_box').show();
 			$('.empty_box .nodata').find('#noDataKeyword').text("'"+$("#searchMainForm").find('input[name=keyword]').val()+"'");
+			// 검색어 연관 상품 추천
+			fnRecommendItemList($("#searchMainForm").find('input[name=keyword]').val());
 		}else{
 			$('.common_search .area_result .default_box').hide();
 			$('.common_search .area_result .searching_box').show();
@@ -368,7 +296,7 @@
 				tag += '<ul>\n';
 				$.each(result.autoKeywords, function (idx, item){
 					//<a href="javascript:void(0);"><em>가</em>을컬리수</a>
-					tag += '<li><a href="javascript:void(0);">'+result.autoKeywords[idx]+'</a></li>\n';
+					tag += '<li><a href="javascript:void(0);" onclick="fnSearchKeyword(\''+result.autoKeywords[idx]+'\');">'+result.autoKeywords[idx]+'</a></li>\n';
 				});
 				tag += '</ul>\n';
 				$(".autokeyword_blk").append(tag);
@@ -501,29 +429,67 @@
 	var fnRealtimeGoodsList = function (){
 		$("#itemViewArea").html('');
 		var html = '';
-		$.getJSON('/display/realtime/goods/list'),function (result){
-			console.log(result);
+		$.getJSON('/display/realtime/goods/list', function (result){
 			if(result.length > 0){
 				$.each(result, function (idx, item){
-					html += ' <div class="item_prod">\n';
-					html += ' 	<div class="item_state">\n';
-					html += ' 		<a th:href="'+item.itemUrl+'" class="itemLink">\n';
-					html += ' 			<div class="itemPic">\n';
-					html += ' 				<img alt="" class="vLHTC pd_img" th:src="'+item.imageUrl+'">\n';
-					html += ' 			</div>\n';
-					html += ' 			<div class="itemName" th:text="'+item.itemName+'"></div>\n';
+					html += '<div class="item_prod">\n';
+					html += '	<div class="item_state">\n';
+					html += '		<a href="'+item.itemUrl+'" class="itemLink">\n';
+					html += '			<div class="itemPic">\n';
+					html += '				<img alt="" class="vLHTC pd_img" src="'+item.imageUrl+'">\n';
+					html += '			</div>\n';
+					html += '			<div class="itemName">'+item.itemName+'</div>\n';
 					if(item.count < 10){
-						html += '<div class="viewCount"><span>10명</span> 미만</div>\n';
+						html += '			<div class="viewCount"><span>10명</span> 미만</div>\n';
 					}else{
-						html += '				<div class="viewCount"><span>'+item.count.addComma()+'</span>명 보는중</div>\n';
+						html += '			<div class="viewCount"><span>'+item.count.addComma()+'</span>명 보는중</div>\n';
 					}
-					html += ' 		</a>\n';
-					html += ' </div>\n';
+					html += '		</a>\n';
+					html += '	</div>\n';
+					html += '</div>\n';
 				});
 			}
-		}
+			$("#itemViewArea").append(html);
+		});
 	}
 
+	// 검색어 연관 상품 추천
+	var fnRecommendItemList = function (keyword){
+		if(gagajf.isNull(keyword)){
+			keyword = "";
+		}
+		var data = {keyword : keyword};
+		var html = '';
+
+		$.getJSON('/display/recommend/item/list', data, function (result){
+			$("#recommendItemArea").html('');
+			if(result.length > 0){
+				$.each(result, function (idx, item){
+					html += '<div class="item_prod">\n';
+					html += '	<div class="item_state">\n';
+					html += '		<a href="'+item.product.itemUrl+'" class="itemLink">\n';
+					html += '			<div class="itemPic">\n';
+					html += '				<img alt="" class="vLHTC pd_img" src="'+item.product.itemImage+'">\n';
+					html += '			</div>\n';
+					html += '			<p class="itemBrand">'+item.product.brandName+'</p>\n';
+					html += '			<div class="itemName">'+item.product.itemName+'</div>\n';
+					html += '			<p class="itemPrice cols">\n';
+					if(item.product.salePrice < item.product.originalPrice) {
+						html += '			<span class="itemPrice_original">'+ item.product.originalPrice.addComma() +'</span>\n';
+					}
+					html += item.product.salePrice.addComma() ;
+					if(item.product.salePrice < item.product.originalPrice) {
+						html += '			<span class="itemPercent">' + Math.round((item.product.originalPrice - item.product.salePrice) / (item.product.originalPrice * 1.0) * 100) + '%</span>\n';
+					}
+					html += '			</p>\n';
+					html += '		</a>\n';
+					html += '	</div>\n';
+					html += '</div>\n';
+				});
+			}
+			$("#recommendItemArea").append(html);
+		});
+	}
 	/*]]>*/
 </script>
 </html>

+ 23 - 20
src/main/webapp/WEB-INF/views/web/goods/GoodsCouponFormWeb.html

@@ -39,11 +39,11 @@
 									<span>1인 최대 <th:block th:text="${(goodsCoupon.custPubLimitQty > 0) ? #numbers.formatInteger(goodsCoupon.custPubLimitQty, 0,'COMMA') +'장' : '무제한'}"></span>
 								</p>
 							</div>
-							<th:block th:if="${goodsCoupon.custPubLimitQty > 0 and goodsCoupon.custPubLimitQty <= goodsCoupon.custCouponCnt}">
+							<th:block th:if="${goodsCoupon.custPubLimitQty > 0 and (goodsCoupon.custPubLimitQty* goodsCoupon.onePubQty) <= goodsCoupon.custCouponCnt}">
 							<button type="button" class="btn btn_dark btn_block btn_coupon_done"  disabled="disabled"><span>받기완료</span></button>
 							</th:block>
-							<th:block th:unless="${goodsCoupon.custPubLimitQty > 0 and goodsCoupon.custPubLimitQty <= goodsCoupon.custCouponCnt}">
-							<button type="button" class="btn btn_dark btn_block btn_coupon_down" th:attr="cpnId=${goodsCoupon.cpnId}" th:id="${'coupon_'+goodsCoupon.cpnId}" onclick="fnGoodsCouponDown(this);"><span>쿠폰받기</span></button>
+							<th:block th:unless="${goodsCoupon.custPubLimitQty > 0 and (goodsCoupon.custPubLimitQty* goodsCoupon.onePubQty) <= goodsCoupon.custCouponCnt}">
+							<button type="button" class="btn btn_dark btn_block btn_coupon_down" th:attr="cpnId=${goodsCoupon.cpnId},goodsCd=${goodsCoupon.goodsCd}" th:id="${'coupon_'+goodsCoupon.cpnId}" onclick="fnGoodsCouponDown(this);"><span>쿠폰받기</span></button>
 							</th:block>
 						</div>
 					</li>
@@ -70,7 +70,7 @@
 		
 		let $obj = $(obj);
 		let cpnId = $obj.attr('cpnId');
-		let goodsCd = $('#goodsCouponForm input[name=goodsCd]').val();
+		let goodsCd = $obj.attr('goodsCd');
 		
 		 gagajf.ajaxJsonSubmit(_PAGE_GOODS_CPN_DOWNLOAD, JSON.stringify({goodsCd: goodsCd, cpnId: cpnId}), fnGoodsCouponCallBack);
 		 
@@ -87,19 +87,20 @@
 			let list = result.goodsCouponList;
 
 			list.forEach(function(coupon){
-				if (coupon.cpnId == cpnId){debugger;
+				if (coupon.cpnId == cpnId){
 					if (Number(coupon.custPubLimitQty) > 0){
-						if (Number(coupon.custPubLimitQty) <= Number(coupon.custCouponCnt)){
-							$('#coupon_'+ coupon.cpnId).html('<span>받기완료</span>');
-							$('#coupon_'+ coupon.cpnId).attr('disabled', true);
-							$('#coupon_'+ coupon.cpnId).removeClass('btn_coupon_down').addClass('btn_coupon_done');
+						if ((Number(coupon.custPubLimitQty) *Number(coupon.onePubQty)) <= Number(coupon.custCouponCnt)){
+							$('#coupon_'+ coupon.cpnId + ' span').text('받기완료');
+							$('#coupon_'+ coupon.cpnId + ' span').parent().removeClass('btn_coupon_down').addClass('btn_coupon_done');
+							$('#coupon_'+ coupon.cpnId + ' span').parent().attr('disabled', true);
+							
 						}
 					}
 					if (Number(coupon.TotPubLimitQty) > 0){
 						if (Number(coupon.TotPubLimitQty) <= Number(coupon.CustCouponCnt)){
-							$('#coupon_'+ coupon.cpnId).html('<span>받기완료</span>');
-							$('#coupon_'+ coupon.cpnId).attr('disabled', true);
-							$('#coupon_'+ coupon.cpnId).removeClass('btn_coupon_down').addClass('btn_coupon_done');
+							$('#coupon_'+ coupon.cpnId + ' span').text('받기완료');
+							$('#coupon_'+ coupon.cpnId + ' span').parent().removeClass('btn_coupon_down').addClass('btn_coupon_done');
+							$('#coupon_'+ coupon.cpnId + ' span').parent().attr('disabled', true);
 						}
 					}
 				}
@@ -113,10 +114,13 @@
 	var fnGoodsCouponDownAll = function(){
 		//00개 쿠폰이 발급되었습니다.
 		let couponDownAbleYn = "N";
+		let cpnAllDownYn = "Y";
+		let arrGoodsCd = [];
 		let arrCpnId = [];
 		$('#goodsCouponForm').find('.btn_coupon_down').each(function(){
 			if (!$(this).attr('disabled')){
 				couponDownAbleYn = "Y";
+				arrGoodsCd.push($(this).attr('goodscd'));
 				arrCpnId.push($(this).attr('cpnId'));
 			}
 		});	
@@ -125,8 +129,7 @@
 			mcxDialog.alert("다운 받을 쿠폰이 없습니다.");
 			return false;
 		}
-		let goodsCd = $('#goodsCouponForm input[name=goodsCd]').val();
-		gagajf.ajaxJsonSubmit(_PAGE_GOODS_CPN_DOWNLOAD, JSON.stringify({goodsCd: goodsCd, arrCpnId: arrCpnId}), fnGoodsCouponDownAllBack);
+		gagajf.ajaxJsonSubmit(_PAGE_GOODS_CPN_DOWNLOAD, JSON.stringify({arrGoodsCd: arrGoodsCd, arrCpnId: arrCpnId, cpnAllDownYn: cpnAllDownYn}), fnGoodsCouponDownAllBack);
 		
 	}
 	
@@ -143,16 +146,16 @@
 						if (coupon.cpnId == cpnId){
 							if (Number(coupon.custPubLimitQty) > 0){
 								if (Number(coupon.custPubLimitQty) <= Number(coupon.custCouponCnt)){
-									$('#coupon_'+ coupon.cpnId).html('<span>받기완료</span>');
-									$('#coupon_'+ coupon.cpnId).attr('disabled', true);
-									$('#coupon_'+ coupon.cpnId).removeClass('btn_coupon_down').addClass('btn_coupon_done');
+									$('#coupon_'+ coupon.cpnId + ' span').text('받기완료');
+									$('#coupon_'+ coupon.cpnId + ' span').parent().removeClass('btn_coupon_down').addClass('btn_coupon_done');
+									$('#coupon_'+ coupon.cpnId + ' span').parent().attr('disabled', true);
 								}
 							}
 							if (Number(coupon.TotPubLimitQty) > 0){
 								if (Number(coupon.TotPubLimitQty) <= Number(coupon.CustCouponCnt)){
-									$('#coupon_'+ coupon.cpnId).html('<span>받기완료</span>');
-									$('#coupon_'+ coupon.cpnId).attr('disabled', true);
-									$('#coupon_'+ coupon.cpnId).removeClass('btn_coupon_down').addClass('btn_coupon_done');
+									$('#coupon_'+ coupon.cpnId + ' span').text('받기완료');
+									$('#coupon_'+ coupon.cpnId + ' span').parent().removeClass('btn_coupon_down').addClass('btn_coupon_done');
+									$('#coupon_'+ coupon.cpnId + ' span').parent().attr('disabled', true);
 								}
 							}
 						}

+ 70 - 69
src/main/webapp/WEB-INF/views/web/goods/GoodsDealDetailFormWeb.html

@@ -265,85 +265,86 @@
 								</th:block>
 								</div>
 							</div>
+							<th:block th:if="${sessionInfo != null and (sessionInfo.custId == 'xodud1202' or sessionInfo.custId == 'jsh77b' or sessionInfo.custId == 'card007')}">
+								<div style="margin-top:10px;">
+									<th:block th:with="buttonKey=${@environment.getProperty('naverPay.button.key')}">
+										<script th:inline="javascript">
+											if(!wcs_add) var wcs_add = {};
+											wcs_add["wa"] = "${@environment.getProperty('naverPay.common.certification.key')}";
+											wcs.inflow("style24.com");
+											wcs_do();
+										</script>
 
-							<div style="margin-top:10px;">
-								<th:block th:with="buttonKey=${@environment.getProperty('naverPay.button.key')}">
-									<script th:inline="javascript">
-										if(!wcs_add) var wcs_add = {};
-										wcs_add["wa"] = "${@environment.getProperty('naverPay.common.certification.key')}";
-										wcs.inflow("style24.com");
-										wcs_do();
-									</script>
-
-									<script type="text/javascript" >
-										//<![CDATA[
-										/*버튼설정*/
-										naver.NaverPayButton.apply({
-											BUTTON_KEY              : "[[${buttonKey}]]",       // 네이버페이에서 제공받은 버튼 인증 키 입력
-											TYPE                    : "C",                      // 버튼 모음 종류 설정
-											COLOR                   : 1,                        // 버튼 모음의 색 설정
-											COUNT                   : 1,                        // 버튼 개수 설정. 구매하기 버튼만 있으면(장바구니 페이지) 1, 찜하기 버튼도 있으면(상품 상세 페이지) 2를 입력.
-											ENABLE                  : "Y",                      // 품절 등의 이유로 버튼 모음을 비활성화할 때에는 "N" 입력
-											BUY_BUTTON_HANDLER      : buy_nc,                   // 구매하기 버튼 이벤트 Handler 함수 등록, 품절인 경우 not_buy_nc 함수 사용
-											"":""
-										});
+										<script type="text/javascript" >
+											//<![CDATA[
+											/*버튼설정*/
+											naver.NaverPayButton.apply({
+												BUTTON_KEY              : "[[${buttonKey}]]",       // 네이버페이에서 제공받은 버튼 인증 키 입력
+												TYPE                    : "C",                      // 버튼 모음 종류 설정
+												COLOR                   : 1,                        // 버튼 모음의 색 설정
+												COUNT                   : 1,                        // 버튼 개수 설정. 구매하기 버튼만 있으면(장바구니 페이지) 1, 찜하기 버튼도 있으면(상품 상세 페이지) 2를 입력.
+												ENABLE                  : "Y",                      // 품절 등의 이유로 버튼 모음을 비활성화할 때에는 "N" 입력
+												BUY_BUTTON_HANDLER      : buy_nc,                   // 구매하기 버튼 이벤트 Handler 함수 등록, 품절인 경우 not_buy_nc 함수 사용
+												"":""
+											});
 
-										/*네이버구매하기*/
-										function buy_nc() {
-											// 자사 일반 상품 정보
-											let compsList = [];
+											/*네이버구매하기*/
+											function buy_nc() {
+												// 자사 일반 상품 정보
+												let compsList = [];
 
-											$("#cartForm .result_item input[name=cea]").each(function() {
-												let dealGoodsCd = "[[${goodsInfo.goodsCd}]]";
-												let goodsType = "[[${goodsInfo.goodsType}]]";
-												let goodsCd = $(this).parent().find("input[name=coption]").attr("goodscd");
-												let optCd = $(this).attr("optcd");
-												let goodsQty = $(this).val();
+												$("#cartForm .result_item input[name=cea]").each(function() {
+													let dealGoodsCd = "[[${goodsInfo.goodsCd}]]";
+													let goodsType = "[[${goodsInfo.goodsType}]]";
+													let goodsCd = $(this).parent().find("input[name=coption]").attr("goodscd");
+													let optCd = $(this).attr("optcd");
+													let goodsQty = $(this).val();
 
-												if (!goodsCd) {
-													mcxDialog.alert("상품정보가 존재하지 않습니다. 새로고침 후 다시 시도해주세요.");
-													return false;
-												}
+													if (!goodsCd) {
+														mcxDialog.alert("상품정보가 존재하지 않습니다. 새로고침 후 다시 시도해주세요.");
+														return false;
+													}
 
-												if (!goodsQty || goodsQty < 1) {
-													mcxDialog.alert("구매 수량을 확인해주세요.");      /*수량*/
-													return false;
-												}
+													if (!goodsQty || goodsQty < 1) {
+														mcxDialog.alert("구매 수량을 확인해주세요.");      /*수량*/
+														return false;
+													}
 
-												if (!optCd) {
-													mcxDialog.alert("상품 옵션을 확인 할 수 없습니다. 새로고침 후 다시 시도해주세요.");   /*옵션*/
-													return false;
-												}
+													if (!optCd) {
+														mcxDialog.alert("상품 옵션을 확인 할 수 없습니다. 새로고침 후 다시 시도해주세요.");   /*옵션*/
+														return false;
+													}
 
-												var obj = new Object();
-												obj.cartGb = "N";
-												obj.goodsType = goodsType;
-												obj.goodsCd = goodsCd;
-												obj.optCd = optCd;
-												obj.goodsQty = goodsQty;
-												obj.dealGoodsCd = $("#cartForm  input[name=goodsCd]").val();
-												obj.afLinkCd =$("#cartForm  input[name=afLinkCd]").val();
-												obj.ithrCd =$("#cartForm  input[name=ithrCd]").val();
-												obj.contentsLoc =$("#cartForm  input[name=contentsLoc]").val();
-												obj.planDtlSq = $("#cartForm  input[name=planDtlSq]").val();
-												compsList.push(obj);
-											});
+													var obj = new Object();
+													obj.cartGb = "N";
+													obj.goodsType = goodsType;
+													obj.goodsCd = goodsCd;
+													obj.optCd = optCd;
+													obj.goodsQty = goodsQty;
+													obj.dealGoodsCd = $("#cartForm  input[name=goodsCd]").val();
+													obj.afLinkCd =$("#cartForm  input[name=afLinkCd]").val();
+													obj.ithrCd =$("#cartForm  input[name=ithrCd]").val();
+													obj.contentsLoc =$("#cartForm  input[name=contentsLoc]").val();
+													obj.planDtlSq = $("#cartForm  input[name=planDtlSq]").val();
+													compsList.push(obj);
+												});
 
-											// 장바구니담기
-											cfnAddCart(compsList);
+												// 장바구니담기
+												cfnAddCart(compsList);
 
-											return false;
-										}
+												return false;
+											}
 
-										<!-- 구매불가 -->
-										function not_buy_nc() {
-											mcxDialog.alert("죄송합니다. 네이버페이로 구매가 불가한 상품입니다.");
-											return false;
-										}
-										//]]>
-									</script>
-								</th:block>
-							</div>
+											<!-- 구매불가 -->
+											function not_buy_nc() {
+												mcxDialog.alert("죄송합니다. 네이버페이로 구매가 불가한 상품입니다.");
+												return false;
+											}
+											//]]>
+										</script>
+									</th:block>
+								</div>
+							</th:block>
 						</div>
 					</div>
 					</form>

+ 139 - 137
src/main/webapp/WEB-INF/views/web/goods/GoodsDetailFormWeb.html

@@ -77,7 +77,7 @@
 								<li th:id="${'navLocate'+ status.count}"  th:classappend="${status.first}? 'on' : ''">
 									<div class="movbox">
 										<th:block th:if="${goodsVideo.videoGb == 'Y'}">
-										<iframe id="prodctThumbVideo" class="pd_mov" width="100%" height="100%" th:src="${'https://www.youtube.com/embed/'+goodsVideo.kmcKey+'?rel=0&autoplay=1&mute=1'}" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>
+										<iframe id="prodctThumbVideo" class="pd_mov" width="100%" height="100%" th:src="${'https://www.youtube.com/embed/'+goodsVideo.kmcKey+'?rel=0&autoplay=1&mute=1&amp;loop=1;playlist='+goodsVideo.kmcKey}"  title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>
 										</th:block>
 										<th:block th:unless="${goodsVideo.videoGb == 'Y'}">
 										<iframe id="prodctThumbVideo" class="pd_mov" width="100%" height="100%" th:src="${kollusMediaUrl+'/'+goodsVideo.kmcKey +'?enable_initialize_focus=false&autoplay&mute&controls_activation=none'}" frameborder="0" allowfullscreen></iframe>
@@ -382,106 +382,64 @@
 								</th:block>
 								</div>
 							</div>
-							<div style="margin-top:10px;">
-								<th:block th:with="buttonKey=${@environment.getProperty('naverPay.button.key')}">
-									<script type="text/javascript" th:src="${@environment.getProperty('naverPay.button.pc.js.url')}" src="" charset="UTF-8"></script>
-
-									<script th:inline="javascript">
-										if(!wcs_add) var wcs_add = {};
-										wcs_add["wa"] = "${@environment.getProperty('naverPay.common.certification.key')}";
-										wcs.inflow("style24.com");
-										wcs_do();
-									</script>
-
-									<script type="text/javascript" >
-										/*버튼설정*/
-										naver.NaverPayButton.apply({
-											BUTTON_KEY              : "[[${buttonKey}]]",       // 네이버페이에서 제공받은 버튼 인증 키 입력
-											TYPE                    : "C",                      // 버튼 모음 종류 설정
-											COLOR                   : 1,                        // 버튼 모음의 색 설정
-											COUNT                   : 1,                        // 버튼 개수 설정. 구매하기 버튼만 있으면(장바구니 페이지) 1, 찜하기 버튼도 있으면(상품 상세 페이지) 2를 입력.
-											ENABLE                  : "Y",                      // 품절 등의 이유로 버튼 모음을 비활성화할 때에는 "N" 입력
-											BUY_BUTTON_HANDLER      : buy_nc,                   // 구매하기 버튼 이벤트 Handler 함수 등록, 품절인 경우 not_buy_nc 함수 사용
-											"":""
-										});
-
-										/*네이버구매하기*/
-										function buy_nc(url) {
-											// 자사 일반 상품 정보
-											let goodsCd = "[[${goodsInfo.goodsCd}]]";
-											let optCd = $(".opt_size .form_field input[type=radio]:checked").attr("optcd");
-											let goodsQty = $(".opt_count .number_count input[name=cea]").val();
-											let goodsType = "[[${goodsInfo.goodsType}]]";
-											let selfGoodsYn = "[[${goodsInfo.selfGoodsYn}]]";
-
-											if (!goodsCd) {
-												mcxDialog.alert("상품정보가 존재하지 않습니다. 새로고침 후 다시 시도해주세요.");
-												return false;
-											}
-
-											if (!goodsQty || goodsQty < 1) {
-												mcxDialog.alert("구매 수량을 확인해주세요.");      /*수량*/
-												return false;
-											}
+							<th:block th:if="${sessionInfo != null and (sessionInfo.custId == 'xodud1202' or sessionInfo.custId == 'jsh77b' or sessionInfo.custId == 'card007')}">
+								<div style="margin-top:10px;">
+									<th:block th:with="buttonKey=${@environment.getProperty('naverPay.button.key')}">
+										<script type="text/javascript" th:src="${@environment.getProperty('naverPay.button.pc.js.url')}" src="" charset="UTF-8"></script>
+
+										<script th:inline="javascript">
+											if(!wcs_add) var wcs_add = {};
+											wcs_add["wa"] = "${@environment.getProperty('naverPay.common.certification.key')}";
+											wcs.inflow("style24.com");
+											wcs_do();
+										</script>
+
+										<script type="text/javascript" >
+											/*버튼설정*/
+											naver.NaverPayButton.apply({
+												BUTTON_KEY              : "[[${buttonKey}]]",       // 네이버페이에서 제공받은 버튼 인증 키 입력
+												TYPE                    : "C",                      // 버튼 모음 종류 설정
+												COLOR                   : 1,                        // 버튼 모음의 색 설정
+												COUNT                   : 1,                        // 버튼 개수 설정. 구매하기 버튼만 있으면(장바구니 페이지) 1, 찜하기 버튼도 있으면(상품 상세 페이지) 2를 입력.
+												ENABLE                  : "Y",                      // 품절 등의 이유로 버튼 모음을 비활성화할 때에는 "N" 입력
+												BUY_BUTTON_HANDLER      : buy_nc,                   // 구매하기 버튼 이벤트 Handler 함수 등록, 품절인 경우 not_buy_nc 함수 사용
+												"":""
+											});
 
-											if(goodsType == "G056_N") {
-												// 자사 상품이 아닐 경우
-												if(selfGoodsYn == "N") {
-													optCd = $(".item_opt2 .select input[name=opt2]").attr("optcd");				// 입점업체 일반 상품
+											/*네이버구매하기*/
+											function buy_nc(url) {
+												// 자사 일반 상품 정보
+												let goodsCd = "[[${goodsInfo.goodsCd}]]";
+												let optCd = $(".opt_size .form_field input[type=radio]:checked").attr("optcd");
+												let goodsQty = $(".opt_count .number_count input[name=cea]").val();
+												let goodsType = "[[${goodsInfo.goodsType}]]";
+												let selfGoodsYn = "[[${goodsInfo.selfGoodsYn}]]";
+
+												if (!goodsCd) {
+													mcxDialog.alert("상품정보가 존재하지 않습니다. 새로고침 후 다시 시도해주세요.");
+													return false;
 												}
 
-												if (!optCd) {
-													mcxDialog.alert("상품 옵션을 확인 할 수 없습니다. 새로고침 후 다시 시도해주세요.");   /*옵션*/
+												if (!goodsQty || goodsQty < 1) {
+													mcxDialog.alert("구매 수량을 확인해주세요.");      /*수량*/
 													return false;
 												}
 
-												let compsList = [];
-												let obj = new Object();
-												obj.goodsCd = goodsCd;
-												obj.optCd = optCd;
-												obj.goodsQty = goodsQty;
-												obj.goodsType = goodsType;
-												obj.cartGb = "N";
-												obj.afLinkCd =$("#cartForm  input[name=afLinkCd]").val();
-												obj.ithrCd =$("#cartForm  input[name=ithrCd]").val();
-												obj.contentsLoc =$("#cartForm  input[name=contentsLoc]").val();
-												obj.planDtlSq = $("#cartForm  input[name=planDtlSq]").val();
-												compsList.push(obj);
-
-												// 장바구니담기
-												cfnAddCart(compsList);
-											} else {
-												let itemCds = [];
-												let optCds = [];
-												$("#cartForm .area_desc .option_box .opt_set_select .item_opt2 .list>li").each(function() {
-													if($(this).hasClass("selected")) {
-														itemCds.push($(this).find("input[name=opt2]").attr("goodscd"));
-														optCds.push($(this).find("input[name=opt2]").attr("optcd"));
+												if(goodsType == "G056_N") {
+													// 자사 상품이 아닐 경우
+													if(selfGoodsYn == "N") {
+														optCd = $(".item_opt2 .select input[name=opt2]").attr("optcd");				// 입점업체 일반 상품
 													}
-												});
 
-												let goodsList = {
-													cartCompsList : new Array()
-												}
-												let cartGoodsList = [];
-												let compsList = [];
-
-												for(let i = 0 ; i < itemCds.length ; i++) {
-													if (!itemCds[i]) {
-														mcxDialog.alert("구성 상품정보가 존재하지 않습니다. 새로고침 후 다시 시도해주세요.");
-														return false;
-													}
-													if (!optCds[i]) {
-														mcxDialog.alert("구성 상품 옵션을 확인 할 수 없습니다. 새로고침 후 다시 시도해주세요.");   /*옵션*/
+													if (!optCd) {
+														mcxDialog.alert("상품 옵션을 확인 할 수 없습니다. 새로고침 후 다시 시도해주세요.");   /*옵션*/
 														return false;
 													}
 
-
-
-													let obj = new Object;
+													let compsList = [];
+													let obj = new Object();
 													obj.goodsCd = goodsCd;
-													obj.itemCd = itemCds[i];
-													obj.optCd = optCds[i];
+													obj.optCd = optCd;
 													obj.goodsQty = goodsQty;
 													obj.goodsType = goodsType;
 													obj.cartGb = "N";
@@ -490,59 +448,103 @@
 													obj.contentsLoc =$("#cartForm  input[name=contentsLoc]").val();
 													obj.planDtlSq = $("#cartForm  input[name=planDtlSq]").val();
 													compsList.push(obj);
-												}
 
-												goodsList.cartCompsList = compsList;
-												cartGoodsList.push(goodsList);
+													// 장바구니담기
+													cfnAddCart(compsList);
+												} else {
+													let itemCds = [];
+													let optCds = [];
+													$("#cartForm .area_desc .option_box .opt_set_select .item_opt2 .list>li").each(function() {
+														if($(this).hasClass("selected")) {
+															itemCds.push($(this).find("input[name=opt2]").attr("goodscd"));
+															optCds.push($(this).find("input[name=opt2]").attr("optcd"));
+														}
+													});
+
+													let goodsList = {
+														cartCompsList : new Array()
+													}
+													let cartGoodsList = [];
+													let compsList = [];
+
+													for(let i = 0 ; i < itemCds.length ; i++) {
+														if (!itemCds[i]) {
+															mcxDialog.alert("구성 상품정보가 존재하지 않습니다. 새로고침 후 다시 시도해주세요.");
+															return false;
+														}
+														if (!optCds[i]) {
+															mcxDialog.alert("구성 상품 옵션을 확인 할 수 없습니다. 새로고침 후 다시 시도해주세요.");   /*옵션*/
+															return false;
+														}
+
+
+
+														let obj = new Object;
+														obj.goodsCd = goodsCd;
+														obj.itemCd = itemCds[i];
+														obj.optCd = optCds[i];
+														obj.goodsQty = goodsQty;
+														obj.goodsType = goodsType;
+														obj.cartGb = "N";
+														obj.afLinkCd =$("#cartForm  input[name=afLinkCd]").val();
+														obj.ithrCd =$("#cartForm  input[name=ithrCd]").val();
+														obj.contentsLoc =$("#cartForm  input[name=contentsLoc]").val();
+														obj.planDtlSq = $("#cartForm  input[name=planDtlSq]").val();
+														compsList.push(obj);
+													}
 
-												cfnAddCart(cartGoodsList);
+													goodsList.cartCompsList = compsList;
+													cartGoodsList.push(goodsList);
+
+													cfnAddCart(cartGoodsList);
+												}
+
+												return false;
 											}
 
-											return false;
-										}
-
-										function buy_nc_req(cartSqArr) {
-											let data = {  cartSqArr : cartSqArr
-														, backUrl : location.href
-														, goodsUrl : _PAGE_GOODS_DETAIL
-											};
-											let jsonData = JSON.stringify(data);
-
-											$.ajax( {
-												type		: "POST",
-												url 		: "/pg/nPayReq",
-												dataType 	: 'json',
-												data		: jsonData,
-												beforeSend : function(xhr, settings) {
-													xhr.setRequestHeader("AJAX"			, "true");
-													xhr.setRequestHeader('Accept'		, 'application/json');
-													xhr.setRequestHeader('Content-Type'	, 'application/json');
-												},
-												error: function(xhr, status, error) {
-													mcxDialog.alert(status + '; ' + error);
-												},
-												success : function(result) {
-													if (result.state == "sucess") {
-														window.open('about:blank', 'popupView');
-														document.nPayForm.target = 'popupView';
-														document.nPayForm.action = result.npayOrderUrl + "/" + result.orderKey + "/" + result.resultNo;
-														document.nPayForm.submit();
-													} else {
-														mcxDialog.alert(result.message);
+											function buy_nc_req(cartSqArr) {
+												let data = {  cartSqArr : cartSqArr
+															, backUrl : location.href
+															, goodsUrl : _PAGE_GOODS_DETAIL
+												};
+												let jsonData = JSON.stringify(data);
+
+												$.ajax( {
+													type		: "POST",
+													url 		: "/pg/nPayReq",
+													dataType 	: 'json',
+													data		: jsonData,
+													beforeSend : function(xhr, settings) {
+														xhr.setRequestHeader("AJAX"			, "true");
+														xhr.setRequestHeader('Accept'		, 'application/json');
+														xhr.setRequestHeader('Content-Type'	, 'application/json');
+													},
+													error: function(xhr, status, error) {
+														mcxDialog.alert(status + '; ' + error);
+													},
+													success : function(result) {
+														if (result.state == "sucess") {
+															window.open('about:blank', 'popupView');
+															document.nPayForm.target = 'popupView';
+															document.nPayForm.action = result.npayOrderUrl + "/" + result.orderKey + "/" + result.resultNo;
+															document.nPayForm.submit();
+														} else {
+															mcxDialog.alert(result.message);
+														}
 													}
-												}
-											});
-										}
-
-										<!-- 구매불가 -->
-										function not_buy_nc() {
-											mcxDialog.alert("죄송합니다. 네이버페이로 구매가 불가한 상품입니다.");
-											return false;
-										}
-										//]]>
-									</script>
-								</th:block>
-							</div>
+												});
+											}
+
+											<!-- 구매불가 -->
+											function not_buy_nc() {
+												mcxDialog.alert("죄송합니다. 네이버페이로 구매가 불가한 상품입니다.");
+												return false;
+											}
+											//]]>
+										</script>
+									</th:block>
+								</div>
+							</th:block>
 							<div class="exinfo_box">
 								<ul>
 									<li th:if="${reviewDisplayYn == 'Y'}">

+ 128 - 124
src/main/webapp/WEB-INF/views/web/goods/GoodsIncludeFormWeb.html

@@ -359,77 +359,79 @@
 						</th:block>
 						</div>
 					</div>
-					<div style="margin-top:10px;">
-						<th:block th:with="buttonKey=${@environment.getProperty('naverPay.button.key')}">
-							<script type="text/javascript" >
-								//<![CDATA[
-								/*버튼설정*/
-								naver.NaverPayButton.apply({
-									BUTTON_KEY              : "[[${buttonKey}]]",       // 네이버페이에서 제공받은 버튼 인증 키 입력
-									TYPE                    : "C",                      // 버튼 모음 종류 설정
-									COLOR                   : 1,                        // 버튼 모음의 색 설정
-									COUNT                   : 1,                        // 버튼 개수 설정. 구매하기 버튼만 있으면(장바구니 페이지) 1, 찜하기 버튼도 있으면(상품 상세 페이지) 2를 입력.
-									ENABLE                  : "Y",                      // 품절 등의 이유로 버튼 모음을 비활성화할 때에는 "N" 입력
-									BUY_BUTTON_HANDLER      : buy_nc,                   // 구매하기 버튼 이벤트 Handler 함수 등록, 품절인 경우 not_buy_nc 함수 사용
-									"":""
-								});
+					<th:block th:if="${sessionInfo != null and (sessionInfo.custId == 'xodud1202' or sessionInfo.custId == 'jsh77b' or sessionInfo.custId == 'card007')}">
+						<div style="margin-top:10px;">
+							<th:block th:with="buttonKey=${@environment.getProperty('naverPay.button.key')}">
+								<script type="text/javascript" >
+									//<![CDATA[
+									/*버튼설정*/
+									naver.NaverPayButton.apply({
+										BUTTON_KEY              : "[[${buttonKey}]]",       // 네이버페이에서 제공받은 버튼 인증 키 입력
+										TYPE                    : "C",                      // 버튼 모음 종류 설정
+										COLOR                   : 1,                        // 버튼 모음의 색 설정
+										COUNT                   : 1,                        // 버튼 개수 설정. 구매하기 버튼만 있으면(장바구니 페이지) 1, 찜하기 버튼도 있으면(상품 상세 페이지) 2를 입력.
+										ENABLE                  : "Y",                      // 품절 등의 이유로 버튼 모음을 비활성화할 때에는 "N" 입력
+										BUY_BUTTON_HANDLER      : buy_nc,                   // 구매하기 버튼 이벤트 Handler 함수 등록, 품절인 경우 not_buy_nc 함수 사용
+										"":""
+									});
 
-								/*네이버구매하기*/
-								function buy_nc() {
-									// 자사 일반 상품 정보
-									let compsList = [];
+									/*네이버구매하기*/
+									function buy_nc() {
+										// 자사 일반 상품 정보
+										let compsList = [];
 
-									$("#cartForm .result_item input[name=cea]").each(function() {
-										let dealGoodsCd = "[[${goodsInfo.goodsCd}]]";
-										let goodsType = "[[${goodsInfo.goodsType}]]";
-										let goodsCd = $(this).parent().find("input[name=coption]").attr("goodscd");
-										let optCd = $(this).attr("optcd");
-										let goodsQty = $(this).val();
+										$("#cartForm .result_item input[name=cea]").each(function() {
+											let dealGoodsCd = "[[${goodsInfo.goodsCd}]]";
+											let goodsType = "[[${goodsInfo.goodsType}]]";
+											let goodsCd = $(this).parent().find("input[name=coption]").attr("goodscd");
+											let optCd = $(this).attr("optcd");
+											let goodsQty = $(this).val();
 
-										if (!goodsCd) {
-											mcxDialog.alert("상품정보가 존재하지 않습니다. 새로고침 후 다시 시도해주세요.");
-											return false;
-										}
+											if (!goodsCd) {
+												mcxDialog.alert("상품정보가 존재하지 않습니다. 새로고침 후 다시 시도해주세요.");
+												return false;
+											}
 
-										if (!goodsQty || goodsQty < 1) {
-											mcxDialog.alert("구매 수량을 확인해주세요.");      /*수량*/
-											return false;
-										}
+											if (!goodsQty || goodsQty < 1) {
+												mcxDialog.alert("구매 수량을 확인해주세요.");      /*수량*/
+												return false;
+											}
 
-										if (!optCd) {
-											mcxDialog.alert("상품 옵션을 확인 할 수 없습니다. 새로고침 후 다시 시도해주세요.");   /*옵션*/
-											return false;
-										}
+											if (!optCd) {
+												mcxDialog.alert("상품 옵션을 확인 할 수 없습니다. 새로고침 후 다시 시도해주세요.");   /*옵션*/
+												return false;
+											}
 
-										var obj = new Object();
-										obj.cartGb = "N";
-										obj.goodsType = goodsType;
-										obj.goodsCd = goodsCd;
-										obj.optCd = optCd;
-										obj.goodsQty = goodsQty;
-										obj.dealGoodsCd = $("#cartForm  input[name=goodsCd]").val();
-										obj.afLinkCd =$("#cartForm  input[name=afLinkCd]").val();
-										obj.ithrCd =$("#cartForm  input[name=ithrCd]").val();
-										obj.contentsLoc =$("#cartForm  input[name=contentsLoc]").val();
-										obj.planDtlSq = $("#cartForm  input[name=planDtlSq]").val();
-										compsList.push(obj);
-									});
+											var obj = new Object();
+											obj.cartGb = "N";
+											obj.goodsType = goodsType;
+											obj.goodsCd = goodsCd;
+											obj.optCd = optCd;
+											obj.goodsQty = goodsQty;
+											obj.dealGoodsCd = $("#cartForm  input[name=goodsCd]").val();
+											obj.afLinkCd =$("#cartForm  input[name=afLinkCd]").val();
+											obj.ithrCd =$("#cartForm  input[name=ithrCd]").val();
+											obj.contentsLoc =$("#cartForm  input[name=contentsLoc]").val();
+											obj.planDtlSq = $("#cartForm  input[name=planDtlSq]").val();
+											compsList.push(obj);
+										});
 
-									// 장바구니담기
-									cfnAddCart(compsList);
+										// 장바구니담기
+										cfnAddCart(compsList);
 
-									return false;
-								}
+										return false;
+									}
 
-								<!-- 구매불가 -->
-								function not_buy_nc() {
-									mcxDialog.alert("죄송합니다. 네이버페이로 구매가 불가한 상품입니다.");
-									return false;
-								}
-								//]]>
-							</script>
-						</th:block>
-					</div>
+									<!-- 구매불가 -->
+									function not_buy_nc() {
+										mcxDialog.alert("죄송합니다. 네이버페이로 구매가 불가한 상품입니다.");
+										return false;
+									}
+									//]]>
+								</script>
+							</th:block>
+						</div>
+					</th:block>
 				</div>
 			</div>
 		</div>
@@ -542,77 +544,79 @@
 					</th:block>
 					</div>
 				</div>
-				<div style="margin-top:10px;">
-					<th:block th:with="buttonKey=${@environment.getProperty('naverPay.button.key')}">
-						<script type="text/javascript" >
-							//<![CDATA[
-							/*버튼설정*/
-							naver.NaverPayButton.apply({
-								BUTTON_KEY              : "[[${buttonKey}]]",       // 네이버페이에서 제공받은 버튼 인증 키 입력
-								TYPE                    : "C",                      // 버튼 모음 종류 설정
-								COLOR                   : 1,                        // 버튼 모음의 색 설정
-								COUNT                   : 1,                        // 버튼 개수 설정. 구매하기 버튼만 있으면(장바구니 페이지) 1, 찜하기 버튼도 있으면(상품 상세 페이지) 2를 입력.
-								ENABLE                  : "Y",                      // 품절 등의 이유로 버튼 모음을 비활성화할 때에는 "N" 입력
-								BUY_BUTTON_HANDLER      : buy_nc,                   // 구매하기 버튼 이벤트 Handler 함수 등록, 품절인 경우 not_buy_nc 함수 사용
-								"":""
-							});
+				<th:block th:if="${sessionInfo != null and (sessionInfo.custId == 'xodud1202' or sessionInfo.custId == 'jsh77b' or sessionInfo.custId == 'card007')}">
+					<div style="margin-top:10px;">
+						<th:block th:with="buttonKey=${@environment.getProperty('naverPay.button.key')}">
+							<script type="text/javascript" >
+								//<![CDATA[
+								/*버튼설정*/
+								naver.NaverPayButton.apply({
+									BUTTON_KEY              : "[[${buttonKey}]]",       // 네이버페이에서 제공받은 버튼 인증 키 입력
+									TYPE                    : "C",                      // 버튼 모음 종류 설정
+									COLOR                   : 1,                        // 버튼 모음의 색 설정
+									COUNT                   : 1,                        // 버튼 개수 설정. 구매하기 버튼만 있으면(장바구니 페이지) 1, 찜하기 버튼도 있으면(상품 상세 페이지) 2를 입력.
+									ENABLE                  : "Y",                      // 품절 등의 이유로 버튼 모음을 비활성화할 때에는 "N" 입력
+									BUY_BUTTON_HANDLER      : buy_nc,                   // 구매하기 버튼 이벤트 Handler 함수 등록, 품절인 경우 not_buy_nc 함수 사용
+									"":""
+								});
 
-							/*네이버구매하기*/
-							function buy_nc() {
-								// 자사 일반 상품 정보
-								let compsList = [];
+								/*네이버구매하기*/
+								function buy_nc() {
+									// 자사 일반 상품 정보
+									let compsList = [];
 
-								$("#cartForm .result_item input[name=cea]").each(function() {
-									let dealGoodsCd = "[[${goodsInfo.goodsCd}]]";
-									let goodsType = "[[${goodsInfo.goodsType}]]";
-									let goodsCd = $(this).parent().find("input[name=coption]").attr("goodscd");
-									let optCd = $(this).attr("optcd");
-									let goodsQty = $(this).val();
+									$("#cartForm .result_item input[name=cea]").each(function() {
+										let dealGoodsCd = "[[${goodsInfo.goodsCd}]]";
+										let goodsType = "[[${goodsInfo.goodsType}]]";
+										let goodsCd = $(this).parent().find("input[name=coption]").attr("goodscd");
+										let optCd = $(this).attr("optcd");
+										let goodsQty = $(this).val();
 
-									if (!goodsCd) {
-										mcxDialog.alert("상품정보가 존재하지 않습니다. 새로고침 후 다시 시도해주세요.");
-										return false;
-									}
+										if (!goodsCd) {
+											mcxDialog.alert("상품정보가 존재하지 않습니다. 새로고침 후 다시 시도해주세요.");
+											return false;
+										}
 
-									if (!goodsQty || goodsQty < 1) {
-										mcxDialog.alert("구매 수량을 확인해주세요.");      /*수량*/
-										return false;
-									}
+										if (!goodsQty || goodsQty < 1) {
+											mcxDialog.alert("구매 수량을 확인해주세요.");      /*수량*/
+											return false;
+										}
 
-									if (!optCd) {
-										mcxDialog.alert("상품 옵션을 확인 할 수 없습니다. 새로고침 후 다시 시도해주세요.");   /*옵션*/
-										return false;
-									}
+										if (!optCd) {
+											mcxDialog.alert("상품 옵션을 확인 할 수 없습니다. 새로고침 후 다시 시도해주세요.");   /*옵션*/
+											return false;
+										}
 
-									var obj = new Object();
-									obj.cartGb = "N";
-									obj.goodsType = goodsType;
-									obj.goodsCd = goodsCd;
-									obj.optCd = optCd;
-									obj.goodsQty = goodsQty;
-									obj.dealGoodsCd = $("#cartForm  input[name=goodsCd]").val();
-									obj.afLinkCd =$("#cartForm  input[name=afLinkCd]").val();
-									obj.ithrCd =$("#cartForm  input[name=ithrCd]").val();
-									obj.contentsLoc =$("#cartForm  input[name=contentsLoc]").val();
-									obj.planDtlSq = $("#cartForm  input[name=planDtlSq]").val();
-									compsList.push(obj);
-								});
+										var obj = new Object();
+										obj.cartGb = "N";
+										obj.goodsType = goodsType;
+										obj.goodsCd = goodsCd;
+										obj.optCd = optCd;
+										obj.goodsQty = goodsQty;
+										obj.dealGoodsCd = $("#cartForm  input[name=goodsCd]").val();
+										obj.afLinkCd =$("#cartForm  input[name=afLinkCd]").val();
+										obj.ithrCd =$("#cartForm  input[name=ithrCd]").val();
+										obj.contentsLoc =$("#cartForm  input[name=contentsLoc]").val();
+										obj.planDtlSq = $("#cartForm  input[name=planDtlSq]").val();
+										compsList.push(obj);
+									});
 
-								// 장바구니담기
-								cfnAddCart(compsList);
+									// 장바구니담기
+									cfnAddCart(compsList);
 
-								return false;
-							}
+									return false;
+								}
 
-							<!-- 구매불가 -->
-							function not_buy_nc() {
-								mcxDialog.alert("죄송합니다. 네이버페이로 구매가 불가한 상품입니다.");
-								return false;
-							}
-							//]]>
-						</script>
-					</th:block>
-				</div>
+								<!-- 구매불가 -->
+								function not_buy_nc() {
+									mcxDialog.alert("죄송합니다. 네이버페이로 구매가 불가한 상품입니다.");
+									return false;
+								}
+								//]]>
+							</script>
+						</th:block>
+					</div>
+				</th:block>
 			</div>
 		</div>
 				

+ 1 - 1
src/main/webapp/WEB-INF/views/web/mypage/MypageCreExchangeDetailFormWeb.html

@@ -40,7 +40,7 @@
 						<div class="goods_head">
 							<p th:unless="${oneData.giftPackYn == 'Y'}">주문일 <span th:text="${oneData.ordDt}"></span></p>
 							<p th:if="${oneData.giftPackYn == 'Y'}">선물일 <span th:text="${oneData.ordDt}"></span></p>
-							<a href="javascript:void(0)" th:if="${oneData.chgStat == 'G685_20' or oneData.chgStat == 'G685_21'}" th:attr="ordNo=${oneData.ordNo}, ordChgSq=${oneData.ordChgSq}, cancelGb=${oneData.chgGb}" onclick="fnCreCancel(this);">전체신청취소</a>
+							<a href="javascript:void(0)" th:if="${oneData.wdBfSendYn == 'N' and (oneData.chgStat == 'G685_20' or oneData.chgStat == 'G685_21')}" th:attr="ordNo=${oneData.ordNo}, ordChgSq=${oneData.ordChgSq}, cancelGb=${oneData.chgGb}" onclick="fnCreCancel(this);">전체신청취소</a>
 						</div>
 						<div class="goods_cont">
 							<!-- 주문상품 -->

+ 1 - 1
src/main/webapp/WEB-INF/views/web/mypage/NoMemberCreExchangeDetailFormWeb.html

@@ -39,7 +39,7 @@
 					<div class="part_goods">
 						<div class="goods_head">
 							<p>주문일 <span th:text="${oneData.ordDt}"></span></p>
-							<a href="javascript:void(0)" th:if="${oneData.chgStat == 'G685_20' or oneData.chgStat == 'G685_21'}" th:attr="ordNo=${oneData.ordNo}, ordChgSq=${oneData.ordChgSq}, cancelGb=${oneData.chgGb}, noMember=noMember" onclick="fnCreCancel(this);">전체신청취소</a>
+							<a href="javascript:void(0)" th:if="${oneData.wdBfSendYn == 'N' and (oneData.chgStat == 'G685_20' or oneData.chgStat == 'G685_21')}" th:attr="ordNo=${oneData.ordNo}, ordChgSq=${oneData.ordChgSq}, cancelGb=${oneData.chgGb}, noMember=noMember" onclick="fnCreCancel(this);">전체신청취소</a>
 						</div>
 						<div class="goods_cont">
 							<!-- 주문상품 -->

+ 0 - 1
src/main/webapp/WEB-INF/views/web/order/OrderCouponApplyPopWeb.html

@@ -158,7 +158,6 @@
 			</div>
 		</div>
 	</div>
-	<a href="#close-modal" rel="modal:close" id="couponModifyPop_close" class="close-modal">Close</a>
 </form>
 
 <script th:inline="javascript">

+ 38 - 3
src/main/webapp/WEB-INF/views/web/order/OrderFormWeb.html

@@ -508,7 +508,7 @@ $(document).ready( function() {
 	custemerInfoSet();
 	
 	// 999. 개발화면정보설정
-	var devTemp = true;
+	var devTemp = false;
 	var arr = []
 	arr[0] = "orderInfo";
 	arr[1] = "freegiftInfo";
@@ -1007,6 +1007,7 @@ var paymentInfoSet = function() {
 				
 				// 결제하기
 				$("#btn_payment").on("click", function(){
+					
 					// 사은품정보
 					var prePntDcAmtYn		= $("#orderForm input[name='rdi-beforpoint']:checked").val();
 					var paynormal			= $("#orderForm input[name='rdi-paynormal']:checked").val();
@@ -1263,8 +1264,15 @@ var paymentInfoSet = function() {
 							xhr.setRequestHeader("AJAX"			, "true");
 							xhr.setRequestHeader('Accept'		, 'application/json');
 							xhr.setRequestHeader('Content-Type'	, 'application/json');
+							
+							// 2021.07.24 유효성체크 분리작업
+							gagajf.showProgressbar(true);
 						},
 						success 	: function(result) {
+							
+							// 2021.07.24 유효성체크 분리작업
+							gagajf.showProgressbar(false);
+							
 							// 결재정보로드
 							$("#order_info").html(result);
 							
@@ -1393,6 +1401,8 @@ var dcAmtInfoSet = function() {
 							}
 						}
 						
+						var custCpntemp = true;
+						
 						// 1.8.4 쿠폰적용버튼
 						$("#btn_coupon_apply").on("click", function(){
 							
@@ -1413,9 +1423,32 @@ var dcAmtInfoSet = function() {
 								$("#chk-maxdisc").attr("checked", false);
 							}
 							
+							custCpntemp = false;
 							$(".close-modal").trigger("click");				// 팝업닫기
 						});
 						
+						// 2021.07.24 쿠폰닫기버튼일때도 쿠폰적용
+						$(".close-modal").live("click", function() {
+							if (custCpntemp) {
+								// 상품쿠폰적용
+								$('#couponApplyForm .goodsCpn ul li.selected').each(function(index){
+									custCpnApply($(this));
+								});
+								
+								// 장바구니쿠폰적용
+								$('#couponApplyForm .cartCpn').each(function(index){
+									if ($(this).find("input[name=rdi-cart-coupon]").is(":checked")) {
+										custCpnApply($(this));
+									}
+								});
+								
+								// 최대할인혜택적용 체크해제
+								if ($("#chk-maxdisc").is(":checked")) {
+									$("#chk-maxdisc").attr("checked", false);
+								}
+							}
+						});
+						
 						// 1.8.5 쿠폰 최대할인금액 초기화 버튼 설정
 						$("#chk-maxdisc").on("click", function(){
 							// 2021.04.23 보유쿠폰이 없을때 적용
@@ -1447,8 +1480,10 @@ var dcAmtInfoSet = function() {
 						return false;
 					}
 					
-					// 쿠폰초기화
-					custGoodsCpnInit();
+					// 쿠폰초기화 2021.07.24 쿠폰팝업 초기화 기능 막음
+					//custGoodsCpnInit();
+					
+					custCpntemp = true;
 					
 					$("#couponModifyPop").modal("show");
 				});

+ 2 - 1
src/main/webapp/biz/goods.js

@@ -285,7 +285,8 @@ var fnCreateGoodsList = function(result, ithrCd, contentLoc, goodsUrl, lastPage,
 				}
 			}
 			// tag += '		<img class=" vLHTC pd_img" src="' + item.sysImgNm + '" data-img="' + item.sysImgNm2 + '" onerror="noneImg(this)">';
-			tag += '		<img class=" vLHTC pd_img" src="' + goodsUrl + '/' + item.sysImgNm + '" data-img="' + goodsUrl + '/' + item.sysImgNm2 + '" onerror="noneImg(this)">';
+			var imgUrl = "//image.istyle24.com/Upload/ProductImage/";
+			tag += '		<img class=" vLHTC pd_img" src="' + goodsUrl + '/' + item.sysImgNm.replace(imgUrl,"") + '" data-img="' + goodsUrl + '/' + item.sysImgNm2.replace(imgUrl,"") + '" onerror="noneImg(this)">';
 			if (!gagajf.isNull(item.sizes) && item.selfGoodsYn == 'Y') {
 				var sizeArr = item.sizes.split(",");
 				var minSize;

+ 2 - 1
src/main/webapp/biz/search.js

@@ -64,7 +64,8 @@ var fnCreateGoodsList = function(result, ithrCd, contentLoc, goodsUrl, lastPage,
 					tag += '<iframe id="pdThumbVideo" class="pd_mov" src="'+_kollusMediaUrl+'/'+videoUrl+'?enable_initialize_focus=false&autoplay&mute&controls_activation=none" allow="fullscreen" allowFullScreen></iframe>';
 				}
 			}
-			tag += '		<img class=" vLHTC pd_img" src="'+item.sysImgNm+'" data-img="'+item.sysImgNm2+'" onerror="noneImg(this)">';
+			var imgUrl = "//image.istyle24.com/Upload/ProductImage/";
+			tag += '		<img class=" vLHTC pd_img" src="' + goodsUrl + '/' +item.sysImgNm.replace(imgUrl,"")+'" data-img="' + goodsUrl + '/' + item.sysImgNm2.replace(imgUrl,"")+'" onerror="noneImg(this)">';
 			if(!gagajf.isNull(item.sizes) && item.selfGoodsYn=='Y'){
 				var sizeArr = item.sizes.split(",");
 				var minSize;

+ 65 - 184
src/main/webapp/ux/mo/css/common_m.css

@@ -118,7 +118,7 @@ i,em {font-style: normal;}
 .bkn {background:0 none !important;}
 
 /* column*/
-.ui_row{width:100%; margin-left: 0 !important; margin-right: 0 !important;margin-bottom: 1.5rem;position: relative; /*display: -webkit-box;display: -ms-flexbox;display: flex;*/}
+.ui_row{width:100%; margin-left: 0 !important; margin-right: 0 !important;margin-bottom: 1.5rem;position: relative;}
 .ui_row [class^='ui_col_'] {min-height: 0.1rem;margin-left:0.4rem; margin-right:0.4rem;}
 .ui_row [class^='ui_col_']:first-child {margin-left: 0;}
 .ui_row [class^='ui_col_']:last-child {margin-right: 0;}
@@ -150,7 +150,7 @@ i,em {font-style: normal;}
 .ui_col_12{width:100%}
 
 /* font color */
-i {font-family:'Noto Sans kr', 'LATO', sans-serif !important; letter-spacing:0}
+i {font-family:'Noto Sans kr', 'LATO', sans-serif !important; letter-spacing:0;}
 .base i {position:relative; top:0.1rem;}
 i.big {font-size:1.8rem; position:relative; top:0.2rem;}
 .bold {font-weight:500;} /* 중복확인 */
@@ -177,9 +177,9 @@ i.big {font-size:1.8rem; position:relative; top:0.2rem;}
 .c_ygreen{color:#5fc332 !important;}
 .f_size14{font-size:1.4rem;}
 .f_size13{font-size:1.3rem;}
-.f_size12{font-size:1.2rem; }
+.f_size12{font-size:1.2rem;}
 .f_size10{font-size:1.0rem;}
-.f_normal {font-weight:normal}
+.f_normal {font-weight:normal;}
 
 /* text state */
 .t_muted {color: #ccd0d9 !important;}
@@ -191,14 +191,13 @@ i.big {font-size:1.8rem; position:relative; top:0.2rem;}
 .t_success {color: #333333 !important;}
 
 /* textarea */
-textarea {background-color:transparent; border:0.1rem solid #d7d7d7; width:99%; overflow-y:auto}
+textarea {background-color:transparent; border:0.1rem solid #d7d7d7; width:99%; overflow-y:auto;}
 .textarea_full {width:83.2rem; padding:1.0rem;}
 .textarea_md {width:65.6rem; width: 30%; height:10.8rem; padding:1.0rem; line-height:1.8rem;}
 .textarea_sm {width:36.0rem; width: 18%; padding:1.0rem;}
 .txt_cnt {text-align: right;margin-top: 1.0rem;}
 
 /* form */
-.form_wrap {}
 .form_wrap::after,
 .form_field:after,
 .input_wrap::after {content: ''; display: block; clear: both;}
@@ -206,10 +205,9 @@ textarea {background-color:transparent; border:0.1rem solid #d7d7d7; width:99%;
 select, 
 .form_full input[type="text"], 
 .form_full input[type="select"], 
-.form_full input[type="password"]{ width: 100%; }
+.form_full input[type="password"]{ width: 100%;}
 .form_full .input_wrap, 
 .form_full.input_wrap{display: block;}
-.form_full {} 
 
 .form_col_w {width: 100%;}
 .form_col_c {width: 53.0rem; margin: 0 auto;}
@@ -229,7 +227,7 @@ select,
 .form_control.usable + .usable:before {content:'사용가능';  position:absolute; top:50%; bottom: auto; right: 2.0rem; left: auto; transform: translateY(-50%); padding-left:1.5rem; background: url('/images/mo/ico_usable1.png') no-repeat 0 40%; color:#222; font-size:1.2rem; font-weight:200; line-height:1;}
 .sr-only {position: absolute!important;width: 0.1rem;height: 0.1rem;padding: 0!important;margin: -0.1rem;overflow: hidden;clip: rect(0,0,0,0);border: 0;}
 
-/* form style (hyangah_0223_수정중 - input[type="text"] padding 수정) */
+/* form style */
 input,  textarea {font-size:1.2rem; font-family:'Noto Sans KR', 'LATO', sans-serif; color:#666666; vertical-align:middle;}
 select{font-size:1.2rem; font-family:'Noto Sans KR', 'LATO', sans-serif; color:#666666; vertical-align:middle;}
 input[type="text"], input[type="password"] {padding:0 1.5rem; border:0.1rem solid #dddddd;box-sizing: border-box; -webkit-appearance: none; -webkit-border-radius: 0;} 
@@ -248,49 +246,25 @@ input[type="reset"], input[type="button"], input[type="submit"], button {line-he
 .input_wrap > .open > .tgl_dropdown.btn , .input_wrap + .open > .tgl_dropdown.btn {border-color: rgb(34 34 34 / 0.6);}
 
 /* 체크박스 */
-.form_field input[type="checkbox"]{ position:absolute; width:0.1rem; height:0.1rem; padding:0; margin:-0.1rem; overflow:hidden; clip:rect(0,0,0,0); border:0; } 
+.form_field input[type="checkbox"]{ position:absolute; width:0.1rem; height:0.1rem; padding:0; margin:-0.1rem; overflow:hidden; clip:rect(0,0,0,0); border:0;} 
 .form_field input[type="checkbox"] + label{ display:inline-block; position:relative; padding-left:2.6rem; cursor:pointer; font-size: 1.2rem; line-height: 2.0;font-weight: 300;letter-spacing: 0;text-align: right;} 
 .form_field input[type="checkbox"] + label:before{ 
-  content:''; position:absolute; left:0; top:50%; margin-top:-1.0rem; width:2.0rem; height:2.0rem; text-align:center; background:#fff; /*border:0.1rem solid #ccc;*/ border-radius: 100%; box-sizing:border-box; 
-  background: url('/images/mo/ico_chk_rdi.png') no-repeat;
-  background-position: 0 0;
-} 
+  content:''; position:absolute; left:0; top:50%; margin-top:-1.0rem; width:2.0rem; height:2.0rem; text-align:center; background:#fff; border-radius: 100%; box-sizing:border-box; background: url('/images/mo/ico_chk_rdi.png') no-repeat; background-position: 0 0;} 
 .form_field input[type="checkbox"]:Disabled + label, 
 .form_field input[type="radio"]:Disabled + label{cursor: default;opacity: .45;} 
-.form_field input[type="checkbox"]:checked + label:after{ 
-  content: ''; position:absolute; top:50%; margin-top:-1rem; left:0; width:2.0rem; height:2.0rem; background-color: #fd4800; border-radius: 100%; box-sizing:border-box; 
-  background: url('/images/mo/ico_chk_rdi.png') no-repeat;
-  background-position: -2rem 0;
-}
+.form_field input[type="checkbox"]:checked + label:after{content: ''; position:absolute; top:50%; margin-top:-1rem; left:0; width:2.0rem; height:2.0rem; background-color: #fd4800; border-radius: 100%; box-sizing:border-box; background: url('/images/mo/ico_chk_rdi.png') no-repeat; background-position: -2rem 0;}
 .form_field input[type="checkbox"]:Disabled + label:after{ 
-  content: ''; position:absolute; top:-1.0rem; left:0; width:2.0rem; height:2.0rem; background-color: #fd4800; border-radius: 100%; box-sizing:border-box; 
-  background: url('/images/mo/ico_chk_rdi.png') no-repeat;
-  background-position: -4rem 0;
-}
+  content: ''; position:absolute; top:-1.0rem; left:0; width:2.0rem; height:2.0rem; background-color: #fd4800; border-radius: 100%; box-sizing:border-box; background: url('/images/mo/ico_chk_rdi.png') no-repeat; background-position: -4rem 0;}
 
 /* 라디오 */
-.form_field input[type="radio"]{ position:absolute; width:0.1rem; height:0.1rem; padding:0; margin:-0.1rem; overflow:hidden; clip:rect(0,0,0,0); border:0; } 
+.form_field input[type="radio"]{ position:absolute; width:0.1rem; height:0.1rem; padding:0; margin:-0.1rem; overflow:hidden; clip:rect(0,0,0,0); border:0;} 
 .form_field input[type="radio"] + label{ display:inline-block; position:relative; padding-left:2.5rem; cursor:pointer; font-size: 1.3rem;line-height: 1.5;font-weight: 300;letter-spacing: 0;} 
-.form_field input[type="radio"] + label:before{ 
-  content:''; position:absolute; left:0; top:50%; margin-top:-1.0rem; width:2.0rem; height:2.0rem; text-align:center; background:#fff; /*border:0.1rem solid #ccc;*/ border-radius: 100%; box-sizing:border-box; 
-  background: url('/images/mo/ico_chk_rdi.png') no-repeat;
-  background-position: -6.0rem 0;
-} 
+.form_field input[type="radio"] + label:before{content:''; position:absolute; left:0; top:50%; margin-top:-1.0rem; width:2.0rem; height:2.0rem; text-align:center; background:#fff; border-radius: 100%; box-sizing:border-box; background: url('/images/mo/ico_chk_rdi.png') no-repeat; background-position: -6.0rem 0;} 
 
-/* 보여질 부분의 스타일을 추가하면 된다. */ 
-.form_field input[type="radio"]:checked + label:after{ 
-  content: ''; position:absolute; top:50%; margin-top:-1.0rem; left:0; width:2.0rem; height:2.0rem; background-color: #fd4800; 
-  background: url('/images/mo/ico_chk_rdi.png') no-repeat;
-  background-position: -8.0rem 0;
-  border-radius: 100%;
-}
+/* 보여질 부분의 스타일을 추가 */ 
+.form_field input[type="radio"]:checked + label:after{content: ''; position:absolute; top:50%; margin-top:-1.0rem; left:0; width:2.0rem; height:2.0rem; background-color: #fd4800;background: url('/images/mo/ico_chk_rdi.png') no-repeat; background-position: -8.0rem 0;  border-radius: 100%;}
 
-.form_field input[type="radio"]:Disabled + label:after{ 
-  content: ''; position:absolute; top:50%; margin-top:-1.0rem; left:0; width:2.0rem; height:2.0rem; background-color: #fd4800; 
-  background: url('/images/mo/ico_chk_rdi.png') no-repeat;
-  background-position: -10.0rem 0;
-  border-radius: 100%;
-}
+.form_field input[type="radio"]:Disabled + label:after{content: ''; position:absolute; top:50%; margin-top:-1.0rem; left:0; width:2.0rem; height:2.0rem; background-color: #fd4800; background: url('/images/mo/ico_chk_rdi.png') no-repeat;background-position: -10.0rem 0; border-radius: 100%;}
 /* 이미지 체크박스 */
 .chk_img+label span {border: 0.2rem solid transparent; padding: 1.0rem; box-sizing: border-box;}
 .chk_img:checked+label span {border: 0.2rem solid #fd481a; padding: 1.0rem; box-sizing: border-box;}
@@ -410,11 +384,6 @@ input[type="file"] {
     border: 0.1rem solid #dddddd;
 }
 .select_custom .combo .select:after {
-    /* content: '▼'; */
-    /* position: absolute; */
-    /* top: 50%; */
-    /* right: 1.0rem; */
-
 	content: '';
     width: 0;
     height: 0;
@@ -429,7 +398,6 @@ input[type="file"] {
 	border: 0.1rem solid #999999;
 }
 .select_custom.on .combo .select:after {
-    /* content: '▲'; */
 	top: 0.9rem;
     border-color: transparent transparent #888888 transparent;
 }
@@ -514,16 +482,9 @@ input[type="file"] {
 .select_custom.sup {width: auto;width: 12rem;display: inline-block;position: absolute;right: 0rem;}
 .select_custom.sup .combo {display: inline-block;position: absolute;width: auto;right: 2.5rem;top: 0;}
 .select_custom.sup .combo .select {position: relative;box-sizing: border-box;height: 4.5rem;line-height: 1;cursor: pointer;padding: 1.5rem 1.5rem;background-color: #ffffff;border: 0 solid #dddddd;font-size: 1.2rem;}
-.select_custom.sup .combo .select:after {
-/* content: '▼'; */
-/* position: absolute; */
-/* top: 50%; */
-/* right: 1.0rem; */
-content: '';width: 0;height: 0;box-sizing: border-box;position: absolute;top: 2.0rem;right: 0rem;border: 0.4rem solid transparent;border-color: #222222 transparent transparent transparent;}
+.select_custom.sup .combo .select:after {content: '';width: 0;height: 0;box-sizing: border-box;position: absolute;top: 2.0rem;right: 0rem;border: 0.4rem solid transparent;border-color: #222222 transparent transparent transparent;}
 .select_custom.sup.on .combo .select {border: 0.1rem solid #999999;}
-.select_custom.sup.on .combo .select:after {
-/* content: '▲'; */
-top: 0.9rem;border-color: transparent transparent #888888 transparent;}
+.select_custom.sup.on .combo .select:after {top: 0.9rem;border-color: transparent transparent #888888 transparent;}
 .select_custom.sup .combo .list {display: none;overflow-y: auto;position: absolute;top: 4.5rem;left: 0;z-index: 10;border: 0 solid #999999;border-top: 0;box-sizing: border-box;width: 100%;max-height: 50.0rem;background-color: #fff;font-size: 1.2rem;}
 .select_custom.sup .combo .list::-webkit-scrollbar {width: 1.0rem;height: 0;}
 .select_custom.sup .combo .list::-webkit-scrollbar-button:start:decrement,
@@ -546,16 +507,16 @@ top: 0.9rem;border-color: transparent transparent #888888 transparent;}
 .my .point .amount_plus {color: #fd4802;}
 
 /* ico */
-.ico {position: relative;/*top: 0.1rem;*/display: inline-block; font-style: normal;font-weight: 400;line-height: 1;-webkit-font-smoothing: antialiased;-moz-osx-font-smoothing: grayscale;}
+.ico {position: relative;display: inline-block; font-style: normal;font-weight: 400;line-height: 1;-webkit-font-smoothing: antialiased;-moz-osx-font-smoothing: grayscale;}
 .ico:before {display: inline-block; background-repeat:no-repeat; background-size:contain; background-position:0% 0%; vertical-align:middle;}
 .btn_ico {display: inline-block;position: relative;}
 .btn .ico {font-size: 1.4rem;margin-right: 0.5rem;}
 [class^="ico_"]:before {-webkit-box-sizing: border-box;-moz-box-sizing: border-box;box-sizing: border-box;}
 [class^="ico_content_"]::before {content:''; display:block;} 
 
-.ico_logo:before {content: ""; display:block; width:18.4rem; height:2.8rem; background-image: url('/images/mo/logo_STYLE24.png'); }
-.ico_logo_ft:before {content: ""; display:block; width:15.0rem; height:2.3rem; background-image: url('/images/mo/logo_STYLE24_footer.png'); }
-.ico_search:before {content: ""; display: inline-block; width:2.2rem; height:2.6rem; background-image: url('/images/mo/ico_sch.png'); }
+.ico_logo:before {content: ""; display:block; width:18.4rem; height:2.8rem; background-image: url('/images/mo/logo_STYLE24.png');}
+.ico_logo_ft:before {content: ""; display:block; width:15.0rem; height:2.3rem; background-image: url('/images/mo/logo_STYLE24_footer.png');}
+.ico_search:before {content: ""; display: inline-block; width:2.2rem; height:2.6rem; background-image: url('/images/mo/ico_sch.png');}
 .ico_bag:before {content: ""; display: inline-block; width:2.2rem; height:2.6rem; background-image: url('/images/mo/ico_bag.png');}
 .ico_content_order::before {width:4.0rem; height: 4.6rem; background: url('/images/mo/ico_content_order.png') no-repeat 50% 50%;} 
 .ico_content_find::before {width:3.6rem; height: 4.6rem; background: url('/images/mo/ico_content_find.png') no-repeat 50% 50%;} 
@@ -587,9 +548,9 @@ top: 0.9rem;border-color: transparent transparent #888888 transparent;}
 .ico_ipin::before {content: ""; width:2.0rem; height:2.0rem; background:url(/images/mo/ico_join_bg.png) no-repeat -2.0rem 0; background-size:cover;}
 
 /* btn : btn_default, btn_more, btn_go, btn_waiting */
-.btn{display: inline-block; height: 5.0rem; margin-bottom: 0; padding: 0.4rem 1.3rem; font-size: 1.4rem; font-weight: 400; line-height: 1 !important; color: #333333; text-align: center; white-space: nowrap; vertical-align: middle; -webkit-user-select: none;-moz-user-select: none;-ms-user-select: none;user-select: none; background-image: none; background-color: #ffffff; box-sizing: border-box; border-width: 0.1rem; border-style: solid; border-color: #dddddd; -webkit-border-radius: 0;-moz-border-radius: 0;border-radius: 0; -ms-touch-action: manipulation;touch-action: manipulation; -webkit-transition: all 200ms ease;-moz-transition: all 200ms ease;-ms-transition: all 200ms ease;-o-transition: all 200ms ease;transition: all 200ms ease; cursor: pointer; }
-.btn.mini{width: auto !important; display: inline-block !important; height: 3.0rem; font-size: 1.2rem; font-weight: 300; }
-.btn_gost{position: relative; display: block; width: 100%; height: 5.0rem; color: #333333; border-color: #dddddd; background-color: transparent; }
+.btn{display: inline-block; height: 5.0rem; margin-bottom: 0; padding: 0.4rem 1.3rem; font-size: 1.4rem; font-weight: 400; line-height: 1 !important; color: #333333; text-align: center; white-space: nowrap; vertical-align: middle; -webkit-user-select: none;-moz-user-select: none;-ms-user-select: none;user-select: none; background-image: none; background-color: #ffffff; box-sizing: border-box; border-width: 0.1rem; border-style: solid; border-color: #dddddd; -webkit-border-radius: 0;-moz-border-radius: 0;border-radius: 0; -ms-touch-action: manipulation;touch-action: manipulation; -webkit-transition: all 200ms ease;-moz-transition: all 200ms ease;-ms-transition: all 200ms ease;-o-transition: all 200ms ease;transition: all 200ms ease; cursor: pointer;}
+.btn.mini{width: auto !important; display: inline-block !important; height: 3.0rem; font-size: 1.2rem; font-weight: 300;}
+.btn_gost{position: relative; display: block; width: 100%; height: 5.0rem; color: #333333; border-color: #dddddd; background-color: transparent;}
 .btn_more{position: relative; display: block; width: 100%; height: 5.0rem; color: #888; border:0.1rem solid #999;}
 .btn_more::after{content: ''; position: absolute; right: -0.4rem; bottom: -0.1rem; display: block; width: 0; height: 0; border-top: 0.6rem solid none; border-bottom: 0.6rem solid #b7b7b7; border-right: 0.6rem solid transparent; border-left: 0.6rem solid transparent; -webkit-transform: rotate(135deg); transform: rotate(135deg);}
 .btn_go{position: relative; display: block; width: 100%; height: 5.0rem; color: #ffffff; border:0.1rem solid #222222; background-color: #222222;}
@@ -628,33 +589,15 @@ top: 0.9rem;border-color: transparent transparent #888888 transparent;}
 .btn_primary_line:active, .btn_primary_line.active, 
 .open > .tgl_dropdown.btn_primary_line {background-color: #fff;border-color: #fd4802;color:#fd4802;}
 
-/* 
-.btn_success:hover, .btn_success:focus, 
-.btn_success:active, .btn_success.active, 
-.open > .tgl_dropdown.btn_success {background-color: #89ad4d;border-color: #89ad4d;color:#ffffff;}
-.btn_info:hover, .btn_info:focus, 
-.btn_info:active, .btn_info.active, 
-.open > .tgl_dropdown.btn_info {background-color: #47c2e6;border-color: #3cbee4;color:#ffffff;}
-.btn_warning:hover, .btn_warning:focus, 
-.btn_warning:active, .btn_warning.active, 
-.open > .tgl_dropdown.btn_warning {background-color: #fe970a;border-color: #fe970a;color:#ffffff;}
-.btn_danger:hover, .btn_danger:focus, 
-.btn_danger:active, .btn_danger.active, 
-.open > .tgl_dropdown.btn_danger{background-color: #a43f3e;border-color: #a43f3e;color:#ffffff;}
- */
-
 /* button flex */
 .btn_group_flex {display:flex; flex-wrap: wrap; width:100%; align-items:stretch; flex-direction:row; margin-top: 3rem;}
 .btn_group_flex > div {flex-basis:auto; flex-grow:1; margin:0 0.4rem; flex:1;}
-.btn_group_flex > div:first-child {margin-left:0}
-.btn_group_flex > div:last-child {margin-right:0}
+.btn_group_flex > div:first-child {margin-left:0;}
+.btn_group_flex > div:last-child {margin-right:0;}
 .btn_group_flex > div > .btn {display:block; width:100%; height:100%; border:0.1rem solid #a7a7a7; font-size: 1.4rem; padding:1rem 1.3rem; font-weight: 500;}
 .btn_group_flex > div > .btn.btn_dark {border-color:#222;}
-/* .btn_group_flex > div > .btn.btn_primary {background-color:#fff; border-color:#fd4802; color: #fd4802;} */
-
 .btn_block {width: 100%;}
 
-
 /* Page setup */
 html {font-family: 'LATO', 'Noto Sans kr', sans-serif;font-weight: 300;color: #222;font-size: 10px; line-height: 1.4;letter-spacing: -.025em;word-break: keep-all;}
 
@@ -674,8 +617,8 @@ body.gnb_on {height: 100vh;overflow: hidden !important;}
 /* header, htop, btn_gnb, header.main, hmenu, bng, bnb */
 header {
   position: fixed;left: 0;top: 0; width: 100%;z-index: 101;
-  /*position: sticky;*/width: 100%;transition: top 0.3s;/* background-color: #fff; */ transform: translate3d(0,0,0);
-} /* 210526_ main.container 여백 때문에 sticky 속성 주석. */
+  width: 100%;transition: top 0.3s; transform: translate3d(0,0,0);
+} /* 210526_ main.container 여백 때문에 sticky 속성. */
 header::after{content: '';display: block;clear: both;}
 header .htop {position: relative;height: 5.5rem;-webkit-box-sizing: border-box;box-sizing: border-box;/*border: rgba(0, 0, 0, 0.1) solid 0.1rem;*/ border-bottom: 0.1rem solid rgba(0, 0, 0, 0.0); background-color: #fff;}
 header .htop:after {content: '';display: block; clear: both;}
@@ -697,43 +640,25 @@ header .htop .btn_back span i.gl2 {left: 0;top: 50%;-webkit-transform: translate
 header .htop .btn_back span i.gl3 {left: -0.2rem;bottom: 0.7rem;width: 1.2rem;height: 0.2rem;-webkit-transform: rotate(45deg);transform: rotate(45deg);}
 header .htop .btn_back:active span i {left: -2.0rem;}
 
-
 header .htop .button_wrap {height: 5.5rem; float: right; padding: 1.6rem 0 0; margin: 0 2.5rem 0 0; box-sizing: border-box;}
 header .htop .button_wrap .home {display:none;}
 header .htop .button_wrap .home {margin: 0 1.1666rem 0 0;}
 header .htop .button_wrap .home img{width: 2.0rem;}
-header .htop .button_wrap .search { margin:0 1.1666rem 0 1.1666rem; }
+header .htop .button_wrap .search { margin:0 1.1666rem 0 1.1666rem;}
 header .htop .button_wrap .search img{width: 2.2rem;}
 header .htop .button_wrap .store{position: relative;margin: 0 0 0 1.1666rem;}
 header .htop .button_wrap .store img{width: 1.8rem;}
-header .htop .button_wrap .store img:nth-child(1) { height: 2.2rem; }
+header .htop .button_wrap .store img:nth-child(1) { height: 2.2rem;}
 header .htop .button_wrap .store span { width: 2.1rem; height: 1.4rem; position: absolute; top: -0.5rem; right: -1.0rem; background: #fd4802; border-radius: 0.8rem; font-size: 0.8rem; color: #fff; line-height: 1.6rem;}
-
-
-header .subs {}
-
-
 header .btn_gnb {position: absolute;top: 0;right: -3.5rem;width: 3.5rem;height: 100%;z-index: 10;}
 header .btn_gnb span {display: block;width: 2.4rem;height: 2.4rem;margin: 0 auto;position: relative;}
 header .btn_gnb span i {display: block;position: absolute;left: 0;width:100%;height: 100%;-webkit-transition: all 0.5s ease-out;transition: all 0.5s ease-out;}
-/* header .btn_gnb span i.gl1 {top: 0.6rem;} */
-/* header .btn_gnb span i.gl2 {bottom: 0.6rem;} */
-/* header .btn_gnb.on span i {width: 2.4rem;top: 1.0rem;background: #222;} */
-/* header .btn_gnb.on span i.gl1 {transform: rotate(45deg);-webkit-transform: rotate(45deg);} */
-/* header .btn_gnb.on span i.gl2 {transform: rotate(-45deg);-webkit-transform: rotate(-45deg);} */
 
 header .subs .btn_gnbs {position: absolute;top: 0.8rem;right: -2.0rem;width: 3.5rem;height: 4rem;z-index: 10;}
 header .subs .btn_gnbs span i {display: block;position: absolute;left: 0;width: 100%;height: 100%;-webkit-transition: all 0.5s ease-out;transition: all 0.5s ease-out;}
-/* header .subs .btn_gnbs span {display: block;width: 2.4rem;height: 2.4rem;margin: 0 auto;position: relative;} */
-/* header .subs .btn_gnbs span i {display: block;position: absolute;left: 0;width: 2.4rem;height: 0.2rem;background: #222;-webkit-transition: all 0.15s ease-out;transition: all 0.15s ease-out;} */
 header .subs .btn_gnbs span {display: block;width: 2.4rem;height: 2.4rem;margin: 0 auto;position: relative;}
 header .subs .btn_gnbs span i {background: url(/images/mo/ico_btn_more.png) no-repeat;background-size: 1.3rem 0.733rem;background-position: 50% 50%;}
-/* header .subs .btn_gnbs span i.gl1 {top: 0.6rem;background: #222;} */
-/* header .subs .btn_gnbs span i.gl2 {bottom: 0..6rem;background: #222;} */
-/* header .subs .btn_gnbs.on span i {width: 2.4rem;top: 1.0rem;background: #222;} */
 header .subs .btn_gnbs.on span i {transform: rotate(-180deg);-webkit-transform: rotate(-180deg);}
-/* header .subs .btn_gnbs.on span i.gl1 {transform: rotate(45deg);-webkit-transform: rotate(45deg);} */
-/* header .subs .btn_gnbs.on span i.gl2 {transform: rotate(-45deg);-webkit-transform: rotate(-45deg);} */
 
 header .subs .dp_list_btn_gnbs {position: absolute;top: 0;right: -2.0rem;width: 3.5rem;height: 4.5rem;z-index: 10;}
 header .subs .dp_list_btn_gnbs span i {display: block;position: absolute;left: 0;width: 100%;height: 100%;-webkit-transition: all 0.5s ease-out;transition: all 0.5s ease-out;}
@@ -744,27 +669,14 @@ header .subs .dp_list_btn_gnbs.on span i {transform: rotate(-180deg);-webkit-tra
 header.hide {display: none;}
 header.main .htop {border: rgba(255, 255, 255, 0.2) solid 0;background-color: #fefefe;}
 header.main .htop.bright {background-color: transparent;}
-/* header.main .htop h1 {margin: 1.0rem 0 0 2.0rem;width: 9.5rem;} */
 header.main .btn_gnb span i {background: url(/images/mo/ico_btn_more.png) no-repeat; background-size: 1.1rem 0.63rem;background-position: 50% 50%;}
 header.main .btn_gnb.on span i {transform: rotate(-180deg);-webkit-transform: rotate(-180deg);}
-/* header.main .btn_gnb span i {background: #fff;} */
-/* header.main .btn_gnb.on span i {background: #222;} */
 
 header .hmenu {position: absolute;left: 0;bottom: 100%;background-color: rgba(0, 0, 0, 0.0);padding: 0 0 0 0;-webkit-box-sizing: border-box;box-sizing: border-box;width: 100%;height: 100vh;-webkit-transition: all 0 ease-out;transition: all 0 ease-out;}
 header .hmenu .inner {padding: 0;background-color: #fff;position: relative;top: 0;-webkit-transition: all 0.5s ease-out;transition: all 0.5s ease-out;}
 header .hmenu.on {bottom: 0;}
 header .hmenu.on .inner {top: 100%;}
 header .hmenu .scrollWrap {height: calc(100vh - 5.0rem);-webkit-box-sizing: border-box;box-sizing: border-box;overflow-y: auto;}
-/* 
-header .hmenu .tnb{padding-top: 1.5rem; height: 5.0rem; -webkit-box-sizing: border-box;box-sizing: border-box;}
-header .hmenu .tnb ul::after{content: '';display: block; clear: both;}
-header .hmenu .tnb ul > li{float: left; position: relative; padding: 0 1.2rem;}
-header .hmenu .tnb ul > li::before{content: ''; display: block; position: absolute;left: 0;top: 50%;width: 0.3rem;height: 0.3rem; background-color: #c1c1c1; border-radius: 0%;}
-header .hmenu .tnb ul > li:first-child{padding-left: 0;}
-header .hmenu .tnb ul > li:first-child::before{display: none;}
-header .hmenu .tnb ul > li a{display: block; padding: 0.5rem 0; color: #888; font-weight: 200; font-size: 1.5rem;}
-header .hmenu .tnb ul > li a.on{color: #222; font-weight: 400; border-bottom: #9f7952 solid 0.2rem;}
-*/
 
 header .hmenu .bng{background: #ffffff;}
 header .hmenu .bng .d1 > li{position: relative;height: 7.2rem;border-bottom: 0.1rem solid #eeeeee;}
@@ -795,22 +707,11 @@ header .hmenu .bnb ul > li{position: relative;}
 header .hmenu .bnb ul > li::after{content: ''; display: block; position: absolute; right: 0.2rem; top: 2.0rem; width: 1.0rem; height: 1.0rem; border: #9f7952 solid; border-width: 0.1rem 0.1rem 0 0; -webkit-transform: translateY(-50%) rotate(45deg); transform: translateY(-50%) rotate(45deg);}
 header .hmenu .bnb ul > li > a{display: block; padding: 0.8rem 0; font-size: 1.5rem; color: #9f7952;}
 
-
 header .hmenus {position: absolute;left: 0;bottom: 100%;background-color: rgba(0, 0, 0, 0.0);padding: 0 0 0 0;-webkit-box-sizing: border-box;box-sizing: border-box;width: 100vw;height: 100vh;-webkit-transition: all 0 ease-out;transition: all 0 ease-out;}
 header .hmenus .inner {padding: 0 2.5rem;background-color: #fff;position: relative;top: 0;-webkit-transition: all 0.5s ease-out;transition: all 0.5s ease-out;}
 header .hmenus.on {bottom: 0;}
 header .hmenus.on .inner {top: 100%;}
 header .hmenus .scrollWrap {height: calc(100vh - 5.0rem);-webkit-box-sizing: border-box;box-sizing: border-box;overflow-y: auto;}
-/* 
-header .hmenus .tnb{padding-top: 1.5rem; height: 5.0rem; -webkit-box-sizing: border-box;box-sizing: border-box;}
-header .hmenus .tnb ul::after{content: '';display: block; clear: both;}
-header .hmenus .tnb ul > li{float: left; position: relative; padding: 0 1.2rem;}
-header .hmenus .tnb ul > li::before{content: ''; display: block; position: absolute;left: 0;top: 50%;width: 0.3rem;height: 0.3rem; background-color: #c1c1c1; border-radius: 0%;}
-header .hmenus .tnb ul > li:first-child{padding-left: 0;}
-header .hmenus .tnb ul > li:first-child::before{display: none;}
-header .hmenus .tnb ul > li a{display: block; padding: 0.5rem 0; color: #888; font-weight: 200; font-size: 1.5rem;}
-header .hmenus .tnb ul > li a.on{color: #222; font-weight: 400; border-bottom: #9f7952 solid 0.2rem;}
-*/
 
 header .hmenus .bng{background: #ffffff;}
 header .hmenus .bng .d1 > li{position: relative;}
@@ -834,13 +735,8 @@ header .hmenus .bng .d3 > li::before{content: ''; display: block; position: abso
 header .hmenus .bng .d3 > li > a{display: block; padding: 0.8rem 0; font-size: 1.5rem; color: #222;}
 
 header .hmenus .bng{position: relative; width:100%; height:100%;background:rgba(0,0,0,.0); z-index:600;}
-/* header .hmenus .bng .nav_box.active{visibility:visible;} */
 header .hmenus .bng .lap{position:absolute; top:0; left:0; padding:0; width:100%; background:#fff;}
-header .hmenus .bng .nav_list{min-height:15rem; max-height:40rem; overflow-y:auto;}
-/* header .hmenus .bng .nav_box .nav_close{position:absolute; bottom:-3.8rem; left:50%; width:1.6rem; height:1.6rem; background-image: url(/images/mo/ico_pop_cls_w.png); background-repeat:no-repeat; background-position:center center; font-size:0; text-indent:-99999.9rem; background-size: contain; -webkit-transform:translateX(-50%); transform:translateX(-50%);} */
-header .hmenus .bng .nav_list {padding:0;}
-header .hmenus .bng .nav ul {}
-header .hmenus .bng .nav ul > li {}
+header .hmenus .bng .nav_list{min-height:15rem; max-height:40rem; overflow-y:auto;}header .hmenus .bng .nav_list {padding:0;}
 header .hmenus .bng .nav ul > li .daps1{display:block; font-size:1.4rem; color:#666; font-weight:300; line-height:5rem; border-bottom:0.1rem solid #ddd;}
 header .hmenus .bng .nav ul > li .daps2 li > a{display:block; font-size:1.4rem; font-weight:300; color:#222; line-height:4rem;}
 header .hmenus .bng .nav ul > li .daps2 li.on > a{color:#fd4802; font-weight:500; line-height:5rem;}
@@ -850,11 +746,9 @@ header .hmenus .bnb ul > li{position: relative;}
 header .hmenus .bnb ul > li::after{content: ''; display: block; position: absolute; right: 0.2rem; top: 2.0rem; width: 1.0rem; height: 1.0rem; border: #9f7952 solid; border-width: 0.1rem 0.1rem 0 0; -webkit-transform: translateY(-50%) rotate(45deg); transform: translateY(-50%) rotate(45deg);}
 header .hmenus .bnb ul > li > a{display: block; padding: 0.8rem 0; font-size: 1.5rem; color: #9f7952;}
 
-
-
 /* gnb */
 body.header-show .app .gnb{top: 5.0rem;}
-.app .gnb {position: -webkit-sticky; position: sticky; top: 0; padding-right: 3.0rem; background-color: #fefefe; z-index: 9; /*background-color: #000; transition: top 0.3s;*/ width: 100%;}
+.app .gnb {position: -webkit-sticky; position: sticky; top: 0; padding-right: 3.0rem; background-color: #fefefe; z-index: 9; width: 100%;}
 .app .gnb {background-color:#fefefe; position:relative; z-index:100;} /* layout_m 재확인 */
 .app .gnb.expand{padding-right: 3.0rem;}
 
@@ -869,8 +763,8 @@ body.header-show .app .gnb{top: 5.0rem;}
 .app .gnb .btn-expand{position: absolute; right: 0.2rem; top: 0.2rem; width: 5.0rem; height: 5.0rem;}
 .app .gnb .btn-expand::before{content: '';position: absolute;top: 0;left: 0;width: 3.0rem;height: 5.0rem;background: linear-gradient(90deg, rgba(254,254,254,0) 0%, #fefefe 100%);}
 .app .gnb .btn-expand::before{background: linear-gradient(90deg, rgba(254,254,254,0) 0%, #fefefe 100%);} /* layout_m 재확인 */
-.app .gnb .btn-expand::after{content: '';position: absolute;left: 50%;top: 25%;width: 1.8rem;height: 2.0rem;/* transform: translate(-50%, -50%); */background: url(/images/mo/ico_btn_expand.png) center top/1.8rem 2.0rem no-repeat;}
-.app .gnb.expand .btn-expand::before{display:none}
+.app .gnb .btn-expand::after{content: '';position: absolute;left: 50%;top: 25%;width: 1.8rem;height: 2.0rem;background: url(/images/mo/ico_btn_expand.png) center top/1.8rem 2.0rem no-repeat;}
+.app .gnb.expand .btn-expand::before{display:none;}
 .app .gnb.expand .btn-expand::after {background: url(/images/mo/ico_btn_narrow.png) center bottom/1.8rem 2.0rem no-repeat;}
 
 main.container{margin-top: 0; overflow: hidden;}
@@ -921,7 +815,6 @@ section.main.scr, section.ev_list.scr, section.dp_exhibition.scr, section.dp_loo
 .fullBody .btn_group div:first-child button::after{content: '';display: inline-block;width: 0.3rem;height: 2.0rem;background: #dddddd;position: absolute;top: 1.0rem;right: -0.2rem;}
 
 /* Full메뉴_카테고리 */
-.fullBody .fullCate {}
 .fullBody .fullCate > li > ul {display: none; background: #f5f5f5;}
 .fullBody .fullCate > li > a {position:relative;display: block; padding:1.6rem 2.0rem; font-size: 1.4rem; font-weight: 400;font-family: 'Noto Sans kr', sans-serif;}
 .fullBody .fullCate > li > a::after {content: '';display: inline-block;width: 2.0rem;height: 2.0rem;background: url(/images/mo/ico_full.png) no-repeat;background-size: 0.8rem 1.4rem;-webkit-transform: rotate(0deg);-moz-transform: rotate(0deg);-ms-transform: rotate(0deg);-o-transform: rotate(0deg);transform: rotate(0deg);position: absolute;right: 1.2rem;background-position: left center;}
@@ -943,12 +836,14 @@ section.main.scr, section.ev_list.scr, section.dp_exhibition.scr, section.dp_loo
 #hstrFull.on{ height: 100%; visibility: visible; top: 0;}
 .hstr_cls {position: absolute;top: 1.4rem;right: 2.0rem;display: block;width: 2.0rem;height: 2.0rem;text-indent: -999.9rem;background-size: contain;background-repeat: no-repeat;background-position: center center;z-index: 98;background-image: url(/images/mo/ico_pop_cls.png);}
 #hstrFull .fullHead h1 {display: inline-block;position: relative;max-width: calc(100% - 14.5rem);width: auto;height: 100%;line-height: 5.2rem;vertical-align: middle;padding: 0 1.5rem 0 0rem;margin: 0 0 0 2.0rem;font-size: 1.8rem;color: #222;}
-#hstrFull .fullBody {}
-#hstrFull .fullBody {}
 #hstrFull .fullBody .count_wrap {padding: 2rem 0;}
 #hstrFull .fullBody .count_wrap p{font-size: 1.2rem;color: #888;}
 #hstrFull .fullBody .count_wrap p span {color: #fd4802;font-weight: 600;}
 #hstrFull .fullBody .inner {padding: 0 2.0rem 1.3rem 2.0rem;position: relative;}
+#hstrFull .fullBody  .list_content.nodata .lookbookGrp, #hstrFull .fullBody  .list_content.nodata .itemsGrp, #hstrFull .fullBody  .list_content.nodata .list_item, #hstrFull .fullBody  .list_content.nodata .list_last, #hstrFull .fullBody .list_content.nodata .count_wrap {display: none;}
+#hstrFull .fullBody .list_content.nodata .list_defult {display: block;}
+#hstrFull .fullBody .list_content .list_defult {display: none;text-align: center;padding: 11rem 0;}
+#hstrFull .fullBody .list_content .list_defult p {text-align: center;font-size: 1.3rem;color: #888888;font-weight: 300;}
 #hstrFull .fullBody .itemsGrp .item_prod {width: 48.75%;float: left;margin-right: 2.5%;margin-bottom: 0rem;}
 #hstrFull .fullBody .itemsGrp .item_prod:nth-child(2n){margin-right: 0;}
 #hstrFull .fullBody .itemsGrp:after {display: block;content: '';clear: both;}
@@ -964,16 +859,12 @@ footer .f1 .inner{padding: 0 2.0rem 2.0rem;}
 footer .f1 .link{padding-top: 2.0rem;}
 footer .f1 .link::after{content: ''; display: block; clear: both;}
 footer .f1 .link > li{float: left; position: relative; padding: 0 1.2rem;}
-footer .f1 .link > li::before{content: '';
-  /* display: block; position: absolute; left: 0; top: 50%; -webkit-transform: translateY(-50%); transform: translateY(-50%); width: 0.3rem; height: 0.3rem; background-color: #999; */
-  display: block; position: absolute; left: 0; top: 50%; -webkit-transform: translateY(-50%); transform: translateY(-50%); width: 0.2rem; height: 1.4rem; background-color: #e3e3e3;
-}
+footer .f1 .link > li::before{content: ''; display: block; position: absolute; left: 0; top: 50%; -webkit-transform: translateY(-50%); transform: translateY(-50%); width: 0.2rem; height: 1.4rem; background-color: #e3e3e3;}
 footer .f1 .link > li:first-child{padding-left: 0;}
 footer .f1 .link > li:first-child::before{display: none;}
 footer .f1 .link > li.fn{clear: both; padding-left: 0;}
 footer .f1 .link > li.fn::before{display: none;}
 footer .f1 .link > li a{display: block; padding: 0.5rem 0; color: #222; font-size: 1.3rem; font-weight: 200;}
-footer .f1 .wider{}
 footer .f1 .wider > li{padding: 0 1.5rem;}
 footer .f1 .wider > li a{color: #666; font-weight: 300; font-size: 1.5rem;}
 footer .f1 .info::after{content: ''; display: block; clear: both;}
@@ -992,7 +883,6 @@ footer .f1 .sns > li > a.facebook{background: #fff url("/images/mo/ico_ft_facebo
 footer .collapse{position: relative; border-bottom: 0.1rem solid #dadada;}
 footer .collapse .btnWrap .btn_infos{position: relative; width: 100%; height: 6.7rem; background-color: #f1f1f1; font-size: 1.5rem; font-weight: 400; text-align: left; color: #222;}
 footer .collapse .btnWrap .btn_infos::after{content: ''; display: inline-block; margin-left: 1.0rem; margin-bottom: 0; width: 1.4rem; height: 0.8rem; background: #f1f1f1 url(/images/mo/ico_fold_arrow1.png) 50% 0% no-repeat; background-size: 1.4rem; /* background-size: auto 3.9rem; */ -webkit-transform: rotate(180deg); transform: rotate(180deg);}
-footer .collapse .btnWrap .btn_infos.on{/* background-color: #222; */ /* color: #fff; */}
 footer .collapse .btnWrap .btn_infos.on::after{margin-bottom: 0; -webkit-transform: rotate(0); transform: rotate(0);}
 footer .collapse .infos{width: 100%; height: 0; overflow: hidden;-webkit-box-sizing: border-box; box-sizing: border-box; -webkit-transition: all 0.5s ease-out; transition: all 0.5s ease-out;}
 footer .collapse .infos::after{content: ''; display: block; clear: both;}
@@ -1070,7 +960,6 @@ button.alertCls {-webkit-appearance: none;padding: 0;cursor: pointer;background:
 
 
 /* titWrap, .tit */
-
 .titWrap{padding: 2.0rem 0 0 0; text-align: center; font-size: 1.8rem;}
 .tit{font-size: 1.4rem; font-weight: 400; color: #222222;}
 .exp{font-size: 1.1rem; font-weight: 200; color: #666666;}
@@ -1087,14 +976,13 @@ button.alertCls {-webkit-appearance: none;padding: 0;cursor: pointer;background:
 .txt_blt::before{content: ''; display: block; position: absolute; left: 0; top: 50%; -webkit-transform: translateY(-50%); transform: translateY(-50%); width: 0.3rem; height: 0.3rem; background-color: #666;}
 
 /* Tab */
-.tabWrap {}
-.tabIndex {width: 100%; /*margin-bottom: 0.85em;*/ box-sizing: border-box;-webkit-box-sizing: border-box;display: inline-flex;justify-content: space-around;}
+.tabIndex {width: 100%; box-sizing: border-box;-webkit-box-sizing: border-box;display: inline-flex;justify-content: space-around;}
 .tabIndex:after {content: "";clear: both;display: table;}
 .tabIndex {background: #ffffff;border-bottom: 0.1rem solid #e5e5e5;}
 .tabIndex li {float: left;flex: auto;text-align: center;}
 .tabIndex li a {display: block;color:#222222; font-weight: 400; padding: 1.0rem 2.0vw;}
 .tabIndex li.active a {border-bottom: 0.3rem solid #fd4802; color: #fd4802;}
-.tab_cont {width: 100%;height:100%; background: #f5f5f5;/*padding: 1.2rem 0rem 0 0rem;*/text-align: left;box-sizing: border-box;}
+.tab_cont {width: 100%;height:100%; background: #f5f5f5;text-align: left;box-sizing: border-box;}
 .tab_cont .inner {margin-bottom: 2.3rem;}
 .tab_cont {display: none;}
 .tab_cont.active {display: block;}
@@ -1130,8 +1018,6 @@ button.alertCls {-webkit-appearance: none;padding: 0;cursor: pointer;background:
 .tbl.type1 table td {position:relative; /*padding:1.0rem 4.0rem;*/ font-weight:200; font-size:1.6rem; letter-spacing:-0.025em;}
 .tbl.type1 table th {padding:1.0rem 0rem 1.0rem 4.0rem; font-weight:300;}
 .tbl.type1 table td {padding:1.0rem 4.0rem 1.0rem 0rem;}
-/* .tbl.type1 table tr td:first-child {padding-left:4.0rem;}
-.tbl.type1 table tr td:last-child {padding-right:4.0rem;} */
 
 /* 테이블 type2 - 수직형 행,열별 구분선 있음 */
 .tbl.type2 {padding:0; border-top:0.1rem solid #000;} 
@@ -1169,13 +1055,13 @@ button.alertCls {-webkit-appearance: none;padding: 0;cursor: pointer;background:
 .tbl.type6 table th,
 .tbl.type6 table td {position:relative; padding:0rem 4.0rem; font-weight:200; font-size:1.6rem; letter-spacing:-0.025em; border-left:0.1rem dashed #ddd; vertical-align:top;}
 .tbl.type6 table th {font-weight:500;}
-.tbl.type6 table tr td:first-child {border-left:none}
+.tbl.type6 table tr td:first-child {border-left:none;}
 .tbl.type6 table tr td dl::after,
 .tbl.type6 table tr td dl > div::after {content: '';display: block;clear: both;}
-.tbl.type6 table tr td > dl {margin-top:2.0rem}
-.tbl.type6 table tr td > dl:first-child {margin-top:0rem}
-.tbl.type6 table td dl dt {float:left; font-size:1.6rem; font-weight:300; color:#222}
-.tbl.type6 table td dl dd {float:right; font-size:1.5rem; font-weight:200; color:#222}
+.tbl.type6 table tr td > dl {margin-top:2.0rem;}
+.tbl.type6 table tr td > dl:first-child {margin-top:0rem;}
+.tbl.type6 table td dl dt {float:left; font-size:1.6rem; font-weight:300; color:#222;}
+.tbl.type6 table td dl dd {float:right; font-size:1.5rem; font-weight:200; color:#222;}
 .tbl.type6 table td dl dd em {font-size:1.6rem;}
 .tbl.type6 table td dl dd .btn.btn_sm {height:3.4rem; margin-top:-0.8rem; margin-left:1.0rem; padding:1.0rem 1.4rem; font-size:1.4rem;}
 .tbl.type6 table td dl dd .btn.btn_sm:first-child {margin-left:0;}
@@ -1189,22 +1075,21 @@ button.alertCls {-webkit-appearance: none;padding: 0;cursor: pointer;background:
 .tbl.type6 table td dl .save_point {position:relative; padding-left:2.2rem;}
 .tbl.type6 table td dl .save_point::before {content:''; position:absolute; left:0; top:50%; transform:translateY(-50%); width:1.6rem; height:1.6rem; background:url('/images/pc/ico_point.png') no-repeat 0 50%;}
 .tbl.type6 table td dl > div {margin-top:2.0rem;}
-.tbl.type6 table td dl > div:first-child {margin-top:0rem}
-.tbl.type6 table td dl > div.include_item {}
+.tbl.type6 table td dl > div:first-child {margin-top:0rem;}
 .tbl.type6 table td dl > div.include_item dt {padding-left:1.5rem; background:url('/images/pc/ico_bracket2.png') no-repeat 0 50%;}
 
 /* 테이블 내용 나열 폼 */
 .tbl th,
 .tbl td {vertical-align:top;}
 .tbl td .single_line::after {content:''; clear:both; display:block;}
-.tbl td .single_line ul li {float:left; position:relative; padding:0rem 1.5rem; margin:0}
+.tbl td .single_line ul li {float:left; position:relative; padding:0rem 1.5rem; margin:0;}
 .tbl td .single_line ul li::before {content:''; position:absolute; width:0.1rem; height:1.4rem; left:0rem; top:50%; transform:translateY(-50%); background:#ddd;}
-.tbl td .single_line ul li:first-child {padding-left:0}
+.tbl td .single_line ul li:first-child {padding-left:0;}
 .tbl td .single_line ul li:first-child::before {display:none;}
-.tbl td .single_line ul li > span {margin-right:0}
+.tbl td .single_line ul li > span {margin-right:0;}
 .tbl td .block_line {position:relative;}
-.tbl td .block_line ul li {margin-top:0.5rem; height:1.625em; /*line-height:1;*/}
-.tbl td .block_line ul li:first-child {margin-top:0}
+.tbl td .block_line ul li {margin-top:0.5rem; height:1.625em;}
+.tbl td .block_line ul li:first-child {margin-top:0;}
 .tbl td .block_line ul li > span {vertical-align:top;}
 .tbl td .block_line ul li .tag {margin-left:0.6rem; margin-top:0.2rem; vertical-align:top;}
 .tbl td .block_line ul li .btn.btn_sm {height:3.4rem; margin-top:-0.6rem; padding:1.0rem 1.4rem; font-size:1.4rem; font-weight:200;}
@@ -1263,7 +1148,7 @@ button.alertCls {-webkit-appearance: none;padding: 0;cursor: pointer;background:
 .fold_cont .img_group .thumb_pic img {position:absolute; top:50%; transform: translateY(-50%); width:100%; height: auto;}
 .fold_cont .fold_detail,
 .fold_cont .fold_answer {position:relative; padding:1.8rem 2rem;}
-.fold_cont .fold_answer {border-top:0.1rem solid #ddd }
+.fold_cont .fold_answer {border-top:0.1rem solid #ddd;}
 .fold_cont .fold_detail .btn {margin-top:2.5rem; padding:0.6rem 1.3rem; color:#222; border-color:#a1a1a1; font-size:1.2rem; font-weight:200; background:none;}
 .fold_cont .fold_detail .img_group {margin-top: 2.4rem; overflow: hidden;}
 .fold_cont .fold_answer > div {position:relative;}
@@ -1272,7 +1157,7 @@ button.alertCls {-webkit-appearance: none;padding: 0;cursor: pointer;background:
 .fold_answer .data{font-size:1.2rem; font-weight: 200; color:#888;}
 .fold_answer div.answer_head{color:#222; font-weight:300;}
 .fold_answer .answer_body{font-weight:200;}
-.fold_answer .answer_foot{position:relative}
+.fold_answer .answer_foot{position:relative;}
 .fold_answer .btn_delete{position:absolute; right:0; bottom:0; font-size:1.2rem; color:#777;}
 .fold_answer .btn_delete > span{position:relative; display:inline-block;}
 .fold_answer .btn_delete > span:after{display:block; content: ''; position:absolute; left:0; bottom:-0.2rem; width:100%; height:0.1rem; background-color:#777777;}
@@ -1290,7 +1175,7 @@ button.alertCls {-webkit-appearance: none;padding: 0;cursor: pointer;background:
 .case2 .fold_cont .fold_detail > div:before,
 .case2 .fold_cont .fold_answer > div:before{content:''; position:absolute; left:0; top:0; font-size:1.4rem; font-weight:400;}
 .case2 .fold_cont .fold_detail > div:before{content:'Q.'; color:#222222;}
-.case2 .fold_cont .fold_answer > div:before{content:'A.'; color:#fd4802}
+.case2 .fold_cont .fold_answer > div:before{content:'A.'; color:#fd4802;}
 
 /* popover style Tooltip */
 .tip_tit{background-color: transparent;border-radius: 100%;border: 0.1rem solid #888888;color: #fd4802;cursor: default;display: inline-block;font-size: 1.2rem;font-weight: 600;line-height: 1.4rem;position: relative;text-align: center;width: 1.5rem;height: 1.5rem;}
@@ -1834,9 +1719,9 @@ button.alertCls {-webkit-appearance: none;padding: 0;cursor: pointer;background:
 
 .modal-spinner{display:none;position:fixed;top:50%;left:50%;transform:translateY(-50%) translateX(-50%);padding:1.2rem 1.6rem;border-radius:0.5rem;background-color:#222;height:2.0rem;}
 .modal-spinner>div{border-radius:10.0rem;background-color:#fff;height:2.0rem;width:0.2rem;margin:0 0.1rem;display:inline-block;-webkit-animation:sk-stretchdelay 1.2s infinite ease-in-out;animation:sk-stretchdelay 1.2s infinite ease-in-out}
-.modal-spinner .rect2{-webkit-animation-delay:-1.1s;animation-delay:-1.1s}
-.modal-spinner .rect3{-webkit-animation-delay:-1.0s;animation-delay:-1.0s}
-.modal-spinner .rect4{-webkit-animation-delay:-0.9s;animation-delay:-0.9s}
+.modal-spinner .rect2{-webkit-animation-delay:-1.1s;animation-delay:-1.1s;}
+.modal-spinner .rect3{-webkit-animation-delay:-1.0s;animation-delay:-1.0s;}
+.modal-spinner .rect4{-webkit-animation-delay:-0.9s;animation-delay:-0.9s;}
 
 @-webkit-keyframes sk-stretchdelay{
   0%,40%,100%{
@@ -1859,8 +1744,8 @@ button.alertCls {-webkit-appearance: none;padding: 0;cursor: pointer;background:
 
 /* 제거할 클래스 */
 .btnL{width:100%; height:4.5rem; line-height:4.5rem; font-size:1.4rem;}
-.btnM{width:100%; height:4rem; height:4rem; line-height:4rem; }
-.btnS{width:100%; height:3rem; height:3rem; line-height:3rem; }
+.btnM{width:100%; height:4rem; height:4rem; line-height:4rem;}
+.btnS{width:100%; height:3rem; height:3rem; line-height:3rem;}
 
 /* .inner, .inner.bg_gray 등을 응용 */
 .blockLyout{background-color:#f5f5f5;}
@@ -1876,10 +1761,10 @@ button.alertCls {-webkit-appearance: none;padding: 0;cursor: pointer;background:
 .bgC3{background-color:#dddddd!important;}
 .bgC4{background-color:#fff6f2!important;}
 .bgC5{background-color:#f5f5f5!important;}
-.bgC6{background-color:#f1f1f1!important;} /* <----풋터색상*/
+.bgC6{background-color:#f1f1f1!important;} /* footer */
 
 
-/* 사용금지 */
+/* 사용금지, 비상용 */
 .mgc {margin:0 auto;}
 .mt0 {margin-top:0 !important;}
 .ml0 {margin-left:0 !important;}
@@ -1952,10 +1837,6 @@ button.alertCls {-webkit-appearance: none;padding: 0;cursor: pointer;background:
 }
 .shape span{
   color: #ffffff;text-align: center;text-indent: 1.0rem;font-size: 1.1rem;position: absolute;top: 50%;left: 50%;transform: translate(-50%, -50%);width: 4.0rem;z-index: 2;
-  /* line-height: 1; */
-  /* letter-spacing: -25em; */
-  /* display: -webkit-box; */
-  /* z-index: 99999; */
 }
 .shape.dealdetail{
   width: 100%;max-width: 4.0rem;
@@ -2079,7 +1960,7 @@ button.alertCls {-webkit-appearance: none;padding: 0;cursor: pointer;background:
 .app-only .guidance p.tit + p.date + p {font-size:1.1rem;}
 .app-only .guidance p:first-child {padding-top: 2.0rem;}
 .app-only .guidance p:last-child {padding-bottom: 2.0rem;}
-.app-only .guidance p:first-child:nth-last-child(1) { padding-top: 0;padding-bottom: 0; }
+.app-only .guidance p:first-child:nth-last-child(1) { padding-top: 0;padding-bottom: 0;}
 .app-only .guidance.ontoast {animation: onpop 6s .2s forwards; -webkit-animation: onpop 6s .2s forwards;}
 @keyframes onpop {
 	0% {bottom:0rem; opacity:1; z-index:99999;}
@@ -2100,7 +1981,7 @@ button.alertCls {-webkit-appearance: none;padding: 0;cursor: pointer;background:
 .guidance p.tit + p.date + p {font-size:1.1rem;}
 .guidance p:first-child {padding-top: 2.0rem;}
 .guidance p:last-child {padding-bottom: 2.0rem;}
-.guidance p:first-child:nth-last-child(1) { padding-top: 0;padding-bottom: 0; }
+.guidance p:first-child:nth-last-child(1) { padding-top: 0;padding-bottom: 0;}
 .guidance.ontoast {animation: onpop 6s .2s forwards; -webkit-animation: onpop 6s .2s forwards;}
 @keyframes onpop {
 	0% {bottom:0rem; opacity:1; z-index:99999;}

File diff suppressed because it is too large
+ 114 - 224
src/main/webapp/ux/mo/css/layout_m.css


File diff suppressed because it is too large
+ 35 - 323
src/main/webapp/ux/mo/css/style24_m.css


+ 7 - 249
src/main/webapp/ux/mo/js/common_m.js

@@ -10,33 +10,26 @@ window.addEventListener('load', function(){
   
 
 $(document).ready(function() {
-
         // 웹페이지가 브라우징된 후 주소창 제거
         window.addEventListener("load", function () {
             setTimeout(scrollTo, 0, 0, 1);
         }, false);
-
-
-
         //210608_히스토리백 스크립트
         $(".btn_back").on("click", function () {
             history.back();
         });
-
         //1.쿠키세팅
         function setCookie(cookieName, value, exdays){
             var exdate = new Date();
             exdate.setDate(exdate.getDate() + exdays);
             var cookieValue = escape(value) + ((exdays==null) ? "" : "; expires=" + exdate.toGMTString());
             document.cookie = cookieName + "=" + cookieValue;
-        }
-        
+        }        
         function deleteCookie(cookieName){
             var expireDate = new Date();
             expireDate.setDate(expireDate.getDate() - 1);
             document.cookie = cookieName + "= " + "; expires=" + expireDate.toGMTString();
-        }
-        
+        }        
         function getCookie(cookieName) {
             cookieName = cookieName + '=';
             var cookieData = document.cookie;
@@ -50,25 +43,18 @@ $(document).ready(function() {
             }
             return unescape(cookieValue);
         }
-
         //2. 쿠키설정
         var category = getCookie("category"); //setCookie("category")로 세팅한 category 변수 명
         var scrollPoint = getCookie("scrollPoint"); //setCookie("scrollPoint")로 세팅한 스크롤 위치
         var currentCategory = "mainScrollPoint"; //이벤트 발생 후 새로 로드된 현재 페이지의 카테고리 지정
-
         //3.스크롤 값 가져오기
         $('a').on("click", function(){
-                //스크롤 위치 저장 - a태그 href에 'html' 문자열이 있는 경우
-                //if($(this).hasAttribute('class') === true){
-                //    console.log("bvb");
-                //}
                 if($(this).attr('href').indexOf('html') !== -1){
                     var scrollPoint = (document.documentElement && document.documentElement.scrollTop) || document.body.scrollTop;
                     setCookie("category", "mainScrollPoint"); // 쿠키에서 사용할 category에 사용자 정의 카테고리명 세팅
                     setCookie("scrollPoint", scrollPoint); // 쿠키에 스크롤 위치 세팅
                }
         });
-
         //4. 뒤로가기 시 이전페이지 스크롤 이동
         window.onpageshow = function(event) {
             if ( event.persisted || (window.performance && window.performance.navigation.type == 2)) {
@@ -82,8 +68,6 @@ $(document).ready(function() {
             }
         };
 
-
-
         // goTop, header (스크롤 인식)
         $(".btn_top").click(function () {
             $("html, body").animate({
@@ -92,14 +76,6 @@ $(document).ready(function() {
         });
 
         $(window).scroll(function (event) {
-
-            // header height 가 아닌, 스크롤 감지로 변경할 것
-            //if ($(window).scrollTop() > $("header").height()) {
-            //    $(".tabbar").removeClass('fixed');
-            //} else {
-            //    $(".tabbar").addClass('fixed');
-            //}
-
             if ($(window).scrollTop() > $("header").height()) {
                 $(".btn_top").animate({
                     "opacity": 1
@@ -107,13 +83,6 @@ $(document).ready(function() {
                 $("footer .btn_back").animate({
                     "opacity": 1
                 }, 50);
-                
-                // 210521_ 위치고정으로 변경
-                // if ( $(window).scrollTop() > ($("footer").position().top - $("footer").height() )) {
-                //     $(".btn_top").css("bottom", ($("footer").height() + 20) + "px");
-                // } else {
-                //     $(".btn_top").css("bottom", "60px");
-                // }
             } else {
                 $(".btn_top").animate({
                     "opacity": 0
@@ -122,41 +91,9 @@ $(document).ready(function() {
                     "opacity": 0
                 }, 50);
             }
-
-            // 210409_스크롤시 헤더 백그라운드 흰색
-            //var st = $(this).scrollTop();
-            //if($('header').hasClass("main") !== true){
-            //    if (st > lastScrollTop){
-            //        $(".app .gnb").css("position", "fixed");
-            //        $(".htop").css("background", "#fff");
-            //        $(".app .gnb .btn-expand").css("position", "fixed");
-            //        $(".tabbar").removeClass("fixed");
-            //    } else {
-            //        $(".app .gnb").css("position", "fixed");
-            //        $(".htop").css("background", "#fff");
-            //        $(".app .gnb .btn-expand").css("position", "fixed");
-            //        $(".tabbar").addClass("fixed");
-            //        setTimeout(function(){
-            //            if($(window).scrollTop() === 0){
-            //                $(".app .gnb").css("position", "relative");
-            //                $(".app .gnb .btn-expand").css("position", "absolute");
-            //            }
-            //        },300)
-            //    }
-            //    if(st < 10) {
-            //        $(".htop").css("background", "transparent");
-            //    }
-            //    lastScrollTop = st;
-            //}
-            
-
-            //var posiGap = $(window).scrollTop();
-            //console.log(posiGap);
-
         });
 
-        // items like on/off
-       
+        // items like on/off       
         $(document).on('click','.itemLike',function(){
             $(this).toggleClass("likeit");
         });
@@ -169,10 +106,6 @@ $(document).ready(function() {
 2. Utility (유틸리티)
 
 * * * * * * * * * * * * * * * * * * * * * */
-
-
-
-
     // FORM
     // input-File-Add
     $(document).ready(function() {
@@ -211,7 +144,6 @@ $(document).ready(function() {
                     var imgFiles=$('.imgUpload .pics');
 
                     if (imgFiles.length >= maxFileLength-1) {
-                        //mcxDialog.alert('이미지는 최대' + maxFileLength +'장 까지 첨부 가능합니다.'); //210507_삭제
                         $('#fileAdd').attr("disabled",true);
                         cmtLa.css('display', 'none');
                         cmtIn.css('display', 'none');
@@ -256,7 +188,6 @@ $(document).ready(function() {
                         var imgFiles=$('.imgUpload .pics');
                         
                         if (imgFiles.length >= maxFileLength-1) {
-                            //mcxDialog.alert('이미지는 최대' + maxFileLength +'장 까지 첨부 가능합니다.'); //210507_삭제
                             $('#fileAdds').attr("disabled",true);
                             cmtLa.css('display', 'none');
                         } else if(imgFiles.length < maxFileLength){
@@ -275,8 +206,7 @@ $(document).ready(function() {
             $chkAll.change(function () {
                 var checked = $(this).prop('checked'); 
                 $('input[name="dd"]').prop('checked', checked);
-            });
-            
+            });            
         var ddChk = $('input[name="dd"]');
             ddChk.change(function () {
                 var ddChkLength = ddChk.length;
@@ -321,7 +251,6 @@ function sCombo(selector){
 	sCombo.prototype.listSelect = function($target){
 		$target.addClass('selected').siblings('li').removeClass('selected');
 		this.$selectBox.removeClass('on');
-		//this.$select.text($target.text());
 		this.$select.html($target.html());
 		this.$list.css('display', 'none');
 	}
@@ -335,8 +264,6 @@ function sCombo(selector){
 	this.initEvent();
 };
 
-
-
 // selectBrand on/off
 $( document ).ready( function() {
 	$("#selectBrand .brandbox input").on("click", function() {
@@ -345,9 +272,6 @@ $( document ).ready( function() {
 	});
 });
 
-
-
-
 /* alert */
         $(function(){
             $('.alertCls').click(function(){
@@ -361,8 +285,6 @@ $( document ).ready( function() {
         });
 
 
-
-
 /* * * * * * * * * * * * * * * * * * * * * * * 
 
 2. Page Setting    (페이지세팅)
@@ -374,14 +296,11 @@ $(document).ready(function () {
         $(window).scroll(function (event) {
             //경우1 : only htopMain
             if($('section').is('#htopMain') === true && $('div').is('#gnb') === false){
-                console.log("vvvv");
                 var commonSt = $(this).scrollTop();
-                //스크롤 올릴때
                 if (commonSt > lastScrollTop) {
                     $("header").css('display', 'none');
                     $("header").css('position', 'fixed');
                     $(".tabbar").removeClass("fixed");
-                //스크롤 내릴때
                 } else {
                     $("header").css('display', 'block');
                     $("header").css('position', 'fixed');
@@ -390,9 +309,7 @@ $(document).ready(function () {
                 lastScrollTop = commonSt;
             //경우2 : htopMian + gnb
             } else if($('section').is('#htopMain') === true && $('div').is('#gnb') === true) {
-                console.log("bvbb");
                 var commonSt = $(this).scrollTop();
-                //스크롤 올릴때
                 if (commonSt > lastScrollTop) {
                     $("header").css('display', 'none');
                     $("header").css('position', 'fixed');
@@ -401,7 +318,6 @@ $(document).ready(function () {
                     $("#gnb").css('top', '0');
                     $(".tabbar").removeClass("fixed");
                     $("section.content, section.main, .bnrtype_banner").addClass('scr');
-                //스크롤 내릴때
                 } else {
                     $("header").css('display', 'block');
                     $("header").css('position', 'fixed');
@@ -426,10 +342,8 @@ $(document).ready(function () {
                 var commonSt = $(this).scrollTop();
                 $("header").css('display', 'block');
                 $("header").css('position', 'fixed');
-                //스크롤 올릴때
                 if (commonSt > lastScrollTop) {
                     $(".tabbar").removeClass("fixed");
-                //스크롤 내릴때
                 } else {
                     $(".tabbar").addClass("fixed");
                 }
@@ -438,7 +352,6 @@ $(document).ready(function () {
                 }
                 lastScrollTop = commonSt;
             }
-
             //210701_ 추가 : 전시 리스트 일정 스크롤 이동시, 분류 고정.
             if($(".dp .dp_list .list_content").length){
                 var winScrollTop= $(window).scrollTop();
@@ -452,13 +365,11 @@ $(document).ready(function () {
                 }
             }
         })
-        //210525_초기화 시 top:0 이동
         window.onload = function() {
             setTimeout (function () {
                 scrollTo(0,0);
             },1);
         }
-
         // GNB
         $(".btn_gnb").on("click", function () {
             $(this).toggleClass("on");
@@ -471,7 +382,6 @@ $(document).ready(function () {
             $(".hmenus").toggleClass("on");
             $("body").toggleClass("gnb_on");
         });
-
         $(".gnb .d1 > .folder > a").on("click", function () {
             var d2_H = $(this).siblings(".d2").children("li").length * 39;
 
@@ -556,35 +466,6 @@ $(document).ready(function () {
                     return '<i class="' + className + '"> 0' + (index + 1) + '</i>';
                 },
             },
-            /*
-            navigation: {
-                nextEl: ".swiper-button-next",
-                prevEl: ".swiper-button-prev",
-            },
-            on: {
-                slideChangeTransitionEnd: function() {
-                    var slideIndex = this.activeIndex;
-                    var slidesLen = this.slides.length - 2;
-                    var nextIndex, prevIndex;
-
-                    // console.log(slideIndex, slidesLen);
-
-                    if ( (slideIndex == 1) || (slideIndex == (slidesLen+1)) )  {
-                        nextIndex = 2;
-                        prevIndex = slidesLen;
-                    } else if (slideIndex == slidesLen) {
-                        nextIndex = 1;
-                        prevIndex = slidesLen-1;
-                    } else {
-                        nextIndex = slideIndex+1;
-                        prevIndex = slideIndex-1;
-                    }
-                    
-                    $(".swiper-button-next").css("background-image", "url('./images/bg_me1_0"+ nextIndex +".jpg')");
-                    $(".swiper-button-prev").css("background-image", "url('./images/bg_me1_0"+ prevIndex +".jpg')");
-                }
-            }
-            */
         });
 
         $(".swiper-button-pause").click(function () {
@@ -597,32 +478,6 @@ $(document).ready(function () {
             $(this).hide();
             $(this).siblings(".swiper-button-pause").show();
         });
-
-        var swiper_m2 = new Swiper(".m2 .slide", {
-            loop: false,
-            slidesPerView: "auto",
-            centeredSlides: true,
-            spaceBetween: 20,
-        });
-        var swiper_m3Nav = new Swiper(".m3 .snb", {
-            slidesPerView: 3,
-        });
-        var swiper_m3 = new Swiper(".m3 .slide", {
-            loop: true,
-            thumbs: {
-                swiper: swiper_m3Nav,
-            },
-        });
-        var swiper_m4 = new Swiper(".m4 .slide", {
-            loop: false,
-            slidesPerView: "auto",
-            centeredSlides: true,
-            spaceBetween: 20,
-            pagination: {
-                el: ".swiper-pagination-m4",
-                type: "progressbar",
-            },
-        });
         // slide sub
         var swiper_lnbNav = new Swiper(".lnb", {
             slidesPerView: "auto",
@@ -711,8 +566,6 @@ $(document).ready(function () {
         // toggleBox (윤리경영)
         $(".list_cate > li dl dt > button").on("click", function () {
             var li = $(this).parent().parent().parent("li").index();
-            // var liPos = ($(this).parent().parent().parent().parent().position().top) + 110 + ($(this).parent().height() * li);
-
             if ($(this).parent().parent().parent("li").hasClass("on")) {
                 $(this).parent().parent().parent("li").removeClass("on");
                 $(this).parent().parent().parent().parent().siblings(".cate").children("li").eq(li).find("button").removeClass("on");
@@ -721,32 +574,14 @@ $(document).ready(function () {
                 $(this).parent().parent().parent("li").addClass("on");
                 $(this).parent().parent().parent().parent().siblings(".cate").children("li").find("button").removeClass("on");
                 $(this).parent().parent().parent().parent().siblings(".cate").children("li").eq(li).find("button").addClass("on");
-
-                // $("html, body").animate({
-                //     "scrollTop": liPos
-                // }, 300);
             }
         });
-
-        // $(".c5 .cate button").on("click", function () {
-        //     var li = $(this).parent("li").index();
-        //     var liPos = ($(this).parent().parent().siblings(".list_cate").position().top) + 110 + ($(this).parent().parent().siblings(".list_cate").find("dt").height() * li);
-        //     $(this).parent().siblings().find("button").removeClass("on");
-        //     $(this).addClass("on");
-        //     $(this).parent().parent().siblings(".list_cate").find("li").removeClass("on");
-        //     $(this).parent().parent().siblings(".list_cate").children("li").eq(li).addClass("on");
-        //     $("html, body").animate({
-        //         "scrollTop": liPos
-        //     }, 300);
-        // });
-
         // media play
         $(".btn_play").on("click", function(e) {
             e.stopPropagation();
         });
 
-        // =============구매하기팝업========================================================
-
+        // 구매하기팝업
         // pop open
         function popOpenScroll(){
             $('html, body').css({'overflow': 'hidden', 'height': '100%'}); 
@@ -761,8 +596,7 @@ $(document).ready(function () {
             $('html, body').css({'overflow': 'auto', 'height': '100%'}); //n 해제
             $('#element').off('scroll touchmove mousewheel'); // 터치무브, 휠 스크롤 가능
             return false;
-        }
-        
+        }        
         // popup (media)
         $(".btn_popOpen").on("click", function(e) {
             popOpenScroll();
@@ -776,7 +610,6 @@ $(document).ready(function () {
             return false;
         });
 
-        // jk
         $(".btn_popOpen_mov, .btn_popOpen_mov .btn_play").on("click", function(e) {
             $(".me1_popMov").fadeIn();
             return false;
@@ -786,30 +619,9 @@ $(document).ready(function () {
             return false;
         });
 
-
-    // bottom pop (개선중)
-    //var appCall = document.getElementsByClassName('app'); // 디바이스 app 호출
-    //console.log(appCall);
-
     var appHeight = document.documentElement.clientHeight; // 디바이스의 클라이언트 높이값
-    //console.log('★ 디바이스의 클라이언트 높이값 : ' + appHeight); 
-
-    //var bodyCall = document.getElementsByClassName('btPop_body'); // btPop_body 호출
-    //console.log(bodyCall); 
-
-    // let mememe = document.querySelector('.btPop'); 
     let headresult = document.querySelector('.btPop_head');
     let result = document.querySelector('.btPop_body');
-    // console.log('btPop : '+mememe.offsetHeight);
-    //console.log('★ 헤더 높이 : ' + headresult.offsetHeight);
-    //console.log('★ 바디 높이 : ' + result.offsetHeight);
-    //
-    //let calll = result.offsetHeight + result.offsetHeight;
-    //console.log('★ 헤더+바디 : ' + calll);
-
-    //let pxtop = appHeight - calll;
-    //console.log('★ 디바이스-(헤더+바디) : ' + pxtop);
-
         // btPop_full
         $('.btPop_full_click').click(function(){
             popOpenScroll();
@@ -822,7 +634,6 @@ $(document).ready(function () {
             $('.container').removeClass('btPop_full_open');
             return false;
         });
-
         // btPopAuto
         $('.btPop_close').click(function(){
             popClsScroll();
@@ -843,51 +654,18 @@ $(document).ready(function () {
             },2000);
             return false;
         });
-
-        // btPopAuto
-        //$('.btPopClose').click(function(){
-        //    popClsScroll2();
-        //    $('.container').removeClass('btPop_open');
-        //    autome.style.top  = 100 + "%";
-        //    return false;
-        //});
-
         let autome = document.querySelector('.btPopAuto'); 
-        //let headsize = this.querySelector('.btPopAuto .btPopAuto_head');
-        //let bodysize = this.querySelector('.btPopAuto .btPopAuto_body');
-        //console.log('★ btPop_auto헤더 높이 : ' + headsize.offsetHeight);
-        //console.log('★ btPop_auto바디 높이 : ' + bodysize.clientHeight);
-
-        //let autotop = appHeight - (headsize.offsetHeight + bodysize.offsetHeight);
-        //console.log('★ btPopAuto전체 높이 - 컨텐츠 높이 : ' + autotop);
-        //console.log('★ btPopAuto전체 높이 - 컨텐츠 높이 /10 : ' + autotop /10);
-
         $('.btPop_auto').click(function(){
             popOpenScroll();
             $('.container').addClass('btPop_open');
-            // autome.style.top  = autotop /10 + "vh";
-            // 210524 _ 임시 제거
-            // if (autotop > 251) {
-            //     autome.style.top = 25.0 + "vh";
-            // }else{
-            //     autome.style.top  = pxtop/10 + "vh";
-            // }
             return false;
         });
 
         // 210405_사이즈 선택시 구매하기 팝업 추가
         $('.opt_size .form_field div input').click(function(){
             popOpenScroll();
-            //$('.btPop_body .lap span').css('color', 'red')
-            //console.log($(this)[0]);
             console.log();
             $('.container').addClass('btPop_open');
-            // autome.style.top  = autotop /10 + "vh";
-            //if (autotop > 251) {
-            //    autome.style.top = 25.0 + "vh";
-            //}else{
-            //    autome.style.top  = pxtop/10 + "vh";
-            //}
             return false;
         });
 
@@ -895,11 +673,10 @@ $(document).ready(function () {
         
 
 
-/* ================================================== JS branch JS ========================================================*/
+/* branch */
 $( document ).ready( function() {
 
     /* 주문결제_Header Style */
-    // var odPage = document.getElementsByClassName('od');
     if($('main').children("section").hasClass("shopping_bag")){
         $('.htop .home').css({"display": "inline-block"});
         $('.htop .search').css({"display": "none"});
@@ -995,25 +772,6 @@ $( document ).ready( function() {
             return false;
         });
 
-       
-
-        //210510_삭제
-        // $(document).on('click','.popup_box .button_list button',function(){
-        //     $(this).parents('.popup_box').hide().removeClass('active');
-        //     $("body").css({"overflow":"visible"});
-        // })
-
-        //$(window).on('scroll',function(e){
-        //    var wheel = e.originalEvent.wheelDelta;
-        //    if(wheel>0){
-        //    $("header").css('display', 'block');
-        //    $("header").css('position', 'fixed');
-        //    } else {
-        //    $("header").css('display', 'none');
-        //    $("header").css('position', 'fixed');
-        //    }
-        //});
-
         //210604_하단 고정버튼 있을 시 tabbar 제거
         if($('div').hasClass('product_floormenu') || $('div').hasClass('cs_contactUs_my_footer') || $('div').hasClass('od_calc_wrap')){
             $('.tabbar').css('display', 'none');

+ 0 - 13
src/main/webapp/ux/mo/js/main_m.js

@@ -34,22 +34,9 @@ function tab_event() {
     schTab[i].addEventListener("click", sch_tab);
   }
 }
-
 tab_event();
 
-
-// 5초간 동작 없을 시 top으로 이동
 $(document).ready(function () {
-  //var time;
-  //$(document).bind('touchstart', function (e) {
-  //  clearInterval(time);
-  //  e.stopPropagation();
-  //})
-  //$(document).bind('touchend', function (e) {
-  //  time = setInterval(function () {
-  //    $('html, body').animate({scrollTop : 0}, 400);
-  //  }, 5000000);
-  //})
   //최신상품순(팝업)을 눌렀을 때 top으로 이동하는 기능 제거
   $(".select_dress").bind('touchend', function (e) {
     setTimeout(function(){

+ 70 - 264
src/main/webapp/ux/pc/css/common.css

@@ -88,11 +88,9 @@ small, .small {font-size: 85%;}
 
 
 /* font color */
-i {font-family:'LATO', 'Noto Sans kr', sans-serif !important; letter-spacing:0}
+i {font-family:'LATO', 'Noto Sans kr', sans-serif !important; letter-spacing:0;}
 .base i {position:relative; top:1px;}
 i.big {font-size:18px; position:relative; top:2px;}
-/*.bold {font-weight:bold;}*/
-/*.normal {font-weight:normal;}*/
 .bold {font-weight:500;} /* 중복확인 */
 .normal {font-weight:300;} /* 중복확인 */
 .light {font-weight:200;} /* 중복확인 */
@@ -117,9 +115,9 @@ i.big {font-size:18px; position:relative; top:2px;}
 .c_ygreen{color:#5fc332 !important;}
 .f_size14{font-size:14px;}
 .f_size13{font-size:13px;}
-.f_size12{font-size:12px; }
+.f_size12{font-size:12px;}
 .f_size10{font-size:10px;}
-.f_normal {font-weight:normal}
+.f_normal {font-weight:normal;}
 
 
 /* background color */
@@ -128,7 +126,7 @@ i.big {font-size:18px; position:relative; top:2px;}
   fb: 폰트블랙 - 222222, 
   fw, 기본 : 폰트화이트 - ffffff
 */
-.bk01_fb,.bk01_fw,.bk01{background-color:#2b62c2 !important}
+.bk01_fb,.bk01_fw,.bk01{background-color:#2b62c2 !important;}
 .bk02_fb,.bk02_fw,.bk02{background-color:#bd484a !important;}
 .bk03_fb,.bk03_fw,.bk03{background-color:#ffffff !important;}
 .bk04_fb,.bk04_fw,.bk04{background-color:#f09614 !important;}
@@ -145,7 +143,6 @@ i.big {font-size:18px; position:relative; top:2px;}
 [class*="bk"] .util_group span::after{background: #ffffff !important;}
 [class*="_fb"] p,[class*="_fb"] a, [class*="_fb"] input::placeholder{color:#222222 !important;}
 [class*="_fb"] .util_group span::after{background: #222222 !important;}
-/* [class*="bk"] .brand_visual::after{} */
 
 .section {position:relative;}
 
@@ -173,24 +170,24 @@ section::after, .ui_row::after, .btn_group_block::after{content: '';display: blo
     }
 }
 @media (min-width: 320px){
-  .ui_col_1{width:8.33333333%}
-  .ui_col_2{width:16.66666667%}
-  .ui_col_3{width:25%}
-  .ui_col_4{width:33.33333333%}
-  .ui_col_5{width:41.66666667%}
-  .ui_col_6{width:50%}
-  .ui_col_7{width:58.33333333%}
-  .ui_col_8{width:66.66666667%}
-  .ui_col_9{width:75%}
-  .ui_col_10{width:83.33333333%}
-  .ui_col_11{width:91.66666667%}
-  .ui_col_12{width:100%}
+  .ui_col_1{width:8.33333333%;}
+  .ui_col_2{width:16.66666667%;}
+  .ui_col_3{width:25%;}
+  .ui_col_4{width:33.33333333%;}
+  .ui_col_5{width:41.66666667%;}
+  .ui_col_6{width:50%;}
+  .ui_col_7{width:58.33333333%;}
+  .ui_col_8{width:66.66666667%;}
+  .ui_col_9{width:75%;}
+  .ui_col_10{width:83.33333333%;}
+  .ui_col_11{width:91.66666667%;}
+  .ui_col_12{width:100%;}
 }
 
 
 /* textarea */
-textarea {background-color:transparent; border:1px solid #d7d7d7; width:99%; overflow-y:auto}
-.textarea_full {width:832px; padding:10px}
+textarea {background-color:transparent; border:1px solid #d7d7d7; width:99%; overflow-y:auto;}
+.textarea_full {width:832px; padding:10px;}
 .textarea_md {width:656px; width: 30%; height:108px; padding:10px; line-height:18px;}
 .textarea_sm {width:360px; width: 18%; padding:10px;}
 .txt_cnt {text-align:right; margin-top: 10px;}
@@ -311,10 +308,6 @@ textarea {background-color:transparent; border:1px solid #d7d7d7; width:99%; ove
 .btn_dark {color: #ffffff;background-color: #222222;border-color: #222222;}
 .btn_primary {color: #ffffff;background-color: #fd4802;border-color: #fd4802;}
 .btn_primary_line {color: #fd4802;background-color: #ffff;border-color: #fd4802;}
-/* .btn_success {color: #ffffff;background-color: #95b75d;border-color: #95b75d;} */
-/* .btn_info {color: #ffffff;background-color: #50cff5;border-color: #35c1ea;} */
-/* .btn_warning {color: #ffffff;background-color: #fe970a;border-color: #fe970a;} */
-/* .btn_danger {color: #ffffff;background-color: #E04B4A;border-color: #E04B4A;} */
 .btn_link {color: #428bca;border-radius: 0;font-weight: 400;}
 .btn_underline {display:inline-block; border-bottom:1px solid #222; color:#222; font-size:14px; line-height:1 !important;}
 
@@ -387,8 +380,6 @@ background-color: #fe970a;border-color: #fe970a;color:#ffffff;
   border-bottom:1px solid #0b596b; display:inline-block;
   font-size:11px; line-height:14px; text-indent:0; color:#0b596b !important;
   padding-right:10px; margin-top:2px; margin-left:10px;
-  /* 아이콘 이미지 넣을것 */
-  /* background:url(/images/pc/icon/ico_arrow.gif) no-repeat right 3px; */
 }
 
 
@@ -400,9 +391,9 @@ background-color: #fe970a;border-color: #fe970a;color:#ffffff;
 [class^="ico_"]:before {-webkit-box-sizing: border-box;-moz-box-sizing: border-box;box-sizing: border-box;}
 [class^="ico_content_"]::before {content:''; display:block;} 
 
-.ico_logo:before {content: ""; display:block; width:184px; height:28px; background-image: url('/images/pc/logo_STYLE24.png'); }
-.ico_logo_ft:before {content: ""; display:block; width:150px; height:23px; background-image: url('/images/pc/logo_STYLE24_footer.png'); }
-.ico_search:before {content: ""; display: inline-block; width:22px; height:26px; background-image: url('/images/pc/ico_sch.png'); }
+.ico_logo:before {content: ""; display:block; width:184px; height:28px; background-image: url('/images/pc/logo_STYLE24.png');}
+.ico_logo_ft:before {content: ""; display:block; width:150px; height:23px; background-image: url('/images/pc/logo_STYLE24_footer.png');}
+.ico_search:before {content: ""; display: inline-block; width:22px; height:26px; background-image: url('/images/pc/ico_sch.png');}
 .ico_bag:before {content: ""; display: inline-block; width:22px; height:26px; background-image: url('/images/pc/ico_bag.png');}
 .ico_content_order::before {width:40px; height: 46px; background: url('/images/pc/ico_content_order.png') no-repeat 50% 50%;} 
 .ico_content_find::before {width:36px; height: 46px; background: url('/images/pc/ico_content_find.png') no-repeat 50% 50%;} 
@@ -443,7 +434,6 @@ background-color: #fe970a;border-color: #fe970a;color:#ffffff;
 /* btn linktext */
 a[class*="link"]::after, .btn_link span::after {
 content: "〉";font-size: 12px;padding-left: 8px;
-  /* background:url(/images/pc/icon/ico_arrow.gif) no-repeat right 3px; */
 }
 .npay_button a[class*="link"]::after, .npay_button .btn_link span::after {content: "";}
 .btn_link, .btn_link:hover, .btn_link:focus, .btn_link:active {border-color: transparent;}
@@ -462,26 +452,18 @@ content: "〉";font-size: 12px;padding-left: 8px;
 
 /* button group  */
 .btn_wrap {width: 100%;margin: 10px 0;}
-.btn_group {}
-
 .btn_group, .btn_group_vertical {position: relative;display: inline-block;vertical-align: middle;}
 .btn_group>.btn, .btn_group-vertical>.btn {float: left;position: relative;}
 .btn_group .btn+.btn, .btn_group .btn+.btn_group, 
-.btn_group .btn_group+.btn, .btn_group .btn_group+.btn_group {
-  margin-left: -1px;
-}
+.btn_group .btn_group+.btn, .btn_group .btn_group+.btn_group {margin-left: -1px;}
 .btn_group_block {float: left;width: 100%;}
 .btn_group_block::after {content:''; clear:both; display:block;}
-.btn_group_block > * {}
-.btn_group_block [class^='ui_col_']{}
 .btn_block {display: block;width: 100%;}
 
 .btn_group>.btn:hover, .btn_group-vertical>.btn:hover, 
 .btn_group>.btn:focus, .btn_group-vertical>.btn:focus, 
 .btn_group>.btn:active, .btn_group-vertical>.btn:active, 
-.btn_group>.btn.active, .btn_group-vertical>.btn.active{
-  z-index: 2;
-}
+.btn_group>.btn.active, .btn_group-vertical>.btn.active{z-index: 2;}
 
 /* toggle - Share */
 .shareSet {position: absolute; width:28px; height: 30px; top:0; right:70px; background: url(/images/pc/ico_sns_share.png)no-repeat;}
@@ -518,9 +500,7 @@ content: "〉";font-size: 12px;padding-left: 8px;
 .btn_group>.btn:first-child:not(:last-child):not(.tgl_dropdown) {border-top-right-radius: 0;border-bottom-right-radius: 0;}
 .btn_group>.btn:last-child:not(:first-child), 
 .btn_group>.tgl_dropdown:not(:first-child) {border-top-left-radius: 0;border-bottom-left-radius: 0;}
-  /*
-  .open>.dropdown_menu {display: block;}
-  */
+
 .dropdown_menu {
   position: absolute;
   top: 100%;
@@ -549,25 +529,6 @@ content: "〉";font-size: 12px;padding-left: 8px;
   -webkit-box-shadow: 0px 2px 1px 0px rgba(0, 0, 0, 0.1);
   box-shadow: 0px 2px 1px 0px rgba(0, 0, 0, 0.1);
 }
-/* 삼각말풍선 */
-/*
-.dropdown_menu:after, .dropdown_menu:before {
-  bottom: 100%;
-  left: 50%;
-  border: solid transparent;
-  content: " ";
-  height: 0;
-  width: 0;
-  position: absolute;
-  pointer-events: none;
-}
-.dropdown_menu:before {
-  border-color: rgba(229, 229, 229, 0);
-  border-bottom-color: #E5E5E5;
-  border-width: 6px;
-  margin-left: -6px;
-}
-*/
 .dropdown_header {
   display: block;
   font-size: 12px;
@@ -662,9 +623,8 @@ content: "〉";font-size: 12px;padding-left: 8px;
 .pageNav .next a {width: 8px; height: 34px; background-position: -47px 11px;}
 .pageNav > li.active > a {color: #fd4802;}
 .pageNav > li.active > a::after {content: ''; display: block; width: 100%; height: 2px; background: #fd4802; position: absolute; left: 0px; bottom: 5px; top: auto; right: auto;}
-.pageNav a:hover, .pageNav span:hover {/* 디자인 없음 *//* color: #ffffff; background-color: #fd4802; border-color: #fd4802; */}
 .pageNav > .active > a:hover, .pageNav > .active > span:hover,
-.pageNav > .active > a:focus, .pageNav > .active > span:focus {cursor: default; /* 디자인없음 */ /*z-index: 2; color: #ffffff; background-color: #fd4802; border-color: #fd4802;*/}
+.pageNav > .active > a:focus, .pageNav > .active > span:focus {cursor: default;}
 .pageNav > .disabled > span, .pageNav > .disabled > span:hover, .pageNav > .disabled > span:focus, 
 .pageNav > .disabled > a, 
 .pageNav > .disabled > a:hover, 
@@ -685,7 +645,7 @@ content: "〉";font-size: 12px;padding-left: 8px;
 
 .foldGroup .fold_head {position: relative; width:100%; border-bottom: 0;}
 .fold_head {padding: 0px; border-bottom: 1px solid transparent;}
-.fold_head::after {content: ''; position: absolute; display: inline-block; top: 50%; left: auto; right:40px; transform: translateY(-50%);  width: 20px; height: 11px; background: url('/images/pc/ico_fold_arrow1.png'); background-repeat: no-repeat; background-position: 0 100%; }
+.fold_head::after {content: ''; position: absolute; display: inline-block; top: 50%; left: auto; right:40px; transform: translateY(-50%);  width: 20px; height: 11px; background: url('/images/pc/ico_fold_arrow1.png'); background-repeat: no-repeat; background-position: 0 100%;}
 .fold_head.on::after {background-repeat: no-repeat; background-position: 0 0%;}
 .fold_head .data {position:absolute; top:50%; transform: translateY(-50%); left:auto; right:80px; font-size:16px; font-weight:300; z-index:2;}
 .foldGroup .fold_head a {display:block; width:inherit; height:100%; padding: 35px 0;}
@@ -696,8 +656,8 @@ content: "〉";font-size: 12px;padding-left: 8px;
 .fold_head .fold_state {width:170px; box-sizing: border-box; text-align: center; font-weight: 300; color:#888; line-height:1;}
 .fold_head .fold_state .important {display:inline-block; position:relative; background-color: #fd4802; color:#fff; font-size:11px; font-weight:300;line-height:22px; width: 55px; height: 22px;}
 .fold_head .fold_state.fix {color:#222;}
-.fold_head .fold_state.done {color:#222}
-.fold_head .fold_state.doing {color:#888}
+.fold_head .fold_state.done {color:#222;}
+.fold_head .fold_state.doing {color:#888;}
 .fold_head .fold_category {width:100px; font-weight:200; text-align:center; color:#888;}
 
 .foldGroup .fold_cont {padding: 0; position: relative; color:#666; font-weight:200; font-size:16px; line-height:1.625;}
@@ -706,7 +666,7 @@ content: "〉";font-size: 12px;padding-left: 8px;
 .fold_cont .img_group .thumb_pic img {position:absolute; top:50%; transform: translateY(-50%); width:100%; height: auto;}
 .fold_cont .fold_detail,
 .fold_cont .fold_answer {position:relative; padding:35px 30px;}
-.fold_cont .fold_answer {border-top:1px solid #ddd }
+.fold_cont .fold_answer {border-top:1px solid #ddd;}
 .fold_cont .fold_detail .btn {margin-top:25px; padding:6px 13px; color:#222; border-color:#a1a1a1; font-size:14px; font-weight:200; background:none;}
 .fold_cont .fold_detail .img_group {margin-top: 24px; overflow: hidden;}
 .fold_cont .fold_detail img,
@@ -714,9 +674,6 @@ content: "〉";font-size: 12px;padding-left: 8px;
 .fold_cont .fold_answer > div {position:relative;}
 .fold_cont .fold_answer div:first-of-type::before{content: 'A'; display: inline-block; position: absolute; top:0px; bottom: auto; left:-35px; right: auto; width: 26px; height: 26px; border-radius: 100%; background: #fd4800; color: #ffffff; font-size: 14px; text-align: center; line-height:26px; font-weight:400;}
 
-.foldGroup.case1,
-.foldGroup.case2{}
-
 .case1 .fold_head.on,
 .case2 .fold_head.on{background:#f5f5f5;}
 .case1 .fold_head .data,
@@ -727,9 +684,9 @@ content: "〉";font-size: 12px;padding-left: 8px;
 .case1 .fold_head .fold_tit span,
 .case2 .fold_head .fold_tit span{font-size:16px; width:790px;}
 .case1 .fold_head .fold_tit span.prod,
-.case2 .fold_head .fold_tit span.prod{margin-bottom:15px; margin-left:-35px; font-size:14px; font-weight:200; color: #888; line-height:1; }
+.case2 .fold_head .fold_tit span.prod{margin-bottom:15px; margin-left:-35px; font-size:14px; font-weight:200; color: #888; line-height:1;}
 .case2 .fold_head .fold_tit span.prod {margin-left:0;}
-.case2 .fold_head .fold_state {width:150px}
+.case2 .fold_head .fold_state {width:150px;}
 
 .case1 .fold_cont .data,
 .case2 .fold_cont .data{position:absolute; top:35px; left:auto; right:100px; font-size:16px; font-weight:200; z-index:2;}
@@ -769,7 +726,6 @@ content: "〉";font-size: 12px;padding-left: 8px;
 .itemsGrp.rowtype .item_prod .itemLike {left:240px;left: 30%; z-index:99;}
 .itemsGrp.rowtype .item_prod .itemPic {position: absolute; top: 0; left: 0; margin-bottom: 0; padding-top: 0; width: 280px;width: 35%; height: 420px;}
 .itemsGrp.rowtype .item_prod .itemPic .shape {z-index: 89;}
-/* .itemsGrp.rowtype .item_prod .itemPic::after {background: #f9f9f9; opacity:1; z-index: 87;} */
 .itemsGrp.rowtype .item_prod .itemPic .pd_img {z-index: 88;}
 .itemsGrp.rowtype .item_state.soldout .itemPic:before {content:'SOLD OUT'; position:absolute; top:50%; left:50%; color:#fff; font-size:28px; font-weight:500; background:rgba(0,0,0,.7); width:100%; height:100%; transform:translate(-50%, -50%); line-height: 420px; z-index: 89; text-align:center;opacity: 1;}
 .itemsGrp.rowtype .item_prod .itemBrand {margin:0px; font-size: 16px; font-weight: 300;}
@@ -778,7 +734,6 @@ content: "〉";font-size: 12px;padding-left: 8px;
 .itemsGrp.rowtype .item_prod .itemPrice {font-size: 30px; line-height: 1; font-weight:500; margin-left:0; margin-right:0;}
 .itemsGrp.rowtype .item_prod .itemPrice_original {font-size: 20px; font-weight: 200;}
 .itemsGrp.rowtype .item_prod .itemPercent {font-size: 42px; font-weight:300; line-height: 0.8;}
-/* .itemsGrp.rowtype .item_prod .shopBagBtn {margin-top:30px;} */
 .itemsGrp.rowtype .item_prod .shopBagBtn {margin-top: 0;position: absolute;bottom: -38px;left: 330px;z-index: 50;}
 .itemsGrp.rowtype .item_prod .shopBagBtn .btn {width:178px; height:52px; border-color:#a7a7a7; color:#222; font-weight:300;}
 .itemsGrp.rowtype .item_prod .shopBagBtn .btn span {position:relative; padding-left:25px; line-height:1;}
@@ -788,12 +743,11 @@ content: "〉";font-size: 12px;padding-left: 8px;
 .item_state {position: relative; padding: 0px 10px 60px; box-sizing: border-box;}
 .item_state.soldout .itemPic:after {content: 'SOLD OUT';position: absolute;top: 50%;left: 50%;transform: translate(-50%, -50%);width:100%;height: auto;font-size: 18px;font-weight: 500;color: #fff;z-index: 30;text-align: center; opacity: 1; background: transparent;}
 .item_state.soldout .itemPic:before {content:''; position: absolute; top: 50%; left: 50%; font-size: 28px; font-weight: 500; color:#fff; background: rgba(0,0,0,.7); width: 100%; height: 100%; transform:translate(-50%, -50%); line-height: 420px; z-index: 20; text-align: center;opacity: 1;}
-/* .item_state.AD .itemPic:before {content:'AD'; position: absolute; bottom: 20px; right: 20px; font-size: 14px; font-weight: 300; letter-spacing: -0.025em; color:#888888; width: auto; height: auto; line-height: 14px; z-index: 21; text-align: right;} */
 .item_state.AD .itemPic:after {content:'AD'; position: absolute; bottom: 20px; right: 20px; font-size: 14px; font-weight: 300; letter-spacing: -0.025em; color:#888888; width: auto; height: auto; line-height: 14px; z-index: 21; text-align: right;}
 @media (max-width: 1919px) and (min-width: 1401px){/* .item_state {padding-left: 6px;padding-right: 6px;} */}
 .hgbgCa {width: 100%;height: 100%;}
 .fgRDJH {padding: 0px 40px;font-size: 0px;box-sizing: border-box;}
-	@media (max-width: 1919px) and (min-width: 1401px){.fgRDJH {padding-left: 38px;padding-right: 38px;}}
+@media (max-width: 1919px) and (min-width: 1401px){.fgRDJH {padding-left: 38px;padding-right: 38px;}}
 
 .itemLike {position: absolute;top: 20px;right: 18px;font-size: 0px;z-index: 99;width: 23px;height: 23px; background: url('/images/pc/ico_like.png');background-size: 46px;background-position:0px 0px;background-repeat: no-repeat;}
 .itemLike::before, .itemLike::after {
@@ -810,13 +764,11 @@ content: "〉";font-size: 12px;padding-left: 8px;
 .itemPic {position: relative;width: 100%;margin-bottom:20px;padding-top: 150%;font-size: 0px;overflow: hidden;background-size: cover !important;}
 .itemPic {padding-top: 135%;} /* Other Requests */
 .itemPic::before {content: "";display: block;position: absolute;top: 0px;left: 0px;width: 100%;height: 100%;opacity: 0.03;background-color: rgb(0, 0, 0);z-index: 98;}
-/* .itemPic::after {content: "";display: block;position: absolute;top: 0px;left: 0px;width: 100%;height: 100%;opacity: 0.03;background-color: rgb(0, 0, 0);z-index: 999;} */
 .itemPic .pd_img,
 .itemPic .pd_mov {position: absolute;width: 100%;height: auto;top: 50%;left: 0px;transform: translateY(-50%);}
 .itemPic .pd_mov {z-index: 2;height: 100%;left: -83.45%;width: 267%;}
 .itemPic .pd_img {z-index: 1;transition: 0.5s;}
 .itemPic .pd_img::after {content: '';display: block; height: 100%;width: 100%;background: #333;}
-/* .itemPic .pd_img {position: absolute;width: 100%;width: auto; height: auto;max-height: 500px;top: 50%;left: 50%;transform: translate(-50%,-50%);} */
 .itemOpt{z-index:3; pointer-events:none;position: absolute;bottom: -120px; left: 0; right: 0; width: 100%; height:62px;padding: 25px 0; text-align:center; color: #fff; background: rgb(0 0 0 / 0.8); transition-duration:0.45s;}
 .itemOpt.on{transition-duration:0.45s;bottom:0;}
 .itemOpt p{font-size: 12px;line-height: 1.2;padding-bottom: 15px;}
@@ -845,7 +797,7 @@ content: "〉";font-size: 12px;padding-left: 8px;
 .itemcolorchip {margin:20px 5px 0px; max-width: 208px;}
 .itemcolorchip [class*="chip_"] {position: relative;display: inline-block;width: 15px;height: 15px;font-size: 0; vertical-align: middle; margin:0 0 0 4px;border-radius: 50%;box-sizing: border-box;}
 .itemcolorchip [class*="chip_"]:before {content: "";display: inline-block;width: 100%;height: 100%;border-radius: 50%;box-sizing: border-box;}
-.itemcolorchip [class*="chip_"]:first-child {margin-left:0}
+.itemcolorchip [class*="chip_"]:first-child {margin-left:0;}
 
 .chip_color40::before {background-color: #ffffff;border: 1px solid #ddd;}
 .chip_color54::before {background-color: #000000;}
@@ -891,10 +843,6 @@ content: "〉";font-size: 12px;padding-left: 8px;
 }
 .shape span{
     color: #ffffff; text-align:center; text-indent: 10px;font-size: 14px;font-weight: 300;position: absolute;top: 50%;left: 50%;transform: translate(-50%, -50%);width: 50px;z-index: 2;
-    /* line-height: 1; */
-    /* letter-spacing: -25em; */
-    /* display: -webkit-box; */
-    /* z-index: 99999; */
 }
 .shape.dealdetail{
     width: 100%;max-width: 40px;
@@ -924,19 +872,17 @@ input[type="reset"], input[type="button"], input[type="submit"], button {line-he
 .input_wrap > .open > .tgl_dropdown.btn , .input_wrap + .open > .tgl_dropdown.btn {border-color: rgb(34 34 34 / 0.6);}
 
 /* form */
-.form_wrap {}
 .form_wrap::after,.form_field:after,.input_wrap::after {content: ''; display: block; clear: both;}
-.form_full {} 
-select, 
+select,
 .form_full input[type="text"], 
 .form_full input[type="select"], 
-.form_full input[type="password"]{ width: 100%; }
+.form_full input[type="password"]{ width: 100%;}
 .form_full .input_wrap, .form_full.input_wrap{display: block;}
 
 .form_col_w {width: 100%;}
 .form_col_c {width: 530px; margin: 0 auto;}
 .form_field {width: 100%;margin-left: 0px !important;margin-right: 0px !important;position: relative;display: -webkit-box;display: -ms-flexbox;display: flex;}
-.input_wrap{position: relative;display: table;border-collapse: separate;/*width: 100%;*/}
+.input_wrap{position: relative;display: table;border-collapse: separate;}
 .input_wrap, .input_label {vertical-align: top;text-align: left;}
 .input_label { line-height: 3.0; font-size: 16px; font-weight: 300;}
 .input_label span[class*="t_"]{display: inline !important;text-indent: -10px;margin-left: -10px;}
@@ -951,11 +897,8 @@ select,
   -webkit-appearance: none;
   border: 1px solid #D5D5D5;
   position: relative;
-  /* background: #F9F9F9; */
 }
 .form_control.err {border: 1px solid #fd4802 !important; background: #fff6f2;}
-/* .form_control.err .help_block{display: block;} */
-/* .form_control.usable{width: 80%; padding:7px 10px 7px 9px;} */
 
 .usable {display: none;}
 .form_control.usable + .usable:before {content:'사용가능';  position:absolute; top:50%; bottom: auto; right: 20px; left: auto; transform: translateY(-50%); padding-left:15px; background: url('/images/pc/ico_usable1.png') no-repeat 0 40%; color:#222; font-size:14px; font-weight:200; line-height:1;}
@@ -989,7 +932,7 @@ select,
 .help_block p[class*="t_"] span {display:inline-block;}
 
 /* 체크박스 */
-.form_field input[type="checkbox"]{ position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); border:0; } 
+.form_field input[type="checkbox"]{ position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); border:0;} 
 .form_field input[type="checkbox"] + label{ display:inline-block; position:relative; padding-left:26px; cursor:pointer; font-size: 14px; line-height: 1.5;font-weight: 300;letter-spacing: 0;} 
 .form_field input[type="checkbox"] + label:before{ 
   content:''; position:absolute; left:0; top:3px; width:20px; height:20px; text-align:center; background:#fff; /*border:1px solid #ccc;*/ border-radius: 100%; box-sizing:border-box; 
@@ -1009,7 +952,6 @@ select,
   content: ''; position:absolute; top:3px; left:0; width:20px; height:20px; background-color: #fd4800; border-radius: 100%; box-sizing:border-box; 
   background: url('/images/pc/ico_chk_rdi.png') no-repeat;
   background-position: -40px 0px;
-  /* background-position: -42px -1px; */
 }
 
 /* 이미지 체크박스 */
@@ -1018,7 +960,7 @@ select,
 
 
 /* 라디오 */
-.form_field input[type="radio"]{ position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); border:0; } 
+.form_field input[type="radio"]{ position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); border:0;} 
 .form_field input[type="radio"] + label{ display:inline-block; position:relative; padding-left:26px; cursor:pointer; font-size: 16px;line-height: 1.5;font-weight: 300;letter-spacing: 0;} 
 .form_field input[type="radio"] + label:before{ 
   content:''; position:absolute; left:0; top:3px; width:20px; height:20px; text-align:center; background:#fff; /*border:1px solid #ccc;*/ border-radius: 100%; box-sizing:border-box; 
@@ -1026,7 +968,7 @@ select,
   background-position: -60px 0px;
 } 
 
-/* 보여질 부분의 스타일을 추가하면 된다. */ 
+/* 보여질 부분의 스타일을 추가 */ 
 .form_field input[type="radio"]:checked + label:after{ 
   content: ''; position:absolute; top:3px; left:0; width:20px; height:20px; background-color: #fd4800; 
   background: url('/images/pc/ico_chk_rdi.png') no-repeat;
@@ -1103,7 +1045,7 @@ input[type="file"] {
 }
 .select_options li:hover{background-color: #dddddd;}
 .select_options li[rel="hide"] {display: none;}
-.select_options li.disabled {text-decoration:line-through; background:#f5f5f5; color:#bbb}
+.select_options li.disabled {text-decoration:line-through; background:#f5f5f5; color:#bbb;}
 .select_options li.disabled:hover,
 .select_options li.disabled:active {cursor:default;}
 .select_dress:active, .select_dress.active {background-color: #ffffff;border: 1px solid #222222;border-bottom: 1px solid #dddddd;}
@@ -1131,22 +1073,15 @@ input[type="file"] {
     line-height: 1;
     cursor: pointer;
     padding: 10px 15px;
-    /*background-color: #ffffff;*/
     background-color: transparent;
     border: 1px solid #dddddd;
 }
 .select_custom .combo .select:after {
-    /* content: '▼'; */
-    /* position: absolute; */
-    /* top: 50%; */
-    /* right: 10px; */
-
 	content: '';
     width: 0;
     height: 0;
     box-sizing: border-box;
     position: absolute;
-    /*top: 16px;*/
     top: 50%;
     transform: translateY(-50%);
     margin-top:3px;
@@ -1158,8 +1093,6 @@ input[type="file"] {
 	border: 1px solid #222;
 }
 .select_custom.on .combo .select:after {
-    /* content: '▲'; */
-	  /* top: 9px; */
     margin-top:-3px;
     border-color: transparent transparent #888888 transparent;
 }
@@ -1173,14 +1106,13 @@ input[type="file"] {
     position: absolute;
     top: 39px;
     left: 0;
-    /*z-index: 10;*/
     z-index: 3;
     border: 1px solid #222;
     border-top: 0;
     box-sizing: border-box;
     padding: 10px 0;
     width: 100%;
-    max-height: 500px;
+    max-height: 300px;
     background-color: #fff;
 }
 .select_custom[disabled] {
@@ -1197,7 +1129,6 @@ input[type="file"] {
 }
 .select_custom .combo .list>li[aria-disabled="true"] {
 	text-decoration: line-through;
-  /*background: #f5f5f5;*/
   color: #bbb;
 	pointer-events: none;
 }
@@ -1224,7 +1155,6 @@ input[type="file"] {
 	position: relative;
 }
 .select_custom .combo .list>li:hover {
-    /*background-color: #ccc;*/
     background: #f5f5f5;
 }
 /* scrollbar custom */
@@ -1241,13 +1171,7 @@ input[type="file"] {
 .tbl.scroll_tbl .body_t::-webkit-scrollbar {width: 2px;height: 2px;}
 .tbl.scroll_tbl .body_t::-webkit-scrollbar-thumb {background-color: #888888;border-radius: 0px;background-clip: padding-box;border: 0px solid transparent;}
 .tbl.scroll_tbl .body_t::-webkit-scrollbar-track{background-color: #dddddd;border-radius: 0px;}
-/* 
-  
-.tbl.scroll_tbl .body_t::-webkit-scrollbar-button:start:decrement,
-.tbl.scroll_tbl .body_t::-webkit-scrollbar-button:end:increment {display: block;height: 0;}
-.tbl.scroll_tbl .body_t::-webkit-scrollbar-track {background: rgba(0, 0, 0, .05);-webkit-border-radius: 10px;border-radius: 10px;}
-.tbl.scroll_tbl .body_t::-webkit-scrollbar-thumb {height: 50px;width: 50px;background: rgba(0, 0, 0, .2);-webkit-border-radius: 10px;border-radius: 10px;}
-  */
+
 
 /* list-type */
 
@@ -1293,43 +1217,40 @@ input[type="file"] {
 .ui-button, 
 html .ui-button.ui-state-disabled:hover, 
 html .ui-button.ui-state-disabled:active{border-color: #fff;background: #fff;font-size: 14px;padding: .6em 0.5em;color:#454545;text-align: center;}
-.ui-datepicker-today a.ui-state-active, .ui-datepicker-current-day a.ui-state-active{  background-color:rgba(159,121,82,1);   }
-.ui-state-default:hover {background-color:rgba(159,121,82,0.6);color:#fff;   }
-.ui-widget-header {font-size: 18px;font-weight: normal;line-height: 40px;background: transparent;border-width: 0;border-radius: 0;   }
-.ui-datepicker th {border-bottom:1px #9f7952 solid;color:#9f7952; font-weight: normal;font-size: 14px }
+.ui-datepicker-today a.ui-state-active, .ui-datepicker-current-day a.ui-state-active{  background-color:rgba(159,121,82,1);}
+.ui-state-default:hover {background-color:rgba(159,121,82,0.6);color:#fff;}
+.ui-widget-header {font-size: 18px;font-weight: normal;line-height: 40px;background: transparent;border-width: 0;border-radius: 0;}
+.ui-datepicker th {border-bottom:1px #9f7952 solid;color:#9f7952; font-weight: normal;font-size: 14px;}
 
 
 /* tab */
-.tab_group .tab_btn.rect{overflow:hidden}
-.tab_group .tab_btn.rect button{float:left;height:50px;border:1px solid #dadada;border-left:0;background:#ffffff;color:#242424;text-align:center;box-sizing:border-box}
-.tab_group .tab_btn.rect button:first-child{border-left:1px solid #dadada}
-.tab_group .tab_btn.rect button.on{border:0;border-right:1px solid #dadada;background:#3d3d3d;color:#ffffff}
-.tab_group .tab_btn.rect button:last-child.on{border-right:0}
-.tab_group .tab_box{display:none}
-.tab_group .tab_box.on{display:block}
+.tab_group .tab_btn.rect{overflow:hidden;}
+.tab_group .tab_btn.rect button{float:left;height:50px;border:1px solid #dadada;border-left:0;background:#ffffff;color:#242424;text-align:center;box-sizing:border-box;}
+.tab_group .tab_btn.rect button:first-child{border-left:1px solid #dadada;}
+.tab_group .tab_btn.rect button.on{border:0;border-right:1px solid #dadada;background:#3d3d3d;color:#ffffff;}
+.tab_group .tab_btn.rect button:last-child.on{border-right:0;}
+.tab_group .tab_box{display:none;}
+.tab_group .tab_box.on{display:block;}
 
 
 
 /* HEAD,FOOT Layput */
 #header,#footer {width: auto;}
-[class*="common_footer"] {/*max-width: 1780px;*/min-width: 1380px;margin: 0 auto;/*padding: 0 10px;*/}
+[class*="common_footer"] {min-width: 1380px;margin: 0 auto;}
 
 /* guide page hd */
 .quick_menu_group{display:inline-table;width:100%;height:35px;border-top:2px solid #fd4802;background:#222222;}
 .quick_menu_group .area{max-width: 1780px;padding: 0 10px;margin:0 auto;}
-.quick_menu_group .area > div{display:inline-block}
-.quick_menu_group .area > div span{}
-.quick_menu_group .inr{float:right}
+.quick_menu_group .area > div{display:inline-block;}
+.quick_menu_group .inr{float:right;}
 .quick_menu_group a{float:left;height:35px;padding:8px 4px 0;box-sizing:border-box;color:#888888;}
-.quick_menu_group .area > div:first-child span{display:inline-block;position:relative}
-.quick_menu_group .area > div:first-child a{margin:0 10px}
-.quick_menu_group .area > div:first-child span:first-child a{margin-left:0}
-.quick_menu_group .area > div:first-child span:first-child a:after{display:none}
-.quick_menu_group .area > div:first-child span a:after{position:absolute;top:13px;left:0;width:1px;height:13px;background:#959596;content:''}
+.quick_menu_group .area > div:first-child span{display:inline-block;position:relative;}
+.quick_menu_group .area > div:first-child a{margin:0 10px;}
+.quick_menu_group .area > div:first-child span:first-child a{margin-left:0;}
+.quick_menu_group .area > div:first-child span:first-child a:after{display:none;}
+.quick_menu_group .area > div:first-child span a:after{position:absolute;top:13px;left:0;width:1px;height:13px;background:#959596;content:'';}
 .quick_menu_group .inr a{margin-left:16px;color:#eeeeee;}
 
-
-
 /* ie */
 @media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
 	body,input,textarea,select,button {font-size:14px; font-family:"LATO", "Noto Sans kr", sans-serif;}
@@ -1340,125 +1261,12 @@ html .ui-button.ui-state-disabled:active{border-color: #fff;background: #fff;fon
 		line-height: 0.6 !important; 
 	}
 }
-	.pageNav .disabled a {background-position: 0 9px !important; }
-	.pageNav .disabled.prev a {background-position: -23px 9px !important; }
-	.pageNav .next a,.pageNav > li:last-child a {background-position:-64px 9px !important; }
-	.pageNav .next a {background-position: -47px 9px !important; }
+	.pageNav .disabled a {background-position: 0 9px !important;}
+	.pageNav .disabled.prev a {background-position: -23px 9px !important;}
+	.pageNav .next a,.pageNav > li:last-child a {background-position:-64px 9px !important;}
+	.pageNav .next a {background-position: -47px 9px !important;}
 	.filter_content .sort#tap01 ul li.noDepth.on > a::after {top:8px !important;}
 
-
-/* 제거예정 */
-
-/*
-.gnb .nav .ico_menu_new{position:absolute;top:6px;right:4px}
-.gnb .nav > .all_menu.on{border-top:1px solid #fd4802;border-right:1px solid #fd4802;border-left:1px solid #fd4802}
-.gnb .nav > .all_menu.on .depth_menu{display:block}*/
-/*.top_banner{height:85px}
-.top_banner > div{width:1070px;margin:0 auto}
-.top_banner > div a{float:left;position:relative;width:33.3333%;height:85px;box-sizing:border-box}
-.top_banner > div a .banner_img{float:left;width:130px;vertical-align:top}
-.top_banner > div a .banner_img2{float:left;width:130px;vertical-align:top}
-.top_banner > div a .text{float:left;width:216px}
-.top_banner > div a em,
-.top_banner > div a strong{display:block;padding-left:20px;color:#000;line-height:1em}
-.top_banner > div a em{margin-top:27px;font-size:13px}
-.top_banner > div a strong{margin-top:6px;font-size:15px}
-/*.all_menu > .area{display:none;position:absolute;top:43px;width:217px;height:533px;left:-1px;border:1px solid #fd4802;background:#fff;z-index:99999}
-.all_menu.on > .area{display:block}
-.all_menu > .area > ul{padding:13px 11px}
-.all_menu > .area > ul > li a{display:block;padding:7px 11px 6px;cursor:pointer}
-.all_menu > .area > ul > li > a:hover,
-.all_menu > .area > ul > li.on > a{background:#fd4802;color:#fff !important}
-.all_menu > .area > ul > li > .color-blue:hover,
-.all_menu > .area > ul > li.on > .color-blue{background:#445694;color:#fff !important}
-.all_menu > .area > ul > li.link > a{color:#445694}
-.all_menu > .area > ul > li > a{font-size:15px;color:#333}
-.all_menu > .area > ul > li.on .depth_menu{display:block}*/
-/* .common_header .search .search_input{width:calc(100% - 30px); padding:4px 0px 5px 0px;border:0;outline:none;font-size:18px;color:rgb(255 255 255 / 0.6);background: transparent; font-weight:200;} 
-.common_header .search .search_input::placeholder  {color: #bcbcbc;}
-.common_header .search button.close{display:none;float:none;position:absolute;top:4px;right:58px;width:19px;height:19px;margin:0}
-.common_header .search .keyword{color:#fd4802} 
-.common_header .search_group,
-.common_header .my_search_group{display:none;position:absolute;top:100%;right:0;left:0;border:1px solid #221e1f;background:#fff;z-index:99999}
-.common_header .search_group.on,
-.common_header .my_search_group.on{display:block}
-.common_header .search_group.on ~ .close,
-.common_header .my_search_group.on ~ .close{display:block}
-.common_header .search_list > div{padding:26px 0 22px;border-top:1px solid #d0d0d0;letter-spacing:-1px}
-.common_header .search_list > div ul{margin-top:-5px}
-.common_header .search_list > div p,
-.common_header .search_list > div li{padding:0 23px 0;box-sizing:border-box}
-.common_header .search_list > div a{display:block;margin-top:5px;padding:3px 0}
-.common_header .search_list > div a:hover{background:#F5F5F5}
-.common_header .search_list > div:first-child{overflow:hidden;padding:28px 0 22px;border:0;font-size:14px;color:#221e1f}
-.common_header .search_list > div:first-child li{float:left;width:50%}
-.common_header .search_list > div p{margin-bottom:14px;font-weight:bold;font-size:15px}
-.common_header .search_list #ark_content_list .snr{font-weight:nomal; padding: 0 23px 0;}
-.common_header .search_list .category{font-size:13px}
-.common_header div.close{padding:0;border-top:1px solid #d0d0d0;background:#ebebeb;text-align:right;clear:both}
-.common_header div.close a{display:inline-block;margin:9px 0 8px 0;padding:0}
-.common_header div.close a:hover{background:none}
-.common_header div.close i{margin:4px 10px 0 8px;vertical-align:top}
-.common_header .my_search_group > .area{overflow:hidden}
-.common_header .hot_search_list,
-.common_header .my_search_list{display:table-cell;position:relative;width:50%;padding-bottom:50px}
-.common_header .my_search_list > button{position:absolute;right:12px;bottom:14px;font-weight:bold;font-size:13px;color:#a29b9d}
-.common_header .my_search_list > button i{margin-left:8px}
-.common_header .hot_search_list{border-right:1px solid #d0d0d0;box-sizing:border-box}
-.common_header .my_search_group > .area{display:table;width:100%}
-.common_header .my_search_group > .area p{padding:30px 0 20px 24px;font-weight:bold;font-size:15px}
-.common_header .my_search_group > .area li{position:relative}
-.common_header .my_search_group > .area li a{display:block;padding:5px 0 5px 27px;color:#221e1f}
-.common_header .my_search_group > .area li a + a{position:absolute;top:10px;right:18px;height:13px;padding:0;z-index:1}
-.common_header .my_search_group > .area li a span{display:inline-block;padding-right:5px}
-.common_header .premium_band{border-top:1px solid #efedf0;background:url(/images/pc/common/@sample_premium_band.jpg) repeat;text-align:center; height:110px}
-.common_header .premium_band div{width:1070px;margin:0 auto;padding:15px 0 0 0;}
-.common_header .premium_menu{position:relative}
-.common_header .premium_menu > ul{width:1070px;height:71px;margin:0 auto}
-.common_header .premium_menu > ul > li{display:inline-block;position:relative;width:177px}
-.common_header .premium_menu > ul > li + li{margin-left:-4px}
-.common_header .premium_menu > ul > li > a{display:block;height:71px;font-size:16px;color:#000;line-height:71px;text-align:center}
-.common_header .premium_menu div{display:none;position:absolute;top:100%;right:0;left:0;padding:20px 0 26px;z-index:11}
-.common_header .premium_menu div ul{overflow:hidden;border-right:1px solid #cdcdcd}
-.common_header .premium_menu div ul li + li{margin-top:10px}
-.common_header .premium_menu div a{display:inline-block;overflow:hidden;max-width:100%;height:20px;margin:0 10px;padding:0 3px 6px;font-size:14px;color:#3d3d3d;white-space:nowrap;text-overflow:ellipsis;line-height:1em;box-sizing:border-box}
-.common_header .premium_menu div a:hover{border-bottom:1px solid #000}
-.common_header .premium_menu > ul > li:last-child div ul{border:0}
-.common_header .premium_menu .menu_bg{display:none;position:absolute;top:72px;right:0;left:0;height:332px;border-bottom:1px solid #e0e1e5;background:#fff;z-index:10}*/
-/* .all_menu.on .depth_menu{display:block;}
-.all_menu .depth_menu{display:none;position:absolute;top:190px;left:0;width:100%;min-width:1350px;height:535px;padding:23px 21px;border:1px solid #fd4802;background:#fff;box-sizing:border-box;clear:both;z-index: 200;}
-.all_menu .depth_menu .step1{position: relative;float: left;top: 0px;box-sizing: border-box;width: 300px;height: 600px;padding: 4px 0px 0px 48px;z-index: 1;}
-.all_menu .depth_menu .step2{position: relative;float: left;width: calc(100% - 300px);height: 600px;box-sizing: border-box;padding-left: 30px;}
-.all_menu .depth_menu.advertisement{overflow:hidden;width:595px}
-.all_menu .depth_menu.advertisement > div{float:left;width:337px}
-.all_menu .depth_menu.advertisement > div:first-child{width:197px;margin-right:17px}
-.all_menu .depth_menu.advertisement .area ul{margin-top:-29px}
-.all_menu .depth_menu.advertisement .area li{margin-top:26px}
-.all_menu .depth_menu.advertisement .area img{display:block;width:100%}
-.all_menu .depth_menu.advertisement .area strong,
-.all_menu .depth_menu.advertisement .area span{display:block;padding:0 10px;font-size:16px}
-.all_menu .depth_menu.advertisement .area strong{margin-top:10px}
-.all_menu .depth_menu.advertisement .area span{color:#777}
-.all_menu .depth_menu.size_mideum{width:275px}
-.all_menu .depth_menu.thumbnail_box{overflow:hidden;width:715px;height:535px}
-.all_menu .depth_menu.thumbnail_box ul{margin-top:-31px}
-.all_menu .depth_menu.thumbnail_box li{float:left;width:14.2%}
-.all_menu .depth_menu.thumbnail_box a{margin:0 !important}
-.all_menu .depth_menu.thumbnail_box img{display:block;width:68px;height:68px;margin:31px auto 0;border:transparent;border-radius:50%}
-.all_menu .depth_menu.thumbnail_box span{display:block;margin-top:10px;text-align:center}
-.all_menu .depth_menu p{margin-bottom:23px;font-size:22px;letter-spacing:-1px}
-.all_menu .depth_menu p > a{display:inline-block !important;position:relative;width:59px;height:18px;margin:4px 0 -2px 4px;padding:3px 5px 0 !important;background:#333;font-size:11px;color:#fff;line-height:1em;box-sizing:border-box}
-.all_menu .depth_menu p .ico_arr_rgt{position:absolute;top:5px;right:4px}
-.all_menu .depth_menu ul + ul{margin-top:8px;border-top:1px solid #eee}
-.all_menu .depth_menu ul li:first-child a{margin-top:7px}
-.all_menu .depth_menu a{padding:3px 0 2px !important;font-size:14px}
-
-.all_menu .depth_menu a:hover {font-weight: bold; color: #fd4802;}
-.all_menu .depth_menu ul:nth-child(3) a:hover {font-weight: bold; color: #445694;} 
-.all_menu ul li:nth-last-child(2) .depth_menu a:hover {font-weight: bold; color: #445694;}
-.all_menu ul li:nth-last-child(4) .depth_menu ul:nth-child(3) a:hover {font-weight: bold; color: #fd4802;}*/
-
-
 /* slide custom */
 .slick-dots {position: absolute;bottom: 25px;display: block;width: 100%;padding: 0;margin: 0;list-style: none;text-align: center;}
 .slick-dots li {position: relative;display: inline-block;width: 10px;height: 10px;margin: 0 5px;padding: 0;cursor: pointer;}
@@ -1845,13 +1653,11 @@ button.alertCls {-webkit-appearance: none;padding: 0;cursor: pointer;background:
 
 
 
-/* .modal, .pop_cont {scrollbar-width: thin; scrollbar-color: #888888 #dddddd;} 파이어폭스 스크롤바 css */
-
-.modal-spinner{display:none;position:fixed;top:50%;left:50%;transform:translateY(-50%) translateX(-50%);padding:12px 16px;border-radius:5px;background-color:#111;height:20px}
-.modal-spinner>div{border-radius:100px;background-color:#fff;height:20px;width:2px;margin:0 1px;display:inline-block;-webkit-animation:sk-stretchdelay 1.2s infinite ease-in-out;animation:sk-stretchdelay 1.2s infinite ease-in-out}
-.modal-spinner .rect2{-webkit-animation-delay:-1.1s;animation-delay:-1.1s}
-.modal-spinner .rect3{-webkit-animation-delay:-1.0s;animation-delay:-1.0s}
-.modal-spinner .rect4{-webkit-animation-delay:-0.9s;animation-delay:-0.9s}
+.modal-spinner{display:none;position:fixed;top:50%;left:50%;transform:translateY(-50%) translateX(-50%);padding:12px 16px;border-radius:5px;background-color:#111;height:20px;}
+.modal-spinner>div{border-radius:100px;background-color:#fff;height:20px;width:2px;margin:0 1px;display:inline-block;-webkit-animation:sk-stretchdelay 1.2s infinite ease-in-out;animation:sk-stretchdelay 1.2s infinite ease-in-out;}
+.modal-spinner .rect2{-webkit-animation-delay:-1.1s;animation-delay:-1.1s;}
+.modal-spinner .rect3{-webkit-animation-delay:-1.0s;animation-delay:-1.0s;}
+.modal-spinner .rect4{-webkit-animation-delay:-0.9s;animation-delay:-0.9s;}
 @-webkit-keyframes sk-stretchdelay{
   0%,40%,100%{
       -webkit-transform:scaleY(0.5)

File diff suppressed because it is too large
+ 154 - 207
src/main/webapp/ux/pc/css/layout.css


+ 31 - 196
src/main/webapp/ux/pc/css/main.css

@@ -1,12 +1,9 @@
 @charset "utf-8";
 
 /* swiper 변환 추가 css */
-/* .w700{width:1140px !important;} */
 .swi-po_rel{position:relative;}
 .version02{position:static;}
 .ta_center{text-align:center;}
-/*.swiper-button-prev.sbtn01_lb::after{content:""; display:inline-block; width:29px; height:87px; background:url(/images/pc/ico_arr_lg.png) 0% 50% no-repeat;}
-.swiper-button-next.sbtn01_rb::after{content:""; display:inline-block; width:29px; height:87px; background:url(/images/pc/ico_arr_lg.png) 100% 50% no-repeat;}*/
 .swiper-button-prev.sbtn02_lb{pointer-events:none;}
 .swiper-button-next.sbtn02_rb{pointer-events:none;}
 .swiper-button-prev.sbtn02_lb::after{content:""; display:inline-block; width:29px; height:87px; background:url(/images/pc/ico_arr_lg.png) 0% 50% no-repeat; position:relative; top:-50px; pointer-events:visible;}
@@ -23,19 +20,9 @@
 .main_visual .slide-curb-pause:after, 
 .main_visual .slide-curb-pause:before {content:"";display:inline-block;width:2px;height:12px;background:#888;}
 .main_visual .slide-curb-pause:before {float:right;}
-.main_visual .swiper-controls {/* display: inline-block; */}
 .main_visual .swiper-controls .swiper-pagination {position: relative;width:auto;display: inline-block;}
 
 
-
-/* 
-.slider-1[data-slider-1-autoplay-status="Y"] .btn-play {
-    display:none;
-}
-.slider-1[data-slider-1-autoplay-status="N"] .btn-stop {
-    display:none;
-} 
-*/
 /* 각버튼 테스트2 */
 .btn_shape.active{
 	border-left:1px solid #f5f5f5;border-bottom:1px solid #f5f5f5;
@@ -59,25 +46,19 @@
 	content:"";bottom:-1px;right:-1px;position:absolute;height:0px;width:0;padding:0px 0px 0px 0px;
 	border-left:0px solid #0183fd;border-top:10px solid #0183fd;border-right:10px solid #ffffff;	
 }	
-/*  각버튼 테스트 종료 */
-/* .action{display:block;margin:0px auto;width:100%;text-align:center;} */
-/* .action a {display:inline-block;padding:5px 10px; background:#f30;color:#fff;text-decoration:none;} */
-/* .action a:hover{background:#000;} */
 
 
 /* main */
-/* .container.main .wrap {position:relative; width:100%; min-width:auto; max-width:none; padding-left:0px; padding-right:0px;} */
-.main {}
 .main .dpnone {display:none;}
 .main .swiper-pagination {margin:0; position:relative;}
 .main .wrap .content {padding-top:60px; padding-bottom:60px; padding-left:70px; padding-right:70px;}
 .main .wrap .content.wide {padding-left:0; padding-right:0;}
-.main .wrap .content.wide:first-child{/*background:#222222;*/ padding:0px !important;}
+.main .wrap .content.wide:first-child{ padding:0px !important;}
 .main .wrap .content .cont_head {color:#222222; font-size:40px; line-height:1; letter-spacing:-.025em;}
 
 .main .post-visual .swiper-slide::before{display:none;}
 
-.main_visual::before {content:'';display:block;width:100%; /*height:72px;*/ height:172px; position:absolute; top:-100px; left:0; background:#222222; z-index:-1;}
+.main_visual::before {content:'';display:block;width:100%; height:172px; position:absolute; top:-100px; left:0; background:#222222; z-index:-1;}
 .post-visual .btn {font-weight:300; border:1px solid #a7a7a7;}
 .post-visual .txtWrap{position:absolute; top:auto;bottom:100px;left:90px;right:auto;z-index:1; width: 85%;} 
 .post-visual .txtWrap dl,
@@ -88,15 +69,13 @@
 .post-visual .txtWrap dt {font-size:18px; padding-bottom:20px; font-weight:200;}
 .post-visual .txtWrap dd {font-size:62px; max-height:122px; line-height:1;font-weight:500; display: -webkit-box;text-overflow: ellipsis;-webkit-line-clamp: 2;-webkit-box-orient: vertical; overflow:hidden;}
 .post-visual .txtWrap dd.txt_xs {font-size:18px;line-height:1;font-weight:200;padding:20px 0 0px 0; display: -webkit-box;text-overflow: ellipsis;-webkit-line-clamp: 1;-webkit-box-orient: vertical; max-height:37px; overflow:hidden;}
-/* .post-visual .vrt_txt{width:auto;height:auto;font-size:18px;color:#888888;position:absolute;left:-90px;bottom:-99px;top:0;-webkit-transform:rotate(-90deg);transform:rotate(-180deg); white-space: nowrap; -webkit-writing-mode:vertical-rl;-ms-writing-mode:tb-rl;writing-mode:vertical-rl;} */
 .post-visual .vrt_txt{width: 500px;height: 20px;box-sizing: content-box;display: inline-block;text-align: left;font-size: 18px;color: #888888;position: absolute;left: -80%;bottom: 160px;position: relative;left: -65%;bottom: -160px;top: auto;-webkit-transform: rotate(-90deg);transform: rotate(-90deg);white-space: nowrap;}
 .post-visual.swiper-container {margin-left:-30px;}
 .post-visual .swiper-pagination-bullets{bottom:0px;}
 .post-visual .swiper-wrapper{width:100%;height:750px; height:auto; margin:0px auto;padding-bottom:65px;filter:drop-shadow(0px 0px 10px rgba(0, 0, 0, 0.2));}
-.post-visual .swiper-slide-active {}
 .post-visual .swiper-slide-active .txtWrap dl, 
 .post-visual .swiper-slide-active .txtWrap dl + .btn {opacity:1;}
-.post-visual .swiper-slide{width:auto;/* margin-right:440px !important; */}
+.post-visual .swiper-slide{width:auto;}
 .post-visual .swiper-slide{
 	max-width: 1120px;
     max-height: 700px;
@@ -110,12 +89,9 @@
 
 /* 크롬일경우 */
 .post-visual .swiper-slide {
-	/* padding:15px; */
 	padding-left:30px;
 	box-shadow:0 0px 30px rgba(0,0,0,0.20), 0 0px 30px rgba(0,0,0,0.20);
 	position:relative;
-	/* margin:0 50px; */
-
 	mask-image:
 	linear-gradient(to top right, transparent 49.5%, white 50.5%), 
 	linear-gradient(to top left, transparent 49.5%, white 50.5%), 
@@ -162,29 +138,8 @@
 	.post-visual .vrt_txt {bottom:-120px !important;}
 	.post-visual.swiper-container {margin-left:0px;}
 	.main .post-visual .swiper-slide {padding-bottom:20px; mask-size:none;}
-	.main .post-visual .swiper-slide-prev {}
-	.main .post-visual .swiper-slide-active {}
 	.main .post-visual .swiper-slide::before {display:block;}
 	.main .post-visual .swiper-slide img {box-shadow:0px 0px 30px rgba(0,0,0,0.2), 0px 0px 30px rgba(0,0,0,0.2);} 
-	/* .brand_main .post-visual .swiper-slide img::before{
-		content:'';
-		position:absolute;
-		width:150px;
-		height:120px;
-		bottom:-50px;
-		right:-65px;
-		border:0px;
-		transform:rotate(135deg);
-		/* box-shadow:inset 0 -50px 30px -30px rgba(0,0,0,0.20); 
-		box-shadow:inset 0 -30px 20px -20px rgba(0,0,0,0.20);
-		box-shadow:inset 0px -60px 30px -50px rgba(0,0,0,0.20);
-		background:#fff;
-		background:linear-gradient(0deg, #fff 104px, transparent 0);
-		z-index:1;
-		z-index:9999;
-		display:none;
-	}  */
-
 	.main .post-visual .swiper-slide img::after{
 		content:'';
 		position:absolute;
@@ -209,26 +164,12 @@
 		right:-85px;
 		border:0px;
 		transform:rotate(135deg);
-		/* box-shadow:inset 0 -50px 30px -30px rgba(0,0,0,0.20); */
 		box-shadow:inset 0 -30px 20px -30px rgba(0,0,0,0.20);
 		box-shadow:inset 0px -60px 20px -50px rgba(0,0,0,0.20);
 		background:#fff;
 		background:linear-gradient(0deg, #fff 120px, transparent 0);
 		z-index:1;
-		
-		/*	
-			border-right:0px;
-			border-left:0px;
-			border-top:0px;
-			border-bottom:1px;
-			box-sizing:border-box;
-			border-style:solid;
-			transform:rotate(135deg);
-			border-image:linear-gradient(-135deg, transparent 0%,rgb(0 0 0 / 23%) 100% );
-			border-image-slice:160;
-		*/
-	}   
-
+	}
 	.main .post-visual .swiper-slide .vrt_txt {left:-50%;left:-354px;}
 }
 
@@ -255,63 +196,13 @@
     width:100%;
     height:100%;
 	z-index:-1;
-/*	
-    background:#777;
-    -webkit-box-shadow:0 15px 10px #777;
-    -moz-box-shadow:0 15px 10px #777;
-    box-shadow:0 15px 10px #777;
-    -webkit-transform:rotate(-3deg);
-    -moz-transform:rotate(-3deg);
-    -o-transform:rotate(-3deg);
-    -ms-transform:rotate(-3deg);
-    transform:rotate(-3deg);
-*/
 }  
 
-/* 
-.post-visual .swiper-slide::after {
-	content:"";
-	top:0;
-    right:-10px;
-    position:absolute;
-    border-left:10px solid #0183fd;
-    border-bottom:10px solid transparent;
-    border-right:0px solid #0183fd;
-    height:30px;
-    width:0;
-	padding:0px 0px 0px 0px;
-
-	box-shadow:0 3px 6px rgba(0,0,0,0.16), 0 3px 6px rgba(0,0,0,0.23);
-    box-shadow:inset 0 -5px 5px -5px #333, inset 0 5px 5px -5px #333, inset -5px 0 5px -5px #333;
-} */
-
-/* 
-.post-visual .swiper-slide::after {
-	content:"";
-    z-index:-1;
-    position:absolute;
-    top:0;
-    left:0;
-    width:100%;
-    height:100%;
-    display:block;
-    background:currentColor;
-	clip-path:polygon(40px 0, 40px 30px, 30px 40px, 0 40px, 0 0);
-    clip-path:polygon(100% 0, 100% 75%, 75% 100%, 0 100%, 0 0);
-    clip-path:polygon(100% 0, 100% calc( 100% - 10px), calc( 100% - 10px) 100%, 0 100%, 0 0);
-} 
- */
-
-
-
-
-
 /* main_stylereport */
 .main .wrap .content.main_stylereport {margin-top:20px;padding-bottom: 40px;}
 .main_stylereport .cont_head {padding-bottom:60px;}
 .main_stylereport .cont_body a {text-align:center;color:#222222;}
 .main_stylereport .cont_body img {width:100%; height:auto; object-fit:cover;}
-.main_stylereport .cont_body dl {}
 .main_stylereport .cont_body dt {font-size:24px; font-weight:300; margin:25px 0 17px 0; display: -webkit-box;text-overflow: ellipsis;-webkit-line-clamp: 2;-webkit-box-orient: vertical; overflow:hidden; line-height: 1.2;}
 .main_stylereport .cont_body dd {font-size:16px; font-weight:200; line-height:26px; display: -webkit-box;text-overflow: ellipsis;-webkit-line-clamp: 2;-webkit-box-orient: vertical; overflow:hidden;}
 @media screen and (max-width:1460px) {
@@ -322,17 +213,15 @@
 .main .wrap .content.main_trendy {background:#f5f5f5; margin-top:60px; margin-bottom:60px; padding-bottom: 10px;}
 .main_trendy .cont_head {padding:60px 0 60px 0;}
 .main_trendy .cont_body {position:relative; padding:0 60px;}
-.main_trendy .cont_body dl {}
 .main_trendy .cont_body dt {font-size:26px;font-weight:400;padding:28px 0 24px 0;}
 .main_trendy .cont_body dd {font-size:16px;font-weight:200;padding:10px 0 0;}
-.main_trendy .swiper-container {}
 .main_trendy .swiper-wrapper{padding-bottom:0px; min-height:670px;}
 .main_trendy .swiper-slide {width:calc((100% - 88px)/5 * 0.92); transition:all 200ms ease;}
-.main_trendy .swiper-slide.scaleBig {width:calc((100% - 88px)/5 * 1.12)}
+.main_trendy .swiper-slide.scaleBig {width:calc((100% - 88px)/5 * 1.12);}
 .main_trendy .item_state {padding:0;}
 .main_trendy .item_prod {width:100%;}
 .main_trendy .swiper-controls {padding-bottom:80px;}
-.main_trendy .swiper-pagination {margin-top:60px}
+.main_trendy .swiper-pagination {margin-top:60px;}
 .main_trendy .swiper-button-next, 
 .main_trendy .swiper-button-prev {top:210px;}
 .main_trendy .swiper-button-next {right:0px;}
@@ -353,9 +242,8 @@
 .main_it .item_state {padding:0 0 60px;}
 .main_it .item_prod {width:100%;}
 .main_it .it_nav {position:absolute; left:-380px; top:195px; width:300px;}
-.main_it .it_nav li {margin-top:26px}
-.main_it .it_nav li:first-child {margin-top:0}
-.main_it .it_nav li .btn {}
+.main_it .it_nav li {margin-top:26px;}
+.main_it .it_nav li:first-child {margin-top:0;}
 .main_it .it_nav li .btn.btn_link {display:inline-block; padding:0; border:none; color:#888888; font-size:20px; font-weight:200; line-height:1; transition:all 100ms ease;}
 .main_it .it_nav li .btn.btn_link span::after {content:''; display:none;}
 .main_it .it_nav li .btn.btn_link:hover{text-decoration:none;}
@@ -370,8 +258,6 @@
 }
 
 /* main_2stage */
-.main .wrap .content.main_2stage {}
-.main_2stage .cont_body {}
 .bnnbox_crop {width:100%;}
 .bnnbox_crop::after {content:''; clear:both; display:block;}
 .bnnbox_crop > div {width: 100%;height: 230px;float: none;overflow: hidden;}
@@ -397,7 +283,6 @@
 .main_deal .deal_progress .bar_current {background:#333; position:absolute; top:0; left:0; height:4px; z-index:2; max-width:100%;}
 .main_deal .deal_progress .bar_current span {width: 62px; z-index: 3; position:absolute; right:-31px; top:-45px; background:#fd4802; padding:8px 10px; font-size:14px; color:#fff; font-weight:300; letter-spacing:0.1em;}
 .main_deal .deal_progress .bar_current span:after {content:''; position:absolute; left:50%; bottom:-10px; border:5px solid transparent; transform:translateX(-50%); border-top:5px solid #fd4802;}
-.main_deal .count {}
 .main_deal .count .hotdeal:after {content:''; display:block; clear:both;}
 .main_deal .count .count_tit {display:inline-block; color:#ffffff; font-size:16px; font-weight:500;}
 .main_deal .count .count_time {position:relative; left:auto; width:100%;}
@@ -422,7 +307,6 @@
 }
 
 /* main_pick */
-.main .wrap .content.main_pick {}
 .main_pick .cont_head {padding-bottom:60px;}
 .main_pick .cont_body {padding:0;position:relative;}
 .main_pick .cont_body .post-pick-nav {width:1250px; height:auto; background:#ffffff;margin:0 auto; cursor:pointer; padding:0 20px;}
@@ -455,11 +339,10 @@
 
 
 /* main_1stage */
-.main .wrap .content.main_1stage {}
 .main_1stage .bnnbox{position:relative;}
 .main_1stage .txtWrap{width: 445px; margin:0 auto; position:absolute; top:50%; left:31.25%; transform:translate(0, -50%);z-index:1; text-align:left;}
 .main_1stage .txtWrap p{line-height: 1; display: -webkit-box; text-overflow: ellipsis; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; color:#222222; font-size:40px; font-weight:500; text-align:left; line-height:1.25;}
-.main_1stage .txtWrap .btn{position:relative; width:160px; height:52px; border:1px solid #959899; margin:20px auto 0; text-align:center; font-weight:300; }
+.main_1stage .txtWrap .btn{position:relative; width:160px; height:52px; border:1px solid #959899; margin:20px auto 0; text-align:center; font-weight:300;}
 .main_1stage img {margin:0 auto;width:100%;}
 .post-bnnWide .swiper-button-next {right:70px;}
 .post-bnnWide .swiper-button-prev {left:70px;}
@@ -470,7 +353,6 @@
 
 
 /* main_recomm */
-.main .wrap .content.main_recomm {}
 .main_recomm .cont_head {padding-bottom:50px;}
 .main_recomm .cont_body {padding:0 70px;}
 .main_recomm .sec_head {text-align:center;}
@@ -482,7 +364,6 @@
 .main_recomm .tag_list button.active:after{content:""; bottom:0px; right:0px; position:absolute; height:0px; width:0; padding:0px 0px 0px 0px; background:#222222; border-left:0px solid #ffffff; border-top:10px solid #222222; border-right:10px solid #ffffff;}	
 .main_recomm .tagitem {display:none;}
 .main_recomm .tagitem.active {display:block;}
-.main_recomm .swiper-slide {}
 .main_recomm .item_prod {width:100%;}
 .main_recomm .item_state {width:100%; padding:0;}
 .main_recomm .swiper-controls {margin-top:60px}
@@ -492,7 +373,6 @@
 
 }
 
-
 /* main_foryou */	
 .main .wrap .content.main_foryou {position:relative; display:block; width:100%; height:auto; margin-top:60px; padding:120px 140px; background-color:#f5f5f5;}
 .main_foryou::after {content:''; display:block; clear:both;}
@@ -503,7 +383,7 @@
 .fy_nav .btn_shape {width:100%; height:60px; padding:20px 115px 20px 30px; background:#fff; transition:none;}
 .fy_nav .btn_shape div {display:inline-block; text-align:left; width:100%; line-height:1; vertical-align:top;}
 .fy_nav .btn_shape div span {color:#888888; font-size:18px; font-weight:300; line-height:1;display: inline;}
-.fy_nav .btn_shape div::after {content: ''; display: inline-block; clear: both; }
+.fy_nav .btn_shape div::after {content: ''; display: inline-block; clear: both;}
 .fy_nav .btn_shape div .number { float: left; padding-right:25px; color:#222222; font-size:20px; font-weight:500;}
 .fy_nav .btn_shape div .number + span {color:#888888; font-size:18px; font-weight:300; line-height:1.2;width: 151px;display: inline-block;overflow: hidden;white-space: normal;overflow-wrap: break-word;display: -webkit-box;text-overflow: ellipsis;-webkit-line-clamp: 1;-webkit-box-orient: vertical;}
 .fy_nav .btn_shape + a {display:none;}
@@ -528,13 +408,13 @@
 .fy_item .part .itemBrand,
 .fy_item .part .itemName,
 .fy_item .part .itemPrice {color:#ffffff; width:100%; max-width:none; word-break:keep-all;}
-.fy_item .part .itemPercent {position:relative; left:auto; right:auto; padding:0; margin:0}
+.fy_item .part .itemPercent {position:relative; left:auto; right:auto; padding:0; margin:0;}
 .post-sug .swiper-slide ul li{position:relative; margin:12px 0 0; background-color:rgb(255 255 255);}
 .post-sug .swiper-slide ul li:first-child {margin-top:0;}
 .post-sug .swiper-controls {bottom:-50px;}
 @media screen and (max-width:1460px) {
-	.main .wrap .content.main_foryou {padding-left:70px; padding-right:70px}
-	.main_foryou .cont_head {left:70px}
+	.main .wrap .content.main_foryou {padding-left:70px; padding-right:70px;}
+	.main_foryou .cont_head {left:70px;}
 }
 
 
@@ -548,14 +428,13 @@
 .post-tv .swiper-slide .movbox {position:relative; width:100%; height:0; padding-top:56.1818%; overflow:hidden; transition:all 300ms ease; transform:scale(1); pointer-events: none;}
 .post-tv .swiper-slide .movbox iframe {position:absolute; left:0; right:0; top:0; bottom:0; width:100%; height:100%; z-index:1; }
 .post-tv .swiper-slide-active .movbox {transform:scale(1.24); pointer-events:auto;}
-.post-tv .swiper-slide-active .movbox iframe {}
 .post-tv .swiper-button-next,
 .post-tv .swiper-button-prev{opacity:0.5;}
 .post-tv .swiper-button-next:hover,
 .post-tv .swiper-button-prev:hover{opacity:1; background-image:url('/images/pc/ico_slide_arrow_orange.png');}
 .post-tv .swiper-button-next {right:140px;}
 .post-tv .swiper-button-prev {left:140px;}
-.main_tv .swiper-controls {margin-top:40px}
+.main_tv .swiper-controls {margin-top:40px;}
 @media screen and (max-width:1460px) {
 	.post-tv .swiper-button-next {right:70px;}
 	.post-tv .swiper-button-prev {left:70px;}
@@ -582,13 +461,11 @@ header.minify .common_header.br_header::after {bottom:-565px;}
 
 .brand_main .swiper-slide .item_prod {width:100%;}
 .brand_main .swiper-slide .item_prod .item_state {padding:0;}
-.brand_main .swiper-slide .item_prod .item_state a.itemLink {}
 
 /* brand_visual */
-.brand_main .wrap .content.brand_visual {max-width:1920px; margin:auto; padding-left:200px}
+.brand_main .wrap .content.brand_visual {max-width:1920px; margin:auto; padding-left:200px;}
 
-.brand_main .brand_visual {margin:0}
-.brand_main .brand_visual .cont_body {}
+.brand_main .brand_visual {margin:0;}
 .brand_main .brand_visual .swiper-button-prev {left:70px; opacity:0.5;}
 .brand_main .brand_visual .swiper-button-next {right:70px; opacity:0.5;}
 .brand_main .brand_visual .swiper-button-disabled {display: none;}
@@ -617,14 +494,14 @@ header.minify .common_header.br_header::after {bottom:-565px;}
 .brand_main .post-visual .swiper-slide-prev {opacity:0;}
 .brand_main .post-visual .swiper-slide-next {opacity:1 !important; padding-left:0px; padding-right:440px;}
 .brand_main .post-visual .swiper-controls {position:absolute; width:auto; bottom:100px; left:50%; padding-right:15px; z-index:10; margin-left:-780px;}
-.brand_main .post-visual .swiper-controls .swiper-pagination {margin-top:0}
+.brand_main .post-visual .swiper-controls .swiper-pagination {margin-top:0;}
 
 /* brand_about */
-.brand_main .wrap .content.brand_info {margin-top:20px}
+.brand_main .wrap .content.brand_info {margin-top:20px;}
 .brand_main .brand_info .cont_body {padding:80px 6.7%; background:#f5f5f5;}
 .brand_main .brand_info .cont_body .brand_tit, .brand_main .brand_info .cont_body .brand_desc {float:left;}
 .brand_main .brand_info .cont_body .brand_tit {width:20%; margin-right:2%;}
-.brand_main .brand_info .cont_body .brand_desc {width:78%}
+.brand_main .brand_info .cont_body .brand_desc {width:78%;}
 .brand_main .brand_info .cont_body .brand_tit p {margin-bottom:30px; font-size:30px; font-weight:500;}
 .brand_main .brand_info .cont_body .brand_tit a {background:url(/images/pc/ico_ic_btn.png) no-repeat right center; padding-right:20px; font-size:16px; color:#666;}
 .brand_main .brand_info .cont_body .brand_desc .cate {margin-bottom:25px; font-size:20px; font-weight:500;}
@@ -632,19 +509,17 @@ header.minify .common_header.br_header::after {bottom:-565px;}
 
 /* brand_newitems */
 .brand_main .wrap .content.new_item {margin-bottom: -120px;}
-.new_item .cont_head {margin-bottom:60px}
+.new_item .cont_head {margin-bottom:60px;}
 .new_item .cont_body {position:relative; padding:0 70px;}
-.new_item .cont_body dl {}
 .new_item .cont_body dt {font-size:26px;font-weight:400;padding:28px 0 24px 0;}
 .new_item .cont_body dd {font-size:16px;font-weight:200;padding:10px 0 0;}
-.new_item .swiper-container {}
 .new_item .swiper-wrapper{padding-bottom:0px; min-height:670px;}
 .new_item .swiper-slide {width:calc((100% - 88px)/5 * 0.92); transition:all 200ms ease;}
-.new_item .swiper-slide.scaleBig {width:calc((100% - 88px)/5 * 1.12)}
+.new_item .swiper-slide.scaleBig {width:calc((100% - 88px)/5 * 1.12);}
 .new_item .item_state {padding:0;}
 .new_item .item_prod {width:100%;}
 .new_item .swiper-controls {padding-bottom:80px;}
-.new_item .swiper-pagination {margin-top:60px}
+.new_item .swiper-pagination {margin-top:60px;}
 .new_item .swiper-button-next, 
 .new_item .swiper-button-prev {top:250px;}
 .new_item .swiper-button-next {right:0px;}
@@ -654,8 +529,7 @@ header.minify .common_header.br_header::after {bottom:-565px;}
 }
 
 /* brand_bestitems */
-.brand_main .wrap .content.best_item {}
-.brand_main .best_item .cont_head {margin-bottom:60px}
+.brand_main .best_item .cont_head {margin-bottom:60px;}
 .brand_main .best_item .cont_body {padding-left:70px; padding-right:70px;}
 .brand_main .best_item .swiper-button-next {right:0px; margin-top:-120px;}
 .brand_main .best_item .swiper-button-prev {left:0px; margin-top:-120px;}
@@ -664,7 +538,6 @@ header.minify .common_header.br_header::after {bottom:-565px;}
 }
 
 /* brand_mditems */
-.brand_main .wrap .content.md_item {}
 .brand_main .md_item .cont_head {margin-bottom:60px}
 .brand_main .md_item .cont_body {padding-left:70px; padding-right:70px;}
 .brand_main .md_item .swiper-button-next {right:0px; margin-top:-120px;}
@@ -674,7 +547,6 @@ header.minify .common_header.br_header::after {bottom:-565px;}
 }
 
 /* brand_specialshop */
-.brand_main .wrap .content.special_shop {}
 .brand_main .special_shop .cont_head {margin-bottom:60px;}
 .brand_main .special_shop .cont_body {position:relative; background:#222;}
 .brand_main .special_shop .spe_thumb {float:left; position:relative; width:38%;}
@@ -692,7 +564,7 @@ header.minify .common_header.br_header::after {bottom:-565px;}
 .brand_main .special_shop .spe_pr_list .swiper-slide.view img {opacity:1;}
 .brand_main .special_shop .spe_pr_list .swiper-slide:last-child {opacity:1;}
 .brand_main .special_shop .spe_pr_list .swiper-slide .itemLink > * {color:#fff;}
-.brand_main .special_shop .spe_pr_list .slide_wrap .spe_sl {position:relative; padding:0 0 50px 0}
+.brand_main .special_shop .spe_pr_list .slide_wrap .spe_sl {position:relative; padding:0 0 50px 0;}
 .brand_main .special_shop .swiper-scrollbar {position:absolute; left:0; right:12%; bottom:0; margin:0; background:rgba(255,255,255,0.2) !important; height:2px;}
 .brand_main .special_shop .swiper-scrollbar-drag {background:rgba(255,255,255,0.6) !important;}
 .brand_main .special_shop .swiper-button-next {right:70px; opacity:0.5;}
@@ -702,14 +574,10 @@ header.minify .common_header.br_header::after {bottom:-565px;}
 }
 
 /* brand_lookbook */
-.brand_main .wrap .content.br_lookbook {}
-.brand_main .br_lookbook {}
-.brand_main .br_lookbook .cont_head {margin-bottom:60px}
+.brand_main .br_lookbook .cont_head {margin-bottom:60px;}
 .brand_main .br_lookbook .swiper-slide {width:auto; height:660px;}
 .brand_main .br_lookbook .bt_lb_item {overflow: hidden;width: 100%;height: 660px;}
-/* .brand_main .br_lookbook .swiper-slide img {width:auto; max-width: 990px;height: auto;display: block;} */
 .brand_main .br_lookbook .swiper-slide img {width: auto; height:100%; max-width: 990px;height: 100%;display: block;}
-.brand_main .br_lookbook .bt_lb_item {}
 .brand_main .br_lookbook .swiper-container {padding-top:60px;}
 .brand_main .br_lookbook .swiper-slide .bt_lb_item:after {content:''; position:absolute; top:0; left:0; width:100%; height:100%; background:rgba(0,0,0,.3);}
 .brand_main .br_lookbook .swiper-slide .bt_lb_item .item_picker {display: none;}
@@ -721,16 +589,16 @@ header.minify .common_header.br_header::after {bottom:-565px;}
 .brand_main .br_lookbook .swiper-button-prev {left:70px; opacity:0.5;}
 .brand_main .br_lookbook .swiper-slide-prev img,
 .brand_main .br_lookbook .swiper-slide-next img {transform: translate(-50%,-50%);left: 50%;top: 50%;position: relative;}
-.brand_main .br_lookbook .swiper-pagination {margin-top:40px}
+.brand_main .br_lookbook .swiper-pagination {margin-top:40px;}
 @media screen and (max-width:1460px) {
 
 }
 
 /* brand_product */
-.brand_main .wrap .content.brand_product {margin-bottom:60px}
-.brand_main .brand_product .cont_head {margin-bottom:60px}
+.brand_main .wrap .content.brand_product {margin-bottom:60px;}
+.brand_main .brand_product .cont_head {margin-bottom:60px;}
 .brand_main .brand_product .itemsGrp {margin-left:-10px; margin-right:-10px;}
-.brand_main .brand_product .btn_wrap {text-align:center; margin:0}
+.brand_main .brand_product .btn_wrap {text-align:center; margin:0;}
 .brand_main .brand_product .btn_wrap .btn {border:1px solid #a7a7a7; padding:15px 40px;}
 .brand_main .brand_product .btn_wrap .btn span {font-weight:300;}
 .brand_main .brand_product .btn_wrap .btn span:after {content:''; display:inline-block; margin-left:20px; width:7px; height:13px; background:url(/images/pc/ico_more_lg.png) no-repeat right center;}
@@ -741,7 +609,7 @@ header.minify .common_header.br_header::after {bottom:-565px;}
 /* brand_main_tv */	
 .brand_main .wrap .content.main_tv {padding-top:120px; padding-bottom:160px;}
 .brand_main .main_tv::before {background:#f5f5f5;}
-.brand_main .main_tv .cont_head p {color:#222}
+.brand_main .main_tv .cont_head p {color:#222;}
 @media screen and (max-width:1460px) {
 
 }
@@ -772,25 +640,6 @@ header.minify .common_header.br_header::after {bottom:-565px;}
 	.brand_main .post-visual .swiper-slide-active {z-index:8;}
 	.brand_main .post-visual .swiper-slide-active:before {display:block;}
 	.brand_main .post-visual .swiper-slide img {box-shadow:0px 0px 30px rgba(0,0,0,0.2), 0px 0px 30px rgba(0,0,0,0.2);} 
-	/* .brand_main .post-visual .swiper-slide img::before{
-		content:'';
-		position:absolute;
-		width:150px;
-		height:120px;
-		bottom:-50px;
-		right:-65px;
-		border:0px;
-		transform:rotate(135deg);
-		/* box-shadow:inset 0 -50px 30px -30px rgba(0,0,0,0.20); 
-		box-shadow:inset 0 -30px 20px -20px rgba(0,0,0,0.20);
-		box-shadow:inset 0px -60px 30px -50px rgba(0,0,0,0.20);
-		background:#fff;
-		background:linear-gradient(0deg, #fff 104px, transparent 0);
-		z-index:1;
-		z-index:9999;
-		display:none;
-	}  */
-
 	.brand_main .post-visual .swiper-slide img::after{
 		content:'';
 		position:absolute;
@@ -815,26 +664,12 @@ header.minify .common_header.br_header::after {bottom:-565px;}
 		right:-78px;
 		border:0px;
 		transform:rotate(135deg);
-		/* box-shadow:inset 0 -50px 30px -30px rgba(0,0,0,0.20); */
 		box-shadow:inset 0 -30px 20px -30px rgba(0,0,0,0.20);
 		box-shadow:inset 0px -60px 20px -50px rgba(0,0,0,0.20);
 		background:#fff;
 		background:linear-gradient(0deg, #fff 104px, transparent 0);
 		z-index:1;
-		
-		/*	
-			border-right:0px;
-			border-left:0px;
-			border-top:0px;
-			border-bottom:1px;
-			box-sizing:border-box;
-			border-style:solid;
-			transform:rotate(135deg);
-			border-image:linear-gradient(-135deg, transparent 0%,rgb(0 0 0 / 23%) 100% );
-			border-image-slice:160;
-		*/
 	}   
 	.main .post-visual .swiper-button-prev {margin-right:600px;}
 	.main .post-visual .swiper-button-next {margin-left:595px;}
-}
-
+}

+ 5 - 86
src/main/webapp/ux/pc/js/common-ui.js

@@ -47,7 +47,6 @@ $(document).ready(function(){
 	// header minify
 	$(function(){
 		$(window).scroll(function(){
-			//var scroll = $(this).scrollTop();
 			var headerH =  $('.common_header > .hd_top_banner').outerHeight() + $('.common_header > .area').outerHeight();
 			var miniGnbH = $('.common_header > .gnb').outerHeight();
 			if ($(window).scrollTop() >= headerH){
@@ -77,8 +76,6 @@ $(document).ready(function(){
 3. Utility (유틸리티)
 
 * * * * * * * * * * * * * * * * * * * * * */
-
-
 // FORM
 // input-File-Add
 $(document).ready(function() {
@@ -119,7 +116,6 @@ $(document).ready(function() {
 				var myrvLa = $('.myReviewWrite .form_field .imgUpload label');
 				var myrvIn = $('.myReviewWrite .form_field .imgUpload input');
 				if (imgFiles.length >= maxFileLength-1) {
-					//mcxDialog.alert('이미지는 최대' + maxFileLength +'장 까지 첨부 가능합니다.'); //210507_삭제
 					$('#fileAdd').attr("disabled",true);
 					cmtLa.css('display', 'none');
 					cmtIn.css('display', 'none');
@@ -266,17 +262,10 @@ function sCombo(selector){
 			this.$selectBox.addClass('on');
 			this.$list.css('display', 'block');
 		}
-		//this.$selectBox.toggleClass('on');
-		//if(this.$selectBox.hasClass('on')){
-		//	this.$list.css('display', 'block');
-		//}else{
-		//	this.$list.css('display', 'none');
-		//};
 	}
 	sCombo.prototype.listSelect = function($target){
 		$target.addClass('selected').siblings('li').removeClass('selected');
 		this.$selectBox.removeClass('on');
-		//this.$select.text($target.text());
 		this.$select.html($target.html());
 		this.$list.css('display', 'none');
 		console.log($target.html())
@@ -378,8 +367,6 @@ $(document).ready( function() {
 	/* 주문결제_accordion */
 	/* 210428_수정 : 아코디언 */
 	$(document).on('click','.od .foldGroup .fold_head .fold_tit',function(e){	
-		//$(this).parents('.foldGroup li').find('.fold_cont').slideToggle(100);
-		//$(this).parents('.fold_head').toggleClass('on');
 		$(this).parents('.fold_head').toggleClass('on');
 		$(this).parents('.foldGroup li').find('.fold_cont').slideToggle(100);
 		$(this).parents('li').siblings('li').find('.fold_head').removeClass('on');
@@ -415,13 +402,13 @@ $(document).ready( function() {
 		return false;
 	});
 
-	/* 전시 팝업 샘플팝업1 : 수정예정 */
+	/* 전시 팝업 샘플팝업1 */
 	$(document).on('click','#coupon_pop',function(e){
 		$("#coupon_modal_01").modal("show");
 		return false;
 	});
 	
-	/* 전시 팝업 샘플팝업2 : 수정예정 */
+	/* 전시 팝업 샘플팝업2 */
 	$(document).on('click','#coupon_pop2',function(e){	
 		$("#coupon_modal_02").modal("show");
 		return false;
@@ -438,9 +425,8 @@ $(document).ready( function() {
 		rows.eq(0).parent('tr').attr('class', 'bundle_row');
 	});
 
-	/* 드래그 스크롤 : 수정 예정 */
+	/* 드래그 스크롤 */
 	var x,left,down;
-
 	$(".bullet_sticky_nav ul").mousedown(function(e){
 		e.preventDefault();
 		down = true;
@@ -456,7 +442,7 @@ $(document).ready( function() {
 	});
 
 	$("body").mouseup(function(e){down = false;});
-	/* //드래그 스크롤 : 수정 예정 */
+	/* //드래그 스크롤 */
 
 
 	/* 상품리스트 sticky_nav_header */
@@ -507,12 +493,9 @@ $(document).ready( function() {
 		$(".sticky_nav li a").on("click", function(){
 			var hookHeader = $(".sticky_nav").outerHeight();
 			var hookHref = $(this).attr("href");
-			//var hookPot = $(hookHref == "#" || hookHref == "" ? "body" : hookHref);
 			var hookPot = $(hookHref);
 			var hookPos = hookPot.offset().top - hookHeader;
 			$("html, body").animate({scrollTop: hookPos}, 300);
-			//$('.sticky_nav li a').removeClass('active');
-			//$(this).addClass('active');
 		});
 	});
 
@@ -562,18 +545,10 @@ $(document).ready( function() {
 	//팝업 - 상품썸네일 크게보기
 	$(document).on('click','.pd_detail .area_pic .thumb_list_wrap ul li a',function(e){
 		$('body').addClass('lock');
-		// $("#pdItemThumbPop .full_pop_container").empty();
 		var thumbIndex = $(this).index() + 1;
 		var thumbImglength = $('.pd_detail .area_pic .thumb_list_wrap ul li').length;
 		var popThumbImgHtml = "";
-		// for (i = 1; i <= thumbImglength; i++) {
-		// 	//var thumbImg = $(this).find('img');
-		// 	var thumbContentHtml = $('.pd_detail .area_pic .thumb_list_wrap ul li:nth-child('+i+') a .thumb').html();
-		// 	popThumbImgHtml += "<div id=popThumb"+i+" class='scaleview'>" + thumbContentHtml + "</div>";
-		// }
-		// $("#pdItemThumbPop .full_pop_container").append(popThumbImgHtml);
-		$("#pdItemThumbPop").show(); 
-	
+		$("#pdItemThumbPop").show(); 	
 		var scrollThumbPop = $('#popThumb'+thumbIndex).offset().top;
 		var currentTop = $(window).scrollTop();
 		$('#pdItemThumbPop').animate({scrollTop : scrollThumbPop - currentTop}, 1000);
@@ -698,67 +673,11 @@ $(document).ready( function() {
 		}else {
 			$('.fold_head').removeClass('on');
             $('.fold_cont').slideUp(100);
-            //$(this).parents('.foldGroup li').find('.fold_cont').slideToggle(100);
-            //$(this).parents('.fold_head').toggleClass('on');
             if(!$(this).parents('.foldGroup li').find('.fold_cont').is(":visible")){
                 $(this).parents('.foldGroup li').find('.fold_cont').slideDown(100);
                 $(this).toggleClass('on');
             }
-			//$(this).parents('.foldGroup li').find('.fold_cont').slideToggle(100);
-			//$(this).toggleClass('on');
 		}
 	});
 
 });
-
-/////////////////////////////////////////////////////// 
-// 이하  미사용 스크립트 정리예정
-//$( document ).ready(function() {
-
-//	var footerH = $("#footer").outerHeight();
-//	var fixedH = $(".fixed_btns").outerHeight();
-//	var limitH = ((footerH+fixedH)-8);
-
-//	uifn_bottomfloat($(".fixed_btns"), footerH);
-//	$(window).on('scroll', function(){
-//		uifn_bottomfloat($(".fixed_btns"), footerH);
-//	});
-
-//	uifn_popupCtr();
-//	uifn_familyCtr();
-
-//	//popup
-//	function uifn_popupCtr() {
-//		var popupArea = $(".popup-area");
-		
-//		if(popupArea.css('display') == 'block'){
-//			popupArea.show();
-//			document.body.classList.add("stop-scroll");
-//		};
-	
-//		popupArea.find(".close").click(function(){
-//			popupArea.css('display','none');
-//			document.body.classList.remove("stop-scroll");
-//		});
-//	};
-	
-//	// family site
-//	function uifn_familyCtr(){
-//		$('.family-area').click(function(e){
-//			$('.family-area').toggleClass('on');
-//		});
-//	}
-
-//	// scrollTop
-//	function uifn_bottomfloat(object, num) {
-//		var bottom = $(document).height() - $(window).height() - $(document).scrollTop();
-
-//		if (bottom > num) {
-//			object.removeClass("off");
-//		} else if (bottom <= num) {
-//			object.addClass("off");
-//		} else {
-//			object.removeClass("off");
-//		}
-//	}
-//});

Some files were not shown because too many files changed in this diff