.program-info-box { border: 1px solid #d6dce8; border-radius: 5px; overflow: hidden; /*margin-bottom: 30px;*/ }
.program-info-box .info-top { padding: 20px 20px 20px 30px; display: flex; justify-content: space-between; align-items: center; gap: 70px; }
.program-info-box .info-top .txt-area { flex: 1; }
.program-info-box .info-top .txt-area strong { display: block; font-size: 24px; font-weight: 700; color: #222; margin-bottom: 20px; line-height: 100%; letter-spacing: -2%; vertical-align: middle; }
.program-info-box .info-top .txt-area strong:last-child { margin-bottom: 0; }
.program-info-box .label-box { display: flex; align-items: flex-start; gap: 12px; margin-bottom: 6px; }
.program-info-box .label-box:last-child { margin-bottom: 0; }
.program-info-box .label { display: inline-flex; align-items: center; justify-content: center; height: 28px; padding: 0 12px; border-radius: 14px; font-size: 13px; font-weight: 600; white-space: nowrap; background-color: #e5f1f3; color: #07b0c3; }
.program-info-box .val { color: #333; font-weight: 500; font-size: 15px; line-height: 150%; letter-spacing: -2%; vertical-align: middle; }
.program-info-box .img-area { display: flex; gap: 6px; flex-shrink: 0; }
.program-info-box .img-area .img-box { width: 215px; height: 140px; border: 1px solid #eee; border-radius: 4px; overflow: hidden; }
.program-info-box .img-area .img-box img { width: 100%; height: 100%; object-fit: cover; }
.program-info-box .info-bottom { background-color: #f8faff; padding: 30px; }
.program-info-box .info-bottom h6 { font-weight: 700; font-size: 18px; line-height: 100%; letter-spacing: -2%; margin-bottom: 12px; color: #011a7a; vertical-align: middle; }
.program-info-box .info-bottom p { color: #333; word-break: keep-all; font-weight: 500; font-size: 16px; line-height: 28px; letter-spacing: -2%; vertical-align: middle; }
.program-detail-box { margin-top: 40px; }
.program-detail-box h6 { margin-bottom: 20px; font-weight: 700; font-size: 22px; line-height: 100%; letter-spacing: -2%; vertical-align: middle; }
.program-detail-box + .program-detail-box { margin-top: 50px; }
.program-title-bar + .program-detail-box { margin-top: 0; }
.program-detail-box:last-child { margin-bottom: 0; }
.program-title-bar { background-color: #011a7a; color: #fff; padding: 18px 30px; display: flex; justify-content: space-between; align-items: center; border-radius: 3px; margin-bottom: 30px; height: 70px; }
.program-title-bar .left { display: flex; align-items: center; gap: 9px; }
.program-title-bar .label { display: inline-flex; align-items: center; flex-shrink: 0; justify-content: center; height: 34px; padding: 0 21px; border: 1px solid #fff; border-radius: 16px; font-weight: 700; font-size: 15px; line-height: 100%; letter-spacing: -2%; vertical-align: middle; }
.program-title-bar h3 { font-weight: 700; font-size: 24px; line-height: 100%; letter-spacing: -2%; vertical-align: middle; }
.program-title-bar .info-list { display: flex; gap: 30px; }
.program-title-bar .info-list li { display: flex; align-items: center; }
.program-title-bar .info-list strong { font-weight: 700; font-size: 16px; line-height: 100%; letter-spacing: -2%; padding-right: 15px; margin-right: 16px; border-right: 1px solid rgba(255, 255, 255, 0.3); }
.program-title-bar .info-list span { font-weight: 500; font-size: 16px; line-height: 100%; letter-spacing: -2%; }
.program-support-box { display: flex; align-items: center; gap: 20px; padding: 30px; border: 1px solid #d6dce8; border-radius: 5px; margin-block: 30px; }
.program-support-box .img-box { width: 100px; height: 100px; flex-shrink: 0; background-color: #f6f9ff; border-radius: 50%; display: flex; align-items: center; justify-content: center; }
.program-support-box .img-box img { width: 51px; height: 38px; object-fit: contain; }
.program-support-box .support-info h6 { font-weight: 600; font-size: 14px; line-height: 100%; letter-spacing: 1%; vertical-align: middle; margin-bottom: 16px; color: #011a7a; }
@media screen and (max-width: 1024px) {
  .program-info-box .info-top { flex-direction: column; padding: 25px; gap: 25px; }
  .program-info-box .info-top .txt-area strong { font-size: 20px; margin-bottom: 20px; }
  .program-info-box .img-area .img-box { width: 140px; height: 90px; }
  .program-title-bar { flex-direction: column; align-items: flex-start; gap: 15px; padding: 20px; height: auto; min-height: 70px; }
  .program-title-bar .info-list { flex-wrap: wrap; gap: 10px 30px; }
}
@media screen and (max-width: 768px) {
  .program-info-box .info-top { flex-direction: column; padding: 20px 15px; }
  .program-info-box .info-top .txt-area strong { font-size: 20px; margin-bottom: 15px; }
  .program-info-box .info-top .label-box { flex-direction: column; align-items: flex-start; gap: 6px; }
  .program-info-box .info-top .label-box .val { line-height: 1.4; font-size: 15px; }
  .program-info-box .info-top .img-area { display: flex; flex-wrap: wrap; gap: 10px; }
  .program-info-box .info-top .img-area .img-box { width: 216px; height: 141px; flex-shrink: 0; }
  .program-title-bar { flex-direction: column; align-items: flex-start; gap: 15px; height: auto; min-height: 70px; padding: 20px 15px; }
  .program-title-bar .info-list { flex-direction: column; gap: 12px; }
  .program-title-bar .info-list li { align-items: flex-start; }
  .program-title-bar .info-list strong { border-right: none; padding-right: 0; margin-right: 10px; }
  .program-support-box { flex-direction: column; align-items: flex-start; gap: 20px; padding: 20px 15px; }
  .program-detail-box { margin-top: 30px; }
  .program-detail-box + .program-detail-box { margin-top: 30px; }
}
@media screen and (max-width: 400px) {
  .program-info-box .info-bottom { padding: 20px; }
  .program-info-box .info-bottom p { font-size: 14px; }
  .program-title-bar h3 { font-size: 18px; }
  .program-support-box { flex-direction: column; align-items: flex-start; padding: 30px 20px; gap: 20px; }
}