#logistics {
    background: #f2f2f2;
}
#logistics .title-area {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-evenly;
    align-items: center;
    margin: 25px auto;
    padding: 10px;
    background: #fff;
    border-radius: 48px;
}
#logistics .title-area .title-logistics{
    margin: 0 20px 0 0;
    color: #0C7947;
    font-size: 32px;
    line-height: 76px;
}
#logistics .title-area .title-logistics::before{
    content: '';
    display: inline-block;
    width: 76px;
    height: 76px;
    margin: 0 15px 0 0;
    background: #fff url(../img/services/services_icon_01.png) no-repeat center;
    background-size: 46px;
    border-radius: 50%;
    box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.16);
    vertical-align: top;
}
#logistics .title-area .txt{
    margin: 10px 20px;
}

#logistics .title{
    position: relative;
    padding: 0 0 25px;
    margin: 0 0 40px;
    color: #0C7947;
    font-size: 32px;
    line-height: 48px;
    text-align: center;
}
#logistics .title::after{
    content: '';
    position: absolute;
    bottom: 0;
    left: calc(50% - 18px);
    display: block;
    width: 36px;
    border-bottom: 1px solid #0C7947;
    
}
#logistics .section{
    /*padding: 50px 0;*/
    background: #fff;
}

/* Section 1: 提供サービス + 業種 + メンバースキールマップ */
#logistics .section-logistics01-new {
    padding: 30px 0;
    background: #fff;
}

/* Subsection Titles */
.subsection-title {
    font-size: 22px;
    font-weight: 700;
    color: #0C7947;
    margin-bottom: 20px;
}

/* Section Title Simple - No box */
.section-title-simple {
    font-size: 24px;
    font-weight: 700;
    color: #0C7947;
    margin-bottom: 20px;
    padding-bottom: 10px;
    border-bottom: 2px solid #0C7947;
}

/* Services Grid - 1 Row (5 columns) */
.services-grid-3col {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 6px;
    margin-top: 20px;
}

.service-card-item {
    background: #fff;
    border-radius: 8px;
    padding: 8px 3px 12px 5px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
    transition: transform 0.3s ease, box-shadow 0.3s ease;
    display: flex;
    flex-direction: column;
    height: 100%;
}

.service-card-item:hover {
    transform: translateY(-5px);
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.15);
}

.service-card-image {
    width: 100%;
    /*height: 180px;*/  
    margin-bottom: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #f8f9fa;
    border-radius: 6px;
    overflow: hidden;
}

.service-card-item.service-card-special .service-card-image {
    background: #d0e0f0;
}

.service-img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.service-card-title {
    font-size: 16px;
    font-weight: 700;
    color: #333;
    margin-bottom: 6px;
    line-height: 1.3;
    text-align: center;
}

.service-card-features {
    list-style: none;
    padding: 0;
    margin: 0;
    flex-grow: 1;
}

.service-card-features li {
    font-size: 12px;
    color: #555;
    line-height: 1.4;
    margin-bottom: 5px;
    padding-left: 16px;
    position: relative;
}

.service-card-features li::before {
    content: '●';
    position: absolute;
    left: 0;
    color: #0C7947;
    font-weight: 700;
    font-size: 8px;
    top: 2px;
}

.service-card-features li:last-child {
    margin-bottom: 0;
}

/* Technologies Layout - 2 Columns */
.technologies-layout-2col {
    display: grid;
    grid-template-columns: 1.5fr 1fr;
    gap: 20px;
    margin-top: 20px;
    align-items: start;
}

.tech-left-column {
    display: grid;
    grid-template-rows: auto auto auto;
    gap: 20px;
    align-items: start;
}

.tech-left-column .tech-category-card {
    display: flex;
    flex-direction: column;
}

.tech-left-column .tech-category-card .tech-category-content {
    flex: 1;
    display: flex;
    flex-direction: column;
}

.tech-right-column {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

/* Top section matches programming card height using JavaScript will be needed */
.tech-right-top-section {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.tech-right-top-section .tech-right-row-1 {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 20px;
    flex: 0 0 auto;
}

.tech-right-top-section .tech-category-card {
    display: flex;
    flex-direction: column;
    flex: 1;
}

.tech-right-top-section .tech-category-card:last-child {
    flex: 1;
}

.tech-right-top-section .tech-category-card .tech-category-content {
    flex: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}


.tech-category-card {
    border-radius: 10px;
    overflow: hidden;
    box-shadow: 0 3px 10px rgba(0, 0, 0, 0.08);
    transition: transform 0.3s ease, box-shadow 0.3s ease;
    display: flex;
    flex-direction: column;
    background: #fff;
}

.tech-category-card:hover {
    transform: translateY(-2px);
    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.12);
}

.tech-category-header {
    padding: 7px 20px;
    font-size: 17px;
    font-weight: 700;
    color: #fff;
    text-align: center;
    letter-spacing: 0.5px;
}

.tech-category-purple .tech-category-header {
    background: #0C7947;
}

.tech-category-blue .tech-category-header {
    background: #0C7947;
}

.tech-category-green .tech-category-header {
    background: #0C7947;
}

.tech-category-content {
    padding: 24px 0px;
    flex: 1;
    display: flex;
    align-items: flex-start;
    justify-content: center;
}

/* Database and Platform cards - match Programming height */
.tech-left-column .tech-category-card.tech-category-green .tech-category-content {
    display: flex;
    align-items: center;
    justify-content: center;
}

/* Database and Platform - 6 columns, 1 row */
.tech-left-column .tech-category-card.tech-category-green .tech-items-grid {
    grid-template-columns: repeat(6, 1fr);
    grid-template-rows: auto;
    gap: 16px 12px;
}

.tech-category-purple .tech-category-content {
    background: #F3F4F6;
}

.tech-category-blue .tech-category-content {
    background: #F3F4F6;
}

.tech-category-green .tech-category-content {
    background: #F3F4F6;
}

.tech-category-blue-content .tech-category-content {
    background: #F3F4F6;
}

.tech-items-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(70px, 1fr));
    gap: 20px 16px;
    width: 100%;
    justify-items: center;
    align-content: start;
}

/* Programming section - 5 columns, 4 rows (5, 4, 5, 1) */
.tech-programming-grid {
    grid-template-columns: repeat(5, 1fr);
    gap: 20px 16px;
}

.tech-item-full-width {
    grid-column: span 3;
    justify-self: start;
    width: auto;
    min-width: 240px;
    max-width: 300px;
}

.tech-item-with-icon {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-start;
    gap: 10px;
    text-align: center;
    width: 100%;
    max-width: 80px;
}

.tech-icon {
    width: 66px;
    height: 48px;
    object-fit: contain;
    display: block;
    flex-shrink: 0;
}

.tech-label {
    font-size: 11px;
    color: #333;
    font-weight: 500;
    line-height: 1.3;
    word-break: break-word;
    width: 100%;
}

/* Member Skill Map Layout - 2 columns */
.member-skill-layout {
    display: grid;
    grid-template-columns: 300px 1fr;
    gap: 30px;
    align-items: start;
    margin-top: 20px;
}

.member-skill-image-wrapper {
    width: 100%;
    border-radius: 8px;
    overflow: hidden;
    background: #f8f9fa;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 15px;
}

.member-skill-compact-img {
    width: 100%;
    height: auto;
    object-fit: contain;
    display: block;
    max-height: 200px;
}

.member-skill-content {
    width: 100%;
}

/* Team Composition */
.team-composition {
    margin-bottom: 25px;
}

.team-info-grid {
    display: grid;
    grid-template-columns: auto 1fr;
    gap: 25px;
    align-items: start;
}

.team-icon-age {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 15px;
}

.team-icon {
    font-size: 48px;
    width: 80px;
    height: 80px;
    background: #e8f4f0;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
}

.median-age {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 5px;
}

.age-number {
    font-size: 42px;
    font-weight: 700;
    color: #2C7BE5;
    line-height: 1;
}

.age-label {
    font-size: 11px;
    color: #888;
    letter-spacing: 0.5px;
}

.team-breakdown {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.team-role-item {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    font-size: 15px;
    color: #333;
    line-height: 1.6;
}

.role-bullet {
    font-size: 18px;
    margin-top: 2px;
    flex-shrink: 0;
}

.role-text strong {
    color: #e74c3c;
    font-weight: 700;
}

.role-note {
    font-size: 12px;
    color: #888;
    margin-left: 28px;
    margin-top: -5px;
    margin-bottom: 5px;
}

.team-total {
    margin-top: 10px;
    padding-top: 15px;
    border-top: 2px solid #e0e0e0;
    font-size: 16px;
    font-weight: 700;
    color: #333;
}

.team-total strong {
    color: #e74c3c;
    font-size: 20px;
}

/* Skills Section */
.skills-section {
    margin-top: 30px;
    padding-top: 30px;
    border-top: 2px solid #e0e0e0;
}

.skills-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
}

.skill-column {
    background: #f8f9fa;
    padding: 20px 15px;
    border-radius: 8px;
    border-left: 4px solid #0C7947;
}

.skill-column-title {
    font-size: 16px;
    font-weight: 700;
    color: #0C7947;
    margin-bottom: 15px;
    line-height: 1.4;
}

.strength-badge {
    font-size: 12px;
    color: #e74c3c;
    text-decoration: underline;
    font-weight: 600;
}

.skill-list {
    list-style: none;
    padding: 0;
    margin: 0;
}

.skill-list li {
    font-size: 14px;
    color: #555;
    line-height: 1.8;
    margin-bottom: 8px;
    padding-left: 18px;
    position: relative;
}

.skill-list li::before {
    content: '•';
    position: absolute;
    left: 0;
    color: #0C7947;
    font-weight: 700;
}

.skill-list li:last-child {
    margin-bottom: 0;
}

/* Tablet Responsive */
@media screen and (max-width: 1024px) {
    .section-title-simple {
        font-size: 22px;
        margin-bottom: 18px;
    }
    
    .services-grid-3col {
        grid-template-columns: repeat(3, 1fr);
        gap: 5px;
    }
    
    .service-card-item {
        padding: 8px 3px 12px 5px;
    }
    
    .service-card-image {
        height: 160px;
        margin-bottom: 8px;
    }
    
    .service-card-title {
        font-size: 17px;
        margin-bottom: 6px;
    }
    
    .service-card-features li {
        font-size: 12px;
        margin-bottom: 6px;
    }
    
    .technologies-layout-2col {
        grid-template-columns: 1fr;
        gap: 16px;
    }
    
    .tech-right-row-1 {
        grid-template-columns: 1fr;
        gap: 16px;
    }
    
    .tech-category-header {
        font-size: 16px;
        padding: 14px 16px;
    }
    
    .tech-category-content {
        padding: 20px 16px;
        min-height: 130px;
    }
    
    .tech-items-grid {
        grid-template-columns: repeat(auto-fill, minmax(65px, 1fr));
        gap: 18px 14px;
    }
    
    .tech-programming-grid {
        grid-template-columns: repeat(5, 1fr);
        gap: 18px 14px;
    }
    
    .tech-item-full-width {
        grid-column: span 3;
        min-width: 216px;
        max-width: 270px;
    }
    
    .tech-left-column .tech-category-card.tech-category-green .tech-items-grid {
        grid-template-columns: repeat(3, 1fr);
        gap: 14px 16px;
    }
    
    .tech-icon {
        width: 46px;
        height: 46px;
    }
    
    .tech-label {
        font-size: 10px;
    }
    
    .member-skill-layout {
        grid-template-columns: 250px 1fr;
        gap: 20px;
    }
    
    .member-skill-compact-img {
        max-height: 180px;
    }
    
    .skills-grid {
        grid-template-columns: 1fr;
    }
    
    .team-info-grid {
        grid-template-columns: 1fr;
    }
    
    .team-icon-age {
        flex-direction: row;
        justify-content: center;
    }
}

/* Mobile Responsive */
@media screen and (max-width: 768px) {
    #logistics .section-logistics01-new {
        padding: 40px 0;
    }
    
    .section-title-simple {
        font-size: 20px;
        margin-bottom: 15px;
        padding-bottom: 8px;
    }
    
    .services-grid-3col {
        grid-template-columns: 1fr;
        gap: 15px;
    }
    
    .service-card-item {
        padding: 8px 8px 12px 8px;
    }
    
    .service-card-image {
        height: 150px;
        margin-bottom: 8px;
    }
    
    .service-card-title {
        font-size: 16px;
        margin-bottom: 6px;
    }
    
    .service-card-features li {
        font-size: 12px;
        line-height: 1.5;
        margin-bottom: 6px;
    }
    
    .technologies-layout-2col {
        grid-template-columns: 1fr;
        gap: 14px;
    }
    
    .tech-right-row-1 {
        grid-template-columns: 1fr;
        gap: 14px;
    }
    
    .tech-category-header {
        font-size: 15px;
        padding: 12px 14px;
    }
    
    .tech-category-content {
        padding: 18px 14px;
        min-height: 120px;
    }
    
    .tech-programming-grid {
        grid-template-columns: repeat(3, 1fr);
        gap: 16px 12px;
    }
    
    .tech-item-full-width {
        grid-column: span 3;
        min-width: 180px;
        max-width: 225px;
    }
    
    .tech-left-column .tech-category-card.tech-category-green .tech-items-grid {
        grid-template-columns: repeat(3, 1fr);
        gap: 12px 14px;
    }
    
    .tech-items-grid {
        grid-template-columns: repeat(auto-fill, minmax(60px, 1fr));
        gap: 16px 12px;
    }
    
    .tech-icon {
        width: 42px;
        height: 42px;
    }
    
    .tech-label {
        font-size: 10px;
    }
    
    .member-skill-layout {
        grid-template-columns: 1fr;
        gap: 20px;
    }
    
    .member-skill-image-wrapper {
        max-width: 100%;
        margin: 0 auto;
    }
    
    .member-skill-compact-img {
        max-height: 200px;
    }
    
    .subsection-title {
        font-size: 20px;
    }
    
    .pie-chart-legend {
        grid-template-columns: 1fr;
    }
    
    .industry-list {
        grid-template-columns: 1fr;
    }
    
    .team-info-grid {
        grid-template-columns: 1fr;
    }
    
    .team-icon-age {
        flex-direction: row;
        justify-content: flex-start;
    }
    
    .skills-grid {
        grid-template-columns: 1fr;
    }
}

#logistics .section .box {
    padding: 40px 50px;
    background: #F2F2F2;
    border-radius: 8px;
}
#logistics .section .box + .box{
    margin-top: 30px;
}

#logistics .section .box .ttl{
    position: relative;
    width: 100%;
    min-height: 57px;
    padding: 12px 0;
    margin: 0 0 30px;
    background: #888888;
    border-radius: 8px;
    color: #fff;
    font-size: 24px;
    text-align: center;
}
#logistics .section .btn{
    width: 290px;
    height: 60px;
    padding: 19px 0 0 23px;
    color: #fff;
    font-size: 16px;
}

#logistics .inner{
	max-width: 1050px !important;
}

/* スマホサイズ------------------------------- */
@media screen and (max-width:768px) {
    
#logistics .title-area {
    justify-content: flex-start;
    margin: 25px auto;
    padding: 10px;
    border-radius: 10px;
}
#logistics .title-area::before{
    content: '';
    display: inline-block;
    width: 76px;
    height: 76px;
    margin: 0 15px 0 0;
    background: #fff url(../img/services/services_icon_01.png) no-repeat center;
    background-size: 46px;
    border-radius: 50%;
    box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.16);
    vertical-align: top;
}
#logistics .title-area .title-logistics{
    margin: 0 20px 0 0;
    color: #0C7947;
    font-size: 24px;
    line-height: 30px;
}

#logistics .title-area .title-logistics::before{
    display: none;
}
#logistics .section {
    padding: 40px 0;
    font-size: 14px;
}
#logistics .title{
    margin: 0 0 30px;
    font-size: 24px;
    line-height: 30px;
}
#logistics .section .box {
    padding: 20px 15px;
}
#logistics .section .box + .box{
    margin-top: 83px;
}
    
#logistics .section .box .ttl{
    min-height: 46px;
    padding: 12px 10px;
    font-size: 16px;
}
#logistics .section .box .ttl span{
    font-size: 12px;
}
#logistics .section:not(.section-logistics03) .btn{
    width: 100%;
    max-width: 315px;
    height: 60px;
    margin: auto;
    padding: 19px 0 0 23px;
    color: #fff;
    font-size: 16px;
}
br {display: none;}
.text-container {
	white-space: normal;
}
}
/* logistics01
------------------------------------------------------------ */
#logistics .section-logistics01 .box{
    justify-content: space-between;
    align-items: center;
    min-height: 485px;
}
#logistics .section-logistics01 .box .ttl > span.tag{
    position: absolute;
    left: 20px;
    top: -20px;
    display: block;
    width: 97px;
    height: 97px;
    padding: 5px 0 0;
    background: #0C7947;
    color: #fff;
    font-size: 20px;
    font-weight: 700;
    text-align: center;
}
#logistics .section-logistics01 .box .ttl > span.tag .num{
    font-size: 58px;
}
#logistics .section-logistics01 .box ul li{
    min-height: 110px;
    padding: 0 0 0 200px;
    font-size: 18px;
    font-weight: 700;
    line-height: 24px;
}
#logistics .section-logistics01 .box ul li.icon-wcs{
    background: url(../img/services/services_img_wcs.png) no-repeat;
    background-size: 184px;
}
#logistics .section-logistics01 .box ul li.icon-agv{
    background: url(../img/services/services_img_agv.png) no-repeat;
    background-size: 184px;
}
#logistics .section-logistics01 .box ul li.icon-hako{
    background: url(../img/services/services_img_robot_hako.png) no-repeat;
    background-size: 184px;
}
#logistics .section-logistics01 .box ul li.icon-tana{
    background: url(../img/services/services_img_robot_tana.png) no-repeat;
    background-size: 184px;
}
#logistics .section-logistics01 .box ul li.icon-agvagf{
    background: url(../img/services/services_img_agv_agf.png) no-repeat;
    background-size: 184px;
}
#logistics .section-logistics01 .box ul li.icon-koteitana{
    background: url(../img/services/services_img_koteitana.png) no-repeat;
    background-size: 184px;
}
#logistics .section-logistics01 .box ul li.icon-agf{
    background: url(../img/services/services_img_agf.png) no-repeat;
    background-size: 184px;
}
#logistics .section-logistics01 .box ul li.icon-truck{
    background: url(../img/services/services_img_truck.png) no-repeat;
    background-size: 184px;
}
#logistics .section-logistics01 .box ul li + li{
    margin: 15px 0 0;
}
#logistics .section-logistics01 .box ul li span{
    display: inline-block;
    padding: 3px 10px;
    margin: 0 0 5px;
    background: #0C7947;
    color: #fff;
    font-size: 14px;
    font-weight: 500;
}

#logistics .section-logistics01 .box:first-of-type ul{
    width: 45%;
}
#logistics .section-logistics01 .box:first-of-type figure{
    width: 54%;
}
#logistics .section-logistics01 .box:nth-of-type(2) ul{
    width: 46%;
}
#logistics .section-logistics01 .box:nth-of-type(2) figure{
    width: 53%;
}
#logistics .section-logistics01 .box:nth-of-type(3) ul{
    width: 41%;
}
#logistics .section-logistics01 .box:nth-of-type(3) figure{
    width: 58%;
}
#logistics .section-logistics01 .box:nth-of-type(4) ul{
    width: 56%;
}
#logistics .section-logistics01 .box:nth-of-type(4) figure{
    width: 43%;
}
#logistics .section-logistics01 .box:nth-of-type(5) ul{
    width: 56%;
}
#logistics .section-logistics01 .box:nth-of-type(5) figure{
    width: 43%;
}
#logistics .section-logistics01 .box figure {
    position: relative;
    z-index: 0;
}
#logistics .section-logistics01 .box figure::before{
    content: '';
    position: absolute;
    left: 8%;
    top: -30px;
    display: block;
    width: 368px;
    height: 368px;
    background: #fff;
    border-radius: 50%;
    z-index: -1;
}
#logistics .section-logistics01 .box:nth-of-type(2) figure::before{
    width: 340px;
    height: 340px;
}
#logistics .section-logistics01 .box:nth-of-type(3) figure::before{
    width: 434px;
    height: 434px;
}

#logistics .section-logistics01 .box:nth-of-type(4) figure::before{
    width: 434px;
    height: 434px;
}
#logistics .section-logistics01 .box figure::after{
    content: '';
    position: absolute;
    top: -20px;
    right: 0;
    display: block;
    width: 97px;
    height: 97px;
    background: url(../img/services/services_icon_wcs.png) no-repeat;
    background-size: 97px;
}
/* タブレット（iPad Pro）以下サイズ------------------------------- */
@media screen and (max-width:1024px) {
#logistics .section-logistics01 .box ul li{
    height: inherit;
    min-height: 72px;
    padding: 0 0 0 130px;
    font-size: 14px;
    line-height: 20px;
}
#logistics .section-logistics01 .box ul li.icon-wcs{
    background-size: 120px;
}
#logistics .section-logistics01 .box ul li.icon-agv{
    background-size: 120px;
}
#logistics .section-logistics01 .box ul li.icon-hako{
    background-size: 120px;
}
#logistics .section-logistics01 .box ul li.icon-tana{
    background-size: 120px;
}
#logistics .section-logistics01 .box ul li.icon-agvagf{
    background-size: 120px;
}
#logistics .section-logistics01 .box ul li.icon-koteitana{
    background-size: 120px;
}
#logistics .section-logistics01 .box ul li.icon-agf{
    background-size: 120px;
}
#logistics .section-logistics01 .box ul li.icon-truck{
    background-size: 120px;
}
#logistics .section-logistics01 .box ul li span{
    display: inline-block;
    padding: 3px 10px;
    margin: 0 0 5px;
    font-size: 12px;
}

#logistics .section-logistics01 .box figure::before{
    content: '';
    position: absolute;
    left: calc(50% - 111px);
    top: 0px;
    display: block;
    width: 222px;
    height: 222px;
    background: #fff;
    border-radius: 50%;
    z-index: -1;
}
#logistics .section-logistics01 .box:nth-of-type(n) figure::before{
    width: 222px;
    height: 222px;
} 
br {display: none;}
.text-container {
	white-space: normal;
}
}
/* タブレット（iPad Air）以下サイズ------------------------------- */
@media screen and (max-width:820px) {

br {display: none;}
.text-container {
	white-space: normal;
}

}
/* スマホサイズ------------------------------- */
@media screen and (max-width:768px) {

#logistics .section-logistics01 .box .ttl > span.tag{
    position: absolute;
    left: 15px;
    top: -73px;
    display: block;
    width: 65px;
    height: 65px;
    padding: 5px 0 0;
    font-size: 13px;
}
#logistics .section-logistics01 .box .ttl > span.tag .num{
    font-size: 38px;
}

#logistics .section-logistics01 .box:nth-of-type(n) ul{
    width: 100%;
    margin: 0 0 40px;
}
#logistics .section-logistics01 .box:nth-of-type(n) figure{
    width: inherit;
    max-width: 400px;
}

#logistics .section-logistics01 .box figure::after{
    content: '';
    position: absolute;
    top: -20px;
    right: 0;
    display: block;
    width: 67px;
    height: 67px;
    background: url(../img/services/services_icon_wcs.png) no-repeat;
    background-size: 67px;
}
}

/* logistics02
------------------------------------------------------------ */
#logistics .section-logistics02 .btn{
    margin: auto;
}
#logistics .section-logistics02 ul{
    justify-content: center;
    gap: 20px;
    margin: 0 0 40px;
}
#logistics .section-logistics02 ul li{
    width: 240px;
    height: 240px;
}
#logistics .section-logistics02 ul li a{
    display: block;
    width: 100%;
    height: 100%;
}
#logistics .section-logistics02 ul li img{
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* タブレット（iPad Air）以下サイズ------------- */
@media screen and (max-width: 1024px) {
#logistics .section-logistics02 ul li{
    width: 170px;
    height: 170px;
}
    
}
/* スマホサイズ------------------------------- */
@media screen and (max-width:768px) {
#logistics .section-logistics02 ul{
    gap: 2%;
    margin: 0 0 20px;
}
#logistics .section-logistics02 ul li{
    width: 49%;
    height: 230px;
    margin: 0 0 20px;
}
}
/* スマホサイズ調整用-------------------------- */
@media screen and (max-width: 480px) {
#logistics .section-logistics02 ul li{
    width: 100%;
    height: 230px;
    margin: 0 0 20px;
}
}

/* logistics03
------------------------------------------------------------ */
#logistics .section-logistics02{
    padding: 0 0 100px;
}
#logistics .section-logistics02 .title{
    padding: 55px 0 80px;
    margin: 0 0 80px;
    background: url(../img/common/bg_title.png) no-repeat;
    background-size: cover;
}
#logistics .section-logistics02 .title::after{
    bottom: 55px;
}
#logistics .section-logistics03 .box:nth-of-type(1){
    /*background: #F2F2F2 url(../img/services/it-logitics-s1.png) no-repeat right 50px bottom 43%;
    background-size: 388px;
	height: 100%;*/
}
#logistics .section-logistics03 .box:nth-of-type(3){
    background: #F2F2F2 url(../img/services/it-logitics-s2.png) no-repeat right 87px bottom 15%;
    background-size: 430px;
    height: 100%;
    min-height: 500px;
}
#logistics .section-logistics03 .box:nth-of-type(2){
    /* background: #F2F2F2 url(../img/services/it-logitics-s3.png) no-repeat right bottom; */
    background-size: 300px;
	background-position: right 50px bottom 40px;
	/*min-height: 525px;*/
}

#logistics .section-logistics03 .box:nth-of-type(3){
    /* background: #F2F2F2 url(../img/services/it-logitics-s4.png) no-repeat right bottom; */
    /*background-size: 400px;*/
	/*background-position: right 50px bottom 25%;
	min-height: 477px;*/
}

#logistics .section-logistics03 .box dl{
    margin: 0 0 0px;
    /* padding: 0 350px 0 0; */
}
#logistics .section-logistics03 .box:nth-of-type(1) dl{
    /* padding: 0 410px 0 0; */
}

#logistics .section-logistics03 .box dt{
    margin: 0 0 30px;
}
#logistics .section-logistics03 .box dd{
    font-size: 16px;
    line-height: 1.5;
}
#logistics .section-logistics03 .box:not(:first-of-type) dd::before{
    content: '●';
    display: inline-block;
    margin: 0 10px 0 0;
    color: #0C7947;
}

/* 1) Nếu trong wrapper có ít nhất một <dd>, thì chèn ● vào dd đầu tiên */
.translate-dl-wrapper.div_li:has(dd) dd:first-of-type::before {
  content: '●';
  display: inline-block;
  margin: 0 10px 0 0;
  color: #0C7947;
}

/* 2) Nếu wrapper KHÔNG có <dd>, thì chèn ● vào chính wrapper (div_li) */
.translate-dl-wrapper.div_li:not(:has(dd))::before {
  content: '●';
  display: inline-block;
  margin: 0 10px 0 0;
  color: #0C7947;
}

#logistics .section-logistics03 .box:not(:first-of-type) dd {
    position: relative;
    padding-left: 30px; /* Khoảng cách lùi đầu dòng */
    text-indent: -15px; /* Căn chỉnh vị trí text so với bullet */
    margin-left: 0px; /* Cân bằng khoảng cách */
}

#logistics .section-logistics03 .box:not(:first-of-type) cc::before{
    content: '●';
    display: inline-block;
    margin: 0 10px 0 0;
    color: #0C7947;
}

#logistics .section-logistics03 .box:nth-of-type(3) li:nth-child(2){
    margin: 0 0 0 10px;
}

#logistics .section-logistics03 .box dd .li-cus::before{
	content: '●';
    display: inline-block;
    margin: 0 10px 0 0;
    color: #0C7947;
}
#logistics .section-logistics03 .box dd .li-cus{
	font-weight: 700;
}

#logistics .bg-black{
	background-color: #DF8C19;
}

#logistics .text-padding-left{
	padding-left: 26px;
}

/* スマホサイズ------------------------------- */
@media screen and (max-width:768px) {

#logistics .section-logistics03 .title{
    padding: 40px 0 65px;
    margin: 0 0 40px;
}
#logistics .section-logistics03 .title::after{
    bottom: 40px;
}
#logistics .section-logistics03 .box:nth-of-type(1){
	padding-bottom: 200px; 
    background-size: 280px;
}
#logistics .section-logistics03 .box:nth-of-type(4){
    padding-bottom: 200px; 
    background-size: 280px;
}

#logistics .section-logistics03 .box:nth-of-type(2){
    /*padding-bottom: 386px; */
    background-size: 300px;
}
#logistics .section-logistics03 .box:nth-of-type(3){
    padding-bottom: 120px; 
    background-size: 360px;
}
#logistics .section-logistics03 .box dl{
    padding: 0;
}
#logistics .section-logistics03 .box:nth-of-type(1) dl{
    padding: 0 0px 0 0;
}
#logistics .section-logistics03 .box dt{
    margin: 0 0 20px;
}
#logistics .section-logistics03 .box dd{
    margin: 0 0 0 24px;
    font-size: 14px;
    line-height: 20px;
    text-indent: -12px;
}
#logistics .section-logistics03 .box:nth-of-type(1) dd{
    margin: 0;
    text-indent: 0;
}
 
#logistics .section-logistics03 .box:nth-of-type(3) ul{
    width: 320px;
}
#logistics .section-logistics03 .box:nth-of-type(3) li:nth-child(2){
    margin: 10px 0 0;
}
#logistics .section-logistics03 .box dl{
    margin: 0 0 30px;
}

#logistics .section-logistics03 .box:nth-of-type(1){
    background: #F2F2F2 url(../img/services/it-logitics-s1.png) no-repeat right 3px bottom 30px;
    background-size: 388px;
	height: 900px;
}
#logistics .section-logistics03 .box:nth-of-type(4) {
    /*background: #F2F2F2 url(../img/services/it-logitics-s4.png) no-repeat right bottom;*/
    /*background-size: 350px;*/
    /*background-position: right 50px bottom 14px;*/    
    /*min-height: 500px;*/
}

}

/* スマホサイズ調整用------------------------------- */
@media screen and (max-width: 600px) {
#logistics .section-logistics03 .box:nth-of-type(4){
    padding-bottom: 247px; 
    background-size: 280px;
}
#logistics .section-logistics03 .box:nth-of-type(2){
    /*padding-bottom: 386px; */
    background-size: 320px;
}
#logistics .section-logistics03 .box:nth-of-type(1){
    background: #F2F2F2 url(../img/services/it-logitics-s1.png) no-repeat right 3px bottom 30px;
    background-size: 388px;
	height: 1050px;
}
#logistics .section-logistics03 .box:nth-of-type(4) {
    background: #F2F2F2 url(../img/services/it-logitics-s2.png) no-repeat right 50px bottom 6%;
    background-size: 280px;
    height: 100%;
    min-height: 500px;
}
#logistics .section-logistics03 .box:nth-of-type(3) {
    /*background: #F2F2F2 url(../img/services/it-logitics-s4.png) no-repeat right bottom;*/
    background-size: 350px;
    background-position: right 36% bottom 14px;
    /*min-height: 530px;*/
}
br {display: none;}
.text-container {
	white-space: normal;
}
}

br {
    display: inline;
}

/* Feature list with green dots */
.feature-list-green {
    list-style: none;
    padding: 0;
    margin: 15px 0;
}

.feature-list-green li {
    position: relative;
    padding-left: 20px;
    margin-bottom: 8px;
    line-height: 1.6;
    color: #333;
}

.feature-list-green li::before {
    content: '●';
    position: absolute;
    left: 0;
    color: #0C7947;
    font-size: 12px;
    line-height: 1.6;
}