/* --------------------
 Voice
-------------------- */
.layout {
    padding: 7.8125rem 0 0;
}

@media (min-width: 768px) {
    .layout {
        padding: 10.625rem 0 0;
    }
}

.voice {
    margin: 0 0 5rem;
}

.voice-container {
    margin: 0 auto;
    max-width: 81.25rem;
    padding: 0 2.1875rem;
    width: 100%;
}

@media (min-width: 768px) {
    .voice-container {
        padding: 0;
    }
}

.voice__title {
    margin: 0 0 3.75rem;
    text-align: center;
}

@media (min-width: 768px) {
    .voice__title {
        text-align: left;
    }
}

.voice__title__ja {
    color: var(--color-black);
    font-size: 2rem;
    font-weight: 700;
    line-height: 1;
    margin: 0 0 0.5rem;
}

@media (min-width: 768px) {
    .voice__title__ja {
        font-size: 3.375rem;
    }
}

.voice__title__en {
    color: var(--color-ruby-red);
    font-size: 0.625rem;
    font-weight: 700;
    line-height: 1;
    margin: 0;
}

@media (min-width: 768px) {
    .voice__title__en {
        font-size: 1rem;
        padding: 0 0 0 0.5em;
    }
}

.voice__list {
    margin: 0 auto 5rem;
    max-width: 68.75rem;
}

.voice__list__item {
    margin: 0 0 1.875rem;
}

@media (min-width: 768px) {
    .voice__list__item {
        margin: 0 0 3.125rem;
    }
}

.voice__list__item:last-child {
    margin-bottom: 0;
}

.voice__list__item__link {
    align-items: center;
    color: inherit;
    display: flex;
    flex-flow: row wrap;
    gap: 0.75rem 1.25rem;
    text-decoration: none;
}

@media (min-width: 768px) {
    .voice__list__item__link {
        flex-wrap: nowrap;
    }
}

.voice__list__item__link__fig {
    flex: 0 0 100%;
    position: relative;
}

@media (min-width: 768px) {
    .voice__list__item__link__fig {
        flex: 0 0 20.75rem;
    }
}

.voice__list__item__link__fig__label {
    filter: drop-shadow(0.4375rem 0.4375rem 0.3125rem rgba(var(--color-black-rgb), 0.1));
    left: -0.625rem;
    position: absolute;
    top: 0.875rem;
    z-index: 1;
}

@media (min-width: 768px) {
    .voice__list__item__link__fig__label {
        left: -0.75rem;
        top: 1.0625rem;
    }
}

.voice__list__item__link__fig__label span {
    background: linear-gradient(to top, #84041a 0.625rem, #c30d23 0.625rem);
    background-color: #c30d23;
    -webkit-clip-path: polygon(0 0, 100% 0, calc(100% - 0.5rem) calc(50% - 0.3125rem), 100% calc(100% - 0.625rem), 0.625rem calc(100% - 0.625rem), 0.625rem 100%, 0 calc(100% - 0.625rem));
    clip-path: polygon(0 0, 100% 0, calc(100% - 0.5rem) calc(50% - 0.3125rem), 100% calc(100% - 0.625rem), 0.625rem calc(100% - 0.625rem), 0.625rem 100%, 0 calc(100% - 0.625rem));
    color: var(--color-white);
    display: block;
    font-size: 0.875rem;
    font-weight: 400;
    line-height: 1.2;
    padding: 0.625rem 1.5rem 1.25rem 0.75rem;
    text-box: trim-both cap alphabetic;
}

@media (min-width: 768px) {
    .voice__list__item__link__fig__label span {
        background: linear-gradient(to top, #84041a 0.75rem, #c30d23 0.75rem);
        -webkit-clip-path: polygon(0 0, 100% 0, calc(100% - 0.5rem) calc(50% - 0.375rem), 100% calc(100% - 0.75rem), 0.75rem calc(100% - 0.75rem), 0.75rem 100%, 0 calc(100% - 0.75rem));
        clip-path: polygon(0 0, 100% 0, calc(100% - 0.5rem) calc(50% - 0.375rem), 100% calc(100% - 0.75rem), 0.75rem calc(100% - 0.75rem), 0.75rem 100%, 0 calc(100% - 0.75rem));
        font-size: 1rem;
        padding: 0.875rem 1.5rem 1.625rem;
    }
}

.voice__list__item__link__fig img {
    aspect-ratio: 332/250;
    border-radius: 0.25rem;
    height: auto;
    object-fit: cover;
    object-position: center;
    width: 100%;
}

.voice__list__item__link__contents {
    flex: 0 0 100%;
    padding: 2.25rem 0 1.25rem;
    position: relative;
}

@media (min-width: 768px) {
    .voice__list__item__link__contents {
        flex: 1 1 auto;
        padding: 1.875rem 0;
    }
}

.voice__list__item__link__contents:before {
    background-image: url(../images/pages/voice/voice-frame-mb-01.svg);
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
    bottom: auto;
    content: "";
    display: block;
    height: 1.25rem;
    left: 50%;
    margin: auto 0;
    position: absolute;
    right: auto;
    top: 0;
    transform: translateX(-50%);
    width: 18.75rem;
}

@media (min-width: 768px) {
    .voice__list__item__link__contents:before {
        display: none;
    }
}

.voice__list__item__link__contents:after {
    background-image: url(../images/pages/voice/voice-frame-mb-02.svg);
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
    bottom: 0;
    content: "";
    display: block;
    height: 0.25rem;
    left: 50%;
    margin: auto 0;
    position: absolute;
    right: auto;
    top: auto;
    transform: translateX(-50%);
    width: 18.75rem;
}

@media (min-width: 768px) {
    .voice__list__item__link__contents:after {
        display: none;
    }
}

.voice__list__item__link__contents__content {
    margin: 0 0 1.5rem;
    position: relative;
}

@media (min-width: 768px) {
    .voice__list__item__link__contents__content {
        margin: 0;
        padding: 0 0 0 4.6875rem;
    }
}

.voice__list__item__link__contents__content:before {
    background-image: url(../images/pages/voice/voice-frame.svg);
    background-position: left center;
    background-repeat: no-repeat;
    background-size: contain;
    bottom: 0;
    content: "";
    display: none;
    height: 12.5rem;
    left: 0;
    margin: auto 0;
    position: absolute;
    top: 0;
    width: 5rem;
}

@media (min-width: 768px) {
    .voice__list__item__link__contents__content:before {
        display: block;
    }
}

.voice__list__item__link__contents__content p {
    font-size: 1rem;
    line-height: 1.87;
    margin: 0;
}

@media (min-width: 768px) {
    .voice__list__item__link__contents__content p {
        font-size: 1.5rem;
        line-height: 1.87;
    }
}

.voice__list__item__link__contents__action {
    font-size: 0.875rem;
    letter-spacing: 0.06em;
    margin: 0 auto;
    padding: 0 1.5rem 0 0;
    position: relative;
    width: -webkit-fit-content;
    width: fit-content;
    z-index: 1;
}

@media (min-width: 768px) {
    .voice__list__item__link__contents__action {
        bottom: 0;
        margin: 0;
        position: absolute;
        right: 0;
    }
}

.voice__list__item__link__contents__action .com-circle {
    background-color: #d1c9a9;
    bottom: 0;
    margin: auto 0;
    position: absolute;
    right: 0;
    top: 0;
}

.voice__list__item__link:focus .voice__list__item__link__title {
    color: var(--color-crimson);
}

.voice__list__item__link:focus .voice__list__item__link__title .com-circle {
    background-color: var(--color-black);
}

@media (hover: hover) and (pointer: fine) {
    .voice__list__item__link:hover .voice__list__item__link__title {
        color: var(--color-crimson);
    }

    .voice__list__item__link:hover .voice__list__item__link__title .com-circle {
        background-color: var(--color-black);
    }
}

.voice__pager {
    margin: 0 auto;
    max-width: 81.25rem;
}