/* 조직도 */
.org_wrap{ text-align: center; padding: 0 12rem; }
.org_wrap .std{ position:relative; height:2.5rem; line-height:1.3; display: flex; align-items: center; justify-content: center; margin:0 auto; border-radius:0.5rem; font-weight: 600;}

.org_wrap .org_dep1{ position:relative; padding-bottom:1.5rem; }
.org_wrap .org_dep1:before{ content:""; position:absolute; left:50%; top:0; height:100%; border-left:1px solid #ccc;}
.org_wrap .org_dep1 h2{ margin-bottom:1.5rem;}
.org_wrap .org_dep1 h2 .std{ max-width:8rem; height:3rem; font-size:1rem; color:#fff; background:#215c00; border:1px solid #ccc;}
.org_wrap .org_dep1 h3 .std{ max-width:8rem; gap: 0.3rem; font-size:0.85rem; color:#215c00; background:#fff; border:1px solid #215c00;}
.org_wrap .org_dep1 p{ position:absolute; top:calc(50% - 1.75rem); left:calc(50% - 14rem);}
.org_wrap .org_dep1 p:before{ content:""; position:absolute; top:50%; left:100%; width:8rem; border-top:1px solid #ccc;}
.org_wrap .org_dep1 p .std{ width:6rem; color:#111; background:#f4f4f4; border:1px solid #e0e0e0;}

.org_wrap .org_dep2 > ul{ position:relative; width:100%; display: flex; gap: 0 2rem;}
.org_wrap .org_dep2 > ul > li{ position: relative; flex: 1; min-width:0px; display: flex; flex-direction: column; padding-top: 2rem; height: fit-content;}
.org_wrap .org_dep2 > ul > li::before { position: absolute; top: 0; left: 50%; width: 1px; height: 100%; background: #ccc; content: ""; z-index: -1; }
.org_wrap .org_dep2 > ul > li::after { position: absolute; top: 0; left: 50%; width: 50%; height: 1px; background: #ccc; content: ""; }
.org_wrap .org_dep2 > ul > li:nth-child(2)::after { left: -3rem; width: calc(100% + 6rem); }
.org_wrap .org_dep2 > ul > li:nth-child(3)::after { left: auto; right: 50%; }
.org_wrap .org_dep2 > ul > li h3 .std{ max-width:11rem; gap: 0.3rem; font-size:0.85rem; color:#111; background:#fff; border:1px solid #579457; }
.org_wrap .org_dep3 > ul { max-width:11rem; border: 1px solid #ccc; border-radius: 0.5rem; padding: 1rem; text-align: left; margin: 0 auto; background: #fff; margin-top: 1rem; font-size: 0.8rem; }
.org_wrap .org_dep3 > ul > li { font-weight: 600; color: #111; }
.org_wrap .org_dep3 > ul > li + li { margin-top: 0.5rem; }
.org_wrap .org_dep3 > ul > li > ul > li { position: relative; color: #666; font-weight: 400;}
.org_wrap .org_dep3 > ul > li > ul > li::before { display: inline-block; margin-right: 4px; content: "·"; }

/* 소개영상 */
.if_box iframe {width: 100%; height: auto; min-height: 32.5rem;}

@media (max-width: 1680px) {
    .org_wrap{ padding: 0 9rem; }
}

@media (max-width: 1680px) {
    .org_wrap{ padding: 0 2rem; }
}


@media (max-width: 1024px) {

    /* 소개영상 */
    .if_box iframe { min-height: 20rem;}
}


@media (max-width: 940px) {

    .org_wrap .org_dep1{ margin-right:0; padding-bottom:0;}
    .org_wrap .org_dep1 p{ top:calc(50% - 1rem);}

    .org_wrap .org_dep2 h3{ position: relative; padding:0 0 1rem;}
    .org_wrap .org_dep2 h3::before { position: absolute; bottom: 0; left: 50%; width: 1px; height: 100%; background: #ccc; content: "";}
    .org_wrap .org_dep2 > ul{ flex-direction: column;}
    .org_wrap .org_dep2 > ul:before{ display: none;}
    .org_wrap .org_dep2 > ul > li::before,
    .org_wrap .org_dep2 > ul > li::after { display: none; }
    .org_wrap .org_dep2 > ul > li:nth-child(2) .org_dep3 > ul { position: relative; margin-top: 1rem; background: #fff; }
    .org_wrap .org_dep2 > ul > li:nth-child(2) .org_dep3 > ul::before { position: absolute; top: calc(-1rem - 1px); left: 50%; width: calc(50% + 1rem); height: 1px; background: #ccc; content: ""; }
    .org_wrap .org_dep2 > ul > li:nth-child(2) .org_dep3 > ul:nth-child(2):before{ left: auto; right: 50%;}
    .org_wrap .org_dep2 > ul > li:nth-child(2) .org_dep3 > ul::after { position: absolute; top: calc(-1rem - 1px); left: 50%; width: 1px; height: 100%; background: #ccc; content: ""; z-index: -1;}


    .org_wrap .org_dep3{ display: flex; gap: 1rem;}
    .org_wrap .org_dep3 > ul { margin-top: 0; max-width: none; flex: 1; display: flex; flex-wrap: wrap; gap: 0.5rem 1rem;}
    .org_wrap .org_dep3 > ul > li { flex: 1;}
    .org_wrap .org_dep3 > ul > li + li { margin-top: 0; }
    
}

@media (max-width: 530px) {

    .org_wrap { padding: 0; }
    .org_wrap .org_dep1 h2{ margin-bottom:0;}
    .org_wrap .org_dep1 p{ position:relative; top:auto; left:auto; margin:0.5rem 0;}
    .org_wrap .org_dep1 p:before{ left:0; width:50%; }
    .org_wrap .org_dep1 p .std{ margin-left:0;}
}
