/* BASIC css start */
/* =========================================
   MO 회원가입 : 약관 동의 (FOLDER 톤)
   ========================================= */
hr, caption, legend{display:none;}
#container{font-size:15px;}
#join{padding:32px 16px 0; color:#000;}

/* 상단 제목 + 단계 */
#join .join_head{text-align:center; margin-bottom:22px;}
#join .join_head h2{font-size:24px; font-weight:800; letter-spacing:-0.5px; margin:0 0 14px;}
#join .join_step{display:flex; justify-content:center; padding:0; margin:0; list-style:none;}
#join .join_step li{position:relative; display:flex; align-items:center; gap:5px; font-size:13px; font-weight:500; color:#bbb; padding:0 16px;}
#join .join_step li+li:before{content:""; position:absolute; left:-5px; top:50%; width:10px; height:1px; background:#ddd;}
#join .join_step li em{font-style:normal; font-size:11px; font-weight:700;}
#join .join_step li.on{color:#000; font-weight:700;}

/* 가입 혜택 */
#join .join_benefit{background:#f6f6f6; border-radius:10px; padding:16px 18px; margin-bottom:20px;}
#join .join_benefit em{display:block; font-style:normal; font-size:10px; font-weight:700; letter-spacing:1px; color:#999; margin-bottom:6px;}
#join .join_benefit b{display:block; font-size:16px; font-weight:700; line-height:1.4;}
#join .join_benefit strong{color:#e60012;}
#join .join_benefit small{display:block; font-size:12px; color:#777; margin-top:3px;}

/* 공통 체크박스 */
#join input[type="checkbox"]{width:20px; height:20px; margin:0; vertical-align:middle; accent-color:#000; cursor:pointer;}

/* 전체 동의 */
#join .form-terms{margin:0; padding:0;}
#join .all-chk{margin:0; padding:0; border:none;}
#join .all-chk .chk-box{border:1.5px solid #000 !important; border-radius:10px; padding:0; background:#fff;}
#join .all-chk .chk-box h4{display:flex; align-items:center; justify-content:space-between; margin:0; padding:16px 18px; font-size:16px; font-weight:700;}
#join .all-chk .chk-box h4 strong{font-weight:700;}
#join .all-chk .chk-box h4 .privercy-chk{display:flex; align-items:center;}
#join .all-chk .chk-box h4 input[type="checkbox"]{width:22px; height:22px;}
#join .all-chk .txt-desc{padding:10px 2px 0; border:none;}
#join .all-chk .txt-desc ul{margin:0; padding:0; list-style:none;}
#join .all-chk .txt-desc li{position:relative; padding-left:10px; font-size:12px; line-height:1.6; color:#999; margin-bottom:2px;}
#join .all-chk .txt-desc li:before{content:"·"; position:absolute; left:0; top:0;}

/* 약관 목록 (메이크샵 기본 접기/펼치기) */
#join #join_terms{margin-top:20px; padding:0; border-top:none;}

/* 하단 고정 버튼 */
#join .btn-agree{position:sticky; bottom:0; z-index:20; margin:24px -16px 0; padding:12px 16px calc(12px + env(safe-area-inset-bottom)); background:#fff; box-shadow:0 -4px 12px rgba(0,0,0,.06);}
#join .btn-agree a{display:block; margin:0; padding:17px 0; background:#000; border-radius:10px; color:#fff !important; text-align:center; font-size:16px; font-weight:700; letter-spacing:-0.3px;}

/* ---- 아래는 기존(구버전 약관·팝업) 스타일 유지 ---- */
#join .desc-3{border:1px solid #909090;}
#join .desc{position:relative; background-color:#fff; padding:20px 10px 10px 10px; margin:0 5px;}
#join .desc .open-pop{position:absolute; right:10px; top:18px; border:1px solid #c7c7c7; padding:2px 10px; float:right;}
#join .desc h3{font-weight:bold; padding:3px 0;}
#join .agree-2{padding-left:10px; background-color:#fff; margin:0 5px;}
#layerTermsWrap, #layerPrivercyWrap, #layerThirdPartyWrap, #layerTrustWrap{display:none;}
#layerTermsWrap .txt, #layerPrivercyWrap .txt, #layerThirdPartyWrap .txt, #layerTrustWrap .txt{padding:15px 10px;}
#join .desc h3.none-line{border-bottom:none;}
#join .privercy-contract-tap{position:relative; border-left:1px solid #cacaca;}
#join .privercy-contract-tap li{list-style-type:none; border-top:1px solid #cacaca; border-right:1px solid #CACACA; background-color:#f4f4f4; display:block; float:left; line-height:27px; text-align:center; width:33%; height:28px; margin-bottom:-1px;}
#join .privercy-contract-tap li.sel{background-color:#fff; border-bottom:1px solid #fff;}
#join .privercy-contract-tap li a{text-align:center; padding:0; display:block; color:#787878; width:100%; height:100%;}
#join .tab-content{border:1px solid #cacaca;}
#join .tab-content .privercy-contract{padding:10px;}
#join .tab-content .privercy-contract p{line-height:1.5em; width:100%; height:55px; margin:0; padding:0; border:none; overflow-y:hidden;}
.layer-pop-join{position:absolute; left:0; top:0; z-index:101; width:100%; min-height:100%; background-color:#fff;}
.layer-pop-join h3{white-space:nowrap; padding-left:15px; padding-right:10%; overflow:hidden; text-overflow:ellipsis; background-color:#efefef; margin:0; min-height:30px; line-height:1.5em; padding-top:7px; font-weight:bold;}
#join .pd10{background-color:#fff; padding-top:20px; margin-top:20px;}
#join .pd10 .btn_Red{margin-bottom:10px;}
#join .layer .layer-pop{display:block;}
#join .layer-pop{width:100%; min-height:100%; z-index:3; position:absolute; left:0; top:0; background:rgba(60,60,60,0.8); display:none;}
#join .layer-pop table{width:100%;}
#join .layer-pop #layerTerms{width:90%; background-color:#fff; position:relative; box-shadow:0px 1px 10px #494949; margin:80px auto;}
#join .layer-pop h3{background-color:#efefef; height:36px; line-height:36px; font-weight:bold; padding:0 10px;}
#join .layer-pop .txt{max-height:300px; overflow-y:auto; padding:10px;}
#join .layer-pop .close,
#join .layer-pop-join .close{width:45px; height:36px; position:absolute; top:0; right:0; background:url("/images/d3/m_04/btn_del_gray@2x.gif") no-repeat center center; background-size:45px 36px; text-indent:-9999px; font-size:0;}

/* 전체 동의 체크박스 : 기존 절대 위치 해제 → 오른쪽 가운데 */
#join .all-chk .chk-box h4{position:relative;}
#join .all-chk .chk-box h4 .privercy-chk,
#join .all-chk .chk-box h4 .privercy-chk label,
#join .all-chk .chk-box h4 .privercy-chk input{position:static !important; top:auto !important; right:auto !important; left:auto !important; margin:0 !important; transform:none !important; float:none !important;}
#join .all-chk .chk-box h4 .privercy-chk label{display:flex; align-items:center;}

/* 들여쓰기 제거 : 혜택 박스와 좌우 폭 맞춤 */
#join .privercy,
#join .form-terms,
#join .all-chk,
#join #join_terms{padding-left:0 !important; padding-right:0 !important; margin-left:0 !important; margin-right:0 !important;}
#join #join_terms > *{margin-left:0 !important; margin-right:0 !important;}

/* 전체 동의 박스 · 약관 박스 좌우 여백 제거 */
#join .all-chk .chk-box,
#join .all-chk .txt-desc,
#join #join_terms div{margin-left:0 !important; margin-right:0 !important;}
#join .all-chk .txt-desc{padding-left:2px !important; padding-right:2px !important;}


/* BASIC css end */

