@import url('https://cdn.jsdelivr.net/gh/orioncactus/pretendard/dist/web/static/pretendard.css');

* { 
    font-family: Pretendard, -apple-system, BlinkMacSystemFont, system-ui, Roboto, 'Helvetica Neue', 'Segoe UI', 'Apple SD Gothic Neo', 'Noto Sans KR', 'Malgun Gothic', sans-serif;

    word-break: keep-all;
}
html {
    font-size: 10px;
    -webkit-text-size-adjust: 100%; /* iOS Safari 자동 텍스트 확대 방지 */
    text-size-adjust: 100%;
}
body{
    height: 100%;
    touch-action: pan-y;
}

*::-webkit-scrollbar {
    width: 8px;
}

*::-webkit-scrollbar-thumb {
    background-color: #ccc;
    border-radius: 10px;
}

*::-webkit-scrollbar-track {
    background-color: transparent;
    border-radius: 10px;
}

.js-btn-link {
  -webkit-touch-callout: none;
}

.js-btn-link[href] {
  pointer-events: none; /* 실수로 남은 href도 실제 링크로 동작 못하게 */
}

body.type-device.layerON{
    /* position: fixed !important; */
    /* height: calc((var(--vh, 1vh) * 50) - 0px) !important; */
    overflow: hidden !important;
    pointer-events: none !important;
    -webkit-touch-callout: none;
    -webkit-user-select:none !important;
}
body.type-device.layerON .popupItem{
    pointer-events:auto !important ;
}

body.type-device.layerON #fullpage{
    touch-action: none;
}
body{
    background-color: #111;
    height: calc((var(--vh, 1vh) * 100) - 0px);
    overflow: hidden;
}
body > .wrap{
    background-color: #f5f5f5;
    width: 100%;
    height: 100%;
    /* max-width: 393px;
    max-height: 852px; */
    margin: 0 auto;
    margin-top: calc((var(--vh, 1vh) * 50) - 0px);
    transform: translateY(-50%);
    overflow: hidden;
    position: relative;
    border-radius: 30px;
    box-shadow: 0 12px 20px rgba(0,0,0,.3);

    padding-top: 65px;
}



h1 {font-size: 4rem; line-height: 5.2rem;}
h2 {font-size: 3.2rem; line-height: 4rem;}
h3 {font-size: 2.4rem; line-height: 3rem;}
h4 {font-size: 1.8rem; line-height: 2.2rem;}
h5 {font-size: 1.6rem; line-height: 2rem;}
h6 {font-size: 1.4rem; line-height: 1.8rem;}
p {font-size: 1.2rem; line-height: 1.6rem;}


/************************     BUTTON      ************************/


.btn {display: inline-block; vertical-align: middle;}
.btn.style-line{border:1px solid var(--colorWhite);color: var(--colorWhite);}
.btn.style-line-b{border:1px solid #333;color: #000;font-weight: 600;}
.btn.style-line-blue{border:1px solid var(--colorSub-blue);color: var(--colorSub-blue);}
.btn.style-line-gray200{border:1px solid var(--colorGray200);}
.btn.style-line-gray600{border:1px solid var(--colorGray600);}
.btn.style-lineB-gray600{border-bottom:1px solid var(--colorGray600); color: var(--colorGray600);}
.btn.style-fill{background-color:var(--colorWhite) ;color: var(--colorMain);font-weight: 600;}
.btn.style-fill-white{background-color:var(--colorWhite) ;color: var(--colorBlue);font-weight: 600;}
.btn.style-fill-blue{background-color:var(--colorSub-blue) ;color: var(--colorWhite);font-weight: 600;}
.btn.style-fill-dark{background-color:var(--colorGray800) ;color: var(--colorWhite);font-weight: 600;}
.btn.style-fill-navy{background-color:var(--colorMain) ;color: var(--colorWhite);}
.btn.style-fill-gray{background-color:var(--colorGray200) ;color: var(--colorBlack);}
.btn.style-fill-blueM{background-color:var(--colorBlue) ;color: var(--colorWhite);font-weight: 600;}

.size-sm{
    height: 45px;
    line-height: 45px;
    padding: 0 25px;

    border-radius: 30px !important;
}
.size-m{
    height: 55px;
    line-height: 55px;
    padding: 0 25px;
    border-radius: 20px !important;
}

[class*="type-circle"]{
    border-radius: 50% !important;
}
.type-circleS{
    width: 35px;
    height: 35px;
}
.type-circleM{
    width: 50px;
    height: 50px;
}
    .type-circleM .icon{
        width: 22px;
        height: 22px;
    }
.btnBox .btn {
    border-radius: 16px;
    font-size: 1.3rem;
    font-weight: 600;
}
.btnBox.set-sqauretoAuto{
    white-space: nowrap;
}
.btnBox.set-sqauretoAuto .btn {
    height: 50px;
    min-width: 50px;
    margin-right: 6px;
}
.btnBox.set-sqauretoAuto .btn:nth-child(1) {
    width: 50px;
}
.btnBox.set-sqauretoAuto .btn:nth-child(1).icon-wrap .icon{
    width: 20px;
    height: 20px;
}
.btnBox.set-sqauretoAuto .btn:nth-child(2) {
    width: calc(100% - 50px - 7px);
}


.btnBox.set-half{
    white-space: nowrap;
}
.btnBox.set-half .btn {
    margin-right: 6px;
    width: calc(50% - 3px);
    text-align: center;
}
.btnBox.set-full .btn {
    display: block;
    margin-top: 6px;
    margin-left: unset !important;
    width: 100%;
    text-align: center;
}
.btnBox.set-full .btn:first-child {
    margin-top: unset;
}


.btnBox.set-1to2{
    white-space: nowrap;
}
.btnBox.set-1to2 .btn {
    display: inline-block;
    margin:0 !important;
    width: 100%;
    text-align: center;
}
.btnBox.set-1to2 .btn:first-child {
    width: calc((100%/3*1) - 8px);
    margin-right: 8px !important;
}
.btnBox.set-1to2 .btn:last-child {
    width: calc(100%/3*2);
}

.btnBox.pos-bottom + div {
    max-height: calc(100% - 100px);
    overflow-y: auto;
}
.btnBox.pos-bottom{
    z-index: 9;
    position: fixed;
    bottom: 0;
    padding: 20px;
    width: 100%;
    background-color: var(--colorWhite);
}
section .btnBox.pos-bottom ~ div:last-child{
    padding-bottom: 40px;
}
header.head-main ~ section .btnBox.pos-bottom ~ div:last-child{
    padding-bottom: 120px;
}



/************************     icon      ************************/
.icon-wrap {
    position: relative;
}
.icon-wrap .icon{
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}
.icon{
    display: inline-block;
    background-position: center;
    background-size: contain;
    -webkit-mask-position: center;
    -webkit-mask-size: contain;
    -webkit-mask-repeat:no-repeat;
    background-repeat: no-repeat;
    width: 100%;
    height: 100%;
}
/* .icon[class*="ic-"], */
.icon[class*="icM-"] {background-color: #ddd;}
.ic-hamburger {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%);
  }
  
  .ic-hamburger div {
    position: relative;
    width: 25px;
    height: 2px;
    border-radius: 1px;
    background-color: #333;
    margin-top: 6px;
    transition: all 0.3s ease-in-out;
  }
  .ic-hamburger div:first-child{
    margin-top: unset;
  }

  .ic-hamburger.ON div {
    background-color: #aaa;
  }
  .ic-hamburger.ON .top-bun {
    transform: rotate(-45deg) translateX(-4px) translateY(4.5px);
    margin-top: 0;
  }
  .ic-hamburger.ON .bottom-bun {
    opacity: 0;
  }
  .ic-hamburger.ON .meat {
    transform: rotate(45deg) translateX(3px) translateY(3px);
    margin-top: 0;
  }
  
  .ic-hamburger.ON + .nav {
    top: 0;
    transform: scale(1);
  }


.ic-home {    -webkit-mask-image: url(../resources/icon/icon-home.png);}
.ic-calendar {    -webkit-mask-image: url(../resources/icon/icon-calendar.png);}
.ic-my {    -webkit-mask-image: url(../resources/icon/icon-my.png);}
  
.icM-arrow {    -webkit-mask-image: url(../resources/icon/icon-arrow.png);}
.icB-arrow {    background-image: url(../resources/icon/icon-arrow.png);}
.icM-linkArrow {    -webkit-mask-image: url(../resources/icon/icon-linkArrow.png);}
.icB-linkArrow {    background-image: url(../resources/icon/icon-linkArrow.png);}
.icM-refresh {    -webkit-mask-image: url(../resources/icon/icon-refresh.png);}
.icB-refresh {    background-image: url(../resources/icon/icon-refresh.png);}
.icM-list {    -webkit-mask-image: url(../resources/icon/icon-list.png);}
.icB-list {    background-image: url(../resources/icon/icon-list.png);}
.icM-setting {    -webkit-mask-image: url(../resources/icon/icon-setting.png);}

.icB-naver {    background-image: url(../resources/icon/icon-loginNaver.png);}
.icB-kakao {    background-image: url(../resources/icon/icon-loginKakao.png);}
.icB-google {    background-image: url(../resources/icon/icon-google.png);}
.icB-apple {    background-image: url(../resources/icon/icon-apple.png);}

.icM-camera {    -webkit-mask-image: url(../resources/icon/icon_camera.png);}
.icM-scan {    -webkit-mask-image: url(../resources/icon/icon-scan.png);}
.icM-check {    -webkit-mask-image: url(../resources/icon/icon-scanCheck.png);}
.icM-faq {    -webkit-mask-image: url(../resources/icon/icon-faq.png);}
.icM-notice {    -webkit-mask-image: url(../resources/icon/icon-notice.png);}
.icM-info {    -webkit-mask-image: url(../resources/icon/icon-info.png);}
.icM-logout {    -webkit-mask-image: url(../resources/icon/icon-logout.png);}
.icM-sad {    -webkit-mask-image: url(../resources/icon/icon-sad.png);}

.icM-qrin {    -webkit-mask-image: url(../resources/icon/icon-qraScan.png);}
.icB-qrin {    background-image: url(../resources/icon/icon-qraScan.png);}
.icM-qrout {    -webkit-mask-image: url(../resources/icon/icon-qrShow.png);}
.icB-qrout {    background-image: url(../resources/icon/icon-qrShow.png);}

.ic-alert {    -webkit-mask-image: url(../resources/icon/icon-alert.png);}
.ic-siren {    -webkit-mask-image: url(../resources/icon/ic-siren.svg);}
.ic-dots {    -webkit-mask-image: url(../resources/icon/icon-dots.png);}
.ic-gym {    -webkit-mask-image: url(../resources/icon/icon-gym.png);}
.ic-program {    -webkit-mask-image: url(../resources/icon/icon-program.png);}
.ic-pt {    -webkit-mask-image: url(../resources/icon/icon-pt.png);}
.icM-heartOFF {    -webkit-mask-image: url(../resources/icon/icon-heartOFF.png); background-color: var(--colorSub-blue) !important;}
.icB-heartOFF {    background-image: url(../resources/icon/icon-heartOFF.png);}
    .ON > .icM-heartOFF {    -webkit-mask-image: url(../resources/icon/icon-heartON.png);}
    .ON > .icB-heartOFF {    background-image: url(../resources/icon/icon-heartON.png);}

.ic-mailCheck {    background-image: url(../resources/icon/ic-mailCheck.png);}
.ic-close {    -webkit-mask-image: url(../resources/icon/ic-close.svg);}
.ic-success {    background-image: url(../resources/icon/ic-success.png);}

.icM-checked {   -webkit-mask-image: url(../resources/icon/ic-checkedW.svg);}



/************************     COLOR      ************************/
:root {
    --colorMain: #1A1C4A;
    --colorSub-blue: #4F709C;
    --colorSub-lightblue: #d7d9ff;   ;
    --colorSub-brown: #D8C4B6;
    --colorGray050: #f5f5f5;
    --colorGray100: #eee;
    --colorGray200: #ddd;
    --colorGray500: #aaa;
    --colorGray600: #999;
    --colorGray800: #444;
    --colorWhite: #fff;
    --colorBlack: #000;
    --colorBlue: #5257DA;
    --colorRed: #E70000;
}

.cl-white{      color: var(--colorWhite) !important;}
.cl-gray200{    color: #ddd !important;}
.cl-gray400{    color: #b5b5b5 !important;}
.cl-gray600{    color: #999 !important;}
.cl-black{    color: #000 !important;}
.cl-blue{    color: var(--colorBlue) !important;}
.cl-main{       color: var(--colorMain) !important;}
.cl-sub1{       color: var(--colorSub-brown) !important;}
.cl-sub2{       color: var(--colorSub-blue) !important;}

.bg-white{      background-color: var(--colorWhite) !important;}
.bg-gray200{    background-color: #ddd !important;}
.bg-gray600{    background-color: #999 !important;}
.bg-gray900{    background-color: #222 !important;}
.bg-black{      background-color: #000 !important;}
.bg-main{       background-color: var(--colorMain) !important;}
.bg-sub1{       background-color: var(--colorSub-brown) !important;}
.bg-sub2{       background-color: var(--colorSub-blue) !important;}
.bg-blue{       background-color: var(--colorBlue) !important; color: var(--colorWhite) !important;}
.bg-red{       background-color: var(--colorRed) !important;}
.bg-whiteGra{      background:linear-gradient(0deg, transparent,rgba(255,255,255,1));}
.bg-whiteGra180{      background:linear-gradient(180deg, transparent,rgba(255,255,255,1));}
.bg-blueGra{      background:linear-gradient(-45deg, #343899,#5257DA);}


/************************     Design      ************************/
.br-full{    border-radius: 30px; padding-top: 30px !important;}
.br-top{    border-radius: 30px 30px 0 0; padding-top: 30px !important;}
.br-bottom{    border-radius: 0 0 30px 30px ; padding-bottom: 30px !important;}

.p-20 {padding: 20px !important;}

.divide{
    font-size: 0;
}
.divide > * {
    font-size: initial;
    display: inline-block;
    vertical-align: top;
}
.divide.col-2 > * {
    width: 50% !important;
}
/************************     POPUP      ************************/

.toast {
    z-index: 99;
    position: fixed;
    bottom: 20px;
    left: 0;
    width: 100%;
    padding: 0 20px;
}
.toast .toastItem{
    width: fit-content;
    padding: 8px 15px;
    background-color: rgba(0,0,0,.9);
    color: var(--colorWhite);
    opacity: 0;
    transform: translateY(10px);
    transition: all .5s;
    border-radius: 12px;
    margin: 2px auto 0;
}

.toast .toastItem.SHOW{
    opacity: 1;
    transform: translateY(0);

}


.alert {
    z-index: 100001;
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    text-align: center;
    display: none;
}
.alert [class*="alert-"]{
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    margin: 30px auto 0;
    min-width: 320px;
    position: absolute;
    background-color: var(--colorWhite);
    padding: 40px 40px 30px;
    border-radius: 16px;
    margin-bottom: 6px;
    width: fit-content;
    display: none;
}
.alert [class*="alert-"] .icon-wrap{
    position: absolute;
    left: 16px;
    top: 50%;
    transform: translateY(-50%);
    width: 30px;
    height: 30px;
    border-radius: 50%;
    background-color: #ddd;
}
.alert [class*="alert-"] .icon-wrap .icon{
    width: 22px;
    height: 22px;
    background-color: unset;
}
.alert [class*="alert-"] .textBox * {
    line-height: unset;
    margin-bottom: 35px;
}
.alert [class*="alert-"] .textBox .title {
    font-weight: 800;
}
.alert [class*="alert-"] .textBox .detail{
    font-weight: 600;
    opacity: .8;
    margin-top: 6px;
}

.alert [class*="alert-"].alert-yellow { background-color:var(--colorWhite)9E3 ;}
.alert [class*="alert-"].alert-yellow .icon-wrap { background-color:#FEC93F ;}


.alert .btnBox .btn {
    border-radius: 16px;
    font-size: 1.3rem;
    font-weight: 600;
    text-align: center;
}

.size-s {
    height: 35px;
    line-height: 35px;
    padding: 0 15px;
    border-radius: 30px !important;
}
.size-sm{
    height: 45px;
    line-height: 45px;
    padding: 0 25px;

    border-radius: 30px !important;
}
.btnBox .btn {
    border-radius: 16px;
    font-size: 1.3rem;
    font-weight: 600;
}
body.alertON .dim {
    z-index: 100000;
}

.alert [class*="alert-"] .textBox .detail{
    font-weight: 500;
    opacity: .8;
    margin-top: 12px;
    line-height: 2rem;
}

.popup {
    z-index: 999;
    position: fixed;
    width: 100%;
    height: 100%;
    top:100%;
    left: 0;
    display: none;
}

body.layerON {
    overflow: hidden !important;
}
body.layerON .popup{
    top: 0;
}
.popup .popupItem {
    display: none;
    position: absolute;
    bottom: 0;
    left: 50%;
    width: 100%;    
    transform: translateX(-50%);
    background-color: var(--colorWhite);
    box-shadow: 0 8px 30px rgba(0,0,0,.3);
    border-radius: 20px 20px 0 0;
    
}
.popup .popupItem > * {
    z-index: 5;
}
.popup .popupItem.depth-1{
    z-index: 3;
}
.popup .popupItem.depth-2{
    z-index: 5;
}
.popup .popupItem.depth-3{
    z-index: 7;
}
.popup .popupItem.depth-9{
    z-index: 100;
}

.popup .popupItem > .btn {
    z-index: 15;
    position: absolute;
    right: 50px;
    top: 50px;
    width: 40px;
    height: 40px;
}

.dim {
    display: none;
    position: fixed;
    width: 100%;
    height: 100%;
    z-index: 11;
    background-color: #000;
    opacity: 0;
    top: 0;
    left: 0;
    transition: opacity .5s;
    pointer-events: none;
}
body.layerDepth2 .dim {
    z-index: 13;
}
body.layerON .dim,
body.alertON .dim{
    opacity: .3;
}
.popup > .dim {
    position: fixed;
    width: 100%;
    height: 100%;
    z-index: 1;
    background-color: #000;
    opacity: 0;
    top: 0;
    left: 0;
}
body.layerDepth2 .popup > .dim {
    z-index: 4;
}
body.layerON .popup > .dim {
    opacity: .6;
}
.popup .popupItem .popup-cont {
    z-index: 10;
    max-height:  calc((var(--vh, 1vh) * 100) - 75px - 110px);
    position: relative;
    overflow-x: hidden;
    overflow-y: auto;
    /* padding: 20px 20px 25px; */
}
.popup .popupItem .btnBox{
    margin-top: 30px;
    text-align: right;
}
.popup .popupItem .btnBox .btn {
    display: inline-block;
    vertical-align: middle;
    text-align: center;
    margin-left: 5px;
}


.popup .popupItem .popup-head{
    position: relative;
}
.popup .popupItem .popup-head .title {
    font-weight: 800;
    text-align: center;
    height: 65px;
    line-height: 64px;
}
.popup .popupItem .popup-head .btn {
    z-index: 15;
    position: absolute;
    line-height: 99px;
    right: 15px;
    top: 50%;
    width: 40px;
    height: 40px;
    transform: translateY(-50%);
}
.popup .popupItem .popup-head .btn .icon {
    mask-size: 14px;
    mask-position: center;
    background-color: var(--colorGray600);
}
.popup .popupItem.type-layer {
    height: 100%;
    border-radius: unset;
    left: 0;
    top: 0;
    width:100%;
    transform: unset;
    padding: 0;
    background-size: cover;
    background-position: center top;
}
.popup .popupItem.type-layer > *{
    padding: 0 !important;
}

.popup .popupItem.type-layer> .btn{
    z-index: 11;
}

.popup .popupItem .popup-foot{
    position: relative;
    width: 100%;
    padding: 0 20px 20px;
    text-align: center;
}

.popup .popupItem .popup-foot .btnBox {
    margin-top: unset;
}

.popup .popupItem .btnBox{
    margin-top: 30px;
}
.popup .popupItem .btnBox .btn {
    display: inline-block;
    vertical-align: middle;
    text-align: center;
    margin-left: 5px;
}




/************************     FORM      ************************/

.formArea{
    padding: 20px;
}   

.formArea .formItem {
    margin-top: 16px;
}
.formArea .formItem:first-child {    margin-top: unset;}
.formArea .formItem > label{
    position: relative;
    display: block;
    margin-bottom: 6px;
    color: var(--colorGray600);
}

.formArea .formItem > label span.required {
    position: relative;
}
.formArea .formItem > label span.required::after {
    content: '*';
    position: absolute;
    right: 0;
    top: 1px;
    color: var(--colorRed);
    transform: translateX(120%);
    font-size: 1.6rem;
}
.formArea .formItem input[type="text"],
.formArea .formItem input[type="password"]{
    height: 50px;
    padding: 16px 0;
    width: 100%;
    border-bottom: 1px solid var(--colorGray200);
}

.formArea .formItem input[type="text"]:disabled,
.formArea .formItem input[type="password"]:disabled{
    background-color: var(--colorGray100);
    border: unset;
    border-radius: 12px;
    padding: 16px;
}
.formArea .formItem input::placeholder{
    color: var(--colorGray600);
}

.formArea .formItem input[type="checkbox"] {
    opacity: 0;
    width: 1px;
    height: 1px;
}
.formArea .formItem input[type="checkbox"] + label{
    display: inline-block;
    vertical-align: middle;
    padding-left: 24px;
    line-height: 18px;
}
.formArea .formItem input[type="checkbox"] + label button {
    text-decoration: underline;
    font-size: inherit;
    color: inherit;
}
.formArea .formItem input[type="checkbox"] + label::before {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    width: 18px;
    height: 18px;
    border-radius: 4px;
    border: 1px solid var(--colorGray200);
    display: inline-block;
    vertical-align: middle;
    mask-size: contain;
}
.formArea .formItem input[type="checkbox"]:checked + label::before {
    background-image: url(../resources/icon/ic-checkedW.svg);
    background-repeat: no-repeat;
    background-size: 10px auto;
    background-position: center;
    border: unset;
    background-color: var(--colorBlue);
}

.formArea .formItem input[type="checkbox"].design2 + label::before {
    content: '';
    border: unset;
    background-color: var(--colorGray500);
    -webkit-mask-image: url(../resources/icon/ic-uncheck.svg);
    width: 20px;
}
.formArea .formItem input[type="checkbox"].design2:checked + label::before {
    background-color: var(--colorBlue);
    background-image: unset;
}


.formArea .formItem input[type="checkbox"].design3 + label{
    background-color: var(--colorGray500);
    border-radius: 20px;
    height: 20px;
    width: 36px;
    position: relative;
    transition: all .3s;
}
.formArea .formItem input[type="checkbox"].design3 + label::before {
    content: '';
    border: unset;
    background-color: var(--colorWhite);
    width: 16px;
    height: 16px;
    border-radius: 50%;
    position: absolute;
    left: 2px;
    top: 2px;
    transition: all .3s;
}
.formArea .formItem input[type="checkbox"].design3:checked + label {
    background-color: var(--colorBlue);
}
.formArea .formItem input[type="checkbox"].design3:checked + label::before {
    left: 18px;
}




.formArea .formItem .guideBox {
    position: relative;
    height: 0;
}
.formArea .formItem .guideBox.SHOW {
    display: block;
    min-height: 22px;
    padding: 8px 0;
}
.formArea .formItem .guideBox .rightContent {
    position: absolute;
    right: 0;
    top: 8px;
}

.formArea hr {
    margin: 20px 0;
    border: 0;
    border-top: 1px solid var(--colorGray200);
}

.formArea .formItem .formInp {
    position: relative;
}
.formArea .formItem  .unit{
    z-index: 2;
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    font-size: 1.2rem;
    color: var(--colorGray600);
    border-bottom: 1px solid var(--colorGray600);
}



/************************     INFO      ************************/
.infoArea .imgBox{
    padding: 60px 0 20px;
    text-align: center;
}
.infoArea .imgBox.type-fit{
    padding: 50px 0 20px;
}
.infoArea .imgBox.type-fit .icon{
    height: 80px;
}
.popup .popupItem .popup-cont > .infoArea{
    padding: 0 20px 60px;
}
.infoArea .imgBox .icon{
    height: 90px;

}
.infoArea .textBox {
    text-align:center;
    padding: 0 20px;
}

.infoArea .textBox > h3,
.infoArea .textBox > h4,
.infoArea .textBox > h5 {
    font-weight: 700;
}
.infoArea .textBox > h6 {
    margin: 20px 0 0;
    color: var(--colorGray600);
}
.popup .popupItem .popup-cont > .infoArea > h6{
    margin-top: 16px;
}

.infoArea .textBox .memoBox .memoList{
    margin-top: 30px;
    padding-top: 30px;
    border-top: 1px solid var(--colorGray200);
    color: var(--colorGray600);
    text-align: left;

}

.infoArea .textBox .memoBox .memoList li{
    padding-left: 16px;
    position: relative;
    width: fit-content;
    margin-bottom: 4px;
    line-height: 1.8rem;
}
.infoArea .textBox .memoBox .memoList li .icon {
    position: absolute;
    left: 5px;
    top: 6px;
    width: 3px;
    height: 3px;
    border-radius: 3px;
    background-color: var(--colorGray600);
    
}

.infoArea .textBox .memoBox.type-fill{
    margin-top: 20px;
    border-radius: 12px;
    padding: 10px;
    background-color: var(--colorGray100);
    width: 100%;
    margin-bottom: 6px;
}

.infoArea .termBox pre {
    white-space: pre-wrap;
    word-break: break-all;
    font-size: 1.2rem;
    line-height: 1.8rem;
    color: var(--colorGray600);
}

/* confirm 버튼 영역 */
.alert .alert-btn2 .btnBox{
  display: flex;
  gap: 12px;            /* 👈 버튼 사이 여백 (원하는 값으로 조절) */
}

/* 버튼이 반반 차지하게 하고 싶으면 */
.alert .alert-btn2 .btnBox .btn{
  flex: 1 1 0;
}

/* alert (확인 1개) 전용 */
.alert .alert-btn1 .btnBox{
  display: flex;
  justify-content: center;
}

/* alert의 확인 버튼만 크게 & 중앙 */
.alert .alert-btn1 .btnBox .btn{
  min-width: 160px;
  height: 44px;
  line-height: 44px;
  border-radius: 10px;
  font-weight: 600;
  padding: 0 24px;
}
/************************     UTIL      ************************/
/* libery */
    /* swiper */
    
    .swiper .swiper-wrapper{
        height: fit-content;
    }
    .swiper .swiper-slide{
        transition: .3s;
    }
    .swiper .swiper-slide > .wrap{
        width: 100%;
        height: 100%;
        position: relative;
    }

    /* moreToggle */
    .moreBox{
        height: 0;
        transition: all .5s;
        overflow: hidden;
    }
    .moreBox.SHOW{
        height: 50px;
        padding-top: 10px;
    }
    .moreBox.searchBox{
        position: relative;
    }
    .moreBox.searchBox input {
        width: 100%;
        height: 100%;
        border-radius: 20px;
        border: 1px solid var(--colorGray200);
        padding: 0 16px;
    }
    
    .moreBox.searchBox .btn {
        position: absolute;
        width: 40px;
        height: 40px;
        bottom: 1px;
        right: 1px
    }


    @supports (padding-top: constant(safe-area-inset-top)) {
        body {
          padding: env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left);
        }
      }
      
      @media (display-mode: fullscreen) {
        body {
          padding: 0;
        }
      }
      
      @media (display-mode: standalone) {
        body {
          padding: 0;
        }
      }
      
      /* Older browsers (which don't support CSS variables) */
      body {
        height: 100%;
      }
      
      /* Browsers which partially support CSS variables (iOS 11.0 – 11.2)
      @supports (padding-top: constant(safe-area-inset-top)) {
        body {
          --safe-area-inset-top: constant(safe-area-inset-top);
          height: calc(100% + var(--safe-area-inset-top));
        }
      }
      /* Adapted from https://medium.com/@draganeror/iphone-x-layout-features-with-css-environment-variables-d57423433dec */
      /* Browsers which fully support CSS variables (iOS 11.2+).
      @supports (padding-top: env(safe-area-inset-top)) {
        body {
          --safe-area-inset-top: env(safe-area-inset-top);
          height: calc(100% + var(--safe-area-inset-top));
        }
      }
      
      @media (display-mode: fullscreen) {
        body {
          height: 100%;
        }
      }
      
      @media (display-mode: standalone) {
        body {
          height: 100%;
        }
      }