@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: 12px;
}
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: #1c1c24;
    border-radius: 10px;
}


body.type-device.layerON{
    /* position: fixed !important; */
    /* height: 50vh !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;
}

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

.btn {display: inline-block;}
.btn.btn-line{border:1px solid #fff;color: #fff;}
.btn.btn-line-b{border:1px solid #333;color: #000;font-weight: 600;}
.btn.btn-line-blue{border:1px solid #007aff;color: #007aff;}
.btn.btn-fill{background-color:#fff ;color: #1c1c24;font-weight: 600;}
.btn.btn-fill-blue{background-color:#007aff ;color: #fff;font-weight: 600;}
.btn.btn-fill-navy{background-color:#1c1c24 ;color: #fff;}





/************************     icon      ************************/

.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%;
}


/************************     POPUP      ************************/

.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;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    background-color: #fff;
    box-shadow: 0 8px 30px rgba(0,0,0,.3);
    width: calc(100% - 30px);
    
}
.popup .popupItem > * {
    z-index: 5;
}
.popup .popupItem.type-ssmall{
    max-width: 400px;
}
.popup .popupItem.type-small{
    max-width: 500px;
}
.popup .popupItem.type-midium{
    max-width: 700px;
}
.popup .popupItem.type-smidium{
    max-width: 800px;
}
.popup .popupItem.type-large{
    max-width: 1000px;
}
.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;
}
.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) - 100px);
    position: relative;
    overflow-x: hidden;
    overflow-y: auto;
    padding: 50px 60px;
}
.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 {
    padding-bottom: 25px;
}
.popup .popupItem .popup-head h4 {
    font-size: 2.5rem;
    font-weight: 800;
}
.popup .popupItem .popup-head h6 {
    font-size: 1.3rem;
    line-height: 2rem;
    margin-top: 15px;
    font-weight: 400;
    color:#555;
}

.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;
}





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

.formBox .formRow{
    white-space: nowrap;
}
.formBox .formRow.col-2{
    column-count: 2;
    column-gap: 10px;
}
.formBox .formRow.col-2{
}
.formBox .formItem {
    position: relative;
    display: block;

    width: 100%;
    margin-bottom: 15px;
}

.formBox .formItem .formTitle{
    position: absolute;
    z-index: 1;
    transition: all .3s;
    left: 0;

    top: 25px;
    font-size: 1.4rem;
    color: #ddd;

}
.formBox .formItem .inp{
    z-index: 2;
    width: 100%;
    height: 55px;
    line-height: 53px;
    border-bottom: 1px solid #ddd;
    
    font-size: 1.4rem;
}
.formBox .formItem textarea.inp{
    padding: 20px;
    background-color: #eeee;
    border-bottom: unset;
    resize:unset;
    height: 200px;
    line-height: 2.4rem;
}
.formBox .formItem .inp:focus  + .formTitle,
.formBox .formItem .inp:valid  + .formTitle{
    
    font-size: .8rem;
    top: 0;
    color: #111;
}


.formBox .formTerm {
    border: 1px solid #ddd;
    padding: 20px;
    overflow-y: auto;
    height: 120px;
    
    overflow-x: hidden;
    white-space: normal;
    word-break: keep-all;
    font-size: 1.2rem;
    line-height: 1.6rem;
}
.formBox .formTerm +.formItem{
    border: 1px solid #ddd;
    border-top: unset;
    text-align: center;
    height: 50px;
    line-height: 48px;

    font-size: 1.2rem;
}
.formBox .formTerm +.formItem .inp{
    width: 0;
    height: 0;
    opacity: 0;
}
.formBox .formTerm +.formItem .inp + .inpLabel{
}
.formBox .formTerm +.formItem .inp + .inpLabel::before{
    content: '□';
    margin-right: 8px;
}

.formBox .formTerm +.formItem .inp:checked + .inpLabel::before{
    content: '■';
}

.formBox .formTerm +.formItem .inp:checked + .inpLabel{
    font-weight: 800;
}