Просмотр исходного кода

Merge branch 'develop' into jsshin

jsshin 5 лет назад
Родитель
Сommit
079008d746
27 измененных файлов с 2239 добавлено и 1799 удалено
  1. 8 0
      src/main/java/com/style24/admin/biz/dao/TsaCouponDao.java
  2. 27 0
      src/main/java/com/style24/admin/biz/service/TsaCouponService.java
  3. 2 1
      src/main/java/com/style24/admin/biz/service/TsaGoodsService.java
  4. 65 7
      src/main/java/com/style24/admin/biz/web/TsaMarketingController.java
  5. 2 0
      src/main/java/com/style24/persistence/domain/Coupon.java
  6. 24 0
      src/main/java/com/style24/persistence/domain/CouponLimitedTime.java
  7. 3 0
      src/main/java/com/style24/persistence/domain/Goods.java
  8. 1 1
      src/main/java/com/style24/persistence/domain/NotiInfo.java
  9. 2 1
      src/main/java/com/style24/persistence/domain/WmsColorMapping.java
  10. 1 1
      src/main/java/com/style24/persistence/domain/WmsSeasonMapping.java
  11. 1 1
      src/main/java/com/style24/persistence/domain/WmsStyleYearMapping.java
  12. 26 0
      src/main/java/com/style24/persistence/mybatis/shop/TsaCoupon.xml
  13. 37 36
      src/main/java/com/style24/persistence/mybatis/shop/TsaGoods.xml
  14. 30 0
      src/main/webapp/WEB-INF/views/goods/GoodsDetailForm.html
  15. 2 2
      src/main/webapp/WEB-INF/views/goods/GoodsMassRegisterForm.html
  16. 10 9
      src/main/webapp/WEB-INF/views/goods/NotiinfoForm.html
  17. 7 7
      src/main/webapp/WEB-INF/views/goods/WmsColorMappingForm.html
  18. 7 7
      src/main/webapp/WEB-INF/views/goods/WmsSeasonMappingForm.html
  19. 7 7
      src/main/webapp/WEB-INF/views/goods/WmsStyleYearMappingForm.html
  20. 1 0
      src/main/webapp/WEB-INF/views/marketing/CardInterestForm.html
  21. 12 12
      src/main/webapp/WEB-INF/views/marketing/CardInterestPopupForm.html
  22. 1 0
      src/main/webapp/WEB-INF/views/marketing/CardPromotionForm.html
  23. 6 6
      src/main/webapp/WEB-INF/views/marketing/CardPromotionPopupForm.html
  24. 125 1
      src/main/webapp/WEB-INF/views/marketing/CouponPopupForm.html
  25. 162 40
      src/main/webapp/WEB-INF/views/marketing/MorebetterPopupForm.html
  26. 928 924
      src/main/webapp/ux/css/admin.ui.css
  27. 742 736
      src/main/webapp/ux/js/admin.ui.js

+ 8 - 0
src/main/java/com/style24/admin/biz/dao/TsaCouponDao.java

@@ -273,4 +273,12 @@ public interface TsaCouponDao {
 	 * @since 2021-02-03
 	 */
 	Collection<Coupon> getCpnPubCustList(int cpnId);
+
+	/**
+	 * 선착순 쿠폰 저장
+	 * @param params
+	 * @author bin2107
+	 * @since 2021. 02. 04
+	 */
+	void createLimitedTimeCoupon(CouponLimitedTime couponLimitedTime);
 }

+ 27 - 0
src/main/java/com/style24/admin/biz/service/TsaCouponService.java

@@ -32,6 +32,33 @@ public class TsaCouponService {
 	@Autowired
 	private TsaCommonService commonService;
 
+	/**
+	 * 선착순 쿠폰 저장 test
+	 * @param coupon - 쿠폰 정보
+	 * @return
+	 * @author bin2107
+	 * @since 2021. 2. 4
+	 */
+	@Transactional("shopTxnManager")
+	public String saveLimitedTimeCoupon(Coupon coupon){
+		int cpnId = coupon.getCpnId();		// 쿠폰ID (신규생성인지 수정인지 구분하기 위해 params의 cpnId를 먼저 가져옴 > 쿠폰 생성시 cpnId를 저장하기때문임)
+		coupon.setRegNo(TsaSession.getInfo().getUserNo());
+		coupon.setUpdNo(TsaSession.getInfo().getUserNo());
+
+		if(cpnId != 0) {    //수정모드일때
+		}else {    //등록모드일때
+			// 공급업체 등록
+			for(CouponLimitedTime couponLimitedTime : coupon.getLimitedTimeCpnList()){
+				couponLimitedTime.setCpnId(coupon.getCpnId());
+				couponLimitedTime.setRegNo(coupon.getRegNo());
+				couponLimitedTime.setUpdNo(coupon.getUpdNo());
+				couponDao.createLimitedTimeCoupon(couponLimitedTime);
+			}
+		}
+
+		return "SUCCESS";
+	}
+
 	/**
 	 * 쿠폰 저장
 	 * @param params

+ 2 - 1
src/main/java/com/style24/admin/biz/service/TsaGoodsService.java

@@ -1240,6 +1240,7 @@ public class TsaGoodsService {
 			goodsStock.setOptCd(optCd);
 			goodsStock.setOptCd1(goods.getOptCd1()[index]);
 			goodsStock.setOptCd2(goods.getOptCd2()[index]);
+			goodsStock.setAddPrice(Integer.parseInt(goods.getAddPrice()[index]));
 			goodsStock.setBaseStockQty(Integer.parseInt(goods.getBaseStockQty()[index]));
 			goodsStock.setSoldoutYn(goods.getSoldoutYn()[index]);
 			goodsStock.setDispOrd(Integer.parseInt(goods.getDispOrd()[index]));
@@ -3441,7 +3442,7 @@ public class TsaGoodsService {
 		Collection<GoodsNotiInfo> goodsNotiList = new ArrayList<>();
 		//고시분류 코드의 고시항목 조회
 		NotiInfo notiInfo = new NotiInfo();
-		notiInfo.setSupplyVendorCd(goodsOrigin.getSupplyVendorCd());
+		notiInfo.setSupplyCompCd(goodsOrigin.getSupplyCompCd());
 		if (!UPDATE_NO_PATTERN.equals(newNiClsfCd)) {
 			notiInfo.setNiClsfCd(newNiClsfCd);
 		} else {

+ 65 - 7
src/main/java/com/style24/admin/biz/web/TsaMarketingController.java

@@ -443,7 +443,8 @@ public class TsaMarketingController extends TsaBaseController {
 		mav.addObject("payTypeList", rendererService.getCommonCodeList("G015"));
 		// 상위제휴채널 조회
 		mav.addObject("upperAfLinkCdList", rendererService.getCommonCodeList("G053"));
-
+		// 선착순쿠폰 조회
+		mav.addObject("limitedTimeCpnList", new Coupon());
 		// 이미 쿠폰 아이디가 있으면 적용대상 조회
 		if (cpnId != 0) {
 			mode = "U";
@@ -470,6 +471,8 @@ public class TsaMarketingController extends TsaBaseController {
 			mav.addObject("cpnCustGradeList", couponService.getCouponCustGradeList(cpnId));
 			// 쿠폰사용가능결제수단 조회
 			mav.addObject("cpnPayTypeList", couponService.getCouponPayTypeList(cpnId));
+			// 선착순쿠폰 조회
+			mav.addObject("limitedTimeCpnList", couponService.getCouponPayTypeList(cpnId));
 		}
 
 		//issueCnt = 3;
@@ -481,6 +484,26 @@ public class TsaMarketingController extends TsaBaseController {
 		return mav;
 	}
 
+	/**
+	 * 선착순 쿠폰 저장 test
+	 * @param coupon - 쿠폰 정보
+	 * @return
+	 * @author bin2107
+	 * @since 2021. 2. 4
+	 */
+	@PostMapping("/coupon/limitedtime/coupon/save")
+	@ResponseBody
+	public GagaResponse saveLimitedTimeCoupon(@RequestBody Coupon coupon) {
+		log.info("saveLimitedTimeCoupon : {}", coupon);
+
+		String result = couponService.saveLimitedTimeCoupon(coupon);
+		if(!"SUCCESS".equals(result)) {
+			return super.error(message.getMessage(result));
+		}
+
+		return super.ok(message.getMessage("SUCC_0001"));
+	}
+
 	/**
 	 * 쿠폰 저장
 	 * @param coupon - 쿠폰 정보
@@ -853,15 +876,50 @@ public class TsaMarketingController extends TsaBaseController {
 	 */
 	@PostMapping("/morebetter/changeStat")
 	@ResponseBody
-	public GagaResponse updateMorebetterStat(@RequestBody MoreBetter moreBetter) {
-		try {
-			morebetterService.updateMorebetterStat(moreBetter);
-		} catch (Exception e) {
+	public GagaMap updateMorebetterStat(@RequestBody MoreBetter moreBetter) {
+		GagaMap map = new GagaMap();
+
+		try{
+			log.info("getTmtbStat :::{}",moreBetter.getTmtbStat());
+			MoreBetterGoods moreBetterGoods = new MoreBetterGoods();
+
+			if("G232_11".equals(moreBetter.getTmtbStat())){
+				moreBetterGoods.setMultiSupplyCompCd(moreBetter.getMultiSupplyCompCd());
+				moreBetterGoods.setMultiBrand(moreBetter.getMultiBrand());
+				moreBetterGoods.setMultiApplyGoods(moreBetter.getMultiApplyGoods());
+				moreBetterGoods.setMultiExceptGoods(moreBetter.getMultiExceptGoods());
+
+				// TMTB_GOODS_TEMP TABLE TRUNCATE -> 다른 다다에서 사용중인 상품 조회 -> INSERT
+				moreBetterGoods.setApplyGoodsList(moreBetter.getApplyGoodsList());
+				moreBetterGoods.setSectionGb(moreBetter.getSectionGb());
+				morebetterService.createMorebetterGoodsTemp(moreBetterGoods);
+
+				// 다른 다다에서 사용중인 상품 조회
+				Collection<MoreBetterGoods> duplicateGoodsList = morebetterService.getMorebetterDuplicateList(moreBetterGoods);
+
+				// 조회 건수 있으면 -> 해당 상품코드 엑셀로 던져주기
+				if(duplicateGoodsList.size() > 0){
+					map.set("duplicateYn","Y");
+					map.set("duplicateGoodsList",duplicateGoodsList);
+					map.set("message", message.getMessage("FAIL_0001"));
+				}else{
+					// 조회 건수 없으면 -> 저장으로 넘어감
+					map.set("duplicateYn","N");
+					morebetterService.saveMoreBetterDetail(moreBetter);
+					//morebetterService.updateMorebetterStat(moreBetter);
+					map.set("message", message.getMessage("SUCC_0002"));
+				}
+			}else{
+				morebetterService.updateMorebetterStat(moreBetter);
+				map.set("message", message.getMessage("SUCC_0002"));
+			}
+		} catch(Exception e) {
 			e.printStackTrace();
-			return super.error(message.getMessage("FAIL_0001"));
+			map.set("message", message.getMessage("FAIL_0001"));
+			return map;
 		}
 
-		return super.ok(message.getMessage("SUCC_0003"));
+		return map;
 	}
 
 	/**

+ 2 - 0
src/main/java/com/style24/persistence/domain/Coupon.java

@@ -99,6 +99,8 @@ public class Coupon extends TscBaseDomain {
     @JsonFormat(with = JsonFormat.Feature.ACCEPT_SINGLE_VALUE_AS_ARRAY)
     private String[] payTypeArr;
 
+    List<CouponLimitedTime> limitedTimeCpnList; //선착순 쿠폰 리스트
+
     // Pagination
     private TscPageRequest pageable;
     private int pageNo = 1;

+ 24 - 0
src/main/java/com/style24/persistence/domain/CouponLimitedTime.java

@@ -0,0 +1,24 @@
+package com.style24.persistence.domain;
+
+import com.style24.persistence.TscBaseDomain;
+import lombok.Data;
+
+import java.util.List;
+
+/**
+ * 선착순 쿠폰 도메인
+ * @author bin2107
+ * @since 2021-02-04
+ */
+@SuppressWarnings("serial")
+@Data
+public class CouponLimitedTime extends TscBaseDomain {
+    // TB_COUPON_REFVAL
+    private int     cpnId;				// 쿠폰ID
+    private Integer limitCpnId;         // 선착순쿠폰일련번호
+    private String  limitCpnNm;         // 선착순쿠폰명
+    private int     downLimitQty;       // 다운로드가능수량
+    private String  downStdt;           // 다운로드시작일시
+    private String  downEddt;           // 다운로드종료일시
+
+}

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

@@ -150,6 +150,9 @@ public class Goods extends TscBaseDomain {
 	@JsonFormat(with = JsonFormat.Feature.ACCEPT_SINGLE_VALUE_AS_ARRAY)
 	private String[] optCd2; // 상품 옵션2
 
+	@JsonFormat(with = JsonFormat.Feature.ACCEPT_SINGLE_VALUE_AS_ARRAY)
+	private String[] addPrice; // 추가금액
+
 	@JsonFormat(with = JsonFormat.Feature.ACCEPT_SINGLE_VALUE_AS_ARRAY)
 	private String[] baseStockQty; // 안전재고
 

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

@@ -15,7 +15,7 @@ import lombok.Data;
 @Data
 public class NotiInfo extends TscBaseDomain {
 
-	private String supplyVendorCd;
+	private String supplyCompCd;
 	private String niClsfCd;
 	private String niClsfNm;
 	private String niItemCd;

+ 2 - 1
src/main/java/com/style24/persistence/domain/WmsColorMapping.java

@@ -14,10 +14,11 @@ import lombok.Data;
 @Data
 public class WmsColorMapping extends TscBaseDomain {
 
-	private String supplyVendorCd;
+	private String supplyCompCd;
 	private String wmsColorCd;
 	private String wmsColorNm;
 	private String colorCd;
 	private String useYn;
 
+
 }

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

@@ -14,7 +14,7 @@ import lombok.Data;
 @Data
 public class WmsSeasonMapping extends TscBaseDomain {
 
-	private String supplyVendorCd;
+	private String supplyCompCd;
 	private String wmsSeasonCd;
 	private String wmsSeasonNm;
 	private String seasonCd;

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

@@ -14,7 +14,7 @@ import lombok.Data;
 @Data
 public class WmsStyleYearMapping extends TscBaseDomain {
 
-	private String supplyVendorCd;
+	private String supplyCompCd;
 	private String wmsStyleYearCd;
 	private String wmsStyleYearNm;
 	private String styleYear;

+ 26 - 0
src/main/java/com/style24/persistence/mybatis/shop/TsaCoupon.xml

@@ -766,4 +766,30 @@
 		AND A.CPN_ID = #{cpnId}
 	</select>
 
+	<insert id="createLimitedTimeCoupon" parameterType="CouponLimitedTime" keyProperty="limitCpnId">
+		INSERT INTO TB_LIMITED_TIME_COUPON (
+				  LIMIT_CPN_ID
+				, LIMIT_CPN_NM
+				, CPN_ID
+				, DOWN_LIMIT_QTY
+				, DOWN_STDT
+				, DOWN_EDDT
+				, REG_NO
+				, REG_DT
+				, UPD_NO
+				, UPD_DT
+		) VALUES (
+				#{limitCpnId}
+				 ,#{limitCpnNm}
+				 ,#{cpnId}
+				 ,#{downLimitQty}
+				 ,DATE_FORMAT(#{downStdt},'%Y-%m-%d %H:%i:%s')
+				 ,DATE_FORMAT(#{downEddt},'%Y-%m-%d %H:%i:%s')
+				 ,#{regNo}
+				 ,CURRENT_TIMESTAMP()
+				 ,#{updNo}
+				 ,CURRENT_TIMESTAMP()
+		)
+	</insert>
+
 </mapper>

+ 37 - 36
src/main/java/com/style24/persistence/mybatis/shop/TsaGoods.xml

@@ -127,15 +127,16 @@
 	<!-- 정보고시분류 목록 -->
 	<select id="getNotiInfoList" parameterType="NotiInfo" resultType="NotiInfo">
 		/* TsaGoods.getNotiInfoList */
-		SELECT DISTINCT B.SUPPLY_VENDOR_CD
+		SELECT DISTINCT B.SUPPLY_COMP_CD
 		     , B.NI_CLSF_CD
 		     , C.CD_NM AS NI_CLSF_NM
 		     , C.DISP_ORD
 		FROM TB_NOTI_INFO B
 		INNER JOIN TB_COMMON_CODE C ON B.NI_CLSF_CD = C.CD 
-		WHERE B.SUPPLY_VENDOR_CD = CASE #{supplyVendorCd} 
-		                         WHEN 'SV0001' THEN 'SV0001'
-		                         WHEN 'SV0002' THEN 'SV0002'
+		WHERE B.SUPPLY_COMP_CD = CASE #{supplyCompCd} 
+		                         WHEN '1003' THEN '1003'
+		                         WHEN '1004' THEN '1004'
+		                         WHEN '1005' THEN '1005'
 		                         ELSE 'E' END 
 		AND C.CD_GB = 'G004'   /*고시정보*/
 		ORDER BY C.DISP_ORD
@@ -144,16 +145,17 @@
 	<!-- 정보고시 상세 목록 -->
 	<select id="getNotiInfoItemList" parameterType="NotiInfo" resultType="NotiInfo">
 		/* TsaGoods.getNotiInfoItemList */
-		SELECT B.SUPPLY_VENDOR_CD
+		SELECT B.SUPPLY_COMP_CD
 		     , B.NI_CLSF_CD
 		     , B.NI_ITEM_CD
 		     , FN_GET_CODE_NM('G005', B.NI_ITEM_CD) AS NI_ITEM_NM
 		     , B.NI_CONTENT
 		     , B.DISP_ORD
 		FROM TB_NOTI_INFO B
-		WHERE B.SUPPLY_VENDOR_CD = CASE #{supplyVendorCd} 
-		                         WHEN 'SV0001' THEN 'SV0001'
-		                         WHEN 'SV0002' THEN 'SV0002'
+		WHERE B.SUPPLY_COMP_CD = CASE #{supplyCompCd} 
+		                         WHEN '1003' THEN '1003'
+		                         WHEN '1004' THEN '1004'
+		                         WHEN '1005' THEN '1005'
 		                         ELSE 'E' END 
 		<if test="niClsfCd != null and niClsfCd != ''">
 		AND B.NI_CLSF_CD = #{niClsfCd}
@@ -165,7 +167,7 @@
 	<insert id="saveNotiInfo" parameterType="NotiInfo">
 		/* TsaGoods.saveNotiInfo */
 		INSERT INTO TB_NOTI_INFO (
-		       SUPPLY_VENDOR_CD
+		       SUPPLY_COMP_CD
 		     , NI_CLSF_CD
 		     , NI_ITEM_CD
 		     , NI_CONTENT
@@ -176,7 +178,7 @@
 		     , UPD_DT
 		)
 		VALUES (
-		       #{supplyVendorCd}
+		       #{supplyCompCd}
 		     , #{niClsfCd}
 		     , #{niItemCd}
 		     , #{niContent}
@@ -196,7 +198,7 @@
 	<!-- WMS 색상 매핑 조회 -->
 	<select id="getWmsColorMappingList" parameterType="WmsColorMapping" resultType="WmsColorMapping" >
 		/* TsaGoods.getWmsColorMappingList */
-		SELECT SUPPLY_VENDOR_CD
+		SELECT SUPPLY_COMP_CD
 		     , WMS_COLOR_CD
 		     , WMS_COLOR_NM
 		     , COLOR_CD
@@ -206,7 +208,7 @@
 		     , FN_GET_USER_NM(UPD_NO) AS UPD_NM
 		     , DATE_FORMAT(UPD_DT, '%Y%m%d%H%i%S') AS UPD_DT
 		FROM TB_WMS_COLOR_MAPPING
-		WHERE SUPPLY_VENDOR_CD = #{supplyVendorCd}
+		WHERE SUPPLY_COMP_CD = #{supplyCompCd}
 		ORDER BY WMS_COLOR_CD
 	</select>
 	
@@ -214,7 +216,7 @@
 	<update id="saveWmsColorMapping" parameterType="WmsColorMapping">
 		/* TsaGoods.saveWmsColorMapping */
 		INSERT INTO TB_WMS_COLOR_MAPPING (
-		       SUPPLY_VENDOR_CD
+		       SUPPLY_COMP_CD
 		     , WMS_COLOR_CD
 		     , WMS_COLOR_NM
 		     , COLOR_CD
@@ -225,7 +227,7 @@
 		     , UPD_DT
 		)
 		VALUES (
-		       #{supplyVendorCd}
+		       #{supplyCompCd}
 		     , #{wmsColorCd}
 		     , #{wmsColorNm}
 		     , #{colorCd}
@@ -245,7 +247,7 @@
 	<!-- WMS 스타일년도 매핑 조회 -->
 	<select id="getWmsStyleYearMappingList" parameterType="WmsStyleYearMapping" resultType="WmsStyleYearMapping" >
 		/* TsaGoods.getWmsStyleYearMappingList */
-		SELECT SUPPLY_VENDOR_CD
+		SELECT SUPPLY_COMP_CD
 		     , WMS_STYLE_YEAR_CD
 		     , WMS_STYLE_YEAR_NM
 		     , STYLE_YEAR
@@ -255,7 +257,7 @@
 		     , FN_GET_USER_NM(UPD_NO) AS UPD_NM
 		     , DATE_FORMAT(UPD_DT, '%Y%m%d%H%i%S') AS UPD_DT
 		FROM TB_WMS_STYLE_YEAR_MAPPING
-		WHERE SUPPLY_VENDOR_CD = #{supplyVendorCd}
+		WHERE SUPPLY_COMP_CD = #{supplyCompCd}
 		ORDER BY WMS_STYLE_YEAR_CD
 	</select>
 	
@@ -263,7 +265,7 @@
 	<update id="saveWmsStyleYearMapping" parameterType="WmsStyleYearMapping">
 		/* TsaGoods.saveWmsStyleYearMapping */
 		INSERT INTO TB_WMS_STYLE_YEAR_MAPPING (
-		       SUPPLY_VENDOR_CD
+		       SUPPLY_COMP_CD
 		     , WMS_STYLE_YEAR_CD
 		     , WMS_STYLE_YEAR_NM
 		     , STYLE_YEAR
@@ -274,7 +276,7 @@
 		     , UPD_DT
 		)
 		VALUES (
-		       #{supplyVendorCd}
+		       #{supplyCompCd}
 		     , #{wmsStyleYearCd}
 		     , #{wmsStyleYearNm}
 		     , #{styleYear}
@@ -294,7 +296,7 @@
 	<!-- WMS 시즌 매핑 조회 -->
 	<select id="getWmsSeasonMappingList" parameterType="WmsSeasonMapping" resultType="WmsSeasonMapping" >
 		/* TsaGoods.getWmsSeasonMappingList */
-		SELECT SUPPLY_VENDOR_CD
+		SELECT SUPPLY_COMP_CD
 		     , WMS_SEASON_CD
 		     , WMS_SEASON_NM
 		     , SEASON_CD
@@ -304,7 +306,7 @@
 		     , FN_GET_USER_NM(UPD_NO) AS UPD_NM
 		     , DATE_FORMAT(UPD_DT, '%Y%m%d%H%i%S') AS UPD_DT
 		FROM TB_WMS_SEASON_MAPPING
-		WHERE SUPPLY_VENDOR_CD = #{supplyVendorCd}
+		WHERE SUPPLY_COMP_CD = #{supplyCompCd}
 		ORDER BY WMS_SEASON_CD
 	</select>
 	
@@ -312,7 +314,7 @@
 	<update id="saveWmsSeasonMapping" parameterType="WmsSeasonMapping">
 		/* TsaGoods.saveWmsSeasonMapping */
 		INSERT INTO TB_WMS_STYLE_YEAR_MAPPING (
-		       SUPPLY_VENDOR_CD
+		       SUPPLY_COMP_CD
 		     , WMS_SEASON_CD
 		     , WMS_SEASON_NM
 		     , SEASON_CD
@@ -323,7 +325,7 @@
 		     , UPD_DT
 		)
 		VALUES (
-		       #{supplyVendorCd}
+		       #{supplyCompCd}
 		     , #{wmsSeasonCd}
 		     , #{wmsSeasonNm}
 		     , #{seasonCd}
@@ -929,10 +931,8 @@
 		     , FN_GET_USER_NM(G.UPD_NO) AS UPD_NM
 		     , E.CERT_NUM
 		     , E.CERT_DT
-		     , C.SUPPLY_VENDOR_CD
 		FROM TB_GOODS G
 		INNER JOIN TB_BRAND B ON G.BRAND_CD = B.BRAND_CD
-		INNER JOIN TB_SUPPLY_COMPANY C ON G.SUPPLY_COMP_CD = C.SUPPLY_COMP_CD 
 		LEFT OUTER JOIN TB_DELV_FEE_POLICY D ON G.SUPPLY_COMP_CD = D.SUPPLY_COMP_CD
 		                                     AND G.DELV_FEE_CD =  D.DELV_FEE_CD
 		LEFT OUTER JOIN TB_GOODS_SAFE_NO E ON G.GOODS_CD = E.GOODS_CD
@@ -972,14 +972,14 @@
 		     , C.DISP_ORD
 		FROM TB_GOODS_NOTI_INFO C
 		INNER JOIN TB_GOODS B ON C.GOODS_CD = B.GOODS_CD
-		INNER JOIN TB_SUPPLY_COMPANY D ON B.SUPPLY_COMP_CD = D.SUPPLY_COMP_CD
 		INNER JOIN TB_NOTI_INFO A ON C.NI_CLSF_CD = A.NI_CLSF_CD
 		                          AND C.NI_ITEM_CD = A.NI_ITEM_CD
-		                          AND A.SUPPLY_VENDOR_CD = CASE D.SUPPLY_VENDOR_CD
-		                                                        WHEN 'SV0001' THEN 'SV0001'
-		                                                        WHEN 'SV0002' THEN 'SV0002'
-		                                                        ELSE 'E' 
-		                                                   END
+		                          AND A.SUPPLY_COMP_CD = CASE B.SUPPLY_COMP_CD
+		                                                      WHEN '1003' THEN '1003'
+		                                                      WHEN '1004' THEN '1004'
+		                                                      WHEN '1005' THEN '1005'
+		                                                      ELSE 'E' 
+		                                                 END
 		WHERE C.GOODS_CD = #{goodsCd}
 		AND C.NI_CLSF_CD = #{niClsfCd}
 		ORDER BY C.DISP_ORD
@@ -988,7 +988,7 @@
 	<!-- 상품의 정보고시 항목 목록 -->
 	<select id="getNotiGoodsInfoList" parameterType="NotiInfo" resultType="NotiInfo">
 		/* TsaGoods.getNotiGoodsInfoList */
-		SELECT  N.SUPPLY_VENDOR_CD
+		SELECT  N.SUPPLY_COMP_CD
 		      , N.NI_CLSF_CD
 		      , N.NI_ITEM_CD
 		      , FN_GET_CODE_NM('G005', N.NI_ITEM_CD) AS NI_ITEM_NM
@@ -1005,7 +1005,7 @@
 		 FROM (
 		     SELECT G.GOODS_CD
 		         , G.ITEMKIND_CD
-		         , (SELECT SUPPLY_VENDOR_CD FROM TB_SUPPLY_COMPANY SC WHERE SC.SUPPLY_COMP_CD = G.SUPPLY_COMP_CD) AS SUPPLY_VENDOR_CD
+		         , G.SUPPLY_COMP_CD
 		         , G.ORIGIN_CD
 		         , G.MAKE_YMD
 		         , (SELECT GROUP_CONCAT(DISTINCT T.OPT_CD1) FROM TB_OPTION T WHERE T.GOODS_CD = G.GOODS_CD)  AS COLOR_NM
@@ -1018,9 +1018,10 @@
 		  , TB_NOTI_INFO N
 		 WHERE 1 = 1
 		 AND N.NI_CLSF_CD = #{niClsfCd}
-		 AND N.SUPPLY_VENDOR_CD =  CASE G.SUPPLY_VENDOR_CD
-		                                WHEN 'SV0001' THEN 'SV0001'
-		                                WHEN 'SV0002' THEN 'SV0002'
+		 AND N.SUPPLY_COMP_CD =  CASE G.SUPPLY_COMP_CD
+		                                WHEN '1003' THEN '1003'
+		                                WHEN '1004' THEN '1004'
+		                                WHEN '1005' THEN '1005'
 		                                ELSE 'E' 
 		                           END 
 		 ORDER BY  G.GOODS_CD , N.NI_CLSF_CD, N.DISP_ORD
@@ -1344,7 +1345,7 @@
 		       FROM TB_NOTI_INFO A
 		          , TB_ITEMKIND B
 		       WHERE A.NI_CLSF_CD = B.NI_CLSF_CD
-		       AND A.SUPPLY_VENDOR_CD = #{supplyVendorCd}
+		       AND A.SUPPLY_COMP_CD = #{supplyCompCd}
 		       AND B.ITEMKIND_CD = #{itemkindCd}
 		     ) D
 		    LEFT OUTER JOIN (

+ 30 - 0
src/main/webapp/WEB-INF/views/goods/GoodsDetailForm.html

@@ -1592,6 +1592,8 @@
 			var hidDispYn = $(this).find("input[name=hidDispYn]").val();
 			var soldoutYn = $(this).find("select[name=soldoutYn]").val();
 			var hidSoldoutYn = $(this).find("input[name=hidSoldoutYn]").val();
+			var addPrice = $(this).find("input[name=addPrice]").val();
+			var hidAddPrice = $(this).find("input[name=hidAddPrice]").val();
 
 			var editCurrStockQty = $(this).find("input[name=editCurrStockQty]").val();	// 입점 확인용
 			var currStockQty = $(this).find("input[name=currStockQty]").val();	// 입점 확인용 (hidden)
@@ -1636,6 +1638,28 @@
 				}
 			}
 			
+			if(gagajf.isNull(addPrice)){
+				optCheck = true;
+				mcxDialog.alertC("추가가격을 입력해주세요", {
+					sureBtnText: "확인",
+					sureBtnClick: function() {
+						$("#optionList tr").find("input[name=addPrice]").eq(idx).focus();
+					}
+				});
+				return false;
+			}
+			
+			if(gagajf.isNull(dispOrd)){
+				optCheck = true;
+				mcxDialog.alertC("노출순서를 입력해주세요", {
+					sureBtnText: "확인",
+					sureBtnClick: function() {
+						$("#optionList tr").find("input[name=dispOrd]").eq(idx).focus();
+					}
+				});
+				return false;
+			}
+			
 			if(gagajf.isNull(baseStockQty)){
 				optCheck = true;
 				mcxDialog.alertC("안전재고를 입력해주세요", {
@@ -1666,6 +1690,12 @@
 			if (soldoutYn != hidSoldoutYn){
 				$("#goodsDetailForm input[name=chStockDataYn]").val('Y');
 			}
+			
+			if (addPrice != hidAddPrice){
+				$("#goodsDetailForm input[name=chStockDataYn]").val('Y');
+			}
+			
+			
 
 			idx++;
 		});

+ 2 - 2
src/main/webapp/WEB-INF/views/goods/GoodsMassRegisterForm.html

@@ -26,7 +26,7 @@
 		<form id="massForm" name="massForm" >
 		<div class="panelStyle">
 			<ul class="notice">
-				<li>상품을 대량으로 등록하는 페이지입니다.</li>
+				<li>상품을 대량으로 수정하는 페이지입니다.</li>
 				<li>상품을 등록 할 경우 [승인대기] 상태이며, STYLE 관리자의 [승인완료] 상태 변경 후 FRONT애 노출이 가능합니다.</li>
 				<li><th:block th:if="${wmsSyncYn == 'N'}"><em><b>WMS연동여부가 [N]입니다. 관리자에게 문의하세요.</b></em></th:block></li>
 			</ul>
@@ -42,7 +42,7 @@
 								}" 
 							th:style="'padding-left:80px;'">
 						<button type="button" class="btn btn-default btn-lg" onclick="cfnDownloadSampleFile('SF014');">상품대량수정 등록양식 다운로드</button>
-						<button th:if="${wmsSyncYn == 'Y'}" type="button" class="btn btn-primary btn-lg" id="btnGoodsUpdate" >상품 수정</button>
+						<button th:if="${wmsSyncYn == 'Y'}" type="button" class="btn btn-primary btn-lg" id="btnGoodsUpdate" >대량상품 수정</button>
 					</span>
 				</li>
 			</ul>

+ 10 - 9
src/main/webapp/WEB-INF/views/goods/NotiinfoForm.html

@@ -32,9 +32,10 @@
 			<ul class="boxContent">
 				<li class="boxContentBtnT">
 					<span style="padding:5.5px 15px; background:#e9ecfb; border-top:1px solid #dae0fd; border-bottom:0.5px solid #dae0fd;">업체</span>
-					<select name="supplyVendorCd" id="supplyVendorCd">
-						<option value="SV0001" selected="selected">한세엠케이</option>
-						<option value="SV0002">한세드림</option>
+					<select name="supplyCompCd" id="supplyCompCd">
+						<option value="1003" selected="selected">한세드림</option>
+						<option value="1004">(주)에프알제이</option>
+						<option value="1005">(주)엠케이트렌드</option>
 						<option value="E" >입점</option>
 					</select>
 				</li>
@@ -121,7 +122,7 @@
 		{headerName: "등록일자", field: "regDt" , width: 150, cellClass: 'text-center', hide: true},
 		{headerName: "수정일자", field: "udtDt", width: 150, cellClass: 'text-center', hide: true},
 		{headerName: "niClsfCd", field: "niClsfCd", hide: true},
-		{headerName: "supplyVendorCd", field: "supplyVendorCd", hide: true}
+		{headerName: "supplyCompCd", field: "supplyCompCd", hide: true}
 	];
 
 	// Get GridOptions
@@ -150,11 +151,11 @@
 		var formId = '#searchForm';
 		$('#searchForm input[name=niClsfCd]').val('');
 		
-		if (gagajf.isNull($('#searchForm select[name=supplyVendorCd]').val())){
+		if (gagajf.isNull($('#searchForm select[name=supplyCompCd]').val())){
 			mcxDialog.alertC("업체를 선택해 주세요.", {
 				sureBtnText: "확인",
 				sureBtnClick: function() {
-					$('#searchForm select[name=supplyVendorCd]').focus();
+					$('#searchForm select[name=supplyCompCd]').focus();
 				}
 			});
 			return;
@@ -192,9 +193,9 @@
 		});
 		
 		var niClsfCd = $('#searchForm input[name=niClsfCd]').val();
-		var supplyVendorCd = $('#searchForm select[name=supplyVendorCd]').val();
+		var supplyCompCd = $('#searchForm select[name=supplyCompCd]').val();
 		
-		var data = { crud: "C", niItemCd: "", niContent: "", dispOrd: Number(maxDispOrd)+1, niClsfCd: niClsfCd, supplyVendorCd: supplyVendorCd};
+		var data = { crud: "C", niItemCd: "", niContent: "", dispOrd: Number(maxDispOrd)+1, niClsfCd: niClsfCd, supplyCompCd: supplyCompCd};
 		
 		//그리드 마지막에 추가해야함
 		gridNotiItemlOptions.api.updateRowData({add: [data], addIndex: 0});
@@ -299,7 +300,7 @@
 		fnNotiItemlSearch($('#searchForm input[name=niClsfCd]').val());
 	}
 	
-	$("#supplyVendorCd").on("change", function(){
+	$("#supplyCompCd").on("change", function(){
 		fnSearch();
 	});
 	

+ 7 - 7
src/main/webapp/WEB-INF/views/goods/WmsColorMappingForm.html

@@ -30,10 +30,10 @@
 				<ul class="panelBar">
 					<li>
 						<h3>업체명</h3>
-						<select name="supplyVendorCd" id="supplyVendorCd">
-							<option value="SV0001" selected="selected">한세엠케이</option>
-							<option value="SV0002">한세드림</option>
-							<option value="S006">FRJ</option>
+						<select name="supplyCompCd" id="supplyCompCd">
+							<option value="1003" selected="selected">한세드림</option>
+							<option value="1004">(주)에프알제이</option>
+							<option value="1005">(주)엠케이트렌드</option>
 						</select>
 						<button type="button" class="btn btn-dark btn-sm" id="btnAddRow">행추가</button>
 					</li>
@@ -89,7 +89,7 @@
 				return !gagajf.isNull(params.value) ? params.value.toDate("YYYYMMDDHHmmss").format("YYYY-MM-DD HH:mm:ss") : '';
 			}
 		},
-		{headerName: "supplyVendorCd", field: "supplyVendorCd", hide: true}
+		{headerName: "supplyCompCd", field: "supplyCompCd", hide: true}
 	];
 
 	// Get GridOptions
@@ -107,7 +107,7 @@
 
 	// 행추가
 	$('#btnAddRow').on('click', function() {
-		var data = { wmsColorCd: null, wmsColorNm: null, colorCd: null, useYn: "Y", supplyVendorCd: $('#supplyVendorCd').val() };
+		var data = { wmsColorCd: null, wmsColorNm: null, colorCd: null, useYn: "Y", supplyCompCd: $('#supplyCompCd').val() };
 		gagaAgGrid.addRowData(gridOptions, data, "wmsColorCd");
 	});
 
@@ -164,7 +164,7 @@
 	});
 	
 	//업체변경시
-	$("#supplyVendorCd").on("change", function(){
+	$("#supplyCompCd").on("change", function(){
 		fnSearch();
 	});
 	

+ 7 - 7
src/main/webapp/WEB-INF/views/goods/WmsSeasonMappingForm.html

@@ -30,10 +30,10 @@
 				<ul class="panelBar">
 					<li>
 						<h3>업체명</h3>
-						<select name="supplyVendorCd" id="supplyVendorCd">
-							<option value="SV0001" selected="selected">한세엠케이</option>
-							<option value="SV0002">한세드림</option>
-							<option value="S006">FRJ</option>
+						<select name="supplyCompCd" id="supplyCompCd">
+							<option value="1003" selected="selected">한세드림</option>
+							<option value="1004">(주)에프알제이</option>
+							<option value="1005">(주)엠케이트렌드</option>
 						</select>
 						<button type="button" class="btn btn-dark btn-sm" id="btnAddRow">행추가</button>
 					</li>
@@ -89,7 +89,7 @@
 				return !gagajf.isNull(params.value) ? params.value.toDate("YYYYMMDDHHmmss").format("YYYY-MM-DD HH:mm:ss") : '';
 			}
 		},
-		{headerName: "supplyVendorCd", field: "supplyVendorCd", hide: true}
+		{headerName: "supplyCompCd", field: "supplyCompCd", hide: true}
 	];
 
 	// Get GridOptions
@@ -107,7 +107,7 @@
 
 	// 행추가
 	$('#btnAddRow').on('click', function() {
-		var data = { wmsSeasonCd: null, wmsSeasonNm: null, seasonCd: null, useYn: "Y", supplyVendorCd: $('#supplyVendorCd').val() };
+		var data = { wmsSeasonCd: null, wmsSeasonNm: null, seasonCd: null, useYn: "Y", supplyCompCd: $('#supplyCompCd').val() };
 		gagaAgGrid.addRowData(gridOptions, data, "wmsSeasonCd");
 	});
 
@@ -164,7 +164,7 @@
 	});
 	
 	//업체변경시
-	$("#supplyVendorCd").on("change", function(){
+	$("#supplyCompCd").on("change", function(){
 		fnSearch();
 	});
 	

+ 7 - 7
src/main/webapp/WEB-INF/views/goods/WmsStyleYearMappingForm.html

@@ -30,10 +30,10 @@
 				<ul class="panelBar">
 					<li>
 						<h3>업체명</h3>
-						<select name="supplyVendorCd" id="supplyVendorCd">
-							<option value="SV0001" selected="selected">한세엠케이</option>
-							<option value="SV0002">한세드림</option>
-							<option value="S006">FRJ</option>
+						<select name="supplyCompCd" id="supplyCompCd">
+							<option value="1003" selected="selected">한세드림</option>
+							<option value="1004">(주)에프알제이</option>
+							<option value="1005">(주)엠케이트렌드</option>
 						</select>
 						<button type="button" class="btn btn-dark btn-sm" id="btnAddRow">행추가</button>
 					</li>
@@ -89,7 +89,7 @@
 				return !gagajf.isNull(params.value) ? params.value.toDate("YYYYMMDDHHmmss").format("YYYY-MM-DD HH:mm:ss") : '';
 			}
 		},
-		{headerName: "supplyVendorCd", field: "supplyVendorCd", hide: true}
+		{headerName: "supplyCompCd", field: "supplyCompCd", hide: true}
 	];
 
 	// Get GridOptions
@@ -107,7 +107,7 @@
 
 	// 행추가
 	$('#btnAddRow').on('click', function() {
-		var data = { wmsStyleYearCd: null, wmsStyleYearNm: null, colorCd: null, useYn: "Y", supplyVendorCd: $('#supplyVendorCd').val() };
+		var data = { wmsStyleYearCd: null, wmsStyleYearNm: null, colorCd: null, useYn: "Y", supplyCompCd: $('#supplyCompCd').val() };
 		gagaAgGrid.addRowData(gridOptions, data, "wmsStyleYearCd");
 	});
 
@@ -164,7 +164,7 @@
 	});
 	
 	//업체변경시
-	$("#supplyVendorCd").on("change", function(){
+	$("#supplyCompCd").on("change", function(){
 		fnSearch();
 	});
 	

+ 1 - 0
src/main/webapp/WEB-INF/views/marketing/CardInterestForm.html

@@ -345,6 +345,7 @@
 		cfnCreateCalendar('#sellTerms', 'stDate', 'edDate', true, '기간', 'X');
 		var chkBeforSkipFlag = '&nbsp;&nbsp;<label class="chkBox"><input type="checkbox" name="beforSkipFlag" value="Y" >이전데이터 제외</label>';
 		$("#cardInterestSearchForm").find('#sellTerms').append(chkBeforSkipFlag);
+		gagajf.setDate('#sellTerms','stDate', 'edDate', '7d');
 		
 		// Create a agGrid
 		gagaAgGrid.createGrid('gridList', gridOptions);

+ 12 - 12
src/main/webapp/WEB-INF/views/marketing/CardInterestPopupForm.html

@@ -67,10 +67,10 @@
 								
 								<tr th:if="${#lists.isEmpty(cardPrmt.cardPrmtCdtList)}" >
 									<td style="height:100px;"></td>
-									<td><p class="dot">무이자개월 <input type="text" class="w100"  name="arrMinNoItrt" data-valid-type="numeric" required="required" data-valid-name="무이자개월" />개월 ~
-										<input type="text" class="w100"  name="arrMaxNoItrt" data-valid-type="numeric" required="required" data-valid-name="무이자개월" />개월</p>
-										<p class="dot">구매금액기준 <input type="text" class="w100"  name="arrMinPayAmt" data-valid-type="numeric" required="required" data-valid-name="구매금액기준" />원 이상 구매시</p>
-										<p class="dot">대상카드 <button type="button" class="btn btn-base btn-sm" onClick="fnCardAdd(1);">선택</button><br/>
+									<td><p>무이자개월 <input type="text" class="w100 aR"  name="arrMinNoItrt" data-valid-type="numeric" required="required" data-valid-name="무이자개월" maxlength="3" />개월 ~
+										<input type="text" class="w100 aR"  name="arrMaxNoItrt" data-valid-type="numeric" required="required" data-valid-name="무이자개월"  maxlength="3" />개월</p>
+										<p>구매금액기준 <input type="text" class="w100 aR"  name="arrMinPayAmt" data-valid-type="numeric" required="required" data-valid-name="구매금액기준"  maxlength="10" />원 이상 구매시</p>
+										<p>대상카드 <button type="button" class="btn btn-base btn-sm" onClick="fnCardAdd(1);">선택</button><br/>
 										<span id="arrCardNm1" class="cRed"></span></p>
 										<input type="hidden" name="arrCardCd"/>
 										<input type="hidden" name="cardPrmtCdtSq" />
@@ -81,10 +81,10 @@
 									<td style="height:100px;" th:if="${sizeStatus.first}"></td>
 									<td style="height:100px;" th:unless="${sizeStatus.first}"><button type="button" class="btn icn"><i class="fa fa-times" aria-hidden="true" th:onclick="fnDeleteCardPrmtCdt([[${cardPrmtCdt.cardPrmtCdtSq}]]);$(this).parent().parent().parent().remove();return false;"></i></button></td>
 									<td>
-										<p class="dot">무이자개월 <input type="text" class="w100"  name="arrMinNoItrt" data-valid-type="numeric" required="required" data-valid-name="무이자개월" th:value="${cardPrmtCdt.minNoItrt}"/>개월 ~
-										<input type="text" class="w100"  name="arrMaxNoItrt" data-valid-type="numeric" required="required" data-valid-name="무이자개월" th:value="${cardPrmtCdt.maxNoItrt}"/>개월</p>
-										<p class="dot">구매금액기준 <input type="text" class="w100"  name="arrMinPayAmt" data-valid-type="numeric" required="required" data-valid-name="구매금액기준" th:value="${cardPrmtCdt.minPayAmt}"/>원 이상 구매시</p>
-										<p class="dot">대상카드 <button type="button" class="btn btn-base btn-sm" th:onClick="fnCardAdd([[${sizeStatus.count}]]);">선택</button><br/>
+										<p>무이자개월 <input type="text" class="w100 aR"  name="arrMinNoItrt" data-valid-type="numeric" required="required" data-valid-name="무이자개월" th:value="${cardPrmtCdt.minNoItrt}"  maxlength="3" />개월 ~
+										<input type="text" class="w100 aR"  name="arrMaxNoItrt" data-valid-type="numeric" required="required" data-valid-name="무이자개월" th:value="${cardPrmtCdt.maxNoItrt}" maxlength="3" />개월</p>
+										<p>구매금액기준 <input type="text" class="w100 aR"  name="arrMinPayAmt" data-valid-type="numeric" required="required" data-valid-name="구매금액기준" th:value="${cardPrmtCdt.minPayAmt}"  maxlength="10"/>원 이상 구매시</p>
+										<p>대상카드 <button type="button" class="btn btn-base btn-sm" th:onClick="fnCardAdd([[${sizeStatus.count}]]);">선택</button><br/>
 										<span th:id="${'arrCardNm'+ sizeStatus.count}" class="cRed"  th:text="${cardPrmtCdt.arrCardNm}"></span>
 										</p>
 										<input type="hidden" name="arrCardCd" th:value="${cardPrmtCdt.arrCardCd}"/>
@@ -133,10 +133,10 @@
 		var cardHtml = "";
 		cardHtml +='<tr>';
 		cardHtml +='	<td style="height:100px;"><button type="button" class="btn icn"><i class="fa fa-times" aria-hidden="true" onclick="$(this).parent().parent().parent().remove();return false;"></i></button></td>';
-		cardHtml +='	<td><p class="dot">무이자개월 <input type="text" class="w100"  name="arrMinNoItrt" data-valid-type="numeric" required="required" data-valid-name="무이자개월"/>개월 ~';
-		cardHtml +='	<input type="text" class="w100"  name="arrMaxNoItrt" data-valid-type="numeric" required="required" data-valid-name="무이자개월"/>개월</p>';
-		cardHtml +='	<p class="dot">구매금액기준 <input type="text" class="w100"  name="arrMinPayAmt" data-valid-type="numeric" required="required" data-valid-name="구매금액기준"/>원 이상 구매시</p>';
-		cardHtml +='	<p class="dot">대상카드 <button type="button" class="btn btn-base btn-sm" onClick="fnCardAdd('+ (len+1) +');">선택</button><br/><span id="arrCardNm'+(len+1)+'" class="cRed"></span></p>';
+		cardHtml +='	<td><p>무이자개월 <input type="text" class="w100 aR"  name="arrMinNoItrt" data-valid-type="numeric" required="required" data-valid-name="무이자개월" maxlength="3" />개월 ~';
+		cardHtml +='	<input type="text" class="w100 aR"  name="arrMaxNoItrt" data-valid-type="numeric" required="required" data-valid-name="무이자개월" maxlength="3" />개월</p>';
+		cardHtml +='	<p>구매금액기준 <input type="text" class="w100 aR"  name="arrMinPayAmt" data-valid-type="numeric" required="required" data-valid-name="구매금액기준"  maxlength="10"/>원 이상 구매시</p>';
+		cardHtml +='	<p>대상카드 <button type="button" class="btn btn-base btn-sm" onClick="fnCardAdd('+ (len+1) +');">선택</button><br/><span id="arrCardNm'+(len+1)+'" class="cRed"></span></p>';
 		cardHtml +='	<input type="hidden" name="arrCardCd"/>';
 		cardHtml +='	<input type="hidden" name="cardPrmtCdtSq" />';
 		cardHtml +='	</td>';

+ 1 - 0
src/main/webapp/WEB-INF/views/marketing/CardPromotionForm.html

@@ -352,6 +352,7 @@
 		cfnCreateCalendar('#sellTerms', 'stDate', 'edDate', true, '기간', 'X');
 		var chkBeforSkipFlag = '&nbsp;&nbsp;<label class="chkBox"><input type="checkbox" name="beforSkipFlag" value="Y" >이전데이터 제외</label>';
 		$("#cardPromotionSearchForm").find('#sellTerms').append(chkBeforSkipFlag);
+		gagajf.setDate('#sellTerms','stDate', 'edDate', '7d');
 		
 		// Create a agGrid
 		gagaAgGrid.createGrid('gridList', gridOptions);

+ 6 - 6
src/main/webapp/WEB-INF/views/marketing/CardPromotionPopupForm.html

@@ -67,9 +67,9 @@
 								<span id="contionArea">
 								<label class="rdoBtn"><input type="radio" name="dcWay" value="G240_10" checked/> 정액할인</label>
 								<label class="rdoBtn"><input type="radio" name="dcWay" value="G240_11" />정율할인</label>
-								<p>구매금액기준 <input type="text" class="w100"  name="minPayAmt" data-valid-type="numeric"  data-valid-name="구매금액기준" /> 원 이상 구매시
-								<input type="text" class="w100"  name="dcVal" data-valid-type="numeric"  data-valid-name="할인" /> 할인(율/액)</p>
-								<p>최대할인금액 <input type="text" class="w100"  name="maxDcAmt" data-valid-type="numeric"  data-valid-name="최대할인금액" /> 원</p>
+								<p>구매금액기준 <input type="text" class="w100 aR"  name="minPayAmt" data-valid-type="numeric"  data-valid-name="구매금액기준"  maxlength="10"/> 원 이상 구매시
+								<input type="text" class="w100 aR"  name="dcVal" data-valid-type="numeric"  data-valid-name="할인"  maxlength="10"/> 할인(율/액)</p>
+								<p>최대할인금액 <input type="text" class="w100 aR"  name="maxDcAmt" data-valid-type="numeric"  data-valid-name="최대할인금액"  maxlength="10"/> 원</p>
 								</span>
 								<p>대상카드 <button type="button" class="btn btn-base btn-sm" onClick="fnCardAdd(1);">선택</button><br/>
 								<span id="arrCardNm1" class="cRed"></span></p>
@@ -82,9 +82,9 @@
 									<span id="contionArea" th:if="${cardPrmt.dcGb !='3'}">
 									<label class="rdoBtn"><input type="radio" name="dcWay" value="G240_10" th:checked="${cardPrmtCdt.dcWay =='G240_10' or #strings.isEmpty(cardPrmtCdt.dcWay)}"/>정액할인</label>
 									<label class="rdoBtn"><input type="radio" name="dcWay" value="G240_11" th:checked="${cardPrmtCdt.dcWay =='G240_11'}"/>정율할인</label>
-									<p>구매금액기준 <input type="text" class="w100"  name="minPayAmt" data-valid-type="numeric"  data-valid-name="구매금액기준" th:value="${cardPrmtCdt.minPayAmt}"/> 원 이상 구매시
-									<input type="text" class="w100"  name="dcVal" data-valid-type="numeric"  data-valid-name="할인" th:value="${cardPrmtCdt.dcVal}"/> 할인(율/액)</p>
-									<p>최대할인금액 <input type="text" class="w100"  name="maxDcAmt" data-valid-type="numeric"  data-valid-name="최대할인금액" th:value="${cardPrmtCdt.maxDcAmt}"/> 원</p>
+									<p>구매금액기준 <input type="text" class="w100 aR"  name="minPayAmt" data-valid-type="numeric"  data-valid-name="구매금액기준" th:value="${cardPrmtCdt.minPayAmt}" maxlength="10"/> 원 이상 구매시
+									<input type="text" class="w100 aR" name="dcVal" data-valid-type="numeric"  data-valid-name="할인" th:value="${cardPrmtCdt.dcVal}" maxlength="10"/> 할인(율/액)</p>
+									<p>최대할인금액 <input type="text" class="w100 aR"  name="maxDcAmt" data-valid-type="numeric"  data-valid-name="최대할인금액" th:value="${cardPrmtCdt.maxDcAmt}" maxlength="10"/> 원</p>
 									</span>
 									<p>대상카드 <button type="button" class="btn btn-base btn-sm" onClick="fnCardAdd([[${sizeStatus.count}]]);">선택</button><br/>
 									<span th:id="${'arrCardNm'+ sizeStatus.count}" class="cRed"  th:text="${cardPrmtCdt.arrCardNm}"></span>

+ 125 - 1
src/main/webapp/WEB-INF/views/marketing/CouponPopupForm.html

@@ -38,6 +38,7 @@
 							<li><a href="#coupontab2">적용대상</a></li>
 							<li><a href="#coupontab3">입점업체분담율</a></li>
 							<li class="randomCpnTab" style="display:none;"><a href="#coupontab4">시리얼및난수</a></li>
+							<li class="limitedTimeCpnTab" style="display:none;"><a href="#coupontab5">선착순쿠폰</a></li>	<!--style="display:none;"-->
 						</ul>
 					</div>
 					<ul class="tabsCont">
@@ -65,9 +66,14 @@
 										</tr>
 										<tr>
 											<th>쿠폰유형<em class="required" title="필수"></em></th>
-											<td colspan="5">
+											<td>
 												<input type="hidden" id="cpnType" name="cpnType" required="required"  data-valid-name="쿠폰유형">
 												<label class="rdoBtn" th:if="${cpnTypeList}" th:each="oneData, status : ${cpnTypeList}"> <input type="radio" name="rdoCpnType"  th:text="${oneData.cdNm}" th:value="${oneData.cd}"/></label>
+
+											</td>
+											<th class="limitedTimeCpnArea" style="display: none;">선착순쿠폰</th>
+											<td class="limitedTimeCpnArea" style="display: none;">
+												<label class="chkBox limitedTimeCpnBox" id="limitedTimeCpnBox"><input type="checkbox" name="limitedTimeCpnYn" id="limitedTimeCpnYn" />선착순쿠폰</label>
 											</td>
 										</tr>
 										<tr class="dcCdGb" style="display:none;">
@@ -357,6 +363,7 @@
 									<button type="button" class="btn btn-info btn-lg" onclick="fnCustomerIssuePopUp();" th:if="${mode == 'U' && cpnDetail.dcCdGb == 'G233_00'}">쿠폰발행</button>  <!-- 난수유형과 시리얼 유형에서는 쿠폰발행기능 X -->
 									<button type="button" class="btn btn-info btn-lg" onclick="fnCouponCreate();" th:if="${mode == 'N'}">등록</button>
 									<button type="button" class="btn btn-info btn-lg" onclick="fnCouponUpdate();" th:if="${mode == 'U'}">수정</button>
+									<button type="button" class="btn btn-info btn-lg" onclick="fnSaveLimitedTimeCpn();" th:if="${mode == 'N'}">선착순쿠폰등록TEST</button>
 								</div>
 							</div>
 						</li>
@@ -473,6 +480,18 @@
 							</div>
 						</li>
 						<!-- 난수 및 네임쿠폰 설정-->
+						<!-- 선착순 쿠폰 설정 START -->
+						<li class="tab" id="coupontab5">
+							<div class="panelStyle">
+								<span class="limitedTimeCpnSpan">
+									<button type="button" class="btn btnRight btn-success btn-lg" id="btnAddLimitedTimeCpnRow">행추가</button>
+									<button type="button" class="btn btnRight btn-success btn-lg" id="btnDelLimitedTimeCpnRow">행삭제</button>
+								</span>
+								<br/>
+								<div id="limitedTimeCpnList" style="width: 100%; height: 500px" class="ag-theme-balham"></div>
+							</div>
+						</li>
+						<!-- 선착순 쿠폰 설정 END -->
 					</ul>
 				</div>
 			</form>
@@ -496,6 +515,7 @@
 	var cpnCustGbList = [[${cpnCustGbList}]];
 	var cpnCustGradeList = [[${cpnCustGradeList}]];
 	var cpnPayTypeList = [[${cpnPayTypeList}]];
+	var limitedTimeCpnList = [[${limitedTimeCpnList}]];
 
 	// 공통코드 리스트
 	var ibSupplyComList = gagajf.convertToArray([[${ibSupplyCompList}]]);
@@ -602,6 +622,25 @@
 		{ headerName: "쿠폰사용일" , field: "usedDt" , width:150, cellClass: 'text-center'}
 	];
 
+	// 선착순 쿠폰 리스트
+	var limitedTimeCpnDefs = [
+		{width: 40, minWidth: 40, cellClass: 'text-center', headerCheckboxSelection: true, checkboxSelection: true, filter: false},
+		{ headerName: "쿠폰시퀀스", field: "cpnId", width: 150, cellClass: 'text-center'},	//, hide: true
+		{ headerName: "선착순쿠폰명" , field: "limitCpnNm" , width: 200, cellClass: 'text-center'
+			,cellEditorParams: { maxlength: 20}
+		} ,
+		{ headerName: "시작일시" , field: "downStdt" , width: 200, cellClass: 'text-center'
+			,cellRenderer: function (params) { return gagaAgGrid.toDateTimeFormat(params.value); }
+		},
+		{ headerName: "종료일시"  , field: "downEddt" , width: 200 , cellClass: 'text-center'
+			,cellRenderer: function (params) { return gagaAgGrid.toDateTimeFormat(params.value); }
+		} ,
+		{ headerName: "다운로드가능수량"  , field: "downLimitQty" , width: 150 , cellClass: 'text-center'
+			,cellEditorParams: { maxlength: 4, validType: 'numeric'}
+		},
+		{ headerName: "선착순시퀀스", field: "limitCpnId", width: 150, cellClass: 'text-center'} 	//, hide: true
+	];
+
 	var inComGridOptions = gagaAgGrid.getGridOptions(columnDefs);
 	var cateGridOptions = gagaAgGrid.getGridOptions(cateSelColumnDefs);
 	var goodsGridOptions = gagaAgGrid.getGridOptions(goodsSelColumnDefs);
@@ -609,6 +648,7 @@
 	var supplyGridOptions = gagaAgGrid.getGridOptions(supplyColumnDefs);
 	var excepGoodsGridOptions = gagaAgGrid.getGridOptions(excepGoodsColumnDefs);
 	var randomCouponGridOptions = gagaAgGrid.getGridOptions(randomCouponDefs);
+	var limitedTimeCpnGridOptions = gagaAgGrid.getGridOptions(limitedTimeCpnDefs);
 
 	inComGridOptions.defaultColDef.editable = true;
 	inComGridOptions.rowSelection = "multiple";
@@ -618,6 +658,55 @@
 	cateGridOptions.rowSelection = "multiple";
 	brandGridOptions.rowSelection = "multiple";
 	inComGridOptions.stopEditingWhenGridLosesFocus = true;
+	limitedTimeCpnGridOptions.defaultColDef.editable = true;
+	limitedTimeCpnGridOptions.rowSelection = "multiple";
+
+	// 선착순 쿠폰 행추가
+	$('#btnAddLimitedTimeCpnRow').on('click', function() {
+		var data = { cpnId: 1 ,limitCpnNm: null, downStdt: null, downEddt: null, downLimitQty: null, limitCpnId: null  };
+		gagaAgGrid.addRowData(limitedTimeCpnGridOptions, data, "limitCpnNm");
+	});
+
+	// 선착순 쿠폰 행삭제
+	$('#btnDelLimitedTimeCpnRow').on('click', function() {
+		var selectedData = limitedTimeCpnGridOptions.api.getSelectedRows();
+		if (selectedData.length == 0) {
+			mcxDialog.alert('선택된 행이 없습니다.');
+			return;
+		}
+		var removedData = gagaAgGrid.removeRowData(limitedTimeCpnGridOptions, false);
+		var arrLimitCpnId = [];
+
+		$.each(selectedData, function(idx, item) {
+			arrLimitCpnId.push(item.limitCpnId);
+		});
+
+		if (removedData.length > 0) {
+			mcxDialog.confirm('삭제하시겠습니까?', {
+				cancelBtnText: "취소",
+				sureBtnText: "확인",
+				sureBtnClick: function(){
+					var data = { arrLimitCpnId : arrLimitCpnId
+						,cpnId : $('#CouponForm input[name=cpnId]').val()
+					};
+
+					var jsonData = JSON.stringify(data);
+					//gagajf.ajaxJsonSubmit('/marketing/morebetter/sectionVal/delete', jsonData);
+				}
+			});
+		}
+	});
+
+	// 선착순 쿠폰 체크박스 클릭시
+	$("#CouponForm #limitedTimeCpnBox").bind('click', function (){
+		var chkBox= document.getElementById('limitedTimeCpnYn').checked;
+		console.log('limitedTimeCpnBox chkBox>>'+chkBox);
+		if(chkBox){	//true 체크가 되어있었는데 해제됐어 -> 탭을 숨겨
+			$("#CouponForm .limitedTimeCpnTab").hide();
+		}else{	//false 체크가 안되어있었는데 체크됐어 -> 탭을 보여줘
+			$("#CouponForm .limitedTimeCpnTab").show();
+		}
+	});
 
 	// 종료시간 클릭시
 	var fnChangeEdHH = function (obj){
@@ -686,6 +775,34 @@
 		$("#CouponForm input[name=dcAval]").val(cdPval);
 	});
 
+	// 선착순쿠폰 등록 테스트
+	function fnSaveLimitedTimeCpn(){
+		mcxDialog.confirm('선착순 쿠폰 저장하시겠습니까?' , {
+			cancelBtnText:"취소",
+			sureBtnText:"확인",
+			sureBtnClick: function () {
+				let cpnData = gagaAgGrid.getAllRowData(limitedTimeCpnGridOptions);
+				if(cpnData.length < 1){
+					mcxDialog.alert("선착순 쿠폰을 설정해주세요.");
+					return false;
+				}
+				console.log('cpnData 1 up');
+
+				var data = {
+					limitedTimeCpnList : cpnData
+				};
+
+				var jsonData = JSON.stringify(data);
+
+				gagajf.ajaxJsonSubmit('/marketing/coupon/limitedtime/coupon/save', jsonData, fnSaveLimitedTimeCpnCollback);
+			}
+		});
+	}
+
+	var fnSaveLimitedTimeCpnCollback = function (result){
+		console.log('result::'+result);
+	}
+
 	// 쿠폰 등록 버튼 클릭시
 	function fnCouponCreate(){
 		mcxDialog.confirm('저장하시겠습니까?' , {
@@ -1009,7 +1126,13 @@
 			$('#CouponForm .firstBuyTr').hide();
 			$('#CouponForm .buyDateTr').hide();
 			$('#CouponForm .dcCdCheck1').hide();
+			$('#CouponForm .limitedTimeCpnArea').hide();
 		}else{
+			if(radioValue == 'G230_11'){ // 상품쿠폰일때 선착순쿠폰 등록 가능
+				$('#CouponForm .limitedTimeCpnArea').show();
+			}else{
+				$('#CouponForm .limitedTimeCpnArea').hide();
+			}
 			$('#CouponForm .custJoinTr').show();
 			$('#CouponForm .firstBuyTr').show();
 			$('#CouponForm .dcCdCheck1').show();
@@ -1594,6 +1717,7 @@
 		gagaAgGrid.createGrid('goodsGridList', goodsGridOptions);
 		gagaAgGrid.createGrid('excepGoodsGridList', excepGoodsGridOptions);
 		gagaAgGrid.createGrid('randomCpnList', randomCouponGridOptions);
+		gagaAgGrid.createGrid('limitedTimeCpnList', limitedTimeCpnGridOptions);
 
 		// 초기화시 데이터 세팅
 		if (mode == "N") {

+ 162 - 40
src/main/webapp/WEB-INF/views/marketing/MorebetterPopupForm.html

@@ -134,8 +134,10 @@
 								<th>할인 구간</th>
 								<td>
 									<div class="padding10">
-										<button type="button" class="btn btnRight btn-success btn-lg" id="btnAddSectionRow">행추가</button>
-										<button type="button" class="btn btnRight btn-success btn-lg" id="btnDelSectionRow">행삭제</button>
+										<span class="buttonSpan">
+											<button type="button" class="btn btnRight btn-success btn-lg" id="btnAddSectionRow">행추가</button>
+											<button type="button" class="btn btnRight btn-success btn-lg" id="btnDelSectionRow">행삭제</button>
+										</span>
 										<br/>
 										<div id="gridSectionGbList" style="width:100%; height:200px;" class="ag-theme-balham"></div>
 									</div>
@@ -170,19 +172,23 @@
 								<td>
 									<!-- 수정시 프로모션명 입력 : before -->
 									<div class="padding10" style="display:inline-block;width:49%;">
-										<span>공급업체 설정</span>
+										<!--<span>공급업체 설정</span>-->
 										<div class="padding10 inner-tb-solid">
-											<button type="button" class="btn btnRight btn-success btn-lg" id="btnAddCompany">업체 추가</button>
-											<button type="button" class="btn btnRight btn-success btn-lg" id="btnDeleteCompany">선택삭제</button>
+											<span class="buttonSpan">
+												<button type="button" class="btn btnRight btn-success btn-lg" id="btnAddCompany">업체 추가</button>
+												<button type="button" class="btn btnRight btn-success btn-lg" id="btnDeleteCompany">선택삭제</button>
+											</span>
 											<br/>
 											<div id="gridFGPromotionCompanyList" style="width:100%; height:200px;" class="ag-theme-balham"></div>
 										</div>
 									</div>
 									<div class="padding10" style="display:inline-block;width:49%;">
-										<span>브랜드 설정</span>
+										<!--<span>브랜드 설정</span>-->
 										<div class="padding10 inner-tb-solid">
-											<button type="button" class="btn btnRight btn-success btn-lg" id="btnAddBrand">브랜드 추가</button>
-											<button type="button" class="btn btnRight btn-success btn-lg" id="btnDeleteBrand">선택삭제</button>
+											<span class="buttonSpan">
+												<button type="button" class="btn btnRight btn-success btn-lg" id="btnAddBrand">브랜드 추가</button>
+												<button type="button" class="btn btnRight btn-success btn-lg" id="btnDeleteBrand">선택삭제</button>
+											</span>
 											<br/>
 											<!-- 브랜드 선택 팝업(단수 선택 팝업... 복수를 새로 만들어야하는지 ? 아니면 변수처리해야하는지 ? -->
 											<div id="gridFGBrandList" style="width:100%; height:200px;" class="ag-theme-balham"></div>
@@ -194,8 +200,10 @@
 								<th>적용상품</th>
 								<td>
 									<div class="padding10">
-										<button type="button" class="btn btnRight btn-success btn-lg" id="btnAddApplyGoods">상품 추가</button>
-										<button type="button" class="btn btnRight btn-success btn-lg" id="btnDeleteApplyGoods">선택삭제</button>
+										<span class="buttonSpan">
+											<button type="button" class="btn btnRight btn-success btn-lg" id="btnAddApplyGoods">상품 추가</button>
+											<button type="button" class="btn btnRight btn-success btn-lg" id="btnDeleteApplyGoods">선택삭제</button>
+										</span>
 										<br/>
 										<div id="gridFGApplyGoodsList" style="width:100%; height:200px;" class="ag-theme-balham"></div>
 									</div>
@@ -234,8 +242,10 @@
 								<th>제외 대상</th>
 								<td>
 									<div class="padding10">
-										<button type="button" class="btn btnRight btn-success btn-lg" id="btnAddExceptGoods">상품 추가</button>
-										<button type="button" class="btn btnRight btn-success btn-lg" id="btnDeleteExtGoods">선택삭제</button>
+										<span class="buttonSpan">
+											<button type="button" class="btn btnRight btn-success btn-lg" id="btnAddExceptGoods">상품 추가</button>
+											<button type="button" class="btn btnRight btn-success btn-lg" id="btnDeleteExtGoods">선택삭제</button>
+										</span>
 										<br/>
 										<div id="gridFGExceptGoodsList" style="width:100%; height:200px;" class="ag-theme-balham"></div>
 									</div>
@@ -266,8 +276,10 @@
 								<th>업체 분담율</th>
 								<td>
 									<div class="padding10">
-										<button type="button" class="btn btnRight btn-success btn-lg" id="btnAddApplyBurden">업체추가</button>
-										<button type="button" class="btn btnRight btn-success btn-lg" id="btnDelApplyBurden">선택삭제</button>
+										<span class="buttonSpan">
+											<button type="button" class="btn btnRight btn-success btn-lg" id="btnAddApplyBurden">업체추가</button>
+											<button type="button" class="btn btnRight btn-success btn-lg" id="btnDelApplyBurden">선택삭제</button>
+										</span>
 										<br/>
 										<div id="gridApplyBurdenList" style="width:100%; height:200px;" class="ag-theme-balham"></div>
 									</div>
@@ -307,12 +319,12 @@
 		<ul class="panelBar">
 			<li  class="right">
 				<button type="button" class="btn btnRight btn-success btn-lg" id="btnSearchList">목록</button>
-				<button type="button" class="btn btnRight btn-success btn-lg tmtbButton" id="btnMorebetterSave">저장</button>
+				<button type="button" class="btn btnRight btn-success btn-lg tmtbButton" id="btnMorebetterSave" style="display: none;">저장</button>
 				<!--<button type="button" th:if="${mode == 'N'}" class="btn btnRight btn-success btn-lg" id="btnMorebetterSave">저장</button>
 				<button type="button" th:if="${mode == 'U'}" class="btn btnRight btn-success btn-lg" id="btnMorebetterUpdate">수정</button>-->
-				<button type="button" class="btn btnRight btn-success btn-lg tmtbButton" id="btnChangeStatIng">진행</button>
-				<button type="button" class="btn btnRight btn-success btn-lg tmtbButton" id="btnMorebetterDelete">삭제</button>
-				<button type="button" class="btn btnRight btn-success btn-lg tmtbButton" id="btnMorebetterStop">중지</button>
+				<button type="button" class="btn btnRight btn-success btn-lg tmtbButton" id="btnChangeStatIng" style="display: none;">진행</button>
+				<button type="button" class="btn btnRight btn-success btn-lg tmtbButton" id="btnMorebetterDelete" style="display: none;">삭제</button>
+				<button type="button" class="btn btnRight btn-success btn-lg tmtbButton" id="btnMorebetterStop" style="display: none;">중지</button>
 			</li>
 		</ul>
 	</div>
@@ -534,9 +546,14 @@
 				$("#btnMorebetterSave").show();		// 저장버튼
 				$("#btnChangeStatIng").show();		// 진행버튼
 				$("#btnMorebetterDelete").show();	// 삭제버튼
+				$("#moreBetterForm .buttonSpan").show();	//행추가,삭제버튼
 			}else if(tmtbMstInfo.tmtbStat == "G232_11"){
-				$("#btnMorebetterSave").show();		// 저장버튼
+				$("#btnMorebetterSave").hide();		// 저장버튼
 				$("#btnMorebetterStop").show();		// 중지버튼
+				$("#btnMorebetterDelete").show();	// 삭제버튼
+				$("#moreBetterForm .buttonSpan").hide();	//행추가,삭제버튼
+			}else{
+				$("#moreBetterForm .buttonSpan").hide();	//행추가,삭제버튼
 			}
 		}
 
@@ -544,6 +561,7 @@
 		if(mode=="N"){
 			$("input:radio[name='disTmtbStat']:radio[value='G232_10']").prop('checked', true); // 선택하기
 			$("#btnMorebetterSave").show();	// 저장버튼
+			$("#moreBetterForm .buttonSpan").show();
 
 			if(tmtbMstInfo.eventEdHH == "24"){
 				$("#moreBetterForm #eventEdHH option:last").show().prop("selected", true);
@@ -597,8 +615,8 @@
 		return true;
 	};
 
-	// 저장
-	$('#btnMorebetterSave').on('click', function() {
+	var fnCheckData = function (){
+		console.log('[fnCheckData]');
 		// validation
 		if (!gagajf.validation('#moreBetterForm'))
 			return false;
@@ -631,6 +649,22 @@
 			return false;
 		}
 
+		// 적용상품 그리드에 기본상품 1개이상 있는지 체크
+		if(!fnGoodsGbCheck()) {
+			return false;
+		}
+
+		// 업체분담율 토탈 100% 넘는지 체크
+		if(!fnBurdenValueCheck()) {
+			return false;
+		}
+
+	};
+
+	// 저장
+	$('#btnMorebetterSave').on('click', function() {
+		fnCheckData();
+
 		// 각 ag-grid list 수량
 		let allSupplyCompData = gagaAgGrid.getAllRowData(gridOptionsFGCompanyList);
 		let allBrandData = gagaAgGrid.getAllRowData(gridOptionsFGBrandList);
@@ -644,16 +678,6 @@
 			return false;
 		}
 
-		// 적용상품 그리드에 기본상품 1개이상 있는지 체크
-		if(!fnGoodsGbCheck()) {
-			return false;
-		}
-
-		// 업체분담율 토탈 100% 넘는지 체크
-		if(!fnBurdenValueCheck()) {
-			return false;
-		}
-		
 		// 공급업체+브랜드 상품조회
 		var multiSupplyCompCd = [];
 		$.each(allSupplyCompData, function(idx, item) {
@@ -703,9 +727,7 @@
 	});
 
 	var fnMorebetterSaveCollback = function(result){
-		//mcxDialog.alert(result.message);
 		if(result.duplicateYn == "Y"){
-			//console.log('duplicateGoodsList Size::'+ result.duplicateGoodsList.length);
 			for(let i=0; i<result.duplicateGoodsList.length; i++){
 				gagaAgGrid.addRowData(gridOptionsDuplicateGoodsList, {"goodsCd" : result.duplicateGoodsList[i].goodsCd, "goodsNm" : result.duplicateGoodsList[i].goodsNm});
 			}
@@ -1190,24 +1212,122 @@
 	});
 
 	// 진행 버튼 클릭
-	$("#moreBetterForm #btnChangeStatIng").on("click", function() {
+	$("#btnChangeStatIng").on("click", function() {
 		console.log('1111111111111');
-		/*mcxDialog.confirmC("프로모션을 진행하시겠습니까?<br/>진행 후에는 수정이 제한될 수 있습니다.", {
+
+		fnCheckData();
+
+		// 각 ag-grid list 수량
+		let allSupplyCompData = gagaAgGrid.getAllRowData(gridOptionsFGCompanyList);
+		let allBrandData = gagaAgGrid.getAllRowData(gridOptionsFGBrandList);
+		let allApplyGoodsData = gagaAgGrid.getAllRowData(gridOptionsFGApplyGoodsList);
+		let allExceptGoodsData = gagaAgGrid.getAllRowData(gridOptionsFGExceptGoodsList);
+		let allApplyBurdenData = gagaAgGrid.getAllRowData(gridOptionsApplyBurdenList);
+		let allSectionGbData = gagaAgGrid.getAllRowData(gridOptionsSectionGbList);
+
+		if(allSectionGbData.length < 1){
+			mcxDialog.alert("할인구간을 설정해주세요.");
+			return false;
+		}
+
+		// 공급업체+브랜드 상품조회
+		var multiSupplyCompCd = [];
+		$.each(allSupplyCompData, function(idx, item) {
+			multiSupplyCompCd.push(item.supplyCompCd);
+		});
+
+		var multiBrand = [];
+		$.each(allBrandData, function(idx, item) {
+			multiBrand.push(item.brandCd);
+		});
+
+		var multiApplyGoods = [];
+		$.each(allApplyGoodsData, function(idx, item) {
+			multiApplyGoods.push(item.goodsCd);
+		});
+
+		var multiExceptGoods = [];
+		$.each(allExceptGoodsData, function(idx, item) {
+			multiExceptGoods.push(item.goodsCd);
+		});
+
+		/*var data = {
+			mode : $('#moreBetterForm input[name=mode]').val()
+			, tmtbSq : $('#moreBetterForm input[name=disTmtbSq]').val()
+			, tmtbNm : $('#moreBetterForm input[name=tmtbNm]').val()
+			, tmtbStat : "G232_11"				// 진행
+			, tmtbStdt : $('#moreBetterForm input[name=tmtbStdt]').val()
+			, tmtbEddt : $('#moreBetterForm input[name=tmtbEddt]').val()
+			, sectionGb : $('input:radio[name="sectionGb"]:checked').val()
+			, applyGb : $('input:radio[name="sectionGb"]:checked').val()
+			, dcWay : $('input:radio[name="dcWay"]:checked').val()
+			, supplyCompList : allSupplyCompData
+			, brandList : allBrandData
+			, applyGoodsList : allApplyGoodsData
+			, exceptGoodsList : allExceptGoodsData
+			, burdenList : allApplyBurdenData
+			, sectionGbList : allSectionGbData
+			, multiSupplyCompCd : multiSupplyCompCd
+			, multiBrand : multiBrand
+			, multiApplyGoods : multiApplyGoods
+			, multiExceptGoods : multiExceptGoods
+		};
+
+		var jsonData = JSON.stringify(data);
+		 */
+
+		mcxDialog.confirmC("프로모션을 진행하시겠습니까?<br/>진행 후에는 수정이 제한될 수 있습니다.", {
 			btn: confirmBtnText,
 			btnClick: function(index) {
 				if(index == 1) {
-					let data = { tmtbStat : "G232_11"				// 진행
+					let data = {
+						mode : $('#moreBetterForm input[name=mode]').val()
 						, tmtbSq : $('#moreBetterForm input[name=disTmtbSq]').val()
+						, tmtbNm : $('#moreBetterForm input[name=tmtbNm]').val()
+						, tmtbStat : "G232_11"				// 진행
+						, tmtbStdt : $('#moreBetterForm input[name=tmtbStdt]').val()
+						, tmtbEddt : $('#moreBetterForm input[name=tmtbEddt]').val()
+						, sectionGb : $('input:radio[name="sectionGb"]:checked').val()
+						, applyGb : $('input:radio[name="sectionGb"]:checked').val()
+						, dcWay : $('input:radio[name="dcWay"]:checked').val()
+						, supplyCompList : allSupplyCompData
+						, brandList : allBrandData
+						, applyGoodsList : allApplyGoodsData
+						, exceptGoodsList : allExceptGoodsData
+						, burdenList : allApplyBurdenData
+						, sectionGbList : allSectionGbData
+						, multiSupplyCompCd : multiSupplyCompCd
+						, multiBrand : multiBrand
+						, multiApplyGoods : multiApplyGoods
+						, multiExceptGoods : multiExceptGoods
 					}
 					var jsonData = JSON.stringify(data);
-					gagajf.ajaxJsonSubmit('/marketing/morebetter/changeStat', jsonData, fnMorebetterFormClose);
+					gagajf.ajaxJsonSubmit('/marketing/morebetter/changeStat', jsonData, fnMorebetterChangeStatCollback);
 				}
 			}
-		});*/
+		});
 	});
 
-	// 진행 버튼 클릭
-	$("#moreBetterForm #btnMorebetterStop").on("click", function() {
+	var fnMorebetterChangeStatCollback = function(result){
+		console.log('<fnMorebetterChangeStatCollback result>');
+		if(result.duplicateYn == "Y"){
+			for(let i=0; i<result.duplicateGoodsList.length; i++){
+				gagaAgGrid.addRowData(gridOptionsDuplicateGoodsList, {"goodsCd" : result.duplicateGoodsList[i].goodsCd, "goodsNm" : result.duplicateGoodsList[i].goodsNm});
+			}
+			mcxDialog.alert("다른 다다익선에서 사용중인 상품이 존재합니다.");
+			gagaAgGrid.exportToExcel('다다익선 중복상품 목록', gridOptionsDuplicateGoodsList);
+			fnMorebetterFormClose();
+			$('#btnInit').trigger('click');
+			$('#btnSearch').trigger('click');
+		}else{
+			fnMorebetterFormClose();
+			$('#btnInit').trigger('click');
+			$('#btnSearch').trigger('click');
+		}
+	};
+
+	// 중지 버튼 클릭
+	$("#btnMorebetterStop").on("click", function() {
 		mcxDialog.confirmC("프로모션을 중지하시겠습니까?<br/>중지 후에는 진행으로 복원하실 수 없습니다.", {
 			btn: confirmBtnText,
 			btnClick: function(index) {
@@ -1238,5 +1358,7 @@
 		});
 	});
 
+
+
 </script>
 </html>

+ 928 - 924
src/main/webapp/ux/css/admin.ui.css

@@ -1,925 +1,929 @@
-@import url("https://fonts.googleapis.com/css?family=Open+Sans:300,400,600,700"); @import url("https://fonts.googleapis.com/css?family=Roboto:400,300,500,700"); html,body {position:relative; height:100%;}
-html, body, header, div, ul, ol, li, dl, dt, dd, h1, h2, h3, h4, h5, h6, label, a, p, form, input, textarea, table, hr, span, em {margin:0; padding:0; box-sizing:border-box;}
-body {overflow-x:hidden; font-family:"open sans", "Roboto", "Malgun Gothic", "Helvetica Neue", Helvetica, Arial, sans-serif; font-size:12px; background-color:#f3f3f4;}
-h1, h2, h3, h4, h5, h6 {display:inline-block;}
-ul, ol {list-style:none;}
-ul::after, ol::after {display:block; clear:both; content:'';}
-img {vertical-align:middle; border-style:none;}
-a {text-decoration:none;}
-em, i {font-style:normal;}
-table {border-collapse:collapse;}
-th {text-align:inherit;}
-label {position:relative; margin-right:20px; display:inline-block; -webkit-touch-callout:none; -webkit-user-select:none; -moz-user-select:none; -ms-user-select:none; user-select:none;}
-label:last-child {margin-right:0 !important;}
-input,button,select,textarea {font-family:inherit; font-size:inherit;}
-input.btn-sm {padding:1px 6px;}
-input[type=text] {width:100%;}
-input[type=text], input[type=file], input[type=date], [type=password], textarea {padding:4px 3px 4px 5px; color:inherit; border-radius:1px; vertical-align:middle; margin:1px 3px 2px 0;}
-input[type=date],input[type=time],input[type=datetime-local],input[type=month] {-webkit-appearance:listbox;}
-input[readonly="readonly"], input[disabled="disabled"], input[readonly="readonly"]:before, input[disabled="disabled"]:before, select[readonly="readonly"], select[disabled="disabled"] {background-color:#eee !important;}
-button, select {text-transform:none;}
-button,[type=button],[type=reset],[type=submit] {margin:0; -webkit-appearance:button; border-radius:0; cursor:pointer; background-color:transparent; border-color:transparent;}
-button::-moz-focus-inner,[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner {padding:0; border-style:none;}
-textarea {overflow:auto; resize:vertical; width:100%; margin:4px 0; vertical-align:middle; line-height:22px; height:32px;}
-.textareaR2 {min-height:60px; line-height:26px;}
-.textareaR3 {min-height:96px; line-height:26px;}
-.textareaR4 {min-height:134px; line-height:26px;}
-.byteChk {line-height:20px; padding-left:20px; display:inline-block; vertical-align:middle;}
-select {margin:0 3px 1px 0; padding:3px 10px 3px 3px; color:inherit; border-radius:1px; vertical-align:middle;}
-select, input[type=text], input[type=file], input[type=date], input[type=password], textarea {border:1px solid #dbdbdb;}
-select:focus, input:focus, textarea:focus, button:focus, .outline {outline:2px auto #4D90FE;}
-.formControl {background:#eee;}
-.off {display:none !important;}
-.scrollOff {overflow:hidden;}
-.f25 {font-size:25px;}
-
-html,body,#wrapper,#container {min-height:100%; height:100%;}
-#wrapper {position:relative; min-width:1240px;}
-
-/* 로그인 --------------- */
-.loginBg {background:#f3f3f4;}
-.loginWrap {width:500px; box-shadow:0 7px 7px -5px rgba(0, 0, 0, 0.1);}
-.loginWrap .loginBox input[type=text],
-.loginWrap .loginBox input[type=password]{padding:10px; width:100%; border:1px solid #ced4da; border-radius:.25rem;}
-.loginWrap .loginBox li:nth-of-type(2), .loginBox li:nth-of-type(3) {padding-bottom:10px;}
-.loginWrap .loginBox li:nth-of-type(4) {padding:10px 0 50px 0; line-height:30px; text-align:left;}
-.loginWrap .loginBox li:nth-of-type(5) {margin-bottom:30px; text-align:center;}
-.loginWrap .loginBox a {display:inline-block; padding:10px;}
-.loginWrap .loginBox .dot {color:#ccc;}
-.loginWrap .btn-black {background-color:#555; color:#fff; font-weight:bold; float:right; margin:0 !important;}
-.loginWrap .btn-black:hover{background-color:#000; box-shadow:none;}
-.loginWrap .btn-purple {background-color:#667eea; color:#fff; font-weight:bold; float:right; margin:0 !important;}
-.loginWrap .btn-purple:hover{background-color:#2e38cb; box-shadow:none;}
-.loginWrap .loginInfo {color:#888; line-height:23px; text-align:left;}
-.loginWrap .loginInfo em i {margin-right:7px;}
-.loginWrap .loginInfo p:first-child{margin-bottom:15px;}
-.loginWrap .loginInfo p span {display:inline-block; margin-bottom:15px; line-height:40px; font-size:16px; font-weight:bold; border-bottom:1px solid #000;}
-
-/* 로그인 style :black */
-.login_black {position:absolute; top:50%; left:50%; transform:translate(-50%, -50%); -ms-transform:translate(-50%, -50%); background:#fff;}
-.login_black .logo { padding:25px 0; text-align:center; background:#000;}
-.login_black .loginInfo em {color:#555; font-weight:bold;}
-.login_black .loginCont > ul {padding:60px 60px 70px;}
-.login_black .loginBox li:nth-of-type(5) {border-top:1px solid #e4e4e4; border-bottom:1px solid #e4e4e4;}
-.login_black .loginBox a {color:#555}
-
-/* 보안 인증 */
-.loginWrap .certiFrm {padding:40px 60px 70px;}
-.loginWrap .certiFrm h2{margin:10px 0 30px;}
-.loginWrap .certiFrm h2 i{margin-right:10px;}
-.loginWrap .certiFrm .alertBox{margin-bottom:15px}
-.loginWrap .certiFrm .input{height:45px; position:relative;}
-.loginWrap .certiFrm .input input[type=text]{position:relative; padding:10px; width:45px; height:45px; line-height:45px; font-size:16px; border:1px solid #ced4da; border-radius:.25rem; text-align:center;}
-.loginWrap .certiFrm .input input[type=text]:focus{color:#4D90FE;font-weight:bold;}
-.loginWrap .certiFrm .input .countdown{display:inline-block; position:relative; padding-left:20px; line-height:45px; height:45px;color:red; text-align:center;vertical-align:top; font-size:14px}
-.loginWrap .certiFrm .info{margin-top:20px; line-height:22px; color:#555;}
-.loginWrap .certiFrm .button{margin:25px 0 50px;}
-.loginWrap .certiFrm .button button{margin:0 5px !important; padding:5px 20px; height:32px; float:right}
-.loginWrap .certiFrm .button button:focus{outline:2px auto #4D90FE !important; }
-.loginWrap .certiFrm .button .btn-black{width:100px !important;}
-
-/* 로그인 :alert */
-.alertBox {position:relative; padding:10px 40px 10px 10px; margin-bottom:10px; border:1px solid; border-radius:.25rem; line-height:22px;}
-.alertBox .alertClose {position:absolute; top:0; right:5px; padding:0 10px; height:40px; text-indent:-9999px; background:url('/image/btn_sltClose.png') no-repeat 50% 50%;}
-.alertBox .alertClose:hover {background:url('/image/btn_sltCloseOn.png') no-repeat 50% 50%;}
-.alert-success {color:#155724; background-color:#d4edda; border-color:#c3e6cb;}
-.alert-info {color:#0c5460; background-color:#d1ecf1; border-color:#bee5eb;}
-.alert-warning {color:#856404; background-color:#fff3cd; border-color:#ffeeba;}
-.alert-danger {color:#721c24; background-color:#f8d7da; border-color:#f5c6cb;}
-
-/* header--------------- */
-header {position:fixed; top:0; left:0; right:0; z-index:10; min-width:1240px; width:100%; height:60px; line-height:60px; color:#fff; background:linear-gradient(135deg,#667eea 0,#764ba2 100%);}
-header a, header button {color:#fff;}
-.header-logo {float:left; width:260px; line-height:60px; background:rgba(250, 251, 252, 0.1); overflow:hidden;}
-.header-logo a {display:inline-block; margin:0 10px 0 20px; width:184px; height:60px;}
-.header-logo .lnbClose {width:30px; line-height:30px; display:inline-block !important;}
-.header-logo .lnbClose:hover {color:rgba(255, 255, 255, 0.8);}
-.header-menu {position:absolute; left:260px; padding:0 0 0 30px; font-weight:bold;}
-.header-menu .menu {display:inline-block; -ms-user-select:none; -webkit-user-select:none; user-select:none;}
-.header-menu .menu a {display:inline-block; margin-right:7px; padding:0 14px; line-height:34px; border-radius:50px; background:rgba(0, 0, 0, 0.07);}
-.header-menu .menu a:hover {color:rgba(255, 255, 255, 0.8);}
-.header-menu .menu a.on {background:rgba(0, 0, 0, 0.3);}
-.header-info {display:inline-block; float:right; margin-right:20px;}
-.header-info a {color:rgba(255, 255, 255, 0.8);}
-.header-info a:hover {color:#fff;}
-.header-info i.heart {font-size:6px; color:rgba(255, 255, 255, 0.4); margin-right:3px;}
-.header-info i.dot {font-size:13px; color:rgba(255, 255, 255, 0.4); margin:0 3px;}
-.header-info-sm {display:none; float:right; margin-right:20px;}
-.header-info-sm a {display:inline-block; padding:0 7px; color:rgba(255, 255, 255, 0.8);}
-.header-info-sm a:hover {color:#fff;}
-
-/* GNB:툴팁--------------- */
-.tooltip .tooltiptext {visibility:hidden; position:absolute; top:48px; right:20px; z-index:1; padding:0 15px; line-height:30px; color:#fff; font-size:13px; text-align:center; background-color:#233646; border-radius:3px;}
-.tooltip .tooltiptext::after {content:""; position:absolute; bottom:100%; right:38px; border-width:5px; border-style:solid; border-color:transparent transparent #233646 transparent;}
-.tooltip .tooltiptext.logout::after {right:10px;}
-.tooltip:hover .tooltiptext {visibility:visible;}
-
-/* LNB--------------- */
-#lnb-wrapper {position:fixed; top:60px; left:-260px; width:260px; height:100%; vertical-align:top; overflow-y:auto; transition:left .3s; -webkit-transition:left .3s; background-color:#2f4050;}
-#lnb-wrapper:after{content:''; position:absolute; top:0; left:0; z-index:-1; width:100%; height:100%;}
-#lnb-wrapper.on {left:0;}
-#lnb {margin-bottom:100px; width:260px;}
-#lnb a {display:block; color:#a7b1c2;}
-#lnb a:hover {color:#fff;}
-#lnb a.on {color:#fff;}
-#lnb .dep2 {padding:14px 20px 14px 35px; background:url('/image/icon_dep2.png') 10px 50% no-repeat, url('/image/icon_depArr2.png') 222px 50% no-repeat; background-color:#233646; cursor:pointer;}
-#lnb .dep2.on {display:block; background:url('/image/icon_dep2On.png') 10px 50% no-repeat, url('/image/icon_depArr2On.png') 222px 50% no-repeat; background-color:#233646;}
-#lnb .dep3 {padding:5px 0 10px 10px; border-left:4px solid #8597eb; cursor:pointer;}
-#lnb .dep3 a {padding:10px; cursor:pointer;}
-#lnb .dep4 {padding:5px 0 10px 20px; cursor:pointer;}
-#lnb .dep4 a {padding:10px; cursor:pointer;}
-
-/* main--------------- */
-#main-wrapper {position:relative; left:0; top:0; margin-left:0; min-height:100%; padding-bottom:60px; vertical-align:top; color:#222; transition:margin-left .3s; -webkit-transition:margin-left .3s;}
-#main-wrapper.on {margin-left:260px;}
-#main {padding-top:60px; position:relative;}
-#main .main-title {height:60px; margin-left:20px; margin-right:20px;}
-#main .main-title h1 {padding-top:15px; font-size:20px; color:#333; font-weight:700;}
-#main .main-title ol {margin-top:25px; float:right; color:#666;}
-#main .main-title li {float:left;}
-#main .main-title li::before {padding:0 5px; content:"/"; color:#999;}
-#main .main-title li:nth-of-type(1)::before {content:none !important;}
-#main .main-title i {padding-right:3px; color:#999;}
-#main .sub-title {margin:0 20px 10px; font-size:14px; color:#6c7dda; font-weight:bold;}
-#main .sub-title i {margin-right:10px;}
-
-/* 패널영역 스타일--------------- */
-.panelStyle {position:relative; margin:0 20px 30px 20px; padding:15px 15px 0; background-color:#fff; border-top:2px solid #dfe2e3; box-shadow:0 7px 7px -5px rgba(0, 0, 0, 0.04);}
-.panelStyle::after, .frmStyle::after{position:relative; bottom:-5px; content:''; display:block; border:1px solid rgba(255,255,255,0);}
-.panelStyle .panelTitle {margin:-15px -15px 0; padding:0 20px; line-height:40px; border-bottom:1px solid #e7eaec;}
-.panelStyle .panelControl {position:absolute; top:0; right:15px; color:#c4c4c4;}
-.panelStyle .panelControl i {padding:10px 10px; cursor:pointer;}
-.panelStyle .panelContent {margin-top:10px;}
-.panelStyle h2 {margin-right:10px; font-size:14px; font-weight:bold;}
-.panelStyle h3 {margin-right:10px; font-size:12px; font-weight:normal; line-height:25px;}
-.panelStyle h3 i {padding-right:5px}
-.panelStyle h4 {padding-left:23px; height:31px; line-height:31px; background:url('/image/icon_h4.png') no-repeat 3px 50%; color:#666;}
-.panelStyle .panelBar {display:table; width:100%; padding-bottom:10px;}
-.panelStyle .panelBar h4 {margin-bottom:0;}
-.panelStyle .panelBar > li {display:table-cell;}
-.panelStyle .panelBar > .center {text-align:center;}
-.panelStyle .panelBar > .right {text-align:right;}
-
-/* 패널 내부 테이블 여러개 배치 */
-.panelStyle .division + .panelBar {padding-bottom:15px;}
-.panelStyle .division {display:table; width:100%;}
-.panelStyle .division > li, .panelStyle .division > div {display:table-cell; padding-right:40px;}
-.panelStyle .division > li:last-child, .panelStyle .division > div:last-child {padding-right:0;}
-/* table, grid, button 상하 여백 */
-.ag-theme-balham{margin-bottom:15px !important;}
-.frmStyle + .panelBar {padding-bottom:15px;}
-.ag-theme-balham {margin:10px 0 15px;}
-.ag-theme-balham + .panelBar{padding-bottom:15px;}
-.panelBar + .ag-theme-balham {margin:0 0 15px;}
-.panelBar + .frmStyle {margin-top:0;}
-
-/* TABS 영역 --------------- */
-.tabs {position:relative; margin-bottom:30px; margin-left:20px; margin-right:20px;}
-.tabs h2 {position:absolute; top:0; z-index:2; margin-left:10px; font-size:14px; line-height:34px;}
-.tabs h2 i {margin-right:12px;}
-.tabsNav {overflow:hidden; position:relative; top:0; z-index:2; padding:0 30px 0 20px; height:35px;}
-.tabsNav ul {display:inline-block;}
-.tabsNav li {float:left; position:relative;}
-.tabsNav li a {padding:0 20px; line-height:35px; height:35px; display:block; color:#888; font-weight:bold; background-color:#f9f9f9; border:1px solid #dfe2e3; border-bottom:2px solid #dfe2e3; border-top-left-radius:.25rem; border-top-right-radius:.25rem;}
-.tabsNav li.on a {background-color:#fff; color:#222; border:1px solid #ccc; border-bottom:2px solid #fff;}
-.tabsCont {position:relative; top:-2px; z-index:1;}
-.tabsCont::after {display:block}
-.tab {display:none;}
-.tab > .panelStyle{margin:0;}
-.tab.on {display:block;}
-.popupTabs {padding-top:10px;}
-.tabContArea {overflow-x:hidden; overflow-y:auto;}
-.tabBtnArea {padding:15px 0 20px 0;}
-.popup .tabsCont {box-shadow:none;}
-.popup .tabs {margin-bottom:0;}
-
-/* Add TABS 영역 --------------- */
-.btn-add-tab {position:absolute; top:5px; right:0; z-index:2; padding:0 10px;}
-.tabsNav .ui-tabs-active a {background-color:#fff; color:#222; border:1px solid #ccc; border-bottom:2px solid #fff;}
-.tab-del {position:absolute; top:1px; right:1px; padding:4px 6px; color:gray; cursor:pointer; border-top-right-radius:.25rem;}
-.tab-del:hover {color:#f40552;}
-a, button, .ui-state-active, .ui-state-focus, .ui-state-hover {outline:0 !important;}
-.tabsNav .ui-corner-top a {padding:0 35px 0 20px}
-
-/* tabsJr 영역 --------------- */
-.tabsJr {position:relative;}
-.tabsJrNav {overflow:hidden; position:relative; top:0; z-index:2; height:31px; margin:0 30px 0 20px;}
-.tabsJrNav > ul {display:inline-block;}
-.tabsJrNav li {float:left;}
-.tabsJrNav li a {padding:0 20px; line-height:30px; height:30px; display:block; color:#888; /*font-weight:bold; */ background-color:#f9f9f9; border:1px solid #ccc; border-top-left-radius:.25rem; border-top-right-radius:.25rem;}
-.tabsJrNav li.on a {padding-bottom:2px; font-weight:bold; color:#555; background-color:#fff; border-top:1px solid #ccc; border-right:1px solid #ccc; border-bottom:1px solid #fff;}
-.tabsJrCont {position:relative; top:-2px; z-index:1;}
-.tabsJrCont::after {display:block}
-.tabJr {display:none;}
-.tabJr .panelStyle{margin:0; border-top:1px solid #ddd; min-height:20px; padding:20px 15px 0; box-shadow:0 -5px 7px -5px rgba(0, 0, 0, 0.05);}
-.tabJr.on {display:block;}
-.tabJrContArea {vertical-align:middle;}
-
-/* modal, modeless popup --------------- */
-.modalPopup{display:none; position:fixed; left:0; top:0; z-index:11; width:100%; height:100%; background:rgba(0,0,0,0.5);}
-.modalPopup > .panelStyle{position:absolute; top:50%; left:50%; z-index:11; -ms-transform:translate(-50%, -50%); transform:translate(-50%, -50%); margin:0; border:1px solid #79797a; border-radius:3px;}
-.modalPopup > .panelStyle .close {position:absolute; top:0; right:0; font-size:18px; padding:5px 15px 8px;}
-.modalPopup .tabs{ margin:0;}
-.modalPopup .tabs .panelStyle{box-shadow:none}
-.modalPopup .tab > .panelStyle{overflow-y:auto;}
-
-/*MODELESS POPUP --------------- */
-.modelessPopup{display:none; position:absolute; z-index:11; top:50%; left:50%;}
-.modelessPopup.draggable {cursor:move;}
-.modelessPopup .panelStyle{margin:0; border:1px solid #ccc; border-radius:3px;}
-.modelessPopup .panelStyle .close {position:absolute; top:0; right:0; font-size:18px; padding:5px 15px 8px;}
-.modelessPopup .tabs{ margin:0;}
-.modelessPopup .tabs .panelStyle{box-shadow:none}
-.modelessPopup .tab > .panelStyle{overflow-y:auto;}
-
-/*VIDEO POPUP --------------- */
-.videoPopup {display:none; position:fixed; top:50%; left:50%; z-index:11; -ms-transform:translate(-50%, -50%); transform:translate(-50%, -50%); margin:0; border:1px solid #79797a; border-radius:3px;}
-.modalPopup::before{position:fixed; left:0; top:0; z-index:11; width:100%; height:100%; background:rgba(0,0,0,0.5);}
-.videoPopup .close {position:absolute; top:-20px; right:-20px; z-index:1; width:40px; height:40px; line-height:20px; font-size:20px; border:1px solid #666; border-radius:50px; background-color:#fff;}
-.videoPopup iframe{width:100%; height:100%}
-
-
-#btnTop {display:none; position:fixed; right:0; bottom:50px; width:40px; line-height:10px; font-size:10px; background:#fff; border:1px solid #ddd; border-right:none; padding:3px 0 5px 0; box-shadow:5px 5px 5px -4px rgba(0, 0, 0, 0.07); color:#1c84c6;}
-#btnTop i {width:100%; font-size:12px;}
-#btnTop:hover {padding-right:30px; width:70px; font-weight:bold;}
-
-
-/* 컨텐트 스크롤--------------- */
-.xScroll {overflow-x:auto;}
-.yScroll {overflow-y:auto;}
-
-/* 폼테이블 스타일 --------------- */
-.frmStyle {width:100%; margin-bottom:15px;}
-.frmStyle th {border-top:1px solid #dae0fd;}
-.frmStyle tr:last-child th {border-bottom:1px solid #dae0fd;}
-.frmStyle tr:last-child td {border-bottom:1px solid #eee;}
-.frmStyle th {padding:0 15px; height:36px; line-height:24px; white-space:nowrap; text-align:center; background:#e9ecfb;}
-.frmStyle td {padding:0 10px 0 10px; line-height:36px; position:relative; border-top:1px solid #eee; border-right:1px solid #eee;}
-
-/* 체크박스&라디오박스 공통--------------- */
-input[type=radio] {position:absolute; top:50%; left:0; width:18px; height:18px; transform:translate(0,-50%); -ms-transform:translate(0,-50%);}
-label.chkBox, label.rdoBtn {position:relative; display:inline-block; padding-left:26px; height:22px; line-height:22px; vertical-align:middle; cursor:pointer;}
-/* 체크박스 :전체선택 버튼--------------- */
-input[type=checkbox] {position:absolute; top:0; left:0; width:0; height:0;}
-input[type=button].chkBox {margin-left:-2px; padding-left:24px; height:22px; vertical-align:middle; background:url('/image/icon_checkN.png') no-repeat 0 50%;}
-
-/* 체크박스--------------- */
-label.chkBox::before {position:absolute; top:2px; left:0; content:''; width:16px; height:16px; border:1px solid #dbdbdb; background:#fff;}
-label.chkBox.checked::after {position:absolute; top:6px; left:3px; content:''; width:8px; height:4px; border-bottom:3px solid #676a6c; border-left:3px solid #676a6c; -webkit-transform:rotate(-45deg); transform:rotate(-45deg);}
-label.chkBox .formControl::before {background:#eee;}
-
-/* 라디오버튼--------------- */
-input[type=radio]::before {position:absolute; top:0; left:0; content:''; width:16px; height:16px; border:1px solid #dbdbdb; border-radius:50%; background:#fff;}
-input[type=radio]:checked::after {position:absolute; top:5px; left:5px; content:''; width:8px; height:8px; border-radius:50%; background:#676a6c;}
-input[type=radio].formControl::before {background:#eee;}
-
-/* 토글 스위치--------------- */
-.switchBox{ display:inline-block;position:relative; width:60px; height:28px; vertical-align:middle;border-radius:25px;overflow:hidden;}
-.switchBox input[type="checkbox"]{position:absolute;visibility:hidden;}
-.switchBox label{display:block;position:absolute;top:0;width:60px;height:28px;background-color:#aaa;transition-duration:0.2s;}
-.switchBox label span{position:absolute;left:0;top:50%;z-index:1;width:26px;height:23px;border-radius:25px;transform:translate(3px, -50%);transition-duration:0.2s;background-color:#fff;text-indent:-9999px;}
-.switchBox label:before,label:after{position:absolute;top:0;width:52%;font-size:11px;line-height:27px;color:#fff;text-align:center;}
-.switchBox label:before{left:0;content:'ON';}
-.switchBox label:after{right:0;content:'OFF';}
-.switchBox input:checked + label span{transform:translate(31px, -50%);}
-.switchBox input:checked::before, .switchBox input:checked::after{border:none}
-.switch-base input:checked + label{color:#fff; background-color:#8597eb;}
-.switch-primary input:checked + label{color:#fff; background-color:#1ab394;}
-.switch-success input:checked + label{color:#fff; background-color:#1c84c6;}
-.switch-info input:checked + label{color:#fff; background-color:#23c6c8; }
-.switch-warning input:checked + label{color:#fff; background-color:#f8ac59;}
-.switch-danger input:checked + label{color:#fff; background-color:#ed5565;}
-.switch-black input:checked + label{color:#fff; background-color:#222;}
-.switchBox + .switchBox {margin-left:6px;}
-
-/* 테이블 스타일--------------- */
-.tableStyle {width:100%; max-width:100%; margin-bottom:15px;}
-.tableStyle th {position:relative; padding:7px 0; color:#333; border-top:1px solid #dae0fd; border-bottom:1px solid #dae0fd; border-right:1px solid #dae0fd; background-color:#e9ecfb; text-align:center;}
-.tableStyle th:last-child {border-right:none;}
-.tableStyle td {position:relative; padding:7px 0; border-right:1px solid #ebebeb; border-bottom:1px solid #ebebeb; text-align:center;}
-.tableStyle td:last-child {border-right:none;}
-.tableStyle tbody tr:nth-of-type(2n) {background-color:rgba(0, 0, 0, 0.02);}
-.tableStyle tbody tr:hover {background-color:rgba(224,243,255,0.6);}
-.tableStyle + .panelBar {padding-bottom:15px;}
-/* 스캔 */
-.scanTbl th {font-size:25px; line-height:80px;}
-.scanTbl td {line-height:80px;}
-.scanTbl input[type=text] {line-height:50px; font-size:32px;}
-.scanTbl .btn {overflow-y:hidden; margin-bottom:1px; padding:12px 30px; font-size:25px;}
-table.noPad tr > td, td.noPad {padding:0 !important;}
-th[rowspan] {border-bottom:1px solid #dae0fd;}
-td[rowspan] {border-bottom:1px solid #eee;}
-.nowrap {white-space:nowrap;}
-.solidR {border-right:1px solid #eee; vertical-align:middle;}
-.solidL {border-left:1px solid #eee; vertical-align:middle;}
-.solidT {border-top:1px solid #eee;}
-.solidB {border-bottom:1px solid #eee;}
-.dashR {border-right:1px solid #dae0fd;}
-.dashL {border-left:1px solid #dae0fd;}
-.noPad table.frmStyle > tr:first-child th {border-top:0 !important;}
-.noPad table.frmStyle > tr:first-child td {border-top:0 !important;}
-.noPad table.frmStyle > tr:last-child th {border-bottom:0 !important;}
-.noPad table.frmStyle > tr:last-child td {border-bottom:0 !important;}
-
-
-/* Q&A 스타일--------------- */
-.qnaStyle {width:100%; max-width:100%;}
-.qnaStyle th {position:relative; padding:7px 0; color:#333; border-top:1px solid #dae0fd; border-bottom:1px solid #dae0fd; border-right:1px solid #dae0fd; background-color:#e9ecfb; text-align:center;}
-.qnaStyle th:last-child {border-right:none;}
-.qnaStyle td {position:relative; padding:7px 0; text-align:center;}
-.qnaStyle tr td {border-bottom:1px solid #ecf5f7;}
-.qnaStyle tbody tr:nth-of-type(3n+1) td {background-color:rgba(224,243,255,0.6);}
-.qnaStyle tbody tr:nth-of-type(3n) td {border-bottom:1px solid #ddd;}
-.qnaClaim { text-align:left !important; padding-left:10px !important;}
-.qnaClaim .goods {font-weight:bold; line-height:26px;}
-.qnaClaim .cont {line-height:22px; padding:10px 0; color:#1d3e9d;}
-.qnaClaim .email {line-height:26px;}
-.qnaClaim .email em {border-bottom:1px solid #aaa;}
-.lineRound {border:2px solid #ccc; border-radius:15px; padding:4px 14px; font-weight:bold;}
-
-/* 내부 테이블 디자인 */
-.subTable {display:table; width:100%;}
-.subTable dl {display:table; width:100%;}
-.subTable dt, .subTable dd {display:table-cell;}
-.subTable dt {vertical-align:middle; white-space:nowrap; width:8%; padding:0 15px; background:#e9ecfb; text-align:center; border-bottom:1px solid #dae0fd;}
-.subTable dl:last-child dt {border-bottom:none;}
-.subTable dd {border-bottom:1px solid #eee; padding:3px 20px 3px 10px;}
-.subTable dl:last-child dd {border-bottom:none;}
-
-/* button --------------- */
-.btn {border-radius:3px; vertical-align:middle; white-space:nowrap;font-size:12px;user-select:none;}
-.btn-lg {padding:4px 20px 5px; height:28px; overflow-y:hidden;}
-.btn-sm {margin-top:-2px; line-height:100%; height:28px; overflow-y:hidden;}
-.btn-ssm {margin-top:-2px; line-height:100%; height:22px; overflow-y:hidden;}
-.btn + .btn {margin-left:6px;}
-.btn:first-child {margin-left:0;}
-
-/* 버튼 색상 */
-.btn-white {color:#555 !important; background-color:#fff !important; border:1px solid #ccc !important;}
-.btn-default {color:#555; background-color:#eee; border:1px solid #dcdcdc;}
-.btn-gray {color:#fff; background-color:#aaa; border:1px solid #aaa;}
-.btn-base {color:#fff; background-color:#8597eb; border:1px solid #8597eb;}
-.btn-primary {color:#fff; background-color:#1ab394; border:1px solid #1ab394;}
-.btn-success {color:#fff; background-color:#1c84c6; border:1px solid #1c84c6;}
-.btn-info {color:#fff; background-color:#23c6c8; border:1px solid #23c6c8;}
-.btn-pink {color:#fff; background-color:#feada6; border:1px solid #feada6;}
-.btn-warning {color:#fff; background-color:#f8ac59; border:1px solid #f8ac59;}
-.btn-danger {color:#fff; background-color:#ed5565; border:1px solid #ed5565;}
-.btn-dark, .btn.active {color:#fff; background-color:#6c757d; border:1px solid #6c757d;}
-.btn.icn {line-height:28px; height:28px; padding:0 8px; background-color:#eee; border:1px solid #dbdbdb;}
-.btn.icn i {padding-top:6px; width:12px; vertical-align:top; font-size:14px; text-align:center;}
-.btnGroup{display:inline-block;}
-.btnGroup .btn + .btn{margin:0;}
-
-/* 페이징 --------------- */
-.tablePaging {position:relative; 	display:inline-block; vertical-align:middle;}
-.tablePaging a {display:inline-block; float:left; margin:0 5px; width:28px; height:28px; line-height:28px; text-align:center; border:1px solid #ccc; border-radius:50px; cursor:pointer;}
-.tablePaging a.arrow {background-color:rgba(0, 0, 0, 0.03); 	border-color:#ebebeb;}
-.tablePaging .num.on {background:#8597eb; color:#fff; border-color:#8597eb;}
-
-/* 다중 Select Box */
-.mSelectWrap select {display:none;}
-.mSelectBox {display:inline-block; position:relative; top:-1px; margin:2px 0 2px 0; padding:0 7px 0 0; width:100%; height:auto !important; min-height:29px; border:1px solid #e5e6e7; vertical-align:middle;}
-.mSelected {overflow:auto;}
-.mSelected li {float:left; margin:2px 5px 3px; line-height:24px; padding:0 7px; background:#dbedf9; -ms-user-select:none; -moz-user-select:-moz-none; -webkit-user-select:none; user-select:none;}
-.mSelected li.srchFld {margin:0; padding:0; background:none;}
-.mSelected .srchFld input {width:25px; margin:0; padding:0; border:none; outline:none;}
-.mSelected a {border:none !important; float:right; margin-left:3px; padding:0 3px; width:15px; line-height:22px; text-indent:-9999px; background:url('/image/btn_sltClose.png') no-repeat 100% 50%;}
-.mSelected a:hover {background:url('/image/btn_sltCloseOn.png') no-repeat 100% 50%;}
-.mSelecting {display:none; overflow-y:auto; overflow-x:hidden; position:absolute; top:100%; left:-1px; z-index:1; width:100%; max-height:156px; line-height:30px; border:1px solid #e5e6e7; background:#fff;}
-.mSelecting li {margin:0 10px; cursor:pointer;}
-
-/* 멀티 Select Box */
-.mSelWrap {display:inline-block;}
-.mSelWrap select {height:100px; padding:7px 0;}
-.mSelWrap .mSelBtn {margin:0 0 0 5px; float:right; width:33px; vertical-align:top;}
-.mSelWrap .mSelBtn .btn {margin:0; vertical-align:top;}
-.mSelWrap option {padding:4px 100px 4px 10px;}
-
-/* 파일첨부 --------------- */
-.uFile {overflow:hidden; position:relative; display:inline-block; margin:-2px 5px 0 0; width:80%; height:28px; vertical-align:middle; border:1px solid #dbdbdb;}
-.lrStyle .uFile {margin-top:2px;}
-.uFileInput {position:absolute; top:0; width:100%; margin:0 !important; padding:0 !important; line-height:28px; border:none !important;}
-.uFileLabel {position:absolute; top:0; right:0; left:0; z-index:1; margin:0; padding:0 7px; width:cals(100% - 7px); line-height:28px; height:28px; background-color:#fff; border-radius:1px; overflow:hidden; white-space:nowrap;}
-.uFileLabel::after {position:absolute; top:0; right:0; bottom:0; width:30px; z-index:3; line-height:28px; content:" "; border-left:1px solid #dbdbdb; background:#eee url('/image/icon_upload.png') no-repeat 50% 50%;}
-
-/* badge --------------- */
-.badge {float:right; margin-top:2px; padding:0 5px; min-width:9px; line-height:18px; color:#fff; font-size:12px; font-weight:600; border-radius:3px; text-align:center; text-shadow:1px 1px 1px rgba(0,0,0,0.4); letter-spacing:-0.5px;}
-.badge-warning {background-color:#ed7908;}
-.badge-primary {background-color:#1ab394;}
-.badge-danger {background-color:#ed5565;}
-.badge-success {background-color:#2fa4e7;}
-.badge-info {background-color:#23c6c8;}
-.badge.circle {border-radius:50px;}
-.dep3 .badge {position:relative; top:-28px; right:20px;}
-
-/* badge-등급 ------------*/
-.badgeLevel{overflow:hidden;display:inline-block;margin:5px 0 0;padding:0;width:50px;height:50px;line-height:46px;font-size:30px;font-weight:bold;border-radius:100%;text-align:center;vertical-align:top;box-sizing:border-box;}
-.badgeLevel.white{background-color:#fff;border:1px solid #333;color:#333;}
-.badgeLevel.dark1{background-color:#ccc;border:1px solid #ccc;color:#333;}
-.badgeLevel.dark2{background-color:#aaa;border:1px solid #aaa;color:#333;}
-.badgeLevel.dark3{background-color:#777;border:1px solid #777;color:#fff;}
-.badgeLevel.black{background-color:#333;border:1px solid #333;color:#fff;}
-
-/* tag */
-.tagNum {display:inline-block; margin-left:5px; padding:0 3px 0 2px; min-width:13px; line-height:16px; font-weight:normal; color:#fc5555; background:#fff; border-radius:5px;}
-
-/* footer --------------- */
-footer {position:absolute; bottom:0; left:0; width:100%; height:40px; background-color:#fff; border-top:1px solid #e7eaec; line-height:39px; font-size:13px;}
-footer .f-left {float:left; padding-left:20px; line-height:38px;}
-footer .f-right {float:right; padding-right:20px; line-height:38px;}
-
-/* 이미지 카드 */
-.dexterArea {min-width:350px; min-height:180px; padding:0 !important; vertical-align:top; background:#f1f1f1;vertical-align:top;}
-.dexterTable {display:table; width:100%; overflow-y:auto;}
-.dexterTable > li {display:table-cell; vertical-align:top; line-height:23px;}
-.dexterNo div {padding:0 10px; border-top:1px solid #ddd; border-right:1px solid #ddd; background:#fff;}
-.dexterNo div:first-child {margin-top:36px;}
-.dexterNo div:last-child {border-bottom:1px solid #ddd;}
-
-/* 수정용 이미지 카드 */
-.cardArea {width:100%; padding:0 0 20px; overflow-y:auto;}
-.imgCard {vertical-align:top; position:relative; display:inline-block; margin:20px 20px 0 0; padding:10px 10px 0 10px; border:1px solid #dbdbdb;}
-.imgCard ul {display:table;}
-.imgCard li {display:table-cell;}
-.imgCard img {margin-right:15px;}
-.imgCard li:nth-of-type(2) {padding-top:20px; max-width:150px; line-height:24px}
-.imgCard p {font-size:12px;}
-.imgCard .cardClose {position:absolute; top:0; right:0; width:24px; background:url('/image/btn_sltClose.png') no-repeat 50% 50%; text-indent:-9999px;}
-.imgCard .cardClose:hover {background:#f1f1f1 url('/image/btn_sltCloseOn.png') no-repeat 50% 50%;}
-.verticalTop {vertical-align:top;}
-
-/* 조회용 이미지 카드 */
-.cardArea2 {padding:10px 0;}
-.cardArea2 ul, .cardArea2 .box {vertical-align:top; position:relative; display:inline-block; margin:10px; border:1px solid #dbdbdb; max-width:300px;}
-.cardArea2 li {display:table-cell; line-height:26px; vertical-align:middle;}
-.cardArea2 li:nth-of-type(2) {padding:0 10px;}
-.cardArea2 .cardDel {position:absolute; top:0; right:0; background:url('/image/btn_sltClose.png') no-repeat 50% 50%; text-indent:-9999px;}
-.cardArea2 .cardDel:hover {background:#f1f1f1 url('/image/btn_sltCloseOn.png') no-repeat 50% 50%;}
-
-/* 테이블 외부 안내문구 */
-.panelStyle > .notice {margin:0 0 15px ;}
-.panelContent > .notice {margin:15px 0;}
-.notice em {color:red;}
-.notice li, p.dot {padding-left:20px; background:url('/image/dot_bk.png') no-repeat 5px 10px; line-height:24px;}
-p.dot .btn {margin-left:10px !important;}
-p.dot em {color:red;}
-
-/* 정렬 */
-.txt {line-height:36px;}
-.aC {text-align:center !important;}
-.aR {text-align:right !important;}
-.aL {text-align:left !important;}
-.vaT {vertical-align:top !important;}
-.vaM {vertical-align:middle !important;}
-.vaB {vertical-align:bottom !important;}
-
-/* 테이블 내부 안내문구 */
-.infoTxt {line-height:26px; padding:5px 0;}
-.infoTxt i {margin-right:7px;}
-.infoTxt em {color:red;}
-.infoTxtTh {display:inline-block; text-align:left; font-weight:normal; font-size:12px;}
-.infoTxtTh li {padding-top:3px;}
-.infoTxtTh i {padding-right:5px;}
-.srchOption {overflow:auto; padding:10px 0; line-height:36px;}
-
-/* 유의사항 안내 */
-.infoBox {margin:0 20px 20px; padding:7px 10px; border-top:2px solid #dfe2e3; border-bottom:2px solid #dfe2e3; background:#fff}
-.infoBox p {padding-left:25px; line-height:20px; font-size:12px; background:url('/image/dot_bk.png') no-repeat 10px 50%; background-size:3px auto;}
-
-/* 검색결과 안내문 */
-.srchNotice {padding-bottom:7px; font-weight:normal; font-size:14px;}
-.srchNotice em {color:red;}
-
-/* 필수입력항목 */
-.required {display:inline-block; position:relative; top:-3px; width:12px; height:7px; background:url('/image/icon_required.png') no-repeat 0 50%;}
-
-
-/* COLOR DESIGN -------------------------------------*/
-/*Color :Base ---*/
-.color-mPurple header,span.color-mPurple {background:linear-gradient(135deg,#667eea 0,#764ba2 100%) !important;}
-.color-purple header,span.color-purple {background:#667eea !important;}
-
-/*Color :Gray ---*/
-.color-mGray header,span.color-mGray {background:linear-gradient(to right,#6c757d 0%,#555 100%) !important;}
-.color-gray header,span.color-gray {background:#666 !important;}
-.color-mGray .frmStyle th,.color-mGray .tableStyle th,.color-gray .frmStyle th,.color-gray .tableStyle th {background:#eee !important; 	border-top:1px solid #ddd; 	border-bottom:1px solid #ddd;}
-.color-mGray .tablePaging .num.on,.color-gray .tablePaging .num.on {background:#888 !important; 	border-color:#888 !important;}
-.color-mGray #lnb .dep3,.color-gray #lnb .dep3 {border-color:#777 !important;}
-.color-mGray .tabsJrNav li.on a,.color-gray .tabsJrNav li.on a {color:#333;}
-
-/*Color :Blue ---*/
-.color-mBlue header,span.color-mBlue {background:linear-gradient(to right,#4481eb 0%,#04befe 100%) !important;}
-.color-blue header,span.color-blue {background:#0042a5 !important;}
-.color-mBlue .frmStyle th,.color-mBlue .tableStyle th,.color-blue .frmStyle th,.color-blue .tableStyle th {background:#d8eafc !important; 	border-top:1px solid #ddd; 	border-bottom:1px solid #ddd;}
-.color-mBlue .tablePaging .num.on,.color-blue .tablePaging .num.on {background:#3e91de !important; 	border-color:#3e91de !important;}
-.color-mBlue #lnb .dep3,.color-blue #lnb .dep3 {border-color:#3e91de !important;}
-.color-mBlue .tabsJrNav li.on a,.color-blue .tabsJrNav li.on a {background:#d8eafc;}
-.color-mBlue .tabJr.on,.color-blue .tabJr.on {border-top:4px solid #d8eafc;}
-.color-mBlue .tabsJrNav li.on a,.color-blue .tabsJrNav li.on a {color:#333;}
-
-/*Color :Green ---*/
-.color-mGreen header,span.color-mGreen {background:linear-gradient(135deg,#00b09b 0,#96c93d 100%) !important;}
-.color-green header,span.color-green {background:#00b09b !important;}
-.color-mGreen .frmStyle th,.color-mGreen .tableStyle th,.color-green .frmStyle th,.color-green .tableStyle th {background:#e5f7f5 !important; 	border-top:1px solid #ddd; 	border-bottom:1px solid #ddd;}
-.color-mGreen .tablePaging .num.on,.color-green .tablePaging .num.on {background:rgba(0,176,155,0.8); 	border-color:rgba(0,176,155,0.8) !important;}
-.color-mGreen #lnb .dep3,.color-green #lnb .dep3 {border-color:#00b09b !important;}
-.color-mGreen .tabsJrNav li.on a,.color-green .tabsJrNav li.on a {background:#e5f7f5;}
-.color-mGreen .tabJr.on,.color-green .tabJr.on {border-top:4px solid #e5f7f5;}
-.color-mGreen .tabsJrNav li.on a,.color-green .tabsJrNav li.on a {color:#333;}
-
-/*Color :Pink ---*/
-.color-mPink header,span.color-mPink {background:linear-gradient(to right, rgb(242, 112, 156), rgb(255, 148, 114)) !important;}
-.color-pink header,span.color-pink {background:#feada6 !important;}
-.color-mPink .frmStyle th,.color-mPink .tableStyle th,.color-pink .frmStyle th,.color-pink .tableStyle th {background:#fff7f6 !important; border-top:1px solid #ddd; border-bottom:1px solid #ddd;}
-.color-mPink .tablePaging .num.on,.color-pink .tablePaging .num.on {background:#feada6; 	border-color:#feada6 !important;}
-.color-mPink #lnb .dep3,.color-pink #lnb .dep3 {border-color:#feada6 !important;}
-.color-mPink .tabsJrNav li.on a,.color-pink .tabsJrNav li.on a {background:#fff7f6;}
-.color-mPink .tabJr.on,.color-pink .tabJr.on {border-top:4px solid #fff7f6;}
-.color-mPink .tabsJrNav li.on a,
-.color-pink .tabsJrNav li.on a {color:#333;}
-
-/*Color :black ---*/
-.color-black header, span.color-black{background:#3E3E3E !important;}
-.color-black .header-logo{background:#000 !important;}
-.color-black .header-menu .menu a{background:#000 !important;}
-.color-black .header-menu .menu a.on{background:#fff !important; color:#000 !important;}
-.color-black #lnb-wrapper{background-color:#b2b2b2 !important;}
-.color-black #lnb .dep2{background-color:#545454 !important;}
-.color-black #lnb .dep3{border-color:#000 !important;}
-.color-black #lnb .dep3{background:#fdfdfd !important;  }
-.color-black #lnb .dep3 a{color:#111111 !important;}
-.color-black #lnb a{color:#fff !important;}
-.color-black .frmStyle th, .color-black .tableStyle th, .color-black .frmStyle th, .color-black .tableStyle th{background:#eee !important; 	border-top:1px solid #ddd; border-bottom:1px solid #ddd;}
-.color-black .tablePaging .num.on, .color-black .tablePaging .num.on{background:#888 !important; 	border-color:#888 !important;}
-.color-black .tabsJrNav li.on a, .color-black .tabsJrNav li.on a{color:#333; background:#eee !important}
-.color-black .tabJr.on, .color-black .tabJr.on { border-top:4px solid #eee;}
-
-/* 폰트 컬러, 폰트 두께 */
-.cBlue {color:#127fdc !important;}
-.cGray {color:#666 !important;}
-.cRed {color:red !important;}
-.bold {font-weight:bold !important;}
-
-/* 배경 투명도 */
-.bgOp6 {opacity:0.6; color:#000 !important;}
-
-/* 여백 지정 */
-hr {border:0; padding-bottom:10px;}/* 기본 여백 :10px */
-.pad10 {padding:10px 0 !important;}
-.pad15 {padding:15px 0 !important;}
-.pad20 {padding:20px 0 !important;}
-.padT3 {padding-top:3px !important;}
-.padT5 {padding-top:5px !important;}
-.padT10 {padding-top:10px !important;}
-.padT15 {padding-top:15px !important;}
-.padT20 {padding-top:20px !important;}
-.padT30 {padding-top:30px !important;}
-.padT40 {padding-top:40px !important;}
-.padR20 {padding-right:20px !important;}
-.padL10 {padding-left:10px !important;}
-.padB5 {padding-bottom:5px !important;}
-.padB10 {padding-bottom:10px !important;}
-.padB15 {padding-bottom:15px !important;}
-.padB20 {padding-bottom:20px !important;}
-.padB30 {padding-bottom:30px !important;}
-.padB40 {padding-bottom:40px !important;}
-.marT5 {margin-top:5px !important;}
-.marT10 {margin-top:10px !important;}
-.marT15 {margin-top:15px !important;}
-.marT20 {margin-top:20px !important;}
-.marR3 {margin-right:3px !important;}
-.marL5 {margin-left:5px !important;}
-.marL10 {margin-left:10px !important;}
-.marL20 {margin-left:20px !important;}
-.marR10 {margin-right:10px !important;}
-.marR20 {margin-right:20px !important;}
-
-/* 넓이 지정 --------------- */
-.w20 {width:20px !important;}
-.w50 {width:50px !important;}
-.w60 {width:60px !important;}
-.w70 {width:70px !important;}
-.w80 {width:80px !important;}
-.w90 {width:80px !important;}
-.w100 {width:100px !important;}
-.w130 {width:130px !important;}
-.w150 {width:150px !important;}
-.w200 {width:200px !important;}
-.w300 {width:300px !important;}
-.w400 {width:400px !important;}
-.w500 {width:500px !important;}
-.w600 {width:600px !important;}
-.w800 {width:800px !important;}
-.w100p {width:100% !important;}
-.w90p {width:90% !important;}
-.w80p {width:80% !important;}
-.w70p {width:70% !important;}
-.w60p {width:60% !important;}
-.w50p {width:50% !important;}
-.w40p {width:40% !important;}
-.w30p {width:30% !important;}
-.w20p {width:20% !important;}
-.h100 {height:100px !important;} /*alert, confirm 컨텐츠 높이에 사용*/
-
-
-/*-- 캘린더 --------------*/
-#calendar {max-width:900px; margin:20px 0 50px 20px;}
-
-/*-- error page --------------*/
-#errPage {padding-top:40px; width:650px; background:#fff; position:relative; top:48%; left:50%; transform:translate(-50%,-50%); -ms-transform:translate(-50%,-50%); border-radius:9px; vertical-align:middle; overflow:hidden; box-shadow:0 0 2px 0 rgba(0,0,0,0.12), 0 2px 2px 0 rgba(0,0,0,0.24);}
-#errPage .errImg {padding-left:50px; display:table-cell; vertical-align:middle; padding-bottom:30px;}
-#errPage .errImg div {border-radius:50%; position:relative; display:inline-block; width:140px; height:140px; color:#fff; background:#d196e4; box-shadow:2px 2px 6px 0 rgba(0,0,0,0.2) inset;}
-#errPage .fa-television {position:absolute; top:30px; left:28px; font-weight:bold; font-size:80px;}
-#errPage .fa-info {position:absolute; top:49px; left:66px; font-size:34px;}
-#errPage .errTxt {padding:0 50px; display:table-cell; padding-bottom:40px;}
-#errPage .errTxt .ttl {font-size:16px; font-weight:bold; padding-bottom:20px;}
-#errPage .errTxt .cont { padding-bottom:20px; line-height:26px;}
-#errPage .errTxt .tel {color:#777;}
-#errPage .errBtn {width:100%; background:#f9f9fa; line-height:70px; text-align:right;}
-#errPage .errBtn .btn {margin-right:30px; border-radius:33px; background:#858b90; color:#fff; padding:5px 30px; line-height:24px; font-weight:bold; -webkit-transition:0.2s; transition:0.2s;}
-#errPage .errBtn .btn:hover {background:#555;}
-
-/*-- DEXTER --------------*/
-.dexterNo { width:43px;}
-.dexterNo div { padding:0 10px; border-top:1px solid #ddd; border-right:1px solid #ddd; background:#fff; text-align:right;}
-.dexterNo div:first-child {margin-top:28px;}
-
-/*-- 회원추가 --------------*/
-.memAddWrap {line-height:26px; padding:3px 0;}
-.memAdd {margin-right:15px; padding:2px 27px 2px 0; position:relative; line-height:24px; height:24px; white-space:nowrap;}
-.memAdd button {position:absolute; top:3px; right:0; bottom:0; width:18px; height:18px; border:1px solid #dbdbdb; border-radius:3px; text-indent:-9999px; background:#eee url('/image/btn_sltClose.png') no-repeat 50% 50%;}
-.memAdd button:hover {background:#eee url('/image/btn_sltCloseOn.png') no-repeat 50% 50%;}
-
-/*-- Date Picker --------------*/ /* 20200521 수정 */
-table.mtz-monthpicker {border:1px solid #ddd; border-top:none;}
-.mtz-monthpicker-month {padding:7px; cursor:pointer;}
-.ui-datepicker-trigger {padding:0;}
-.ui-datepicker {z-index:800 !important; text-align:center; background:#fff;}
-.ui-datepicker .ui-datepicker-today,
-.ui-datepicker .ui-state-highlight {background:#fff7cf !important;}
-.ui-datepicker .ui-state-active {border:1px solid red !important;}
-.ui-datepicker .ui-datepicker-prev {position:absolute; top:3px; left:3px; width:30px; line-height:30px; text-indent:-9999px; background:url('/image/icon_prev.png') no-repeat 50% 50%;}
-.ui-datepicker .ui-datepicker-next {position:absolute; top:3px; right:3px; width:30px; line-height:30px; text-indent:-9999px; background:url('/image/icon_next.png') no-repeat 50% 50%;}
-.ui-datepicker .ui-datepicker-calendar {padding:5px; border:1px solid #ddd; border-top:none; text-align:center;}
-.ui-datepicker .ui-datepicker-calendar th{padding:5px 0}
-.ui-datepicker-week-end {text-align:center;}
-.ui-datepicker-calendar .ui-state-default {display:inline-block; text-align:center; width:32px; line-height:24px; border:none;}
-.ui-datepicker-header {position:relative; background:#d0e9ff; text-align:center; padding:5px; border:1px solid #ddd; border-bottom:none;}
-.ui-datepicker-buttonpane button {background-color:#eee; border:1px solid #dcdcdc; line-height:24px; border-radius:3px; margin:0 5px 5px 5px;}
-.ui-datepicker-current {float:left;}
-.ui-datepicker-close {float:right;}
-
-/* prograss bar */
-.prograssWrap {display:flex; flex-direction:row;}
-.prograssWrap > li {display:flex; align-items:center;}
-.prograssWrap > li:nth-of-type(1) {width:96%}
-.prograssWrap > li:nth-of-type(2) {margin-left:1.5rem !important}
-.prograss-lg {display:flex; width:100%; height:1rem; background-color:#f4f5fd; border-radius:.65rem; overflow:hidden; box-shadow:inset 0 1px 2px rgba(0,0,0,.1);}
-.prograss-sm {display:flex; width:100%; height:.5rem; background-color:#f4f5fd; border-radius:.65rem; overflow:hidden; box-shadow:inset 0 1px 2px rgba(0,0,0,.1);}
-.prograss-bar {display:flex; border-top-right-radius:.65rem; border-bottom-right-radius:.65rem; transition:width .6s ease;
-  background-image: linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);
-  background-size: 1rem 1rem;
-  -webkit-animation: progress-bar-stripes 1s linear infinite; animation: progress-bar-stripes 1s linear infinite;}
-.prograss-bar.bg-info {background-color:#1c84c6;}
-.prograss-txt.bg-info {color:#1c84c6;}
-.prograss-bar.bg-success {background-color:#1ab394;}
-.prograss-txt.bg-success {color:#1ab394;}
-.prograss-bar.bg-danger {background-color:#f83245;}
-.prograss-txt.bg-danger {color:#f83245;}
-.prograss-bar.bg-base {background-color:#f8ac59;}
-.prograss-txt.bg-base {color:#ffa749;}
-
-/* Multi CheckBox */
-.multiCheckBox {position:relative; display:inline-block; width:auto; line-height:27px; margin:3px 3px 3px 0;}
-.multiCheckBox .sltBtn {padding-left:5px; width:100%; height:27px; color:#555; text-align:left; border:1px solid #dbdbdb; box-sizing:border-box; -webkit-touch-callout:none; -webkit-user-select:none; -ms-user-select:none; user-select:none;}
-.multiCheckBox .sltBtn::after {position:absolute; top:6px; right:10px; content:''; width:7px; height:7px; border-bottom:1px solid #555; border-left:1px solid #555; -webkit-transform:rotate(-45deg); transform:rotate(-45deg);}
-.multiCheckBox .sltBtn.on::after {top:10px; -webkit-transform:rotate(135deg); transform:rotate(135deg);}
-.multiCheckBox ul {display:none; position:absolute; top:26px; left:0; z-index:1; width:100%; height:auto; border:1px solid #dbdbdb; background:#fff;}
-.multiCheckBox li {padding:3px 10px;}
-.multiCheckBox li:hover {background-color:Highlight; color:HighlightText;}
-.multiCheckBox label {display:flex;}
-
-/* checkBox More */
-.checkBoxList {overflow:hidden; padding-right:36px; height:36px;}
-.checkBoxList.on {overflow:visible; height:auto;}
-.checkBoxList .more {position:absolute; top:-1px; right:0; width:36px; height:38px; border:1px solid #eee; background:#f7f7f7;}
-.checkBoxList ul {display:flex; flex-wrap:wrap;}
-.checkBoxList li {justify-content:flex-start; line-height:36px;}
-.checkBoxList[data-unit='1'] li {flex-basis:100%;}
-.checkBoxList[data-unit='2'] li {flex-basis:50%;}
-.checkBoxList[data-unit='3'] li {flex-basis:33%;}
-.checkBoxList[data-unit='4'] li {flex-basis:25%;}
-.checkBoxList[data-unit='5'] li {flex-basis:20%;}
-.checkBoxList[data-unit='6'] li {flex-basis:16.6%;}
-.checkBoxList[data-unit='7'] li {flex-basis:14.2%;}
-.checkBoxList[data-unit='8'] li {flex-basis:12.5%;}
-
-/* 아이콘 툴팁 버튼 */
-.iconTooltip {display:inline-block; position:relative; margin-right:10px;}
-.iconTooltip i {position:relative; color:#46a1ff; width:15px; height:15px; line-height:16px; border-radius:50%; border:1px solid #46a1ff; cursor:pointer; text-align:center;}
-.iconTooltip:hover i {box-shadow:0px 3px 7px 0px rgba(0,0,0,0.4);}
-.iconTooltip span {display:none; position:absolute; top:36px; z-index:5; padding:10px 15px; line-height:24px; color:#fff; background:#6d6d6d; box-shadow:0px 3px 7px 0px rgba(0,0,0,0.2); border-radius:5px;}
-.iconTooltip span:after {position:absolute; top:-4px; content:''; background:#6d6d6d; width:8px; height:8px; -ms-transform:rotate(-45deg); -webkit-transform:rotate(-45deg); transform:rotate(-45deg);}
-.iconTooltip span.left {left:-10px}
-.iconTooltip span.left:after {left:15px;}
-.iconTooltip span.right {right:-10px}
-.iconTooltip span.right:after {right:15px;}
-.iconTooltip span.center {left:50%;}
-.iconTooltip span.center:after {right:5px;}
-.iconTooltip:hover span{display:block;}
-
-/* 상품이동 */
-.itemMove {display:inline-block; width:800px; border:1px solid #eee;}
-.itemMove .item {float:left; display:table; margin:0 10px 20px 0; width:220px; border:1px solid #eee;}
-.itemMove .item li {display:table-cell; vertical-align:top;}
-.itemMove .item li:nth-of-type(1) {width:80px;}
-.itemMove .item li:nth-of-type(1) img {width:80px; height:80px;}
-.itemMove .item button {width:16px; height:16px; text-indent:-9999px;}
-.itemMove .item input {width:30px; height:14px !important; line-height:14px}
-.itemMove .item li:nth-of-type(2) div {line-height:20px}
-
-/* 상품 Dragable :20200129 */
-.sortableWrap #sortable { overflow-y:auto }
-.sortableWrap {margin:20px 0; width:100%; max-height:675px;}
-.sortableWrap .itemWrap {display:inline-block;}
-.sortableWrap .item {float:left; margin-right:12px; margin-bottom:12px; padding:5px 8px; line-height:20px; border:1px solid #ddd; vertical-align:top; background:#fff;}
-.sortableWrap .item > li {float:left; vertical-align:middle;}
-.sortableWrap .item .img {margin-top:3px; margin-right:10px; width:80px;}
-.sortableWrap .item .img img {width:80px; height:80px; cursor:move;}
-.sortableWrap .btnArea {text-align:center; margin-top:15px; padding:0 10px;}
-.sortableWrap button.icnSm {overflow:hidden; position:relative; width:24px; height:20px; background-color:#fff;}
-.sortableWrap button.icnSm i {position:absolute; top:-4px; left:-3px; width:24px; line-height:24px; font-size:15px; color:#888;}
-.sortableWrap button.icnSm:hover i {color:#111;}
-.sortableWrap button.icnSm:last-child {margin-right:0;}
-.sortableWrap .item .cont {width:114px;}
-.sortableWrap .item .cont li em {margin:0 3px 0 7px;}
-.sortableWrap .item .cont .no {font-weight:bold; padding-bottom:3px;}
-.sortableWrap .item .cont .title {padding-bottom:3px; border-bottom:1px solid #eee;}
-.sortableWrap .item .cont .price {padding-top:3px; padding-bottom:3px;}
-.sortableWrap .item .cont input {margin-left:5px; width:37px;}
-
-
-.ag-theme-balham.lh60 .ag-cell {line-height:56px !important; height:60px;}
-.ag-theme-balham.lh70 .ag-cell {line-height:66px !important; height:70px;}
-.ag-theme-balham.lh80 .ag-cell {line-height:76px !important; height:80px;}
-.ag-theme-balham.lh90 .ag-cell {line-height:86px !important; height:90px;}
-.ag-theme-balham.lh100 .ag-cell {line-height:96px !important; height:100px;}
-.ag-theme-balham.lh110 .ag-cell {line-height:106px !important; height:110px;}
-.ag-theme-balham.lh120 .ag-cell {line-height:116px !important; height:120px;}
-
-
-/* 테이블 상품명 클릭시 이미지 레이어 활성화 */
-.viewImg {position:relative; color:blue; cursor:pointer}
-.thumbLayer {display:inline-block; position:absolute; top:0; right:0; z-index:5; border:1px solid #ddd}
-.thumbLayer img {width:100%; height:auto;}
-
-/* dashboard */
-.flexWrap{display:-ms-flexbox; display:flex; -ms-flex-wrap:wrap; flex-wrap:wrap; color:#676a6c;}
-.flexWrap li{padding:0 20px 20px; width:calc(33.3%);}
-.flexWrap.unit4 li{width:calc(25%);}
-.flexWrap.unit5 li{width:calc(20%);}
-.flexWrap.unit6 li{width:calc(16.6%);}
-.flexWrap .title{padding:15px; font-weight:600; border:1px solid #e7eaec; border-top:2px solid #e7eaec;}
-.flexWrap .title h5{font-size:15px; font-weight:bold;}
-.flexWrap .title span{float:right; padding:1px 8px; font-size:10px; border-radius:0.25em;}
-.flexWrap .content{padding:15px; border:1px solid #e7eaec; border-top:none;}
-.flexWrap .content em{font-size:30px; font-weight:200;}
-.statText {margin-top:5px}
-.statText::after{display:block; clear:both; content:''}
-.statText span:nth-of-type(1){float:left; font-size:11px;}
-.statText span:nth-of-type(2){float:right; font-size:13px; font-weight:600;}
-.txt-success{color:#1c84c6;}
-.txt-info{color:#23c6c8;}
-.flexWrap .txt-danger{color:#ed5565;}
-.flexWrap .bg-success{background:#1c84c6;}
-.flexWrap .bg-info{background:#23c6c8;}
-.flexWrap .bg-danger{background:#ed5565;}
-.btn.on{-webkit-box-shadow:inset 0 3px 5px rgba(0, 0, 0, 0.125); box-shadow:inset 0 3px 5px rgba(0, 0, 0, 0.125);}
-.dbChart .btn-group{float:right; line-height:37px;}
-.dbChart .btn-group button{margin:0; height:23px;}
-.dbChart .boxleft{float:left; margin:20px 15px 20px 15px; width:calc(100% - 490px);}
-.dbChart .boxRight{float:left; margin:20px 20px 20px 40px; width:400px;}
-.dbChart .boxRight em{font-size:24px; font-weight:200;}
-.dbChart .boxRight > div{margin-bottom:25px;}
-.dbChart .boxRight .statText .c1 {color:#FF7043}
-.dbChart .boxRight .progress .c1 {background:#FF7043}
-.dbChart .boxRight .statText .c2 {color:#48C9B0}
-.dbChart .boxRight .progress .c2 {background:#48C9B0}
-.dbChart .boxRight .statText .c3 {color:#ca9900}
-.dbChart .boxRight .progress .c3 {background:#FFD54F}
-.progress{display:-ms-flexbox; display:flex; margin-top:5px; height:1rem; overflow:hidden; font-size:.75rem; background-color:#e9ecef; border-radius:.25rem;}
-.progress-mini{height:5px; margin-bottom:0;}
-.progress > div{height:5px; margin-bottom:0; transition:width 0.3s;}
-
-
-/* 카테고리 Sort */
-.categoryOrder {margin-bottom:15px; background:#fcfcfc;}
-.categoryOrder li {clear:both; padding-left:15px; line-height:40px; cursor:move; border-top:1px dashed #ff0000; }
-.categoryOrder li button.on {background-image:url(/image/icon_cate_minus.png);}
-/* .categoryOrder li:after {content:''; position:absolute; top:8px; left:-10px; width:21px; height:21px; background:url(/image/line_cate.png)} */
-.categoryOrder li:before{position:relative; content:''; width:1px; height:100%; background:#ddd;}
-.categoryOrder li ol{display:none}
-/* .categoryOrder ol:last-child li {background-image:none !important} */
-.categoryOrder button{position:relative; z-index:200; padding:0 15px 0; margin:0; line-height:40px; cursor:pointer; background-image:url(/image/icon_cate_plus.png); background-repeat:no-repeat; background-position:0 0;}
-
-/* 메인 공지팝업 */
-.noticeWrap{position:absolute;top:50%;left:50%;transform:translate(-50%, -50%);width:800px;background-color:#fff;}
-.noticeWrap .swiper-container{overflow:hidden;position:relative;top:0;}
-.noticeWrap .swiper-wrapper{display:flex;width:100%;transition-property:transform;box-sizing:content-box;}
-.noticeWrap .swiper-slide{overflow-y:auto;max-height:500px;padding:20px 20px 40px;flex-shrink:0;position:relative;width:100%;height:100%;transition-property:transform;}
-.noticeWrap .swiper-slide img{max-width:100%;height:auto;}
-.noticeWrap .swipeControl{display:inline-block;position:absolute;top:-35px;right:0;/* transform:translate(-50%,0); */z-index:1;width:100px;}
-.noticeWrap .swipeControl button{text-indent:-9999px;}
-.noticeWrap .swipeControl button[aria-label]{position:absolute;width:30px;height:30px;}
-.noticeWrap .swipeControl button[aria-label]::after{top:6px;width:12px;height:12px;}
-.noticeWrap .swipeControl button[aria-label].arr{top:0;}
-.noticeWrap .swipeControl button[aria-label].arr.prev{left:0;}
-.noticeWrap .swipeControl button[aria-label].arr.next{right:0}
-.noticeWrap .swipeControl button[aria-label].arr::after{position:absolute;display:block;content:'';border-bottom:1px solid #fff;border-left:1px solid #fff}
-.noticeWrap .swipeControl button[aria-label].arr.prev::after{-webkit-transform:rotate(45deg);-ms-transform:rotate(45deg);transform:rotate(45deg)}
-.noticeWrap .swipeControl button[aria-label].arr.next::after{-webkit-transform:rotate(-135deg);-ms-transform:rotate(-135deg);transform:rotate(-135deg)}
-.noticeWrap .swipeControl .prev:after{left:8px;}
-.noticeWrap .swipeControl .next:after{right:8px;}
-.noticeWrap .swipeControl .swiper-button-disabled:after{border-color:#ddd;}
-.noticeWrap .swipeControl .swiper-pagination{line-height:28px;width:100%;text-align:center;}
-.noticeWrap .swipeControl .swiper-pagination-bullet{display:inline-block;margin:0 5px;width:10px;height:10px;background:#ddd;border-radius:50%;cursor:pointer;}
-.noticeWrap .swipeControl .swiper-pagination-fraction span{font-size:14px;}
-.noticeWrap .swipeControl .swiper-pagination-fraction i{color:#ccc;}
-.noticeWrap .swipeControl .swiper-pagination-current{color:#fff;font-weight:bold;}
-.noticeWrap .swipeControl .swiper-pagination-total{color:#ccc}
-.noticeWrap .btnArea{display:flex;background-color:#f0f0f0;}
-.noticeWrap .btnArea > span{flex:1;position:relative;}
-.noticeWrap .btnArea > span::after{content:'';position:absolute;top:50%;right:0;transform:translate(0, -50%);width:1px;height:15px;background-color:#ccc;}
-.noticeWrap .btnArea > span:last-child::after{background-color:unset;}
-.noticeWrap .btnArea button{width:100%;height:50px;color:#000}
-.noticeWrap .title{line-height:34px;padding:0 0 10px 0;font-size:18px;font-weight:bold;border-bottom:1px solid #ececec;}
-.noticeWrap .content{padding:20px 0 20px;line-height:26px;font-size:13px;}
-.noticeWrap .download li{line-height:26px;}
-.noticeWrap .download i{margin-right:15px;}
-.noticeWrap .download a{border-bottom:1px solid #337ab7;color:#337ab7;}
-.noticeWrap .download a:visited{border-bottom:1px solid #999;color:#333;}
-
-
-/* 반응형:GNB 유저명,등급,로그아웃 --------------- */
-@media ( max-width:1370px ) {
- .header-info { display:none;}
- .header-info-sm { display:inline-block;}
-}
-
-/* 반응형 :dashboard(20200522) --------------- */
-@media ( max-width:1023px ) {
- /* 대시보드 */
- #wrapper.dashboard{width:100%; min-width:100%;}
- .dashboard .header-logo{width:100%}
- .dashboard #lnb-wrapper{display:none;}
- .dashboard .header-menu{display:none;}
- .dashboard .tabs{margin-left:0; margin-right:0;}
- .dashboard .tabs h2{position:relative; margin:10px 15px}
- .dashboard .tabsNav li:first-child{margin-left:0}
- .dashboard .tabsNav li:last-child{margin-right:0}
- .dashboard .tabsNav li a{font-size:16px}
- .dashboard .flexWrap li{width:100%}
- .dashboard .flexWrap.unit4 li{width:100%}
- .dashboard .flexWrap.unit5 li{width:100%}
- .dashboard .flexWrap.unit6 li{width:100%}
- .dashboard .boxStyle{margin-left:0; margin-right:0;}
- .dashboard .dbChart .boxleft{clear:left; margin:30px 15px 0 0; width:100%;}
- .dashboard .dbChart .boxRight{clear:right; width:100%; margin:30px 20px 20px;}
-}
-
-/* Fix Input Zoom on devices older than iPhone 5:*/
-@media screen and (device-aspect-ratio:2/3) {
-  select, textarea, input[type="text"], input[type="password"],
-  input[type="datetime"], input[type="datetime-local"],
-  input[type="date"], input[type="month"], input[type="time"],
-  input[type="week"], input[type="number"], input[type="email"],
-  input[type="url"]{ font-size:16px;}
-}
-
-/* Fix Input Zoom on iPhone 5, 5C, 5S, iPod Touch 5g */
-@media screen and (device-aspect-ratio:40/71) {
-  select, textarea, input[type="text"], input[type="password"],
-  input[type="datetime"], input[type="datetime-local"],
-  input[type="date"], input[type="month"], input[type="time"],
-  input[type="week"], input[type="number"], input[type="email"],
-  input[type="url"]{ font-size:16px;}
-}
-
-/* Fix Input Zoom on iPhone 6, iPhone 6s, iPhone 7 */
-@media screen and (device-aspect-ratio:375/667) {
-  select, textarea, input[type="text"], input[type="password"],
-  input[type="datetime"], input[type="datetime-local"],
-  input[type="date"], input[type="month"], input[type="time"],
-  input[type="week"], input[type="number"], input[type="email"],
-  input[type="url"]{ font-size:16px;}
-}
-
-/* Fix Input Zoom on iPhone 6 Plus, iPhone 6s Plus, iPhone 7 Plus, iPhone 8, iPhone X, XS, XS Max */
-@media screen and (device-aspect-ratio:9/16) {
-  select, textarea, input[type="text"], input[type="password"],
-  input[type="datetime"], input[type="datetime-local"],
-  input[type="date"], input[type="month"], input[type="time"],
-  input[type="week"], input[type="number"], input[type="email"],
-  input[type="url"]{ font-size:16px;}
+@import url("https://fonts.googleapis.com/css?family=Open+Sans:300,400,600,700"); @import url("https://fonts.googleapis.com/css?family=Roboto:400,300,500,700"); html,body {position:relative; height:100%;}
+html, body, header, div, ul, ol, li, dl, dt, dd, h1, h2, h3, h4, h5, h6, label, a, p, form, input, textarea, table, hr, span, em {margin:0; padding:0; box-sizing:border-box;}
+body {overflow-x:hidden; font-family:"open sans", "Roboto", "Malgun Gothic", "Helvetica Neue", Helvetica, Arial, sans-serif; font-size:12px; background-color:#f3f3f4;}
+h1, h2, h3, h4, h5, h6 {display:inline-block;}
+ul, ol {list-style:none;}
+ul::after, ol::after {display:block; clear:both; content:'';}
+img {vertical-align:middle; border-style:none;}
+a {text-decoration:none;}
+em, i {font-style:normal;}
+table {border-collapse:collapse;}
+th {text-align:inherit;}
+label {position:relative; margin-right:20px; display:inline-block; -webkit-touch-callout:none; -webkit-user-select:none; -moz-user-select:none; -ms-user-select:none; user-select:none;}
+label:last-child {margin-right:0 !important;}
+input,button,select,textarea {font-family:inherit; font-size:inherit;}
+input.btn-sm {padding:1px 6px;}
+input[type=text] {width:100%;}
+input[type=text], input[type=file], input[type=date], [type=password], textarea {padding:4px 3px 4px 5px; color:inherit; border-radius:1px; vertical-align:middle; margin:1px 3px 2px 0;}
+input[type=date],input[type=time],input[type=datetime-local],input[type=month] {-webkit-appearance:listbox;}
+input[readonly="readonly"], input[disabled="disabled"], input[readonly="readonly"]:before, input[disabled="disabled"]:before, select[readonly="readonly"], select[disabled="disabled"],textarea[readonly="readonly"] ,textarea[disabled="disabled"] {background-color:#eee !important;}
+button, select {text-transform:none;}
+button,[type=button],[type=reset],[type=submit] {margin:0; -webkit-appearance:button; border-radius:0; cursor:pointer; background-color:transparent; border-color:transparent;}
+button::-moz-focus-inner,[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner {padding:0; border-style:none;}
+textarea {overflow:auto; resize:vertical; width:100%; margin:4px 0; vertical-align:middle; line-height:22px; height:32px;}
+.textareaR2 {min-height:60px; line-height:26px;}
+.textareaR3 {min-height:96px; line-height:26px;}
+.textareaR4 {min-height:134px; line-height:26px;}
+.byteChk {line-height:20px; padding-left:20px; display:inline-block; vertical-align:middle;}
+select {margin:0 3px 1px 0; padding:3px 10px 3px 3px; color:inherit; border-radius:1px; vertical-align:middle;}
+select, input[type=text], input[type=file], input[type=date], input[type=password], textarea {border:1px solid #dbdbdb;}
+select:focus, input:focus, textarea:focus, button:focus, .outline {outline:2px auto #4D90FE;}
+.formControl {background:#eee;}
+.off {display:none !important;}
+.scrollOff {overflow:hidden;}
+.f25 {font-size:25px;}
+
+html,body,#wrapper,#container {min-height:100%; height:100%;}
+#wrapper {position:relative; min-width:1240px;}
+
+/* 로그인 --------------- */
+.loginBg {background:#f3f3f4;}
+.loginWrap {width:500px; box-shadow:0 7px 7px -5px rgba(0, 0, 0, 0.1);}
+.loginWrap .loginBox input[type=text],
+.loginWrap .loginBox input[type=password]{padding:10px; width:100%; border:1px solid #ced4da; border-radius:.25rem;}
+.loginWrap .loginBox li:nth-of-type(2), .loginBox li:nth-of-type(3) {padding-bottom:10px;}
+.loginWrap .loginBox li:nth-of-type(4) {padding:10px 0 50px 0; line-height:30px; text-align:left;}
+.loginWrap .loginBox li:nth-of-type(5) {margin-bottom:30px; text-align:center;}
+.loginWrap .loginBox a {display:inline-block; padding:10px;}
+.loginWrap .loginBox .dot {color:#ccc;}
+.loginWrap .btn-black {background-color:#555; color:#fff; font-weight:bold; float:right; margin:0 !important;}
+.loginWrap .btn-black:hover{background-color:#000; box-shadow:none;}
+.loginWrap .btn-purple {background-color:#667eea; color:#fff; font-weight:bold; float:right; margin:0 !important;}
+.loginWrap .btn-purple:hover{background-color:#2e38cb; box-shadow:none;}
+.loginWrap .loginInfo {color:#888; line-height:23px; text-align:left;}
+.loginWrap .loginInfo em i {margin-right:7px;}
+.loginWrap .loginInfo p:first-child{margin-bottom:15px;}
+.loginWrap .loginInfo p span {display:inline-block; margin-bottom:15px; line-height:40px; font-size:16px; font-weight:bold; border-bottom:1px solid #000;}
+
+/* 로그인 style :black */
+.login_black {position:absolute; top:50%; left:50%; transform:translate(-50%, -50%); -ms-transform:translate(-50%, -50%); background:#fff;}
+.login_black .logo { padding:25px 0; text-align:center; background:#000;}
+.login_black .loginInfo em {color:#555; font-weight:bold;}
+.login_black .loginCont > ul {padding:60px 60px 70px;}
+.login_black .loginBox li:nth-of-type(5) {border-top:1px solid #e4e4e4; border-bottom:1px solid #e4e4e4;}
+.login_black .loginBox a {color:#555}
+
+/* 보안 인증 */
+.loginWrap .certiFrm {padding:40px 60px 70px;}
+.loginWrap .certiFrm h2{margin:10px 0 30px;}
+.loginWrap .certiFrm h2 i{margin-right:10px;}
+.loginWrap .certiFrm .alertBox{margin-bottom:15px}
+.loginWrap .certiFrm .input{height:45px; position:relative;}
+.loginWrap .certiFrm .input input[type=text]{position:relative; padding:10px; width:45px; height:45px; line-height:45px; font-size:16px; border:1px solid #ced4da; border-radius:.25rem; text-align:center;}
+.loginWrap .certiFrm .input input[type=text]:focus{color:#4D90FE;font-weight:bold;}
+.loginWrap .certiFrm .input .countdown{display:inline-block; position:relative; padding-left:20px; line-height:45px; height:45px;color:red; text-align:center;vertical-align:top; font-size:14px}
+.loginWrap .certiFrm .info{margin-top:20px; line-height:22px; color:#555;}
+.loginWrap .certiFrm .button{margin:25px 0 50px;}
+.loginWrap .certiFrm .button button{margin:0 5px !important; padding:5px 20px; height:32px; float:right}
+.loginWrap .certiFrm .button button:focus{outline:2px auto #4D90FE !important; }
+.loginWrap .certiFrm .button .btn-black{width:100px !important;}
+
+/* 로그인 :alert */
+.alertBox {position:relative; padding:10px 40px 10px 10px; margin-bottom:10px; border:1px solid; border-radius:.25rem; line-height:22px;}
+.alertBox .alertClose {position:absolute; top:0; right:5px; padding:0 10px; height:40px; text-indent:-9999px; background:url('../../image/btn_sltClose.png') no-repeat 50% 50%;}
+.alertBox .alertClose:hover {background:url('../../image/btn_sltCloseOn.png') no-repeat 50% 50%;}
+.alert-success {color:#155724; background-color:#d4edda; border-color:#c3e6cb;}
+.alert-info {color:#0c5460; background-color:#d1ecf1; border-color:#bee5eb;}
+.alert-warning {color:#856404; background-color:#fff3cd; border-color:#ffeeba;}
+.alert-danger {color:#721c24; background-color:#f8d7da; border-color:#f5c6cb;}
+
+/* header--------------- */
+header {position:fixed; top:0; left:0; right:0; z-index:10; min-width:1240px; width:100%; height:60px; line-height:60px; color:#fff; background:linear-gradient(135deg,#667eea 0,#764ba2 100%);}
+header a, header button {color:#fff;}
+.header-logo {float:left; width:260px; line-height:60px; background:rgba(250, 251, 252, 0.1); overflow:hidden;}
+.header-logo a {display:inline-block; margin:0 10px 0 20px; width:184px; height:60px;}
+.header-logo .lnbClose {width:30px; line-height:30px; display:inline-block !important;}
+.header-logo .lnbClose:hover {color:rgba(255, 255, 255, 0.8);}
+.header-menu {position:absolute; left:260px; padding:0 0 0 30px; font-weight:bold;}
+.header-menu .menu {display:inline-block; -ms-user-select:none; -webkit-user-select:none; user-select:none;}
+.header-menu .menu a {display:inline-block; margin-right:7px; padding:0 14px; line-height:34px; border-radius:50px; background:rgba(0, 0, 0, 0.07);}
+.header-menu .menu a:hover {color:rgba(255, 255, 255, 0.8);}
+.header-menu .menu a.on {background:rgba(0, 0, 0, 0.3);}
+.header-info {display:inline-block; float:right; margin-right:20px;}
+.header-info a {color:rgba(255, 255, 255, 0.8);}
+.header-info a:hover {color:#fff;}
+.header-info i.heart {font-size:6px; color:rgba(255, 255, 255, 0.4); margin-right:3px;}
+.header-info i.dot {font-size:13px; color:rgba(255, 255, 255, 0.4); margin:0 3px;}
+.header-info-sm {display:none; float:right; margin-right:20px;}
+.header-info-sm a {display:inline-block; padding:0 7px; color:rgba(255, 255, 255, 0.8);}
+.header-info-sm a:hover {color:#fff;}
+
+/* GNB:툴팁--------------- */
+.tooltip .tooltiptext {visibility:hidden; position:absolute; top:48px; right:20px; z-index:1; padding:0 15px; line-height:30px; color:#fff; font-size:13px; text-align:center; background-color:#233646; border-radius:3px;}
+.tooltip .tooltiptext::after {content:""; position:absolute; bottom:100%; right:38px; border-width:5px; border-style:solid; border-color:transparent transparent #233646 transparent;}
+.tooltip .tooltiptext.logout::after {right:10px;}
+.tooltip:hover .tooltiptext {visibility:visible;}
+
+/* LNB--------------- */
+#lnb-wrapper {position:fixed; top:60px; left:-260px; width:260px; height:100%; vertical-align:top; overflow-y:auto; transition:left .3s; -webkit-transition:left .3s; background-color:#2f4050;}
+#lnb-wrapper:after{content:''; position:absolute; top:0; left:0; z-index:-1; width:100%; height:100%;}
+#lnb-wrapper.on {left:0;}
+#lnb {margin-bottom:100px; width:260px;}
+#lnb a {display:block; color:#a7b1c2;}
+#lnb a:hover {color:#fff;}
+#lnb a.on {color:#fff;}
+#lnb .dep2 {padding:14px 20px 14px 35px; background:url('../../image/icon_dep2.png') 10px 50% no-repeat, url('../../image/icon_depArr2.png') 222px 50% no-repeat; background-color:#233646; cursor:pointer;}
+#lnb .dep2.on {display:block; background:url('../../image/icon_dep2On.png') 10px 50% no-repeat, url('../../image/icon_depArr2On.png') 222px 50% no-repeat; background-color:#233646;}
+#lnb .dep3 {padding:5px 0 10px 10px; border-left:4px solid #8597eb; cursor:pointer;}
+#lnb .dep3 a {padding:10px; cursor:pointer;}
+#lnb .dep4 {padding:5px 0 10px 20px; cursor:pointer;}
+#lnb .dep4 a {padding:10px; cursor:pointer;}
+
+/* main--------------- */
+#main-wrapper {position:relative; left:0; top:0; margin-left:0; min-height:100%; padding-bottom:60px; vertical-align:top; color:#222; transition:margin-left .3s; -webkit-transition:margin-left .3s;}
+#main-wrapper.on {margin-left:260px;}
+#main {padding-top:60px; position:relative;}
+#main .main-title {height:60px; margin-left:20px; margin-right:20px;}
+#main .main-title h1 {padding-top:15px; font-size:20px; color:#333; font-weight:700;}
+#main .main-title ol {margin-top:25px; float:right; color:#666;}
+#main .main-title li {float:left;}
+#main .main-title li::before {padding:0 5px; content:"/"; color:#999;}
+#main .main-title li:nth-of-type(1)::before {content:none !important;}
+#main .main-title i {padding-right:3px; color:#999;}
+#main .sub-title {margin:0 20px 10px; font-size:14px; color:#6c7dda; font-weight:bold;}
+#main .sub-title i {margin-right:10px;}
+
+/* 패널영역 스타일--------------- */
+.panelStyle {position:relative; margin:0 20px 30px 20px; padding:15px 15px 0; background-color:#fff; border-top:2px solid #dfe2e3; box-shadow:0 7px 7px -5px rgba(0, 0, 0, 0.04);}
+.panelStyle::after, .frmStyle::after{position:relative; bottom:-5px; content:''; display:block; border:1px solid rgba(255,255,255,0);}
+.panelStyle .panelTitle {margin:-15px -15px 0; padding:0 20px; line-height:40px; border-bottom:1px solid #e7eaec;}
+.panelStyle .panelControl {position:absolute; top:0; right:15px; color:#c4c4c4;}
+.panelStyle .panelControl i {padding:10px 10px; cursor:pointer;}
+.panelStyle .panelContent {margin-top:10px;}
+.panelStyle h2 {margin-right:10px; font-size:14px; font-weight:bold;}
+.panelStyle h3 {margin-right:10px; font-size:12px; font-weight:normal; line-height:25px;}
+.panelStyle h3 i {padding-right:5px}
+.panelStyle h4 {padding-left:23px; height:31px; line-height:31px; background:url('../../image/icon_h4.png') no-repeat 3px 50%; color:#666;}
+.panelStyle .panelBar {display:table; width:100%; padding-bottom:10px;}
+.panelStyle .panelBar h4 {margin-bottom:0;}
+.panelStyle .panelBar > li {display:table-cell;}
+.panelStyle .panelBar > .center {text-align:center;}
+.panelStyle .panelBar > .right {text-align:right;}
+
+/* 패널 내부 테이블 여러개 배치 */
+.panelStyle .division + .panelBar {padding-bottom:15px;}
+.panelStyle .division {display:table; width:100%;}
+.panelStyle .division > li, .panelStyle .division > div {display:table-cell; padding-right:40px;}
+.panelStyle .division > li:last-child, .panelStyle .division > div:last-child {padding-right:0;}
+/* table, grid, button 상하 여백 */
+.ag-theme-balham{margin-bottom:15px !important;}
+.frmStyle + .panelBar {padding-bottom:15px;}
+.ag-theme-balham {margin:10px 0 15px;}
+.ag-theme-balham + .panelBar{padding-bottom:15px;}
+.panelBar + .ag-theme-balham {margin:0 0 15px;}
+.panelBar + .frmStyle {margin-top:0;}
+
+/* TABS 영역 --------------- */
+.tabs {position:relative; margin-bottom:30px; margin-left:20px; margin-right:20px;}
+.tabs h2 {position:absolute; top:0; z-index:2; margin-left:10px; font-size:14px; line-height:34px;}
+.tabs h2 i {margin-right:12px;}
+.tabsNav {overflow:hidden; position:relative; top:0; z-index:2; padding:0 30px 0 20px; height:35px;}
+.tabsNav ul {display:inline-block;}
+.tabsNav li {float:left; position:relative;}
+.tabsNav li a {padding:0 20px; line-height:35px; height:35px; display:block; color:#888; font-weight:bold; background-color:#f9f9f9; border:1px solid #dfe2e3; border-bottom:2px solid #dfe2e3; border-top-left-radius:.25rem; border-top-right-radius:.25rem;}
+.tabsNav li.on a {background-color:#fff; color:#222; border:1px solid #ccc; border-bottom:2px solid #fff;}
+.tabsCont {position:relative; top:-2px; z-index:1;}
+.tabsCont::after {display:block}
+.tab {display:none;}
+.tab > .panelStyle{margin:0;}
+.tab.on {display:block;}
+.popupTabs {padding-top:10px;}
+.tabContArea {overflow-x:hidden; overflow-y:auto;}
+.tabBtnArea {padding:15px 0 20px 0;}
+.popup .tabsCont {box-shadow:none;}
+.popup .tabs {margin-bottom:0;}
+
+/* Add TABS 영역 --------------- */
+.btn-add-tab {position:absolute; top:5px; right:0; z-index:2; padding:0 10px;}
+.tabsNav .ui-tabs-active a {background-color:#fff; color:#222; border:1px solid #ccc; border-bottom:2px solid #fff;}
+.tab-del {position:absolute; top:1px; right:1px; padding:4px 6px; color:gray; cursor:pointer; border-top-right-radius:.25rem;}
+.tab-del:hover {color:#f40552;}
+a, button, .ui-state-active, .ui-state-focus, .ui-state-hover {outline:0 !important;}
+.tabsNav .ui-corner-top a {padding:0 35px 0 20px}
+
+/* tabsJr 영역 --------------- */
+.tabsJr {position:relative;}
+.tabsJrNav {overflow:hidden; position:relative; top:0; z-index:2; height:31px; margin:0 30px 0 20px;}
+.tabsJrNav > ul {display:inline-block;}
+.tabsJrNav li {float:left;}
+.tabsJrNav li a {padding:0 20px; line-height:30px; height:30px; display:block; color:#888; /*font-weight:bold; */ background-color:#f9f9f9; border:1px solid #ccc; border-top-left-radius:.25rem; border-top-right-radius:.25rem;}
+.tabsJrNav li.on a {padding-bottom:2px; font-weight:bold; color:#555; background-color:#fff; border-top:1px solid #ccc; border-right:1px solid #ccc; border-bottom:1px solid #fff;}
+.tabsJrCont {position:relative; top:-2px; z-index:1;}
+.tabsJrCont::after {display:block}
+.tabJr {display:none;}
+.tabJr .panelStyle{margin:0; border-top:1px solid #ddd; min-height:20px; padding:20px 15px 0; box-shadow:0 -5px 7px -5px rgba(0, 0, 0, 0.05);}
+.tabJr.on {display:block;}
+.tabJrContArea {vertical-align:middle;}
+
+/* modal, modeless popup --------------- */
+.modalPopup{display:none; position:fixed; left:0; top:0; z-index:11; width:100%; height:100%; background:rgba(0,0,0,0.5);}
+.modalPopup > .panelStyle{position:absolute; top:50%; left:50%; z-index:11; -ms-transform:translate(-50%, -50%); transform:translate(-50%, -50%); margin:0; border:1px solid #79797a; border-radius:3px;}
+.modalPopup > .panelStyle .close {position:absolute; top:0; right:0; font-size:18px; padding:5px 15px 8px;}
+.modalPopup .tabs{ margin:0;}
+.modalPopup .tabs .panelStyle{box-shadow:none}
+.modalPopup .tab > .panelStyle{overflow-y:auto;}
+
+/*MODELESS POPUP --------------- */
+.modelessPopup{display:none; position:absolute; z-index:11; top:50%; left:50%;}
+.modelessPopup.draggable {cursor:move;}
+.modelessPopup .panelStyle{margin:0; border:1px solid #ccc; border-radius:3px;}
+.modelessPopup .panelStyle .close {position:absolute; top:0; right:0; font-size:18px; padding:5px 15px 8px;}
+.modelessPopup .tabs{ margin:0;}
+.modelessPopup .tabs .panelStyle{box-shadow:none}
+.modelessPopup .tab > .panelStyle{overflow-y:auto;}
+
+/*VIDEO POPUP --------------- */
+.videoPopup {display:none; position:fixed; top:50%; left:50%; z-index:11; -ms-transform:translate(-50%, -50%); transform:translate(-50%, -50%); margin:0; border:1px solid #79797a; border-radius:3px;}
+.modalPopup::before{position:fixed; left:0; top:0; z-index:11; width:100%; height:100%; background:rgba(0,0,0,0.5);}
+.videoPopup .close {position:absolute; top:-20px; right:-20px; z-index:1; width:40px; height:40px; line-height:20px; font-size:20px; border:1px solid #666; border-radius:50px; background-color:#fff;}
+.videoPopup iframe{width:100%; height:100%}
+
+
+#btnTop {display:none; position:fixed; right:0; bottom:50px; width:40px; line-height:10px; font-size:10px; background:#fff; border:1px solid #ddd; border-right:none; padding:3px 0 5px 0; box-shadow:5px 5px 5px -4px rgba(0, 0, 0, 0.07); color:#1c84c6;}
+#btnTop i {width:100%; font-size:12px;}
+#btnTop:hover {padding-right:30px; width:70px; font-weight:bold;}
+
+
+/* 컨텐트 스크롤--------------- */
+.xScroll {overflow-x:auto;}
+.yScroll {overflow-y:auto;}
+
+/* 폼테이블 스타일 --------------- */
+.frmStyle {width:100%; margin-bottom:15px;}
+.frmStyle th {border-top:1px solid #dae0fd;}
+.frmStyle tr:last-child th {border-bottom:1px solid #dae0fd;}
+.frmStyle tr:last-child td {border-bottom:1px solid #eee;}
+.frmStyle th {padding:0 15px; height:36px; line-height:24px; white-space:nowrap; text-align:center; background:#e9ecfb;}
+.frmStyle td {padding:0 10px 0 10px; line-height:36px; position:relative; border-top:1px solid #eee; border-right:1px solid #eee;}
+
+/* 체크박스&라디오박스 공통--------------- */
+input[type=radio] {position:absolute; top:50%; left:0; width:18px; height:18px; transform:translate(0,-50%); -ms-transform:translate(0,-50%);}
+label.chkBox, label.rdoBtn {position:relative; display:inline-block; padding-left:26px; height:22px; line-height:22px; vertical-align:middle; cursor:pointer;}
+/* 체크박스 :전체선택 버튼--------------- */
+input[type=checkbox] {position:absolute; top:0; left:0; width:0; height:0;}
+input[type=button].chkBox {margin-left:-2px; padding-left:24px; height:22px; vertical-align:middle; background:url('../../image/icon_checkN.png') no-repeat 0 50%;}
+
+/* 체크박스--------------- */
+label.chkBox::before {position:absolute; top:2px; left:0; content:''; width:16px; height:16px; border:1px solid #dbdbdb; background:#fff;}
+label.chkBox.checked::after {position:absolute; top:6px; left:3px; content:''; width:8px; height:4px; border-bottom:3px solid #676a6c; border-left:3px solid #676a6c; -webkit-transform:rotate(-45deg); transform:rotate(-45deg);}
+label.chkBox .formControl::before {background:#eee;}
+
+/* 라디오버튼--------------- */
+input[type=radio]::before {position:absolute; top:0; left:0; content:''; width:16px; height:16px; border:1px solid #dbdbdb; border-radius:50%; background:#fff;}
+input[type=radio]:checked::after {position:absolute; top:5px; left:5px; content:''; width:8px; height:8px; border-radius:50%; background:#676a6c;}
+input[type=radio].formControl::before {background:#eee;}
+
+/* 토글 스위치--------------- */
+.switchBox{ display:inline-block;position:relative; width:60px; height:28px; vertical-align:middle;border-radius:25px;overflow:hidden;}
+.switchBox input[type="checkbox"]{position:absolute;visibility:hidden;}
+.switchBox label{display:block;position:absolute;top:0;width:60px;height:28px;background-color:#aaa;transition-duration:0.2s;}
+.switchBox label span{position:absolute;left:0;top:50%;z-index:1;width:26px;height:23px;border-radius:25px;transform:translate(3px, -50%);transition-duration:0.2s;background-color:#fff;text-indent:-9999px;}
+.switchBox label:before,label:after{position:absolute;top:0;width:52%;font-size:11px;line-height:27px;color:#fff;text-align:center;}
+.switchBox label:before{left:0;content:'ON';}
+.switchBox label:after{right:0;content:'OFF';}
+.switchBox input:checked + label span{transform:translate(31px, -50%);}
+.switchBox input:checked::before, .switchBox input:checked::after{border:none}
+.switch-base input:checked + label{color:#fff; background-color:#8597eb;}
+.switch-primary input:checked + label{color:#fff; background-color:#1ab394;}
+.switch-success input:checked + label{color:#fff; background-color:#1c84c6;}
+.switch-info input:checked + label{color:#fff; background-color:#23c6c8; }
+.switch-warning input:checked + label{color:#fff; background-color:#f8ac59;}
+.switch-danger input:checked + label{color:#fff; background-color:#ed5565;}
+.switch-black input:checked + label{color:#fff; background-color:#222;}
+.switchBox + .switchBox {margin-left:6px;}
+
+/* 테이블 스타일--------------- */
+.tableStyle {width:100%; max-width:100%; margin-bottom:15px;}
+.tableStyle th {position:relative; padding:7px 0; color:#333; border-top:1px solid #dae0fd; border-bottom:1px solid #dae0fd; border-right:1px solid #dae0fd; background-color:#e9ecfb; text-align:center;}
+.tableStyle th:last-child {border-right:none;}
+.tableStyle td {position:relative; padding:7px 0; border-right:1px solid #ebebeb; border-bottom:1px solid #ebebeb; text-align:center;}
+.tableStyle td:last-child {border-right:none;}
+.tableStyle tbody tr:nth-of-type(2n) {background-color:rgba(0, 0, 0, 0.02);}
+.tableStyle tbody tr:hover {background-color:rgba(224,243,255,0.6);}
+.tableStyle + .panelBar {padding-bottom:15px;}
+/* 스캔 */
+.scanTbl th {font-size:25px; line-height:80px;}
+.scanTbl td {line-height:80px;}
+.scanTbl input[type=text] {line-height:50px; font-size:32px;}
+.scanTbl .btn {overflow-y:hidden; margin-bottom:1px; padding:12px 30px; font-size:25px;}
+table.noPad tr > td, td.noPad {padding:0 !important;}
+th[rowspan] {border-bottom:1px solid #dae0fd;}
+td[rowspan] {border-bottom:1px solid #eee;}
+.nowrap {white-space:nowrap;}
+.solidR {border-right:1px solid #eee; vertical-align:middle;}
+.solidL {border-left:1px solid #eee; vertical-align:middle;}
+.solidT {border-top:1px solid #eee;}
+.solidB {border-bottom:1px solid #eee;}
+.dashR {border-right:1px solid #dae0fd;}
+.dashL {border-left:1px solid #dae0fd;}
+.noPad table.frmStyle > tr:first-child th {border-top:0 !important;}
+.noPad table.frmStyle > tr:first-child td {border-top:0 !important;}
+.noPad table.frmStyle > tr:last-child th {border-bottom:0 !important;}
+.noPad table.frmStyle > tr:last-child td {border-bottom:0 !important;}
+
+
+/* Q&A 스타일--------------- */
+.qnaStyle {width:100%; max-width:100%;}
+.qnaStyle th {position:relative; padding:7px 0; color:#333; border-top:1px solid #dae0fd; border-bottom:1px solid #dae0fd; border-right:1px solid #dae0fd; background-color:#e9ecfb; text-align:center;}
+.qnaStyle th:last-child {border-right:none;}
+.qnaStyle td {position:relative; padding:7px 0; text-align:center;}
+.qnaStyle tr td {border-bottom:1px solid #ecf5f7;}
+.qnaStyle tbody tr:nth-of-type(3n+1) td {background-color:rgba(224,243,255,0.6);}
+.qnaStyle tbody tr:nth-of-type(3n) td {border-bottom:1px solid #ddd;}
+.qnaClaim { text-align:left !important; padding-left:10px !important;}
+.qnaClaim .goods {font-weight:bold; line-height:26px;}
+.qnaClaim .cont {line-height:22px; padding:10px 0; color:#1d3e9d;}
+.qnaClaim .email {line-height:26px;}
+.qnaClaim .email em {border-bottom:1px solid #aaa;}
+.lineRound {border:2px solid #ccc; border-radius:15px; padding:4px 14px; font-weight:bold;}
+
+/* 내부 테이블 디자인 */
+.subTable {display:table; width:100%;}
+.subTable dl {display:table; width:100%;}
+.subTable dt, .subTable dd {display:table-cell;}
+.subTable dt {vertical-align:middle; white-space:nowrap; width:8%; padding:0 15px; background:#e9ecfb; text-align:center; border-bottom:1px solid #dae0fd;}
+.subTable dl:last-child dt {border-bottom:none;}
+.subTable dd {border-bottom:1px solid #eee; padding:3px 20px 3px 10px;}
+.subTable dl:last-child dd {border-bottom:none;}
+
+/* button --------------- */
+.btn {border-radius:3px; vertical-align:middle; white-space:nowrap;font-size:12px;user-select:none;}
+.btn-lg {padding:4px 20px 5px; height:28px; overflow-y:hidden;}
+.btn-sm {margin-top:-2px; line-height:100%; height:28px; overflow-y:hidden;}
+.btn-ssm {margin-top:-2px; line-height:100%; height:22px; overflow-y:hidden;}
+.btn + .btn {margin-left:6px;}
+.btn:first-child {margin-left:0;}
+
+/* 버튼 색상 */
+.btn-white {color:#555 !important; background-color:#fff !important; border:1px solid #ccc !important;}
+.btn-default {color:#555; background-color:#eee; border:1px solid #dcdcdc;}
+.btn-gray {color:#fff; background-color:#aaa; border:1px solid #aaa;}
+.btn-base {color:#fff; background-color:#8597eb; border:1px solid #8597eb;}
+.btn-primary {color:#fff; background-color:#1ab394; border:1px solid #1ab394;}
+.btn-success {color:#fff; background-color:#1c84c6; border:1px solid #1c84c6;}
+.btn-info {color:#fff; background-color:#23c6c8; border:1px solid #23c6c8;}
+.btn-pink {color:#fff; background-color:#feada6; border:1px solid #feada6;}
+.btn-warning {color:#fff; background-color:#f8ac59; border:1px solid #f8ac59;}
+.btn-danger {color:#fff; background-color:#ed5565; border:1px solid #ed5565;}
+.btn-dark, .btn.active {color:#fff; background-color:#6c757d; border:1px solid #6c757d;}
+.btn.icn {line-height:28px; height:28px; padding:0 8px; background-color:#eee; border:1px solid #dbdbdb;}
+.btn.icn i {padding-top:6px; width:12px; vertical-align:top; font-size:14px; text-align:center;}
+.btnGroup{display:inline-block;}
+.btnGroup .btn + .btn{margin:0;}
+
+/* 페이징 --------------- */
+.tablePaging {position:relative; 	display:inline-block; vertical-align:middle;}
+.tablePaging a {display:inline-block; float:left; margin:0 5px; width:28px; height:28px; line-height:28px; text-align:center; border:1px solid #ccc; border-radius:50px; cursor:pointer;}
+.tablePaging a.arrow {background-color:rgba(0, 0, 0, 0.03); 	border-color:#ebebeb;}
+.tablePaging .num.on {background:#8597eb; color:#fff; border-color:#8597eb;}
+
+/* 다중 Select Box */
+.mSelectWrap select {display:none;}
+.mSelectBox {display:inline-block; position:relative; top:-1px; margin:2px 0 2px 0; padding:0 7px 0 0; width:100%; height:auto !important; min-height:29px; border:1px solid #e5e6e7; vertical-align:middle;}
+.mSelected {overflow:auto;}
+.mSelected li {float:left; margin:2px 5px 3px; line-height:24px; padding:0 7px; background:#dbedf9; -ms-user-select:none; -moz-user-select:-moz-none; -webkit-user-select:none; user-select:none;}
+.mSelected li.srchFld {margin:0; padding:0; background:none;}
+.mSelected .srchFld input {width:25px; margin:0; padding:0; border:none; outline:none;}
+.mSelected a {border:none !important; float:right; margin-left:3px; padding:0 3px; width:15px; line-height:22px; text-indent:-9999px; background:url('../../image/btn_sltClose.png') no-repeat 100% 50%;}
+.mSelected a:hover {background:url('../../image/btn_sltCloseOn.png') no-repeat 100% 50%;}
+.mSelecting {display:none; overflow-y:auto; overflow-x:hidden; position:absolute; top:100%; left:-1px; z-index:1; width:100%; max-height:156px; line-height:30px; border:1px solid #e5e6e7; background:#fff;}
+.mSelecting li {margin:0 10px; cursor:pointer;}
+
+/* 멀티 Select Box */
+.mSelWrap {display:inline-block;}
+.mSelWrap select {height:100px; padding:7px 0;}
+.mSelWrap .mSelBtn {margin:0 0 0 5px; float:right; width:33px; vertical-align:top;}
+.mSelWrap .mSelBtn .btn {margin:0; vertical-align:top;}
+.mSelWrap option {padding:4px 100px 4px 10px;}
+
+/* 파일첨부 --------------- */
+.uFile {overflow:hidden; position:relative; display:inline-block; margin:-2px 5px 0 0; width:80%; height:28px; vertical-align:middle; border:1px solid #dbdbdb;}
+.lrStyle .uFile {margin-top:2px;}
+.uFileInput {position:absolute; top:0; width:100%; margin:0 !important; padding:0 !important; line-height:28px; border:none !important;}
+.uFileLabel {position:absolute; top:0; right:0; left:0; z-index:1; margin:0; padding:0 7px; width:cals(100% - 7px); line-height:28px; height:28px; background-color:#fff; border-radius:1px; overflow:hidden; white-space:nowrap;}
+.uFileLabel::after {position:absolute; top:0; right:0; bottom:0; width:30px; z-index:3; line-height:28px; content:" "; border-left:1px solid #dbdbdb; background:#eee url('../../image/icon_upload.png') no-repeat 50% 50%;}
+
+/* badge --------------- */
+.badge {float:right; margin-top:2px; padding:0 5px; min-width:9px; line-height:18px; color:#fff; font-size:12px; font-weight:600; border-radius:3px; text-align:center; text-shadow:1px 1px 1px rgba(0,0,0,0.4); letter-spacing:-0.5px;}
+.badge-warning {background-color:#ed7908;}
+.badge-primary {background-color:#1ab394;}
+.badge-danger {background-color:#ed5565;}
+.badge-success {background-color:#2fa4e7;}
+.badge-info {background-color:#23c6c8;}
+.badge.circle {border-radius:50px;}
+.dep3 .badge {position:relative; top:-28px; right:20px;}
+
+/* badge-등급 ------------*/
+.badgeLevel{overflow:hidden;display:inline-block;margin:5px 0 0;padding:0;width:50px;height:50px;line-height:46px;font-size:30px;font-weight:bold;border-radius:100%;text-align:center;vertical-align:top;box-sizing:border-box;}
+.badgeLevel.white{background-color:#fff;border:1px solid #333;color:#333;}
+.badgeLevel.dark1{background-color:#ccc;border:1px solid #ccc;color:#333;}
+.badgeLevel.dark2{background-color:#aaa;border:1px solid #aaa;color:#333;}
+.badgeLevel.dark3{background-color:#777;border:1px solid #777;color:#fff;}
+.badgeLevel.black{background-color:#333;border:1px solid #333;color:#fff;}
+
+/* tag */
+.tagNum {display:inline-block; margin-left:5px; padding:0 3px 0 2px; min-width:13px; line-height:16px; font-weight:normal; color:#fc5555; background:#fff; border-radius:5px;}
+
+/* footer --------------- */
+footer {position:absolute; bottom:0; left:0; width:100%; height:40px; background-color:#fff; border-top:1px solid #e7eaec; line-height:39px; font-size:13px;}
+footer .f-left {float:left; padding-left:20px; line-height:38px;}
+footer .f-right {float:right; padding-right:20px; line-height:38px;}
+
+/* 이미지 카드 */
+.dexterArea {min-width:350px; min-height:180px; padding:0 !important; vertical-align:top; background:#f1f1f1;vertical-align:top;}
+.dexterTable {display:table; width:100%; overflow-y:auto;}
+.dexterTable > li {display:table-cell; vertical-align:top; line-height:23px;}
+.dexterNo div {padding:0 10px; border-top:1px solid #ddd; border-right:1px solid #ddd; background:#fff;}
+.dexterNo div:first-child {margin-top:36px;}
+.dexterNo div:last-child {border-bottom:1px solid #ddd;}
+
+/* 수정용 이미지 카드 */
+.cardArea {width:100%; padding:0 0 20px; overflow-y:auto;}
+.imgCard {vertical-align:top; position:relative; display:inline-block; margin:20px 20px 0 0; padding:10px 10px 0 10px; border:1px solid #dbdbdb;}
+.imgCard ul {display:table;}
+.imgCard li {display:table-cell;}
+.imgCard img {margin-right:15px;}
+.imgCard li:nth-of-type(2) {padding-top:20px; max-width:150px; line-height:24px}
+.imgCard p {font-size:12px;}
+.imgCard .cardClose {position:absolute; top:0; right:0; width:24px; background:url('../../image/btn_sltClose.png') no-repeat 50% 50%; text-indent:-9999px;}
+.imgCard .cardClose:hover {background:#f1f1f1 url('../../image/btn_sltCloseOn.png') no-repeat 50% 50%;}
+.verticalTop {vertical-align:top;}
+
+/* 조회용 이미지 카드 */
+.cardArea2 {padding:10px 0;}
+.cardArea2 ul, .cardArea2 .box {vertical-align:top; position:relative; display:inline-block; margin:10px; border:1px solid #dbdbdb; max-width:300px;}
+.cardArea2 li {display:table-cell; line-height:26px; vertical-align:middle;}
+.cardArea2 li:nth-of-type(2) {padding:0 10px;}
+.cardArea2 .cardDel {position:absolute; top:0; right:0; background:url('../../image/btn_sltClose.png') no-repeat 50% 50%; text-indent:-9999px;}
+.cardArea2 .cardDel:hover {background:#f1f1f1 url('../../image/btn_sltCloseOn.png') no-repeat 50% 50%;}
+
+/* 테이블 외부 안내문구 */
+.panelStyle > .notice {margin:0 0 15px ;}
+.panelContent > .notice {margin:15px 0;}
+.notice em {color:red;}
+.notice li, p.dot {padding-left:20px; background:url('../../image/dot_bk.png') no-repeat 5px 10px; line-height:24px;}
+p.dot .btn {margin-left:10px !important;}
+p.dot em {color:red;}
+
+/* 정렬 */
+.txt {line-height:36px;}
+.aC {text-align:center !important;}
+.aR {text-align:right !important;}
+.aL {text-align:left !important;}
+.vaT {vertical-align:top !important;}
+.vaM {vertical-align:middle !important;}
+.vaB {vertical-align:bottom !important;}
+
+/* 테이블 내부 안내문구 */
+.infoTxt {line-height:26px; padding:5px 0;}
+.infoTxt i {margin-right:7px;}
+.infoTxt em {color:red;}
+.infoTxtTh {display:inline-block; text-align:left; font-weight:normal; font-size:12px;}
+.infoTxtTh li {padding-top:3px;}
+.infoTxtTh i {padding-right:5px;}
+.srchOption {overflow:auto; padding:10px 0; line-height:36px;}
+
+/* 유의사항 안내 */
+.infoBox {margin:0 20px 20px; padding:7px 10px; border-top:2px solid #dfe2e3; border-bottom:2px solid #dfe2e3; background:#fff}
+.infoBox p {padding-left:25px; line-height:20px; font-size:12px; background:url('../../image/dot_bk.png') no-repeat 10px 50%; background-size:3px auto;}
+
+/* 검색결과 안내문 */
+.srchNotice {padding-bottom:7px; font-weight:normal; font-size:14px;}
+.srchNotice em {color:red;}
+
+/* 필수입력항목 */
+.required {display:inline-block; position:relative; top:-3px; width:12px; height:7px; background:url('../../image/icon_required.png') no-repeat 0 50%;}
+
+
+/* COLOR DESIGN -------------------------------------*/
+/*Color :Base ---*/
+.color-mPurple header,span.color-mPurple {background:linear-gradient(135deg,#667eea 0,#764ba2 100%) !important;}
+.color-purple header,span.color-purple {background:#667eea !important;}
+
+/*Color :Gray ---*/
+.color-mGray header,span.color-mGray {background:linear-gradient(to right,#6c757d 0%,#555 100%) !important;}
+.color-gray header,span.color-gray {background:#666 !important;}
+.color-mGray .frmStyle th,.color-mGray .tableStyle th,.color-gray .frmStyle th,.color-gray .tableStyle th {background:#eee !important; 	border-top:1px solid #ddd; 	border-bottom:1px solid #ddd;}
+.color-mGray .tablePaging .num.on,.color-gray .tablePaging .num.on {background:#888 !important; 	border-color:#888 !important;}
+.color-mGray #lnb .dep3,.color-gray #lnb .dep3 {border-color:#777 !important;}
+.color-mGray .tabsJrNav li.on a,.color-gray .tabsJrNav li.on a {color:#333;}
+
+/*Color :Blue ---*/
+.color-mBlue header,span.color-mBlue {background:linear-gradient(to right,#4481eb 0%,#04befe 100%) !important;}
+.color-blue header,span.color-blue {background:#0042a5 !important;}
+.color-mBlue .frmStyle th,.color-mBlue .tableStyle th,.color-blue .frmStyle th,.color-blue .tableStyle th {background:#d8eafc !important; 	border-top:1px solid #ddd; 	border-bottom:1px solid #ddd;}
+.color-mBlue .tablePaging .num.on,.color-blue .tablePaging .num.on {background:#3e91de !important; 	border-color:#3e91de !important;}
+.color-mBlue #lnb .dep3,.color-blue #lnb .dep3 {border-color:#3e91de !important;}
+.color-mBlue .tabsJrNav li.on a,.color-blue .tabsJrNav li.on a {background:#d8eafc;}
+.color-mBlue .tabJr.on,.color-blue .tabJr.on {border-top:4px solid #d8eafc;}
+.color-mBlue .tabsJrNav li.on a,.color-blue .tabsJrNav li.on a {color:#333;}
+
+/*Color :Green ---*/
+.color-mGreen header,span.color-mGreen {background:linear-gradient(135deg,#00b09b 0,#96c93d 100%) !important;}
+.color-green header,span.color-green {background:#00b09b !important;}
+.color-mGreen .frmStyle th,.color-mGreen .tableStyle th,.color-green .frmStyle th,.color-green .tableStyle th {background:#e5f7f5 !important; 	border-top:1px solid #ddd; 	border-bottom:1px solid #ddd;}
+.color-mGreen .tablePaging .num.on,.color-green .tablePaging .num.on {background:rgba(0,176,155,0.8); 	border-color:rgba(0,176,155,0.8) !important;}
+.color-mGreen #lnb .dep3,.color-green #lnb .dep3 {border-color:#00b09b !important;}
+.color-mGreen .tabsJrNav li.on a,.color-green .tabsJrNav li.on a {background:#e5f7f5;}
+.color-mGreen .tabJr.on,.color-green .tabJr.on {border-top:4px solid #e5f7f5;}
+.color-mGreen .tabsJrNav li.on a,.color-green .tabsJrNav li.on a {color:#333;}
+
+/*Color :Pink ---*/
+.color-mPink header,span.color-mPink {background:linear-gradient(to right, rgb(242, 112, 156), rgb(255, 148, 114)) !important;}
+.color-pink header,span.color-pink {background:#feada6 !important;}
+.color-mPink .frmStyle th,.color-mPink .tableStyle th,.color-pink .frmStyle th,.color-pink .tableStyle th {background:#fff7f6 !important; border-top:1px solid #ddd; border-bottom:1px solid #ddd;}
+.color-mPink .tablePaging .num.on,.color-pink .tablePaging .num.on {background:#feada6; 	border-color:#feada6 !important;}
+.color-mPink #lnb .dep3,.color-pink #lnb .dep3 {border-color:#feada6 !important;}
+.color-mPink .tabsJrNav li.on a,.color-pink .tabsJrNav li.on a {background:#fff7f6;}
+.color-mPink .tabJr.on,.color-pink .tabJr.on {border-top:4px solid #fff7f6;}
+.color-mPink .tabsJrNav li.on a,
+.color-pink .tabsJrNav li.on a {color:#333;}
+
+/*Color :black ---*/
+.color-black header, span.color-black{background:#3E3E3E !important;}
+.color-black .header-logo{background:#000 !important;}
+.color-black .header-menu .menu a{background:#000 !important;}
+.color-black .header-menu .menu a.on{background:#fff !important; color:#000 !important;}
+.color-black #lnb-wrapper{background-color:#b2b2b2 !important;}
+.color-black #lnb .dep2{background-color:#545454 !important;}
+.color-black #lnb .dep3{border-color:#000 !important;}
+.color-black #lnb .dep3{background:#fdfdfd !important;  }
+.color-black #lnb .dep3 a{color:#111111 !important;}
+.color-black #lnb a{color:#fff !important;}
+.color-black .frmStyle th, .color-black .tableStyle th, .color-black .frmStyle th, .color-black .tableStyle th{background:#eee !important; 	border-top:1px solid #ddd; border-bottom:1px solid #ddd;}
+.color-black .tablePaging .num.on, .color-black .tablePaging .num.on{background:#888 !important; 	border-color:#888 !important;}
+.color-black .tabsJrNav li.on a, .color-black .tabsJrNav li.on a{color:#333; background:#eee !important}
+.color-black .tabJr.on, .color-black .tabJr.on { border-top:4px solid #eee;}
+
+/* 폰트 컬러, 폰트 두께 */
+.cBlue {color:#127fdc !important;}
+.cGray {color:#666 !important;}
+.cRed {color:red !important;}
+.bold {font-weight:bold !important;}
+
+/* 배경 투명도 */
+.bgOp6 {opacity:0.6; color:#000 !important;}
+
+/* 여백 지정 */
+hr {border:0; padding-bottom:10px;}/* 기본 여백 :10px */
+.pad10 {padding:10px 0 !important;}
+.pad15 {padding:15px 0 !important;}
+.pad20 {padding:20px 0 !important;}
+.padT3 {padding-top:3px !important;}
+.padT5 {padding-top:5px !important;}
+.padT10 {padding-top:10px !important;}
+.padT15 {padding-top:15px !important;}
+.padT20 {padding-top:20px !important;}
+.padT30 {padding-top:30px !important;}
+.padT40 {padding-top:40px !important;}
+.padR20 {padding-right:20px !important;}
+.padL10 {padding-left:10px !important;}
+.padB5 {padding-bottom:5px !important;}
+.padB10 {padding-bottom:10px !important;}
+.padB15 {padding-bottom:15px !important;}
+.padB20 {padding-bottom:20px !important;}
+.padB30 {padding-bottom:30px !important;}
+.padB40 {padding-bottom:40px !important;}
+.marT5 {margin-top:5px !important;}
+.marT10 {margin-top:10px !important;}
+.marT15 {margin-top:15px !important;}
+.marT20 {margin-top:20px !important;}
+.marR3 {margin-right:3px !important;}
+.marL5 {margin-left:5px !important;}
+.marL10 {margin-left:10px !important;}
+.marL20 {margin-left:20px !important;}
+.marR10 {margin-right:10px !important;}
+.marR20 {margin-right:20px !important;}
+
+/* 넓이 지정 --------------- */
+.w20 {width:20px !important;}
+.w50 {width:50px !important;}
+.w60 {width:60px !important;}
+.w70 {width:60px !important;}
+.w80 {width:80px !important;}
+.w90 {width:80px !important;}
+.w100 {width:100px !important;}
+.w130 {width:130px !important;}
+.w150 {width:150px !important;}
+.w200 {width:200px !important;}
+.w300 {width:300px !important;}
+.w400 {width:400px !important;}
+.w500 {width:500px !important;}
+.w600 {width:600px !important;}
+.w800 {width:800px !important;}
+.w100p {width:100% !important;}
+.w90p {width:90% !important;}
+.w80p {width:80% !important;}
+.w70p {width:70% !important;}
+.w60p {width:60% !important;}
+.w50p {width:50% !important;}
+.w40p {width:40% !important;}
+.w30p {width:30% !important;}
+.w20p {width:20% !important;}
+.h100 {height:100px !important;} /*alert, confirm 컨텐츠 높이에 사용*/
+
+
+/*-- 캘린더 --------------*/
+#calendar {max-width:900px; margin:20px 0 50px 20px;}
+
+/*-- error page --------------*/
+#errPage {padding-top:40px; width:650px; background:#fff; position:relative; top:48%; left:50%; transform:translate(-50%,-50%); -ms-transform:translate(-50%,-50%); border-radius:9px; vertical-align:middle; overflow:hidden; box-shadow:0 0 2px 0 rgba(0,0,0,0.12), 0 2px 2px 0 rgba(0,0,0,0.24);}
+#errPage .errImg {padding-left:50px; display:table-cell; vertical-align:middle; padding-bottom:30px;}
+#errPage .errImg div {border-radius:50%; position:relative; display:inline-block; width:140px; height:140px; color:#fff; background:#d196e4; box-shadow:2px 2px 6px 0 rgba(0,0,0,0.2) inset;}
+#errPage .fa-television {position:absolute; top:30px; left:28px; font-weight:bold; font-size:80px;}
+#errPage .fa-info {position:absolute; top:49px; left:66px; font-size:34px;}
+#errPage .errTxt {padding:0 50px; display:table-cell; padding-bottom:40px;}
+#errPage .errTxt .ttl {font-size:16px; font-weight:bold; padding-bottom:20px;}
+#errPage .errTxt .cont { padding-bottom:20px; line-height:26px;}
+#errPage .errTxt .tel {color:#777;}
+#errPage .errBtn {width:100%; background:#f9f9fa; line-height:70px; text-align:right;}
+#errPage .errBtn .btn {margin-right:30px; border-radius:33px; background:#858b90; color:#fff; padding:5px 30px; line-height:24px; font-weight:bold; -webkit-transition:0.2s; transition:0.2s;}
+#errPage .errBtn .btn:hover {background:#555;}
+
+/*-- DEXTER --------------*/
+.dexterNo { width:43px;}
+.dexterNo div { padding:0 10px; border-top:1px solid #ddd; border-right:1px solid #ddd; background:#fff; text-align:right;}
+.dexterNo div:first-child {margin-top:28px;}
+
+/*-- 회원추가 --------------*/
+.memAddWrap {line-height:26px; padding:3px 0;}
+.memAdd {margin-right:15px; padding:2px 27px 2px 0; position:relative; line-height:24px; height:24px; white-space:nowrap;}
+.memAdd button {position:absolute; top:3px; right:0; bottom:0; width:18px; height:18px; border:1px solid #dbdbdb; border-radius:3px; text-indent:-9999px; background:#eee url('../../image/btn_sltClose.png') no-repeat 50% 50%;}
+.memAdd button:hover {background:#eee url('../../image/btn_sltCloseOn.png') no-repeat 50% 50%;}
+
+/*-- Date Picker --------------*/ /* 20200521 수정 */
+table.mtz-monthpicker {border:1px solid #ddd; border-top:none;}
+.mtz-monthpicker-month {padding:7px; cursor:pointer;}
+.ui-datepicker-trigger {padding:0;}
+.ui-datepicker {z-index:800 !important; text-align:center; background:#fff;}
+.ui-datepicker .ui-datepicker-today,
+.ui-datepicker .ui-state-highlight {background:#fff7cf !important;}
+.ui-datepicker .ui-state-active {border:1px solid red !important;}
+.ui-datepicker .ui-datepicker-prev {position:absolute; top:3px; left:3px; width:30px; line-height:30px; text-indent:-9999px; background:url('../../image/icon_prev.png') no-repeat 50% 50%;}
+.ui-datepicker .ui-datepicker-next {position:absolute; top:3px; right:3px; width:30px; line-height:30px; text-indent:-9999px; background:url('../../image/icon_next.png') no-repeat 50% 50%;}
+.ui-datepicker .ui-datepicker-calendar {padding:5px; border:1px solid #ddd; border-top:none; text-align:center;}
+.ui-datepicker .ui-datepicker-calendar th{padding:5px 0}
+.ui-datepicker-week-end {text-align:center;}
+.ui-datepicker-calendar .ui-state-default {display:inline-block; text-align:center; width:32px; line-height:24px; border:none;}
+.ui-datepicker-header {position:relative; background:#d0e9ff; text-align:center; padding:5px; border:1px solid #ddd; border-bottom:none;}
+.ui-datepicker-buttonpane button {background-color:#eee; border:1px solid #dcdcdc; line-height:24px; border-radius:3px; margin:0 5px 5px 5px;}
+.ui-datepicker-current {float:left;}
+.ui-datepicker-close {float:right;}
+
+/* prograss bar */
+.prograssWrap {display:flex; flex-direction:row;}
+.prograssWrap > li {display:flex; align-items:center;}
+.prograssWrap > li:nth-of-type(1) {width:96%}
+.prograssWrap > li:nth-of-type(2) {margin-left:1.5rem !important}
+.prograss-lg {display:flex; width:100%; height:1rem; background-color:#f4f5fd; border-radius:.65rem; overflow:hidden; box-shadow:inset 0 1px 2px rgba(0,0,0,.1);}
+.prograss-sm {display:flex; width:100%; height:.5rem; background-color:#f4f5fd; border-radius:.65rem; overflow:hidden; box-shadow:inset 0 1px 2px rgba(0,0,0,.1);}
+.prograss-bar {display:flex; border-top-right-radius:.65rem; border-bottom-right-radius:.65rem; transition:width .6s ease;
+  background-image: linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);
+  background-size: 1rem 1rem;
+  -webkit-animation: progress-bar-stripes 1s linear infinite; animation: progress-bar-stripes 1s linear infinite;}
+.prograss-bar.bg-info {background-color:#1c84c6;}
+.prograss-txt.bg-info {color:#1c84c6;}
+.prograss-bar.bg-success {background-color:#1ab394;}
+.prograss-txt.bg-success {color:#1ab394;}
+.prograss-bar.bg-danger {background-color:#f83245;}
+.prograss-txt.bg-danger {color:#f83245;}
+.prograss-bar.bg-base {background-color:#f8ac59;}
+.prograss-txt.bg-base {color:#ffa749;}
+
+/* Multi CheckBox */
+.multiCheckBox {position:relative; display:inline-block; width:auto; line-height:27px; margin:3px 3px 3px 0;}
+.multiCheckBox .sltBtn {padding-left:5px; width:100%; height:27px; color:#555; text-align:left; border:1px solid #dbdbdb; box-sizing:border-box; -webkit-touch-callout:none; -webkit-user-select:none; -ms-user-select:none; user-select:none;}
+.multiCheckBox .sltBtn::after {position:absolute; top:6px; right:10px; content:''; width:7px; height:7px; border-bottom:1px solid #555; border-left:1px solid #555; -webkit-transform:rotate(-45deg); transform:rotate(-45deg);}
+.multiCheckBox .sltBtn.on::after {top:10px; -webkit-transform:rotate(135deg); transform:rotate(135deg);}
+.multiCheckBox ul {display:none; position:absolute; top:26px; left:0; z-index:1; width:100%; height:auto; border:1px solid #dbdbdb; background:#fff;}
+.multiCheckBox li {padding:3px 10px;}
+.multiCheckBox li:hover {background-color:Highlight; color:HighlightText;}
+.multiCheckBox label {display:flex;}
+
+/* checkBox More */
+.checkBoxList {overflow:hidden; padding-right:36px; height:36px;}
+.checkBoxList.on {overflow:visible; height:auto;}
+.checkBoxList .more {position:absolute; top:-1px; right:0; width:36px; height:38px; border:1px solid #eee; background:#f7f7f7;}
+.checkBoxList ul {display:flex; flex-wrap:wrap;}
+.checkBoxList li {justify-content:flex-start; line-height:36px;}
+.checkBoxList[data-unit='1'] li {flex-basis:100%;}
+.checkBoxList[data-unit='2'] li {flex-basis:50%;}
+.checkBoxList[data-unit='3'] li {flex-basis:33%;}
+.checkBoxList[data-unit='4'] li {flex-basis:25%;}
+.checkBoxList[data-unit='5'] li {flex-basis:20%;}
+.checkBoxList[data-unit='6'] li {flex-basis:16.6%;}
+.checkBoxList[data-unit='7'] li {flex-basis:14.2%;}
+.checkBoxList[data-unit='8'] li {flex-basis:12.5%;}
+
+/* 아이콘 툴팁 버튼 */
+.iconTooltip {display:inline-block; position:relative; margin-right:10px;}
+.iconTooltip i {position:relative; color:#46a1ff; width:15px; height:15px; line-height:16px; border-radius:50%; border:1px solid #46a1ff; cursor:pointer; text-align:center;}
+.iconTooltip:hover i {box-shadow:0px 3px 7px 0px rgba(0,0,0,0.4);}
+.iconTooltip span {display:none; position:absolute; top:36px; z-index:5; padding:10px 15px; line-height:24px; color:#fff; background:#6d6d6d; box-shadow:0px 3px 7px 0px rgba(0,0,0,0.2); border-radius:5px;}
+.iconTooltip span:after {position:absolute; top:-4px; content:''; background:#6d6d6d; width:8px; height:8px; -ms-transform:rotate(-45deg); -webkit-transform:rotate(-45deg); transform:rotate(-45deg);}
+.iconTooltip span.left {left:-10px}
+.iconTooltip span.left:after {left:15px;}
+.iconTooltip span.right {right:-10px}
+.iconTooltip span.right:after {right:15px;}
+.iconTooltip span.center {left:50%;}
+.iconTooltip span.center:after {right:5px;}
+.iconTooltip:hover span{display:block;}
+
+/* 상품이동 */
+.itemMove {display:inline-block; width:800px; border:1px solid #eee;}
+.itemMove .item {float:left; display:table; margin:0 10px 20px 0; width:220px; border:1px solid #eee;}
+.itemMove .item li {display:table-cell; vertical-align:top;}
+.itemMove .item li:nth-of-type(1) {width:80px;}
+.itemMove .item li:nth-of-type(1) img {width:80px; height:80px;}
+.itemMove .item button {width:16px; height:16px; text-indent:-9999px;}
+.itemMove .item input {width:30px; height:14px !important; line-height:14px}
+.itemMove .item li:nth-of-type(2) div {line-height:20px}
+
+/* 상품 Dragable :20200129 */
+.sortableWrap #sortable { overflow-y:auto }
+.sortableWrap {margin:20px 0; width:100%; max-height:675px;}
+.sortableWrap .itemWrap {display:inline-block;}
+.sortableWrap .item {float:left; margin-right:12px; margin-bottom:12px; padding:5px 8px; line-height:20px; border:1px solid #ddd; vertical-align:top; background:#fff;}
+.sortableWrap .item > li {float:left; vertical-align:middle;}
+.sortableWrap .item .img {margin-top:3px; margin-right:10px; width:80px;}
+.sortableWrap .item .img img {width:80px; height:80px; cursor:move;}
+.sortableWrap .btnArea {text-align:center; margin-top:15px; padding:0 10px;}
+.sortableWrap button.icnSm {overflow:hidden; position:relative; width:24px; height:20px; background-color:#fff;}
+.sortableWrap button.icnSm i {position:absolute; top:-4px; left:-3px; width:24px; line-height:24px; font-size:15px; color:#888;}
+.sortableWrap button.icnSm:hover i {color:#111;}
+.sortableWrap button.icnSm:last-child {margin-right:0;}
+.sortableWrap .item .cont {width:114px;}
+.sortableWrap .item .cont li em {margin:0 3px 0 7px;}
+.sortableWrap .item .cont .no {font-weight:bold; padding-bottom:3px;}
+.sortableWrap .item .cont .title {padding-bottom:3px; border-bottom:1px solid #eee;}
+.sortableWrap .item .cont .price {padding-top:3px; padding-bottom:3px;}
+.sortableWrap .item .cont input {margin-left:5px; width:37px;}
+
+
+.ag-theme-balham.lh60 .ag-cell {line-height:56px !important; height:60px;}
+.ag-theme-balham.lh70 .ag-cell {line-height:66px !important; height:70px;}
+.ag-theme-balham.lh80 .ag-cell {line-height:76px !important; height:80px;}
+.ag-theme-balham.lh90 .ag-cell {line-height:86px !important; height:90px;}
+.ag-theme-balham.lh100 .ag-cell {line-height:96px !important; height:100px;}
+.ag-theme-balham.lh110 .ag-cell {line-height:106px !important; height:110px;}
+.ag-theme-balham.lh120 .ag-cell {line-height:114px !important; height:120px;}
+
+
+/* 테이블 상품명 클릭시 이미지 레이어 활성화 */
+.viewImg {position:relative; color:blue; cursor:pointer}
+.thumbLayer {display:inline-block; position:absolute; top:0; right:0; z-index:5; border:1px solid #ddd}
+.thumbLayer img {width:100%; height:auto;}
+
+/* dashboard */
+.flexWrap{display:-ms-flexbox; display:flex; -ms-flex-wrap:wrap; flex-wrap:wrap; color:#676a6c;}
+.flexWrap li{padding:0 20px 20px; width:calc(33.3%);}
+.flexWrap.unit4 li{width:calc(25%);}
+.flexWrap.unit5 li{width:calc(20%);}
+.flexWrap.unit6 li{width:calc(16.6%);}
+.flexWrap .title{padding:15px; font-weight:600; border:1px solid #e7eaec; border-top:2px solid #e7eaec;}
+.flexWrap .title h5{font-size:15px; font-weight:bold;}
+.flexWrap .title span{float:right; padding:1px 8px; font-size:10px; border-radius:0.25em;}
+.flexWrap .content{padding:15px; border:1px solid #e7eaec; border-top:none;}
+.flexWrap .content em{font-size:30px; font-weight:200;}
+.statText {margin-top:5px}
+.statText::after{display:block; clear:both; content:''}
+.statText span:nth-of-type(1){float:left; font-size:11px;}
+.statText span:nth-of-type(2){float:right; font-size:13px; font-weight:600;}
+.txt-success{color:#1c84c6;}
+.txt-info{color:#23c6c8;}
+.flexWrap .txt-danger{color:#ed5565;}
+.flexWrap .bg-success{background:#1c84c6;}
+.flexWrap .bg-info{background:#23c6c8;}
+.flexWrap .bg-danger{background:#ed5565;}
+.btn.on{-webkit-box-shadow:inset 0 3px 5px rgba(0, 0, 0, 0.125); box-shadow:inset 0 3px 5px rgba(0, 0, 0, 0.125);}
+.dbChart .btn-group{float:right; line-height:37px;}
+.dbChart .btn-group button{margin:0; height:23px;}
+.dbChart .boxleft{float:left; margin:20px 15px 20px 15px; width:calc(100% - 490px);}
+.dbChart .boxRight{float:left; margin:20px 20px 20px 40px; width:400px;}
+.dbChart .boxRight em{font-size:24px; font-weight:200;}
+.dbChart .boxRight > div{margin-bottom:25px;}
+.dbChart .boxRight .statText .c1 {color:#FF7043}
+.dbChart .boxRight .progress .c1 {background:#FF7043}
+.dbChart .boxRight .statText .c2 {color:#48C9B0}
+.dbChart .boxRight .progress .c2 {background:#48C9B0}
+.dbChart .boxRight .statText .c3 {color:#ca9900}
+.dbChart .boxRight .progress .c3 {background:#FFD54F}
+.progress{display:-ms-flexbox; display:flex; margin-top:5px; height:1rem; overflow:hidden; font-size:.75rem; background-color:#e9ecef; border-radius:.25rem;}
+.progress-mini{height:5px; margin-bottom:0;}
+.progress > div{height:5px; margin-bottom:0; transition:width 0.3s;}
+
+
+/* 카테고리 Sort */
+.categoryOrder {margin-bottom:15px; background:#fcfcfc;}
+.categoryOrder li {clear:both; padding-left:15px; line-height:40px; cursor:move; border-top:1px dashed red; }
+.categoryOrder li button.on {background-image:url(../../image/icon_cate_minus.png);}
+/* .categoryOrder li:after {content:''; position:absolute; top:8px; left:-10px; width:21px; height:21px; background:url(../../image/line_cate.png)} */
+.categoryOrder li:before{position:relative; content:''; width:1px; height:100%; background:#ddd;}
+.categoryOrder li ol{display:none}
+/* .categoryOrder ol:last-child li {background-image:none !important} */
+.categoryOrder button{position:relative; z-index:200; padding:0 15px 0; margin:0; line-height:40px; cursor:pointer; background-image:url(../../image/icon_cate_plus.png); background-repeat:no-repeat; background-position:0 0;}
+
+/* 메인 공지팝업 */
+.noticeWrap{position:absolute;top:50%;left:50%;transform:translate(-50%, -50%);width:800px;background-color:#fff;}
+.noticeWrap .swiper-container{overflow:hidden;position:relative;top:0;}
+.noticeWrap .swiper-wrapper{display:flex;width:100%;transition-property:transform;box-sizing:content-box;}
+.noticeWrap .swiper-slide{overflow-y:auto;max-height:500px;padding:20px 20px 40px;flex-shrink:0;position:relative;width:100%;height:100%;transition-property:transform;}
+.noticeWrap .swiper-slide img{max-width:100%;height:auto;}
+.noticeWrap .swipeControl{display:inline-block;position:absolute;top:-35px;right:0;/* transform:translate(-50%,0); */z-index:1;width:100px;}
+.noticeWrap .swipeControl button{text-indent:-9999px;}
+.noticeWrap .swipeControl button[aria-label]{position:absolute;width:30px;height:30px;}
+.noticeWrap .swipeControl button[aria-label]::after{top:6px;width:12px;height:12px;}
+.noticeWrap .swipeControl button[aria-label].arr{top:0;}
+.noticeWrap .swipeControl button[aria-label].arr.prev{left:0;}
+.noticeWrap .swipeControl button[aria-label].arr.next{right:0}
+.noticeWrap .swipeControl button[aria-label].arr::after{position:absolute;display:block;content:'';border-bottom:1px solid #fff;border-left:1px solid #fff}
+.noticeWrap .swipeControl button[aria-label].arr.prev::after{-webkit-transform:rotate(45deg);-ms-transform:rotate(45deg);transform:rotate(45deg)}
+.noticeWrap .swipeControl button[aria-label].arr.next::after{-webkit-transform:rotate(-135deg);-ms-transform:rotate(-135deg);transform:rotate(-135deg)}
+.noticeWrap .swipeControl .prev:after{left:8px;}
+.noticeWrap .swipeControl .next:after{right:8px;}
+.noticeWrap .swipeControl .swiper-button-disabled:after{border-color:#ddd;}
+.noticeWrap .swipeControl .swiper-pagination{line-height:28px;width:100%;text-align:center;}
+.noticeWrap .swipeControl .swiper-pagination-bullet{display:inline-block;margin:0 5px;width:10px;height:10px;background:#ddd;border-radius:50%;cursor:pointer;}
+.noticeWrap .swipeControl .swiper-pagination-fraction span{font-size:14px;}
+.noticeWrap .swipeControl .swiper-pagination-fraction i{color:#ccc;}
+.noticeWrap .swipeControl .swiper-pagination-current{color:#fff;font-weight:bold;}
+.noticeWrap .swipeControl .swiper-pagination-total{color:#ccc}
+.noticeWrap .btnArea{display:flex;background-color:#f0f0f0;}
+.noticeWrap .btnArea > span{flex:1;position:relative;}
+.noticeWrap .btnArea > span::after{content:'';position:absolute;top:50%;right:0;transform:translate(0, -50%);width:1px;height:15px;background-color:#ccc;}
+.noticeWrap .btnArea > span:last-child::after{background-color:unset;}
+.noticeWrap .btnArea button{width:100%;height:50px;color:#000}
+.noticeWrap .title{line-height:34px;padding:0 0 10px 0;font-size:18px;font-weight:bold;border-bottom:1px solid #ececec;}
+.noticeWrap .content{padding:20px 0 20px;line-height:26px;font-size:13px;}
+.noticeWrap .download li{line-height:26px;}
+.noticeWrap .download i{margin-right:15px;}
+.noticeWrap .download a{border-bottom:1px solid #337ab7;color:#337ab7;}
+.noticeWrap .download a:visited{border-bottom:1px solid #999;color:#333;}
+
+
+/* 반응형:GNB 유저명,등급,로그아웃 --------------- */
+@media ( max-width:1370px ) {
+ .header-info { display:none;}
+ .header-info-sm { display:inline-block;}
+}
+
+/* 반응형 :dashboard(20200522) --------------- */
+@media ( max-width:1023px ) {
+ /* 대시보드 */
+ #wrapper.dashboard{width:100%; min-width:100%;}
+ .dashboard .header-logo{width:100%}
+ .dashboard .lnbClose{display:none !important;}
+ .dashboard #lnb-wrapper{display:none;}
+ .dashboard .header-menu{display:none;}
+ .dashboard .tabs{margin-left:0; margin-right:0;}
+ .dashboard .tabs h2{position:relative; margin:10px 15px}
+ .dashboard .tabsNav li:first-child{margin-left:0}
+ .dashboard .tabsNav li:last-child{margin-right:0}
+ .dashboard .tabsNav li a{font-size:16px}
+ .dashboard .flexWrap li{width:100%}
+ .dashboard .flexWrap.unit4 li{width:100%}
+ .dashboard .flexWrap.unit5 li{width:100%}
+ .dashboard .flexWrap.unit6 li{width:100%}
+ .dashboard .boxStyle{margin-left:0; margin-right:0;}
+ .dashboard .panelStyle{margin: 0 0 30px;}
+ .dashboard .dbChart .boxleft{clear:left; margin:30px 15px 0 0; width:100%;}
+ .dashboard .dbChart .boxRight{clear:right; width:100%;margin:30px 0 20px; padding:0 20px;}
+ .dashboard footer{height:auto;}
+}
+
+/* Fix Input Zoom on devices older than iPhone 5:*/
+@media screen and (device-aspect-ratio:2/3) {
+  select, textarea, input[type="text"], input[type="password"],
+  input[type="datetime"], input[type="datetime-local"],
+  input[type="date"], input[type="month"], input[type="time"],
+  input[type="week"], input[type="number"], input[type="email"],
+  input[type="url"]{ font-size:16px;}
+}
+
+/* Fix Input Zoom on iPhone 5, 5C, 5S, iPod Touch 5g */
+@media screen and (device-aspect-ratio:40/71) {
+  select, textarea, input[type="text"], input[type="password"],
+  input[type="datetime"], input[type="datetime-local"],
+  input[type="date"], input[type="month"], input[type="time"],
+  input[type="week"], input[type="number"], input[type="email"],
+  input[type="url"]{ font-size:16px;}
+}
+
+/* Fix Input Zoom on iPhone 6, iPhone 6s, iPhone 7 */
+@media screen and (device-aspect-ratio:375/667) {
+  select, textarea, input[type="text"], input[type="password"],
+  input[type="datetime"], input[type="datetime-local"],
+  input[type="date"], input[type="month"], input[type="time"],
+  input[type="week"], input[type="number"], input[type="email"],
+  input[type="url"]{ font-size:16px; }
+  #main-wrapper{padding-bottom:97px;}
+}
+
+/* Fix Input Zoom on iPhone 6 Plus, iPhone 6s Plus, iPhone 7 Plus, iPhone 8, iPhone X, XS, XS Max */
+@media screen and (device-aspect-ratio:9/16) {
+  select, textarea, input[type="text"], input[type="password"],
+  input[type="datetime"], input[type="datetime-local"],
+  input[type="date"], input[type="month"], input[type="time"],
+  input[type="week"], input[type="number"], input[type="email"],
+  input[type="url"]{ font-size:16px;}
 }

+ 742 - 736
src/main/webapp/ux/js/admin.ui.js

@@ -1,737 +1,743 @@
-//로그인 유효성체크 ALERT
-function uifnAlertClose(id){
-	$("#"+id).css({display:'none'});
-	return true;
-};
- 
-//차트 리사이징
-function chartResize(){
-	if ( $(document).find(".chartUnit").length > 0 ) {
-		let elLen = $(".chartUnit").length;
-		for (let i=0; i<elLen; i++){
-			let thisId = eval($(".chartUnit").eq(i).attr("id"));
-			let liW = Math.floor( $(".chartUnit").eq(i).parent("li").width());
-			thisId.resize({width:liW});
-			$(".c3-regions rect").attr("width",liW);
-		}
-	}
-};
-
-//MODAL & MODELESS POPUP 열기
-function uifnPopupOpen(id){
-	var $thisId = $(document).find("#"+id);
-	var popW = parseInt( $thisId.children().attr("data-width"));
-	var popH = parseInt( $thisId.children().attr("data-height"));
-
-	//팝업사이즈
-	if (!popW && !popH) { //가로&세로 미지정(풀사이즈 출력)
-		popW = $(window).width()-100;
-		popH = $(window).height()-100;
-		if (popW % 2 != 0 )	{popW = popW+1}; //짝수 변환(border 두께 영향)
-		if (popW < 1180)	{popW = 1180 };  //최소넓이
-		if (popH % 2 != 0 )	{popH = popH+1}; //짝수 변환(border 두께 영향)
-		if (popH < 488)	{ popH = 488 };  	//최소높이
-		$thisId.children().find(" > .panelStyle").css({width:popW, height:popH});
-	} else if (popW && popH) { 		//가로,세로 둘다 지정(지정된 사이즈로 출력)
-		$thisId.children().find(".panelStyle").css({width:popW, height:popH});
-	} else { 	//가로만 지정(세로는 auto)
-		$thisId.children().find("> .panelStyle").css({width:popW});
-	};
-
-	if ($thisId.children().hasClass("modelessPopup")){ //모덜리스 팝업의 경우
-		if (isNaN(popW)){popW = $thisId.children().width(); }
-		if (isNaN(popH)){popH = $thisId.children().height(); }
-		let popL = $(window).width()/2 - popW/2;
-		let popT = $(window).height()/2 - popH/2;
-		$thisId.children().css({left:popL, top:popT});
-	};
-
-	$thisId.children("div").css({display:"block"});
-	$("body").addClass("scrollOff");
-
-	//이미지카드가 있는 팝업일때 내부 컨텐츠 높이 지정
-	if ($thisId.children().find(".cardArea").length > 0) {
-		var popH=0, noticeH=0, btnAreaH=0;
-		if ($thisId.children().find(".notice").length > 0){
-			var noticeLen =  $thisId.children().find(".notice li").length;
-			noticeH = (noticeLen*24) + 30;
-		};
-		if ($thisId.children().hasClass("modelessPopup")){ //모덜리스 팝업의 경우
-			popH = $thisId.children().height();
-		} else {
-			popH = $thisId.children().find(".panelStyle").height();
-		};
-		if ($thisId.children().find(".panelBar").length > 0 ){ btnAreaH = 52 };
-
-		var cardAreaH = popH-42-noticeH-37-btnAreaH; //높이계산 : 팝업-타이틀-안내문-컬러명TR-기타버튼영역
-		$(".cardArea").css({height:cardAreaH});
-	};
-
-	//tab이 있는 팝업일때 내부 컨텐츠 높이 지정
-	if ($thisId.children().find(".tabsCont").length > 0) {
-		var mdConH=0, topTbl=0, popH=0, btnAreaH=0;
-		if ($thisId.children().hasClass("modelessPopup")){ //모덜리스 팝업의 경우
-			popH = $thisId.children().height();
-		} else {
-			popH = $thisId.children().find(".panelStyle").height();
-		};
-		if ($thisId.children().find(".panelContent > .frmStyle:eq(0)").length > 0 ){
-			topTbl = $thisId.children().find(".panelContent > .frmStyle:eq(0)").outerHeight() + 15;
-		};
-		if ($thisId.children().find(".panelBar").length > 0 ){ btnAreaH = 52 };
-
-		//console.log(topTbl);
-		var tabContH = popH-42-topTbl-35-btnAreaH; //높이계산 : 팝업높이-타이틀-상단테이블-탭스높이-버튼
-		$(".tab > .panelStyle").css({height:tabContH});
-	};
-
-};
-
-//MODAL POPUP CLOSE
-function uifnPopupClose(id) {
-	var $thisId = $("#"+id);
-	if ( $thisId.hasClass("popupWrap") ) { //모달,모덜리스  팝업
-		$thisId.children("div").css({display:"none"});
-		$thisId.children("div").remove();
-		var modalLen = $(".modalPopup[style='display:block;']").length;
-		var modalessLen = $(".modalPopup[style='display:block;']").length;
-		if ( modalLen == 0 && modalessLen ==0 ){
-			$("body").removeClass("scrollOff");
-		};
-	} else if ( $thisId.hasClass("videoPopup") ) {  //비디오팝업
-		$thisId.css({display:"none"});
-		$("#iframe_video").attr("src","");
-
-	};
-	$thisId.remove();
-};
-
-//비디오 팝업 열기
-function viewVideoPopup(id){
-	var $thisId = $("#"+id + ">.videoPopup");
-	var popW = parseInt( $thisId.children().attr("data-width") );
-	var popH = parseInt( $thisId.children().attr("data-height") );
-	var iframeSrc = 'https://www.youtube.com/embed/' + $("#video_url").val() + '?showinfo=0&rel=0&vp=hd1080&fs=0&wmode=opaque&enablejsapi=1';
-	$("#iframe_video").css({width:popW, height:popH});
-	$("#iframe_video").attr("src", iframeSrc+"?enablejsapi=1&version=3&playerapiid=ytplayer");
-	$("#"+id).css({display:"block"});
-};
-
-//SORTABLE LIST
-function unfnModeless(){
-	if ( $("#sortable").length > 0 ) {
-		var mainW = $("#main").width();
-		if ( $("#sortable").hasClass("sortable1") ) {
-			mainW =  ((mainW / 1) / mainW) * 100 ;
-		};
-		if ( $("#sortable").hasClass("sortable2") ) {
-			mainW =  ((mainW / 2) / mainW) * 100 ;
-		};
-		if ( $("#sortable").hasClass("sortable3") ) {
-			mainW =  ((mainW / 3) / mainW) * 100 ;
-		};
-		if ( $("#sortable").hasClass("sortable4") ) {
-			mainW =  ((mainW / 4) / mainW) * 100 ;
-		};
-		$(".secCell").css({"width":mainW +'%'});
-	};
-	$("#sortable").sortable();
-	$("#sortable").disableSelection();
-};
-
-//LNB 활성화&비활성화
-function lnbToggle(){
-	if ( $("#lnb-wrapper").hasClass("on") ){
-		$("#lnb-wrapper").removeClass("on");
-		$("#main-wrapper").removeClass("on");
-	} else {
-		$("#lnb-wrapper").addClass("on");
-		$("#main-wrapper").addClass("on");
-	};
-	setTimeout( chartResize, 300); //차트 리사이징
-};
-
-$(document).ready(function(){
-
-	//MODELESS POPUP : draggable
-	$(document).find(".draggable").draggable({containment:"#wrapper", scroll:false});
-
-
-	//chart resizing
-	$(window).resize(function(){
-		setTimeout( chartResize, 300);	//차트 리사이징
-	});
-
-	//체크박스(단일), 라디오버튼 : readOnly 처리
-	$(document).on("click", "[type=checkbox][readonly],[type=radio][readonly]", function(){
-		return false;
-	});
-
-	$(document).on("click", ".chkBox", function(e){
-		let cntId = $(this).parent().parent("ul").attr("data-count-id");
-		let cntLen;
-
-		if ( $(this).find("input").is('[id]') ){ // ---------------전체선택ID
-			let $id = $(this).find("input").attr("id");
-			if ( $(this).hasClass("checked") ) { //체크된 경우
-				$("input[id="+$id+"]").parent("label").removeClass("checked");
-				$("input[id="+$id+"]").prop("checked", false);
-				$("input[name="+$id+"]").parent("label").removeClass("checked");
-				$("input[name="+$id+"]").prop("checked", false);
-			} else {
-				$("input[id="+$id+"]").parent("label").addClass("checked");
-				$("input[id="+$id+"]").prop("checked", true);
-				$("input[name="+$id+"]").parent("label").addClass("checked");
-				$("input[name="+$id+"]").prop("checked", true);
-			};
-			//선택된 개수 출력 (checkBoxList)
-			if (cntId != undefined ) {
-				cntLen =  $("input[name="+$id+"]:checked").length; //체크된 개수
-				$("#"+cntId).text(cntLen);
-			};
-			return false;
-
-		} else {	// ---------------개별선택
-			let $name = $(this).find("input").attr("name");
-			let totLen = $("input[name="+$name+"]").length; //전체 개수
-			if ( $(this).hasClass("checked")) {
-				$(this).removeClass("checked");
-				$(this).find("input").prop("checked", false);
-				$("input[id="+$name+"]").prop("checked", false);
-				$("input[id="+$name+"]").parent("label").removeClass("checked");
-			} else {
-				$(this).addClass("checked");
-				$(this).find("input").prop("checked", true);
-				cntLen =  $("input[name="+$name+"]:checked").length; //체크된 개수
-				if (totLen == cntLen ){
-					$("input[id="+$name+"]").prop("checked", true);
-					$("input[id="+$name+"]").parent("label").addClass("checked");
-				}
-			};
-			//선택된 개수 출력 (checkBoxList)
-			if (cntId != undefined ) {
-				cntLen =  $("input[name="+$name+"]:checked").length; //체크된 개수
-				if (totLen > cntLen ) {
-					$("#"+cntId).text(cntLen);
-				} else if  (totLen == cntLen ) {
-					$("#"+cntId).text(totLen);
-				};
-			};
-			return false;
-		};
-	});
-
-
-	/* CheckBox List : More(+) 버튼 */
-	$(document).on("click", ".checkBoxList .more", function(){
-		var thisI = $(this).find("i");
-		if( $(thisI).hasClass("fa-plus") ){
-			$(this).parent().addClass("on");
-			$(thisI).removeClass("fa-plus").addClass("fa-minus");
-		} else {
-			$(this).parent().removeClass("on");
-			$(thisI).removeClass("fa-minus").addClass("fa-plus");
-		}
-	});
-
-	/* Multi CheckBox - 다중선택 체크박스 */
-	$(document).on("click", ".multiCheckBox .sltBtn", function(){
-		if($(this).hasClass("on")){
-			$(this).removeClass("on");
-			$(this).parent().find("ul").css({display:"none"});
-		}else{
-			$(".multiCheckBox .sltBtn").removeClass("on");
-			$(".multiCheckBox ul").css({display:"none"});
-			$(this).addClass("on");
-			$(this).parent().find("ul").css({display:"block"});
-		}
-	});
-
-	//햄버거버튼 : LNB 숨김(전체화면 보기)
-	$(document).on("click",".lnbClose",function(){
-		lnbToggle();
-	});
-
-	//GNB Memu
-	$(document).on("click",".header-menu .menu a",function(){
-		$(".header-menu .menu a").removeClass("on");
-		$(this).addClass("on");
-		var menuIdx = $(this).parent("span").index()+1;
-		$("#lnb"+menuIdx).addClass("on");
-		if( !$("#lnb-wrapper").hasClass("on") ){
-			lnbToggle(); // LNB Open
-		};
-	});
-
-	//LNB 서브메뉴 보기 : dep2
-	$(document).on("click",".dep2",function(){
-		if ($(this).hasClass("on")){	//활성화된 상태
-			$(this).removeClass("on");
-			$(this).next(".dep3").slideUp(200).removeClass("on");
-		} else {						//비활성화된 상태
-			$(this).addClass("on");
-			$(this).next(".dep3").slideDown(200).addClass("on");
-		};
-	});
-
-	//LNB 서브메뉴 보기 : dep3
-	$(document).on("click", ".dep3 > li > a", function(){
-		if ($(this).hasClass("on")==false){
-			$(".dep3 > li > a").removeClass("on");
-			$(this).addClass("on");
-		};
-	});
-
-	//다중셀렉박스 리스트 보이기,감추기
-	$(document).on("click", ".mSelected", function(){
-		$(this).find(".srchFld input").focus();
-	});
-	$(document).on("focusin", ".srchFld input", function(){
-		$(this).parents(".mSelected").next(".mSelecting").css({display:'block'});
-	});
-	$(document).on("focusout", ".mSelectBox", function(){
-		$(this).find(".mSelecting").slideUp(50);
-	});
-	//다중셀렉박스 리스트
-	$(document).on("mousedown", ".mSelectWrap .mSelecting ul li", function(){
-		if ( $(this).hasClass("deselect")==false ){
-			var dataIdx = $(this).attr("data-index");
-			var movePos = $(this).parents(".mSelecting").prev(".mSelected").find(".srchFld");
-			$(this).parents(".mSelecting").prev(".mSelected").find("li[data-index="+dataIdx+"]").removeClass("off").insertBefore(movePos);
-			$(this).parents(".mSelectWrap").find("select option[data-index="+dataIdx+"]").prop("selected", true);
-			$(".mSelecting").slideUp(50);
-			$(this).addClass("off");
-			return false;
-		};
-	});
-	//다중셀렉박스 닫기
-	$(document).on("click", ".mSelectWrap .mSelected li a", function(){
-		var dataIdx = $(this).parent("li").attr("data-index");
-		$(this).parents(".mSelected").next(".mSelecting").find("ul li[data-index="+dataIdx+"]").removeClass("off")
-		$(this).parents(".mSelectWrap").find("select option[data-index="+dataIdx+"]").prop("selected", false);
-		$(this).parent("li").addClass("off")
-		return false;
-	});
-
-	//TABS
-	$(document).on("click", ".tabs .tabsNav li", function(e){
-		e.preventDefault();
-		if ( !$(this).hasClass("on") ) {
-			let contIdx = $(this).index();
-			let pTab = $(this).parents(".tabs");
-			let thisTop = $(window).scrollTop();
-			pTab.find(".tabsNav li").removeClass("on");
-			pTab.find(".tabsCont > li").removeClass("on");
-			$(this).addClass("on");
-			pTab.find(".tabsCont > li").eq(contIdx).addClass("on");
-			$('html, body').animate({scrollTop:thisTop}, 'fast');
-		}
-	});
-
-	//TABSJR : 탭 하위 탭스
-	$(document).on("click", ".tabsJr .tabsJrNav li", function(e){
-		e.preventDefault();
-		if ( !$(this).hasClass("on") ) {
-			let contIdx = $(this).index();
-			let pTab = $(this).parents(".tabsJr");
-			let thisTop = $(window).scrollTop();
-			pTab.find(".tabsJrNav li").removeClass("on");
-			pTab.find(".tabsJrCont > li").removeClass("on");
-			$(this).addClass("on");
-			pTab.find(".tabsJrCont > li").eq(contIdx).addClass("on");
-			$('html, body').animate({scrollTop:thisTop}, 'fast');
-		}
-	});
-
-	//SORTABLE LIST
-	if ( $("#sortable").length > 0 ) {
-		var mainW = $("#main").width();
-		if ( $("#sortable").hasClass("sortable1") ) {
-			mainW =  ((mainW / 1) / mainW) * 100 ;
-		};
-		if ( $("#sortable").hasClass("sortable2") ) {
-			mainW =  ((mainW / 2) / mainW) * 100 ;
-		};
-		if ( $("#sortable").hasClass("sortable3") ) {
-			mainW =  ((mainW / 3) / mainW) * 100 ;
-		};
-		if ( $("#sortable").hasClass("sortable4") ) {
-			mainW =  ((mainW / 4) / mainW) * 100 ;
-		};
-		$(".secCell").css({"width":mainW +'%'});
-	};
-	$("#sortable").sortable();
-	$("#sortable").disableSelection();
-
-	//파일선택
-	$(document).on("change",".uFileInput", function() {
-		let fileName = $(this).val().split('\\').pop();
-		$(this).next('.uFileLabel').addClass("selected").html(fileName);
-	});
-
-	//베너 그룹 Up & Down
-	$(document).on("click",".groupBtn", function() {
-		var $gId = $(this).attr("id");
-		var $gIcn = $(this).find("i");
-		if ( $("table[data-child="+$gId+"]").hasClass("off") ){
-			$("table[data-child="+$gId+"]").removeClass("off");
-			$gIcn.attr("class","fa fa-chevron-down");
-		} else  {
-			$("table[data-child="+$gId+"]").addClass("off");
-			$gIcn.attr("class","fa fa-chevron-up");
-		};
-	});
-
-	//비디오팝업 배경 클릭시 닫기
-	$(document).on("click",".videoClose", function() {
-		var vId = $(this).attr("id");
-		$("#"+vId).css({display:"none"});
-		$("#"+vId).find("iframe").attr("src","");
-	});
-
-	//상단이동 버튼
-	$(document).on("click","#btnTop", function() {
-		$('html, body').animate({scrollTop:'0'}, 200);
-	});
-
-	//다중셀렉트박스 포커스인(접근성)
-	$(document).on("focusin",".srchFld", function() {
-		$(this).parents(".mSelectBox").addClass("outline");
-	});
-	//다중셀렉트박스 포커스아웃(접근성)
-	$(document).on("focusout",".srchFld", function() {
-		$(this).parents(".mSelectBox").removeClass("outline");
-	});
-
-	//패널영역 줄이기
-	$(document).on("click",".panelControl .fa-chevron-up", function() {
-		$(this).parents(".panelStyle").find(".panelContent").slideUp(100);
-		$(this).attr("class","fa fa-chevron-down");
-	});
-	//패널영역 펼치기
-	$(document).on("click",".panelControl .fa-chevron-down", function() {
-		$(this).parents(".panelStyle").find(".panelContent").slideDown(100);
-		$(this).attr("class","fa fa-chevron-up");
-	});
-
-	//패널영역 감추기
-	$(document).on("click",".panelControl .fa-times", function() {
-		$(this).parents(".panelStyle").fadeOut(100);
-	});
-
-
-	//Date Picker Start -----------------------------------------------------------
-	function initDatePickers() {
-		// datepicker Korean option
-		$.datepicker.regional['ko'] = {
-			monthNames: ['1월', '2월', '3월', '4월', '5월', '6월', '7월', '8월', '9월', '10월', '11월', '12월'],
-			monthNamesShort: ['1월', '2월', '3월', '4월', '5월', '6월', '7월', '8월', '9월', '10월', '11월', '12월'],
-			dayNames: ['일', '월', '화', '수', '목', '금', '토'],
-			dayNamesShort: ['일', '월', '화', '수', '목', '금', '토'],
-			dayNamesMin: ['일', '월', '화', '수', '목', '금', '토'],
-			dateFormat: 'yy-mm-dd',
-			firstDay: 1,
-			//isRTL: false,
-			//duration: 200,
-			//showAnim: 'show',
-			showMonthAfterYear: true,
-			yearSuffix: '년 ',
-			prevText: '이전달',
-			nextText: '다음달',
-			//showButtonPanel: true,
-			//currentText: '오늘',
-			//closeText: '닫기',
-			showOn: 'both',
-			buttonImage:'image/btn_calendar.png'
-			//,buttonImageOnly: true
-		};
-		$.datepicker.setDefaults($.datepicker.regional['ko']);
-		$('.schDate').datepicker({
-			changeMonth: true,
-			changeYear: true,
-			defaultDate: $('.schDate').val()
-		});
-		// monthpicker and year selector start/end year (10 year ago)
-		var currentYear = (new Date()).getFullYear();
-		var startYear = currentYear - 10;
-		var finalYear = currentYear + 10;
-		var options = {
-			startYear: startYear,
-			finalYear: finalYear,
-			pattern: 'yyyy-mm',
-			monthNames: ['1월', '2월', '3월', '4월', '5월', '6월', '7월', '8월', '9월', '10월', '11월', '12월']
-		};
-		$('.schMonth').monthpicker(options);
-		// make year selector
-		for (var i = finalYear; i >= startYear; i--) {
-			if (currentYear == i ) {
-				$(".schYear").append("<option value='" + i + "' selected class='ui-state-highlight'>" + i + "</option>");
-			} else {
-				$('.schYear').append("<option value='" + i + "'>" + i + "</option>");
-			}
-		}
-	};
-	$(function() {
-		(function($) {
-			var methods = {
-				init: function(options) {
-					return this.each(function() {
-						var $this = $(this),
-							data = $this.data('monthpicker'),
-							year = (options && options.year) ? options.year : (new Date()).getFullYear(),
-							settings = $.extend({
-								pattern: 'yyyy-mm',
-								selectedMonth: null,
-								selectedMonthName: '',
-								selectedYear: year,
-								startYear: year - 10,
-								finalYear: year + 10,
-								monthNames: ['1월', '2월', '3월', '4월', '5월', '6월', '7월', '8월', '9월', '10월', '11월', '12월'],
-								id: "monthpicker_" + (Math.random() * Math.random()).toString().replace('.', ''),
-								openOnFocus: true,
-								disabledMonths: []
-							}, options);
-						settings.dateSeparator = settings.pattern.replace(/(mmm|mm|m|yyyy|yy|y)/ig, '');
-						// If the plugin hasn't been initialized yet for this element
-						if (!data) {
-							$(this).data('monthpicker', {
-								'target': $this,
-								'settings': settings
-							});
-							if (settings.openOnFocus === true) {
-								$this.on('focus', function() {
-									$this.monthpicker('show');
-								});
-							}
-							$this.monthpicker('parseInputValue', settings);
-							$this.monthpicker('mountWidget', settings);
-							$this.on('monthpicker-click-month', function(e, month, year) {
-								$this.monthpicker('setValue', settings);
-								$this.monthpicker('hide');
-							});
-							// hide widget when user clicks elsewhere on page
-							$this.addClass("mtz-monthpicker-widgetcontainer");
-							$(document).unbind("mousedown.mtzmonthpicker").on("mousedown.mtzmonthpicker", function(e) {
-								if (!e.target.className || e.target.className.toString().indexOf('mtz-monthpicker') < 0) {
-									$(this).monthpicker('hideAll');
-								}
-							});
-						}
-					});
-				},
-				show: function() {
-					$(this).monthpicker('hideAll');
-					var widget = $('#' + this.data('monthpicker').settings.id);
-					widget.css("top", this.offset().top + this.outerHeight());
-					if ($(window).width() > (widget.width() + this.offset().left)) {
-						widget.css("left", this.offset().left);
-					} else {
-						widget.css("left", this.offset().left - widget.width());
-					}
-					widget.show();
-					//widget.find('select').focus();
-					this.trigger('monthpicker-show');
-				},
-				hide: function() {
-					var widget = $('#' + this.data('monthpicker').settings.id);
-					if (widget.is(':visible')) {
-						widget.hide();
-						this.trigger('monthpicker-hide');
-					}
-				},
-				hideAll: function() {
-					$(".mtz-monthpicker-widgetcontainer").each(function() {
-						if (typeof($(this).data("monthpicker")) != "undefined") {
-							$(this).monthpicker('hide');
-						}
-					});
-				},
-				setValue: function(settings) {
-					var month = settings.selectedMonth,
-						year = settings.selectedYear;
-					if (settings.pattern.indexOf('mmm') >= 0) {
-						month = settings.selectedMonthName;
-					} else if (settings.pattern.indexOf('mm') >= 0 && settings.selectedMonth < 10) {
-						month = '0' + settings.selectedMonth;
-					};
-					if (settings.pattern.indexOf('yyyy') < 0) {
-						year = year.toString().substr(2, 2);
-					};
-					if (settings.pattern.indexOf('y') > settings.pattern.indexOf(settings.dateSeparator)) {
-						this.val(month + settings.dateSeparator + year);
-					} else {
-						this.val(year + settings.dateSeparator + month);
-					};
-					this.change();
-				},
-				disableMonths: function(months) {
-					var settings = this.data('monthpicker').settings,
-						container = $('#' + settings.id);
-					settings.disabledMonths = months;
-					container.find('.mtz-monthpicker-month').each(function() {
-						var m = parseInt($(this).data('month'));
-						if ($.inArray(m, months) >= 0) {
-							$(this).addClass('ui-state-disabled');
-						} else {
-							$(this).removeClass('ui-state-disabled');
-						}
-					});
-				},
-				mountWidget: function(settings) {
-					var monthpicker = this,
-						container = $('<div id="' + settings.id + '" class="ui-datepicker ui-widget ui-widget-content ui-helper-clearfix ui-corner-all" />'),
-						header = $('<div class="ui-datepicker-header ui-widget-header ui-helper-clearfix ui-corner-all mtz-monthpicker" />'),
-						combo = $('<select class="mtz-monthpicker mtz-monthpicker-year" />'),
-						table = $('<table class="mtz-monthpicker" />'),
-						tbody = $('<tbody class="mtz-monthpicker" />'),
-						tr = $('<tr class="mtz-monthpicker" />'),
-						td = '',
-						selectedYear = settings.selectedYear,
-						option = null,
-						attrSelectedYear = $(this).data('selected-year'),
-						attrStartYear = $(this).data('start-year'),
-						attrFinalYear = $(this).data('final-year'),
-						currYear = date.getFullYear();
-						currMonth = date.getMonth()+1;
-					if (attrSelectedYear) {
-						settings.selectedYear = attrSelectedYear;
-					}
-					if (attrStartYear) {
-						settings.startYear = attrStartYear;
-					}
-					if (attrFinalYear) {
-						settings.finalYear = attrFinalYear;
-					}
-					container.css({
-						position: 'absolute',
-						//zIndex: 999999,
-						whiteSpace: 'nowrap',
-						//width: '250px',
-						overflow: 'hidden',
-						textAlign: 'center',
-						display: 'none',
-						top: monthpicker.offset().top + monthpicker.outerHeight(),
-						left: monthpicker.offset().left
-					});
-					combo.on('change', function() {
-						var months = $(this).parent().parent().find('td[data-month]');
-						months.removeClass('ui-state-highlight');
-						months.removeClass('ui-state-active');
-						if ($(this).val() == settings.selectedYear) {
-							months.filter('td[data-month=' + settings.selectedMonth + ']').addClass('ui-state-active');
-						}
-						//alert($(this).val() +','+ currYear);
-						if ($(this).val() == currYear)  {
-							months.filter('td[data-month=' + currMonth + ']').addClass('ui-state-highlight');
-						}
-						monthpicker.trigger('monthpicker-change-year', $(this).val());
-					});
-					// mount years combo
-					for (var i = settings.startYear; i <= settings.finalYear; i++) {
-						var option = $('<option class="mtz-monthpicker" />').attr('value', i).append(i);
-						if (settings.selectedYear == i) {
-							option.attr('selected', 'selected');
-						}
-						combo.append(option);
-					}
-					header.append(combo).appendTo(container);
-					header.append('년').appendTo(container);
-					// mount months table
-					for (var i = 1; i <= 12; i++) {
-						td = $('<td class="ui-state-default mtz-monthpicker mtz-monthpicker-month"/>').attr('data-month', i);
-						if (settings.selectedMonth == i) {
-							td.addClass('ui-state-active');
-						}
-						if (settings.selectedYear == currYear && settings.selectedMonth == i) {
-							td.addClass('ui-state-highlight');
-						}
-						td.append(settings.monthNames[i - 1]);
-						tr.append(td).appendTo(tbody);
-						if (i % 3 === 0) {
-							tr = $('<tr class="mtz-monthpicker" />');
-						}
-					}
-					tbody.find('.mtz-monthpicker-month').on('click', function() {
-						var m = parseInt($(this).data('month'));
-						if ($.inArray(m, settings.disabledMonths) < 0) {
-							settings.selectedYear = $(this).closest('.ui-datepicker').find('.mtz-monthpicker-year').first().val();
-							settings.selectedMonth = $(this).data('month');
-							settings.selectedMonthName = $(this).text();
-							monthpicker.trigger('monthpicker-click-month', $(this).data('month'));
-							$(this).closest('table').find('.ui-state-active').removeClass('ui-state-active');
-							$(this).addClass('ui-state-active');
-						}
-					});
-					table.append(tbody).appendTo(container);
-					container.appendTo('body');
-				},
-				destroy: function() {
-					return this.each(function() {
-						$(this).removeClass('mtz-monthpicker-widgetcontainer').unbind('focus').removeData('monthpicker');
-					});
-				},
-				getDate: function() {
-					var settings = this.data('monthpicker').settings;
-					if (settings.selectedMonth && settings.selectedYear) {
-						return new Date(settings.selectedYear, settings.selectedMonth - 1);
-					} else {
-						return null;
-					}
-				},
-				parseInputValue: function(settings) {
-					if (this.val()) {
-						if (settings.dateSeparator) {
-							var val = this.val().toString().split(settings.dateSeparator);
-							if (settings.pattern.indexOf('m') === 0) {
-								settings.selectedMonth = val[0];
-								settings.selectedYear = val[1];
-							} else {
-								settings.selectedMonth = val[1];
-								settings.selectedYear = val[0];
-							}
-						}
-					}
-				}
-			};
-			$.fn.monthpicker = function(method) {
-				if (methods[method]) {
-					return methods[method].apply(this, Array.prototype.slice.call(arguments, 1));
-				} else if (typeof method === 'object' || !method) {
-					return methods.init.apply(this, arguments);
-				} else {
-					$.error('Method ' + method + ' does not exist on jQuery.mtz.monthpicker');
-				}
-			};
-		})(jQuery);
-		Date.prototype.yyyymmdd = function() {
-			var mm = this.getMonth() + 1; // getMonth() is zero-based
-			var dd = this.getDate();
-
-			return [this.getFullYear(),
-							(mm>9 ? '' : '0') + mm,
-							(dd>9 ? '' : '0') + dd
-						 ].join('-');
-		};
-		var date = new Date();
-		var schDate = date.yyyymmdd();
-		$('.schDate').val(schDate);
-		$('.schMonth').val(schDate.substr(0,7));
-		initDatePickers();
-	});
-
-	//년-월
-	$(".schBtn").on('click', function () {
-		var thisId= $(this).attr("data-id");
-		$('#'+thisId).monthpicker('show');
-	});
-	//Date Picker End-----------------------------------------------------------
-
-
-
-
-
-
-
-
-
+//로그인 유효성체크 ALERT
+function uifnAlertClose(id){
+	$("#"+id).css({display:'none'});
+	return true;
+};
+
+//차트 리사이징
+function chartResize(){
+	if ( $(document).find(".chartUnit").length > 0 ) {
+		let elLen = $(".chartUnit").length;
+		for (let i=0; i<elLen; i++){
+			let thisId = eval($(".chartUnit").eq(i).attr("id"));
+			let liW = Math.floor( $(".chartUnit").eq(i).parent("li").width());
+			thisId.resize({width:liW});
+			$(".c3-regions rect").attr("width",liW);
+		}
+	}
+};
+
+//MODAL & MODELESS POPUP 열기
+function uifnPopupOpen(id){
+	let $thisId = $(document).find("#"+id); //팝업ID
+	let $fisrtChild = $thisId.children().first("div"); //modal or modeless
+	let $firstPanel = $fisrtChild.find(">.panelStyle"); //first Panel
+	let popW, popH;
+
+	//넓이
+	if ($fisrtChild.attr("data-width")) { //지정
+		popW = parseInt( $fisrtChild.attr("data-width"));
+		if ( isNaN(popW) ){ //full
+			popW = $(window).width()-100;
+		}
+		$firstPanel.css({width:popW});
+	} else { //auto
+		popW = $fisrtChild.width();
+		let maxW = $(window).width()-100;
+		$firstPanel.css({maxWidth:maxW});
+	};
+
+	//높이
+	if ( $fisrtChild.attr("data-height") ) { //지정
+		popH = parseInt( $fisrtChild.attr("data-height"));
+		if ( isNaN(popH) ){ //full
+			popH = $(window).height()-100;
+		}
+		$firstPanel.css({height:popH});
+	} else { //auto
+		popH = $fisrtChild.height();
+		let maxH = $(window).height()-100;
+		$firstPanel.css({maxHeight:maxH});
+	};
+
+	//팝업 Open
+	$thisId.children("div").css({display:"block"});
+	$("body").addClass("scrollOff");
+
+	//Modeless 위치
+	if ($fisrtChild.hasClass("modelessPopup")){
+		let popL = parseInt($fisrtChild.css("left")) - popW/2;
+		let popT = parseInt($fisrtChild.css("top")) - popH/2;
+		$fisrtChild.css({left:popL, top:popT});
+	};
+
+	//내부에 cardArea(이미지카드) 존재 : cardArea 컨텐츠 높이
+	if ($thisId.find(".cardArea").length > 0) {
+		let noticeH = 0;
+		//공지 높이
+		if ($firstPanel.find(".notice").length > 0){
+			let noticeLen =  $thisId.children(":first").find(".notice li").length;
+			noticeH = (noticeLen*24) + 30;
+		};
+		if ($thisId.children(":first").find(".panelBar").length > 0 ){ btnAreaH = 52 };
+		popH = $firstPanel.height();
+		let cardAreaH = popH-42-noticeH-37-43; //높이계산 : 팝업-타이틀 높이 - 안내문 높이 - 컬러명(테이블 첫행)높이 - 기타버튼영역
+		$(".cardArea").css({height:cardAreaH});
+	};
+
+	//내부에 Tabs 존재 : Tabs 컨텐츠 높이
+	if ( $firstPanel.find(".tabs").length > 0) {
+		let topTbl=0, btnAreaH=0;
+		if ( $fisrtChild.hasClass("modelessPopup") ){ //모덜리스팝업
+			popH = $fisrtChild.height();
+		} else { //모달팝업
+			popH = $firstPanel.height();
+		};
+		if ( $firstPanel.find(".panelContent > .frmStyle:eq(0)").length > 0 ){
+			topTbl = $firstPanel.find(".panelContent > .frmStyle:eq(0)").outerHeight() + 15;
+		};
+		if ( $firstPanel.find(".tabs > .panelBar").length > 0 ){
+			 btnAreaH = $firstPanel.find(".tabs > .panelBar").outerHeight();
+		};
+		let tabContH = popH - 42 - topTbl - 35 - 25 - btnAreaH; //높이계산 : 팝업높이-타이틀-상단테이블-탭스높이-하단여백-버튼영역높이
+		$firstPanel.find(".panelContent .tab > .panelStyle").css({height:tabContH});
+	};
+};
+
+//POPUP CLOSE
+function uifnPopupClose(id) {
+	var $thisId = $("#"+id);
+	if ( $thisId.hasClass("popupWrap") ) { //모달, 모덜리스  팝업
+		$thisId.children("div").css({display:"none"});
+		$thisId.children("div").remove();
+		var modalLen = $(".modalPopup[style='display:block;']").length;
+		var modalessLen = $(".modalPopup[style='display:block;']").length;
+		if ( modalLen == 0 && modalessLen ==0 ){
+			$("body").removeClass("scrollOff");
+		};
+	} else if ( $thisId.hasClass("videoPopup") ) {  //비디오팝업
+		$thisId.css({display:"none"});
+		$("#iframe_video").attr("src","");
+	};
+	$thisId.remove();
+};
+
+//비디오 팝업 열기
+function viewVideoPopup(id){
+	var $thisId = $("#"+id + ">.videoPopup");
+	var popW = parseInt( $thisId.children().attr("data-width") );
+	var popH = parseInt( $thisId.children().attr("data-height") );
+	var iframeSrc = 'https://www.youtube.com/embed/' + $("#video_url").val() + '?showinfo=0&rel=0&vp=hd1080&fs=0&wmode=opaque&enablejsapi=1';
+	$("#iframe_video").css({width:popW, height:popH});
+	$("#iframe_video").attr("src", iframeSrc+"?enablejsapi=1&version=3&playerapiid=ytplayer");
+	$("#"+id).css({display:"block"});
+};
+
+//SORTABLE LIST
+function unfnModeless(){
+	if ( $("#sortable").length > 0 ) {
+		var mainW = $("#main").width();
+		if ( $("#sortable").hasClass("sortable1") ) {
+			mainW =  ((mainW / 1) / mainW) * 100 ;
+		};
+		if ( $("#sortable").hasClass("sortable2") ) {
+			mainW =  ((mainW / 2) / mainW) * 100 ;
+		};
+		if ( $("#sortable").hasClass("sortable3") ) {
+			mainW =  ((mainW / 3) / mainW) * 100 ;
+		};
+		if ( $("#sortable").hasClass("sortable4") ) {
+			mainW =  ((mainW / 4) / mainW) * 100 ;
+		};
+		$(".secCell").css({"width":mainW +'%'});
+	};
+	$("#sortable").sortable();
+	$("#sortable").disableSelection();
+};
+
+//LNB 활성화&비활성화
+function lnbToggle(){
+	if ( $("#lnb-wrapper").hasClass("on") ){
+		$("#lnb-wrapper").removeClass("on");
+		$("#main-wrapper").removeClass("on");
+	} else {
+		$("#lnb-wrapper").addClass("on");
+		$("#main-wrapper").addClass("on");
+	};
+	setTimeout( chartResize, 300); //차트 리사이징
+};
+
+$(document).ready(function(){
+
+	//MODELESS POPUP : draggable
+	$(document).find(".draggable").draggable({containment:"#wrapper", scroll:false});
+
+
+	//chart resizing
+	$(window).resize(function(){
+		setTimeout( chartResize, 300);	//차트 리사이징
+	});
+
+	//체크박스(단일), 라디오버튼 : readOnly 처리
+	$(document).on("click", "[type=checkbox][readonly],[type=radio][readonly]", function(){
+		return false;
+	});
+
+	$(document).on("click", ".chkBox", function(e){
+		let cntId = $(this).parent().parent("ul").attr("data-count-id");
+		let cntLen;
+
+		if ( $(this).find("input").is('[id]') ){ // ---------------전체선택ID
+			let $id = $(this).find("input").attr("id");
+			if ( $(this).hasClass("checked") ) { //체크된 경우
+				$("input[id="+$id+"]").parent("label").removeClass("checked");
+				$("input[id="+$id+"]").prop("checked", false);
+				$("input[name="+$id+"]").parent("label").removeClass("checked");
+				$("input[name="+$id+"]").prop("checked", false);
+			} else {
+				$("input[id="+$id+"]").parent("label").addClass("checked");
+				$("input[id="+$id+"]").prop("checked", true);
+				$("input[name="+$id+"]").parent("label").addClass("checked");
+				$("input[name="+$id+"]").prop("checked", true);
+			};
+			//선택된 개수 출력 (checkBoxList)
+			if (cntId != undefined ) {
+				cntLen =  $("input[name="+$id+"]:checked").length; //체크된 개수
+				$("#"+cntId).text(cntLen);
+			};
+			return false;
+
+		} else {	// ---------------개별선택
+			let $name = $(this).find("input").attr("name");
+			let totLen = $("input[name="+$name+"]").length; //전체 개수
+			if ( $(this).hasClass("checked")) {
+				$(this).removeClass("checked");
+				$(this).find("input").prop("checked", false);
+				$("input[id="+$name+"]").prop("checked", false);
+				$("input[id="+$name+"]").parent("label").removeClass("checked");
+			} else {
+				$(this).addClass("checked");
+				$(this).find("input").prop("checked", true);
+				cntLen =  $("input[name="+$name+"]:checked").length; //체크된 개수
+				if (totLen == cntLen ){
+					$("input[id="+$name+"]").prop("checked", true);
+					$("input[id="+$name+"]").parent("label").addClass("checked");
+				}
+			};
+			//선택된 개수 출력 (checkBoxList)
+			if (cntId != undefined ) {
+				cntLen =  $("input[name="+$name+"]:checked").length; //체크된 개수
+				if (totLen > cntLen ) {
+					$("#"+cntId).text(cntLen);
+				} else if  (totLen == cntLen ) {
+					$("#"+cntId).text(totLen);
+				};
+			};
+			return false;
+		};
+	});
+
+
+	/* CheckBox List : More(+) 버튼 */
+	$(document).on("click", ".checkBoxList .more", function(){
+		var thisI = $(this).find("i");
+		if( $(thisI).hasClass("fa-plus") ){
+			$(this).parent().addClass("on");
+			$(thisI).removeClass("fa-plus").addClass("fa-minus");
+		} else {
+			$(this).parent().removeClass("on");
+			$(thisI).removeClass("fa-minus").addClass("fa-plus");
+		}
+	});
+
+	/* Multi CheckBox - 다중선택 체크박스 */
+	$(document).on("click", ".multiCheckBox .sltBtn", function(){
+		if($(this).hasClass("on")){
+			$(this).removeClass("on");
+			$(this).parent().find("ul").css({display:"none"});
+		}else{
+			$(".multiCheckBox .sltBtn").removeClass("on");
+			$(".multiCheckBox ul").css({display:"none"});
+			$(this).addClass("on");
+			$(this).parent().find("ul").css({display:"block"});
+		}
+	});
+
+	//햄버거버튼 : LNB 숨김(전체화면 보기)
+	$(document).on("click",".lnbClose",function(){
+		lnbToggle();
+	});
+
+	//GNB Memu
+	$(document).on("click",".header-menu .menu a",function(){
+		$(".header-menu .menu a").removeClass("on");
+		$(this).addClass("on");
+		var menuIdx = $(this).parent("span").index()+1;
+		$("#lnb"+menuIdx).addClass("on");
+		if( !$("#lnb-wrapper").hasClass("on") ){
+			lnbToggle(); // LNB Open
+		};
+	});
+
+	//LNB 서브메뉴 보기 : dep2
+	$(document).on("click",".dep2",function(){
+		if ($(this).hasClass("on")){	//활성화된 상태
+			$(this).removeClass("on");
+			$(this).next(".dep3").slideUp(200).removeClass("on");
+		} else {						//비활성화된 상태
+			$(this).addClass("on");
+			$(this).next(".dep3").slideDown(200).addClass("on");
+		};
+	});
+
+	//LNB 서브메뉴 보기 : dep3
+	$(document).on("click", ".dep3 > li > a", function(){
+		if ($(this).hasClass("on")==false){
+			$(".dep3 > li > a").removeClass("on");
+			$(this).addClass("on");
+		};
+	});
+
+	//다중셀렉박스 리스트 보이기,감추기
+	$(document).on("click", ".mSelected", function(){
+		$(this).find(".srchFld input").focus();
+	});
+	$(document).on("focusin", ".srchFld input", function(){
+		$(this).parents(".mSelected").next(".mSelecting").css({display:'block'});
+	});
+	$(document).on("focusout", ".mSelectBox", function(){
+		$(this).find(".mSelecting").slideUp(50);
+	});
+	//다중셀렉박스 리스트
+	$(document).on("mousedown", ".mSelectWrap .mSelecting ul li", function(){
+		if ( $(this).hasClass("deselect")==false ){
+			var dataIdx = $(this).attr("data-index");
+			var movePos = $(this).parents(".mSelecting").prev(".mSelected").find(".srchFld");
+			$(this).parents(".mSelecting").prev(".mSelected").find("li[data-index="+dataIdx+"]").removeClass("off").insertBefore(movePos);
+			$(this).parents(".mSelectWrap").find("select option[data-index="+dataIdx+"]").prop("selected", true);
+			$(".mSelecting").slideUp(50);
+			$(this).addClass("off");
+			return false;
+		};
+	});
+	//다중셀렉박스 닫기
+	$(document).on("click", ".mSelectWrap .mSelected li a", function(){
+		var dataIdx = $(this).parent("li").attr("data-index");
+		$(this).parents(".mSelected").next(".mSelecting").find("ul li[data-index="+dataIdx+"]").removeClass("off")
+		$(this).parents(".mSelectWrap").find("select option[data-index="+dataIdx+"]").prop("selected", false);
+		$(this).parent("li").addClass("off")
+		return false;
+	});
+
+	//TABS
+	$(document).on("click", ".tabs .tabsNav li", function(e){
+		e.preventDefault();
+		if ( !$(this).hasClass("on") ) {
+			let contIdx = $(this).index();
+			let pTab = $(this).parents(".tabs");
+			let thisTop = $(window).scrollTop();
+			pTab.find(".tabsNav li").removeClass("on");
+			pTab.find(".tabsCont > li").removeClass("on");
+			$(this).addClass("on");
+			pTab.find(".tabsCont > li").eq(contIdx).addClass("on");
+			$('html, body').animate({scrollTop:thisTop}, 'fast');
+		}
+	});
+
+	//TABSJR : 탭 하위 탭스
+	$(document).on("click", ".tabsJr .tabsJrNav li", function(e){
+		e.preventDefault();
+		if ( !$(this).hasClass("on") ) {
+			let contIdx = $(this).index();
+			let pTab = $(this).parents(".tabsJr");
+			let thisTop = $(window).scrollTop();
+			pTab.find(".tabsJrNav li").removeClass("on");
+			pTab.find(".tabsJrCont > li").removeClass("on");
+			$(this).addClass("on");
+			pTab.find(".tabsJrCont > li").eq(contIdx).addClass("on");
+			$('html, body').animate({scrollTop:thisTop}, 'fast');
+		}
+	});
+
+	//SORTABLE LIST
+	if ( $("#sortable").length > 0 ) {
+		var mainW = $("#main").width();
+		if ( $("#sortable").hasClass("sortable1") ) {
+			mainW =  ((mainW / 1) / mainW) * 100 ;
+		};
+		if ( $("#sortable").hasClass("sortable2") ) {
+			mainW =  ((mainW / 2) / mainW) * 100 ;
+		};
+		if ( $("#sortable").hasClass("sortable3") ) {
+			mainW =  ((mainW / 3) / mainW) * 100 ;
+		};
+		if ( $("#sortable").hasClass("sortable4") ) {
+			mainW =  ((mainW / 4) / mainW) * 100 ;
+		};
+		$(".secCell").css({"width":mainW +'%'});
+	};
+	$("#sortable").sortable();
+	$("#sortable").disableSelection();
+
+	//파일선택
+	$(document).on("change",".uFileInput", function() {
+		let fileName = $(this).val().split('\\').pop();
+		$(this).next('.uFileLabel').addClass("selected").html(fileName);
+	});
+
+	//베너 그룹 Up & Down
+	$(document).on("click",".groupBtn", function() {
+		var $gId = $(this).attr("id");
+		var $gIcn = $(this).find("i");
+		if ( $("table[data-child="+$gId+"]").hasClass("off") ){
+			$("table[data-child="+$gId+"]").removeClass("off");
+			$gIcn.attr("class","fa fa-chevron-down");
+		} else  {
+			$("table[data-child="+$gId+"]").addClass("off");
+			$gIcn.attr("class","fa fa-chevron-up");
+		};
+	});
+
+	//비디오팝업 배경 클릭시 닫기
+	$(document).on("click",".videoClose", function() {
+		var vId = $(this).attr("id");
+		$("#"+vId).css({display:"none"});
+		$("#"+vId).find("iframe").attr("src","");
+	});
+
+	//상단이동 버튼
+	$(document).on("click","#btnTop", function() {
+		$('html, body').animate({scrollTop:'0'}, 200);
+	});
+
+	//다중셀렉트박스 포커스인(접근성)
+	$(document).on("focusin",".srchFld", function() {
+		$(this).parents(".mSelectBox").addClass("outline");
+	});
+	//다중셀렉트박스 포커스아웃(접근성)
+	$(document).on("focusout",".srchFld", function() {
+		$(this).parents(".mSelectBox").removeClass("outline");
+	});
+
+	//패널영역 줄이기
+	$(document).on("click",".panelControl .fa-chevron-up", function() {
+		$(this).parents(".panelStyle").find(".panelContent").slideUp(100);
+		$(this).attr("class","fa fa-chevron-down");
+	});
+	//패널영역 펼치기
+	$(document).on("click",".panelControl .fa-chevron-down", function() {
+		$(this).parents(".panelStyle").find(".panelContent").slideDown(100);
+		$(this).attr("class","fa fa-chevron-up");
+	});
+
+	//패널영역 감추기
+	$(document).on("click",".panelControl .fa-times", function() {
+		$(this).parents(".panelStyle").fadeOut(100);
+	});
+
+
+	//Date Picker Start -----------------------------------------------------------
+	function initDatePickers() {
+		// datepicker Korean option
+		$.datepicker.regional['ko'] = {
+			monthNames: ['1월', '2월', '3월', '4월', '5월', '6월', '7월', '8월', '9월', '10월', '11월', '12월'],
+			monthNamesShort: ['1월', '2월', '3월', '4월', '5월', '6월', '7월', '8월', '9월', '10월', '11월', '12월'],
+			dayNames: ['일', '월', '화', '수', '목', '금', '토'],
+			dayNamesShort: ['일', '월', '화', '수', '목', '금', '토'],
+			dayNamesMin: ['일', '월', '화', '수', '목', '금', '토'],
+			dateFormat: 'yy-mm-dd',
+			firstDay: 1,
+			//isRTL: false,
+			//duration: 200,
+			//showAnim: 'show',
+			showMonthAfterYear: true,
+			yearSuffix: '년 ',
+			prevText: '이전달',
+			nextText: '다음달',
+			//showButtonPanel: true,
+			//currentText: '오늘',
+			//closeText: '닫기',
+			showOn: 'both',
+			buttonImage:'image/btn_calendar.png'
+			//,buttonImageOnly: true
+		};
+		$.datepicker.setDefaults($.datepicker.regional['ko']);
+		$('.schDate').datepicker({
+			changeMonth: true,
+			changeYear: true,
+			defaultDate: $('.schDate').val()
+		});
+		// monthpicker and year selector start/end year (10 year ago)
+		var currentYear = (new Date()).getFullYear();
+		var startYear = currentYear - 10;
+		var finalYear = currentYear + 10;
+		var options = {
+			startYear: startYear,
+			finalYear: finalYear,
+			pattern: 'yyyy-mm',
+			monthNames: ['1월', '2월', '3월', '4월', '5월', '6월', '7월', '8월', '9월', '10월', '11월', '12월']
+		};
+		$('.schMonth').monthpicker(options);
+		// make year selector
+		for (var i = finalYear; i >= startYear; i--) {
+			if (currentYear == i ) {
+				$(".schYear").append("<option value='" + i + "' selected class='ui-state-highlight'>" + i + "</option>");
+			} else {
+				$('.schYear').append("<option value='" + i + "'>" + i + "</option>");
+			}
+		}
+	};
+	$(function() {
+		(function($) {
+			var methods = {
+				init: function(options) {
+					return this.each(function() {
+						var $this = $(this),
+							data = $this.data('monthpicker'),
+							year = (options && options.year) ? options.year : (new Date()).getFullYear(),
+							settings = $.extend({
+								pattern: 'yyyy-mm',
+								selectedMonth: null,
+								selectedMonthName: '',
+								selectedYear: year,
+								startYear: year - 10,
+								finalYear: year + 10,
+								monthNames: ['1월', '2월', '3월', '4월', '5월', '6월', '7월', '8월', '9월', '10월', '11월', '12월'],
+								id: "monthpicker_" + (Math.random() * Math.random()).toString().replace('.', ''),
+								openOnFocus: true,
+								disabledMonths: []
+							}, options);
+						settings.dateSeparator = settings.pattern.replace(/(mmm|mm|m|yyyy|yy|y)/ig, '');
+						// If the plugin hasn't been initialized yet for this element
+						if (!data) {
+							$(this).data('monthpicker', {
+								'target': $this,
+								'settings': settings
+							});
+							if (settings.openOnFocus === true) {
+								$this.on('focus', function() {
+									$this.monthpicker('show');
+								});
+							}
+							$this.monthpicker('parseInputValue', settings);
+							$this.monthpicker('mountWidget', settings);
+							$this.on('monthpicker-click-month', function(e, month, year) {
+								$this.monthpicker('setValue', settings);
+								$this.monthpicker('hide');
+							});
+							// hide widget when user clicks elsewhere on page
+							$this.addClass("mtz-monthpicker-widgetcontainer");
+							$(document).unbind("mousedown.mtzmonthpicker").on("mousedown.mtzmonthpicker", function(e) {
+								if (!e.target.className || e.target.className.toString().indexOf('mtz-monthpicker') < 0) {
+									$(this).monthpicker('hideAll');
+								}
+							});
+						}
+					});
+				},
+				show: function() {
+					$(this).monthpicker('hideAll');
+					var widget = $('#' + this.data('monthpicker').settings.id);
+					widget.css("top", this.offset().top + this.outerHeight());
+					if ($(window).width() > (widget.width() + this.offset().left)) {
+						widget.css("left", this.offset().left);
+					} else {
+						widget.css("left", this.offset().left - widget.width());
+					}
+					widget.show();
+					//widget.find('select').focus();
+					this.trigger('monthpicker-show');
+				},
+				hide: function() {
+					var widget = $('#' + this.data('monthpicker').settings.id);
+					if (widget.is(':visible')) {
+						widget.hide();
+						this.trigger('monthpicker-hide');
+					}
+				},
+				hideAll: function() {
+					$(".mtz-monthpicker-widgetcontainer").each(function() {
+						if (typeof($(this).data("monthpicker")) != "undefined") {
+							$(this).monthpicker('hide');
+						}
+					});
+				},
+				setValue: function(settings) {
+					var month = settings.selectedMonth,
+						year = settings.selectedYear;
+					if (settings.pattern.indexOf('mmm') >= 0) {
+						month = settings.selectedMonthName;
+					} else if (settings.pattern.indexOf('mm') >= 0 && settings.selectedMonth < 10) {
+						month = '0' + settings.selectedMonth;
+					};
+					if (settings.pattern.indexOf('yyyy') < 0) {
+						year = year.toString().substr(2, 2);
+					};
+					if (settings.pattern.indexOf('y') > settings.pattern.indexOf(settings.dateSeparator)) {
+						this.val(month + settings.dateSeparator + year);
+					} else {
+						this.val(year + settings.dateSeparator + month);
+					};
+					this.change();
+				},
+				disableMonths: function(months) {
+					var settings = this.data('monthpicker').settings,
+						container = $('#' + settings.id);
+					settings.disabledMonths = months;
+					container.find('.mtz-monthpicker-month').each(function() {
+						var m = parseInt($(this).data('month'));
+						if ($.inArray(m, months) >= 0) {
+							$(this).addClass('ui-state-disabled');
+						} else {
+							$(this).removeClass('ui-state-disabled');
+						}
+					});
+				},
+				mountWidget: function(settings) {
+					var monthpicker = this,
+						container = $('<div id="' + settings.id + '" class="ui-datepicker ui-widget ui-widget-content ui-helper-clearfix ui-corner-all" />'),
+						header = $('<div class="ui-datepicker-header ui-widget-header ui-helper-clearfix ui-corner-all mtz-monthpicker" />'),
+						combo = $('<select class="mtz-monthpicker mtz-monthpicker-year" />'),
+						table = $('<table class="mtz-monthpicker" />'),
+						tbody = $('<tbody class="mtz-monthpicker" />'),
+						tr = $('<tr class="mtz-monthpicker" />'),
+						td = '',
+						selectedYear = settings.selectedYear,
+						option = null,
+						attrSelectedYear = $(this).data('selected-year'),
+						attrStartYear = $(this).data('start-year'),
+						attrFinalYear = $(this).data('final-year'),
+						currYear = date.getFullYear();
+						currMonth = date.getMonth()+1;
+					if (attrSelectedYear) {
+						settings.selectedYear = attrSelectedYear;
+					}
+					if (attrStartYear) {
+						settings.startYear = attrStartYear;
+					}
+					if (attrFinalYear) {
+						settings.finalYear = attrFinalYear;
+					}
+					container.css({
+						position: 'absolute',
+						//zIndex: 999999,
+						whiteSpace: 'nowrap',
+						//width: '250px',
+						overflow: 'hidden',
+						textAlign: 'center',
+						display: 'none',
+						top: monthpicker.offset().top + monthpicker.outerHeight(),
+						left: monthpicker.offset().left
+					});
+					combo.on('change', function() {
+						var months = $(this).parent().parent().find('td[data-month]');
+						months.removeClass('ui-state-highlight');
+						months.removeClass('ui-state-active');
+						if ($(this).val() == settings.selectedYear) {
+							months.filter('td[data-month=' + settings.selectedMonth + ']').addClass('ui-state-active');
+						}
+						//alert($(this).val() +','+ currYear);
+						if ($(this).val() == currYear)  {
+							months.filter('td[data-month=' + currMonth + ']').addClass('ui-state-highlight');
+						}
+						monthpicker.trigger('monthpicker-change-year', $(this).val());
+					});
+					// mount years combo
+					for (var i = settings.startYear; i <= settings.finalYear; i++) {
+						var option = $('<option class="mtz-monthpicker" />').attr('value', i).append(i);
+						if (settings.selectedYear == i) {
+							option.attr('selected', 'selected');
+						}
+						combo.append(option);
+					}
+					header.append(combo).appendTo(container);
+					header.append('년').appendTo(container);
+					// mount months table
+					for (var i = 1; i <= 12; i++) {
+						td = $('<td class="ui-state-default mtz-monthpicker mtz-monthpicker-month"/>').attr('data-month', i);
+						if (settings.selectedMonth == i) {
+							td.addClass('ui-state-active');
+						}
+						if (settings.selectedYear == currYear && settings.selectedMonth == i) {
+							td.addClass('ui-state-highlight');
+						}
+						td.append(settings.monthNames[i - 1]);
+						tr.append(td).appendTo(tbody);
+						if (i % 3 === 0) {
+							tr = $('<tr class="mtz-monthpicker" />');
+						}
+					}
+					tbody.find('.mtz-monthpicker-month').on('click', function() {
+						var m = parseInt($(this).data('month'));
+						if ($.inArray(m, settings.disabledMonths) < 0) {
+							settings.selectedYear = $(this).closest('.ui-datepicker').find('.mtz-monthpicker-year').first().val();
+							settings.selectedMonth = $(this).data('month');
+							settings.selectedMonthName = $(this).text();
+							monthpicker.trigger('monthpicker-click-month', $(this).data('month'));
+							$(this).closest('table').find('.ui-state-active').removeClass('ui-state-active');
+							$(this).addClass('ui-state-active');
+						}
+					});
+					table.append(tbody).appendTo(container);
+					container.appendTo('body');
+				},
+				destroy: function() {
+					return this.each(function() {
+						$(this).removeClass('mtz-monthpicker-widgetcontainer').unbind('focus').removeData('monthpicker');
+					});
+				},
+				getDate: function() {
+					var settings = this.data('monthpicker').settings;
+					if (settings.selectedMonth && settings.selectedYear) {
+						return new Date(settings.selectedYear, settings.selectedMonth - 1);
+					} else {
+						return null;
+					}
+				},
+				parseInputValue: function(settings) {
+					if (this.val()) {
+						if (settings.dateSeparator) {
+							var val = this.val().toString().split(settings.dateSeparator);
+							if (settings.pattern.indexOf('m') === 0) {
+								settings.selectedMonth = val[0];
+								settings.selectedYear = val[1];
+							} else {
+								settings.selectedMonth = val[1];
+								settings.selectedYear = val[0];
+							}
+						}
+					}
+				}
+			};
+			$.fn.monthpicker = function(method) {
+				if (methods[method]) {
+					return methods[method].apply(this, Array.prototype.slice.call(arguments, 1));
+				} else if (typeof method === 'object' || !method) {
+					return methods.init.apply(this, arguments);
+				} else {
+					$.error('Method ' + method + ' does not exist on jQuery.mtz.monthpicker');
+				}
+			};
+		})(jQuery);
+		Date.prototype.yyyymmdd = function() {
+			var mm = this.getMonth() + 1; // getMonth() is zero-based
+			var dd = this.getDate();
+
+			return [this.getFullYear(),
+							(mm>9 ? '' : '0') + mm,
+							(dd>9 ? '' : '0') + dd
+						 ].join('-');
+		};
+		var date = new Date();
+		var schDate = date.yyyymmdd();
+		$('.schDate').val(schDate);
+		$('.schMonth').val(schDate.substr(0,7));
+		initDatePickers();
+	});
+
+	//년-월
+	$(".schBtn").on('click', function () {
+		var thisId= $(this).attr("data-id");
+		$('#'+thisId).monthpicker('show');
+	});
+	//Date Picker End-----------------------------------------------------------
+
+
+
+
+
+
+
+
+
 });