@charset "UTF-8";

.post_wrap .wrapper {
    display: flex;
    flex-wrap: wrap;
    align-items: start;
    column-gap: 8rem;
    row-gap: 6rem;
}

.post_wrap .main_col {
    width: calc(100% - 32rem);
    margin: 0 auto;
}

.post_wrap .side_col {
    width: 24rem;
}

.post_wrap .side_col .side_hl {
    font-size: 3.2rem;
    color: #335e35;
    margin-bottom: 2.8rem;
}

.post_wrap .side_col .side_cat {
    display: flex;
    flex-direction: column;
    row-gap: .8rem;
}

.post_wrap .side_col .side_cat a {
    font-size: 1.8rem;
}

.post_wrap .side_col .side_cat a:hover {
    color: #f07a36;
}

.post_wrap .side_col .side_cat {
    margin-bottom: 6rem;
}

.post_wrap .side_col .side_month {
    display: flex;
    flex-direction: column;
    row-gap: .8rem;
    font-size: 1.8rem;
}

.post_wrap .side_col .side_month summary {
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.post_wrap .side_col .side_month .months {
    display: flex;
    flex-direction: column;
    row-gap: .8rem;
    margin-top: .8rem;
    padding-left: 1.5em;
}

.post_wrap .side_col .side_month .year summary:after {
    content: "";
    width: .8rem;
    height: .8rem;
    border-top: 2px solid #000;
    border-right: 2px solid #000;
    transform: rotate(-45deg);
    transition: .3s;
}

.post_wrap .side_col .side_month .year[open] summary:after {
    transform: rotate(135deg);
}

@media (max-width:767px) {
    .post_wrap .main_col {
        width: 100%;
    }

    .post_wrap .side_col {
        width: 100%;
    }

    .post_wrap .side_col .side_hl {
        font-size: 2.6rem;
    }
}

/* アーカイブ
***************************/

.archive_wrap .main_col .item {
    display: flex;
    column-gap: 4rem;
    align-items: start;
    padding-bottom: 4rem;
    margin-bottom: 4rem;
    border-bottom: 1px solid #d5d5d5;
    position: relative;
}

.archive_wrap .main_col .item .thumb {
    width: 24rem;
    min-width: 24rem;
    height: 24rem;
    border-radius: 16px;
    border-radius: 16px;
    overflow: hidden;
    background-image: url(../img/common/noimage.jpg);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
}

.archive_wrap .main_col .item .thumb img {
    object-fit: cover;
    height: 100%;
}

.archive_wrap .main_col .item .date {
    font-size: 1.8rem;
    margin-bottom: 1.6rem;
}

.archive_wrap .main_col .item .ttl {
    font-size: 2.4rem;
    color: #f07a36;
    margin-bottom: 2rem;
}

.archive_wrap .main_col .item:hover .ttl {
    color: #335e35;
    text-decoration: underline;
}

.archive_wrap .main_col .item .excerpt {
    font-size: 1.8rem;
    line-height: 2;
}

.archive_wrap .main_col .item .cat {
    position: absolute;
    top: 0;
    right: 0;
    font-size: 1.8rem;
    padding-bottom: .8rem;
    background-image: repeating-linear-gradient(90deg, #f07a36, #f07a36 6px, transparent 6px, transparent 12px);
    background-position: left bottom;
    background-repeat: repeat-x;
    background-size: 100% 1px;
}

#post_pager>.page-numbers {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    gap: 2rem;
}

#post_pager .page-numbers.current {
    display: block;
    width: 3.56em;
    line-height: 3.56;
    text-align: center;
    font-size: 1.8rem;
    border-radius: 50%;
    background-color: #f07a36;
    color: #fff;
}

#post_pager .page-numbers.dots {
    display: block;
    width: 3.56em;
    line-height: 3.56;
    text-align: center;
    font-size: 1.8rem;
}

#post_pager a.page-numbers:not(.next):not(.prev) {
    display: block;
    width: 3.56em;
    line-height: 3.56;
    text-align: center;
    font-size: 1.8rem;
    border-radius: 50%;
    background-color: #f5f5f4;
    color: #000;
}

#post_pager .page-numbers.prev {
    font-size: 2rem;
    position: relative;
    padding-left: 1em;
}

#post_pager .page-numbers.next {
    font-size: 2rem;
    position: relative;
    padding-right: 1em;
}

#post_pager .page-numbers.prev:after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    margin: auto 0;
    width: .8rem;
    height: .8rem;
    transform: rotate(45deg);
    border-left: 2px solid #000;
    border-bottom: 2px solid #000;
}

#post_pager .page-numbers.next:after {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    margin: auto 0;
    width: .8rem;
    height: .8rem;
    transform: rotate(45deg);
    border-top: 2px solid #000;
    border-right: 2px solid #000;
}

@media (max-width:767px) {
    .archive_wrap .main_col .item {
        flex-wrap: wrap;
        row-gap: 3rem;
    }

    .archive_wrap .main_col .item .thumb {
        width: 100%;
    }

    .archive_wrap .main_col .item .thumb + div {
        position: relative;
        width: 100%;
    }

    .archive_wrap .main_col .item .date {
        font-size: 1.6rem;
    }

    .archive_wrap .main_col .item .ttl {
        font-size: 2rem;
    }

    .archive_wrap .main_col .item .cat {
        font-size: 1.6rem;
    }

    .archive_wrap .main_col .item .excerpt {
        font-size: 1.6rem;
    }
}

/* シングル
***************************/

.single_wrap .post_hl {
    position: relative;
    margin-bottom: 8rem;
}

.single_wrap .post_hl .cat {
    position: absolute;
    top: 0;
    right: 0;
    font-size: 1.8rem;
    padding-bottom: .8rem;
    background-image: repeating-linear-gradient(90deg, #f07a36, #f07a36 6px, transparent 6px, transparent 12px);
    background-position: left bottom;
    background-repeat: repeat-x;
    background-size: 100% 1px;
}

.single_wrap .post_hl .date {
    font-size: 1.8rem;
    margin-bottom: 1.6rem;
}

.single_wrap .post_hl .ttl {
    font-size: 4rem;
    color: #335e35;
}

.single_wrap .thumbnail {
    margin-bottom: 5rem;
}

.single_wrap .thumbnail img {
    width: auto;
    max-width: 100%;
    margin: 0 auto;
    border-radius: 16px;
}


.single_wrap .post_content {
    padding-bottom: 4rem;
    margin-bottom: 4rem;
    border-bottom: 1px solid #d5d5d5;
}

.single_wrap .post_content > *:not(:last-child) {
    margin-bottom: 4rem;
}

.single_wrap .post_content p {
    font-size: 1.8rem;
    line-height: 2;
}

.single_wrap .post_content p:not(:last-child) {
    margin-bottom: 2em;
}

@media (max-width:767px) {
    .single_wrap .post_hl .date {
        margin-bottom: 2rem;
    }

    .single_wrap .post_hl {
        margin-bottom: 5rem;
    }

    .single_wrap .post_hl .ttl {
        font-size: 2.3rem;
    }

    .single_wrap .post_content p {
        font-size: 1.6rem;
    }
}