
/* 폼태그의 초기화 */
input, select, textarea, button{vertical-align: middle; /*-webkit-appearance: none; appearance: none;*/ color: #000; background: #fff; font-size: 14px; }
textarea{resize: none; min-height:200px; width: 100%;}
button {cursor:pointer; background: transparent;}
select{text-overflow: ellipsis;}
input::placeholder,
textarea::placeholder{color: #B4B8C1; font-weight: 500; font-size: 14px;}
input[type=radio],
input[type=checkbox] {cursor:pointer;}
label{cursor:pointer; vertical-align: middle;}
input::-ms-clear,
input::-ms-reveal{
    display:none;
}
input::-webkit-search-decoration,
input::-webkit-search-cancel-button,
input::-webkit-search-results-button,
input::-webkit-search-results-decoration{
    display:none;
}

/* a태그 */ 
a{cursor: pointer; color:inherit;}
a:link{text-decoration:none; }
a:active{text-decoration:none; }
a:visited{text-decoration:none;}
a:hover{text-decoration:none; }

/* checkbox, radio, input, select */
input[type=checkbox]{position:relative; width:22px; height: 22px;  appearance: none;  background: transparent;}
input[type=checkbox]:before{display:block; content:''; position:absolute; width:22px; height:22px; z-index:2; cursor:pointer; background: url(../images/chk_off.png);  background-size: 22px;}
input[type=checkbox]:checked:after{display:block; content:''; position:absolute; width:22px; height:22px; z-index:2;  background: url(../images/chk_on.png); background-size: 22px; }

input[type=radio]{position:relative; width:22px; height: 22px; appearance: none; background: transparent; }
input[type=radio]:before{display:block; content:''; position:absolute; width:22px; height:22px; z-index:2; cursor:pointer; background: url(../images/icon_radio_off.svg);  background-size: 22px;}
input[type=radio]:checked:after{display:block; content:''; position:absolute; width:22px; height:22px; z-index:2;  background: url(../images/icon_radio_on.svg); background-size: 22px; }


/* 버튼형 라디오 */
.tabRadio{display: flex;}
.tabRadio label{display: block; height: 48px; line-height: 48px; background: #EEF0F5; color: #9B9B9B; font-weight: 500; text-align: center;}
.tabRadio input[type=radio] + label{margin-right: 0;}
.tabRadio input[type=radio]:checked + label{background: #8181E0; color: #fff; font-weight: 700;}
.tabRadio input[type=radio]{display: none;}
.tabRadio label:first-of-type{border-radius: 10px 0 0 10px; border-left: 1px solid #dfe2ed;}
.tabRadio label:last-of-type{border-radius: 0 10px 10px 0;}

textarea,
input[type=text],
input[type=file],
input[type=password],
input[type=email],
input[type=number],
input[type=search],
input[type=serch],
input[type=date],
input[type=time]{border: 1px solid #DCDEE3; padding: 0 16px; height: 44px; border-radius: 6px; }
textarea{padding: 16px;}

textarea:focus,
input[type=text]:focus,
input[type=file]:focus,
input[type=password]:focus,
input[type=email]:focus,
input[type=number]:focus,
input[type=search]:focus,
input[type=serch]:focus,
input[type=date]:focus,
input[type=time]:focus{  }

textarea:disabled,
input[type=text]:disabled,
input[type=file]:disabled,
input[type=password]:disabled,
input[type=email]:disabled,
input[type=number]:disabled,
input[type=search]:disabled,
input[type=serch]:disabled,
input[type=date]:disabled,
input[type=time]:disabled{background: #F5F7FC;}


textarea:read-only,
input[type=text]:read-only,
input[type=file]:read-only,
input[type=password]:read-only,
input[type=email]:read-only,
input[type=number]:read-only,
input[type=search]:read-only,
input[type=serch]:read-only,
input[type=date]:read-only,
input[type=time]:read-only{background: #F5F7FC;}

select{border: 2px solid #DCDEE3; padding: 0 24px; border-radius: 8px; }
select:focus{border: 2px solid #110D64; }
select:disabled{border: 2px solid #ddd;  }


input.calendar{background: url(../images/icon_calendar.svg) no-repeat right 12px center;}


.layerPopup{ position: fixed; width: 800px; z-index: 9999; background-color: #fff; top: 50%; left: 50%; transform: translate(-50%, -50%); border-radius: 30px; box-shadow: 0 0 8px rgba(0,0,0,0.1);}
.layerPopup_header{ height: 100px; padding: 0 60px; display: flex; align-items: center; justify-content: space-between; } 
.layerPopup_header .title{font-size: 28px; font-weight: 700; text-align: left;}
.layerPopup_header .popClose{width: 30px; height: 30px;}
.layerPopup_header .popClose img{width: 30px; height: 30px;}
.layerPopup_content{padding: 20px 60px; max-height: calc( 90vh - 120px); overflow-x: hidden; overflow-y: auto; text-align: left;}

.customSwal{width: 100%;}
.customSwal .swal2-title{display: none !important;}
.customSwal .swal2-popup{width: 100%; margin: 0; padding: 0; }
.customSwal .swal2-html-container{width: 100%; margin: 0;  }


.agreementContainer {width: 550px; background-color: #fff; text-align: left; margin-top: 20px; border-top: 1px solid #ccc; border-bottom: 1px solid #ccc; padding: 20px 0;}
@media screen and (max-width: 1000px) {
    .agreementContainer {
        width: 100%; /* 부모 요소(페이지 너비)에 맞게 자동 조정 */
        text-align: center;
        margin-left: auto;
        margin-right: auto;
    }

    .agreementCheckContainer {
        display: flex;
        justify-content: center;
        align-items: center;
        gap: 5px; /* 체크박스와 텍스트 사이 간격 조정 */
    }
}
.agreementContainer h1 {font-size: 16px; margin-bottom: 20px;}
.agreementContainer ul {list-style: none; padding: 0; margin: 10px 0 20px 0;}
.agreementContainer ul li {margin-bottom: 5px;}
.agreementContainer label {display: block; margin-bottom: 10px; font-size: 12px;}
.agreementContainer input[type="checkbox"] {margin-right: 10px;}
.agreementViewContainer{ padding: 5px;}
.agreementViewContainer p{font-size: small;}
.agreementCheckContainer{display: flex; justify-items: flex-end; margin-top: 10px;}