@charset "UTF-8"; /*****contents*****/
/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
汎用
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
body {
    max-width: 1920px;
    margin: 0 auto;
    background: #F5F7F3;
}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
汎用
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
ヘッダー
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
header {
}

header .h_inner {
}

header h1 {
}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
プロモ
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
.promo_frame {
    background: url(../images/promo.jpg) no-repeat center bottom 100% / cover;
    color: #fff;
    text-align: center;
    padding: 80px 0;
    min-height: 460px;
}

/* ----------------------------------
   Front page: contants_area (latest posts) layout
   ---------------------------------- */
.contents_area {
    width: 65%;
    margin-right: 5%;
}

.sidebar_area {
    width: 30%;
}

.latest_posts_list {
}

.latest_post_item {
    background: #fff;
    border-radius: 8px;
    display: flex;
    gap: 20px;
    width: 100%;
    align-items: center;
    margin-bottom: 20px;
    padding: 10px 30px;
}

.latest_post_item p.img {
    border-radius: 8px;
    overflow: hidden;
}

.latest_post_item:not(:last-child) {
}

.latest_posts_list a:hover{
    text-decoration: none;
    opacity: 1;
}


.latest_thumb {
    width: 300px;
    padding-top: 24%;
}

.latest_meta {
    flex: 1;
    height: 100%;
    padding: 20px;
}

.latest_cat {
    margin: 0 0 6px 0;
    font-size: 12px;
    color: #fff;
    padding: 4px 15px 2px;
    background: #C6B18A;
    display: table;
    font-weight: bold;
    margin-bottom: 10px;
}

.latest_title {
    font-size: 18px;
    margin: 0 0 6px 0;
}

.latest_title a {

    text-decoration: none;
}

.latest_excerpt {
    font-size: 13px;
    color: #666;
    margin: 0 0 8px 0;
    line-height: 1.5;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.latest_date {
    font-size: 12px;
    color: #999;
    margin: 0;
}

.no_latest {
    color: #999;
    padding: 20px;
}

@media (max-width: 751px) {
    .promo_frame{
        min-height: 320px;
    }

    .contents_area {
        width: 100%;
        float: none;
        margin: 0;
    }

    .sidebar_area {
        width: 100%;
        float: none;
        padding: 16px 0;
    }


    .latest_post_item {
        width: 100%;
        flex-wrap: wrap;
        padding: 20px;
        gap: 0;
    }

    .latest_thumb img {
        width: 100%;
        height: 90px;
    }
.latest_post_item p.img {
    padding-top: 62%;
    width: 100%;
}

.latest_meta {
    padding: 15px 0 0;
}

.latest_title {
    font-size: 16px;
}


}
