.index_list4item_img {
    position: relative;
}
.welfare_ttl {
    font-weight: 700;
    line-height: 1.2;
    letter-spacing: -0.03em;
    color: var(--blue);
}
.welfare_ttl_txt {
    font-size: 16rem;
    line-height: 1.7;
    font-weight: 700;
}
.welfare_content .main_border_box:last-child .index_list4 {
    padding-bottom: 0;
}
.welfare_content .main_border_box:last-child .index_list4 li:nth-child(n + 5) .index_list4item_img::after {
    display: none;
}
@media (min-width: 769px) {
    .index_list4 {
        display: grid;
        gap: min(56rem, calc(56 / 1120* 100vw)) min(26rem, calc(26 / 1120* 100vw));
        max-width: 1120rem;
        grid-template-columns: 1fr 1fr 1fr 1fr;
        margin-inline: auto;
        padding-bottom: 80rem;
    }
    .index_list4item:nth-child(4n+1) .index_list4item_img::before,
    .index_list4item:nth-child(4n+1) .index_list4item_img::after {
        content: '';
        display: block;
        position: absolute;
        left: 50%;
        min-width: 1120px;
        width: calc(100vw + 300rem);
        transform: translateX(calc(-50% + (1120rem / 4)));
        z-index: 1;
        border-top: 1px solid rgba(var(--border-color),0.2);
    }
    .index_list4item:nth-child(4n+1) .index_list4item_img::before {
        top: 0;
    } 
    .index_list4item:nth-child(4n+1) .index_list4item_img::after {
        bottom: 0;
    }
    .index_list4item:nth-child(1) .index_list4item_img::before {
        opacity: 0;
    }
    .welfare_ttl_wrap {
        padding-bottom: 40rem;
    }
    .welfare_ttl {
        font-size: 35rem;
    }
    .welfare_ttl_txt {
        margin-top: 16rem;
    }
    .index_list4_txt {
        font-size: 14rem;
        line-height: 1.7;
        margin-top: 15rem;
    }
}
@media (max-width: 768px) {
    .index_list4 {
        display: flex;
        gap: 40rem 15rem;
        flex-wrap: wrap;
        position: relative;
    }
    .index_list4item {
        width: calc((100% - 15rem) / 2);
    }
    .index_list4item_img {
        position: relative;
    }
    .index_list4 .index_list4item:nth-child(2n + 3) .index_list4item_img::before,
    .index_list4item_img::after {
        content: '';
        display: block;
        position: absolute;
        left: 50%;
        width: 150vw;
        translate: -50vw 0;
        z-index: 1;
        border-top: 1px solid rgba(var(--border-color),0.2);
    }
    .welfare_ttl_wrap {
        margin-bottom: -20rem;
    }
    .welfare_ttl {
        font-size: 28rem;
    }
    .welfare_ttl_txt {
        margin-top: 24rem;
    }
    .index_list4_txt {
        font-size: 12rem;
        line-height: 1.5;
        margin-top: 7rem;
    }
    .index_link_txt {
        font-size: 16rem;
    }
}
