.mainPost .topVisial {
  margin-bottom: 30px;
}

.subpost:not(:last-child) {
  margin-bottom: 50px;
}

.subpost h2 {
  font-size: 24px;
  font-weight: bold;
  line-height: 1.2;
  margin-bottom: 20px;
  border-bottom: 1px solid #333;
}

@media screen and (max-width: 767px) {
  .subpost h2 {
    font-size: 16px;
    padding: 0 3%;
  }
}

@media screen and (max-width: 767px) {
  .linkList {
    width: 94%;
    margin: 0 auto;
  }
}

.linkList li:not(:last-child) {
  margin-bottom: 15px;
}

@media screen and (max-width: 767px) {
  .linkList li:not(:last-child) {
    margin-bottom: 20px;
  }
}

.linkList li .linkBtn {
  width: 650px;
  background: #83091a;
  border-radius: 10px;
}

@media screen and (max-width: 1000px) {
  .linkList li .linkBtn {
    width: 100%;
  }
}

.linkList a {
  color: #fff;
  font-size: 21px;
  padding: 15px 60px 15px 25px;
  display: block;
  position: relative;
}

@media screen and (max-width: 767px) {
  .linkList a {
    font-size: 18px;
    padding: 15px 10% 15px 3%;
  }
}

@media screen and (max-width: 500px) {
  .linkList a {
    font-size: 13px;
  }
}

.linkList a:after {
  content: '';
  width: 30px;
  height: 30px;
  background: url("../images/btn_arrow01.png") no-repeat;
  position: absolute;
  top: 50%;
  left: 92%;
  margin-top: -15px;
}

@media screen and (max-width: 767px) {
  .linkList a:after {
    width: 25px;
    height: 25px;
    background-size: contain;
    left: 88%;
    margin-top: -13px;
  }
}

@media screen and (max-width: 500px) {
  .linkList a:after {
    width: 20px;
    height: 20px;
    margin-top: -10px;
  }
}

@media screen and (max-width: 767px) {
  .post01 .item01 a {
    padding: 10px 10% 10px 3%;
  }
}

@media screen and (max-width: 767px) {
  .post02 .item05 a {
    padding: 10px 10% 10px 3%;
  }
}

.post03 .linkBtn {
  margin-bottom: 10px;
}

.post03 p {
  font-size: 17px !important;
  line-height: 1.2;
}

@media screen and (max-width: 767px) {
  .post03 p {
    font-size: 13px !important;
  }
}
