section .wrap .contents h2 {
  margin-bottom: 4em;
}
section .wrap .contents > .img {
  font-size: 3rem;
  overflow: hidden;
  margin-bottom: 90px;
  -webkit-clip-path: polygon(1em 0, calc(100% - 1em) 0, 100% 1em, 100% calc(100% - 1em), calc(100% - 1em) 100%, 1em 100%, 0 calc(100% - 1em), 0 1em);
  clip-path: polygon(1em 0, calc(100% - 1em) 0, 100% 1em, 100% calc(100% - 1em), calc(100% - 1em) 100%, 1em 100%, 0 calc(100% - 1em), 0 1em);
}
section .wrap .contents > .img img {
  display: block;
}
section .wrap .contents .contents_inner {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  grid-gap: 60px 5%;
}
section .wrap .contents .contents_inner li h3 {
  font-size: 2.4rem;
  color: var(--color_main);
  line-height: 1.5;
  font-weight: 500;
  letter-spacing: 0.01em;
  border-bottom: 1px solid var(--color_main);
  margin-bottom: 2em;
  padding-bottom: 1em;
}
section .wrap .contents .contents_inner li p {
  font-size: 1.8rem;
  line-height: 2;
  letter-spacing: 0.01em;
}
@media screen and (max-width: 1024px) {
  section .wrap .contents .contents_inner li h3 {
    font-size: 2.2rem;
    margin-bottom: 1.5em;
  }
  section .wrap .contents .contents_inner li p {
    font-size: 1.6rem;
  }
}
@media screen and (max-width: 768px) {
  section .wrap .contents h2 {
    margin-bottom: 2.5em;
  }
  section .wrap .contents > .img {
    font-size: 1rem;
    margin-bottom: 60px;
  }
  section .wrap .contents .contents_inner {
    grid-template-columns: 1fr;
    grid-gap: 40px;
  }
  section .wrap .contents .contents_inner li h3 {
    padding-bottom: 0.66em;
    margin-bottom: 1em;
  }
}