/* BASIC css start */
/* =========================================
   2026 TAVALON MOBILE
   È¸¿ø°¡ÀÔ - ¾à°üµ¿ÀÇ
========================================= */

#join {
    width: 100%;
    padding: 0 5% 70px;
    box-sizing: border-box;
    color: #222;
    font-family: "Noto Sans KR", sans-serif;
}

#join *,
#join *::before,
#join *::after {
    box-sizing: border-box;
}


/* =========================================
   TITLE
========================================= */

#join .h_title {
    padding: 15px 0;
    text-align: left;
}

#join .h_title h3 {
    margin: 0;
    padding: 0;
    font-size: 24px;
    line-height: 1.4;
    font-weight: 700;
    color: #222;
}


/* =========================================
   STEP
========================================= */

#join .privercy .sequence {
    width: 100%;
    height: auto;
    margin: 24px 0 4px;
    padding: 0;
    text-align: center;
}

#join .privercy .sequence ol {
    display: flex;
    align-items: flex-start;
    justify-content: center;
    width: 100%;
    margin: 0;
    padding: 0;
    list-style: none;
}

#join .privercy .sequence li {
    position: relative;
    flex: 1;
    display: block;
    margin: 0;
    padding: 34px 2px 0;
    font-size: 12px;
    line-height: 1.4;
    font-weight: 400;
    color: #aaa;
    text-align: center;
}


/* ±âÁ¸ Font Awesome ¾ÆÀÌÄÜ ¼û±è */

#join .privercy .sequence li .fa-stack {
    display: none;
}


/* STEP ¼ýÀÚ */

#join .privercy .sequence li::before {
    position: absolute;
    top: 4px;
    left: 50%;
    z-index: 2;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 22px;
    height: 22px;
    transform: translateX(-50%);
    border: 1px solid #ccc;
    border-radius: 50%;
    background: #fff;
    font-size: 11px;
    line-height: 1;
    font-weight: 500;
    color: #aaa;
}


/* STEP ¿¬°á¼± */

#join .privercy .sequence li::after {
    content: "";
    position: absolute;
    top: 14px;
    left: calc(50% + 15px);
    width: calc(100% - 30px);
    height: 1px;
    background: #ddd;
}

#join .privercy .sequence li:last-child::after {
    display: none;
}


/* STEP ¹øÈ£ */

#join .privercy .sequence li:nth-child(1)::before {
    content: "1";
}

#join .privercy .sequence li:nth-child(2)::before {
    content: "2";
}

#join .privercy .sequence li:nth-child(3)::before {
    content: "3";
}

#join .privercy .sequence li:nth-child(4)::before {
    content: "4";
}


/* ÇöÀç STEP */

#join .privercy .sequence li.now {
    color: #222;
    font-weight: 600;
}

#join .privercy .sequence li.now::before {
    border-color: #222;
    background: #222;
    color: #fff;
}


/* =========================================
   ÀüÃ¼ ¾à°ü µ¿ÀÇ
========================================= */

#join .form-terms {
    width: 100%;
    margin: 0;
}

#join .all-chk {
    width: 100%;
    margin: 0;
    padding: 0 18px;
    border: 1px solid #222;
    border-radius: 6px;
    background: #fff;
}


/* =========================================
   ÀüÃ¼µ¿ÀÇ »ó´Ü
========================================= */

#join .all-chk .chk-box {
    width: 100% !important;
    margin: 0 !important;
    padding: 20px 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: none !important;
}

#join .all-chk .chk-box h4 {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    min-height: 24px;
    margin: 0;
    padding: 0 34px;
}


/* ÀüÃ¼µ¿ÀÇ ¹®±¸ */

#join .all-chk .chk-box strong {
    display: block;
    width: 100%;
    margin: 0;
    padding: 0;
    font-size: 16px;
    line-height: 24px;
    font-weight: 700;
    color: #222;
    text-align: center;
}


/* ÀüÃ¼µ¿ÀÇ Ã¼Å©¹Ú½º */

#join .all-chk .privercy-chk {
    position: absolute;
    top: 50%;
    right: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0;
    padding: 0;
    transform: translateY(-50%);
}

#join .all-chk .privercy-chk label {
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0;
    padding: 0;
}

#join .all-chk .privercy-chk input[type="checkbox"] {
    width: 20px;
    height: 20px;
    margin: 0;
    accent-color: #222;
}


/* =========================================
   ÀüÃ¼µ¿ÀÇ ¾È³»¹®
========================================= */

#join .all-chk .txt-desc {
    width: 100%;
    margin: 0;
    padding: 14px 0 18px;
    border-top: 1px solid #eee;
}

#join .all-chk .txt-desc ul {
    width: 100%;
    margin: 0;
    padding: 0;
    list-style: none;
}

#join .all-chk .txt-desc li {
    position: relative;
    margin: 4px 0 0;
    padding: 0 0 0 10px;
    font-size: 12px;
    line-height: 1.7;
    font-weight: 400;
    color: #777;
    word-break: keep-all;
}

#join .all-chk .txt-desc li:first-child {
    margin-top: 0;
}

#join .all-chk .txt-desc li::before {
    content: "";
    position: absolute;
    top: 9px;
    left: 0;
    width: 3px;
    height: 3px;
    border-radius: 50%;
    background: #aaa;
}


/* =========================================
   CHECKBOX
========================================= */

#join input[type="checkbox"] {
    width: 20px;
    height: 20px;
    margin: 0;
    accent-color: #222;
    vertical-align: middle;
}


/* =========================================
   °³º° ¾à°ü ¿µ¿ª
========================================= */

#join #join_terms {
    width: 100%;
    margin-top: 18px;
    border-top: 1px solid #222;
}


/* MakeShop new_privacy_terms ³»ºÎ ±¸Á¶ ´ëÀÀ */

#join #join_terms > div {
    width: 100%;
}

#join #join_terms dl,
#join #join_terms ul,
#join #join_terms p {
    margin: 0;
    padding: 0;
}

#join #join_terms li {
    list-style: none;
}


/* °³º° ¾à°ü Çà */

#join #join_terms .agree,
#join #join_terms .terms,
#join #join_terms .privacy,
#join #join_terms .privacy-box,
#join #join_terms > div > div {
    border-bottom: 1px solid #e5e5e5;
}


/* °³º° ¾à°ü ÅØ½ºÆ® */

#join #join_terms label {
    font-size: 14px;
    line-height: 1.5;
    color: #333;
}

#join #join_terms a {
    color: #777;
    text-decoration: none;
}

#join #join_terms input[type="checkbox"] {
    width: 18px;
    height: 18px;
    margin-right: 7px;
}


/* =========================================
   µ¿ÀÇÇÏ°í °¡ÀÔÇÏ±â
========================================= */

#join .btn-agree {
    width: 100%;
    margin-top: 32px;
}

#join .btn-agree a {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 54px;
    margin: 0;
    padding: 0;
    border: 1px solid #222;
    border-radius: 0;
    background: #222;
    color: #fff;
    text-align: center;
    text-decoration: none;
    font-family: "Noto Sans KR", sans-serif;
    font-size: 15px;
    line-height: 1;
    font-weight: 600;
    letter-spacing: 0;
}

#join .btn-agree a span {
    display: block;
}


/* =========================================
   ±¸¹öÀü ¾à°ü
========================================= */

#join .desc {
    position: relative;
    width: 100%;
    margin: 20px 0 0;
    padding: 0;
    background: #fff;
}

#join .desc h3 {
    margin: 0;
    padding: 0 0 12px;
    border-bottom: 1px solid #222;
    font-size: 15px;
    line-height: 1.5;
    font-weight: 600;
    color: #222;
}

#join .desc h3.none-line {
    border-bottom: 1px solid #222;
}

#join .desc-3 {
    width: 100%;
    height: 130px;
    margin-top: 12px;
    padding: 14px;
    overflow-y: auto;
    border: 1px solid #ddd;
    background: #fafafa;
    font-size: 12px;
    line-height: 1.65;
    color: #666;
}

#join .desc .open-pop {
    position: absolute;
    top: 0;
    right: 0;
    float: none;
    padding: 2px 0;
    border: 0;
    background: none;
    font-size: 12px;
    line-height: 1.5;
    color: #777;
    text-decoration: underline;
    text-underline-offset: 3px;
}


/* =========================================
   ±¸¹öÀü µ¿ÀÇ ¿µ¿ª
========================================= */

#join .agree-2 {
    width: 100%;
    margin: 10px 0 0;
    padding: 0;
    background: #fff;
}

#join .agree-2 p {
    margin: 0;
    padding: 0;
    font-size: 13px;
    line-height: 1.5;
    color: #444;
}

#join .agree-2 label {
    margin-right: 15px;
}


/* =========================================
   °³ÀÎÁ¤º¸ ÅÇ
========================================= */

#join .privercy-contract-tap {
    position: relative;
    width: 100%;
    margin-top: 12px;
    border-left: 1px solid #ddd;
}

#join .privercy-contract-tap ul {
    display: flex;
    width: 100%;
    margin: 0;
    padding: 0;
}

#join .privercy-contract-tap li {
    flex: 1;
    display: block;
    width: auto;
    height: 40px;
    margin: 0;
    border-top: 1px solid #ddd;
    border-right: 1px solid #ddd;
    border-bottom: 1px solid #ddd;
    background: #f7f7f7;
    list-style: none;
    line-height: 40px;
    text-align: center;
}

#join .privercy-contract-tap li.sel {
    border-bottom-color: #fff;
    background: #fff;
}

#join .privercy-contract-tap li a {
    display: block;
    width: 100%;
    height: 100%;
    padding: 0;
    font-size: 11px;
    color: #777;
    text-align: center;
    text-decoration: none;
}

#join .privercy-contract-tap li.sel a {
    color: #222;
    font-weight: 600;
}

#join .tab-content {
    border: 1px solid #ddd;
    border-top: 0;
}

#join .tab-content .privercy-contract {
    padding: 14px;
}

#join .tab-content .privercy-contract p {
    width: 100%;
    height: 75px;
    margin: 0;
    padding: 0;
    overflow-y: auto;
    border: 0;
    font-size: 12px;
    line-height: 1.65;
    color: #666;
}


/* =========================================
   ±¸¹öÀü ÇÏ´Ü ¹öÆ°
========================================= */

#join .pd10 {
    width: 100%;
    margin-top: 30px;
    padding: 0;
    background: #fff;
}

#join .pd10 a {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 54px;
    box-sizing: border-box;
    font-size: 15px;
    font-weight: 600;
    text-align: center;
    text-decoration: none;
}

#join .pd10 .btn_Red {
    margin: 0 0 10px;
    border: 1px solid #222;
    background: #222;
    color: #fff;
}

#join .pd10 .btn_White {
    border: 1px solid #ccc;
    background: #fff;
    color: #333;
}


/* =========================================
   ±âÁ¸ ±âÅ¸ ¾à°ü ¿µ¿ª
========================================= */

#join .privercy .desc-2 {
    width: 100%;
    margin: 0;
    padding: 20px 0;
    background: #fff;
}

#join .privercy .desc-2 dl {
    margin-bottom: 20px;
}

#join .privercy .btn-txt-view {
    float: right;
    padding: 4px 8px;
    border: 1px solid #ddd;
    font-size: 11px;
    color: #666;
}

#join .privercy .every-agree {
    padding: 15px 0;
    background: #fff;
    font-weight: 600;
    color: #222;
}


/* =========================================
   LAYER POPUP
========================================= */

#layerTermsWrap,
#layerPrivercyWrap,
#layerThirdPartyWrap,
#layerTrustWrap {
    display: none;
}

#layerTermsWrap .txt,
#layerPrivercyWrap .txt,
#layerThirdPartyWrap .txt,
#layerTrustWrap .txt {
    padding: 15px;
}


/* ÆË¾÷ ¹è°æ */

#join .layer-pop {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 1000;
    display: none;
    width: 100%;
    height: 100%;
    min-height: 100%;
    padding: 20px;
    background: rgba(0, 0, 0, 0.45);
}

#join .layer .layer-pop {
    display: block;
}


/* ÆË¾÷ º»Ã¼ */

#join .layer-pop #layerTerms,
#join .layer-pop #layerTerms-A,
#join .layer-pop #layerTerms-B,
#join .layer-pop #layerTerms-C,
#join .layer-pop #layerTerms-D {
    position: relative;
    width: 100%;
    max-height: calc(100vh - 100px);
    margin: 50px auto 0;
    overflow: hidden;
    border-radius: 6px;
    background: #fff;
    box-shadow: none;
}

#join .layer-pop h3 {
    height: 52px;
    margin: 0;
    padding: 0 52px 0 18px;
    border-bottom: 1px solid #eee;
    background: #fff;
    font-size: 16px;
    line-height: 52px;
    font-weight: 600;
    color: #222;
}

#join .layer-pop .txt {
    max-height: calc(100vh - 180px);
    padding: 18px;
    overflow-y: auto;
    font-size: 12px;
    line-height: 1.7;
    color: #555;
}


/* =========================================
   FULL PAGE ¾à°ü ÆË¾÷
========================================= */

.layer-pop-join {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 1001;
    width: 100%;
    height: 100%;
    min-height: 100%;
    overflow-y: auto;
    background: #fff;
    font-family: "Noto Sans KR", sans-serif;
}

.layer-pop-join h3 {
    position: sticky;
    top: 0;
    z-index: 2;
    min-height: 54px;
    margin: 0;
    padding: 0 55px 0 18px;
    overflow: hidden;
    border-bottom: 1px solid #eee;
    background: #fff;
    font-size: 17px;
    line-height: 54px;
    font-weight: 600;
    color: #222;
    white-space: nowrap;
    text-overflow: ellipsis;
}

.layer-pop-join .txt {
    padding: 20px 18px 40px;
    font-size: 12px;
    line-height: 1.7;
    color: #555;
}

.layer-pop-join .btns {
    margin: 25px 0;
    padding: 0 18px;
}

.layer-pop-join .btns .btn-type-03,
.layer-pop-join .btns .btn-type-04 {
    padding: 8px 20px;
}

.layer-pop-join .btns .f-right {
    float: right;
}


/* =========================================
   ÆË¾÷ ´Ý±â
========================================= */

#join .layer-pop .close,
#join .layer-pop-join .close,
.layer-pop-join .close {
    position: absolute;
    top: 0;
    right: 0;
    z-index: 5;
    display: block;
    width: 52px;
    height: 52px;
    background: none;
    color: #222;
    line-height: 52px;
    text-align: center;
    text-indent: -9999px;
    font-size: 0;
}


/* CSS X ¾ÆÀÌÄÜ */

#join .layer-pop .close::before,
#join .layer-pop .close::after,
#join .layer-pop-join .close::before,
#join .layer-pop-join .close::after,
.layer-pop-join .close::before,
.layer-pop-join .close::after {
    content: "";
    position: absolute;
    top: 25px;
    left: 16px;
    width: 20px;
    height: 1px;
    background: #222;
}

#join .layer-pop .close::before,
#join .layer-pop-join .close::before,
.layer-pop-join .close::before {
    transform: rotate(45deg);
}

#join .layer-pop .close::after,
#join .layer-pop-join .close::after,
.layer-pop-join .close::after {
    transform: rotate(-45deg);
}


/* =========================================
   TABLE
========================================= */

#join .layer-pop table,
.layer-pop-join table {
    width: 100%;
    border-collapse: collapse;
}

#join .layer-pop table th,
#join .layer-pop table td,
.layer-pop-join table th,
.layer-pop-join table td {
    padding: 8px;
    border: 1px solid #ddd;
    font-size: 11px;
    line-height: 1.5;
    vertical-align: top;
}


/* =========================================
   RESET
========================================= */

#join hr,
#join caption,
#join legend {
    display: none;
}
/* BASIC css end */

