._contact._index .cont section {padding-top: 95px;}

._contact._index .cont .s1 .form {padding-top: 140px;}
._contact._index .cont .s1 .form .line {width: 100%;}
._contact._index .cont .s1 .form .line+.line {margin-top: 25px;}
._contact._index .cont .s1 .form .line.flx {display: flex; align-items: center; justify-content: space-between;}
._contact._index .cont .s1 .form .line .field {display: flex; flex-direction: column; width: 100%;}
._contact._index .cont .s1 .form .line.flx .field {width: calc(100% / 2 - 55px / 2);}
._contact._index .cont .s1 .form .line .field .label {display: inline-block; padding: calc(20/18*1em); font-size: 18px; letter-spacing: -0.02em; color: #000000; font-weight: 600; box-sizing: border-box;}
._contact._index .cont .s1 .form .line .field .label small {display: inline-block; font-size: 14px; letter-spacing: -0.02em; font-weight: 300; color: #ff0000; padding: 5px; box-sizing: border-box;}

._contact._index .cont .s1 .form .line .field .inputBox {display: flex; align-items: center; position: relative;  font-size: 18px; font-weight: 500; color: #848484; box-sizing: border-box; background: #ecedf1; border-radius: 12px; --labelHeight: 60px; width: 100%; height: var(--labelHeight);}
._contact._index .cont .s1 .form .line .field .inputBox.textarea {height: 300px; padding: calc(20/18*1em) 0;}
._contact._index .cont .s1 .form .line .field .inputBox input,
._contact._index .cont .s1 .form .line .field .inputBox textarea {resize: none; border: none; outline: none; display: block; width: 100%; height: 100%; background: transparent; font: inherit; color: inherit; letter-spacing: inherit; padding: 0 calc(20/18*1em);}
._contact._index .cont .s1 .form .line .field .inputBox > i {padding: 0 30px;}

._contact._index .cont .s1 .btnWrap {padding-top: 10px; display: flex; justify-content: flex-end;}

._contact._index .cont .s2 {padding-top: 150px; padding-bottom: 200px;}
._contact._index .cont .s2 .word p {padding-top: 0; padding-bottom: 40px;}
._contact._index .cont .s2 .flx {display: flex; align-items: center; justify-content: space-between;}
._contact._index .cont .s2 .flx .info {padding-right: 30px;}
._contact._index .cont .s2 .flx .info .topblank {padding-top: 30px;}
._contact._index .cont .s2 .flx .info dl {display: flex; line-height: 1.9; font-size: 18px; letter-spacing: -0.02em;}
._contact._index .cont .s2 .flx .info dl dt {width: 160px; color: #9f9f9f;}
._contact._index .cont .s2 .flx .info dl dd {color: #000;}
._contact._index .cont .s2 .flx .info dl dd .br820 {display: none;}

._contact._index .cont .s2 .flx .mapWrap {max-width: calc(780/1440*100%); width: 100%; height: 460px; border-radius: 48px; overflow: hidden;}
._contact._index .cont .s2 .flx .mapWrap > div {width: 100%; height: 100%;;}
._contact._index .cont .s2 .flx .mapWrap .root_daum_roughmap .wrap_map {height: 100%;}
._contact._index .cont .s2 .flx .mapWrap .root_daum_roughmap .wrap_controllers {display: none;}

@media screen and (max-width: 1280px) {
    ._contact._index .cont .s1 .form {padding-top: 100px;}

    ._contact._index .cont .s2 {padding-top: 120px; padding-bottom: 140px;}
    ._contact._index .cont .s2 .flx .info dl dt {width: 130px;}
}
@media screen and (max-width: 1024px) {
    ._contact._index .cont section {padding-top: 55px;}

    ._contact._index .cont .s1 .form {padding-top: 40px;}
    ._contact._index .cont .s1 .form .line .field .label {padding: 10px;}
    ._contact._index .cont .s1 .form .line .field .inputBox {--labelHeight: 50px}
    ._contact._index .cont .s1 .form .line .field .inputBox.textarea {height: 230px;}

    ._contact._index .cont .s2 {padding-top: 80px; padding-bottom: 100px;}
    ._contact._index .cont .s2 .flx {flex-direction: column-reverse;}
    ._contact._index .cont .s2 .flx .mapWrap {max-width: none; width: 80%;}
    ._contact._index .cont .s2 .flx .info {padding-right: 0; padding-top: 20px;}
    ._contact._index .cont .s2 .flx .info dl { flex-direction: column; align-items: center; text-align: center;}
    ._contact._index .cont .s2 .flx .info .topblank {width: 100%; display: flex; flex-wrap: wrap;}
    ._contact._index .cont .s2 .flx .info .topblank dl {width: 50%;}
}
@media screen and (max-width: 820px) {
    ._contact._index .cont .s1 .form .line+.line {margin-top: 15px;}
    ._contact._index .cont .s1 .form .line.flx {flex-direction: column;}
    ._contact._index .cont .s1 .form .line.flx .field {width: 100%;}
    ._contact._index .cont .s1 .form .line.flx .field+.field {margin-top: 15px;}
    ._contact._index .cont .s1 .form .line .field .label {font-size: 16px;}
    ._contact._index .cont .s1 .form .line .field .inputBox {font-size: 16px; --labelHeight: 40px}
    ._contact._index .cont .s1 .form .line .field .inputBox > i {padding: 0 15px;}
    
    ._contact._index .cont .s2 .flx .info dl {font-size: 16px;}
    ._contact._index .cont .s2 .flx .info dl dd .br820 {display: block;}
    ._contact._index .cont .s2 .flx .mapWrap {height: 400px; width: 100%;}
}
@media screen and (max-width: 500px) {
    ._contact._index .cont section {padding-top: 35px;}

    ._contact._index .cont .s1 .form {padding-top: 20px;}
    ._contact._index .cont .s1 .form .line+.line {margin-top: 10px;}
    ._contact._index .cont .s1 .form .line.flx .field+.field {margin-top: 10px;}
    ._contact._index .cont .s1 .form .line .field .label {font-size: 14px; padding: 5px 0;}
    ._contact._index .cont .s1 .form .line .field .inputBox {font-size: 14px;}
    ._contact._index .cont .s1 .form .line .field .inputBox.textarea {height: 120px;}
    ._contact._index .cont .s1 .btnWrap {text-align: center; margin-top: 20px;}

    ._contact._index .cont .s2 {padding-top: 50px;}
    ._contact._index .cont .s2 .flx .mapWrap {height: 280px;}
    ._contact._index .cont .s2 .flx .info dl {font-size: 14px;}
    ._contact._index .cont .s2 .flx .info .topblank {flex-direction: column;}
    ._contact._index .cont .s2 .flx .info .topblank dl {width: 100%;}
}

.chkbx {position: relative;}
.chkbx input {display: none;}
.chkbx label { display: flex; align-items: center; font-size: 16px; letter-spacing: -0.02em; color: #000;}
.chkbx label span {padding-left: calc(10/16*1em); display: inline-block;}
.chkbx label .checkIcon {cursor: pointer; width: 20px; height: 20px; border: 1px solid #000; display: flex; align-items: center; justify-content: center;}
.chkbx label .checkIcon i {opacity: 0;}
.chkbx input:checked + label .checkIcon i {opacity: 1;}
.chkbx label small {cursor: pointer;}

@media screen and (max-width: 820px) {
    .chkbx label .checkIcon {width: 15px; height: 15px;}
    .chkbx label {font-size: 14px;}
}
@media screen and (max-width: 500px) {
    .chkbx label .checkIcon {width: 10px; height: 10px;}
    .chkbx label {font-size: 12px;}
}


._contact._complete {padding-top: 0 !important;}
._contact._complete .cont .wrap {height: 90vh; display: flex; align-items: center; justify-content: center;}
._contact._complete .cont .box {display: flex; flex-direction: column; align-items: center;}
._contact._complete .cont .box .icon {width: 47.5px; height: 47.5px; display: flex; align-items: center; justify-content: center; background: #ffc000; color: #fff; font-size: 24px; border-radius: 50%;}
._contact._complete .cont .box .bold {font-size: 38px; letter-spacing: -0.019em; color: #101011; font-weight: bold; padding: calc(25/38*1em);}
._contact._complete .cont .box .small {font-size: 20px; letter-spacing: -0.019em; color: #8c8e91; word-break: keep-all; text-align: center; line-height: 1.3;}
._contact._complete .cont .box .defaltBtn {margin-top: 50px;}

@media screen and (max-width: 1024px) {
    ._contact._complete .cont .box .icon {width: 40px; height: 40px;;}
    ._contact._complete .cont .box .bold {font-size: 32px;}
    ._contact._complete .cont .box .small {font-size: 18px;}
    ._contact._complete .cont .box .defaltBtn {margin-top: 40px;}
}
@media screen and (max-width: 500px) {
    ._contact._complete .cont .box .bold {font-size: 22px;}
    ._contact._complete .cont .box .small {font-size: 16px;}
    ._contact._complete .cont .box .defaltBtn {margin-top: 30px;}
}
