/* 종합 컨설팅 */
#consolting {
  width:100%;
  display:flex;
  justify-content: space-between;
  margin-top:140px;
  position:relative;
}
.con_left {
  width:25%;
  position:sticky;
  align-self: flex-start;
  height:auto;
  top:32px;
}
.con_category > li > a {
  font-size:26px;
  font-weight: 700;
  color:var(--color-cc);
  transition: .3s;
}
.con_category > li.choice > a {
  color:black;
}
.con_category > li:not(:first-of-type) {
  padding-top:36px;
}
.con_category > li:hover {
  cursor: pointer;
  transition: .3s;
}
.con_category > li:not(.choice):hover a {
  color:#999;
}

/* right */
.con_right {
  width:75%;
}
.round_title8 {
  padding-left:8px;
}


/**/
/**/
/**/
/* start */
.certification_info {
  width:100%;
  display:flex;
  justify-content: flex-start;
  gap:32px;
  align-items: flex-end;
}
.certification_infoImg {
  width:44%;
  height:400px;
  border-radius: 20px;
  overflow:hidden;
  display:flex;
  justify-content: center;
  align-items: center;
}
.SNI_image {
  background-color: #F1F2F5;
  border:solid 1px #e8e8e8;
}
.SNI_image img {
  width:200px;
}

.certification_info_txt {
  padding-bottom:12px;
  width:56%;
}
.certification_info_txt h2 {
  font-size:20px;
  font-weight: 700;
}
.certification_info_txt .sub_title {
  color:var(--color-76);
  font-weight: 400;
  padding-top:4px;
  font-size:14px;
  display:block;
}
.certification_info_txt p {
  word-break: keep-all;
  font-weight: 500;
  font-size:14px;
  line-height: 1.8;
}
.certification_info_txt p:first-of-type {
  padding-top:32px;
}
.certification_info_txt p:last-of-type {
  padding-top:12px;
}


/* 인증 심사 절차 */
.bpom_judg_sec {
  margin-top:140px;
}
.bpom_judg_sec h2 {
  padding-bottom:24px;
  font-size:26px;
  font-weight: 600;
}
.bpom_judg_step_wrap {
  display:flex;
  justify-content:space-between;
  align-items:stretch;
  gap:12px;
}
/* box */
.step_box {
  width:31%;
  padding:50px 32px;
  text-align:center;
  background-color:white;
  border:solid 1px var(--color-main);
  border-radius:40px;
}
.step_header {
  width:100%;
  margin-bottom:24px;
}
.step_header p {
  font-size:14px;
  color:var(--color-main);
}
.step_header h4 {
  font-size:18px;
  font-weight: 600;
}
.bpom_judg_next {
  display:flex;
  justify-content: center;
  align-items: center;
}
.step_box.green {
  background-color:var(--color-sub);
}
.bpom_gtep_wrap2 {
  margin-top:24px;
}


/*  li Dot */
.step_box .liDot {
  color:var(--color-111);
  margin-top:12px;
  text-align:left;
}
.step_box .liDot > li {
  display:flex;
  margin-top:8px;
  font-weight: 400;
  word-break: keep-all;
}
.step_box .liDot > li::before {
  content: "";
  display:block;
  width:4px;
  height:4px;
  border-radius: 90px;
  background-color:var(--color-111);
  margin-top:3.3%;
  margin-left:6px;
  margin-right:12px;
}
.step_box:hover h3 {
  color:#2cbd2c;
}


.bpom_lasts_contetns {
  margin-top:140px;
}
.bpom_lasts_contetns p {
  line-height: 1.8;
}
.bpom_lasts_contetns p:nth-child(2) {
  margin-top:32px;
}

/* 태블릿 반응형 (769px - 1024px) */
@media screen and (min-width: 769px) and (max-width: 1024px) {
  #consolting {
    margin-top: 80px !important;
    flex-direction: column !important;
    gap: 40px !important;
  }
  
  .con_left {
    width: 100% !important;
    position: static !important;
    order: -1 !important;
  }
  
  .con_category {
    display: flex !important;
    justify-content: center !important;
    gap: 30px !important;
    flex-wrap: wrap !important;
  }
  
  .con_category > li:not(:first-of-type) {
    padding-top: 0 !important;
  }
  
  .con_category > li > a {
    font-size: 22px !important;
  }
  
  .con_right {
    width: 100% !important;
  }
  
  .certification_info {
    flex-direction: column !important;
    gap: 24px !important;
  }
  
  .certification_infoImg {
    width: 100% !important;
    height: 300px !important;
  }
  
  .SNI_image img {
    width: 180px !important;
  }
  
  .certification_info_txt {
    width: 100% !important;
    padding-bottom: 0 !important;
  }
  
  .certification_info_txt h2 {
    font-size: 24px !important;
  }
  
  .certification_info_txt p {
    font-size: 16px !important;
  }
  
  .bpom_judg_sec {
    margin-top: 80px !important;
  }
  
  .bpom_judg_sec h2 {
    font-size: 24px !important;
  }
  
  .bpom_judg_step_wrap {
    flex-direction: column !important;
    gap: 16px !important;
  }
  
  .step_box {
    width: 100% !important;
    padding: 40px 24px !important;
  }
  
  .step_header h4 {
    font-size: 20px !important;
  }
  
  .bpom_judg_next {
    display: none !important;
  }
  
  .bpom_gtep_wrap2 {
    margin-top: 16px !important;
  }
  
  .step_box .liDot > li {
    font-size: 15px !important;
  }
}

/* 모바일 반응형 (max-width: 768px) */
@media screen and (max-width: 768px) {
  #consolting {
    margin-top: 60px !important;
    flex-direction: column !important;
    gap: 30px !important;
  }
  
  .con_left {
    width: 100% !important;
    position: static !important;
    order: -1 !important;
  }
  
  .con_category {
    display: flex !important;
    justify-content: center !important;
    gap: 20px !important;
    flex-wrap: wrap !important;
  }
  
  .con_category > li:not(:first-of-type) {
    padding-top: 0 !important;
  }
  
  .con_category > li > a {
    font-size: 18px !important;
  }
  
  .con_right {
    width: 100% !important;
  }
  
  .round_title8 {
    padding-left: 0 !important;
    text-align: center !important;
  }
  
  .certification_info {
    flex-direction: column !important;
    gap: 20px !important;
  }
  
  .certification_infoImg {
    width: 100% !important;
    height: 250px !important;
  }
  
  .SNI_image img {
    width: 140px !important;
  }
  
  .certification_info_txt {
    width: 100% !important;
    padding-bottom: 0 !important;
  }
  
  .certification_info_txt h2 {
    font-size: 20px !important;
  }
  
  .certification_info_txt .sub_title {
    font-size: 13px !important;
  }
  
  .certification_info_txt p {
    font-size: 14px !important;
  }
  
  .certification_info_txt p:first-of-type {
    padding-top: 20px !important;
  }
  
  .bpom_judg_sec {
    margin-top: 60px !important;
  }
  
  .bpom_judg_sec h2 {
    font-size: 20px !important;
    text-align: center !important;
  }
  
  .bpom_judg_step_wrap {
    flex-direction: column !important;
    gap: 16px !important;
  }
  
  .step_box {
    width: 100% !important;
    padding: 30px 20px !important;
  }
  
  .step_header p {
    font-size: 13px !important;
  }
  
  .step_header h4 {
    font-size: 16px !important;
  }
  
  .bpom_judg_next {
    display: none !important;
  }
  
  .bpom_gtep_wrap2 {
    margin-top: 16px !important;
  }
  
  .step_box .liDot > li {
    font-size: 14px !important;
  }
  
  .step_box .liDot > li::before {
    width: 3px !important;
    height: 3px !important;
  }
}

/* 소형 모바일 반응형 (max-width: 375px) */
@media screen and (max-width: 375px) {
  #consolting {
    margin-top: 40px !important;
    gap: 20px !important;
  }
  
  .con_category {
    gap: 12px !important;
  }
  
  .con_category > li > a {
    font-size: 16px !important;
  }
  
  .certification_info {
    gap: 16px !important;
  }
  
  .certification_infoImg {
    height: 200px !important;
  }
  
  .SNI_image img {
    width: 110px !important;
  }
  
  .certification_info_txt h2 {
    font-size: 18px !important;
  }
  
  .certification_info_txt .sub_title {
    font-size: 12px !important;
  }
  
  .certification_info_txt p {
    font-size: 13px !important;
  }
  
  .certification_info_txt p:first-of-type {
    padding-top: 16px !important;
  }
  
  .bpom_judg_sec {
    margin-top: 40px !important;
  }
  
  .bpom_judg_sec h2 {
    font-size: 18px !important;
    padding-bottom: 20px !important;
  }
  
  .bpom_judg_step_wrap {
    gap: 12px !important;
  }
  
  .step_box {
    padding: 24px 16px !important;
  }
  
  .step_header p {
    font-size: 12px !important;
  }
  
  .step_header h4 {
    font-size: 14px !important;
  }
  
  .bpom_gtep_wrap2 {
    margin-top: 12px !important;
  }
  
  .step_box .liDot {
    margin-top: 8px !important;
  }
  
  .step_box .liDot > li {
    font-size: 13px !important;
    margin-top: 6px !important;
  }
  
  .step_box .liDot > li::before {
    width: 2px !important;
    height: 2px !important;
    margin-right: 8px !important;
  }
}