/* common */
.subpage { overflow: hidden; position:relative; text-align: left; }
.subpage > section {padding: 90px 0; position: relative; }
.subpage > section:nth-of-type(even) {background: #f7f7f7;}
.sub_inner { padding: 0 50px; margin: 0 auto; max-width: 1400px; width: 100%; }

.line_tit {text-align: left; position: relative;  padding-left: 15px;  }
.line_tit::before {content: ''; display: block; width: 4px; height: 60%; background-color: #1b1b7f; position: absolute; left: 0; top:20%; }

/* font size */
.fs_55 {font-size: 55px; font-weight :600; line-height: 1.2; color:#000; }
.fs_37 {font-size: 37px; font-weight :700; line-height: 1.2; color:#000; }
.fs_34 {font-size: 34px; font-weight:500; line-height: 1.32;  color:#000;  }
.fs_32 {font-size: 32px; font-weight:700; line-height: 1.57;  color:#000;  }
.fs_30 {font-size: 30px; font-weight:700; line-height: 1.57;  color:#000;  }
.fs_26 {font-size: 26px; font-weight:700; line-height: 1.57;  color:#000;  }
.fs_23 {font-size: 23px; font-weight:700; line-height: 1.61; color:#000; letter-spacing: -.46px;}
.fs_22 {font-size: 22px; font-weight:600; line-height: 1.4; color:#000;  }
.fs_21 {font-size: 21px; font-weight:700; line-height: 1.4; color:#000;  }
.fs_20 {font-size: 20px; font-weight:300; line-height: 1.67; color:#000;  }
.fs_19 {font-size: 19px; font-weight: 400; color: #333; line-height: 1.67; letter-spacing: -.36px; }
.fs_18 {font-size: 18px; font-weight: 400; color: #333; line-height: 1.83; letter-spacing: -.36px; }
.fs_17 {font-size: 17px; font-weight: 400; color: #333; line-height: 1.72; letter-spacing: -.36px; }
.fs_16 {font-size: 16px; font-weight: 400; color: #444; line-height: 1.72; letter-spacing: -.36px; }
.fs_15 {font-size: 15px; font-weight: 400; color: #666; line-height: 1.72; letter-spacing: -.36px; }

/*Content CSS*/
.line_tit {margin-bottom: 30px;}

#sec2 .list {display: flex; justify-content: space-between; text-align: center; }
#sec2 .list > li {width: calc(33.3% - 20px); border:1px solid #ddd; border-top: 3px solid #333; overflow: hidden; background-color: #fff; padding: 45px 30px;}
#sec2 .list > li:nth-child(even) {border-top-color: #1b1b7f;}
#sec2 .list .icon {display: flex; align-items: center; justify-content: center; width: 160px; height: 160px; background-color: #f7f7f7; border-radius: 50%; margin: 0 auto;}
#sec2 .list .icon img {transition: transform .5s; }
#sec2 .list li:hover .icon img {transform: rotateY(180deg);}

#sec2 .list .txt h3 {font-weight: 700; color:#000; line-height: 1.5; margin-bottom: 10px;}
#sec2 .list .txt h3::before {content: ''; display: block; width: 20px; height:1px; background-color: #000; margin: 35px auto 10px;}




/* sec3 */
.subpage .cont_wrap {display: flex; justify-content: space-between; align-items: flex-start; }
.subpage .location {width:50%;}

.subpage .form_wrap {width:calc(50% - 50px); text-align: left; border-top: 1px solid #000; padding: 25px 0 0; }
.subpage .form_wrap h4 {font-weight: 700; color:#000;  flex-shrink: 0; width: 130px; padding-left: 15px;}
.subpage .form_list {display: flex; flex-wrap: wrap; width: 100%; justify-content: space-between; }
.subpage .form_list > li {width: 100%; display: flex;}
.subpage .form_list > li:nth-child(n+2) {margin-top: 11px; }
.subpage .form_list input {width: 100%; border:1px solid #ddd;  padding: 15px 17px; height: 40px; font-weight: 400; color:#333; }
.subpage .form_list input::placeholder {color:#999; }
.subpage .form_list textarea {width: 100%; border:1px solid #ddd;  padding: 15px 17px; height:160px; font-weight: 400; color:#333;}
.subpage .form_list textarea::placeholder {color:#999;}
.subpage .form_list > li.content {border-top: 1px solid #ddd; margin-top: 25px; padding: 25px 0; }
.subpage .form_list > li.captcha {border-top: 1px solid #ddd; padding: 25px 0; border-bottom: 1px solid #ddd;}
/* btn */
.subpage .per_wrap .per_agree { text-align: left; position: relative; display: inline-block; margin: 56px 0;}
.subpage .per_wrap .per_agree input[type="checkbox"] {position: absolute; width: 100%; height: 100%; padding: 0; overflow: hidden; clip:rect(0,0,0,0);
border: 0;  }
.subpage .per_wrap .per_agree input[type="checkbox"] + label {display: inline-block; z-index: 1; position: relative;  cursor: pointer;
-webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; font-size:18px; font-weight:500; color:#000;  padding-left:31px; letter-spacing: -.42px;}
.subpage .per_wrap .per_agree input[type="checkbox"] + label::before {content: ''; position: absolute; left: 0; top: 1px; display: inline-block; width:20px; height:20px;  background-color: transparent; border:1px solid #ddd ;overflow: hidden;   }
.subpage .per_wrap .per_agree input[type="checkbox"] + label::after {content: ''; position: absolute; left: 6px; top: 7px;  width:9px; height:7px;
background:url("../img/contact_check.png") 50% no-repeat; }
.subpage .per_wrap .per_agree input[type="checkbox"]:checked + label::before {background-color: #1b1b7f; border-color: #1b1b7f; }
.subpage .per_wrap .per_agree input[type="checkbox"]:checked + label::after {background-image: url("../img/contact_check_w.png"); }
.subpage .per_wrap .modal_btn {cursor: pointer; display:inline-block; margin-left: 22px; font-size: 15px; font-weight: 400; color:#555; transition: all .3s;
border-bottom: 1px solid #555;}
.subpage .per_wrap .modal_btn:hover {color:#1b1b7f; border-bottom-color: #1b1b7f; }

.subpage .btn_wrap {display: flex; justify-content: space-between;}
.subpage .btn_wrap button {display: flex; align-items: center; justify-content: space-between; width:calc(50% - 10px); height: 80px; background-color: #1b1b7f; font-size: 20px;
font-weight: 700; color:#fff; transition: background-color .3s; padding: 0 33px;}
.subpage .btn_wrap button.reset {background-color: #333;}
.subpage .btn_wrap button:hover {background-color: #000; }

/* map */
#sec1 .map_wr {width: 100%; height: 576px; overflow: hidden; border: 1px solid #ddd;}
#sec1 .map_wr .wrap_map {height: 100%;}
#sec1 .map_wr .map_border {display: none;}

.loc_list {display: flex; flex-wrap: wrap; justify-content: space-between; margin-top: 20px;}
.loc_list > li {background-color: #f7f7f7; padding: 30px; text-align: left; width: calc(50% - 10px); display: flex; align-items: flex-start;}
.loc_list > li:first-child {width: 100%;  }
.loc_list > li:nth-child(n+2) {margin-top: 20px; }
.loc_list i {margin-right: 10px; color:#1b1b7f; position: relative; top:4px;}


/* 모달 */
#policy .modal-header {text-align: center; }
#policy .modal-header h1 {font-size:20px; font-weight:600; color:#000; text-align: center; width: 100%; }
#policy .modal-body p { font-size:14px; font-weight: 300; color:#666; text-align: left; letter-spacing: -.5px;}
#policy .modal-body {min-height: 300px; }
#policy .modal-dialog {max-width: 1300px !important}
#policy .modal-dialog textarea {width: 100%; border:0; height: auto ; font-size:14px; font-weight: 300; color:#555; letter-spacing: -.5px; word-break: keep-all; line-height: 26px; height: 75vh; background-color: #f7f7f7; border-radius: 5px; padding:20px;}




@media screen and (max-width:1400px) {
    /* common */
    .subpage br:not(.space) {display: none;}

    /* content */
    .subpage .form_wrap {width:calc(50% - 30px);}

    /* 모달 */
    #policy .modal-dialog {padding: 0 15px; }
    #policy .modal-header h1 {font-size:18px;}
}

@media screen and (max-width:1199px) {
    .subpage .cont_wrap {display: block;}
    .subpage .location {  width: 100%; margin-top: 50px;}
    .subpage .form_wrap {width: 100%; }
    .subpage .form_list input { padding: 15px;}
    .subpage .form_list textarea {padding: 15px;}
    .subpage .per_wrap .per_agree {margin:30px 0;}
    .subpage .btn_wrap button { height: 60px; font-size: 18px;}
}

@media screen and (max-width: 1024px) {
    /* common */
    .subpage {text-align: center;}
    .subpage > section {padding: 70px 0; }
    .sub_inner {padding:0 30px;}

    /* font size */
    .fs_55 {font-size:40px; }
    .fs_37 {font-size:30px; }
    .fs_34 {font-size: 27px;}
    .fs_32 {font-size: 26px;}
    .fs_30 {font-size: 25px;}
    .fs_26 {font-size: 21px;}
    .fs_23 {font-size: 19px;}
    .fs_22 {font-size: 19px;}
    .fs_21 {font-size: 18px; line-height: 1.4;}
    .fs_20 {font-size: 17px; line-height: 1.65;}
    .fs_19 {font-size: 17px; line-height: 1.65;}
    .fs_18 {font-size: 16px; line-height: 1.65;}
    .fs_17 {font-size: 15px; line-height: 1.65;}
    .fs_16 {font-size: 14px; line-height: 1.65;}
    .fs_15 {font-size: 13px; line-height: 1.65;}

    /* content */

    #sec2 .list {flex-direction: column; align-items: center; }
    #sec2 .list > li {width: 100%; max-width: 640px; padding: 30px; }
    #sec2 .list > li:nth-child(n+2) {margin-top:30px;}

    .subpage .form_wrap h4 {padding-top: 7px;}
    .subpage .per_wrap .per_agree input[type="checkbox"] + label {font-size: 16px;}
    .subpage .btn_wrap button {font-size: 16px;}
    #sec1 .map_wr {height: 450px;}
    .loc_list > li {padding: 20px 30px;}

    #policy .modal-body textarea {font-size: 12px; padding: 10px; line-height: 1.6;}

}

@media screen and (max-width: 640px) {
    /* common */
    .subpage > section {padding: 50px 0;}
    .sub_inner {padding:0 20px;}
    .sub_tit {margin-bottom: 20px; }

    /* font size */
    .fs_55 {font-size:32px; }
    .fs_37 {font-size:22px; }
    .fs_34 {font-size: 21px;}
    .fs_32 {font-size: 20px;}
    .fs_30 {font-size: 20px;}
    .fs_26 {font-size: 18px;}
    .fs_23 {font-size: 17px;}
    .fs_22 {font-size: 17px;}
    .fs_21 {font-size: 16px;}
    .fs_20 {font-size: 15px;}
    .fs_19 {font-size: 15px;}
    .fs_18 {font-size: 14px;}
    .fs_17 {font-size: 14px;}
    .fs_16 {font-size: 13px;}
    .fs_15 {font-size: 12px;}

    /* content */
    .line_tit {margin-bottom: 20px;}

    #sec2 .list > li {padding: 30px 20px; }
    #sec2 .list > li:nth-child(n+2) {margin-top:20px;}
    #sec2 .list .icon {width: 90px; height: 90px; }
    #sec2 .list .icon img {height: 40px;}
    #sec2 .list .txt h3 {margin-bottom: 5px;}
    #sec2 .list .txt h3::before { margin: 20px auto 10px;}

    /* sec3 */
    #sec1 .map_wr {height:300px;}
    .subpage .form_wrap h4 {padding-left: 10px; width: 100px;}
    .subpage .form_list input { padding: 10px; }
    .subpage .form_list textarea {height: 180px; padding: 10px; }

    .subpage .per_wrap .per_agree input[type="checkbox"] + label {font-size: 15px;}
    .subpage .per_wrap .per_agree input[type="checkbox"] + label::before {top:0;}
    .subpage .per_wrap .per_agree input[type="checkbox"] + label::after {top:6px; }
    .subpage .per_wrap .modal_btn {font-size: 13px; margin-left: 10px;}
    .subpage .btn_wrap button {font-size: 15px; width: calc(50% - 5px); padding:  0 15px;}


}
