@charset "utf-8";

.wps_100 {width:100%;}
.point {color:#2b469b !important;}
/* .grey_bg {background:#f8f8f8;} */

.clear_fix {width:100%; position:relative;}
.clear_fix:after {display:block;clear:both;content:''}

.div_scroll, .div_scroll2 {overflow: auto;position: relative}

.only_pc {display:block;}
.only_mob {display:none;}

@media( max-width:1024px) {
  .div_scroll table {width:1000px; font-size:15px;}
  .div_scroll img {width:1000px;}
}
@media( max-width:600px) {
  .div_scroll img {max-width:768px !important;}
  .div_scroll2 table {width:600px; font-size:15px;}
  .div_scroll2 img {max-width:600px !important;}
  .sub_contents {margin-top:0rem; overflow-y:hidden;}
  .only_pc {display:none;}
  .only_mob {display:block;}
}





/* .pd_b100 {padding-bottom:10.0rem!important;}
.pd_b130 {padding-bottom:13.0rem!important;} */

/*동영상*/
/* .video-section{
  width:100%;
  max-width:100%;
  margin:0 auto;
}

.video-container{
 margin-bottom:1.0rem;
  background:#dfdfdf;
  position: relative;
  width: 100%;
  height: auto;
  padding-top: 56.25%;
}

.video-container iframe{
  z-index: 1;
  top: 0;
  left: 0;
  position: absolute;
  width: 100%;
  height: 100%;
} */



/*테이블*/
.table {width:100%;  text-align:center;   position:relative; font-size: 1.8rem; background:transparent; line-height:1.65; }
.table thead {border-top: 3px solid #2a303a; background:#f8f8f8; }
.table thead th{ border-bottom: 1px solid #2a303a;   border-left: 1px solid #2a303a; color: #000; font-weight: bold;  padding: 20px 12px; }
.table thead th:first-child {border-left: 0;}
.table .le_line { border-left: 1px solid #2a303a !important;}
.table .le_line2 { border-left: 1px solid #bebebe !important;}

.table tbody th {border-bottom: 1px solid #bebebe; padding: 12px; color: #000;  vertical-align: middle;  font-weight: bold;}
.table tbody td {border-bottom: 1px solid #bebebe; border-left: 1px solid #bebebe; padding: 12px; color: #555;  vertical-align: middle;  }
.table tbody td:first-child {border-left: 0; text-align:center; }
.table tbody td {text-align:center;}
.table tbody td strong {color:#000;}


.table2 {width:100%;  text-align:center;   position:relative; font-size: 15px; background:transparent; line-height: 1.45;}
.table2 thead { border-top: 3px solid #2a303a; background:#f8f8f8;  }
.table2 thead th{ border-bottom: 1px solid #2a303a;   border-left: 1px solid #2a303a; color: #000; font-weight: bold;  padding: 20px 12px; }
.table2 thead th:first-child {border-left: 0;}
.table2 .le_line { border-left: 1px solid #ddd !important;}
.table2 .le_line2 { border-left: 1px solid #bebebe !important;}

.table2 tbody th {border-bottom: 1px solid #bebebe; background:#f8f8f8; padding: 12px; color: #000;  vertical-align: middle;  font-weight: bold;}
.table2 tbody td {border-bottom: 1px solid #bebebe; border-left: 1px solid #bebebe; padding: 12px; color: #555;  vertical-align: middle;  }
.table2 tbody td:first-child {border-left: 0;}
.table2 tbody td strong {color:#000;}




@media screen and (max-width: 1600px){

}
@media screen and (max-width: 1400px){

}
@media screen and (max-width: 1024px){

}
@media screen and (max-width: 768px){

}



/* 공통 css */
:root{
	--main-color: #16406c;
	/* --point-font: Moderniz; */
}

.sub_contents {width: 100%; margin: 0 auto; line-height:1.55; font-size:2.0rem;}
.wid_1600 {width:100%; position:relative; max-width:1600px; margin:auto;}
.wid_1400 {width:100%; position:relative; max-width:1400px; margin:auto;}
@media( max-width:1600px) {
	/* .sub_contents {overflow-x:hidden; } */
	.side_mg {margin-left:3.0rem !important; margin-right:3.0rem !important;}
	.side_pd {padding-left:3.0rem !important; padding-right:3.0rem !important;}
}
@media( max-width:768px) {
	.side_mg {margin-left:2.4rem !important; margin-right:2.4rem !important;}
	.side_pd {padding-left:2.4rem !important; padding-right: 2.4rem !important;}
}

/* 컨텐츠 바텀 공통 */
.cont_mb{margin-bottom: 20.0rem}
@media( max-width: 768px ) {
    .cont_mb{margin-bottom: 12.0rem}
}

/* 섹션 타이틀 */
.section_title{
  text-align: center;
  font-size: 4.4rem;
  font-weight: bold;
  margin-bottom: 14.0rem;
}
.section_title::after{
  content: '';
  display: block;
  width: 6.0rem;
  height: 0.4rem;
  background-color: var(--main-color);
  margin: 2.0rem auto 0 auto;
}
@media( max-width: 768px ) {
  .section_title{
    font-size: 3.4rem;
    margin-bottom: 5.2rem;
  }
}

/* 굵은 폰트 */
.fw_bold{font-weight: 800;}

/* flex grid */
.flex_box { display: flex; }
.items_center { align-items: center; }
.items_stretch { align-items: stretch; }
.grid_box { display: grid; }
.grid_cols_2 { grid-template-columns: repeat(2, 1fr); }
.grid_cols_3 { grid-template-columns: repeat(3, 1fr); }
.grid_cols_4 { grid-template-columns: repeat(4, 1fr); }
.grid_cols_5 { grid-template-columns: repeat(5, 1fr); }
.gap_24 { gap: 2.4rem; }
.gap_32 { gap: 3.2rem; }
.gap_40 { gap: 4rem; }
.gap_62 { gap: 6.2rem; }
@media( max-width: 1200px ) {
    .grid_cols_2,
    .grid_cols_3 {
        grid-template-columns: repeat(1, 1fr);
    }
    .grid_cols_4,
    .grid_cols_5 {
        grid-template-columns: repeat(2, 1fr);
    }
}
@media( max-width: 768px ) {
    .grid_cols_2,
    .grid_cols_3,
    .grid_cols_4{
        grid-template-columns: 1fr;
    }
    .grid_cols_5 {
        grid-template-columns: 1fr 1fr;
    }
    .gap_24 { gap: 2.0rem !important; }
    .gap_40 { gap: 3.2rem; }
    .gap_62 { gap: 5.0rem; }
}


.txt_l {text-align:left !important;}
.txt_c {text-align:center !important;}
.txt_r {text-align:right !important;}


/* margin 마진 */
.mg_t0 {margin-top:0px!important;}
.mg_t10{margin-top:1.0rem!important;}
.mg_t20{margin-top:2.0rem!important;}
.mg_t30{margin-top:3.0rem!important;}
.mg_t40{margin-top:4.0rem!important;}
.mg_t50{margin-top:5.0rem!important;}
.mg_t80{margin-top:8.0rem!important;}
.mg_t100{margin-top:10.0rem!important;}
.mg_t120{margin-top:12.0rem!important;}
.mg_t150{margin-top:15.0rem!important;}
.mg_t280{margin-top:28.0rem!important;}

.mg_b10{margin-bottom:1.0rem!important;}
.mg_b20{margin-bottom:2.0rem!important;}
.mg_b30{margin-bottom:3.0rem!important;}
.mg_b40{margin-bottom:4.0rem!important;}
.mg_b50{margin-bottom:5.0rem!important;}
.mg_b80{margin-bottom:8.0rem!important;}
.mg_b100{margin-bottom:10.0rem!important;}
.mg_b120{margin-bottom:12.0rem!important;}
.mg_b150{margin-bottom:15.0rem!important;}
.mg_b280{margin-bottom:28.0rem!important;}
@media( max-width: 768px ) {
  .mg_t0 {margin-top:0px!important;}
  .mg_t10{margin-top:8.0rem!important;}
  .mg_t20{margin-top:1.0rem!important;}
  .mg_t30{margin-top:2.0rem!important;}
  .mg_t40{margin-top:3.0rem!important;}
  .mg_t50{margin-top:4.0rem!important;}
  .mg_t80{margin-top:6.0rem!important;}
  .mg_t100{margin-top:8.0rem!important;}
  .mg_t120{margin-top:10.0rem!important;}
  .mg_t150{margin-top:12.0rem!important;}

  .mg_b10{margin-bottom:0.8rem!important;}
  .mg_b20{margin-bottom:1.0rem!important;}
  .mg_b30{margin-bottom:2.0rem!important;}
  .mg_b40{margin-bottom:3.0rem!important;}
  .mg_b50{margin-bottom:4.0rem!important;}
  .mg_b80{margin-bottom:6.0rem!important;}
  .mg_b100{margin-bottom:5.2rem!important;}
  .mg_b120{margin-bottom:9.0rem!important;}
  .mg_b150{margin-bottom:10.0rem!important;}
  .mg_b280{margin-bottom:24.0rem!important;}
  
}

/* padding 패딩 */
.pd_12 { padding: 1.2rem; }
.pd_16 { padding: 1.6rem; }
.pd_24 { padding: 2.4rem; }
.pd_28 { padding: 2.8rem; }
.pd_32 { padding: 3.2rem; }
.pd_40 { padding: 4.0rem; }
.pd_100 { padding: 10.0rem; }
@media( max-width: 768px ) {
  .pd_16 { padding: 1.2rem; }
  .pd_24 { padding: 2.2rem; }
  .pd_28 { padding: 2.4rem; }
  .pd_32 { padding: 2.8rem; }
  .pd_40 { padding: 3.6rem; }
  .pd_100 { padding: 3.6rem; }
}


/* radius */
.rd_16 { border-radius: 1.6rem; overflow: hidden;}
.rd_20 { border-radius: 2.0rem; overflow: hidden;}
.rd_24 { border-radius: 2.4rem; overflow: hidden;}
@media( max-width: 768px ) {
    .rd_16 { border-radius: 1.2rem;}
    .rd_20 { border-radius: 1.6rem; }
    .rd_24 { border-radius: 2.0rem; }
}

.main_color{
  color: var(--main-color);
}
.main_color_bg{
  background-color: var(--main-color);
}
img{
  vertical-align:middle;
  width: 100%;
  height: 100%;
  object-fit: cover;
}


/* company 회사개요 */
/* company 회사개요 */
/* company 회사개요 */
.company .message{
  position: relative;
}
.company .message .bg_wrap{
  position: relative;
  height: 44rem;
}
.company .message .bg{
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  z-index: -1;
}
.company .message .bg::after{
  content: "";
  position: absolute;
  top: 0; left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.3); /* 검은색 반투명 */
  pointer-events: none; /* 클릭 방해 안 함 */
}
.company .message .message_text{
  margin: 0 auto;
  margin-top: -19rem;
  width: min(100% - 8.0rem, 1200px);
  max-width: 1200px;
  background-color: #fff;
  padding-bottom: 0;
}
.company .message .message_text .line{
  width: 1px;
  height: 3.6rem;
  background-color: #000;
  margin: 4.0rem;
}
.company .message .message_text .text2 li{
  flex-wrap: nowrap;
}
.company .message .message_text .text2 li p:first-child{
  min-width: 84px;
}
.company .message .message_text .text2 li p:last-child{
  flex: 1;
}
@media screen and (max-width: 768px){
  .company .message .bg_wrap{
    height: 32.0rem;
  }
  .company .message .message_text{
    padding: 2rem;
    margin-top: -24rem;
    width: min(100% - 4.8rem, 1200px);
  }
  .company .message .message_text h2{
    padding: 2.0rem;
    margin-bottom: 2.0rem !important;
    font-size: 2.2rem;
  }
  .company .message .message_text .line{
    margin: 2.0rem;
  }
  .company .message .message_text .text2 li p:first-child{
    min-width: 64px;
  }
  
}


.company .dgital{
  position: relative;
}
.company .dgital .bg {
  margin-bottom: 28.0rem;
  width: 100%;
  max-height: 80.0rem;
  overflow: hidden;
  display: block;
  opacity: 0.7;
  mask-image: linear-gradient(
      to bottom,
      rgba(255, 255, 255, 0) 30%,   /* 위: 완전 투명 */
      rgba(255, 255, 255,0.6) 100% 
  );
}
.company .dgital .digital_img {
  width: 100%;
  max-width: 1400px;
  padding: 0 4.0rem;
  position: absolute;
  top: 60%;
  left: 50%;
  transform: translate(-50%, -50%); 
}
@media screen and (max-width: 768px){
  .company .dgital .bg {
    margin-bottom: 16.0rem;
  }
  .company .dgital .digital_img {
    padding: 0 2.0rem;
  }
}

.company .info .info_box .info_list{
  border: 1px solid #ccc;
  padding: 3.2rem;
}
.company .info .info_box .info_list:first-child{
  color: #fff;
  border: 1px solid transparent;
}
.company .info .info_box .info_list > p{
  max-width: 7.2rem;
  border-radius: 999px;
}
.company .info .info_box .info_list:first-child > p{
  background-color: #fff;
}
.company .info .info_box .info_list div h5{
  font-size: 3.0rem;
}
.company .info .info_box .info_list div span{
  font-size: 2.0rem;
  color: #999;
}
.company .info .info_box .info_list{
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  align-items: stretch;
}
@media screen and (max-width: 768px){
  .company .info .info_box .info_list{
    padding: 2.4rem;
  }
  .company .info .info_box .info_list div h5{
    font-size: 2.4rem;
  }
  .company .info .info_box .info_list > p{
    margin-right: 0;
    margin-left: auto;
  }
}


/* ci 소개 */
/* ci 소개 */
/* ci 소개 */
.ci .slogan{
  position: relative;
  display: flex;
  justify-content: center;
  color: #fff;
}
.ci .slogan .slogon_text{
  width: 100%;
  max-width: 1600px;
  padding: 20.0rem 4.0rem;
}
.ci .slogan .slogon_text > p{
  font-size: 3.6rem;
}
.ci .slogan .slogon_text h2{
  font-size: 4.8rem;
}
.ci .slogan .list li{
  border: 1px solid #ccc;
}
.ci .slogan .list li h5{
  font-size: 2.4rem;
}
.ci .slogan .list li p{
  font-size: 1.8rem;
  color: #eee;
}
.ci .slogan .bg{
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  z-index: -1;
  overflow: hidden;
}
.ci .slogan .bg::after{
  content: "";
  position: absolute;
  top: 0; left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.6);
}

.ci .ciIntro .logo{
  padding: 4.0rem;
  max-width: 74.0rem;
  margin: 0 auto;
}
.ci .ciIntro ul li{
  width: 100%;
  border-top: 1px solid #ccc;
  padding: 4.0rem 0;
  grid-template-columns: repeat(2, 1fr);
}
.ci .ciIntro ul li div{
  justify-items: start;
  align-items: baseline;
}
.ci .ciIntro ul li .text{
  color: #333
}
.ci .ciIntro ul li .num{
  width: 4.4rem;
  height: 4.4rem;
  color: #fff;
  font-size: 3.0rem;
  margin-right: 2.0rem;
  border-radius: 999rem;
  box-sizing: border-box;
  justify-content: center;
  align-items: center;
}
.ci .ciIntro ul li .title{
  font-size: 3.4rem
}
.ci .ciIntro ul li span{
  font-weight: 800;
}
@media screen and (max-width: 768px){
  .ci .slogan .slogon_text > p{
    font-size: 2.4rem;
  }
  .ci .slogan .slogon_text h2{
    font-size: 3.0rem;
  }
  .ci .slogan .list li h5{
    font-size: 2.0rem;
    margin-bottom: 3.2rem !important;
  }
  .ci .slogan .list li p{
    font-size: 1.6rem;
  }
  .ci .slogan .slogon_text{
    padding: 12.0rem 2.8rem;
  }
  .ci .ciIntro ul li{
    grid-template-columns: repeat(1, 1fr);
    padding: 2.8rem 0;
  }
  .ci .ciIntro ul li > div{
    margin-bottom: 2.4rem;
    align-items: center;
  }
  .ci .ciIntro ul li .num{
    font-size: 2.0rem;
    width: 3.6rem;
    height: 3.6rem;
    margin-right: 1.6rem;
  }
  .ci .ciIntro ul li .title{
    font-size: 2.8rem
  }
  .ci .ciIntro ul li span{
    font-weight: 800;
  }
}



.history_img {
  background: url('../../pages/images/history_bg_01.png');
  background-repeat: no-repeat;
  background-size: cover;
  padding: 8.0rem;
  position: relative;
  justify-content: center;
  align-items: center; 
}
.history_img::before{
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.6);
  z-index: 1;
}
.history_img img{
  position: relative;
  z-index: 2;
  max-width: 40rem;
  object-fit: contain;
  left: -1.2rem;
}
.history_list {
    display: grid;
    grid-template-columns: 1fr 12.0rem 1fr;
    position: relative;
    gap: 1.6rem 1.0rem;
    align-items: start;
}
.history_list h2{
  font-size: 3.4rem;
}
.history_list .line_wrap {
  height: 100%;
  display: flex;
  justify-content: center;
}
.history_list .line {
  background-color: #ccc;
  width: 4px;
  height: 100%;
}
.history_list .line.colored {
  background-color: var(--main-color);
}
@media screen and (max-width: 1200px){
  .history_list h2{
    font-size: 2.8rem;
  }
  .history_list .line {
    background-color: #ccc;
    height: 100%;
  }
}
@media screen and (max-width: 768px){
  .history_img {
    padding: 6.0rem;
  }
  .history_list {
    display: grid;
    grid-template-columns: 1fr 4.0rem 1fr;
  }
  .history_list h2{
    font-size: 2.4rem;
  }
  .history_list p{
    font-size: 1.6rem;
  }
}





/* 인증서 */
.certification .cert_list{
  position: relative;
}
.certification .cert_list p:first-child {
  background-color: #eee;
  max-width: 100%;
  height: auto;
  padding-bottom: 7.0rem;
}
.certification .cert_list p:first-child img{
  box-shadow: 0 0 2.0rem rgba(0, 0, 0, 0.2);
}
.certification .cert_list p:last-child {
  width: calc(100% - 6.0rem);
  font-size: 2.0rem;
  text-align: center;
  color: #fff;
  position: absolute;
  left: 50%;
  bottom: 0;
  transform: translateX(-50%);
}
@media( max-width: 1200px ) {
  .certification ul {
    grid-template-columns: repeat(2, 1fr);
    gap: 3.2rem;
  }
}
@media( max-width: 768px ) {
  .certification ul {
    grid-template-columns: repeat(1, 1fr);
  }
}


.organigram_img {
  background: url('../../pages/images/organigram_bg_01.png');
  background-repeat: no-repeat;
  background-size: cover;
  padding: 12.0rem;
  justify-content: center;
  align-items: center; 
}
.organigram_img img{
  max-width: 80.0rem;
  object-fit: contain;
  left: -1.2rem;
}
@media( max-width: 768px ) {
  .organigram_img {
    padding: 6.0rem 2.4rem;
  }
  .organigram_img img{
    width: 100%;
  }
}


.solution h3{
  font-size: 2.8rem;
}
.solution_img {
  width: 100%;
  padding: 0 6.0rem;
  justify-content: center;
  align-items: center; 
}
.solution_img img{
  object-fit: contain;
}
@media( max-width: 768px ) {
  .solution_img {
    padding: 0;
  }
}





.plan .wid_wide.bg{
  background: url('../../pages/images/plan_bg_01.png');
  height: auto;
  padding: 6.0rem 0;
  background-repeat: no-repeat;
  background-size: cover;
  justify-content: center;
  align-items: center; 
}
.plan_bussiness {
  padding: 12.0rem 0;
}
.plan_bussiness .bussiness_title{
  color: #fff;
}
.plan_bussiness .bussiness_box div{
  background-color: #fff;
  flex-direction: column;
  justify-content: space-between;
  align-items: stretch;
}
.plan_bussiness .bussiness_box div p{
  font-size: 2.4rem;
}

.plan_goal .goal_box{
  grid-template-columns: 1fr 1fr 2fr;
}
.plan_goal .goal_box div{
  flex-direction: column;
  justify-content: space-between;
  align-items: stretch;
  border: 1px solid #ccc;
}
.plan_goal .goal_box ul{
  grid-template-columns: auto 3fr;
  gap: 1.2rem 2.0rem ;
}
.plan_goal  .goal_box ul li{
  font-size: 2.4rem;
}
.plan_goal  .goal_box ul li span{
  font-size: 2.0rem;
  line-height: 0.8;
}
.plan_goal .goal_box .sales{
  background: linear-gradient(351deg,rgba(22, 64, 108, 1) 0%, rgba(5, 30, 51, 1) 100%);
  border: 1px solid transparent;
  color: #ccc;
}
.plan_goal .goal_box .sales .white{
  color: #fff;
}
.plan_goal .goal_box .chart span{
  font-size: 2.0rem;
  color: #999;
}
.plan_goal .goal_box .chart img{
  object-fit: contain;
  padding-bottom: 1.6rem;
}

@media( max-width: 1200px ) {
  .plan_goal .goal_box{
    grid-template-columns: 1fr 1fr;
  }
  .plan_goal .goal_box .chart {
    grid-column: span 2;
  }
}
@media( max-width: 768px ) {
  .plan .wid_wide.bg{
    padding: 0;
  }
  .plan_bussiness {
    padding: 12.0rem 0;
  }
  .plan_bussiness .bussiness_box div p{
    font-size: 2.0rem;
  }
  .plan_bussiness .bussiness_title,
  .plan_goal .goal_title{
    font-size: 2.8rem;
  }
  .plan_goal .goal_box{
    grid-template-columns: 1fr;
  }
  .plan_goal .goal_box .chart {
    grid-column: span 1;
  }
  .plan_bussiness .bussiness_box h1,
  .plan_goal .goal_box h1{
    font-size: 3.2rem;
  }
}


.root_daum_roughmap{
  width: 100% !important;
}
.map_border.border1,
.map_border.border2,
.map_border.border3,
.map_border.border4,
#daumRoughmapContainer1764634442682 .cont,
#daumRoughmapContainer1764635357919 .cont,
.wrap_btn_zoom,
.wrap_controllers{
  display: none !important;
}
#daumRoughmapContainer1764634442682 .wrap_map,
#daumRoughmapContainer1764635357919 .wrap_map{
  height: 48.0rem;
}
.map_box{
  width: 100%;
  border-top: 1px solid #000;
  padding-top: 2.0rem;
}
.map_box h2{
  font-size: 2.8rem;
}
@media ( max-width: 768px ) {
  #daumRoughmapContainer1764634442682 .wrap_map,
  #daumRoughmapContainer1764635357919 .wrap_map{
    height: 20.0rem;
  }
  .map_box h2{
    font-size: 2.4rem;
  }
}

