
/* 추가CSS */
.wrap{margin:0 auto; max-width:1200px; width:100%;}
.area{margin:10px; }

/* 반응형 PC 시작 */
@media screen and (min-width: 480px){
.number{clear:both; font-size:16px; line-height:150%; font-weight:normal; color:rgb(137,137,137); margin-top:0px;}
.title{font-size:22px; line-height:150%; margin-top:40px; font-weight:700;color:#2E2645; }
.title1{font-size:28px; line-height:150%; margin-top:40px; margin-bottom:20px; font-weight:700;color:#2E2645; }
.title2{font-size:18px; line-height:150%; font-weight:400; color:#2E2645; }
.title3{font-size:22px; line-height:150%; margin-top:0px; font-weight:700; color:#3e3a39; }
.title4{font-size:14px; line-height:100%; font-weight:700; color:#2E2645;  margin-top:10px;}
.title5{width:100%; font-size:20px; line-height:150%; margin-top:10px; font-weight:600; color:#3e3a39; }
.title6{font-size:16px; line-height:140%; margin-top:-20px; margin-bottom:20px; font-weight:500; color:#3e3a39; }
.title7{width:180px; font-size:20px; line-height:150%; margin:10px auto; font-weight:700; color:#3e3a39; }
.title8{float:left; font-size:16px; line-height:150%; margin:10px 10px; padding:5px; border-bottom:dotted 1px;font-weight:600; color:#3e3a39; }
.content{clear:both; font-size:14px; line-height:150%; padding-top:10px; color:rgb(89,87,87); text-align:justify; }
.content2{font-size:16px; clear:both; line-height:150%; padding-top:10px; padding-bottom:10px; color:#212121; text-align:justify; word-break:keep-all; border-bottom-color:#c2c2c2; border-bottom-width:0.5px; border-bottom-style:dotted; }
.content3{font-size:16px; clear:both; line-height:150%; padding-top:10px; text-align:justify; }
    
ol.list_ol{padding:20px; font-size:16px; line-height:150%; text-align:justify; word-break:keep-all; }
    
.photo_frame{width:50%; float:left; margin-bottom:20px; overflow:auto;}
.photo_frame2{width:50%; float:left; margin-bottom:20px; overflow:auto;}
.photo_frame3{float:left; width:100%; margin-bottom:20px; overflow:auto;}
.photo_frame4{max-width:1200px; margin:auto;  width:100%; display: flex; flex-wrap: wrap; align-items: stretch;}
.photo_50{max-width:580px; width:48%; margin:10px; float:left;}
.photo_100{max-width:1180px; width:98%; margin:10px; float:left;}
.photo{float:left; width:150px; margin:10px;}
.photo_txt{font-size:15px; line-height:1.3; text-align: start; font-weight:400; color:rgb(137,137,137); margin:10px; }
.photo_txt2{float:left; max-width:890px; font-size:14px; line-height:150%; font-weight:400; color:#535353; text-align: start; padding:10px;  border-top:1px dotted #c2c2c2; }
    
.content_v{float:left; width:260px; font-size:14px; line-height:150%; padding-top:5px; color:rgb(89,87,87); text-align:justify; border-right-style:dotted; border-right-color:gray; border-right-width:0.1pt;}
.content_v2{float:left; width:260px; font-size:14px; line-height:150%; padding-top:10px; color:rgb(89,87,87); text-align:justify;}
.photo_frame_v{width:180px; height:400px; margin:10px auto;}

.photo_v{width:171px; margin:10px auto;}
.photo_txt_v{width:220px; font-size:15px; line-height:1.3; font-weight:500; color:rgb(137,137,137); margin:10px auto; }
.photo_txt2_v{min-width:100px; font-size:14px; line-height:150%; font-weight:400; color:rgb(137,137,137); margin:5px auto; }
    
.speaker{font-size:13px; line-height:200%; font-weight:300; color:rgb(137,137,137); }
a.dotted{border-bottom:dotted 1px; border-bottom-color:gray;}
img.rounded{border-radius:10%;}
img.rounded2{border-radius:40px;}
.box{width:100%; padding:20px; background-color:#F5F5F5; border-style:solid; border-width:2px; border-color:#c2c2c2; border-radius:20px; text-align:justify;}
.download{padding:5px auto; border-radius:5px; float:left; width:100px; text-align:center; font-size:12px; line-height:150%; font-weight:400; background-color:#A8A25E; margin:10px 10px 10px 10px; }
.download2{clear:both; padding:5px; border-radius:60px; width:120px; height:120px; text-align:center; font-size:18px; line-height:110px; font-weight:600; color:#ffffff; background-color:#9E5E4D; margin:10px auto; }

#container { text-align:center; }
.tab { list-style: none; margin: 0 !important; padding: 0 !important; overflow: hidden; }
.tab li { width:185px; border: 0.01em solid #c2c2c2; float: left; margin-bottom:1px; background-color:#f1f2f2; }
.tab li a { display: inline-block; color: #000; text-align: center; text-decoration: none; padding: 14px 12px; font-size: 14px; font-weight:500; transition:0.3s; }
.tabcontent { border-top: 0.01em solid #c2c2c2; margin-top: -2.2px; display: none; background-color:rgb(255,255,255); padding: 6px 12px; color:#222; text-align:left !important; }
ul.tab li.current{ border-bottom: 0.01em solid #fff !important; background-color: rgb(255,255,255); color: #222; }
.tabcontent.current { display: block; text-align:left !important; }
.schedule{max-width:800px;width:100%;}
.schedule2{max-width:400px;width:100%;}
.prev{float:left; width:150px;margin-left:20px;font-size:16px; font-weight:500;}
.next{float:right; width:150px;margin-right:20px;text-align:right;font-size:16px; font-weight:500;}
.title5_phototext{overflow:auto;}
.pdf-viewer {
  width: 100%;
  max-width: 800px;
  margin: 20px auto;
  border: 0px none #ccc;
  display: flex;
  flex-direction: column;
  align-items: center;
}

.pdf-viewer canvas {
  width: 100% !important;
  height: auto !important;
  display: block;
}
}

/* 반응형 PC 끝 */

/* 반응형 Phone 시작 */
@media only screen and (min-width : 320px) and (max-width : 480px){
.number{clear:both; font-size:16px; line-height:150%; font-weight:normal; color:rgb(137,137,137); margin-top:30px;}
.title{font-size:20px; line-height:150%; margin-top:40px; font-weight:700; color:#2E2645; }
.title1{font-size:26px; line-height:150%; margin-top:40px; margin-bottom:20px; font-weight:700;color:#2E2645; }
.title2{font-size:16px; line-height:150%; font-weight:400; color:#2E2645; }
.title3{font-size:16px; line-height:150%; margin-top:0px; font-weight:700; color:#3e3a39; }
.title4{font-size:12px; line-height:100%; font-weight:700; color:#2E2645;  margin-top:10px;}
.title5{width:100%; font-size:16px; line-height:150%; margin-top:10px; font-weight:600; text-align: start; color:#3e3a39; }
.title6{font-size:14px; line-height:140%; margin-top:-20px; margin-bottom:20px; font-weight:500; color:#3e3a39; }
.title7{width:300px; font-size:20px; line-height:150%; margin:10px auto; font-weight:700; color:#3e3a39; }
.title8{float:left; font-size:14px; line-height:150%; margin:5px 5px; padding:5px; border-bottom:dotted 1px;font-weight:600; color:#3e3a39; }
.content{font-size:14px; clear:both; line-height:150%; color:rgb(89,87,87); padding:10px; text-align:justify; }
.content2{font-size:14px; clear:both; line-height:150%; padding-top:10px; padding-bottom:10px; color:#212121; text-align:justify; border-bottom-color:#c2c2c2; border-bottom-width:0.5px; border-bottom-style:dotted; }
.content3{font-size:16px; clear:both; line-height:150%; padding-top:10px; color:#696969; }
    
.photo_frame4{max-width:1000px; margin:auto; width:100%; display: flex; flex-wrap: wrap; align-items: stretch;}
.photo_50{width:100%; margin:10px auto; border-radius:10px; float:left;}
.photo_100{width:100%; margin:10px; float:left;}

.photo_frame{width:100%; float:left; margin-bottom:10px; overflow:auto;}
.photo_frame2{width:100%; float:left; margin-bottom:10px; overflow:auto;}
.photo_frame3{float:left; width:100%; margin-bottom:10px; overflow:auto;}
.photo{float:left; width:100px; margin:10px;}
.photo_txt{font-size:13px; text-align: start; line-height:1.3; font-weight:400; color:rgb(137,137,137); margin:10px; }
.photo_txt2{clear:both; width:100%; font-size:12px; line-height:150%; font-weight:400; color:#535353; text-align: start; margin-bottom:10px; padding:10px;  border-top:1px dotted #c2c2c2; }

.content_v{float:left; width:350px; font-size:14px; line-height:150%; padding-top:10px; color:rgb(89,87,87); text-align:justify; border-bottom-style:dotted; border-bottom-color:gray; border-bottom-width:0.1pt;}
.content_v2{float:left; width:350px; font-size:14px; line-height:150%; padding-top:10px; color:rgb(89,87,87); text-align:justify;}
.photo_frame_v{width:270px; height:400px; margin:10px auto;}
.photo_v{width:171px; margin:10px auto;}
.photo_txt_v{width:250px; font-size:15px; line-height:1.3; font-weight:500; color:rgb(137,137,137); margin:10px auto; }
.photo_txt2_v{min-width:150px; font-size:14px; line-height:150%; font-weight:400; color:rgb(137,137,137); margin:5px auto; }
    
.speaker{font-size:13px; line-height:200%; font-weight:300; color:rgb(137,137,137); }
a.dotted{border-bottom:dotted 1px; border-bottom-color:gray;}
img.rounded{border-radius:10%;}
img.rounded2{border-radius:20px;}
.box{width:100%; padding:20px; background-color:#F5F5F5; border-style:solid; border-width:2px; border-color:#c2c2c2; border-radius:20px; text-align:justify;}
.download{padding:5px auto; border-radius:5px; width:80px; float:left; text-align:center; font-size:10px; line-height:150%; font-weight:400; background-color:#A8A25E; margin:5px 5px 5px 5px; }
.download2{clear:both; padding:5px; border-radius:60px; width:120px; height:120px; text-align:center; font-size:18px; line-height:110px; font-weight:600; color:#ffffff; background-color:#9E5E4D; margin:20px auto; }

#container { text-align:center; }
.tab { list-style: none; margin: 0 !important; padding: 0 !important; overflow: hidden; }
.tab li { width:170px; border: 0.01em solid #c2c2c2; float: left; margin-bottom:1px; background-color:#f1f2f2; }
.tab li a { display: inline-block; color: #000; text-align: center; text-decoration: none; padding: 14px 12px; font-size: 14px; font-weight:500; transition:0.3s; }
.tabcontent { border-top: 0.01em solid #c2c2c2; margin-top: -2.2px; display: none; background-color:rgb(255,255,255); padding: 6px 12px; color:#222; text-align:left !important; }
ul.tab li.current{ border-bottom: 0.01em solid #fff !important; background-color: rgb(255,255,255); color: #222; }
.tabcontent.current { display: block; text-align:left !important; }
.schedule{width:100%;}
.prev{float:left; width:150px;margin-left:20px;font-size:16px; font-weight:500;}
.next{float:right; width:150px;margin-right:20px;text-align:right;font-size:16px; font-weight:500;}
.title5_phototext{overflow:auto;}
.pdf-viewer {
  width: 100%;
  max-width: 400px;
  margin: 10px auto;
  border: 0px none #ccc;
  display: flex;
  flex-direction: column;
  align-items: center;
}

.pdf-viewer canvas {
  width: 100% !important;
  height: auto !important;
  display: block;
}
}
/* 반응형 Phone 끝 */

/* Youtube */
.youtubeWrap {position: relative;width: 100%;padding-bottom: 56.25%;margin-top:20px;}
.youtubeWrap iframe {position: absolute;width: 100%;height: 100%;}
iframe.rounded {border-radius:15px;}
   
/* Table */
table{border-collapse: collapse; margin-top:10px; margin-bottom:5px;}
table.application{margin:20px auto; width: 100px !important; height: 70px; border-spacing: 10px; border-collapse: separate;}
table.guide{border-width: 0.5px; border-collapse: collapse; margin-top:10px; margin-bottom:10px;}
tr{border-width: 0.5px;}
tr.gray{background-color:rgb(239, 239, 239);}
td.appl{background-color: #ad4ccf; font-size:14px; color:white !important; font-weight: bold; text-align: center; vertical-align: middle; border-width: 0.5px; border-radius: 10px; border-style: dotted; border-color: #58595b;}
td{border-width: 0.5px;font-size:14px; text-align: center; line-height:130%; color:rgb(89,87,87); padding:10px;}
td.subject{background-color:rgb(239, 239, 239); font-weight:bold; font-size:16px; border-style: solid dotted solid dotted; border-color: black rgb(213,213,213) black rgb(213,213,213) !important;}
td.subject1{background-color:rgb(239, 239, 239); font-weight:bold; font-size:16px; border-color: black rgb(213,213,213) black rgb(213,213,213) !important;}
td.row1{border-style: solid dotted solid dotted; border-color: rgb(213,213,213) rgb(213,213,213) rgb(213,213,213)  rgb(213,213,213); }
td.row2{border-style: solid dotted solid dotted; border-color: rgb(213,213,213) rgb(213,213,213) black  rgb(213,213,213); }
td.row1.sub-cont{text-align:left !important; }
td.row2.sub-cont{text-align:left !important; }
td.guide{border-width: 0.5px; padding:0; border-style: solid dotted solid dotted; border-color: rgb(89, 87, 87) rgb(204, 204, 204) rgb(89, 87, 87) rgb(204, 204, 204); font-size:12px; text-align: center; line-height:2em; font-size:14px; line-height:150%; color:rgb(89,87,87); padding:10px;}

/* 조직도 Table */
.table-wrapper {overflow-x: auto;}
.org-table {width: 100%; border-collapse: collapse; background-color: #fff; min-width: 600px; /* For horizontal scroll on smaller screens */ box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);}
.org-table thead {background-color: #2c3e50; color: white;}
.org-table th,
.org-table td {padding: 12px 15px; border: 1px solid #ddd; text-align: left; vertical-align: top;}
.org-table tr:nth-child(even) {background-color: #f2f2f2;}
.org-table td:first-child {font-weight: bold;}
/* 두 번째 줄 이후에는 첫 번째 칸이라도 스타일 제거 */
.org-table tr:not(:first-child) td:first-child:not([rowspan]) {
  font-weight: normal;
}

/* ✅ 반응형 디자인 */
@media (max-width: 768px) {
    .org-table {font-size: 14px;}
}

/* 연혁 */
.kwmc-timeline {padding: 2rem;}
.kwmc-timeline h2 {text-align: center; margin-bottom: 1.5rem; font-size: 1.8rem; color: #2c3e50;}
.table-responsive {overflow-x: auto;}
.timeline-table {width: 100%; border-collapse: collapse; min-width: 800px;}
.timeline-table th,
.timeline-table td {border: 1px solid #dee2e6; padding: 0.75rem; text-align: center; font-size: 0.95rem;}
.timeline-table thead {background-color: #343a40; color: #fff;}
.timeline-table tbody tr:nth-child(even) {background-color: #f1f3f5;}
.timeline-table td:last-child {text-align: left;}
@media (max-width: 768px) {
  .timeline-table th,
  .timeline-table td {font-size: 0.85rem; padding: 0.5rem;}
  .kwmc-timeline h2 {font-size: 1.4rem;}
}