.acf-block-related-link-block__title {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 1.5em;
    margin: 0 calc(50% - 50vw) 2.25rem calc(50% - 50vw);
}

@media screen and (max-width: 540px) {
    .acf-block-related-link-block__title {
        gap: 1.06em;
    }
}

.acf-block-related-link-block__title::before,
.acf-block-related-link-block__title::after {
    content: "";
    flex: 1;
    /* 左右とも残り幅いっぱいに伸ばす */
    height: 1px;
    background-color: #d9dddd;
    /* 線の色 */
}

.acf-block-related-link-block__title span {
    white-space: nowrap;
    color: #000;
    font-family: "Zen Maru Gothic";
    font-size: 1.625rem;
    font-style: normal;
    font-weight: 500;
    line-height: 160%;
}

@media screen and (max-width: 540px) {
    .acf-block-related-link-block__title span {
        color: #000;
        font-family: "Zen Maru Gothic";
        font-size: 1.25rem;
        font-style: normal;
        font-weight: 500;
        line-height: 160%;
        /* 2rem */
    }
}


.acf-block-related-link-wrapper {
    display: flex;
    flex-direction: column;

}

@media screen and (max-width: 540px) {
    .acf-block-related-link-wrapper {}
}

.acf-block-related-link {
    display: flex;
    align-items: flex-start;
    gap: 2.6rem;
    text-decoration: none;
    margin-bottom: 2.5rem;
}

@media screen and (max-width: 540px) {
    .acf-block-related-link {
        flex-direction: column;
        gap: .56rem;
    }
}

.acf-block-related-link__image {
    flex-basis: 40%;
    border-radius: 1.0615rem;
    border: 1.698px solid var(--gray-600, #A7A7A7);
    aspect-ratio: 535.00/267.50;
    overflow: hidden;
}

.acf-block-related-link-wrapper .acf-block-related-link__image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}

.acf-block-related-link__text-block {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    flex: 1;
}

@media screen and (max-width: 540px) {
    .acf-block-related-link__text-block {
        width: 100%;
    }
}


.acf-block-related-link__read {
    margin-bottom: 0.8rem;
    color: var(--black-700, #333);
    font-family: "Zen Maru Gothic";
    font-size: 1.125rem;
    font-style: normal;
    font-weight: 400;
    line-height: 148%;
    /* 1.665rem */
}

@media screen and (max-width: 540px) {
    .acf-block-related-link__read {
        margin-bottom: .56rem;
        font-size: 1rem;
    }
}

.acf-block-related-link__title {
    margin-bottom: 1.12rem;
    color: var(--black-700, #333);
    font-family: "Zen Maru Gothic";
    font-size: 1.75rem;
    font-style: normal;
    font-weight: 500;
    line-height: 148%;
    /* 2.59rem */
}

@media screen and (max-width: 540px) {
    .acf-block-related-link__title {
        margin-bottom: .56rem;
        font-size: 1.25rem;
    }
}

.single-post p.acf-block-related-link__text,
p.acf-block-related-link__text {
    margin-bottom: 1.5rem;
    color: #000;
    font-family: "Zen Maru Gothic";
    font-size: 1rem;
    font-style: normal;
    font-weight: 400;
    line-height: 148%;
}

@media screen and (max-width: 540px) {
    p.acf-block-related-link__text {
        margin-bottom: 2rem;
        font-size: 1rem;
    }
}

.acf-block-related-link__text-block .c-button {
    position: relative;
    min-width: 9.5625rem;
    display: inline-flex;
    align-items: center;
    gap: 1rem;
    padding: 0.375rem 0.625rem;
    color: var(--green-900, #006E09);
    font-family: "Zen Maru Gothic";
    font-size: 0.8125rem;
    font-style: normal;
    font-weight: 500;
    line-height: 160%;
    /* 1.3rem */
    border-radius: 3.125rem;
    border: 1px solid var(--green-900, #006E09);
    text-decoration: none;
}

@media screen and (max-width: 540px) {
    .acf-block-related-link__text-block .c-button {
        margin: 0 auto;
        padding: 0.375rem 0.625rem 0.375rem 0.625rem;
        font-size: 1rem;
    }
}

.acf-block-related-link__text-block .c-button:hover {
    background: #FFF;
    border: 1px solid var(--green-900, #006E09);
    opacity: 0.8;

}

.acf-block-related-link__text-block .c-button::after {
    position: absolute;
    right: 1rem;
    content: "";
    display: inline-block;
    width: 0.75rem;
    height: 0.65rem;
    background-image: url(../../../img/icons/icon-link-arrow.svg);
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
}

@media screen and (max-width: 540px) {
    .acf-block-related-link__text-block .c-button::after {
        width: 0.75rem;
        height: 0.5625rem;
        right: .87rem;
    }
}