﻿@charset 'utf-8';

/* -----------------------------------------
　component
------------------------------------------*/




/* -----------------------------------------
　topics.html
------------------------------------------*/

.l-topics {
    padding: 70px 0 20px;
}
.l-topics .p-topics__list {
    position: relative;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 40px 0;
}
.l-topics .p-topics__list::after {
    content: "";
    display: block;
    width: 30%;
    height: 0;
}
.l-topics .p-topics__list li {
    width: 30%;
}
.l-topics .p-topics__list li a figure {
    aspect-ratio: 1/1;
    border-radius: 8px;
    overflow: hidden;
}
.l-topics .p-topics__list li a .p-topics__top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-top: 10px;
}
.l-topics .p-topics__list li a .p-topics__top .p-topics__head time {
    font-size: 14px;
}
.l-topics .p-topics__list li a .p-topics__top .p-topics__cat {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 88px;
    height: 18px;
    font-size: 12px;
    line-height: 1.5;
    border-radius: 50vh;
    color: rgb(var(--color-ffffff));
}
.l-topics .p-topics__list li a .p-topics__top .p-topics__cat.cp {
    background: rgb(var(--color-68b57f));
}
.l-topics .p-topics__list li a .p-topics__top .p-topics__cat.evt {
    background: rgb(var(--color-e60012));
}
.l-topics .p-topics__list li a .p-topics__top .p-topics__cat.sp {
    background: rgb(var(--color-f39800));
}
.l-topics .p-topics__list li a p {
    margin-top: 10px;
    font-size: 14px;
    line-height: 1.571;
    overflow: hidden;
    display: -webkit-box;
    text-overflow: ellipsis;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
}
.l-topics .p-topics__pager {
    margin-top: 54px;
}
@media screen and (max-width: 992px) {
    .l-topics {
        padding: 7.057vw 0 2.017vw;
    }
    .l-topics .p-topics__list {
        gap: 4.033vw 0;
    }
    .l-topics .p-topics__list li a figure {
        border-radius: 0.807vw;
    }
    .l-topics .p-topics__list li a .p-topics__top {
        margin-top: 1.009vw;
    }
    .l-topics .p-topics__list li a .p-topics__top .p-topics__head time {
        font-size: 1.412vw;
    }
    .l-topics .p-topics__list li a .p-topics__top .p-topics__cat {
        width: 8.871vw;
        height: 1.815vw;
        font-size: 1.21vw;
    }
    .l-topics .p-topics__list li a p {
        margin-top: 1.009vw;
        font-size: 1.412vw;
    }
    .l-topics .p-topics__pager {
        margin-top: 5.444vw;
    }
}
@media screen and (max-width: 767px) {
    .l-topics {
        padding: 16vw 0 5.334vw;
    }
    .l-topics .p-topics__list {
        gap: 4.267vw 0;
        margin: 0 auto;
        width: 91.734vw;
    }
    .l-topics .p-topics__list::after {
        width: 47.966%;
    }
    .l-topics .p-topics__list li {
        width: 47.966%;
    }
    .l-topics .p-topics__list li a figure {
        border-radius: 1.067vw;
    }
    .l-topics .p-topics__list li a .p-topics__top {
        margin-top: 3.2vw;
    }
    .l-topics .p-topics__list li a .p-topics__top .p-topics__head {
        display: flex;
        align-items: center;
    }
    .l-topics .p-topics__list li a .p-topics__top .p-topics__head time {
        font-size: 3.2vw;
    }
    .l-topics .p-topics__list li a .p-topics__top .p-topics__cat {
        width: 17.067vw;
        height: 4.267vw;
        font-size: 2.667vw;
        line-height: 1.6;
    }
    .l-topics .p-topics__list li a p {
        margin-top: 1.334vw;
        font-size: 3.2vw;
        -webkit-line-clamp: 5;
    }
    .l-topics .p-topics__pager {
        margin-top: 11.734vw;
    }
}


/* -----------------------------------------
　topics-detail.html
------------------------------------------*/

.l-topics-detail {
    padding: 70px 0 20px;
}
.l-topics-detail .p-topics-detail__head {
    display: flex;
    align-items: center;
    gap: 0 16px;
}
.l-topics-detail .p-topics-detail__head time {
    font-size: 16px;
}
.l-topics-detail .p-topics-detail__head .p-topics-detail__cat {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 88px;
    height: 18px;
    font-size: 12px;
    line-height: 1.5;
    border-radius: 50vh;
    color: rgb(var(--color-ffffff));
}
.l-topics-detail .p-topics-detail__head .p-topics-detail__cat.cp {
    background: rgb(var(--color-8fc31f));
}
.l-topics-detail .p-topics-detail__head .p-topics-detail__cat.evt {
    background: rgb(var(--color-78bebe));
}
.l-topics-detail .p-topics-detail__head .p-topics-detail__cat.sp {
    background: rgb(var(--color-f39800));
}
.l-topics-detail .p-topics-detail__title {
    margin-top: 26px;
    padding-bottom: 16px;
    font-size: 24px;
    line-height: 1.583;
    background-image: linear-gradient(to right, rgb(var(--color-8fc31f)) 3px, transparent 3px);
    background-size: 8px 3px;
    background-repeat: repeat-x;
    background-position: left bottom;
}
.l-topics-detail article {
    padding-inline: 50px;
}
.l-topics-detail .p-topics-detail__content {
    padding-top: 42px;
}
.l-topics-detail .p-topics-detail__content h2 {
    margin-bottom: 16px;
    padding: 16px 24px;
    font-size: 20px;
    line-height: 1.5;
    color: rgb(var(--color-e06903));
    background: rgb(var(--color-fff9f0));
}
.l-topics-detail .p-topics-detail__content figure {
    margin-top: 26px;
    border-radius: 12px;
    overflow: hidden;
}
.l-topics-detail .p-topics-detail__content p {
    font-size: 16px;
    line-height: 1.875;
}
.l-topics-detail .p-topics-detail__content p:not(:first-of-type) {
    margin-top: 26px;
}
.l-topics-detail .p-topics-detail__link {
    position: relative;
    display: inline-block;
    margin-top: 32px;
    padding-right: 20px;
    font-size: 14px;
    line-height: 2;
    color: rgb(var(--color-147c33));
    text-decoration: underline;
}
.l-topics-detail .p-topics-detail__link::after {
    content: "";
    position: absolute;
    top: 50%;
    right: 0;
    transform: translateY(-50%);
    width: 15px;
    height: 15px;
    background: url(/assets/img/common/c-link__underline.svg);
    background-repeat: no-repeat;
    background-size: contain;
}
.l-topics-detail .p-topics-detail__btn {
    margin-top: 26px;
    width: 190px;
}
@media screen and (max-width: 992px) {
    .l-topics-detail {
        padding: 7.057vw 0 2.017vw;
    }
    .l-topics-detail .p-topics-detail__head {
        gap: 0 1.613vw;
    }
    .l-topics-detail .p-topics-detail__head time {
        font-size: 1.613vw;
    }
    .l-topics-detail .p-topics-detail__head .p-topics-detail__cat {
        width: 8.871vw;
        height: 1.815vw;
        font-size: 1.21vw;
    }
    .l-topics-detail .p-topics-detail__title {
        margin-top: 2.621vw;
        padding-bottom: 1.613vw;
        font-size: 2.42vw;
    }
    .l-topics-detail article {
        padding-inline: 5.041vw;
    }
    .l-topics-detail .p-topics-detail__content {
        padding-top: 4.234vw;
    }
    .l-topics-detail .p-topics-detail__content h2 {
        margin-bottom: 1.613vw;
        padding: 1.613vw 2.42vw;
        font-size: 2.017vw;
    }
    .l-topics-detail .p-topics-detail__content figure {
        margin-top: 2.621vw;
        border-radius: 1.21vw;
    }
    .l-topics-detail .p-topics-detail__content p {
        font-size: 1.613vw;
    }
    .l-topics-detail .p-topics-detail__content p:not(:first-of-type) {
        margin-top: 2.621vw;
    }
    .l-topics-detail .p-topics-detail__link {
        margin-top: 3.226vw;
        padding-right: 2.017vw;
        font-size: 1.412vw;
    }
    .l-topics-detail .p-topics-detail__link::after {
        width: 1.513vw;
        height: 1.513vw;
    }
    .l-topics-detail .p-topics-detail__btn {
        margin-top: 2.621vw;
        width: 19.154vw;
    }
}
@media screen and (max-width: 767px) {
    .l-topics-detail {
        padding: 16vw 0 5.334vw;
    }
    .l-topics-detail article {
        width: 91.734vw;
        margin: 0 auto;
    }
    .l-topics-detail .p-topics-detail__head {
        gap: 0 3.2vw;
    }
    .l-topics-detail .p-topics-detail__head time {
        font-size: 3.2vw;
    }
    .l-topics-detail .p-topics-detail__head .p-topics-detail__cat {
        width: 17.067vw;
        height: 4.267vw;
        font-size: 2.667vw;
        line-height: 1.6;
    }
    .l-topics-detail .p-topics-detail__title {
        margin-top: 5.334vw;
        padding-bottom: 3.2vw;
        font-size: 4.534vw;
        background-image: linear-gradient(to right, rgb(var(--color-8fc31f)) 2px, transparent 2px);
        background-size: 6px 2px;
        background-repeat: repeat-x;
        background-position: left bottom;
    }
    .l-topics-detail article {
        padding-inline: 0;
    }
    .l-topics-detail .p-topics-detail__content {
        padding-top: 4.267vw;
    }
    .l-topics-detail .p-topics-detail__content h2 {
        margin-bottom: 2.667vw;
        padding: 3.2vw 2.667vw;
        font-size: 3.734vw;
    }
    .l-topics-detail .p-topics-detail__content figure {
        margin-top: 2.667vw;
        width: 100%;
        border-radius: 0;
    }
    .l-topics-detail .p-topics-detail__content p {
        font-size: 3.467vw;
    }
    .l-topics-detail .p-topics-detail__content p:not(:first-of-type) {
        margin-top: 4.267vw;
    }
    .l-topics-detail .p-topics-detail__link {
        margin-top: 3.467vw;
        padding-right: 4.8vw;
        font-size: 3.2vw;
    }
    .l-topics-detail .p-topics-detail__link::after {
        width: 2.667vw;
        height: 2.667vw;
    }
    .l-topics-detail .p-topics-detail__btn {
        margin-top: 4.8vw;
        width: 45.334vw;
    }
}