.blogs-collage {
    display: flex;
    position: relative
}

.blogs-collage--items {
    display: flex;
    flex: 1 1 50%;
    flex-flow: row wrap
}

.blogs-collage--item {
    flex: 1 1 50%;
    overflow: hidden;
    position: relative
}

.blogs-collage--item:before {
    background-color: rgba(0, 0, 0, .2);
    content: "";
    display: block;
    padding-top: 100%;
    width: 100%
}

.blogs-collage--item a,
.blogs-collage--item img {
    height: 100%;
    left: 0;
    position: absolute;
    top: 0;
    width: 100%
}

.blogs-collage--item img {
    bottom: 0;
    object-fit: cover;
    right: 0;
    transition: all .6s ease;
    z-index: -1
}

.blogs-collage--title {
    bottom: 0;
    color: #fff;
    font-family: 'Noto Serif JP', serif;
    font-size: 28px;
    font-style: normal;
    font-weight: 400;
    left: 0;
    letter-spacing: -.04em;
    line-height: 100%;
    padding: 32px 60px 40px 32px;
    position: absolute
}

.blogs-collage--item:focus img,
.blogs-collage--item:hover img {
    transform: scale(1.2)
}

.blogs-collage--item:focus:before,
.blogs-collage--item:hover:before {
    background-color: rgba(0, 0, 0, .4)
}

.blogs-collage--items:first-child .blogs-collage--item:first-child,
.blogs-collage--items:last-child .blogs-collage--item:last-child {
    flex: 1 1 100%
}

.blogs-collage--items:first-child .blogs-collage--item:first-child .blogs-collage--title,
.blogs-collage--items:last-child .blogs-collage--item:last-child .blogs-collage--title {
    font-size: 48px;
    line-height: 100%;
    max-width: 632px
}

.blogs-collage--slider {
    display: none
}

@media only screen and (max-width:1024px) {
    .blogs-collage--title {
        font-size: 16px;
        letter-spacing: -.04em;
        line-height: 100%;
        padding: 24px 44px 24px 19px
    }

    .blogs-collage--items:first-child .blogs-collage--item:first-child .blogs-collage--title,
    .blogs-collage--items:last-child .blogs-collage--item:last-child .blogs-collage--title {
        font-size: 24px;
        line-height: 100%;
        max-width: 312px;
        padding: 25px 44px 40px 25px
    }
}

@media only screen and (max-width:767px) {
    .blogs-collage {
        display: none
    }

    .blogs-collage--slider {
        display: block
    }

    .blogs-collage--slide {
        min-height: 414px;
        overflow: hidden;
        position: relative
    }

    .blogs-collage--slide a {
        display: inline-block;
        line-height: 0
    }

    .blogs-collage--slide a:focus,
    .blogs-collage--slide a:hover {
        text-decoration: none
    }

    .blogs-collage--slide:before {
        background: rgba(0, 0, 0, .4);
        content: "";
        display: block;
        height: 100%;
        left: 0;
        padding-top: 100%;
        position: absolute;
        top: 0;
        width: 100%;
        z-index: 2
    }

    .blogs-collage--slide img {
        bottom: 0;
        height: 100%;
        left: 0;
        object-fit: cover;
        position: absolute;
        right: 0;
        top: 0;
        width: 100%
    }

    .blogs-collage--slide_content {
        color: #fff;
        display: flex;
        flex-flow: column nowrap;
        gap: 40px;
        height: 100%;
        justify-content: space-between;
        min-height: 414px;
        padding: 60px 25px;
        position: relative;
        width: 100%;
        z-index: 3
    }

    .blogs-collage--slide_date {
        font-size: 15px;
        font-weight: 500;
        line-height: 180%
    }

    .blogs-collage--slide_title {
        font-size: 24px;
        font-weight: 400;
        line-height: 24px
    }

    .blogs-collage--slide_learmore {
        align-self: flex-end;
        font-size: 13px;
        font-weight: 500;
        letter-spacing: .06em;
        line-height: 13px;
        margin: 0;
        text-transform: uppercase
    }

    .blogs-collage--pagination {
        align-items: center;
        color: #000 !important;
        display: flex;
        font-size: 14px;
        font-weight: 400;
        gap: 5px;
        letter-spacing: .06em;
        padding: 42px 24px 34px;
        position: relative
    }

    .blogs-collage--pagination:after {
        border-bottom: .5px solid rgba(0, 0, 0, .4);
        bottom: 0;
        content: "";
        height: .5px;
        left: 0;
        margin: 0 auto;
        position: absolute;
        right: 0;
        width: 100%;
        width: calc(100% - 44px)
    }
}