/* 타이틀공통 */
.page_title1 {position:relative; display:block; text-align:center; margin:80px 0 40px 0; }
.page_title1:before { content: ""; display: block; position: absolute; left: 50%; top:-10px; transform: translateX(-50%); width: 40px; height:2px; background: #222; }
.page_title1 .title {display:inline-block; font-size:2.5em; color:#000; line-height:1.4; font-weight:700; word-break:keep-all; }
.page_title1 .title_desc {display:block; margin-top:20px; font-size:1.25em; color:#000; line-height:1.6; word-break:keep-all; }
.page_title1 .title_desc span {display:inline-block; font-size:1em; color:#45a6e6; line-height:1.6; font-weight:600;}

.page_title2 {display:block; text-align:center; margin:80px 0 40px 0; }
.page_title2 .title {position:relative; display:inline-block; font-size:2.5em; color:#000; line-height:1.2; font-weight:700; background:#fff;}
.page_title2 .title:after { z-index:-1; content: ""; display: block; position: absolute; right:-10px; top:-5px; width:10px; height:10px; background:#45a6e6; border-radius:10px; }
.page_title2 .title span {color:#00529b;}
.page_title2 .title_desc {display:block; margin-top:15px; font-size:1.25em; color:#333; line-height:1.4; word-break:keep-all;} 

.page_title3 {position:relative; display:block; text-align:center; margin:100px auto 50px;}
.page_title3:after { content:""; display:block; clear:both; }
.page_title3 .title_num {z-index:-1; position: absolute; left: 50%; top:0; transform: translate(-50%,-50%); display:block; font-size:10em; color:#f5f5f5; line-height:1.4; font-weight:900; font-style:normal;}
.page_title3 .title {display:inline-block; font-size:2.5em; color:#000; line-height:1.4; font-weight:700; word-break:keep-all; }
.page_title3 .title_desc {display:block; margin-top:20px; font-size:1.5em; color:#000; line-height:1.6; word-break:keep-all; }
.page_title3 .title_desc span {display:inline-block; font-size:1em; color:#45a6e6; line-height:1.6; font-weight:600;}

/* =========================
   RIGHTS SECTION (WHITE)
========================= */
.rights-section{
  background:#ffffff;
  padding:120px 0;
  color:#222;
}

.rights-inner{
  max-width:1200px;
  margin:0 auto;
  padding:0 20px;
  box-sizing:border-box;
}

/* 상단 */
.rights-header{
  text-align:center;
  margin-bottom:70px;
}

.rights-header h2{
  font-size:2.6em;
  font-weight:800;
  color:#111;
  letter-spacing:-0.02em;
}

.rights-header .line{
  width:60px;
  height:3px;
  background:#2f8cff;
  margin:20px auto 30px;
}

.rights-header p{
  font-size:1.25em;
  line-height:1.8;
  color:#555;
}

/* 카드 그리드 */
.rights-grid{
  display:flex;
  gap:30px;
  flex-wrap:wrap;
}

/* 카드 */
.rights-card{
  flex:1 1 500px;
  background:#ffffff;
  border:1px solid #e5e8ee;
  border-radius:18px;
  padding:40px;
  box-shadow:0 10px 25px rgba(0,0,0,0.04);
  transition:0.3s ease;
}

.rights-card:hover{
  border-color:#2f8cff;
  box-shadow:0 15px 35px rgba(47,140,255,0.12);
  transform:translateY(-5px);
}

.rights-card h3{
  font-size:1.6em;
  margin-bottom:25px;
  font-weight:700;
  color:#111;
}

.rights-card ul{
  list-style:none;
  padding:0;
  margin:0;
}

.rights-card ul li{
  padding:14px 0;
  border-bottom:1px solid #eee;
  font-size:1.15em;
  color:#444;
}

.rights-card ul li:last-child{
  border-bottom:0;
}

/* 메시지 */
.rights-message{
  margin-top:80px;
  text-align:center;
  font-size:1.8em;
  font-weight:700;
  letter-spacing:-0.02em;
  color:#2f8cff;
}



/* =========================
   PRICE SECTION (WHITE)
========================= */
.price-section{
  background:#f8f9fb;
  padding:110px 0;
  color:#222;
}

.price-inner{
  max-width:1200px;
  margin:0 auto;
  padding:0 20px;
  box-sizing:border-box;
}

/* Head */
.price-head{
  text-align:center;
  margin-bottom:45px;
}

.price-title{
  font-size:2.5em;
  font-weight:800;
  letter-spacing:-0.02em;
  margin:0 0 14px;
  color:#111;
}

.price-sub{
  margin:0 auto;
  max-width:900px;
  line-height:1.75;
  font-size:1.1em;
  color:#555;
}

.price-sub strong{
  color:#2f8cff;
  font-weight:800;
}

/* Wrap */
.price-wrap{
  background:#ffffff;
  border:1px solid #e5e8ee;
  border-radius:20px;
  padding:30px;
  box-sizing:border-box;
  box-shadow:0 10px 30px rgba(0,0,0,0.05);
}

/* Table */
.price-table-scroll{
  width:100%;
  overflow:auto;
  border-radius:14px;
}

.price-table{
  width:100%;
  border-collapse:collapse;
  min-width:860px;
  background:#fff;
}

.price-table th,
.price-table td{
  padding:18px 18px;
  text-align:left;
  font-size:1.2em;
  border-bottom:1px solid #eee;
}

.price-table thead th{
  font-weight:800;
  background:#f1f6ff;
  color:#111;
}

.price-table tbody tr:hover{
  background:#f8fbff;
}

.price-table td strong{
  color:#2f8cff;
  font-size:1.2em;
  font-weight:800;
}

/* Group Row */
.price-group td{
font-size:1.2em;
  font-weight:800;
  background:#fafbfc;
  color:#111;
}

/* Notice */
.price-notice{
  margin-top:25px;
  padding:22px 20px;
  border-radius:14px;
  background:#f8f9fb;
  border:1px solid #e5e8ee;
}

.price-notice h3{
  margin:0 0 12px;
  font-size:1.2em;
  font-weight:800;
  color:#111;
}

.price-notice ul{
  list-style:none;
  padding:0;
  margin:0;
}

.price-notice ul li{
  padding:12px 0 12px 24px;
  position:relative;
  color:#444;
  border-bottom:1px dashed #e5e8ee;
}

.price-notice ul li:last-child{
  border-bottom:0;
}

.price-notice ul li:before{
  content:"✓";
  position:absolute;
  left:6px;
  top:12px;
  font-size:1.2em;
  color:#2f8cff;
  font-weight:900;
}

.price-footnote{
  margin:14px 0 0;
  font-size:1.2em;
  color:#666;
  line-height:1.6;
}

.price-official{
  margin-top:25px;
  padding:18px 20px;
  font-size:1.2em;
  line-height:1.7;
  color:#555;
  background:#f4f6f9;
  border:1px solid #e5e8ee;
  border-radius:14px;
  text-align:center;
}

.price-official strong{
  color:#2f8cff;
  font-weight:800;
  font-size:1.2em;
}


/* 인사말1 */
.company1-1 { width:100%;}
.company1-1:after{ content:""; display:block; clear:both;}
.company1-1 .img_cont{position:relative; width:100%; height:400px; margin-bottom:50px; }
.company1-1 .img_cont .imgs {z-index:1; position:absolute; left:50%; top:0; transform:translateX(-50%); width:100%; height:100%; background:url('/data/editor/2602/607dd15b55f975f872bccccfd60c1c84_1771139742_4802.jpg')no-repeat 50% 20%; background-size:cover;}
.company1-1 .img_cont .imgs img{ width:100%;}
.company1-1 .img_cont .img_nemo {z-index:1; content:""; position:absolute; right:2%; bottom:-25px; min-width:40%; padding:40px; text-align:left; background: linear-gradient(135deg, #00152e 0%, #000 100%); transition: 0.5s all ease;}
.company1-1 .img_cont .img_nemo em {display:block; font-size:1em; color:#fff; line-height:1.4; word-break:keep-all; font-style:normal; letter-spacing:0.25em;}
.company1-1 .img_cont .img_nemo p {display:block; margin-top:15px; font-size:1.5em; color:#fff; line-height:1.2; word-break:keep-all;}
.company1-1 .ceo_msg {width:100%; padding:0 2%;}
.company1-1 .ceo_msg:after{ content:""; display:block; clear:both;}
.company1-1 .ceo_msg .txts {display:flex; flex-wrap: wrap; justify-content: space-between; }
.company1-1 .ceo_msg .txts dl { width:47%;} /* 인사말내용이 짧을경우 width:100%로 변경사용 */
.company1-1 .ceo_msg .txts dl dt { width:100%; font-size:2em; color: #000; line-height: 1.3; font-weight:700; word-break:keep-all;}
.company1-1 .ceo_msg .txts dl dd { width:100%; }
.company1-1 .ceo_msg .txts dl dd p {margin-top:30px; font-size:1.2em; color: #222; line-height: 1.6; word-break:keep-all;}
.company1-1 .ceo_msg .sign{ display:block; text-align:right; font-size:1em; color:#222; line-height:1.6;}
.company1-1 .ceo_msg .sign span {display:block; font-size:2em; color:#000; font-family: 'NostalgicPoliceHumanRights';  letter-spacing:0.15em;}

.company1-2 { width:100%; text-align:center; }
.company1-2:after{ content:""; display:block; clear:both;}

.company1-2 ul {
	width:100%;
	font-size:0;
	text-align:center;
	overflow:hidden;
}

.company1-2 ul li {
	position:relative;
	display:inline-block;
	vertical-align:top;
	width:49%;              /* 🔥 여기 변경 */
	margin:0.5%;
	min-height:120px;
	border:1px solid #ddd;
	box-sizing:border-box;  /* 안정성 추가 */
}

.company1-2 ul li .con_box {
	position:absolute;
	left:0;
	top:50%;
	transform:translateY(-50%);
	width:100%;
	padding:0 40px;
	text-align:left;
}

.company1-2 ul li .icons {
	width:10%;
	display:inline-block;
	vertical-align:middle;
	text-align:center;
	font-size:2em;
}

.company1-2 ul li .txts {
	width:88%;
	display:inline-block;
	vertical-align:middle;
	padding-left:15px;
}

.company1-2 ul li .txts dt {
	font-size:1.2em;
	font-weight:700;
	color:#222;
	line-height:1.2;
}

.company1-2 ul li .txts dd {
	margin-top:10px;
	font-size:1.2em;
	color:#000;
	line-height:1.4;
	
}


/* 인사말2 */
.company2-1 { width:100%;}
.company2-1:after{ content:""; display:block; clear:both;}
.company2-1 .img_cont{width:100%; margin-bottom:50px;}
.company2-1 .img_cont img{ max-width:100%; }
.company2-1 .ceo_msg {width:100%;}
.company2-1 .ceo_msg .con_left {float:left; width:30%; font-size:2em; color:#000; line-height:1.4em;}
.company2-1 .ceo_msg .con_left .nemo { position:relative; margin:0 auto; width:95%; height:250px; border:10px solid #eee;}
.company2-1 .ceo_msg .con_left .nemo_txt {z-index:1; position:absolute; width:115%; padding:20px 0; left:50%; top:50%; transform:translate(-50%, -50%); text-align:center; background:#fff; }
.company2-1 .ceo_msg .con_left .nemo_txt p {font-size:2em; color:#000; line-height:1.4em;}
.company2-1 .ceo_msg .con_left .nemo_txt img {max-width:100%;}
.company2-1 .ceo_msg .con_right {float:right; width:70%; padding-left:5%;}
.company2-1 .ceo_msg .con_right p { color:#313131; line-height:1.6em;}
.company2-1 .ceo_msg .con_right .bold { color:#000; line-height:1.3em; font-size:2em; padding-bottom:30px;}
.company2-1 .ceo_msg .con_right .sign{ display:block; font-size:1.25em; color:#000; text-align:right; margin-top:30px; }

.company2-2 {width:100%; margin-top:50px;}
.company2-2 .con_arrow {font-size:1.6em; font-weight:700; line-height:30px;  color: #000; margin:50px 0 20px 0;}
.company2-2 .con_arrow:before { content: ""; width:16px; height:16px; display:inline-block; border:5px #59647A solid; box-sizing:border-box; border-radius:14px; background:#fff; margin-right:10px;}
.company2-2 .con_arrow:first-child { margin:0 0 20px 0;}
.company2-2 table.tbl_type1{width:100%; border-collapse:separate; border-spacing:0; border-top:2px solid #002b5c;}
.company2-2 table.tbl_type1 th{ color:#333; text-align:center; font-weight:700; padding:15px 15px; border-bottom:1px solid #eee; border-right:1px solid #eee; background:#f8f8f8;}
.company2-2 table.tbl_type1 td{ text-align:left; padding:15px 15px; border-bottom:1px solid #eee;}


/* 연혁1 */
.company3-1 {width:100%; max-width:1400px; margin:0 auto;  }
.company3-1:after{ content:""; display:block; clear:both;}
.company3-1 .con_box {width:100%; overflow:hidden}
.company3-1 .con_box:after{ content:""; display:block; clear:both;}
.company3-1 .con_box ul {width:100%; font-size:0; padding-top:50px;}
.company3-1 .con_box ul li {width:100%; }
.company3-1 .con_box ul li .con_left {display:inline-block; vertical-align:top; width:20%; text-align:center;}
.company3-1 .con_box ul li .con_left span.year {display: inline-block; font-size:1.5em; color:#000; font-weight:500; }
.company3-1 .con_box ul li .con_right {display:inline-block; vertical-align:top; width:75%; padding-left:50px; }
.company3-1 .con_box ul li .con_right dl {position:relative; width:100%; padding-bottom:40px;}
.company3-1 .con_box ul li .con_right dl:before {z-index:-1; display: block; content: ''; position: absolute; top:10px; left:-40px; width: 1px; height:100%; background:#ddd; }
.company3-1 .con_box ul li:last-child .con_right dl {padding-bottom:0;}
.company3-1 .con_box ul li .con_right dl dt {position:relative; display:block; margin-top:20px; font-size: 1.25em; color:#000; line-height: 1.4; font-weight: 500; }
.company3-1 .con_box ul li .con_right dl dt:first-child { margin-top:0;}
.company3-1 .con_box ul li .con_right dl dt:after {z-index:0; display: block; content: ''; position: absolute; top:10px; left:-44px; width:8px; height:8px; background:#4e9cdd; border-radius:8px;}
.company3-1 .con_box ul li .con_right dl dd {display:block; margin-top:10px; font-size: 1em; color: #555; line-height: 1.6;}
.company3-1 .con_box ul li .con_right dl dd .imgs {padding-top:20px;}
.company3-1 .con_box ul li .con_right dl dd .imgs img {max-width:100%;}


/* 연혁2 */
.company4-1 {width:100%; max-width:1400px; margin:0 auto; }
.company4-1:after{ content:""; display:block; clear:both;}
.company4-1 .history_top { width:120px; height:120px; padding-top:27px; margin:70px auto; line-height:22px; font-size:1.5em; text-align:center; color:#fff;  background:#333; border-radius: 50%; }
.company4-1 .timeline { position: relative; font-size: 1em; width: 100%; height: 100%; margin:0 auto; overflow-y: hidden; overflow-x:hidden;}
.company4-1 .timeline .timeline-block {margin-top:-4px;}
.company4-1 .timeline .timeline-icon {position:absolute; width: 16px; height: 16px; left: 50%; margin-left: -8px; margin-top:8px; border: 3px solid #4e9cdd; border-radius: 100%; background: #fff; text-align: center; }
.company4-1 .timeline .timeline-icon.timeline-icon-hide-border { border: 0; }
.company4-1 .timeline .timeline-icon.timeline-icon-hide-border i.fa, .timeline .timeline-icon.timeline-icon-hide-border img { margin-left: 0; margin-top: 0;}
.company4-1 .timeline .timeline-icon i.fa, .timeline .timeline-icon img { display: inline-block; width: 32px; height: 32px; margin-left: -4px; margin-top: -4px; vertical-align: bottom; line-height: 32px; text-align: center; font-size: 30px; }
.company4-1 .timeline .timeline-icon img { border-radius: 100%; }
.company4-1 .timeline .timeline-content { position: relative; width: 46%; padding-bottom:50px; line-height: 20px; }
.company4-1 .timeline .timeline-content .bar_count { font-size:1.5em; color:#000; line-height:1.2; margin-bottom:10px; font-weight:700;}
.company4-1 .timeline .timeline-content ul li img{width:100%; height:auto; margin-top:20px;}
.company4-1 .timeline::before { position: absolute; width: 1px; height: 100%; top:5px; left: 50%; margin-left: -1px; background: #eee; content: ""; }/* Half of width */
.company4-1 .timeline.timeline-alternating .timeline-block:nth-of-type(2n+1) .timeline-content{text-align:right}
.company4-1 .timeline.timeline-alternating:not(.timeline-left) .timeline-block:nth-of-type(2n) .timeline-content { left: 54%; }
.company4-1 .timeline.timeline-alternating:not(.timeline-left) .timeline-block:nth-of-type(2n) .timeline-date { left: auto;  right: 115%; margin-left: -400px; }


/* 비전1 */
.company5-1 {width:100%; padding-top:10px;} 
.company5-1:after { content:""; display:block; clear:both; }
.company5-1 ul {width:100%; text-align:center; margin:50px auto;  max-width:1200px;}
.company5-1 ul li {position:relative; display:inline-block; vertical-align:middle; white-space: initial; width:25%; height:0; padding-top:25%; margin:-15px; border:1px dashed #aaa; box-sizing:border-box; border-radius:100%; _mix-blend-mode:multiply; overflow:hidden;}
.company5-1 ul li .tit { position: absolute; left:50%; top:50%; transform: translate(-50%,-50%); padding:0 15px; width:100%; text-align:center; transition: 0.5s all ease;}
.company5-1 ul li .tit em {z-index:-1; position: absolute; left:50%; top:50%; transform: translate(-50%,-80%); font-size:10em; color:#f5f5f5; font-weight:900; font-style:normal; }
.company5-1 ul li .tit span { display:block; font-size:1em; color:#aaa; line-height:1.2; font-style:normal; font-weight:500; letter-spacing:0.25em; word-break: break-all;}
.company5-1 ul li .tit p { display:block; margin-top:15px; font-size:2em; color:#000; line-height:1.2; font-weight:700; }

.company5-2 {width:100%; margin-top:50px; }
.company5-2:after { content:""; display:block; clear:both; }
.company5-2 .tit-box { width:100%; max-width:80%; margin:0 auto; padding:15px; background:#45a6e6; border-radius:50px; overflow:hidden;}
.company5-2 .tit-box.bg2 { margin-top:15px; background:#00529b; }
.company5-2 .tit-box .tit {width:22%; display:inline-block; vertical-align:middle; text-align:center; margin-right:2%; padding:10px 2%; background:#fff; border-radius:50px; overflow:hidden; }
.company5-2 .tit-box .tit span {display:inline; vertical-align:middle; font-size:2em; color:#222; line-height:1.2; font-weight:700; }
.company5-2 .tit-box .tit em {display:inline; vertical-align:middle; margin-left:15px; font-size:1em; color:#aaa; font-weight:500; letter-spacing:0.25em; font-style:normal;}
.company5-2 .tit-box p {width:75%; display:inline-block; vertical-align:middle; font-size:1.15em; color:#fff; line-height:1.6; word-break:keep-all;}

.company5-3 {width:100%; } 
.company5-3:after { content:""; display:block; clear:both; }
.company5-3 ul {display:flex; flex-wrap: wrap; justify-content: space-between; width:100%; }
.company5-3 ul li { display:inline-block; vertical-align:top; text-align:center; width:49%; margin-bottom:2%; padding:50px 0; background:#f9f9f9; border:1px solid #eee; overflow:hidden; transition: 0.5s all ease;}
.company5-3 ul li .tit {width:100%; text-align:center; border:0px solid #aaa; box-sizing:border-box; }
.company5-3 ul li .tit i {display:block; margin:0 auto; width:60px; height:60px; line-height:60px; font-size:2em; color:#fff; background:#45a6e6; border-radius:10px; overflow:hidden; }
.company5-3 ul li .tit p { display:block; margin-top:10px; font-size:2em; color:#000; line-height:1.4; font-weight:700; }
.company5-3 ul li .tit em { display:block; margin-top:10px; font-size:0.9em; color:#aaa; line-height:1.4; font-style:normal;  font-weight:500; letter-spacing:0.25em; }
.company5-3 ul li .txts {position:relative; width:100%; margin-top:20px; padding:0 40px; text-align:center; transition: 0.5s all ease;}
.company5-3 ul li .txts p {display:block; text-align:center; font-size:1em; color:#000; line-height:1.6; word-break:keep-all; overflow: hidden;}
.company5-3 ul li .txts p span {display:inline; font-size:1em; color:#000; font-weight:700;}


/* 비전2 */
.company6-1 {width:100%; text-align:center;}
.company6-1:after { content:""; display:block; clear:both; }
.company6-1 ul { width:100%; padding:0; margin:0; overflow:hidden;}
.company6-1 ul li{ position:relative; float:left; display:inline-block; width:23.5%; text-align:center; margin-right:2%; vertical-align:top; padding:0 15px; margin-bottom:50px;}
.company6-1 ul li:nth-child(4n){margin-right:0;}
.company6-1 ul li:after{position:absolute; top:30%; left:100%; background:#00529B; width:5px; height:5px; content:""; border-radius:5px;}
.company6-1 ul li:nth-child(4n):after{display:none;}
.company6-1 ul li .icons{width:70%; height:0; padding-top:70%; text-align:center; box-sizing:border-box;  border-radius:100%; margin:0 auto; position:relative;}
.company6-1 ul li .icons i {display:block; font-size:4em; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); text-shadow:5px 5px rgba(0,0,0,0.2);}
.company6-1 ul li:nth-child(1) .icons{ background:#1985b7; color:#fff; background:url('../company/image/06_1.jpg') no-repeat center center; background-size:cover;}
.company6-1 ul li:nth-child(2) .icons{ background:#00529b;color:#fff; background:url('../company/image/06_2.jpg') no-repeat center center; background-size:cover;}
.company6-1 ul li:nth-child(3) .icons{ background:#6b7786; color:#fff; background:url('../company/image/06_3.jpg') no-repeat center center; background-size:cover;}
.company6-1 ul li:nth-child(4) .icons{ background:#333; color:#fff; background:url('../company/image/06_4.jpg') no-repeat center center; background-size:cover;}
.company6-1 ul li strong {display:block; margin-top:20px; font-size:1.5em; text-align:center; }
.company6-1 ul li p{ display:block; text-align:center; font-size:1.05em; line-height:20px; margin-top:20px;}

.company6-2 {width:100%; margin-top:50px; }
.company6-2:after { content:""; display:block; clear:both; }
.company6-2 .tit-box {position:relative; width:100%; max-width:80%; margin:25px auto 0; padding:40px 15px; background:#fff; border:1px solid #eee; overflow:hidden;}
.company6-2 .tit-box:before {z-index:1; content: ""; display: block; position: absolute; left:0; top:0; width:20px; height:20px; border-left:3px solid #333; border-top:3px solid #333;}
.company6-2 .tit-box:after {z-index:1; content: ""; display: block; position: absolute; right:0; bottom:0; width:20px; height:20px; border-right:3px solid #333; border-bottom:3px solid #333;}
.company6-2 .tit-box .tit {width:22%; display:inline-block; vertical-align:middle; text-align:center; margin-right:2%; overflow:hidden; }
.company6-2 .tit-box .tit span {display:inline; vertical-align:middle; font-size:2em; color:#222; line-height:1.2; font-weight:700; }
.company6-2 .tit-box .tit em {display:inline; vertical-align:middle; margin-left:15px; font-size:1em; color:#aaa; font-weight:500; letter-spacing:0.25em; font-style:normal;}
.company6-2 .tit-box dl {width:75%; display:inline-block; vertical-align:middle; }
.company6-2 .tit-box dl dd {position:relative; margin-bottom:5px; padding-left:15px; font-size:1.15em; color:#222; line-height:1.6; word-break:keep-all;}
.company6-2 .tit-box dl dd:before {content: ""; display: block; position: absolute; left:0; top:12px; width:4px; height:4px; background:#555;}
.company6-2 .tit-box dl dd:last-child {margin-bottom:0;}


/* 기업이념 */
.company7-1 { width: 100%; text-align:center;}
.company7-1 h2.tit { position:relative; margin:0 auto; width:60%; padding:40px 20px; background:#f5f5f5; border-radius:15px;}
.company7-1 h2.tit:after { z-index:1; content: ""; display: block; position: absolute; left:50%; bottom:-50px; transform: translateX(-50%); width:1px; height:50px; background:#ddd;}
.company7-1 h2.tit p {font-size:2em; color:#000; line-height:1.2; word-break:keep-all;} 
.company7-1 h2.tit p span {color:#45a6e6; font-weight:500; }
.company7-1 ul {position:relative; display:flex; width: 100%;  margin-top:100px; padding:0; font-size:0; text-align:center; }
.company7-1 ul:before { z-index:1; content: ""; display: block; position: absolute; left:50%; top:-50px; transform: translateX(-50%); width:80%; height:1px; background:#ddd;}
.company7-1 ul li {position:relative; width:20.5%; padding:50px 2%; border-radius:15px;}
.company7-1 ul li:before { z-index:1; content: ""; display: block; position: absolute; left:50%; top:-50px; width:1px; height:50px; background:#ddd;}
.company7-1 ul li:after { z-index:1; content: ""; display: block; position: absolute; left:50%; top:-50px; transform: translateX(-50%); margin-top:-6px; width:12px; height:12px; background:#fff; border:2px solid #ddd; border-radius:8px;}
.company7-1 ul li:last-child { margin-right:0; }
.company7-1 ul li.gap_icons { position:relative; width:6%; padding:0;  }
.company7-1 ul li.gap_icons:before,
.company7-1 ul li.gap_icons:after {display:none;}
.company7-1 ul li.gap_icons i { position:absolute; left:50%; top:50%; transform: translate(-50%,-50%); width:100%; text-align:center; font-size:2em; color:#aaa;}
.company7-1 ul li.bg1 {background:#45a6e6; }
.company7-1 ul li.bg2 {background:#00529b; }
.company7-1 ul li.bg3 {background:#001e5d; }
.company7-1 ul li.bg4 {background:#444; }
.company7-1 ul li .txts {width:100%; }
.company7-1 ul li .txts i { font-size:3em; color:#fff;}
.company7-1 ul li .txts strong{display:block; margin:20px 0; font-size:1.5em; color:#fff; line-height: 1.2;}
.company7-1 ul li .txts p {display:block; font-size:1em; color:#fff; line-height: 1.6; word-break:keep-all;}

.company7-2 {width:100%; margin-top:50px; }
.company7-2:after { content:""; display:block; clear:both; }
.company7-2 .tit-box {position:relative; width:100%; max-width:80%; margin:25px auto 0; padding:40px 15px; background:#fff; border:1px solid #eee; overflow:hidden;}
.company7-2 .tit-box:before {z-index:1; content: ""; display: block; position: absolute; left:0; top:0; width:20px; height:20px; border-left:3px solid #333; border-top:3px solid #333;}
.company7-2 .tit-box:after {z-index:1; content: ""; display: block; position: absolute; right:0; bottom:0; width:20px; height:20px; border-right:3px solid #333; border-bottom:3px solid #333;}
.company7-2 .tit-box .tit {width:22%; display:inline-block; vertical-align:middle; text-align:center; margin-right:2%; overflow:hidden; }
.company7-2 .tit-box .tit span {display:inline; vertical-align:middle; font-size:2em; color:#222; line-height:1.2; font-weight:700; }
.company7-2 .tit-box .tit em {display:inline; vertical-align:middle; margin-left:15px; font-size:1em; color:#aaa; font-weight:500; letter-spacing:0.25em; font-style:normal;}
.company7-2 .tit-box dl {width:75%; display:inline-block; vertical-align:middle; }
.company7-2 .tit-box dl dd {position:relative; margin-bottom:5px; padding-left:15px; font-size:1.15em; color:#222; line-height:1.6; word-break:keep-all;}
.company7-2 .tit-box dl dd:before {content: ""; display: block; position: absolute; left:0; top:12px; width:4px; height:4px; background:#555;}
.company7-2 .tit-box dl dd:last-child {margin-bottom:0;}



/* 오시는길 */
.map_wrap{ width:100%; margin:0 auto; margin-bottom:0px;}
.map_wrap .g_map {height:450px; overflow:hidden;}
.map_wrap .map_info{width:100%; display:inline-block; border-top:1px solid #ddd; border-bottom:1px solid #ddd; padding:30px 0}
.map_wrap .map_info span{margin:0 15px; font-size:1em; line-height:1.6;}
.map_wrap .map_info span strong{color:#222; margin:0 10px;}
.map_wrap .map_info span, strong { display: inline-block;}
.map_wrap .publicTransit {width:100%; }
.map_wrap .publicTransit table {width:100%; border-collapse:separate; border-spacing:0;}
.map_wrap .publicTransit table th {width:15%; text-align:center; font-size:1em; color:#000;  font-weight:normal; background:#f5f5f5; border-bottom:1px solid #ddd;}
.map_wrap .publicTransit table td {width:85%; text-align:left; font-size:1em; color:#222; padding:15px 20px; border-bottom:1px solid #ddd;}
.map_wrap .publicTransit table td > a {color:#666;}
.map_wrap .publicTransit table td > a:hover {color:#000;}
.map_wrap .publicTransit table td p {margin-top:10px;}
.map_wrap .publicTransit table td p span { display: inline-block; font-size:0.85em;  text-align: center; color: #fff;  padding:0px 8px; margin-right:10px; border-radius: 3px 3px 3px 3px;  background: #2fba06; }
.roughmap_maker_label .roughmap_lebel_text{font-size:15px;}


.busi2-1 {width:100%; margin-top:50px;}
.busi2-1:after { content:""; display:block; clear:both; }
.busi2-1 ul {display:flex; flex-wrap: wrap; width:100%; }
.busi2-1 ul li{display:flex; flex-wrap: wrap; justify-content: space-between; align-items: center; width:100%; margin-bottom:50px; }
.busi2-1 ul li:last-child {margin-bottom:0;}
.busi2-1 ul li .imgs { position:relative; width:50%;}
.busi2-1 ul li .imgs img {max-width:100%; }
.busi2-1 ul li .txts{width:50%; padding:0 0 0 60px; }
.busi2-1 ul li .txts .num { display:block; text-align:center; width:50px; height:50px; line-height:50px; font-size:1.25em; color:#fff; font-weight:500; font-style:normal; border-radius:25px 0;}
.busi2-1 ul li .txts h3.t1 { display:block; margin:20px 0 30px 0; font-size:2em; color:#000; line-height:1.2;  font-weight:600; word-break:keep-all;}
.busi2-1 ul li .txts h3.t1 span {color:#45a6e6;}
.busi2-1 ul li .txts p { display:block; margin-top:10px; font-size:1.15em; color:#666; line-height:1.6; word-break:keep-all;}
.busi2-1 ul li .txts p span {display:inline; font-size:1em; color:#000; font-weight:500;}
.busi2-1 ul li:nth-child(even) { flex-direction: row-reverse;}
.busi2-1 ul li:nth-child(even) .txts{ padding:0 60px 0 0; }
/* 숫자 배경 */
.busi2-1 ul li:nth-child(1) .txts .num {background:#6ec8ff;}
.busi2-1 ul li:nth-child(2) .txts .num {background:#45a6e6;}
.busi2-1 ul li:nth-child(3) .txts .num {background:#2d82c7;}
.busi2-1 ul li:nth-child(4) .txts .num {background:#1563a9;}
.busi2-1 ul li:nth-child(5) .txts .num {background:#0f4d8c;}
.busi2-1 ul li:nth-child(6) .txts .num {background:#08386f;}
.busi2-1 ul li:nth-child(7) .txts .num {background:#001f4d;}

/* 제목 span 색상 동일하게 */
.busi2-1 ul li:nth-child(1) h3.t1 span {color:#6ec8ff;}
.busi2-1 ul li:nth-child(2) h3.t1 span {color:#45a6e6;}
.busi2-1 ul li:nth-child(3) h3.t1 span {color:#2d82c7;}
.busi2-1 ul li:nth-child(4) h3.t1 span {color:#1563a9;}
.busi2-1 ul li:nth-child(5) h3.t1 span {color:#0f4d8c;}
.busi2-1 ul li:nth-child(6) h3.t1 span {color:#08386f;}
.busi2-1 ul li:nth-child(7) h3.t1 span {color:#001f4d;}

/* 내부 항목 리스트 초기화 */
.busi2-1 ul li .txts .list {
	display:block;
	padding-left:20px;
	margin-top:15px;
}

.busi2-1 ul li .txts .list li {
	display:list-item;
	list-style:disc;
	margin-bottom:6px;
	line-height:1.6;
	color:#666;
}

.daon_ver2_sub_type17 .professor1 ul {
	display:grid;
	grid-template-columns: repeat(2, 1fr);
	gap:30px;
	margin:0;
	padding:0;
	list-style:none;
}

.daon_ver2_sub_type17 .professor1 ul li {
	border:1px solid #ddd;
	box-sizing:border-box;
	background:#fff;
	transition:0.3s ease;
}

.daon_ver2_sub_type17 .professor1 .professor_box {
	display:flex;
	gap:25px;
	padding:25px;
	align-items:flex-start;
}

.daon_ver2_sub_type17 .professor1 .professor_img {
	width:200px;
	flex-shrink:0;
}

.daon_ver2_sub_type17 .professor1 .professor_img img {
	width:100%;
	display:block;
}

.daon_ver2_sub_type17 .professor1 .professor_info {
	flex:1;
}

.daon_ver2_sub_type17 .professor1 .professor_info dt {
	padding-bottom:10px;
	margin-bottom:15px;
	border-bottom:1px solid #ddd;
}

.daon_ver2_sub_type17 .professor1 .professor_info dt em {
	display:block;
	font-size:1em;
	color:#247bcb;
	margin-bottom:5px;
	font-style:normal;
}
.port {display:block; margin-top:10px; margin-bottom:10px;font-size:1em; color:#555; text-decoration:none; width:90px; text-align:center; background-color:#fff; border:1px solid #ddd;transition: background-color 0.3s ease, color 0.3s ease, border-color 0.3s ease;}
.port:hover {
    background-color:#0b2a5b;   /* 짙은 남색 */
    color:#fff;
    border-color:#0b2a5b;
}
.daon_ver2_sub_type17 .professor1 .professor_info dt strong {
	font-size:1.4em;
	color:#000;
	margin-right:10px;
}

.daon_ver2_sub_type17 .professor1 .professor_info dd {
	position:relative;
	padding-left:95px;
	margin-bottom:8px;
	color:#666;
	font-size:1.1em;
	line-height:1.6;
}

.daon_ver2_sub_type17 .professor1 .professor_info dd span {
	position:absolute;
	left:0;
	top:0;
	font-weight:700;
	color:#000;
}
/* 항공촬영 교육 안내 */
.edu-section { width:100%; padding:30px 0; background:#f7f8fa; }
.edu-inner { width:100%; max-width:1200px; margin:0 auto; padding:0 20px; }

.edu-header { text-align:center; margin-bottom:50px; }
.edu-header h2 { font-size:2.2em; font-weight:700; color:#111; }
.edu-header .line { width:48px; height:2px; background:#111; margin:14px auto 18px; }
.edu-header p { font-size:1.05em; line-height:1.75; color:#555; }
.edu-header p strong { color:#111; font-weight:700; }

.edu-grid { display:flex; gap:22px; margin-bottom:30px; }
.edu-card { flex:1; background:#fff; border:1px solid #e8eaee; border-radius:16px; padding:26px 26px 22px; box-shadow:0 8px 18px rgba(0,0,0,0.04); }
.edu-card h3 { font-size:1.25em; font-weight:700; color:#111; margin-bottom:14px; }
.edu-card ul { margin:0; padding-left:18px; }
.edu-card ul li { color:#444; font-size:1.02em; line-height:1.65; margin:6px 0; }

.edu-courses { display:flex; gap:22px; margin-top:22px; flex-wrap:wrap; }
.course { flex:1; min-width:280px; background:#fff; border:1px solid #e8eaee; border-radius:18px; padding:26px; box-shadow:0 10px 22px rgba(0,0,0,0.05); position:relative; overflow:hidden; }
.course .badge { display:inline-block; font-size:0.85em; font-weight:700; letter-spacing:0.5px; padding:7px 12px; border-radius:999px; background:#111; color:#fff; margin-bottom:14px; }
.course h3 { font-size:1.25em; font-weight:700; color:#111; line-height:1.35; margin:0 0 10px; }
.course h3 span { display:inline-block; margin-right:6px; }
.course .desc { font-size:1.02em; line-height:1.65; color:#555; margin-bottom:14px; }

.course ul.list { margin:0; padding-left:18px; }
.course ul.list li { color:#444; font-size:1.02em; line-height:1.65; margin:6px 0; }
.edu-card ul,
.course ul.list {
    list-style: none;
    padding-left: 0;
}
/* ===============================
   회원가입 안내 섹션
================================= */

.join-section {
    width: 100%;
    padding: 100px 0;
    background: #f8f9fb;
}

.join-inner {
    width: 100%;
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 20px;
}

/* 헤더 */
.join-header {
    text-align: center;
    margin-bottom: 60px;
}

.join-header h2 {
    font-size: 2.3em;
    font-weight: 700;
    color: #111;
}

.join-header .line {
    width: 50px;
    height: 2px;
    background: #111;
    margin: 15px auto 20px;
}

.join-header p {
    font-size: 1.05em;
    color: #555;
    line-height: 1.8;
}

/* 그리드 */
.join-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 25px;
}

/* 카드 공통 */
.join-card {
    background: #fff;
    border-radius: 18px;
    padding: 30px;
    box-shadow: 0 10px 25px rgba(0,0,0,0.05);
    border: 1px solid #e9ecf2;
}

.join-card.full {
    grid-column: span 2;
}

.join-card h3 {
    font-size: 1.3em;
    font-weight: 700;
    margin-bottom: 20px;
    color: #111;
}

/* 불릿 리스트 */
.bullets {
    list-style: none;
    padding: 0;
    margin: 0;
}

.bullets li {
    position: relative;
    padding-left: 20px;
    margin-bottom: 10px;
    font-size: 1.2em;
    color: #444;
}

.bullets li::before {
    content: "";
    position: absolute;
    left: 0;
    top: 8px;
    width: 6px;
    height: 6px;
    background: #111;
    border-radius: 50%;
}

/* 회원 유형 */
.join-type {
    margin-bottom: 18px;
}

.join-type .t {
    display: block;
    font-size: 1.4em;
    font-weight: 700;
    margin-bottom: 5px;
    color: #111;
}

.join-type .d {
    font-size: 1.2em;
    color: #555;
}

/* 가입 절차 */
.join-steps {
    list-style: none;
    padding: 0;
    margin: 0;
}

.join-steps li {
    display: flex;
    align-items: flex-start;
    margin-bottom: 20px;
}

.join-steps .n {
    font-size: 1.4em;
    font-weight: 700;
    background: #111;
    color: #fff;
    padding: 8px 10px;
    border-radius: 50px;
    margin-right: 15px;
    min-width: 38px;
    text-align: center;
}

.join-steps .tx strong {
    display: block;
    font-size: 1.2em;
    margin-bottom: 4px;
    color: #111;
}

.join-steps .tx p {
    font-size: 1.2em;
    color: #555;
    margin: 0;
}

/* 하단 메시지 */
.join-message {
    margin-top: 30px;
    padding: 25px;
    text-align: center;
    background: #111;
    color: #fff;
    border-radius: 14px;
    font-size: 1.1em;
    font-weight: 600;
}

/* 버튼 */
.join-btns {
    text-align: center;
    margin-top: 50px;
}

.btn {
    display: inline-block;
    padding: 14px 30px;
    border-radius: 50px;
    font-size: 1em;
    font-weight: 600;
    text-decoration: none;
    transition: 0.3s ease;
    margin: 0 8px;
}

.btn.primary {
    background: #111;
    color: #fff;
}

.btn.primary:hover {
    background: #333;
}

.btn.ghost {
    border: 2px solid #111;
    color: #111;
}

.btn.ghost:hover {
    background: #111;
    color: #fff;
}



.edu-card ul li,
.course ul.list li {
    position: relative;
    padding-left: 20px;
    margin: 8px 0;
}

.edu-card ul li::before,
.course ul.list li::before {
    content: "";
    position: absolute;
    left: 0;
    top: 9px;
    width: 6px;
    height: 6px;
    background: #111;
    border-radius: 50%;
}

.course .arrow { margin-top:14px; font-weight:700; color:#111; }

.edu-message { margin-top:40px; text-align:center; padding:26px 18px; border-radius:18px; background:#111; color:#fff; font-size:1.15em; line-height:1.55; font-weight:600; }

.daon_ver2_sub_type17 .professor1 ul li:hover {
	box-shadow:0 10px 25px rgba(0,0,0,0.08);
	transform:translateY(-6px);
}
	.fc_pointer {color:#1F88E5; }
	.content_wrap{width:100%; min-width:320px; max-width:1200px; margin:0 auto;}
	.page_title{width:100%; margin-bottom:70px;}
	.page_title h1{width:100%; margin:0 auto; text-align:center; font-size:2.5em; font-weight:600;}
	.page_title h1:after {content:""; clear:both; display:block; width:30px; margin:10px auto; border:1px solid #000;}
	.page_title h2{width:100%; margin:0 auto; text-align:center; font-size:1.2em; color:#666; margin-top:20px; }


	.business_type4 {width:100%; max-width:1400px;  margin:0 auto;}
	.business_type4:after{ content:""; display:block; clear:both;}
	.business_type4 .business_info { position:relative; width:100%; height:400px; margin:150px auto; background:none;}
	.business_type4 .business_info:after{ content:""; display:block; clear:both;}
	.business_type4 .business_info:first-child {margin-top:0px;}
	.business_type4 .business_info .img_left { position:absolute; left:0; top:0; width:650px; height:400px; background:blue; }
	.business_type4 .business_info .img_left img{ width:100%; height:100%;}
	.business_type4 .business_info .img_right { position:absolute; right:0; top:0; width:650px; height:400px; background:blue; }
	.business_type4 .business_info .img_right img{ width:100%; height:100%;}
	.business_type4 .business_info .con_box { position: absolute; right:0; top:25%; width:65%; height:350px; background:rgba(255,255,255,1); box-shadow:10px 10px 5px rgba(0,0,0,0.04); }
	.business_type4 .business_info .con_box .txt_area {padding:10%; }
	.business_type4 .business_info .con_box .txt_area:before { display: block; content: ''; position: absolute; left: -80px; top:23%;  width:20%; height:1px; background:#000;}
	.business_type4 .business_info .con_box .txt_area em { position:relative; display:block; vertical-align:middle; color:#ddd;  font-size:3em;}
	.business_type4 .business_info .con_box .txt_area strong {display:block; color:#333;  font-size:1.8em; font-weight: 800;  line-height:1.5em; margin:30px 0 20px 0;}
	.business_type4 .business_info .con_box .txt_area p.box_txt {display:block; color:#555; font-size:1.2em;  font-weight: 400;  line-height:1.5em; text-align:justify;  }
	.business_type4 .business_info .type_other { position: absolute; left: 0; top:25%; width:55%; height:350px; background:rgba(255,255,255,1);  box-shadow:10px 10px 5px rgba(0,0,0,0.04); }
	.business_type4 .business_info .type_other .txt_area:before {display:none;}
	.business_type4 .business_info .type_other .txt_area:after { display: block; content: ''; position: absolute; right:-80px; top:23%; width:20%; height:1px; background:#000; }

/* ===== Drone Law Section ===== */
.drone-law-wrap { width:100%; padding:70px 0; background:#fff; }
.drone-law-inner { width:100%; max-width:1200px; margin:0 auto; padding:0 20px; box-sizing:border-box; }

.law-head { margin-bottom:35px; }
.law-title { font-size:1.8em; font-weight:700; line-height:1.25; margin:0 0 10px; }
.law-desc  { font-size:1.2em; line-height:1.7; margin:0; color:#444; }

.law-grid {
  display:grid;
  grid-template-columns: repeat(2, 1fr);
  gap:18px;
}

.law-card {
  background:#fff;
  border:1px solid #eee;
  border-radius:14px;
  padding:22px 22px;
  box-shadow: 0 10px 18px rgba(0,0,0,0.05);
}

.law-subtitle {
  font-size:1.4em;
  font-weight:700;
  margin:0 0 12px;
  line-height:1.35;
}

.law-list { margin:0; padding:0 0 0 18px; }
.law-list li {
  font-size:1.2em;
  line-height:1.7;
  margin:6px 0;
  color:#333;
}

.law-note {
  font-size:1.2em;
  line-height:1.7;
  margin:12px 0 0;
  color:#666;
}

.law-footer { margin-top:26px; }
.law-commit {
  font-size:1.2em;
  line-height:1.8;
  margin:0;
  color:#222;
  padding:18px 20px;
  background:#fafafa;
  border:1px solid #eee;
  border-radius:14px;
}
.flight-permit-wrap {
  width:100%;
  padding:70px 0;
  background:#ffffff;
}
.flight-permit-inner {
  max-width:1200px;
  margin:0 auto;
  padding:0 20px;
  box-sizing:border-box;
}

.permit-title {
  font-size:1.8em;
  font-weight:700;
  margin-bottom:12px;
}
.permit-desc {
  font-size:1.2em;
  line-height:1.7;
  color:#444;
}

.permit-step {
  margin-top:40px;
  display:grid;
  grid-template-columns: repeat(2, 1fr);
  gap:20px;
}

.permit-card {
  background:#fff;
  padding:25px;
  border-radius:16px;
  border:1px solid #eee;
  box-shadow:0 8px 20px rgba(0,0,0,0.05);
}

.permit-subtitle {
  font-size:1.4em;
  font-weight:700;
  margin-bottom:15px;
}

.permit-card ul {
  padding-left:18px;
}
.permit-card li {
  font-size:1.2em;
  line-height:1.7;
  margin-bottom:6px;
  color:#333;
}

.permit-note {
  font-size:1.2em;
  margin-top:10px;
  color:#666;
}

.permit-footer {
  margin-top:40px;
}
.permit-commit {
  font-size:1.2em;
  line-height:1.8;
  padding:20px;
  background:#f7f7f7;
  border-radius:16px;
}
/* 기본 불릿 제거 */
.law-list {
    list-style: none;
    padding: 0;
    margin: 0;
}

/* 각 항목 정렬 */
.law-list li {
    position: relative;
    padding-left: 8px;
    margin-bottom: 8px;
    line-height: 1.6;
}

/* 커스텀 구분점 */
.law-list li::before {
    content: "";
    position: absolute;
    left: 0;
    top: 13px;
    width: 2px;
    height: 2px;
    background: #000;   /* 포인트 컬러 변경 가능 */
    border-radius: 50%;
}
/* 기본 불릿 제거 */
.permit-card ul {
    list-style: none;
    padding: 0;
    margin: 0;
}

/* 리스트 항목 정리 */
.permit-card ul li {
    position: relative;
    padding-left: 8px;
    margin-bottom: 8px;
    line-height: 1.6;
}

/* 커스텀 도트 구분점 */
.permit-card ul li::before {
   content: "";
    position: absolute;
    left: 0;
    top: 13px;
    width: 2px;
    height: 2px;
    background: #000;   /* 포인트 컬러 변경 가능 */
    border-radius: 50%;
}

/* =========================
   드론 촬영 안전 매뉴얼 CSS
   ========================= */

.safety-manual-wrap {width:100%; padding:80px 0; background:#fafafa;}
.safety-manual-inner {width:100%; max-width:1200px; margin:0 auto; padding:0 20px;}

.manual-head {text-align:center; margin-bottom:45px;}
.manual-title {font-size:2.1em; font-weight:700; letter-spacing:-0.02em; margin-bottom:10px;}
.manual-desc {font-size:1.05em; color:#666; line-height:1.7; max-width:860px; margin:0 auto;}

.manual-grid {display:grid; grid-template-columns:repeat(2, 1fr); gap:20px;}
.manual-card {
  background:#fff;
  border-radius:16px;
  padding:28px 26px;
  box-shadow:0 8px 25px rgba(0,0,0,0.05);
}
.manual-subtitle {font-size:1.25em; font-weight:700; margin-bottom:14px;}

/* ===== 형 표준 도트 구분점(2px 블랙) ===== */
.manual-list {list-style:none; padding:0; margin:0;}
.manual-list li {
  position:relative;
  padding-left:8px;
  margin-bottom:8px;
  line-height:1.6;
}
.manual-list li::before {
  content:"";
  position:absolute;
  left:0;
  top:13px;
  width:2px;
  height:2px;
  background:#000;
  border-radius:50%;
}

.manual-note {margin-top:12px; font-size:0.95em; color:#777; line-height:1.6;}
.manual-footer {margin-top:35px; text-align:center;}
.manual-commit {color:#333; line-height:1.7; font-size:1.02em;}
/* =========================
   드론 책임보험 안내 CSS
   ========================= */

.insurance-guide-wrap {
  width:100%;
  padding:80px 0;
  background:#fafafa;
}

.insurance-guide-inner {
  width:100%;
  max-width:1200px;
  margin:0 auto;
  padding:0 20px;
}

.ins-head {
  text-align:center;
  margin-bottom:45px;
}

.ins-title {
  font-size:2.1em;
  font-weight:700;
  margin-bottom:10px;
}

.ins-desc {
  font-size:1.05em;
  color:#666;
  line-height:1.7;
  max-width:860px;
  margin:0 auto;
}

.ins-grid {
  display:grid;
  grid-template-columns:repeat(2, 1fr);
  gap:20px;
}

.ins-card {
  background:#fff;
  border-radius:16px;
  padding:28px 26px;
  box-shadow:0 8px 25px rgba(0,0,0,0.05);
}

.ins-subtitle {
  font-size:1.25em;
  font-weight:700;
  margin-bottom:14px;
}

/* ===== 형 표준 2px 블랙 도트 ===== */
.ins-list {
  list-style:none;
  padding:0;
  margin:0;
}

.ins-list li {
  position:relative;
  padding-left:8px;
  margin-bottom:8px;
  line-height:1.6;
}

.ins-list li::before {
  content:"";
  position:absolute;
  left:0;
  top:13px;
  width:2px;
  height:2px;
  background:#000;
  border-radius:50%;
}

.ins-note {
  margin-top:12px;
  font-size:0.95em;
  color:#777;
  line-height:1.6;
}

.ins-desc2 {
  margin-bottom:18px;
  line-height:1.7;
  color:#555;
}

.ins-table-wrap {
  overflow-x:auto;
  margin-top:10px;
}

.ins-table {
  width:100%;
  border-collapse:collapse;
  font-size:0.95em;
}

.ins-table th,
.ins-table td {
  border:1px solid #e5e5e5;
  padding:12px 10px;
  text-align:center;
}

.ins-table thead th {
  background:#f3f3f3;
  font-weight:600;
}

.ins-table tbody tr:nth-child(even) {
  background:#fafafa;
}

.ins-footer {
  margin-top:35px;
  text-align:center;
}

.ins-commit {
  color:#333;
  line-height:1.7;
  font-size:1.02em;
}

/* 반응형 */
@media (max-width:900px){
  .ins-grid {
    grid-template-columns:1fr;
  }
  .insurance-guide-wrap {
    padding:60px 0;
  }
}

/* 반응형 */
@media (max-width: 900px){
  .manual-grid {grid-template-columns:1fr;}
  .safety-manual-wrap {padding:60px 0;}
}
/* 반응형 */
@media (max-width:900px){
  .permit-step {
    grid-template-columns: 1fr;
  }
}

/* 모바일 축소 */
@media (max-width:600px){
  .flight-permit-wrap { padding:45px 0; }

  .permit-title { font-size:1.4em; }
  .permit-subtitle { font-size:1.15em; }
  .permit-desc,
  .permit-card li,
  .permit-note,
  .permit-commit { font-size:1em; }
}
/* ===== Responsive ===== */
@media (max-width: 900px) {
  .law-grid { grid-template-columns: 1fr; }
}

/* 모바일에서는 더 작게 */
@media (max-width: 600px) {
  .drone-law-wrap { padding:45px 0; }

  .law-title { font-size:1.45em; }
  .law-subtitle { font-size:1.18em; }
  .law-desc, .law-list li, .law-note, .law-commit { font-size:1.02em; }

  .law-card { padding:18px 16px; border-radius:12px; }
  .law-commit { padding:14px 14px; border-radius:12px; }
}
	@media screen and (max-width:992px){
		
		.content_wrap{width:100%;}
		.page_title{margin-bottom:50px;}	
		.page_title h1{font-size:2em;}
		.page_title h2{font-size:1em;}
		.s_tit{font-size:1.2em;}

	}

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

		.business_type4 .business_info { height:auto; margin:50px auto;}
		.business_type4 .business_info .img_left { position:relative; width:100%; height:auto;  background:#000; }
		.business_type4 .business_info .img_left img{ height:auto;}
		.business_type4 .business_info .img_right { position:relative; width:100%; height:auto;  background:#000; }
		.business_type4 .business_info .img_right img{ height:auto;}
		.business_type4 .business_info .con_box { position:relative; width:90%; left:50%; top:-50px; margin-left:-45%; height:auto; }
		.business_type4 .business_info .con_box .txt_area:before { display: none;}
		.business_type4 .business_info .type_other .txt_area:after {display:none;}
		.business_type4 .business_info .con_box .txt_area{padding:15px;}
		.business_type4 .business_info .con_box .txt_area strong{font-size:1.2em;}

	}

@media (max-width:1024px){
	.daon_ver2_sub_type17 .professor1 ul {
		grid-template-columns: 1fr;
	}
	.daon_ver2_sub_type17 .professor1 .professor_box {
		flex-direction:column;
	}
	.daon_ver2_sub_type17 .professor1 .professor_img {
		width:100%;
		text-align:center;
	}

/* 반응형 중간기기 992px 사이즈 이하*/
.busi2-1 .txts .list {
	margin-top:15px;
	padding-left:20px;
}

.busi2-1 .txts .list li {
	list-style: disc;
	margin-bottom:6px;
	color:#555;
	line-height:1.6;
}

.busi2-1 .txts .arrow {
	margin-top:15px;
	font-weight:500;
	color:#0b2a5b;
}

@media all and (max-width:992px){
	

	.company1-1 .img_cont .img_nemo {left:50%; right:0; bottom:0; transform:translateX(-50%); padding:20px 30px; width:100%; }
	.company1-1 .ceo_msg .txts dl { width:100%;}

	.company1-2 ul li {width:98%; }


	.company2-1 .ceo_msg .con_left {width:100%;}
	.company2-1 .ceo_msg .con_right {width:100%; padding:0 2%; margin-top:30px;}
	
	.company5-1 ul li .tit em {font-size:5em;}
	.company5-1 ul li .tit p { margin-top:10px; font-size:1.5em;}
	
	.company5-2 .tit-box {max-width:100%; }
	.company5-2 .tit-box .tit {text-align:center;}
	.company5-2 .tit-box .tit span {display:block; font-size:1.5em;}
	.company5-2 .tit-box .tit em {display:block; margin-left:0;}
	.company5-2 .tit-box p {font-size:1.15em;}	
	
	.company5-3 ul {flex-wrap: wrap; }
	.company5-3 ul li { width:49%; margin-bottom:2%;}
	.company5-3 ul li:nth-child(even) {margin-right:0;}
	.company5-3 ul li .tit p { font-size:1.5em;}
	.company5-3 ul li .txts {padding:0 10px;}


	.company6-1 ul li { width:50%; margin:0; margin-bottom:30px; }	
	
	.company6-2 .tit-box {max-width:100%; }
	.company6-2 .tit-box .tit span {font-size:1.5em; }
	.company6-2 .tit-box dl dd {padding-left:15px; font-size:1em;}	


	.company7-1 h2.tit { width:100%; }
	.company7-1 h2.tit p {font-size:1.5em;} 
	.company7-1 ul {flex-direction: column; margin-top:50px;}
	.company7-1 ul:before {display:none;}
	.company7-1 ul li {width:100%; margin-bottom:30px; padding:25px 4%;}
	.company7-1 ul li:before,
	.company7-1 ul li:after {display:none;}
	.company7-1 ul li.gap_icons { width:100%;}
	.company7-1 ul li .txts strong{ margin:15px 0;}
	.company7-1 ul li .txts p { font-size:1em;}
	
	.company7-2 .tit-box {max-width:100%; }
	.company7-2 .tit-box .tit span {font-size:1.5em; }
	.company7-2 .tit-box dl dd {padding-left:15px; font-size:1em;}

}


/* 반응형 중간기기 768사이즈 이하 */
@media screen and (max-width: 768px) {		

	.page_title1 {margin:40px 0 20px 0;}
	.page_title1 .title { font-size:2em; }
	.page_title1 .title_desc { font-size:1.15em;}
	
	.page_title2 {margin:50px 0 20px 0;}
	.page_title2 .title {font-size:2em;}

	.page_title3 {margin-top:50px;}
	.page_title3 .title_num { transform: translate(-50%,-40%);font-size:8em;}
	.page_title3 .title {font-size:2.5em;}
	.page_title3 .title_desc {font-size:1.25em; }
	
	
	.company3-1 .con_box ul {padding-top:30px;}
	.company3-1 .con_box ul li {padding-bottom:50px;}
	.company3-1 .con_box ul li .con_left {width:100%; background:#eee; border-radius:50px;}
	.company3-1 .con_box ul li .con_left span.year {padding:10px; font-size:1.25em; color:#000;}
	.company3-1 .con_box ul li .con_right {width:100%; padding:0 30px; margin-top:20px;}
	.company3-1 .con_box ul li .con_right dl:last-child {padding-bottom:0;}
	.company3-1 .con_box ul li .con_right dl:before { left:-20px;}
	.company3-1 .con_box ul li .con_right dl dt:after {left:-24px;}


	.company4-1 .history_top { margin:40px auto;}
	.company4-1 .timeline .timeline-icon { left:15px; margin-top:6px;}
	.company4-1 .timeline .timeline-content {width:100%; padding:0 20px 50px 40px; }
	.company4-1 .timeline .timeline-content .bar_count { text-align:left;}
	.company4-1 .timeline .timeline-content ul li {text-align:left;}
	.company4-1 .timeline::before { left: 15px; }
	.company4-1 .timeline.timeline-alternating:not(.timeline-left) .timeline-block:nth-of-type(2n) .timeline-content { left: 0; }


	.company6-1 ul li .icons i {font-size:3em;}

	.company6-2 .tit-box { padding:40px 25px;}	
	.company6-2 .tit-box .tit {width:100%; margin-right:0;}
	.company6-2 .tit-box dl {width:100%; margin-top:20px;}
	.company6-2 .tit-box dl dd:before { top:10px;}


	.company7-2 .tit-box { padding:40px 25px;}	
	.company7-2 .tit-box .tit {width:100%; margin-right:0;}
	.company7-2 .tit-box dl {width:100%; margin-top:20px;}
	.company7-2 .tit-box dl dd:before { top:10px;}

	
}


/* 반응형 중간기기 640사이즈 이하 */
@media screen and (max-width: 640px) {		

	.company1-1 .ceo_msg .txts dl dt {font-size:1.5em;}
	.company1-1 .ceo_msg .txts dl dd p {margin-top:20px;}

	.company1-2 ul li .con_box {padding:0 20px;}
	.company1-2 ul li .icons { width:100%; font-size:1.5em;}
	.company1-2 ul li .txts { width:100%; padding-left:0; text-align:center;}
	.company1-2 ul li .txts dd {font-size:1.25em; }


	.company2-1 .ceo_msg .con_right .bold {font-size:1.85em;}
		
	
	.company5-1 ul li {padding:0%;}
	.company5-1 ul li {width:50%; padding-top:50%; margin:-10px;}
	.company5-1 ul li .tit em {font-size:8em;}
	.company5-1 ul li .tit p { margin-top:10px; font-size:1.5em;}

	.company5-2 .tit-box {border-radius:20px;}
	.company5-2 .tit-box .tit {width:100%; margin-right:0; border-radius:15px;}
	.company5-2 .tit-box p {width:100%; margin-top:20px; text-align:center;}	

	
	.map_wrap .map_info span {display:block; margin:0; margin-bottom:5px;}
	.map_wrap .publicTransit table th {width:25%;}
	.map_wrap .publicTransit table td {width:75%;}

}


/* 반응형 작은기기 480사이즈 이하 */
@media screen and (max-width: 480px) {

	
	.company5-3 ul {flex-direction: column;}
	.company5-3 ul li {width:100%;}


	.company6-1 ul li .icons{width:100%; padding-top:100%;}
	.company6-1 ul li .icons i {font-size:3em;}
	.company6-1 ul li strong{font-size:1.3em;}

}



/* 반응형 작은기기 360사이즈 이하 */
@media screen and (max-width: 360px) {	

	
}
/* 반응형 중간기기 992px 사이즈 이하*/
@media all and (max-width:992px){	
	

	.busi2-1 ul li{flex-direction: column; margin-bottom:50px;}
	.busi2-1 ul li .imgs { width:100%; text-align:center;}
	.busi2-1 ul li .imgs img {width:100%;}
	.busi2-1 ul li .txts{width:100%; padding:0; margin-top:20px; text-align:center;}
	.busi2-1 ul li .txts .num {margin:0 auto;}
	.busi2-1 ul li:nth-child(even) { flex-direction: column;}
	.busi2-1 ul li:nth-child(even) .txts{ padding:0; }
	.busi2-1 ul li{
		flex-direction: column;
		margin-bottom:50px;
	}

	.busi2-1 ul li .imgs{
		width:100%;
		text-align:center;
	}

	.busi2-1 ul li .imgs img{
		width:100%;
	}

	.busi2-1 ul li .txts{
		width:100%;
		padding:0;
		margin-top:20px;
		text-align:center;
	}

	.busi2-1 ul li .txts .num{
		margin:0 auto;
	}

	.busi2-1 ul li:nth-child(even){
		flex-direction: column;
	}

	.busi2-1 ul li:nth-child(even) .txts{
		padding:0;
	}

	/* 🔥 추가 (핵심) */
	.busi2-1 ul li .txts .list{
		text-align:left;   /* 점 리스트는 좌측 정렬 */
		display:block;
		margin:15px auto 0;
		max-width:500px;   /* 너무 넓게 퍼지지 않게 */
	}

}
/* 반응형 */
@media(max-width:768px){
  .rights-section{padding:80px 0;}
  .rights-header h2{font-size:1.9em;}
  .rights-card{padding:25px;}
  .rights-message{font-size:1.3em;}
}
/* Responsive */
@media(max-width:768px){
  .price-section{padding:80px 0;}
  .price-title{font-size:1.85em;}
  .price-wrap{padding:18px;}
  .price-sub{font-size:1em;}
}

/* =========================
   MOBILE (≤768px)
========================= */
@media (max-width:768px){

  /* 공통 섹션 패딩 축소 */
  .rights-section,
  .price-section{
    padding:70px 0;
  }

  /* 상단 타이틀 */
  .rights-header h2,
  .price-title{
    font-size:1.4em;
  }

  .rights-header p,
  .price-sub{
    font-size:1em;
  }

  /* 카드 */
  .rights-card{
    padding:20px;
  }

  .rights-card h3{
    font-size:1.1em;
  }

  .rights-card ul li{
    font-size:1em;
    padding:10px 0;
  }

  .rights-message{
    font-size:1.2em;
  }

  /* Price Wrap */
  .price-wrap{
    padding:18px;
  }

  /* 테이블 가로 스크롤 방지 */
  .price-table{
    min-width:100% !important;
  }

  .price-table th,
  .price-table td{
    font-size:1em;
    padding:12px 10px;
  }

  .price-table td strong{
    font-size:1em;
  }

  .price-group td{
    font-size:1em;
  }

  /* Notice */
  .price-notice h3{
    font-size:1em;
  }

  .price-notice ul li{
    font-size:1em;
  }

  .price-footnote,
  .price-official{
    font-size:1em;
  }

  .price-official strong{
    font-size:1em;
  }

}

/* 반응형 */
@media (max-width: 900px){
  .edu-grid { flex-direction:column; }
  .edu-section { padding:70px 0; }
}
@media (max-width: 480px){
  .edu-header h2 { font-size:1.75em; }
  .edu-card, .course { padding:20px; border-radius:14px; }
  .edu-message { font-size:1.05em; }
}
/* ===============================
   PC (1200px 이상) - 글씨 크게
================================= */
@media (min-width: 1400px) {

    .join-header h2 {
        font-size: 2.8em;
    }

    .join-header p {
        font-size: 1.4em;
    }

    .join-card h3 {
        font-size: 1.5em;
    }

    .bullets li,
    .join-type .d,
    .join-steps .tx p {
        font-size: 1.15em;
    }

    .join-steps .tx strong {
        font-size: 1.8em;
    }

    .join-message {
        font-size: 1.25em;
    }

    .btn {
        font-size: 1.1em;
        padding: 16px 36px;
    }
}


/* ===============================
   모바일 (480px 이하) - 글씨 작게
================================= */
@media (max-width: 480px) {

    .join-header h2 {
        font-size: 1.6em;
    }

    .join-header p {
        font-size: 0.95em;
        line-height: 1.6;
    }

    .join-card h3 {
        font-size: 1.1em;
    }

    .bullets li,
    .join-type .d,
    .join-steps .tx p {
        font-size: 0.9em;
    }

    .join-steps .tx strong {
        font-size: 0.95em;
    }

    .join-message {
        font-size: 0.95em;
        padding: 18px;
    }

    .btn {
        font-size: 0.9em;
        padding: 12px 22px;
    }
}
