.company_wrap {
    width: 100%;
    font-size: 16px;
    color: #222;
    overflow: hidden;
}

.sub_tit {
    margin-bottom: 48px;
}

.sub_tit span,
.section_title span {
    display: block;
    color: var(--primary);
    font-size: 16px;
    font-weight: 800;
    letter-spacing: .02em;
    margin-bottom: 10px;
}

.sub_tit h2 {
    font-size: 30px;
    font-weight: 800;
    line-height: 1.25;
}

.sub_tit p {
    font-size: 16px;
    color: #666;
    margin-top: 14px;
    line-height: 1.7;
}

.company_section {
    margin-bottom: 80px;
}

.company_section:last-child {
    margin-bottom: 0;
}

.section_title {
    margin-bottom: 28px;
}

.section_title h3 {
    font-size: 26px;
    font-weight: 800;
    line-height: 1.3;
}

.company_overview {
    background: linear-gradient(135deg, #f7f9fc, #eef3f8);
    border: 1px solid #e4e9f1;
    border-radius: 24px;
    padding: 42px;
}

.overview_title {
    margin-bottom: 30px;
}

.overview_title strong {
    display: block;
    font-size: 26px;
    color: var(--primary);
    margin-bottom: 14px;
}

.overview_title p {
    font-size: 16px;
    color: #555;
    line-height: 1.75;
}

.company_info {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 14px 36px;
}

.info_item {
    display: flex;
    align-items: flex-start;
    background: rgba(255,255,255,.72);
    border: 1px solid #e4e9f1;
    border-radius: 14px;
    padding: 16px 18px;
}

.info_item strong {
    width: 105px;
    flex-shrink: 0;
    color: var(--primary);
    font-weight: 800;
}

.info_item span {
    color: #333;
    line-height: 1.55;
}

.biz_grid {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 18px;
}

.biz_box {
    min-height: 178px;
    border: 1px solid #e5eaf2;
    border-radius: 22px;
    padding: 30px 16px;
    text-align: center;
    background: linear-gradient(180deg, #fff, #f8faff);
    box-shadow: 0 10px 25px rgba(23,28,97,.05);
    transition: .25s;
}

.biz_box i {
    width: 58px;
    height: 58px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: rgba(23,28,97,.82);
    color: #fff;
    border-radius: 18px;
    font-size: 23px;
    margin-bottom: 20px;
    box-shadow: 0 10px 18px rgba(23,28,97,.16);
}

.biz_box strong {
    display: block;
    font-size: 18px;
    font-weight: 800;
    margin-bottom: 9px;
}

.biz_box p {
    font-size: 16px;
    color: #666;
    line-height: 1.55;
}

.biz_box:hover {
    border-color: rgba(23,28,97,.35);
    transform: translateY(-5px);
    box-shadow: 0 16px 34px rgba(23,28,97,.1);
}

.service_section {
    position: relative;
    background: linear-gradient(135deg, #454a9a, #5960ad);
    border-radius: 26px;
    padding: 44px;
    overflow: hidden;
}

.service_section:before {
    content: "";
    position: absolute;
    right: -120px;
    top: -120px;
    width: 300px;
    height: 300px;
    background: rgba(255,255,255,.08);
    border-radius: 50%;
}

.service_section:after {
    content: "";
    position: absolute;
    left: -80px;
    bottom: -120px;
    width: 240px;
    height: 240px;
    background: rgba(255,255,255,.06);
    border-radius: 50%;
}

.service_section .section_title,
.service_grid {
    position: relative;
    z-index: 1;
}

.service_section .section_title span,
.service_section .section_title h3 {
    color: #fff;
}

.service_grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 18px;
}

.service_item {
    min-height: 118px;
    display: flex;
    align-items: center;
    gap: 16px;
    background: rgba(255,255,255,.13);
    border: 1px solid rgba(255,255,255,.22);
    border-radius: 20px;
    padding: 24px;
    color: #fff;
    backdrop-filter: blur(4px);
    transition: .25s;
}

.service_item i {
    width: 50px;
    height: 50px;
    flex-shrink: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: rgba(255,255,255,.92);
    color: #454a9a;
    border-radius: 16px;
    font-size: 20px;
}

.service_item strong {
    font-size: 18px;
    font-weight: 800;
}

.service_item:hover {
    background: rgba(255,255,255,.18);
    transform: translateY(-3px);
}

.strength_grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 20px;
}

.strength_item {
    position: relative;
    border-radius: 22px;
    background: linear-gradient(135deg, #f8faff, #f1f5fa);
    padding: 30px 30px 30px 98px;
    min-height: 145px;
    border: 1px solid #e4e9f1;
    box-shadow: 0 10px 24px rgba(23,28,97,.045);
    transition: .25s;
}

.strength_item i {
    position: absolute;
    left: 30px;
    top: 30px;
    width: 50px;
    height: 50px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: rgba(23,28,97,.82);
    color: #fff;
    border-radius: 16px;
    font-size: 20px;
    box-shadow: 0 10px 18px rgba(23,28,97,.14);
}

.strength_item strong {
    display: block;
    font-size: 20px;
    font-weight: 800;
    margin-bottom: 11px;
}

.strength_item p {
    font-size: 16px;
    color: #666;
    line-height: 1.65;
}

.strength_item:hover {
    transform: translateY(-4px);
    box-shadow: 0 16px 32px rgba(23,28,97,.08);
}

@media (max-width: 1024px) {
    .biz_grid {
        grid-template-columns: repeat(3, 1fr);
    }

    .service_grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 767px) {
    .sub_tit {
        margin-bottom: 36px;
    }

    .sub_tit h2 {
        font-size: 30px;
    }

    .section_title h3 {
        font-size: 24px;
    }

    .company_section {
        margin-bottom: 56px;
    }

    .company_overview,
    .service_section {
        padding: 26px 18px;
        border-radius: 20px;
    }

    .company_info,
    .strength_grid {
        grid-template-columns: 1fr;
    }

    .info_item {
        display: block;
    }

    .info_item strong {
        display: block;
        width: auto;
        margin-bottom: 7px;
    }

    .biz_grid,
    .service_grid {
        grid-template-columns: 1fr;
    }

    .biz_box,
    .service_item {
        min-height: auto;
    }

    .strength_item {
        padding: 26px;
    }

    .strength_item i {
        position: static;
        margin-bottom: 16px;
    }
}




.org_wrap {
    width: 100%;
    font-size: 16px;
    color: #222;
    overflow: hidden;
}

.org_section {
    margin-bottom: 80px;
}

.org_section:last-child {
    margin-bottom: 0;
}

.org_chart_section {
    background: linear-gradient(135deg, #f7f9fc, #eef3f8);
    border: 1px solid #e4e9f1;
    border-radius: 24px;
    padding: 42px;
}

.org_chart {
    text-align: center;
}

.org_level {
    display: inline-flex;
    align-items: center;
    gap: 14px;
    min-width: 260px;
    justify-content: center;
    border-radius: 18px;
    padding: 18px 30px;
    color: #fff;
    box-shadow: 0 12px 24px rgba(23,28,97,.12);
}

.org_level i {
    width: 42px;
    height: 42px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: rgba(255,255,255,.92);
    color: #454a9a;
    border-radius: 14px;
    font-size: 18px;
}

.org_level strong {
    font-size: 20px;
    font-weight: 800;
}

.org_top {
    background: linear-gradient(135deg, #454a9a, #5960ad);
}

.org_mid {
    background: linear-gradient(135deg, #4aa7a0, #5bb8b0);
}

.org_line {
    width: 2px;
    height: 34px;
    background: #cfd6e2;
    margin: 0 auto;
}

.org_dept_grid {
    position: relative;
    display: grid;
    grid-template-columns: repeat(6, 1fr);
    gap: 16px;
    margin-top: 36px;
}

.org_dept_grid:before {
    content: "";
    position: absolute;
    left: 8%;
    right: 8%;
    top: -18px;
    height: 1px;
    background: #cfd6e2;
}

.org_dept {
    position: relative;
    min-height: 120px;
    border: 1px solid #e5eaf2;
    border-radius: 20px;
    background: linear-gradient(180deg, #fff, #f8faff);
    padding: 24px 14px;
    box-shadow: 0 10px 25px rgba(23,28,97,.05);
}

.org_dept:before {
    content: "";
    position: absolute;
    left: 50%;
    top: -18px;
    width: 1px;
    height: 18px;
    background: #cfd6e2;
}

.org_dept i {
    width: 50px;
    height: 50px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: rgba(23,28,97,.82);
    color: #fff;
    border-radius: 16px;
    font-size: 19px;
    margin-bottom: 16px;
    box-shadow: 0 10px 18px rgba(23,28,97,.14);
}

.org_dept strong {
    display: block;
    font-size: 16px;
    font-weight: 800;
    line-height: 1.35;
}

.role_grid,
.branch_grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 20px;
}

.role_item,
.branch_item {
    position: relative;
    border-radius: 22px;
    background: linear-gradient(135deg, #f8faff, #f1f5fa);
    padding: 30px 30px 30px 98px;
    min-height: 145px;
    border: 1px solid #e4e9f1;
    box-shadow: 0 10px 24px rgba(23,28,97,.045);
    transition: .25s;
}

.role_item i,
.branch_item > i {
    position: absolute;
    left: 30px;
    top: 30px;
    width: 50px;
    height: 50px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: rgba(23,28,97,.82);
    color: #fff;
    border-radius: 16px;
    font-size: 20px;
    box-shadow: 0 10px 18px rgba(23,28,97,.14);
}

.role_item strong,
.branch_item strong {
    display: block;
    font-size: 20px;
    font-weight: 800;
    margin-bottom: 11px;
}

.role_item p {
    font-size: 16px;
    color: #666;
    line-height: 1.65;
}

.role_item:hover,
.branch_item:hover,
.org_dept:hover {
    transform: translateY(-4px);
    box-shadow: 0 16px 32px rgba(23,28,97,.08);
}

.branch_grid {
    grid-template-columns: repeat(3, 1fr);
}

.branch_item {
    padding: 30px;
}

.branch_item > i {
    position: static;
    margin-bottom: 18px;
}

.branch_item ul {
    margin-top: 18px;
}

.branch_item li {
    display: flex;
    gap: 10px;
    padding: 9px 0;
    border-top: 1px solid #e4e9f1;
    color: #555;
    line-height: 1.45;
}

.branch_item li b {
    width: 60px;
    flex-shrink: 0;
    color: var(--primary);
    font-weight: 800;
}

@media (max-width: 1024px) {
    .org_dept_grid {
        grid-template-columns: repeat(3, 1fr);
    }

    .org_dept_grid:before,
    .org_dept:before {
        display: none;
    }

    .branch_grid {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 767px) {
    .org_section {
        margin-bottom: 56px;
    }

    .org_chart_section {
        padding: 26px 18px;
        border-radius: 20px;
    }

    .org_level {
        width: 100%;
        min-width: 0;
    }

    .org_dept_grid,
    .role_grid,
    .branch_grid {
        grid-template-columns: 1fr;
    }

    .role_item,
    .branch_item {
        padding: 26px;
    }

    .role_item i {
        position: static;
        margin-bottom: 16px;
    }

    .branch_item li {
        display: block;
    }

    .branch_item li b {
        display: block;
        width: auto;
        margin-bottom: 4px;
    }
}


.location_wrap{
width:100%;
font-size:16px;
color:#222;
}

/* ?션 간격 */
.location_section{
margin-bottom:70px;
}

/* 지??*/
.map_box{
width:100%;
height:420px;
border-radius:24px;
overflow:hidden;
border:1px solid #e4e9f1;
box-shadow:0 10px 25px rgba(23,28,97,.06);
}

#map{
width:100%;
height:100%;
}

/* ?보 */
.location_info{
display:grid;
grid-template-columns:1fr 1fr;
gap:18px;
}

.loc_item{
display:flex;
gap:16px;
padding:22px;
border-radius:20px;
background:linear-gradient(135deg,#f8faff,#f1f5fa);
border:1px solid #e4e9f1;
}

.loc_item i{
width:48px;
height:48px;
display:flex;
align-items:center;
justify-content:center;
background:rgba(23,28,97,.82);
color:#fff;
border-radius:16px;
font-size:18px;
}

.loc_item strong{
display:block;
font-size:18px;
font-weight:800;
margin-bottom:6px;
}

.loc_item p{
font-size:16px;
color:#555;
line-height:1.6;
}

/* 지??*/
.branch_grid{
display:grid;
grid-template-columns:repeat(3,1fr);
gap:20px;
}

.location_branch{
    grid-template-columns:repeat(2,1fr);
}

/* 기존 branch_item ????그???사??가??*/

/* 모바??*/
@media (max-width:767px){

.location_section{
margin-bottom:50px;
}

.map_box{
height:300px;
border-radius:18px;
}

.location_info{
grid-template-columns:1fr;
}

.branch_grid{
grid-template-columns:1fr;
}

}


.air_wrap {
    width: 100%;
    font-size: 16px;
    color: #222;
    overflow: hidden;
}

.air_section {
    margin-bottom: 80px;
}

.air_section:last-child {
    margin-bottom: 0;
}

.air_intro {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 30px;
    align-items: center;
    background: linear-gradient(135deg, #f7f9fc, #eef3f8);
    border: 1px solid #e4e9f1;
    border-radius: 24px;
    padding: 42px;
}

.air_intro_text span {
    display: block;
    color: var(--primary);
    font-size: 16px;
    font-weight: 800;
    margin-bottom: 10px;
}

.air_intro_text h3 {
    font-size: 26px;
    font-weight: 800;
    line-height: 1.35;
    margin-bottom: 16px;
}

.air_intro_text p {
    font-size: 16px;
    color: #555;
    line-height: 1.75;
}

.air_intro_img {
    height: 320px;
    border-radius: 22px;
    overflow: hidden;
    box-shadow: 0 14px 28px rgba(23,28,97,.08);
}

.air_intro_img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.air_service_grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
}

.air_service_item {
    position: relative;
    border-radius: 22px;
    background: linear-gradient(135deg, #f8faff, #f1f5fa);
    padding: 30px 30px 30px 98px;
    min-height: 150px;
    border: 1px solid #e4e9f1;
    box-shadow: 0 10px 24px rgba(23,28,97,.045);
    transition: .25s;
}

.air_service_item i {
    position: absolute;
    left: 30px;
    top: 30px;
    width: 50px;
    height: 50px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: rgba(23,28,97,.82);
    color: #fff;
    border-radius: 16px;
    font-size: 20px;
    box-shadow: 0 10px 18px rgba(23,28,97,.14);
}

.air_service_item strong {
    display: block;
    font-size: 20px;
    font-weight: 800;
    margin-bottom: 11px;
}

.air_service_item p {
    font-size: 16px;
    color: #666;
    line-height: 1.65;
}

.air_service_item:hover {
    transform: translateY(-4px);
    box-shadow: 0 16px 32px rgba(23,28,97,.08);
}

.air_process {
    position: relative;
    background: linear-gradient(135deg, #454a9a, #5960ad);
    border-radius: 26px;
    padding: 44px;
    overflow: hidden;
}

.air_process:before {
    content: "";
    position: absolute;
    right: -120px;
    top: -120px;
    width: 300px;
    height: 300px;
    background: rgba(255,255,255,.08);
    border-radius: 50%;
}

.air_process .section_title,
.process_grid {
    position: relative;
    z-index: 1;
}

.air_process .section_title span,
.air_process .section_title h3 {
    color: #fff;
}

.process_grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 18px;
}

.process_item {
    background: rgba(255,255,255,.13);
    border: 1px solid rgba(255,255,255,.22);
    border-radius: 20px;
    padding: 26px;
    color: #fff;
    min-height: 160px;
    transition: .25s;
}

.process_item b {
    display: inline-flex;
    width: 48px;
    height: 48px;
    align-items: center;
    justify-content: center;
    background: rgba(255,255,255,.92);
    color: #454a9a;
    border-radius: 16px;
    font-size: 18px;
    margin-bottom: 18px;
}

.process_item strong {
    display: block;
    font-size: 20px;
    font-weight: 800;
    margin-bottom: 10px;
}

.process_item p {
    font-size: 16px;
    line-height: 1.6;
    color: rgba(255,255,255,.86);
}

.process_item:hover {
    background: rgba(255,255,255,.18);
    transform: translateY(-3px);
}

@media (max-width: 1024px) {
    .air_service_grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .process_grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 767px) {
    .air_section {
        margin-bottom: 56px;
    }

    .air_intro {
        grid-template-columns: 1fr;
        padding: 26px 18px;
        border-radius: 20px;
    }

    .air_intro_text h3 {
        font-size: 24px;
    }

    .air_intro_img {
        height: 220px;
        border-radius: 18px;
    }

    .air_service_grid,
    .process_grid {
        grid-template-columns: 1fr;
    }

    .air_service_item {
        padding: 26px;
    }

    .air_service_item i {
        position: static;
        margin-bottom: 16px;
    }

    .air_process {
        padding: 26px 18px;
        border-radius: 20px;
    }

    .process_item {
        min-height: auto;
    }
}



.ocean_wrap {
    width: 100%;
    font-size: 16px;
    color: #222;
    overflow: hidden;
}

.ocean_section {
    margin-bottom: 80px;
}

.ocean_section:last-child {
    margin-bottom: 0;
}

.ocean_intro {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 30px;
    align-items: center;
    background: linear-gradient(135deg, #f7f9fc, #eef3f8);
    border: 1px solid #e4e9f1;
    border-radius: 24px;
    padding: 42px;
}

.ocean_intro_text span {
    display: block;
    color: var(--primary);
    font-size: 16px;
    font-weight: 800;
    margin-bottom: 10px;
}

.ocean_intro_text h3 {
    font-size: 26px;
    font-weight: 800;
    line-height: 1.35;
    margin-bottom: 16px;
}

.ocean_intro_text p {
    font-size: 16px;
    color: #555;
    line-height: 1.75;
}

.ocean_intro_img {
    height: 320px;
    border-radius: 22px;
    overflow: hidden;
    box-shadow: 0 14px 28px rgba(23,28,97,.08);
}

.ocean_intro_img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.ocean_service_grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
}

.ocean_service_item {
    position: relative;
    border-radius: 22px;
    background: linear-gradient(135deg, #f8faff, #f1f5fa);
    padding: 30px 30px 30px 98px;
    min-height: 150px;
    border: 1px solid #e4e9f1;
    box-shadow: 0 10px 24px rgba(23,28,97,.045);
    transition: .25s;
}

.ocean_service_item i {
    position: absolute;
    left: 30px;
    top: 30px;
    width: 50px;
    height: 50px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: rgba(23,28,97,.82);
    color: #fff;
    border-radius: 16px;
    font-size: 20px;
    box-shadow: 0 10px 18px rgba(23,28,97,.14);
}

.ocean_service_item strong {
    display: block;
    font-size: 20px;
    font-weight: 800;
    margin-bottom: 11px;
}

.ocean_service_item p {
    font-size: 16px;
    color: #666;
    line-height: 1.65;
}

.ocean_service_item:hover {
    transform: translateY(-4px);
    box-shadow: 0 16px 32px rgba(23,28,97,.08);
}

.ocean_process {
    position: relative;
    background: linear-gradient(135deg, #454a9a, #5960ad);
    border-radius: 26px;
    padding: 44px;
    overflow: hidden;
}

.ocean_process:before {
    content: "";
    position: absolute;
    right: -120px;
    top: -120px;
    width: 300px;
    height: 300px;
    background: rgba(255,255,255,.08);
    border-radius: 50%;
}

.ocean_process .section_title,
.process_grid {
    position: relative;
    z-index: 1;
}

.ocean_process .section_title span,
.ocean_process .section_title h3 {
    color: #fff;
}

.process_grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 18px;
}

.process_item {
    background: rgba(255,255,255,.13);
    border: 1px solid rgba(255,255,255,.22);
    border-radius: 20px;
    padding: 26px;
    color: #fff;
    min-height: 160px;
    transition: .25s;
}

.process_item b {
    display: inline-flex;
    width: 48px;
    height: 48px;
    align-items: center;
    justify-content: center;
    background: rgba(255,255,255,.92);
    color: #454a9a;
    border-radius: 16px;
    font-size: 18px;
    margin-bottom: 18px;
}

.process_item strong {
    display: block;
    font-size: 20px;
    font-weight: 800;
    margin-bottom: 10px;
}

.process_item p {
    font-size: 16px;
    line-height: 1.6;
    color: rgba(255,255,255,.86);
}

@media (max-width: 1024px) {
    .ocean_service_grid,
    .process_grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 767px) {
    .ocean_section {
        margin-bottom: 56px;
    }

    .ocean_intro {
        grid-template-columns: 1fr;
        padding: 26px 18px;
        border-radius: 20px;
    }

    .ocean_intro_text h3 {
        font-size: 24px;
    }

    .ocean_intro_img {
        height: 220px;
        border-radius: 18px;
    }

    .ocean_service_grid,
    .process_grid {
        grid-template-columns: 1fr;
    }

    .ocean_service_item {
        padding: 26px;
    }

    .ocean_service_item i {
        position: static;
        margin-bottom: 16px;
    }

    .ocean_process {
        padding: 26px 18px;
        border-radius: 20px;
    }

    .process_item {
        min-height: auto;
    }
}

.project_wrap{
width:100%;
font-size:16px;
color:#222;
overflow:hidden;
}

.project_section{
margin-bottom:80px;
}

.project_section:last-child{
margin-bottom:0;
}

.project_intro{
display:grid;
grid-template-columns:1fr 1fr;
gap:30px;
align-items:center;
background:linear-gradient(135deg,#f7f9fc,#eef3f8);
border:1px solid #e4e9f1;
border-radius:24px;
padding:42px;
}

.project_intro_text span{
display:block;
color:var(--primary);
font-weight:800;
margin-bottom:10px;
}

.project_intro_text h3{
font-size:26px;
font-weight:800;
margin-bottom:16px;
}

.project_intro_text p{
color:#555;
line-height:1.7;
}

.project_intro_img{
height:320px;
border-radius:22px;
overflow:hidden;
box-shadow:0 14px 28px rgba(23,28,97,.08);
}

.project_intro_img img{
width:100%;
height:100%;
object-fit:cover;
}

.project_service_grid{
display:grid;
grid-template-columns:repeat(3,1fr);
gap:20px;
}

.project_service_item{
position:relative;
border-radius:22px;
background:linear-gradient(135deg,#f8faff,#f1f5fa);
padding:30px 30px 30px 98px;
min-height:150px;
border:1px solid #e4e9f1;
box-shadow:0 10px 24px rgba(23,28,97,.045);
transition:.25s;
}

.project_service_item i{
position:absolute;
left:30px;
top:30px;
width:50px;
height:50px;
display:flex;
align-items:center;
justify-content:center;
background:rgba(23,28,97,.82);
color:#fff;
border-radius:16px;
font-size:20px;
}

.project_service_item strong{
display:block;
font-size:20px;
font-weight:800;
margin-bottom:10px;
}

.project_service_item p{
color:#666;
line-height:1.6;
}

.project_service_item:hover{
transform:translateY(-4px);
box-shadow:0 16px 32px rgba(23,28,97,.08);
}

.project_process{
background:linear-gradient(135deg,#454a9a,#5960ad);
border-radius:26px;
padding:44px;
}

.project_process .section_title span,
.project_process .section_title h3{
color:#fff;
}

.process_grid{
display:grid;
grid-template-columns:repeat(4,1fr);
gap:18px;
}

.process_item{
background:rgba(255,255,255,.13);
border:1px solid rgba(255,255,255,.22);
border-radius:20px;
padding:26px;
color:#fff;
}

.process_item b{
display:inline-flex;
width:48px;
height:48px;
align-items:center;
justify-content:center;
background:#fff;
color:#454a9a;
border-radius:16px;
margin-bottom:14px;
}

.process_item strong{
display:block;
font-size:18px;
font-weight:800;
margin-bottom:8px;
}

.process_item p{
font-size:16px;
color:rgba(255,255,255,.85);
}

@media (max-width:1024px){
.project_service_grid{
grid-template-columns:repeat(2,1fr);
}
.process_grid{
grid-template-columns:repeat(2,1fr);
}
}

@media (max-width:767px){
.project_intro{
grid-template-columns:1fr;
padding:26px 18px;
}
.project_intro_img{
height:220px;
}
.project_service_grid,
.process_grid{
grid-template-columns:1fr;
}
.project_service_item{
padding:26px;
}
.project_service_item i{
position:static;
margin-bottom:15px;
}
.project_process{
padding:26px 18px;
}
}

.project_process{
position:relative;
background:linear-gradient(135deg,#454a9a,#5960ad);
border-radius:26px;
padding:44px;
overflow:hidden;
}

/* ?른???????*/
.project_process:before{
content:"";
position:absolute;
right:-120px;
top:-120px;
width:300px;
height:300px;
background:rgba(255,255,255,.08);
border-radius:50%;
}

/* ?쪽 ?래 ?? ??*/
.project_process:after{
content:"";
position:absolute;
left:-80px;
bottom:-120px;
width:240px;
height:240px;
background:rgba(255,255,255,.06);
border-radius:50%;
}

/* ?용 ?로 ?리?*/
.project_process .section_title,
.project_process .process_grid{
position:relative;
z-index:1;
}


.road_wrap{
width:100%;
font-size:16px;
color:#222;
overflow:hidden;
}

.road_section{
margin-bottom:80px;
}

.road_intro{
display:grid;
grid-template-columns:1fr 1fr;
gap:30px;
align-items:center;
background:linear-gradient(135deg,#f7f9fc,#eef3f8);
border:1px solid #e4e9f1;
border-radius:24px;
padding:42px;
}

.road_intro_text span{
color:var(--primary);
font-weight:800;
display:block;
margin-bottom:10px;
}

.road_intro_text h3{
font-size:26px;
font-weight:800;
margin-bottom:16px;
}

.road_intro_text p{
color:#555;
line-height:1.7;
}

.road_intro_img{
height:320px;
border-radius:22px;
overflow:hidden;
box-shadow:0 14px 28px rgba(23,28,97,.08);
}

.road_intro_img img{
width:100%;
height:100%;
object-fit:cover;
}

.road_service_grid{
display:grid;
grid-template-columns:repeat(3,1fr);
gap:20px;
}

.road_service_item{
position:relative;
border-radius:22px;
background:linear-gradient(135deg,#f8faff,#f1f5fa);
padding:30px 30px 30px 98px;
min-height:150px;
border:1px solid #e4e9f1;
box-shadow:0 10px 24px rgba(23,28,97,.045);
transition:.25s;
}

.road_service_item i{
position:absolute;
left:30px;
top:30px;
width:50px;
height:50px;
display:flex;
align-items:center;
justify-content:center;
background:rgba(23,28,97,.82);
color:#fff;
border-radius:16px;
}

.road_service_item strong{
display:block;
font-size:20px;
font-weight:800;
margin-bottom:10px;
}

.road_service_item p{
color:#666;
line-height:1.6;
}

.road_service_item:hover{
transform:translateY(-4px);
box-shadow:0 16px 32px rgba(23,28,97,.08);
}

/* ?로?스 ?일 ????*/
.road_process{
position:relative;
background:linear-gradient(135deg,#454a9a,#5960ad);
border-radius:26px;
padding:44px;
overflow:hidden;
}

.road_process:before{
content:"";
position:absolute;
right:-120px;
top:-120px;
width:300px;
height:300px;
background:rgba(255,255,255,.08);
border-radius:50%;
}

.road_process:after{
content:"";
position:absolute;
left:-80px;
bottom:-120px;
width:240px;
height:240px;
background:rgba(255,255,255,.06);
border-radius:50%;
}

.road_process .section_title,
.road_process .process_grid{
position:relative;
z-index:1;
}

.road_process .section_title span,
.road_process .section_title h3{
color:#fff;
}

/* 반응??*/
@media (max-width:1024px){
.road_service_grid{grid-template-columns:repeat(2,1fr)}
.process_grid{grid-template-columns:repeat(2,1fr)}
}

@media (max-width:767px){
.road_intro{grid-template-columns:1fr;padding:26px 18px}
.road_intro_img{height:220px}
.road_service_grid,
.process_grid{grid-template-columns:1fr}
.road_service_item{padding:26px}
.road_service_item i{position:static;margin-bottom:15px}
.road_process{padding:26px 18px}
}


.logistics_wrap{
width:100%;
font-size:16px;
color:#222;
overflow:hidden;
}

.logistics_section{
margin-bottom:80px;
}

.logistics_section:last-child{
margin-bottom:0;
}

.logistics_intro{
display:grid;
grid-template-columns:1fr 1fr;
gap:30px;
align-items:center;
background:linear-gradient(135deg,#f7f9fc,#eef3f8);
border:1px solid #e4e9f1;
border-radius:24px;
padding:42px;
}

.logistics_intro_text span{
color:var(--primary);
font-weight:800;
display:block;
margin-bottom:10px;
}

.logistics_intro_text h3{
font-size:26px;
font-weight:800;
margin-bottom:16px;
}

.logistics_intro_text p{
color:#555;
line-height:1.7;
}

.logistics_intro_img{
height:320px;
border-radius:22px;
overflow:hidden;
box-shadow:0 14px 28px rgba(23,28,97,.08);
}

.logistics_intro_img img{
width:100%;
height:100%;
object-fit:cover;
}

.logistics_service_grid{
display:grid;
grid-template-columns:repeat(3,1fr);
gap:20px;
}

.logistics_service_item{
position:relative;
border-radius:22px;
background:linear-gradient(135deg,#f8faff,#f1f5fa);
padding:30px 30px 30px 98px;
min-height:150px;
border:1px solid #e4e9f1;
box-shadow:0 10px 24px rgba(23,28,97,.045);
transition:.25s;
}

.logistics_service_item i{
position:absolute;
left:30px;
top:30px;
width:50px;
height:50px;
display:flex;
align-items:center;
justify-content:center;
background:rgba(23,28,97,.82);
color:#fff;
border-radius:16px;
font-size:20px;
box-shadow:0 10px 18px rgba(23,28,97,.14);
}

.logistics_service_item strong{
display:block;
font-size:20px;
font-weight:800;
margin-bottom:10px;
}

.logistics_service_item p{
color:#666;
line-height:1.6;
}

.logistics_service_item:hover{
transform:translateY(-4px);
box-shadow:0 16px 32px rgba(23,28,97,.08);
}

.logistics_process{
position:relative;
background:linear-gradient(135deg,#454a9a,#5960ad);
border-radius:26px;
padding:44px;
overflow:hidden;
}

.logistics_process:before{
content:"";
position:absolute;
right:-120px;
top:-120px;
width:300px;
height:300px;
background:rgba(255,255,255,.08);
border-radius:50%;
}

.logistics_process:after{
content:"";
position:absolute;
left:-80px;
bottom:-120px;
width:240px;
height:240px;
background:rgba(255,255,255,.06);
border-radius:50%;
}

.logistics_process .section_title,
.logistics_process .process_grid{
position:relative;
z-index:1;
}

.logistics_process .section_title span,
.logistics_process .section_title h3{
color:#fff;
}

@media (max-width:1024px){
.logistics_service_grid{
grid-template-columns:repeat(2,1fr);
}
.process_grid{
grid-template-columns:repeat(2,1fr);
}
}

@media (max-width:767px){
.logistics_section{
margin-bottom:56px;
}
.logistics_intro{
grid-template-columns:1fr;
padding:26px 18px;
}
.logistics_intro_img{
height:220px;
}
.logistics_service_grid,
.process_grid{
grid-template-columns:1fr;
}
.logistics_service_item{
padding:26px;
}
.logistics_service_item i{
position:static;
margin-bottom:15px;
}
.logistics_process{
padding:26px 18px;
}
}


.it_wrap{
width:100%;
font-size:16px;
color:#222;
overflow:hidden;
}

.it_section{
margin-bottom:80px;
}

.it_section:last-child{
margin-bottom:0;
}

.it_intro{
display:grid;
grid-template-columns:1fr 1fr;
gap:30px;
align-items:center;
background:linear-gradient(135deg,#f7f9fc,#eef3f8);
border:1px solid #e4e9f1;
border-radius:24px;
padding:42px;
}

.it_intro_text span{
color:var(--primary);
font-weight:800;
display:block;
margin-bottom:10px;
}

.it_intro_text h3{
font-size:26px;
font-weight:800;
margin-bottom:16px;
}

.it_intro_text p{
color:#555;
line-height:1.7;
}

.it_intro_img{
height:320px;
border-radius:22px;
overflow:hidden;
box-shadow:0 14px 28px rgba(23,28,97,.08);
}

.it_intro_img img{
width:100%;
height:100%;
object-fit:cover;
}

.it_service_grid{
display:grid;
grid-template-columns:repeat(2,1fr);
gap:20px;
}

.it_service_item{
position:relative;
border-radius:22px;
background:linear-gradient(135deg,#f8faff,#f1f5fa);
padding:30px 30px 30px 98px;
min-height:150px;
border:1px solid #e4e9f1;
box-shadow:0 10px 24px rgba(23,28,97,.045);
transition:.25s;
}

.it_service_item i{
position:absolute;
left:30px;
top:30px;
width:50px;
height:50px;
display:flex;
align-items:center;
justify-content:center;
background:rgba(23,28,97,.82);
color:#fff;
border-radius:16px;
font-size:20px;
box-shadow:0 10px 18px rgba(23,28,97,.14);
}

.it_service_item strong{
display:block;
font-size:20px;
font-weight:800;
margin-bottom:10px;
}

.it_service_item p{
color:#666;
line-height:1.6;
}

.it_service_item:hover{
transform:translateY(-4px);
box-shadow:0 16px 32px rgba(23,28,97,.08);
}

.it_process{
position:relative;
background:linear-gradient(135deg,#454a9a,#5960ad);
border-radius:26px;
padding:44px;
overflow:hidden;
}

.it_process:before{
content:"";
position:absolute;
right:-120px;
top:-120px;
width:300px;
height:300px;
background:rgba(255,255,255,.08);
border-radius:50%;
}

.it_process:after{
content:"";
position:absolute;
left:-80px;
bottom:-120px;
width:240px;
height:240px;
background:rgba(255,255,255,.06);
border-radius:50%;
}

.it_process .section_title,
.it_process .process_grid{
position:relative;
z-index:1;
}

.it_process .section_title span,
.it_process .section_title h3{
color:#fff;
}

@media (max-width:1024px){
.it_service_grid,
.process_grid{
grid-template-columns:repeat(2,1fr);
}
}

@media (max-width:767px){
.it_section{
margin-bottom:56px;
}
.it_intro{
grid-template-columns:1fr;
padding:26px 18px;
}
.it_intro_img{
height:220px;
}
.it_service_grid,
.process_grid{
grid-template-columns:1fr;
}
.it_service_item{
padding:26px;
}
.it_service_item i{
position:static;
margin-bottom:15px;
}
.it_process{
padding:26px 18px;
}
}



.network_wrap{
width:100%;
font-size:16px;
color:#222;
}

.network_section{
margin-bottom:80px;
}

/* ?단 */
.network_intro{
display:grid;
grid-template-columns:1fr 1fr;
gap:30px;
align-items:center;
background:linear-gradient(135deg,#f7f9fc,#eef3f8);
border:1px solid #e4e9f1;
border-radius:24px;
padding:42px;
}

.network_intro_img{
height:320px;
border-radius:22px;
overflow:hidden;
}

.network_intro_img img{
width:100%;
height:100%;
object-fit:cover;
}

/* 카드 */
.network_grid{
display:grid;
grid-template-columns:repeat(5,1fr);
gap:20px;
}

.network_item{
border-radius:20px;
overflow:hidden;
background:#fff;
border:1px solid #e4e9f1;
box-shadow:0 10px 20px rgba(0,0,0,0.05);
transition:.25s;
}

.network_item img{
width:100%;
height:140px;
object-fit:cover;
}

.network_text{
padding:15px;
text-align:center;
}

.network_text strong{
display:block;
font-size:18px;
font-weight:800;
margin-bottom:6px;
}

.network_text p{
font-size:16px;
color:#666;
}

.network_item:hover{
transform:translateY(-4px);
}

/* ?로?스 */
.network_process{
position:relative;
background:linear-gradient(135deg,#454a9a,#5960ad);
border-radius:26px;
padding:44px;
overflow:hidden;
}

.network_process:before{
content:"";
position:absolute;
right:-120px;
top:-120px;
width:300px;
height:300px;
background:rgba(255,255,255,.08);
border-radius:50%;
}

.network_process:after{
content:"";
position:absolute;
left:-80px;
bottom:-120px;
width:240px;
height:240px;
background:rgba(255,255,255,.06);
border-radius:50%;
}

.network_process .section_title,
.network_process .process_grid{
position:relative;
z-index:1;
}

.network_process .section_title span,
.network_process .section_title h3{
color:#fff;
}

/* 반응??*/
@media (max-width:1024px){
.network_grid{
grid-template-columns:repeat(3,1fr);
}
}

@media (max-width:767px){
.network_intro{
grid-template-columns:1fr;
padding:26px 18px;
}
.network_grid{
grid-template-columns:1fr;
}
}


.network_intro{
display:grid;
grid-template-columns:1fr 1fr;
gap:40px;
align-items:center;
background:linear-gradient(135deg,#f7f9fc,#eef3f8);
border:1px solid #e4e9f1;
border-radius:24px;
padding:50px;
}

/* ?스??*/
.network_intro_text span{
color:var(--primary);
font-weight:800;
display:block;
margin-bottom:10px;
}

.network_intro_text h3{
font-size:26px;
font-weight:800;
margin-bottom:15px;
}

.network_intro_text p{
color:#555;
line-height:1.7;
}

/* ??지 */
.network_intro_img{
height:320px;
border-radius:22px;
overflow:hidden;
background:#ddd; /* ??지 ?을 ????*/
}

.network_intro_img img{
width:100%;
height:100%;
object-fit:cover;
}

/* 모바??*/
@media (max-width:767px){
.network_intro{
grid-template-columns:1fr;
padding:26px 18px;
}
.network_intro_img{
height:220px;
}
}



.greeting_wrap {
    width: 100%;
    font-size: 16px;
    color: #222;
    overflow: hidden;
}

.greeting_section {
    display: grid;
    grid-template-columns: 42% 1fr;
    gap: 40px;
    align-items: stretch;
    background: linear-gradient(135deg, #f7f9fc, #eef3f8);
    border: 1px solid #e4e9f1;
    border-radius: 24px;
    padding: 42px;
}

.greeting_img {
    min-height: 520px;
    border-radius: 22px;
    overflow: hidden;
    box-shadow: 0 14px 28px rgba(23,28,97,.08);
}

.greeting_img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.greeting_text {
    position: relative;
    background: rgba(255,255,255,.72);
    border: 1px solid #e4e9f1;
    border-radius: 22px;
    padding: 38px;
}

.greeting_text:before {
    content: "";
    position: absolute;
    right: -80px;
    top: -80px;
    width: 220px;
    height: 220px;
    background: rgba(23,28,97,.05);
    border-radius: 50%;
}

.greeting_text > * {
    position: relative;
    z-index: 1;
}

.greeting_text span {
    display: block;
    color: var(--primary);
    font-size: 16px;
    font-weight: 800;
    margin-bottom: 10px;
}

.greeting_text h3 {
    font-size: 26px;
    font-weight: 800;
    line-height: 1.35;
    margin-bottom: 26px;
}

.greeting_text p {
    font-size: 16px;
    color: #555;
    line-height: 1.8;
    margin-bottom: 18px;
}

.ceo_sign {
    margin-top: 34px;
    text-align: right;
}

.ceo_sign span {
    display: inline-block;
    color: #666;
    font-weight: 600;
    margin-right: 10px;
}

.ceo_sign strong {
    font-size: 24px;
    color: var(--primary);
    font-weight: 800;
}

@media (max-width: 1024px) {
    .greeting_section {
        grid-template-columns: 1fr;
    }

    .greeting_img {
        min-height: 360px;
    }
}

@media (max-width: 767px) {
    .greeting_section {
        padding: 26px 18px;
        border-radius: 20px;
        gap: 24px;
    }

    .greeting_img {
        min-height: 240px;
        border-radius: 18px;
    }

    .greeting_text {
        padding: 26px 20px;
        border-radius: 18px;
    }

    .greeting_text h3 {
        font-size: 24px;
    }

    .ceo_sign strong {
        font-size: 22px;
    }
}


.philo_section{
margin-top:80px;
}

.philo_wrap{
position:relative;
display:grid;
grid-template-columns:repeat(2,1fr);
gap:30px;
}

/* 카드 공통 */
.philo_item{
background:linear-gradient(135deg,#f8faff,#f1f5fa);
border:1px solid #e4e9f1;
border-radius:22px;
padding:34px 40px;
box-shadow:0 10px 24px rgba(23,28,97,.05);
min-height:200px;
display:flex;
flex-direction:column;
justify-content:center;
}

/* ?목 */
.philo_item strong{
display:block;
font-size:20px;
font-weight:800;
margin-bottom:18px;
color:var(--primary);
}

/* 리스??*/
.philo_item ul{
padding-left:0;
margin:0;
}

.philo_item li{
position:relative;
padding-left:18px;
margin-bottom:10px;
font-size:16px;
color:#555;
line-height:1.6;
}

/* ?에 - 추? */
.philo_item li:before{
content:"-";
position:absolute;
left:0;
top:0;
color:var(--primary);
font-weight:700;
}

/* ? 2? 4??측?렬 */
.philo_item:nth-child(2),
.philo_item:nth-child(4){
text-align:right;
align-items:flex-end;
}

/* ?측?렬????리스?도 ?른?기? */
.philo_item:nth-child(2) li,
.philo_item:nth-child(4) li{
padding-left:0;
padding-right:18px;
}

/* ?측?렬????- ?치 변?*/
.philo_item:nth-child(2) li:before,
.philo_item:nth-child(4) li:before{
left:auto;
right:0;
}

/* 가?데 ??*/
.philo_center{
position:absolute;
left:50%;
top:50%;
transform:translate(-50%,-50%);
width:200px;
height:200px;
display:flex;
align-items:center;
justify-content:center;
border-radius:50%;
background:linear-gradient(135deg,#6c72c4,#4b51a3);
color:#fff;
font-size:26px;
font-weight:800;
box-shadow:0 20px 40px rgba(23,28,97,.2);
z-index:2;
}

/* 반응??*/
@media (max-width:767px){

.philo_wrap{
grid-template-columns:1fr;
}

/* 모바?에?는 ?시 좌측?렬 */
.philo_item:nth-child(2),
.philo_item:nth-child(4){
text-align:left;
align-items:flex-start;
}

.philo_item:nth-child(2) li,
.philo_item:nth-child(4) li{
padding-left:18px;
padding-right:0;
}

.philo_item:nth-child(2) li:before,
.philo_item:nth-child(4) li:before{
left:0;
right:auto;
}

.philo_center{
position:static;
transform:none;
margin:20px auto;
width:140px;
height:140px;
font-size:18px;
}

}

.history_section {
    margin-bottom: 80px;
}

.history_wrap {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 22px;
}

.history_item {
    background: linear-gradient(135deg, #f8faff, #f1f5fa);
    border: 1px solid #e4e9f1;
    border-radius: 22px;
    padding: 28px 22px;
    min-height: 170px;
    box-shadow: 0 10px 24px rgba(23,28,97,.045);
    transition: .25s;
}

.history_year {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: rgba(23,28,97,.82);
    color: #fff;
    border-radius: 16px;
    padding: 12px 18px;
    font-size: 16px;
    font-weight: 800;
    margin-bottom: 18px;
    box-shadow: 0 10px 18px rgba(23,28,97,.14);
}

.history_cont strong {
    display: block;
    font-size: 18px;
    font-weight: 800;
    margin-bottom: 8px;
}

.history_cont p {
    font-size: 16px;
    color: #666;
    line-height: 1.6;
}

.history_item:hover {
    transform: translateY(-4px);
    box-shadow: 0 16px 32px rgba(23,28,97,.08);
}

/* 반응??*/
@media (max-width: 1024px) {
    .history_wrap {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 767px) {
    .history_section {
        margin-bottom: 56px;
    }

    .history_wrap {
        grid-template-columns: 1fr;
        gap: 16px;
    }

    .history_item {
        min-height: auto;
        padding: 24px;
    }
}


.tc_section {
    margin-bottom: 80px;
}

.tc_img_box {
    width: 100%;
    overflow: hidden;

}

.tc_img_box img {
    display: block;
    width: 80%;
    height: auto;
}

.tc_section .s_tit {
	font-size:30px; padding:10px 0; font-weight:800
}

@media (max-width: 767px) {
    .tc_section {
        margin-bottom: 56px;
    }

    .tc_img_box {
        overflow-x: auto;
    }

    .tc_img_box img {
        width: 900px;
        max-width: none;
    }
}
