/* ttl */
.page-ttl-wrap {
    width: 87.1%;
    margin: 12.82vw auto 17.94vw;
    display: flex;
    align-items: center;
}
.page-ttl-wrap .ttl {
    font-size: 5.64vw;
    font-weight: 600;
    padding-right: 18.46vw;
    position: relative;
}
.page-ttl-wrap .ttl:after {
    content: "";
    width: 19.48vw;
    height: 1px;
    background-color: #D6D6D6;
    position: absolute;
    transform: rotate(-45deg);
    transform-origin: center;
    right: 0;
    top: 50%;
}
.page-ttl-wrap .txt {
    font-weight: 600;
}
@media only screen and (min-width: 900px) {
    .page-ttl-wrap {
        width: 78%;
        max-width: 1500px;
        margin: 16rem auto;
    }
    .page-ttl-wrap .ttl {
        font-size: 4rem;
        padding-right: 17.2rem;
    }
    .page-ttl-wrap .ttl:after {
        width: 16.8rem;
    }
}

/* news */
.page-news .news-list {
    width: 76.9%;
    margin: 0 auto 23.07vw;
    display: grid;
    row-gap: 15.38vw;
}
.page-news .news-header {
    display: flex;
    font-size: 3.33vw;
    border-bottom: 1px solid #666666;
    padding-bottom: 4.61vw;
    color: #969696;
    margin-bottom: 3.84vw;
}
.page-news .news-header .news-date {
    padding-right: 11.28vw;
    position: relative;
}
.page-news .news-header .news-date:after {
    content: "";
    width: 6.41vw;
    height: 1px;
    background-color: #666666;
    position: absolute;
    transform: rotate(-45deg);
    transform-origin: center;
    right: 3.07vw;
    top: 50%;
}
.page-news .news-wrap img {
    display: block;
    margin-bottom: 6.41vw;
}
.page-news:not(.single-news) .news-wrap img {
    aspect-ratio: 1 / 1;
    object-fit: cover;
    width: 100%;
    height: auto;
}
.page-news .news-ttl {
    font-size: 4.1vw;
    font-weight: 600;
    line-height: 1.7;
}
@media only screen and (min-width: 900px) {
    .page-news .news-list {
        width: 63.8%;
        max-width: 1225px;
        margin: 0 auto 17rem;
        grid-template-columns: repeat(3,1fr);
        column-gap: 4%;
        row-gap: 10rem;
    }
    .page-news .news-header {
        font-size: 1.3rem;
        padding-bottom: 1.8rem;
        margin-bottom: 2.5rem;
    }
    .page-news .news-header .news-date {
        padding-right: 4rem;
    }
    .page-news .news-header .news-date:after {
        width: 3.4rem;
        right: .4rem;
    }
    .page-news .news-wrap img {
        margin-bottom: 3rem;
    }
    .page-news .news-ttl {
        font-size: 1.6rem;
    }
}

.nav-links {
    width: 87%;
    display: flex;
    justify-content: center;
    margin: 0 auto 23.07vw;
    column-gap: 4.1vw;
    position: relative;
}
.nav-links a, .nav-links span {
    font-family: adobe-garamond-pro, serif;
    font-size: 3.84vw;
    padding: 0 0.51vw 1.79vw;
}
.nav-links a {
    color: #A6A6A6;
}
.nav-links .current {
    border-bottom: 1px solid #333333;
}
.nav-links .next, .nav-links .prev {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    padding: 0;
}
.nav-links .next {
    right: 0;
}
.nav-links .prev {
    left: 0;
}

@media only screen and (min-width: 900px) {
    .nav-links {
        width: 48.7rem;
        min-width: 487px;
        column-gap: 4rem;
        margin: 0 auto 16rem;
    }
    .nav-links a, .nav-links span {
        font-size: 2rem;
        padding: 0 0 1rem;
    }
}

/* single-news */
.single-news .news-list {
    width: 87%;
    border-top: 1px solid #333;
    padding-top: 8.71vw;
    margin-bottom: 8.2vw;
}
.single-news .news-item {
    padding-bottom: 19.48vw;
    border-bottom: 1px solid #D6D6D6;
}
.single-news .news-header {
    border-bottom: 1px solid #D6D6D6;
}
.single-news .news-header .news-info {
    display: flex;
}
.single-news .news-header .news-date:after {
    background-color: #D6D6D6;
}
.single-news .news-wrap img {
   margin-bottom: 8.97vw;
}
.page-news .news-wrap .m-ttl {
    font-size: 3.2rem;
    font-weight: 600;
    line-height: 2;
    margin-bottom: 5vw;
}
.page-news .news-wrap .s-ttl {
    font-size: 2.8rem;
    font-weight: 600;
    line-height: 2;
    color: #918E85;
    margin-bottom: 5vw;
}
.page-news .news-wrap > p {
    font-size: 3.33vw;
    line-height: 2;
}
.page-news .news-wrap > p + .m-ttl,
.page-news .news-wrap > p + .s-ttl {
    margin-top: 11vw;
}
.page-news .news-wrap > p + p {
    margin-top: 5.12vw;
}
.page-news .news-wrap .arrow-btn {
    margin: 14.35vw 0 12.82vw;
}
.single-news + .breadcrumb {
    margin-top: 20.51vw;
}
@media only screen and (max-width: 899px) {
    .single-news .news-header {
        flex-wrap: wrap;
        padding-bottom: 8.97vw;
        margin-bottom: 8.97vw;
    }
    .single-news .news-header .news-ttl {
        width: 100%;
        margin-top: 3.58vw;
    }
    .page-news .news-wrap .sp-right {
        margin-left: auto;
    }
}
@media only screen and (min-width: 900px) {
    .single-news .news-header {
        display: grid;
        grid-template-columns: 25% 1fr;
        align-items: center;
        padding-bottom: 3rem;
        margin-bottom: 5rem;
    }
    .single-news .news-list {
        width: 62.5%;
        max-width: 1200px;
        padding-top: 3rem;
        grid-template-columns: 1fr;
        margin-bottom: 5rem;
    }
    .single-news .news-item {
        padding-bottom: 14rem;
    }
    .single-news .news-wrap {
        padding: 0 10% 0 25%;
    }
    .single-news .news-wrap img {
        margin-bottom: 5rem;
     }
    .page-news .news-wrap .m-ttl {
        font-size: 1.8rem;
        margin-bottom: 3rem;
    }
    .page-news .news-wrap .s-ttl {
        font-size: 1.5rem;
        margin-bottom: 3rem;
    }
    .page-news .news-wrap > p {
        font-size: 1.3rem;
    }
    .page-news .news-wrap > p + .m-ttl,
    .page-news .news-wrap > p + .s-ttl {
        margin-top: 5rem;
    }
    .page-news .news-wrap > p + p {
        margin-top: 3rem;
    }
    .page-news .news-wrap .arrow-btn {
        margin: 5rem 0;
    }
    .single-news + .breadcrumb {
        margin-top: 20rem;
    }
}

.single-news .single-nav {
    width: 87%;
    margin: 0 auto 20.51vw;
}
.single-news .single-nav .post-nav {
    display: flex;
    justify-content: space-between;
}
.single-news .single-nav .post-nav .previous .post-nav-label {
    padding-left: 7.69vw;
}
.single-news .single-nav .post-nav .next .post-nav-label {
    padding-right: 7.69vw;
}
.single-news .single-nav .post-nav-label {
    font-family: adobe-garamond-pro, serif;
    font-size: 4.1vw;
    position: relative;
}
.single-news .single-nav .post-nav-label:after {
    content: "";
    width: 2.3vw;
    height: 1.79vw;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
}
.single-news .single-nav .post-nav .previous .post-nav-label:after {
    left: 0;
    background: url(../img/common/arrow-prev.svg) 0 / cover no-repeat;
}
.single-news .single-nav .post-nav .next .post-nav-label:after {
    right: 0;
    background: url(../img/common/arrow-next.svg) 0 / cover no-repeat;
}
.single-news .single-nav .post-nav li:first-child.next {
    margin-left: auto;
}
@media only screen and (min-width: 900px) {
    .single-news .single-nav {
        width: 62.5%;
        max-width: 1200px;
        margin: 0 auto 20rem;
    }
    .single-news .single-nav .post-nav .previous .post-nav-label {
        padding-left: 5.5rem;
    }
    .single-news .single-nav .post-nav .next .post-nav-label {
        padding-right: 5.5rem;
    }
    .single-news .single-nav .post-nav-label {
        font-size: 2rem;
    }
    .single-news .single-nav .post-nav-label:after {
        width: .9rem;
        height: .8rem;
    }
}

/* 404 */
.page-nf .inner .txt {
    text-align: center;
}
.page-nf .inner .arrow-btn {
    margin: 5rem auto 10rem;
}

/* breadcrumb */
.breadcrumb {
    width: 87%;
    margin: 0 auto 5.128vw;
    display: flex;
    flex-wrap: wrap;
}
.breadcrumb li {
    position: relative;
}
.breadcrumb li:not(:last-of-type) {
    padding-right: 8vw;
}
.breadcrumb li:not(:last-of-type):before {
    content: "";
    width: 2vw;
    height: 2vw;
    color: #A6A6A6;
    border-top: solid 1px;
    border-right: solid 1px;
    position: absolute;
    top: 50%;
    right: 4vw;
    transform: translateY(-50%) rotate(45deg);
}
.breadcrumb li:not(:last-child) a {
    color: #A6A6A6;
}
.breadcrumb li a {
    font-size: 2.82vw;
    line-height: 2;
}

@media only screen and (min-width: 900px) {
    .breadcrumb {
        width: 78%;
        max-width: 1500px;
        margin: 0 auto 4rem;
    }
    .breadcrumb li:not(:last-of-type) {
        padding-right: 4.8rem;
    }
    .breadcrumb li:not(:last-of-type):before {
        width: 1rem;
        height: 1rem;
        right: 2rem;
    }
    .breadcrumb li a {
        font-size: 1.2rem;
    }

}
