.footer {
    background-color: #F2E8D7;
}
@media screen and (max-width: 968px) {
    .footer {
        background-color: #E9DBC2;
    }
}
.newsdetail,
.homenews {
    background: url(../../images/new/wave-bg6.png) no-repeat;
    background-position: center bottom;
    background-size: 1920px;
    background-color: #F9F3EB;
    padding: 100px 0 223px;
}
.archivementlist {
    padding: 0 0 223px;
}
.newsdetail-inner,
.homenews-inner,
.archivementlist-inner {
    margin: 0 auto;
    width: 92%;
    max-width: 1520px;
}
@media screen and (max-width: 968px) {
    .newsdetail,
    .homenews {
        background: url(../../images/new/wave-bg5-sp.png) no-repeat;
        background-position: center bottom;
        background-size: 100%;
        padding: 75px 0 130px;
    }
}
/* homenews */
.homenews-items {
    display: flex;
    flex-direction: column;
    gap: 25px;
}
.homenews-item {
    background: #fff;
    filter: drop-shadow(0 4px 4px rgb(0 0 0 / 25%));
}
.homenews-item a {
    display: block;
    padding: 24px 90px 14px 40px;
    position: relative;
}
.homenews-item a::after {
    background: url(../../images/new/icon-solid-arrow-r-w.svg) no-repeat;
    background-position: center;
    background-size: 10.5px;
    background-color: var(--main-theme-color);
    border-radius: 50%;
    content: "";
    height: 42px;
    margin: auto;
    position: absolute;
    right: 40px;
    top: 0;
    bottom: 0;
    width: 42px;
}
.homenews-item__top {
    margin: 0 0 15px;
}
.homenews-item__top,
.homenews-cat {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    flex-wrap: wrap;
}
.homenews-date {
    color: #524F4D;
    font-family: var(--ft-out);
    font-size: 22px;
    font-weight: 400;
    margin-right: 15px;
}
.homenews-cat {
    gap: 8px;
}
.homenews-cat .cat {
    border-radius: 5px;
    font-size: 12px;
    font-weight: 700;
    height: 40px;
    padding: 0 45px;
}
.homenews-ttl {
    font-size: 28px;
    font-weight: 600;
    letter-spacing: 0.04em;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.homenews-btn {
    height: 78px;
    margin: 55px 0 0 auto;
    width: 239px;
}
@media screen and (max-width: 968px) {
    .homenews-item a {
        padding: 24px 65px 14px 20px;
    }
    .homenews-item a::after {
        background-size: 6px;
        height: 24px;
        right: 20px;
        width: 24px;
    }
    .homenews-item__top {
        margin: 0 0 12px;
    }
    
    .homenews-date {
        font-size: 14px;
        margin: 0 0 8px;
        width: 100%;
    }
    .homenews-cat .cat {
        height: 32px;
        padding: 0 15px;
    }
    .homenews-ttl {
        font-size: 14px;
    }
    .homenews-btn {
        height: 64px;
        width: 213px;
    }
    .homenews-btn a {
        font-size: 21px;
    }
    .homenews-btn a::after {
        background-size: 7px;
        height: 28px;
        width: 28px;
    }
}
@media screen and (max-width: 768px) {}

/* pagination */
.pagination {
    margin: 120px 0 0;
}
@media screen and (max-width: 968px) {}
@media screen and (max-width: 768px) {}

/* sidebar */
.sidebar {
    width: 480px;
}
.sidebar-head {
    background: var(--main-theme-color);
    display: flex;
    justify-content: center;
    align-items: center;
    height: 70px;
    margin: 0 0 25px;
    text-align: center;
    width: 100%;
}
.sidebar-head p {
    color: #fff;
    font-size: 28px;
    font-weight: 600;
}
.sidebar-post__list {
    margin: 0 0 20px;
}
.sidebar-post__item {
    border-bottom: 1px dashed var(--main-theme-color);
}
.sidebar-post__item a {
    display: flex;
    justify-content: space-between;
    align-items: stretch;
    padding: 20px 0;
}
.sidebar-post__image {
    aspect-ratio: 16 / 9;
    line-height: 0;
    width: 45%;
}
.sidebar-post__image img {
    height: 100%;
    object-fit: cover;
    width: 100%;
}
.sidebar-post__text {
    padding-left: 15px;
    width: 55%;
}
.sidebar-post__cat {
    display: flex;
    justify-content: flex-start;
    align-items: stretch;
    flex-wrap: wrap;
    gap: 5px;
    margin: 0 0 10px;
}
.sidebar-post__cat .cat {
    font-size: 14px;
    font-weight: 500;
    height: 24px;
    padding: 0 15px;
}
.sidebar-post__text p {
    color: #524F4D;
    font-size: 22px;
    font-weight: 700;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
}
@media screen and (max-width: 1468px) {
    .sidebar {
        width: 350px;
    }
}
@media screen and (max-width: 1468px) {
    .sidebar {
        width: 300px;
    }
}
@media screen and (max-width: 968px) {
    .sidebar {
        margin: 25px 0 0;
        width: 100%;
    }
}
@media screen and (max-width: 768px) {}

/* newsdetail-content */
.newsdetail-content {
    width: calc(100% - (65px + 480px));
}
.newsdetail-head {
    margin: 0 0 65px;
}
.newsdetail-head.archivement-detail__head {
    margin: 0 auto 65px;
    width: 92%;
    max-width: 1520px;
}
.newsdetail-tags {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    gap: 10px;
    margin: 0 0 45px;
}
.newsdetail-head.archivement-detail__head .newsdetail-tags {
    margin: 0 0 15px;
}
.newsdetail-tags .cat {
    border-radius: 5px;
    font-size: 12px;
    font-weight: 700;
    height: 40px;
    padding: 0 50px;
}
.newsdetail-date {
    color: #524F4D;
    font-size: 22px;
    font-weight: 700;
}
.newsdetail-head h1 {
    color: var(--main-theme-color);
    font-size: 56px;
    font-weight: 600;
}
.newsdetail-body h2 {
    border-bottom: 1px dashed var(--main-theme-color);
    color: var(--main-theme-color);
    font-size: 40px;
    font-weight: 600;
    margin: 0 0 25px;
    padding: 0 0 25px;
}
.newsdetail-body.archivementdetail-body h2 {
    background: var(--main-theme-color);
    border-bottom: 0;
    color: #fff;
    font-size: 28px;
    font-weight: 600;
    padding: 10px 0 10px 50px;
}
.newsdetail-body h3 {
    color: var(--main-theme-color);
    font-size: 36px;
    font-weight: 500;
    margin: 0 0 25px;
}
.newsdetail-body.archivementdetail-body h3 {
    background: #BBB1A0;
    border-radius: 5px;
    color: #fff;
    justify-content: center;
    align-items: center;
    font-size: 16px;
    font-weight: 700;
    height: 34px;
    width: 100%;
    max-width: 162px;
}
.newsdetail-body h2,
.newsdetail-body h3 {
    display: flex;
    justify-content: flex-start;
    align-items: flex-start;
}
.newsdetail-body h2::before,
.newsdetail-body h3::before {
    background: url(../../images/new/icon-foot-symbol-g.svg) no-repeat;
    background-position: center;
    background-size: contain;
    content: "";
    display: block;
    height: 47px;
    margin-right: 15px;
    position: relative;
    top: 8px;
    width: 52px;
}
.newsdetail-body.archivementdetail-body h2::before,
.newsdetail-body.archivementdetail-body h3::before {
    display: none;
}
.newsdetail-body hr {
    background: none;
    border: 0;
    border-bottom: 1px dashed var(--main-theme-color);
    display: block;
    margin: 45px 0;
}
.newsdetail-body p {
    font-size: 18px;
    font-weight: 500;
    letter-spacing: 0.02em;
    line-height: 1.7em;
    margin: 0 0 25px;
}
.wp-block-image {
    margin: 0 0 25px;
}
.newsdetail-body p strong {
    color: #E3797B;
}
.newsdetail-btn {
    height: 79px;
    margin: 80px auto;
    width: 271px;
}
.newsdetail-btn a {
    background: var(--main-theme-color);
    border-radius: 50px;
    color: #fff;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 18px;
    font-weight: 500;
    height: 100%;
    width: 100%;
}
.newsdetail-btn a::before {
    background: url(../../images/new/icon-solid-arrow-r-g.svg) no-repeat;
    background-position: center;
    background-size: 10.5px;
    background-color: #fff;
    border-radius: 50%;
    content: "";
    display: block;
    height: 42px;
    margin-right: 20px;
    transform: rotate(-180deg);
    width: 42px;
}
@media screen and (max-width: 1468px) {
    .newsdetail-content {
        width: calc(100% - (25px + 350px));
    }
}
@media screen and (max-width: 1168px) {
    .newsdetail-content {
        width: calc(100% - (25px + 300px));
    }
    .newsdetail-tags {
        margin: 0 0 35px;
    }
    .newsdetail-tags .cat {
        height: 35px;
        padding: 0 35px;
    }
    .newsdetail-date {
        font-size: 18px;
    }
    .newsdetail-head h1 {
        font-size: 42px;
    }
}
@media screen and (max-width: 968px) {
    .newsdetail-content {
        width: 100%;
    }
    .newsdetail-head {
        margin: 0 0 25px;
        padding: 0 0 25px;
    }
    .newsdetail-head.archivement-detail__head {
        margin: 0 auto 25px;
    }
    .newsdetail-tags {
        margin: 0 0 25px;
    }
    .newsdetail-tags .cat {
        padding: 0 25px;
    }
    .newsdetail-date {
        font-size: 16px;
    }
    .newsdetail-head h1 {
        font-size: 32px;
    }
    .newsdetail-body h2 {
        font-size: 28px;
    }
    .newsdetail-body h3 {
        font-size: 23px;
    }
    .newsdetail-body.archivementdetail-body h2 {
        font-size: 21px;
        padding: 10px 0 10px 15px;
    }
    .newsdetail-body.archivementdetail-body h3 {
        font-size: 14px;
        height: 30px;
        max-width: 150px;
    }
    .newsdetail-body h2::before,
    .newsdetail-body h3::before {
        height: 20px;
        top: 12px;
        width: 26px;
    }
    .newsdetail-body p {
        font-size: 16px;
    }
    .newsdetail-btn {
        height: 64px;
        width: 213px;
    }
    .newsdetail-btn a {
        font-size: 16px;
    }
    .newsdetail-btn a::before {
        background-size: 7px;
        height: 28px;
        width: 28px;
    }
}
@media screen and (max-width: 768px) {}

/* newsdetail */
.newsdetail {
    margin-bottom: -2px;
}
.newsdetail-inner {
    display: flex;
    justify-content: space-between;
    align-items: stretch;
    flex-wrap: wrap;
}
@media screen and (max-width: 968px) {}
@media screen and (max-width: 768px) {}

/* pagination */
.pagination {

}
.pagination ul {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 15px;
}
.pagination ul li span,
.pagination ul li a {
    background: #fff;
    border: 1px solid var(--main-theme-color);
    border-radius: 50%;
    color: var(--main-theme-color);
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 28px;
    font-weight: 600;
    height: 67px;
    width: 67px;
}
.pagination ul li span.current {
    background: var(--main-theme-color);
    color: #fff;
}
.pagination ul li .prev,
.pagination ul li .next {
    background: var(--main-theme-color);
    color: #fff;
    height: 42px;
    width: 42px;
}
@media screen and (max-width: 968px) {}
@media screen and (max-width: 768px) {
    .pagination ul li span,
    .pagination ul li a {
        font-size: 21px;
        height: 45px;
        width: 45px;
    }
    .pagination ul li .prev,
    .pagination ul li .next {
        height: 32px;
        width: 32px;
    }
}

/* archivementlist */
.archivementlist-blocks {
    display: flex;
    flex-direction: column;
    gap: 95px;
}
.archivementlist-block__head {
    background: var(--main-theme-color);
    display: flex;
    justify-content: flex-start;
    align-items: center;
    height: 70px;
    margin: 0 0 50px;
    padding-left: 50px;
    width: 100%;
}
.archivementlist-block__head h3 {
    color: #fff;
    font-size: 28px;
    font-weight: 600;
}
.archivementlist-sliders {
    position: relative;
}
.archivementlist-slider {
    overflow: hidden;
    padding: 10px;
}
.archivementlist-slide {
    background: #fff;
    border-radius: 30px;
    filter: drop-shadow(0 4px 4px rgb(0 0 0 / 25%));
    padding: 17px;
}
.archivementlist-image {
    border-radius: 30px;
    line-height: 0;
    overflow: hidden;
}
.archivementlist-text {
    padding: 20px 0 38px;
}
.archivementlist-ttl {
    font-size: 22px;
    font-weight: 700;
}
.archivementlist-btn {
    background: var(--main-theme-color);
    border-radius: 50px;
    display: flex;
    justify-content: center;
    align-items: center;
    height: 40px;
    margin: 0 auto;
    position: relative;
    width: 100%;
    max-width: 271px;
}
.archivementlist-btn::after {
    background: url(../../images/new/icon-solid-arrow-r-g.svg) no-repeat;
    background-position: center;
    background-size: 8px;
    background-color: #fff;
    border-radius: 50%;
    content: "";
    height: 22px;
    margin: auto;
    position: absolute;
    right: 20px;
    top: 0;
    bottom: 0;
    width: 22px;
}
.archivementlist-btn p {
    color: #fff;
    font-size: 14px;
    font-weight: 500;
}
.archivementlist-allbtn {
    height: 79px;
    margin: 75px auto 0;
    width: 100%;
    max-width: 342px;
}
.archivementlist-allbtn a {
    background: var(--main-theme-color);
    border-radius: 50px;
    color: #fff;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 18px;
    font-weight: 500;
    height: 100%;
    position: relative;
    width: 100%;
}
.archivementlist-allbtn a::after {
    background: url(../../images/new/icon-solid-arrow-r-g.svg) no-repeat;
    background-position: center;
    background-size: 10.5px;
    background-color: #fff;
    border-radius: 50%;
    content: "";
    height: 42px;
    margin: auto;
    position: absolute;
    right: 20px;
    top: 0;
    bottom: 0;
    width: 42px;
}
.slider-main__prev,
.slider-main__next {
    appearance: none;
    -moz-appearance: none;
    -webkit-appearance: none;
    background-position: center;
    background-size: 10.5px;
    background-repeat: no-repeat;
    background-color: #fff;
    border: 0;
    border-radius: 50%;
    cursor: pointer;
    height: 42px;
    margin: auto;
    position: absolute;
    top: 0;
    bottom: 0;
    width: 42px;
    z-index: 1;
}
.slider-main__prev {
    background-image: url(../../images/new/icon-solid-arrow-r-g.svg);
    left: -50px;
    transform: rotate(-180deg);
}
.slider-main__next {
    background-image: url(../../images/new/icon-solid-arrow-r-g.svg);
    right: -50px;
}
@media screen and (max-width: 968px) {}
@media screen and (max-width: 768px) {
    .archivementlist-blocks {
        gap: 60px;
    }
    .archivementlist-block__head {
        height: 50px;
        margin: 0 0 35px;
        padding-left: 25px;
    }
    .archivementlist-block__head h3 {
        font-size: 21px;
    }
    .archivementlist-slide {
        border-radius: 20px;
        padding: 12px;
    }
    .archivementlist-image {
        border-radius: 20px;
    }
    .archivementlist-text {
        padding: 15px 0 25px;
    }
    .archivementlist-ttl {
        font-size: 18px;
    }
    .slider-main__prev {
        left: -10px;
    }
    .slider-main__next {
        right: -10px;
    }
    .archivementlist-allbtn {
        height: 50px;
        margin: 45px auto 0;
    }
    .archivementlist-allbtn a {
        font-size: 16px;
    }
    .archivementlist-allbtn a::after {
        background-size: 8.5px;
        height: 35px;
        right: 15px;
        width: 35px;
    }
}

/* toc */
.toc {
    background: #fff;
    border: 3px solid var(--main-theme-color);
    border-radius: 5px;
    margin: 0 0 35px;
    padding: 15px 25px;
}
.toc-head .toc-ttl {
    border-bottom: 1px dashed var(--main-theme-color);
    color: var(--main-theme-color);
    display: flex;
    justify-content: flex-start;
    align-items: center;
    font-size: 28px;
    font-weight: 600;
    margin: 0 0 20px;
    padding: 0 0 10px;
}
.toc-head .toc-ttl::before {
    background: url(../../images/new/icon-foot-symbol-g.svg) no-repeat;
    background-position: center;
    background-size: contain;
    content: "";
    display: block;
    height: 17.26px;
    margin-right: 15px;
    width: 19.25px;
}
.toc-body ul {
    counter-reset: number 1;
}
.toc-body ul li {
    border-bottom: 1px dashed var(--main-theme-color);
    display: flex;
    justify-content: flex-start;
    align-items: center;
    margin: 0 0 15px;
    padding: 0 0 10px;
}
.toc-body ul li::before {
    border: 1px solid var(--main-theme-color);
    border-radius: 50%;
    counter-increment: number 1;
    content: counter(number);
    color: var(--main-theme-color);
    display: flex;
    justify-content: center;
    align-items: center;
    font-family: var(--ft-out);
    font-size: 18px;
    font-weight: 400;
    height: 29px;
    margin-right: 20px;
    width: 29px;
}
.toc-body ul li a {
    font-size: 22px;
    font-weight: 700;
}
@media screen and (max-width: 968px) {}
@media screen and (max-width: 768px) {}

/* related */
.related-item__head {
    background: var(--main-theme-color);
    display: flex;
    justify-content: flex-start;
    align-items: center;
    height: 70px;
    margin: 0 0 50px;
    padding-left: 50px;
    width: 100%;
}
.related-item__head h2 {
    color: #fff;
    font-size: 28px;
    font-weight: 600;
}
.related-item__body {
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    gap: 20px;
}
.related-item {
    width: calc((100% - (50px * 1)) / 2);
}
.related-item a {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    position: relative;
}
.related-item:first-child a {
    padding-left: 75px;
}
.related-item:last-child a {
    padding-right: 75px;
}
.related-item:first-child a::before,
.related-item:last-child a::after {
    background-image: url(../../images/new/icon-solid-arrow-r-g.svg);
    background-position: center;
    background-repeat: no-repeat;
    background-size: 10.5px;
    background-color: #fff;
    border-radius: 50%;
    border: 1px solid var(--main-theme-color);
    content: "";
    height: 42px;
    margin: auto;
    position: absolute;
    top: 0;
    bottom: 0;
    width: 42px;
}
.related-item:first-child a::before {
    left: 0;
    transform: rotate(-180deg);
}
.related-item:last-child a::after {
    right: 0;
}
.related-item__image {
    width: 190px;
}
.related-item__text {
    padding-left: 20px;
    width: calc(100% - 190px);
}
.related-tags {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    gap: 5px;
    margin: 0 0 15px;
}
.related-item__ttl {
    font-size: 22px;
    font-weight: 700;
}
@media screen and (max-width: 1268px) {
    .related-item {
        width: 100%;
    }
}
@media screen and (max-width: 968px) {
    .related-item__ttl {
        font-size: 18px;
    }
}
@media screen and (max-width: 668px) {
    .related-item__image {
        width: 100px;
    }
    .related-item__text {
        width: calc(100% - 100px);
    }
    .related-item__ttl {
        font-size: 16px;
    }
}

/* blockname */
@media screen and (max-width: 968px) {}
@media screen and (max-width: 768px) {}

/* blockname */
@media screen and (max-width: 968px) {}
@media screen and (max-width: 768px) {}