@charset "utf-8";

/* public
============================================================ */
@media screen and (min-width: 812px) {
  .com-pagination {
    margin-top: 80px;
  }
}

@media screen and (max-width: 811px) {
  .com-pagination {
    margin-top: 4rem;
  }
}

/*
  File Name   : blog.css
  Description : �R���e���c�G���A����
*/

/* blog
============================================================ */

  .com-ttl-01 .en {
    display: block;
    margin-top: 10px;
    font-size: 1.6rem;
    opacity: .5;
    font-family:'brush script mt',cursive;
  }

  .blog__wrapper {
    display: flex;
    justify-content: space-between;
    align-content: flex-start;
    flex-wrap: wrap;
    width: 100%;
  }

  .blog__wrapper a {
    -webkit-transition: 0.3s ease-in-out;  
    -moz-transition: 0.3s ease-in-out;  
    -o-transition: 0.3s ease-in-out;
    -ms-transition: 0.3s ease-in-out;  
    transition: 0.3s ease-in-out;
    display: block;
  }

  .blog__wrapper a:hover {
    text-decoration: none;
    filter:alpha(opacity=70);
    -moz-opacity: 0.7;
    opacity: 0.7;
  }

  .blog__wrapper a:hover img {
    opacity: .7;
    filter: alpha(opacity=70);
  }

  .blog_item__warpper {
    /*display: grid;
    grid-template-columns: repeat(auto-fit, minmax(340px, 1fr));
    grid-gap: 40px;*/
    width: 720px;
    display: flex;
    justify-content: space-between;
    align-content: flex-start;
    flex-wrap: wrap;
    height: auto;
  }

  .blog_item__warpper > li {
    flex: 0 0 46.63%;
    max-width: 46.63%;
    margin-bottom: 20px;
  }


  .blog_item__warpper li a {
    display: block;
  }

  .blog_item__img {
    width: 100%;
    /*height: 190px;*/
    height: auto;
  }

  .blog_item__img img {
    width: 100%;
    height: auto;
  }

  .blog_item__title {
    margin-top: 20px;
    font-size: 1.8rem;
    font-weight: bold;
  }

  .blog_item__other {
    display: flex;
  }

  .blog_item__other_date {
    margin-right: 10px;
    height: 24px;
    line-height: 24px;
    font-size: 1.1rem;
  }

  .blog_item__other_category {
    display: flex;
    justify-content: center;
    align-items: center;
    margin-right: 5px;
    padding: 0 10px;
    height: 24px;
    background-color: #f2f6fa;
  }

  .blog_item__other_category span {
    font-size: 1.2rem;
    color: #00448d;
    font-weight: bold;
    display: inline-block;
  }

  .fa-chevron-right {
    display: inline-block;
    width: 7px;
    height: 7px;
    margin: 0;
    vertical-align: middle;
    border-top: 2px solid #1a4ea0;
    border-right: 2px solid #1a4ea0;
    transform-origin: center center;
    transform: rotate(45deg);
    box-sizing: border-box;
  }

  .fa-chevron-left {
    display: inline-block;
    width: 7px;
    height: 7px;
    margin: 0;
    vertical-align: middle;
    border-top: 2px solid #1a4ea0;
    border-right: 2px solid #1a4ea0;
    transform-origin: center center;
    transform: rotate(-135deg);
    box-sizing: border-box;
  }

  a:hover .fa-chevron-right,
  a:hover .fa-chevron-left {
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
  }



  @media screen and (max-width: 811px) {

    .blog_item__warpper {
      /*grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
      grid-gap: 40px;
      width: 100%;*/
    }

    .blog_item__warpper > li {
      margin: 0 0 20px;
    }
  
    .blog_item__img {
      margin: 0 auto;
      width: 100%;
      max-width: 340px;
      height: auto;
    }
  
    .blog_item__title {
      margin-top: 10px;
      font-size: .8rem;
      font-weight: bold;
    }
  
    .blog_item__other {
      margin-top: 10px;
      flex-wrap: wrap;
    }
  
    .blog_item__other_date {
      font-size: .6rem;
    }
  
    .blog_item__other_category span {
      font-size: .6rem;
    }
  }

  .blog_nav__wrapper {
    flex: 1;
    margin-left: 40px;
  }
  
  @media screen and (max-width: 811px) {

    .blog_nav__wrapper {
      display: none;
    }  
  }

  .blog_nav__wrapper dt {
    padding-bottom: 5px;
    font-size: 1.6rem;
    font-weight: bold;
    border-bottom: 3px solid #00448d;
  }

  .blog_nav__wrapper li {
    position: relative;
    padding: 15px 30px 15px 0;
    line-height: 1.2em;
    font-weight: bold;
    border-bottom: 1px solid #e1e7ed;
  }

  .blog_nav__category_list li::after {
    position: absolute;
    content: "";
    right: 0;
    top: 50%;
    /*transform: translateY(-50%);
    font-family: "Font Awesome 5 Free";
    content: '\f054';
    font-weight: 900;
    color: #00448d;*/

    display: inline-block;
    width: 7px;
    height: 7px;
    margin: -.1em .75em 0 0;
    vertical-align: middle;
    border-top: 2px solid #1a4ea0;
    border-right: 2px solid #1a4ea0;
    transform-origin: center center;
    transform: rotate(45deg);
    box-sizing: border-box;
  }

  .blog_nav__new {
    margin-top: 40px;
  }

  .blog_nav__new_list a {
    display: flex;
  }

  .blog_nav__new_img {
    width: 120px;
    height: 72px;
  }

  .blog_nav__new_text {
    flex: 1;
    margin-left: 20px;
  }

  .blog_nav__new_title {
    font-size: 1.4rem;
    line-height: 1.8rem;
    font-weight: bold;
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
  }

  .blog_nav__new_date {
    margin-top: 5px;
    font-size: 1.1rem;
  }

  .com-pagination {
    margin-top: 100px;
    width: 100%;
    display: flex;
    justify-content: center;
  }

  @media screen and (max-width: 811px) {
    .com-pagination {
      margin-top: 40px;
    } 
  }

  .com-pagination ul {
    display: flex;
    width: calc(60px * 6 + 50px);
  }

  .com-pagination li a {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 60px;
    height: 60px;
  } 

  .com-pagination li a:hover {
    color: #fff;
    text-decoration: none;
    background-color:#00448d; 
  }

  .com-pagination_arrow {
    border: 2px solid #00448d;
  }

  .com-pagination_no {    
    border: 1px solid #e6e6e6;
  }

  .com-pagination_no.current {    
    color: #fff;
    background-color: #00448d;
    border: 1px solid #00448d;
  }