@charset "UTF-8";

.blog-list {
    margin-bottom: 80px;
}

.blog-list .post-list {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 40px 20px;
    margin-bottom: 40px;
}

.blog-list .post-list li .img {
    margin-bottom: 10px;
}


.blog-list .post-list li .img img {
    border-radius: 30px;
}

.blog-list .post-list li time {
    font-size: 12px;
}

.blog-list .post-list li title {
    font-size: 14px;
    margin-top: 10px;
}

.blog-list .pagenation {
    display: flex;
    align-items: center;
    justify-content: center;
}

.blog-list .pagenation li {
    margin: 0 10px;
}

@media screen and (max-width: 767px) {

    .blog-list {
        margin-bottom: 60px;
    }

    .blog-list .post-list {
        grid-template-columns: repeat(2, 1fr);
        gap: 30px 20px;
        margin-bottom: 20px;
    }
}

.blog-post {
    display: flex;
}

.blog-post .post {
    width: 100%;
    max-width: 680px;
    margin-right: 40px;
}

.blog-post .post .thumbnail {
    margin-bottom: 40px;
}

.blog-post .post .thumbnail img {
    border-radius: 30px;
    width: 100%;
}

.blog-post .post .info {
    display: flex;
    align-items: center;
    margin-bottom: 40px;
}

.blog-post .post .info time {
    font-size: 12px;
}

.blog-post .post .category {
    background-color: #fff;
    border-radius: 4px;
    font-size: 12px;
    padding: 2px 4px;
    margin-left: 10px;
}

.blog-post .post .title{
    font-size: 28px;
    font-weight: bold;
    margin-bottom: 40px;
}

.blog-post .post .content ul{
    margin: 0 0 30px 18px;
}

.blog-post .post .content li{
    line-height: 1.8;
    list-style-type: disc;
}

.blog-post .post .content p{
    line-height: 1.8;
    margin-bottom: 30px;
}

.blog-post .post .content .youtube{
    margin-bottom: 30px;
}

.blog-post .post .content .youtube iframe{
    width: 100%;
    height: auto;
    aspect-ratio: 16/9;/*縦横比16:9*/
}

.blog-post .sidebar{
    max-width: 280px;
}

.blog-post .sidebar .title{
    font-size: 18px;
    font-weight: bold;
    border-bottom: solid 1px #707070;
    padding-bottom: 10px;/*下線との距離*/
    margin-bottom: 20px;
}

.blog-post .sidebar .tag-list{
    display: flex;
    flex-wrap: wrap;/*flexboxではみ出したら折り返し。初期設定はnowrap*/
    margin-bottom: 40px;
}

.blog-post .sidebar .tag-list li{
    background-color: #fff;
    border-radius: 5px;
    padding: 2px 4px;
    margin: 0 5px 10px 0;
    font-size: 12px;
}

.blog-post .post-list a{
    display: flex;
    align-items: center;
}

.blog-post .post-list .post-thumbnail{
    max-width: 80px;/*280pxのうち*/
    flex-shrink: 0;/*縮まない*/
    margin-right: 10px;
}

.blog-post .post-list .post-title{
    font-size: 12px;
}

.btn{
    margin: 0 auto 80px;
}

@media screen and (max-width: 767px) {

.blog-post {
    flex-direction: column;
    margin-bottom: 40px;
}

.blog-post .post{
    margin: 0 0 40px;
}

.btn{
    margin: 0 auto 60px;
}
}
