/*table design START*/
/*입력창 table 안에 input이나 select에 비해 일반 칸이 세로 길이가 너무 좁으면 이상한거 보완*/
.cell-content {
  min-height: 27px; /* 최소 세로길이 보장 */
}

.textalignRight {
  text-align: right;
}
.textalignCenter {
  text-align: center;
}

/*th는 없음 && td는 옅은색 가로줄만 td사이 간격 없이 빽빽하게*/
table.table_graytop {
  border-collapse: collapse;
  text-align: left;
  line-height: 1.5;
  width: 100%;
}
table.table_graytop th {
  padding: 7px;
  font-weight: bold;
  vertical-align: top;
  /*color: #95a5a6;*/
  /*border-bottom: 1.5px solid black;*/
  border-bottom: 1px solid #bdc3c7;
}
table.table_graytop td {
  padding: 7px;
  vertical-align: top;
  border-bottom: 1px solid #bdc3c7;
  /*background-color: #fff;*/
}
table.table_graytop td:nth-child(1){
  padding-left:0;
}
table.table_graytop td:last-child {
  padding-right: 0;
}
table.table_graytop tr:nth-child(1){
  border-top:1px solid #bdc3c7;
}
table.table_graytop td:nth-child(odd){
  /*background-color: #f7f9fc;*/
}
table.table_graytop td:nth-child(even){
  /*background-color: #fff;*/
}
table.table_graytop td textarea {
  vertical-align: middle;
}

/*th는 배경투명, 글자파랑 && td는 옅은색 가로줄만인데 td사이 간격 매우 넓음(마치 개별 표처럼)*/
table.table_graytop2 {
  border-collapse: collapse;
  text-align: left;
  line-height: 1.5;
  width: 100%;
}
table.table_graytop2 th {
  padding: 0px;
  font-weight: bold;
  vertical-align: top;
  /*color: #95a5a6;*/
  border-bottom: 1px solid #bdc3c7;
}
table.table_graytop2 td {
  padding: 5px;
  vertical-align: top;
  border-top: 1px solid #bdc3c7;
  /*background-color: #fff;*/
  padding-bottom: 50px;
}
table.table_graytop2 td:nth-child(1){
  padding-left:0;
  white-space: nowrap;
}
table.table_graytop2 td:last-child {
  padding-right: 0;
}
table.table_graytop2 tr:nth-child(1){
  /*border-bottom:1.5px solid #bdc3c7;*/
}
table.table_graytop2 td:nth-child(odd){
  /*background-color: #f7f9fc;*/
}
table.table_graytop2 td:nth-child(even){
  /*background-color: #fff;*/
}

/*th는 배경진회색, 글자흰색 && td는 옅은색 가로줄만*/
table.table_graytop3 {
  border-collapse: collapse;
  text-align: left;
  line-height: 1.5;
  width: 100%;
}
table.table_graytop3 th {
  vertical-align: top;
  /*padding: 0px 5px;
  font-weight: bold;
  color: #3fa8f4;
  border-bottom: 1px solid #bdc3c7;*/
  padding: 5px;
  font-weight: normal;
  color: #fff;
  background-color: #636363;
}
table.table_graytop3 td {
  padding: 5px;
  vertical-align: top;
  border-bottom: 1px solid #bdc3c7;
  /*background-color: #fff;*/
}
table.table_graytop3 tr:nth-child(1){
  /*border-bottom:1.5px solid #bdc3c7;*/
}
table.table_graytop3 td:nth-child(odd){
  /*background-color: #f7f9fc;*/
}
table.table_graytop3 td:nth-child(even){
  /*background-color: #fff;*/
}

/*th는 배경투명, 글자파랑 && td는 옅은색 가로줄만*/
table.table_graytop4 {
  border-collapse: collapse;
  text-align: left;
  line-height: 1.5;
  width: 100%;
}
table.table_graytop4 th {
  vertical-align: top;
  padding: 0px 5px;
  font-weight: bold;
  color: #3fa8f4;
  border-bottom: 1px solid #bdc3c7;
}
table.table_graytop4 th:nth-child(1){
  padding-left:0;
}
table.table_graytop4 th:last-child {
  padding-right: 0;
}
table.table_graytop4 td {
  padding: 5px;
  vertical-align: top;
  border-bottom: 1px solid #bdc3c7;
  /*background-color: #fff;*/
}
table.table_graytop4 td:nth-child(1){
  padding-left:0;
  white-space: nowrap;
}
table.table_graytop4 td:last-child {
  padding-right: 0;
}
table.table_graytop4 tr:nth-child(1){
  /*border-bottom:1.5px solid #bdc3c7;*/
}
table.table_graytop4 td:nth-child(odd){
  /*background-color: #f7f9fc;*/
}
table.table_graytop4 td:nth-child(even){
  /*background-color: #fff;*/
}

table.table_bluetop {
  border-collapse: collapse;
  text-align: left;
  line-height: 1.5;
  width: 100%;
}
table.table_bluetop thead th {
  padding: 7px;
  font-weight: bold;
  vertical-align: top;
  /*color: #95a5a6;*/
  /*border-bottom: 1.5px solid black;*/
}
table.table_bluetop td {
  padding: 7px;
  vertical-align: top;
  border-bottom: 1px solid #bdc3c7;
  /*background-color: #fff;*/
}
table.table_bluetop td:nth-child(1){
  padding-left:0;
}
table.table_bluetop tr:nth-child(1){
  border-top:1.5px solid #3fa8f4;
}
table.table_bluetop td:nth-child(odd){
  /*background-color: #f7f9fc;*/
}
table.table_bluetop td:nth-child(even){
  /*background-color: #fff;*/
}

/*th는 배경파란색, 글자흰색 && td는 옅은색 가로줄만*/
table.table_bluetop3 {
  border-collapse: collapse;
  text-align: left;
  line-height: 1.5;
  width: 100%;
}
table.table_bluetop3 th {
  vertical-align: top;
  /*padding: 0px 5px;
  font-weight: bold;
  color: #3fa8f4;
  border-bottom: 1px solid #bdc3c7;*/
  padding: 5px;
  font-weight: normal;
  color: #fff;
  background-color: #3fa8f4;
}
table.table_bluetop3 td {
  padding: 5px;
  vertical-align: top;
  border-bottom: 1px solid #bdc3c7;
  /*background-color: #fff;*/
}
table.table_bluetop3 tr:nth-child(1){
  /*border-bottom:1.5px solid #bdc3c7;*/
}
table.table_bluetop3 td:nth-child(odd){
  /*background-color: #f7f9fc;*/
}
table.table_bluetop3 td:nth-child(even){
  /*background-color: #fff;*/
}

/*선 없는 테이블*/
table.table_gridinfo {
  border-collapse: collapse;
  text-align: left;
  line-height: 1.5;
}
table.table_gridinfo td:nth-child(1){
  color:grey;padding-right:15px;font-weight:bold;
}
table.table_gridinfo tr:nth-child(1){
  border:0;
}
table.table_gridinfo td {
  padding: 2px;
  vertical-align: top;
  border:0;
}
/*table design START*/

/*flat 버튼 css START*/
.navy-flat-button {
  color:white;
  background: #2E2180;
  text-align: center;border:0;
}
/*.white-flat-button {
  color:black;
  background: white;
  text-align: center;border:0;
}
.alizarin-flat-button {
  color: white;
  background: #e74c3c;
  text-align: center;border:0;
}
.green-sea-flat-button {
  color: white;
  background: #16a085;
  text-align: center;border:0;
}
.emerald-flat-button {
  color: white;
  background: #2ecc71;
  text-align: center;border:0;
}
.nephritis-flat-button {
  color: white;
  background: #27ae60;
  text-align: center;border:0;
}
.peter-river-flat-button {
  color: white;
  background: #3498db;
  text-align: center;border:0;
}
.belize-hole-flat-button {
  color: white;
  background: #2980b9;
  text-align: center;border:0;
}
.wet-asphalt-flat-button {
  color: white;
  background: #34495e;
  text-align: center;border:0;
}
.wet-asphalt-flat-button {
  color: white;
  background: #34495e;
  text-align: center;border:0;
}
.midnight-blue-flat-button {
  color: white;
  background: #2c3e50;
  text-align: center;border:0;
}
.clouds-flat-button {
  color:#454545;
  background: #f0f0f0;
  text-align: center;border:0;
}
.silver-flat-button {
  color:white;
  background: #bdc3c7;
  text-align: center;border:0;
}
.concrete-flat-button {
  color:white;
  background: #859596;
  text-align: center;border:0;
}
.asbestos-flat-button {
  color:white;
  background: #7f8c8d;
  text-align: center;border:0;
}
.graphite-flat-button {
  color:white;
  background: #454545;
  text-align: center;border:0;
}*/
/*flat 버튼 css END*/

/*로고색 버튼 START*/
/*.ikef-navy-color {
  color: #3fa8f4;
}
.ikef-navy-bg {
  background-color: #3fa8f4;
  color: #fff;
}
.ikef-navy-button {
  color: white;
  background: #2e2181;
  text-align: center;
  border: 0;
}
.ikef-yellow-button {
  color: black;
  background: #ffc200;
  text-align: center;
  border: 0;
}
.ikef-yellow-bg {
  background-color: #ffc200;
}
.ikef-red-button {
  color: white;
  background: #ef0000;
  text-align: center;
  border: 0;
}
.ikef-red-bg {
  background-color: #ef0000;
  color: #fff;
}
.ikef-white-bg {
  background-color: #fff;
}*/
/*로고색 버튼 END*/

/*file upload input design START*/
.filebox input[type="file"] {
  position: absolute;
  width: 0;
  height: 0;
  padding: 0;
  overflow: hidden;
  border: 0;
}
.filebox label {
  display: inline-block;
  padding: 10px 20px;
  vertical-align: middle;
  cursor: pointer;
  border: 1px solid #ebebeb;
  border-radius: 5px;
}
/* named upload */
.filebox .upload-name {
  display: inline-block;
  height: 34px;
  padding: 0 10px;
  vertical-align: middle;
  background-color: #f5f5f5;
  border: 1px solid #ebebeb;
}
/*file upload input design END*/

/*step-box START*/
/* 단계별 상태 스타일 */
.step-box {
  padding:10px;
  background:#fff
}
.step-state ul:after {
  content:'';
  display:block;
  clear:both
}
.step-state ul li {
  float:left;
  position:relative;
  /*width:33%;*/ /* 진행바를 단계수만큼 등분 */
  padding-top:50px; /* 진행바 영역 확보 */
  font-size:15px;
  font-weight:bold;
  text-align:center;
  line-height:12px;
  color:#666
}
/* 도전중, 달성 텍스트 영역 */
.step-state ul li p:after {
  position:absolute; /* absolute 기준은 li 영역 */
  width:41px;
  height:24px;
  margin-right:-20px;
  background:url(/images/icon/step_status.png) no-repeat 0 0;
  background-size:auto 24px;
  background-position:-58px 0;
  top:0;
  right:0;
  color:#fff;
  font-size:11px;
  line-height:16px;
  letter-spacing:-.5px;
}
.step-state ul li span {
  display:block;
  margin-top:5px;
  font-weight:normal;
  color:#898989;
  font-size:12px
}
/* 회색 진행바 생성 */
.step-state ul li:before {
  position:absolute;
  top:35px;
  left:0;
  right:0;
  height:3px;
  background:#ddd;
  content:''
}
/* 첫 번째 진행바 반만 생성*/
.step-state ul li:nth-child(1):before {
  left:50%
}
/* 마지막 진행바 반만 생성*/
/*.step-state ul li:nth-child(3):before {
  right:50%
}*/
/* 화살표 상태 아이콘 */
.step-state ul li:after {
  position:absolute;
  top:27px;
  left:50%;
  width:20px;
  height:20px;
  margin-left:-10px;
  background:url(/images/icon/step_status.png) no-repeat 0 0;
  background-size:auto 24px;
  background-position:0 0;
  content:''
}
/* 활성화 진행바 및 활성화 화살표 아이콘 표시 */
/* 활성화 상태바 */
.step-state.step1 ul li:nth-child(1):before,
.step-state.step2 ul li:nth-child(-n+2):before,
.step-state.step2-ing ul li:nth-child(-n+2):before,
.step-state.step3 ul li:nth-child(-n+3):before,
.step-state.step3-ing ul li:nth-child(-n+3):before,
.step-state.step4 ul li:nth-child(-n+4):before,
.step-state.step4-ing ul li:nth-child(-n+4):before,
.step-state.step5 ul li:nth-child(-n+5):before {
  /*background:#ff889b;*/background:#ef0000;
}
/* 활성화 아이콘 표시 */
.step-state.step1 ul li:nth-child(1):after,
.step-state.step2 ul li:nth-child(-n+2):after,
.step-state.step2-ing ul li:nth-child(-n+2):after,
.step-state.step3 ul li:nth-child(-n+3):after,
.step-state.step3-ing ul li:nth-child(-n+3):after,
.step-state.step4 ul li:nth-child(-n+4):after,
.step-state.step4-ing ul li:nth-child(-n+4):after,
.step-state.step5 ul li:nth-child(-n+5):after {
  background-position:-20px 0
}
/* 도전 중일 경우의 1/2 영역 비활성화 상태바 영역 */
.step-state ul li p:before {
  position:absolute;
  top:35px;
  left:50%;
  right:0;
  height:3px;
  content:'';
}
.step-state.step1 ul li:nth-child(1) p:before,
.step-state.step2 ul li:nth-child(2) p:before,
.step-state.step3 ul li:nth-child(3) p:before {
  background:#ddd
}
/* "달성" 텍스트 표시 */
.step-state.step1 ul li:nth-child(1) p:after,
.step-state.step2 ul li:nth-child(2) p:after,
.step-state.step3 ul li:nth-child(3) p:after {
  content:'진행중';
  right:50%
}
/*step-box END*/

/*accordian menu START*/
#accordian {
    background: #fff;
    color: black;
}
#accordian .level2 {
    background-color:#F7F9F9;
}
#accordian h3 {
    background: #E5E7E9;
}
#accordian h3 a {
    padding: 20px;
    /*line-height: 34px;*/
    display: block;
    color: black;
    text-decoration: none;
}
#accordian h3:hover {
    text-shadow: 0 0 1px rgba(255, 255, 255, 0.7);
}
#accordian li {
    list-style-type: none;
    cursor: pointer;
}
#accordian ul ul li a,
#accordian h4 {
    color: black;
    text-decoration: none;
    font-size: 0.9em;
    line-height: 27px;
    display: block;
    padding: 15px 15px 15px 15px;
    transition: all 0.15s;
    position: relative;
    border-top: 1px solid #c5cae9;
}
/*#accordian ul ul li a:hover {
    border-left: 5px solid #3f51b5;
    cursor: default;
}*/
#accordian ul ul {
    display: none;
}
#accordian li.active>ul {
    display: block;
}
#accordian ul ul ul {
    /*margin-left: 30px;*/margin-left:0px;
    /*border-left: 1px dotted rgba(0, 0, 0, 0.5);*/border-left:5px solid #3f51b5;
}
#accordian a:not(:only-child):after {
    content: "\f107";
    font-family: fontawesome;
    font-size: 1.2em;
    position: absolute;
    right: 20px;
    top: 10;
}
#accordian .active>a:not(:only-child):after {
    content: "\f106";
}
.level2>ul { background-color:#fff; }
/*accordian menu END*/

/*검색 조건 선택 or 선택 버튼 START*/
/*button*/
.s_btn {
  padding:5px 10px;border-radius:15px;border:0;
  line-height:1;
  cursor:pointer;
  margin-left:3px;margin-bottom:5px;
}
.s_btn_gray {
  background-color: #bdc3c7;
  color: #fff;
}
.s_btn_red {
  background-color: #f93100;
  color: #fff;
}
.s_btn_blue {
  background-color: #3fa8f4;
  color: #fff;
}
/*input*/
.s_input {
  padding:5px 10px;border-radius:15px;border:0;
  background-color:#fff;
  color:black;
}
.s_input_blue {
  padding:5px 10px;border-radius:15px;border:0;
  background-color: #3fa8f4;
  color:#fff;
}
/*select*/
.s_select {
  padding:5px 10px;border-radius:15px;border:0;
  background-color:#ddd;
  color:black;
}
.s_select_blue {
  padding:5px 10px;border-radius:15px;border:0;
  background-color:#3fa8f4;
  color:#fff;
}
/*검색 조건 선택 or 선택 버튼 END*/

/*입력창 안 내용 입력칸 START*/
.content_input {
  padding:5px 10px;border:0;
  background-color: #ebebeb;
}
.content_select {
  padding:5px 10px;border:0;
  background-color: #ebebeb;
}
.content_textarea {
  padding:5px 10px;border:0;
  background-color: #ebebeb;
}
/*입력창 안 내용 입력칸 END*/

/*매우 작은 정보태그*/
.pill_silver {
  padding:3px 7px;border-radius:15px;border:0;font-size:0.8em;
  background-color:#ebebeb;
  color:black;
}

/*bar graph chart START*/
.bar-item {
  display: flex;
  align-items: center;
  margin-bottom: 10px;
  gap: 10px;
}
.bar-outline {
  flex: 1;
  height: 16px;
  background: #e5e7eb;
  border-radius: 999px;
  overflow: hidden;
  position: relative;
}
.bar-fill {
  height: 100%;
  border-radius: inherit;
  transition: width 0.5s ease;
}
/*bar graph chart END*/