.main_cont{position:relative; width:100%; max-width:800px; margin:0 auto;}
.main_cont_wrap{position:relative; width:100%; text-align:center; display:flex; flex-direction:column; justify-content:flex-start; align-items:center;}



.contact_form_wrap{position:relative; width:100%; margin:0 auto; padding:5rem 4rem; background-color:#e0e0e0;}
.contact_form_box{position:relative; width:100%;}
.contact_form{position:relative; width:100%;}

.contact_title_box{position:relative; width:100%; text-align:center; margin:0 auto 4rem;}
.contact_text_box{position:relative; margin:0 0 3rem; padding:0 1rem;}
.contact_form_box_wrap{position:relative; width:100%; display:flex; flex-direction:column; justify-content:flex-start; align-items:center; gap:1rem 0;}
.contact_box_wrap{position:relative; width:100%;}
.contact_box{position:relative; width:100%; display:flex; justify-content:center; align-items:center; gap:0 0.5rem;}
.contact_box_wrap .contact_write_box > .cont > input{font-family: 'Pretendard'; font-size:1.5625rem; font-weight:500; text-align:center; color:#000;}
.contact_box_wrap .contact_write_box > .cont > input::placeholder{font-family: 'Pretendard'; font-size:1.5625rem; font-weight:500; text-align:center; color:#c1c1c1;}

.contact_box_wrap01 .contact_write_box{position:relative; width:100%; display:flex; justify-content:flex-start; align-items:center;}
.contact_box_wrap01 .contact_write_box > .cont{position:relative; width:100%;}
.contact_box_wrap01 .contact_write_box > .cont > input{width:100%; height:50px; line-height:48px; background-color:#fff; border-radius:6px; border: 1px solid #c1c1c1;}

.contact_box_wrap02 .contact_write_box{position:relative; width:calc(50% - 0.25rem); display:flex; justify-content:flex-start; align-items:center;}
.contact_box_wrap02 .contact_write_box > .cont{position:relative; width:100%;}
.contact_box_wrap02 .contact_write_box > .cont > input{width:100%; height:50px; line-height:48px; background-color:#fff; border-radius:6px; border: 1px solid #c1c1c1;}
.contact_box_wrap02 .contact_write_box > .cont > select{
    position:relative; width:100%; height:50px; padding:0 1rem; background-color:#fff; border-radius: 6px; border: 1px solid #c1c1c1;
    font-size:1.5625rem; font-weight:500; font-family: 'Pretendard'; text-align:center; line-height:48px; 
    /*ios대응*/
    -webkit-appearance: none;
    -moz-appearance: none; 
    appearance: none;
    outline:none;
    /*화살표 배경 넣기*/
    background: #fff url('../img/select_down_arrow2.svg') 93% 50%/12px no-repeat; /*화살표 select박스 오른쪽 중앙 배치,배경 흰색*/
}

.contact_box_wrap02.interest .contact_write_box { width: 100%;}

.contact_box_wrap03 .contact_write_box{position:relative; width:100%; display:flex; justify-content:flex-start; align-items:center;}
.contact_box_wrap03 .contact_write_box > .cont{position:relative; width:100%;}
.contact_box_wrap03 .contact_write_box > .cont > input{width:100%; height:50px; line-height:48px; background-color:#fff; border-radius:6px; border: 1px solid #c1c1c1;}

.contact_box_wrap04 .contact_write_box{position:relative; width:calc(50% - 0.25rem); display:flex; justify-content:flex-start; align-items:center;}
.contact_box_wrap04 .contact_write_box > .cont{position:relative; width:100%;}
.contact_box_wrap04 .contact_write_box > .cont > input{width:100%; height:50px; line-height:48px; background-color:#fff; border-radius:6px; border: 1px solid #c1c1c1;}

.contact_agree_section{position:relative; display:flex; flex-direction:column; justify-content:flex-start; align-items:flex-start; gap:0.25rem 0; margin:1rem 0 0; padding-left:0.8rem;}
.contact_agree_wrap { position:relative; display:flex; justify-content:center; align-items:center; gap:0 0.5rem;}
.contact_agree_wrap > label { position:relative; display:inline-block; vertical-align:middle; color:#6e6e6e; font-family: 'Pretendard'; font-size:1.4375rem; font-weight:500; letter-spacing:-0.025em;}
.contact_agree_wrap > label:before { content:''; position:absolute; top:52%; left:-2.2rem; display:inline-block; width:1.625rem; height:1.625rem; border:1px solid #c1c1c1; -webkit-transition:border 0.15s ease-in-out, color 0.15s ease-in-out; -o-transition:border 0.15s ease-in-out, color 0.15s ease-in-out; transition:border 0.15s ease-in-out, color 0.15s ease-in-out; background-color:#ffffff; transform: translateY(-50%); -webkit-transform: translateY(-50%); -moz-transform: translateY(-50%); -ms-transform: translateY(-50%); -o-transform: translateY(-50%);}
.contact_agree_wrap > input[type='checkbox'] { z-index:1; width:0.6rem; height:0.6rem; vertical-align:middle; opacity:0; }
.contact_agree_wrap > input[type='checkbox']:checked + label:before{border-color:#c1c1c1; background:#5883ff url("../img/check-icon-w.svg") no-repeat center/ 70% auto;}
.contact_agree_wrap > .agree > span{ position:relative; display:inline-block; cursor:pointer; font-size:1.25rem;}
.contact_agree_wrap > .agree > span::after{content:''; position:absolute; bottom:3px; left:0; width:100%; height:1px; background-color:#6e6e6e;}
.contact_agree_wrap > .agree > .essential { color:#ff0000; }

.contact_agree_text{display:none; position:absolute; top:-250px; left:6%; width:600px; padding:0; text-align:center; background-color:transparent; z-index:1;}
.contact_agree_text.open{display:block;}
.contact_agree_text_close{position:absolute; top:0; right:0; width:100%; height:100%; cursor:pointer; z-index:1;}
.contact_agree_text > .txt01{margin:0 0 1.5rem;}
.contact_agree_text_box{position:relative; display:flex; flex-direction:column; justify-content:center; align-items:center; gap:1rem 0;}
.contact_agree_text_box > .txt05{margin:1rem 0 0;}

.contact_btn_box{
    position:relative; width:100%; margin:2.5rem 0 0; display:flex; flex-direction:column; justify-content:center; align-items:center;
}
.contact_btn{
    position:relative; width:100%; border-radius:8px; background-color:#665a92; border:1px solid #665a92; overflow:hidden;
    transition: 0.5s ease;
    -webkit-transition: 0.5s ease;
    -moz-transition: 0.5s ease;
    -ms-transition: 0.5s ease;
    -o-transition: 0.5s ease;
}
.contact_btn:hover{background-color:#463d6a; border:1px solid #463d6a;}
.contact_btn > button{position:relative; width:100%; display:inline-block; padding:1.25rem 3rem; text-align:center; color:#fff; background-color:#665a92; border:1px solid #665a92;}
.contact_btn:hover > button{background-color:#463d6a; border:1px solid #463d6a;}