div.newslist{
    display: flex;
    flex-wrap: wrap;
    row-gap: 1.5em;
    column-gap: 10px;
    margin-top: 1em;

}
dl.news_item{
    display: block;
    width: calc(33% - 10px);
    padding: 10px;
    padding-bottom: 20px;
    border-radius: 8px;
    cursor: pointer;
}
dl.news_item:hover{
    padding: 9px;
    padding-bottom: 19px;
    border:solid 1px #ccc;
}
dl.news_item img{
    object-fit: cover;
    aspect-ratio: 1 / 1;
    width: 100%;
    border-radius: 8px;
    margin-bottom: 8px;
}
dl.news_item news_title{
    display: block;
    font-size: 90% !important;
    line-height: 1.3;
    margin-bottom: 0.5em; 
}
dl.news_item brand{
    display: block;
    text-align: right;
    font-size: 80%;
}
@media screen and (max-width: 640px) {
    div.newslist{
        display: block;
      row-gap: 0px;
      column-gap: 0;


    }
      dl.news_item {
          width: 100%;
          display: block;
          border-bottom: dotted 1px #666;
          padding-bottom: 10px;
          margin-bottom: 10px;
          min-height: 140px;
      }
      
      dl.news_item img {
          width: 120px;
          height: 120px;
          margin-bottom: 0;
          display: block;
          float: left;
      }
      
      dl.news_item news_title {
          width: calc(100% - 130px);
          font-size: 90%;
          margin-left: 130px;
          margin-bottom: 1em;
      }
      
      dl.news_item date {
          width: calc(100% - 130px);
          margin-left: auto;
          font-size: 80%;
      }
      
      .news_item brand {
          width: calc(100% - 130px);
          margin-left: auto;
      }
  }
/*------*/
.contents-full{
    float: none !important;
    width:100% !important;
}
div.caption{
    display: block;
    margin: 1em;
    padding: 1em 0;
    line-height: 150%;
}
.pdf_link{
    display: block;
    text-align: center;
    margin: 1.5em 0;
}
.hasshin{
    display: block;
    padding: 2em 0;
    text-align: center;
    background-color: #efefef;
}