#d_navi45 ul, #d_navi45 li {
  list-style: none;
  margin: 0;
  padding: 0;
}
#d_navi45 img {
  border: 0;
}
#d_navi45 a {
  text-decoration: none;
}

#d_navi45 {
  position: relative;
  width: 1080px;
  margin: 0 auto;
  height: 50px;
  border-top: 0px solid #dddddd; /* 위에선 */
  border-bottom: 0px solid #000000; /* 밑에선 */
}

#d_navi45 .d_line {
  position: absolute;
  left: 0;
  top: -1px;
  border-top: 0px solid #166086;
}
#d_navi45 .d_main {
  float: left;
  position: relative;
  margin: 0px /* 메뉴 위에서의 높이 */ 40px /* 필수 메뉴 간 거리 */;
}
#d_navi45 .d_main a {
  font-size: 22px;
  font-weight: 500;
  color: #565656;
  line-height: 40px;
}
#d_navi45 .d_main a:hover {
  color: #166086;
}
#d_navi45 .d_main.on a {
  color: #166086;
}

#d_navi45 .d_main .d_sub {
  position: absolute;
  left: 50%; /* 부모 요소 기준으로 중앙 정렬 */
  top: 50px; /* d_main 바로 아래에 배치 */
  transform: translateX(-50%); /* 중앙 정렬 보정 */
  width: 160px; /* 서브 가로 길이 */
  display: none;
  border: solid 1px #3f6587; /* 테두리 추가 */
  border-radius: 0px; /* 모서리를 둥글게 */
  background: linear-gradient(145deg, #1b6fa7, #14597d); /* 입체감 있는 배경 그라데이션 */
  box-shadow: 4px 4px 8px rgba(0, 0, 0, 0.2), -2px -2px 4px rgba(255, 255, 255, 0.1); /* 그림자 추가 */
  opacity: 90%; /* 약간 투명도 유지 */
  padding: 10px 10px 10px;
  text-align: center; /* 링크 글자 중앙 배열 */
}
#d_navi45 .d_main .d_sub li a {
  font-size: 16px;
  font-weight: 400;
  color: #ffffff;
  line-height: 45px; /* 서브 행간 높이 */
}
#d_navi45 .d_main .d_sub li a:hover {
  color: #ffcc00;
}
