#article .page_maincontents .photo_cate ul,
#article .page_maincontents ul.photo_list {
  margin: 0;
  padding: 0;
}
#article .page_maincontents .photo_cate ul li,
#article .page_maincontents ul.photo_list li {
  padding: 0;
}
#article .page_maincontents .photo_cate ul li::after,
#article .page_maincontents ul.photo_list li::after {
  background: none;
}
#article .page_maincontents ul.photo_list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 30px 20px;
}
@media (min-width: 992px) {
  #article .page_maincontents ul.photo_list {
    gap: 30px;
  }
}
#article .page_maincontents ul.photo_list li {
  width: calc((100% - 20px) / 2);
}
@media (min-width: 992px) {
  #article .page_maincontents ul.photo_list li {
    width: calc((100% - 60px) / 3);
  }
}
#article .page_maincontents ul.photo_list li .img {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  background: #e9ecef;
}
#article .page_maincontents ul.photo_list li .img img {
  width: 100%;
  max-width: 100% !important;
  margin: 0 !important;
  height: auto;
}
#article .page_maincontents ul.photo_list li .txt span {
  display: block;
  color: #fff;
  text-align: center;
  font-size: 1.4rem;
}
#article .page_maincontents ul.photo_list li .txt span.attribute1 {
  background: #218059;
}
#article .page_maincontents ul.photo_list li .txt span.attribute2 {
  background: #2E4FB5;
}
#article .page_maincontents ul.photo_list li .txt span.attribute3 {
  background: #9F2F74;
}
#article .page_maincontents ul.photo_list li .txt time.date {
  display: block;
  margin-top: 10px;
  color: #2E4FB5;
  font-size: 1.3rem;
}
@media (min-width: 992px) {
  #article .page_maincontents ul.photo_list li .txt time.date {
    font-size: 1.4rem;
  }
}
#article .page_maincontents ul.photo_list li .txt p {
  margin-bottom: 0;
}
#article .page_maincontents ul.photo_list li .txt p.txt {
  color: #212529;
}
#article .page_maincontents ul.photo_list li a {
  display: block;
}
#article .page_maincontents ul.photo_list li a:hover {
  text-decoration: none;
}
#article .page_maincontents .photo_cate {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin-bottom: 20px;
  gap: 10px 0;
}
@media (min-width: 576px) {
  #article .page_maincontents .photo_cate {
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 0;
  }
}
#article .page_maincontents .photo_cate ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 3px;
  width: 100%;
}
@media (min-width: 576px) {
  #article .page_maincontents .photo_cate ul {
    width: auto;
  }
}
#article .page_maincontents .photo_cate ul li {
  width: 100%;
}
@media (min-width: 576px) {
  #article .page_maincontents .photo_cate ul li {
    width: inherit;
  }
}
#article .page_maincontents .photo_cate ul li a, #article .page_maincontents .photo_cate ul li span {
  display: block;
  font-weight: bold;
  padding: 5px;
  border-radius: 10px;
  text-align: center;
  -webkit-transition: 0.3s ease;
  transition: 0.3s ease;
}
@media (min-width: 768px) {
  #article .page_maincontents .photo_cate ul li a, #article .page_maincontents .photo_cate ul li span {
    width: 100px;
  }
}
#article .page_maincontents .photo_cate ul li span {
  background: #2E4FB5;
  color: #fff;
}
#article .page_maincontents .photo_cate ul li a {
  background: #F2F2F2;
  color: #2E4FB5;
  text-decoration: none;
}
#article .page_maincontents .photo_cate ul li a:hover {
  background: #2E4FB5;
  color: #fff;
}
#article .page_maincontents .photo_cate .pagenation {
  margin: 0;
}

.photo_date {
  text-align: right;
}
.photo_date span {
  background: #EBEEFA;
  display: inline-block;
  padding: 5px 10px;
  border-radius: 10px;
  font-size: 1.4rem;
}