.blog_list li {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    margin: 10px;
    padding: 5px;


}

.blog_list li .image{
    width: 33%;
}



.blog_list li img{
    width: 100%;
    aspect-ratio: 2/1.7;
    object-fit: contain;
}

.blog_list li .disc {
    width: 60%;
   border:5px solid #fcd7de ;
    margin: 1%;
    padding: 0;
}

.blog_list li h3{
font-size: 13px;
    line-height: 1.4;
    display: -webkit-box;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
    overflow: hidden;
    font-weight: 400;
}

.blog_list li p{
background: #fcd7de ;
}


.blog_list li .text{
    width: 100%;
    font-size: 12px;
    padding: 7px 0 0;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    line-height: 1.4;
}
.blog .image img{
  width:100%;
  height: 90px;
  object-fit: cover;
  object-position:top center;
}
.blog.single img{
  height: unset;
}

@media screen and (min-width: 640px) {

.top_blog .blog_list {
    display: grid;
    grid-template-columns: repeat(auto-fit,30%);
    grid-gap: 5%;
    justify-content: flex-start;
}

.top_blog .blog_list li {
    display: block;
    border-bottom: none;
}

.top_blog .blog_list li .image{
    width: 100%;
}
.top_blog .blog_list li img {
    aspect-ratio: 4/3;
}
.top_blog .blog_list li .disc{
    width: 100%;
}
.top_blog .blog_list li .text{
    font-size: 15px;
}

.blog .blog_list {
    width: 100%;
    padding: 0 10px;
    max-width: 800px;
    margin: 30px auto;
    box-sizing: border-box;
}

.blog .blog_list li .image {
    width: 30%;
}

.blog .blog_list li img {
    aspect-ratio: 2/1.5;
}

.blog .blog_list li .disc {
    width: 59%;
}

.blog .blog_list .date {
    font-size: 16px;
}

.blog .blog_list li h3 {
    font-size: 22px;
    line-height: 1.4;
}
.blog .blog_list li .text {
    /* -webkit-line-clamp: 2; */
}


}

/*詳細*/

.blog h1 {
    font-size: 24px;
    line-height: 1.3;
    padding-top: 1rem;
}
.blog .mainimage {
    margin: 10px 0 20px 0;
}
.blog .mainimage img {
    width: 100%;
}

.blog .post_meta {
    padding: 7px 0;
}

@media screen and (min-width: 640px) {

.blog.single {
    width: 100%;
    max-width: 1100px;
    margin: 30px auto;
}

.blog.single .blog-box{
  display: flex;
  justify-content: space-around;
}
.blog.single .blog-box .image{
  width:40%;
}
.blog.single .blog-box .disc{
  width:55%;
}
.blog.single .image img{
width:100%;
}
    .blog h1 {
    font-size: 30px;
    line-height: 1.3;
}

    .blog .post_meta {
    padding: 14px 0;
    font-size: 16px;
}

}
