/* 공통 */
/* form layout*/
.common_input,.common_textarea,.common_select{width:100%;padding:8px 12px;border:1px solid #e5e7eb;border-radius:8px;transition:all 0.3s ease;font-size:15px;min-height:45px}
.common_input:focus,.common_textarea:focus,.common_select:focus{outline:none;border-color:#4C6CE6;box-shadow:0 0 0 3px rgba(76, 108, 230, 0.1)}
.common_textarea{min-height:150px;resize:vertical}

.form_label{width:90px;flex-shrink:0;font-size:15px;line-height:25px;margin-bottom:4px;font-weight:500;color:#111}
.form_row{display:flex;align-items:center;margin-bottom:15px}
.form_row:last-of-type{margin-bottom:0}
.form_block{width:100%}

.input_wrap{display:flex;flex-direction:column;gap:10px}
.input_group{display:flex;flex-direction:column}
.input_group2{display:flex;flex-grow:1;position:relative}

.phone_group{display:flex;gap:4px}
.phone_group .form_select{width:5rem}
.phone_group .form_input{flex:1}

.date_range_wrap{display:flex;align-items:center;flex-grow:1;gap:4px}
.date_range_wrap .common_input{flex-grow:1;width:auto}.date_tilde{margin:0 10px;font-size:16px}

.email_separator{margin:0 8px;font-size:16px;line-height:45px}

.radio_group{display:flex;gap:10px;margin-top:8px}
.radio_group{display:flex;gap:10px;margin-top:8px}
.radio_label{display:flex;align-items:center;gap:5px}

.form_input_fixed{width:200px}

.address_group{display:flex;gap:8px;margin-top:8px}
.address_group .common_input:first-child{width:200px;flex:none}
.address_group .common_input:last-child{flex:1}

.input_group2{gap:5px}
.mileage_unit{margin-left:8px;font-size:16px;line-height:45px}

.form_section{border-bottom:1px solid #e5e7eb;padding-bottom:20px;margin-bottom:20px}

/* button */
.btn_submit{width:100%;background:#5764f0;color:#fff;padding:8px 0;font-size:16px;font-weight:700;border:none;
border-radius:8px;cursor:pointer;transition:all 0.3s ease;position:relative;overflow:hidden;min-height:60px}
.btn_submit:hover {background:#4f5bda}

.btn_common{display:flex;justify-content:center;align-items:center;padding:6px 18px;border-radius:8px;cursor:pointer;font-size:15px;font-weight:500;min-width:100px;min-height:50px;transition:all 0.3s ease;}
.btn_primary{background:#5764f0;color:#fff}
.btn_primary:hover {background:#525ee0}
.btn_white{background:#fff;color:#5764f0;border:1px solid #5764f0;}
.btn_white:hover {background:#525ee0;color:#fff}
.btn_line{background:transparent;border:1px solid #232868;color:#232868}

.btn_secondary:hover{background: #e5e7eb;color:#222}
.btn_small{display:flex;justify-content:center;align-items:center;padding:4px 15px;border-radius:8px;cursor:pointer;font-size:14px;font-weight:700;min-width:80px;min-height:45px}
.btn_middle{display:flex;justify-content:center;align-items:center;padding:4px 15px;border-radius:8px;cursor:pointer;font-size:14px;font-weight:700;min-width:120px;min-height:50px}

.button_center{display:flex;justify-content:center;gap:4px;margin-top:30px}
.btn_search{display:flex;justify-content:center;align-items:center;padding:4px 12px;border-radius:8px;cursor:pointer;font-size:15px;font-weight:500;
    min-width:85px;min-height:45px;transition:all 0.3s ease;}

/* content */
.h3_title{font-size:32px;font-weight:400;color:#111;margin:70px 0 50px 0;line-height:normal}
.h4_title{font-size:22px;font-weight:700;color:#111;margin-bottom:20px}
.h4_title2{font-size:20px;font-weight:700;color:#111} /*여백x*/
.h4_title3{font-size:18px;font-weight:700;color:#111} /*여백x*/
.h5_title{font-size:17px;font-weight:700;color:#767676;margin-bottom:12px}

.h4_contitle{font-size:28px;font-weight:700;color:#111;margin-bottom:40px;text-align:center}
.h4_contitle2{font-size:28px;font-weight:700;color:#111;margin-bottom:15px;text-align:center}
.color_white{color:#fff}
.text_type1{font-size:16px;line-height:28px;color:#767676}

/* ul */
.ul_type1{list-style: disc;padding-left:20px;margin-bottom:40px;text-align:left}
.ul_type1 li{position:relative;font-size:16px;font-weight:400;color:#676767;padding-left:16px;line-height:32px}
.ul_type1 li:before{content: '';display: inline-block;width:4px;height:4px;position:absolute;top:14px;left:0;background:#673AFF}

.ul_type2{position:relative;padding-left:20px;margin-bottom:40px;text-align:left}
.ul_type2 li{position:relative;font-size:16px;font-weight:400;color:#676767;line-height:32px;padding-left:14px}
.ul_type2 li:before{content: '';display: inline-block;width:5px;height:1px;background:#676767;position:absolute;top:10px;left:0}

.table_type1{width:100%;margin-bottom:40px;background:#fff;overflow:hidden;border:1px solid #e5e7eb;border-radius:12px;}
.table_type1 th,.table_type1 td{padding:14px 12px;font-size:16px;text-align:center;vertical-align:middle;}
.table_type1 th{background:#f5f5ff;font-weight:700;color:#332d77;border-bottom:1px solid #e5e7eb;border-right:1px solid #e5e7eb;}
.table_type1 th:first-child{border-radius:12px 0 0 0;}
.table_type1 th:last-child{border-radius:0;border-right:none;}
.table_type1 td{background:#fff;border-bottom:1px solid #e5e7eb;border-right:1px solid #e5e7eb;}
.table_type1 td:last-child{border-right:none;}
.table_type1 td:first-child{border-left:none;}
.table_type1 tr:last-child td{border-bottom:none;}
.table_type1 th,.table_type1 td{border-top:none;}

.table_type2{width:100%;margin-bottom:40px;background:#fff;overflow:hidden;border:1px solid #e5e7eb;border-radius:12px;}
.table_type2 th,.table_type2 td{padding:14px 12px;font-size:16px;text-align:center;vertical-align:middle;border-bottom:1px solid #e5e7eb;border-right:1px solid #e5e7eb;}
.table_type2 th{background:#f5f5ff;font-weight:700;color:#201c4a;border-top:none;border-left:none;}
.table_type2 th:first-child{border-radius:12px 0 0 0;}
.table_type2 th:last-child{border-radius:0;}
.table_type2 td{background:#fff;border-left:none;}
.table_type2 tr:last-child td{border-bottom:none;}
.table_type2 th:last-child,.table_type2 td:last-child{border-right:none;}
.table_type2 tr:last-child td,.table_type2 td[rowspan]:last-child{border-bottom:none}

/* box */
.search_form_wrap{background:#fff;padding:30px 40px;border-radius:12px;border:1px solid #ddd;margin-bottom:40px}

.sub_content_topbox{display:flex;align-items:center;justify-content:space-between;background:#fff;border:1px solid #e5e7eb;border-radius:10px;padding:24px 32px;gap:24px;margin-bottom:24px}
.sub_content_topbox .text{flex:1}
.sub_content_topbox .text h3{font-size:22px;color:#222;font-weight:700;margin-bottom:10px}
.sub_content_topbox .text p{font-size:15px;color:#767676;margin-top:8px}
.sub_content_topbox .btn_apply{min-width:120px;height:48px;background:#5764f0;color:#fff;border:none;border-radius:8px;font-size:16px;font-weight:700;cursor:pointer;transition:background 0.2s}
.sub_content_topbox .btn_apply:hover{background:#4C6CE6}

.sub_check_box{display:flex;align-items:center;background:#f8f8f8;border-radius:20px;padding:25px 30px;gap:24px;margin-bottom:24px}
.sub_check_box .icon{display:flex;align-items:center;justify-content:center;margin-right:20px}
.sub_check_box .text{flex:1}
.sub_check_box .text h3{font-size:18px;color:#222;font-weight:700;margin-bottom:10px}
.sub_check_box .text ul.ul_type2{margin:0;padding-left:0}

/* 검색박스에서 선택된 라벨 */
.selected_label_wrap{display:flex;gap:5px;padding:20px 0;border-top:1px solid #e5e7eb;margin-top:20px;margin-bottom:0}
.selected_label{position:relative;display:flex;align-items:center;background:#fff;border:1px solid #5764f0;color:#5764f0;border-radius:8px;height:40px;padding:0 18px;font-size:14px;font-weight:500;transition:box-shadow 0.2s}
.selected_label .label_close{opacity:0;pointer-events:none}
.selected_label .label_close{position:absolute;top:-2px;right:-4px;transform:translateY(-50%);width:20px;height:20px;border-radius:50%;background:#e7e7e7;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background 0.2s,opacity 0.2s}
.selected_label .label_close:before,.selected_label .label_close:after{content:"";position:absolute;left:50%;top:50%;width:8px;height:2px;background:#5764f0;border-radius:2px}
.selected_label .label_close:before{transform:translate(-50%,-50%) rotate(45deg)}
.selected_label .label_close:after{transform:translate(-50%,-50%) rotate(-45deg)}
.selected_label:hover .label_close{opacity:1;pointer-events:auto}

/*input - radio check */
input[type=checkbox], input[type=radio] {--active: #275EFE;--active-inner: #fff;--focus: 2px rgba(39, 94, 254, .3);--border: #BBC1E1;--border-hover: #275EFE;--background: #fff;--disabled: #F6F8FF;--disabled-inner: #E1E6F9;-webkit-appearance: none;-moz-appearance: none;height: 21px;outline: none;display: inline-block;vertical-align: top;position: relative;margin: 0;cursor: pointer;border: 1px solid var(--bc, var(--border));background: var(--b, var(--background));transition: background 0.3s, border-color 0.3s, box-shadow 0.2s;}
input[type=checkbox]:after, input[type=radio]:after {content: "";display: block;left: 0;top: 0;position: absolute;}
input[type=checkbox]:checked, input[type=radio]:checked {--b: var(--active);--bc: var(--active);--d-o: .3s;--d-t: .6s;--d-t-e: cubic-bezier(.2, .85, .32, 1.2);}
input[type=checkbox]:disabled, input[type=radio]:disabled {--b: var(--disabled);cursor: not-allowed;opacity: 0.9;}
input[type=checkbox]:disabled:checked, input[type=radio]:disabled:checked {--b: var(--disabled-inner);--bc: var(--border);}
input[type=checkbox]:disabled + label, input[type=radio]:disabled + label {cursor: not-allowed;}
input[type=checkbox]:hover:not(:checked):not(:disabled),input[type=radio]:hover:not(:checked):not(:disabled) {--bc: var(--border-hover);}
input[type=checkbox]:focus,input[type=radio]:focus {box-shadow: 0 0 0 var(--focus);}
input[type=checkbox]:not(.switch), input[type=radio]:not(.switch) {height:21px;width: 21px;}
input[type=checkbox]:not(.switch):after, input[type=radio]:not(.switch):after {opacity: var(--o, 0);}
input[type=checkbox]:not(.switch):checked, input[type=radio]:not(.switch):checked {--o: 1;}
input[type=checkbox] + label, input[type=radio] + label {font-size: 14px;line-height: 21px;display: inline-block;vertical-align: top;cursor: pointer;margin-left: 4px;}
input[type=checkbox]:not(.switch) {border-radius: 7px;}
input[type=checkbox]:not(.switch):after {width: 5px;height: 9px;border: 2px solid var(--active-inner);border-top: 0;border-left: 0;left: 7px;top: 2px;transform: rotate(var(--r, 20deg));}
input[type=checkbox]:not(.switch):checked {--r: 43deg;}
input[type=checkbox].switch {width: 38px;border-radius: 11px;}
input[type=checkbox].switch:after {left: 2px;top: 2px;border-radius: 50%;width: 15px;height: 15px;background: var(--ab, var(--border));transform: translateX(var(--x, 0));}
input[type=checkbox].switch:checked {--ab: var(--active-inner);--x: 17px;}
input[type=checkbox].switch:disabled:not(:checked):after {opacity: 0.6;}

input[type=radio] {border-radius: 50%;}
input[type=radio]:after {width: 19px;height: 19px;border-radius: 50%;background: var(--active-inner);opacity: 0;transform: scale(var(--s, 0.7));}
input[type=radio]:checked {--s: .5;}

.inputauto{width:auto;max-width:100px}

.radio_group1{display:flex;gap:20px;align-items: center}
.radio_group1 input[type=text]{width:auto;max-width:100px}
.radio_group1 .radio_box {position: relative;}
.radio_group1 .radio_box input[type=radio]  {border-radius: 50%;}
.radio_group1 .radio_box input[type=radio]:after {width: 19px;height: 19px;border-radius: 50%;background: var(--active-inner);opacity: 1;transform: scale(var(--s, 0.7));}
.radio_group1 .radio_box input[type=radio]:checked {--s: .5;}
.radio_group1 .radio_box input[type=radio] label {display: inline-block;border: 1px solid #ddd;width: 20px;height: 20px;border-radius: 50%;padding: 0;}

.check_group ul{display:flex;gap:20px;align-items: center}


/* -----------------------푸터--------------------------- */
.footer{
    background-color: #000000;
    height: 300px;
}

.footer-info-wrap{
  margin: 0 auto;
  display: flex;
  max-width: 1300px;
  height: 300px;
  opacity: 0.5;
}


.footer-left-info{
    margin: 40px 20px 0 20px;
    display: flex;
    

}

.footer-right-info{
    margin: 40px 20px 0 20px;
}


.contact-info-1{
  width: 320px;
  height:220px;
}

.contact-info-2{
  width: 360px;
  height:220px;
}

.contact-info-3{
  display: flex;
  flex-direction: column;
  height:220px;
  padding-right: 20px;
} */



.university-logo{
    /* background-color: #8f6dff71; */
    width: 220px;
    height: 50px;
    display: flex;
    align-items: center;
    
}

.logoimg{
  /* background-color: brown; */
  height: 40px;
  
}

.logoimg2{
  /* background-color: brown; */
  height: 36px;
}


.contact-content{
  margin-top: 30px;
  /* background-color: #8f6dff80; */
}


.contact-content p{
  font-size: 14px;
  line-height: 21px;
  color: #d3d3d3;
  font-weight: 400;
  margin-top: 8px;
}


.footer-links {
  display: flex;
  /* background-color: #8f6dff; */
  height: 50px;
  justify-content: left;
  align-items: center;
  color: #fff;
}


.footer-link {
  /* background-color: #014611; */
  color: #fff;
  font-size: 14px;
  text-decoration: none;
  cursor: pointer;
  padding: 0 10 0 0;

}


.footer-copy {
    /* background-color: #c17a00; */
    height: 80px;
    margin: 30px 5px 0 0;
    

}


.copytext{
  color:#d3d3d3;
  font-size: 14px;
  text-align: left;
}




/* *****************미디어쿼리 반응형********************** */


/* PC (1200px 이하) */
@media (max-width:1199px){

  /*--- 메인페이지 반응형--- */
  .edu-wrap{
  grid-template-columns: repeat(3, 1fr);
  }

  .link-edu{
  /* width: 340px;
  height: 320px */
  width: 100%;
  height: 280px;
      
  }



  /*--- 푸터 --- */

  .footer{
    background-color: #000000;
    height: 500px;
}


  .footer-info-wrap{
  display: flex;
  flex-direction: column;
  max-width: 1300px;
  height: 250px;
  opacity: 0.5;
}

.footer-right-info{
  margin: 0 0 0 20px;
  display: flex;
}




}
/****** desktop*****/
@media screen and (min-width:1601px) and (max-width:1860px) {
    .main_partner_listwrap{right:-50px}


}
/****************************************** 높이조정 ******************************************/
/****** -------------------------- Desktop Device --------------------------  ******/

@media screen and (min-height:1070px){

}




/* 태블릿 (1199px이하) */
@media (max-width:767px){
  

    /*--- 메인페이지 반응형--- */
    .hero-innercont{
      margin: 0 auto;
      padding: 0 30px;
    }

    .hero-text{
      font-size: clamp(20px, 5vw, 40px);
      /* font-size: 36px; */
      text-align: center;
      word-break: keep-all;
    }

    .hero-subtext {
      font-size: clamp(14px, 2.267vw, 18px);
      text-align: center;
      line-height: 24px;
      word-break: keep-all;
    }
    
    .edu-wrap{
    grid-template-columns: repeat(2, 1fr);
    }


    .link-edu{
      width: 100%;
      height: 300px;
    }

    .site-selector,
    .search-btn,
    .form-input   {
      font-size: clamp(15px, 1.733vw, 16px);
    }
    .sect1-container{
    /* background-color:violet; */
    /* margin-top: 50px; */
    margin-top: clamp(30px, 90%, 60px);
    /* margin-top: clamp(30px, 90%, 60px); */
    }


    /*--- 데이터 상세페이지 반응형--- */

    .product-container{
      margin-top: 30px;
      margin-bottom: 30px;
      /* background-color: #08ffa9aa; */
      /* height: 500px; */
    }

    .product-innercont {
      flex-direction: column;
    
    }
    .product-thumb{
      width: 100%;

    }
    .product-detail{
      width: 100%;
      margin: 0;
      margin-top: 30px;
    }
    /* ----데이터 다운로드 페이지---- */
    .downform-term-container {
      margin-top: 60px;
  }


    /* ---------------푸터------------- */

    .contact-info-1{
    /* display: flex; */
    /* background-color: #620050; */
    width: 320px;
    height:220px;
  }

  .contact-info-2{
    /* display: flex; */
    /* background-color: #014611; */
    width: 360px;
    height:220px;
  }

  .contact-info-3{
    display: flex;
    flex-direction: column;
    /* background-color: #960202; */
    /* width: 600px; */
    height:220px;
    padding-right: 20px;
  }



}



@media (max-width: 600px) {

      /*--- 메인페이지 반응형--- */
    

      .hero-innercont{
        margin: 0 auto;
      }
      .hero-text {
        font-size: 24px;
        text-align: center;
        line-height: 40px;
        word-break: keep-all;
      }
      .hero-subtext {
        display: none;
        word-break: keep-all;
      }
      
      .edu-wrap{
        grid-template-columns: repeat(1, 1fr);
      }

      .form-group{
      /* background-color: rgba(137, 43, 226, 0.369); */
        display: flex;
        flex-wrap: wrap; 
        gap: 8px;
        height: 11rem;
      }


      .site-selector,
      .search-btn,
      .form-input   {
        max-width: none;
        width: 100%;
        font-size: 15px;
        margin: 0;
      }


      .sect1-container{
      margin-top: 30px;
      }



      /*--- 데이터 상세페이지 반응형--- */
      .product-thumb {
        height: clamp(300px, 80vw, 500px);
      }

      .top-innercont{
        margin: 0 auto;
      }

      .top-text{
        text-align: center;
        font-size: 22px;
      }

      .top-subtext{
        text-align: center;
        font-size: 15px;
      }
      

      /* ----데이터 다운로드 페이지---- */
      .downform-term {
        /* background-color: #8f6dff; */
        margin-bottom: 60px;
        position: relative;
        padding: 0 20px;
        display: none;
      }
      .term-wrap{
        display: block;
      }

      
      .term-cont {
        font-size: 14px;
      }



      summary{
        font-size:16px;
      }



    /* -----------------푸터---------------- */

    .footer-left-info{
      display: flex; 
      flex-direction: column;
      margin: 20px 20px 0 20px;
    }
    .footer-right-info{
      margin: 20px 20px 0 20px;
      /* background-color: #44ff00; */
      /* height: 300px; */
    }

    .contact-info-1{
      display: flex;
      flex-direction: column;
      align-items: center;
      /* background-color: #620050; */
      width: 100%;
      height:150px;
    }
    .contact-info-2{
      display: flex;
      flex-direction: column;
      align-items: center;
      /* background-color: #0a0062; */
      width: 100%;
      height:150px;
      margin-top: 20px;
    }
    .contact-info-3{
      display: flex;
      /* background-color: #4e6200; */
      width: 100%;
      height:150px;
    }

    .university-logo{
      /* background-color: #8f6dff71; */
      width: 220px;
      height: 50vw;
      display: flex;
      align-items: center;
    }

    .contact-content{
      text-align: center;
      margin-top: 0px;
      /* margin-left: 30px; */
    }
    .contact-content p{
      font-size: 14px;
      line-height: 21px;
      color: #d3d3d3;
      font-weight: 400;
      margin-top: 4px;
    }

    .university-logo{
      /* background-color: #8f6dff71; */
      width: 220px;
      height: 50px;
      display: flex;
      justify-content: center;

    }
    .logoimg, .logoimg2{
     height:clamp(20px, 12vw, 40px);
    }

      .footer-links {
      display: flex;
      /* background-color: #8f6dff; */
      height: 50px;
      justify-content: center;
      align-items: center;
      color: #fff;
    }


    .footer-link {
      /* background-color: #014611; */
      color: #fff;
      font-size: 14px;
      text-decoration: none;
      cursor: pointer;
      padding: 0 10 0 0;

    }


    .footer-copy {
        /* background-color: #c17a00; */
        height: 80px;
        margin: 30px 5px 0 0;

    }


    .copytext{
      color:#d3d3d3;
      font-size: 14px;
      margin: 0 auto;
      text-align: center;

    }

}






/* 모바일 (767px 이하) */
@media (max-width: 360px) {
  
  /*--- 메인페이지 반응형--- */
  .header-logo,
  .header-util{
    width: 100px;
  }


  .hero-innercont{
    margin: 0 auto;
  }
  .hero-text {
    font-size: 24px;
    text-align: center;
    line-height: 40px;
    word-break: keep-all;
  }
  .hero-subtext {
    display: none;
    word-break: keep-all;
  }
  
  .edu-wrap{
    grid-template-columns: repeat(1, 1fr);
  }

  .form-group{
  /* background-color: rgba(137, 43, 226, 0.369); */
    display: flex;
    flex-wrap: wrap; 
    gap: 8px;
    height: 11rem;
  }

  .site-selector,
  .search-btn,
  .form-input   {
    width: 100%;
    font-size: 15px;
    margin: 0;
  }
  .sect1-container{
  
    margin-top: 30px;
  }
  
  /*--- 데이터 상세페이지 반응형--- */

  .product-thumb {
    height: 18.75rem
  }
  .top-text{
    text-align: center;
    font-size: 20px;

  }
  .top-subtext{
    font-size: 14px;
  }
  
   /* ----데이터 다운로드 페이지---- */
  .downform-term-container {
    margin-top: 30px;
}
  .term-cont {
    font-size: 14px;
  }


  
}
