@charset "UTF-8";
/* -----------------------------------------------
content__wrap
----------------------------------------------- */
.info__wrap h2 {
  letter-spacing: 0.14em;
  font-weight: normal;
}
.info__wrap span.cat {
  letter-spacing: 0;
  font-weight: 500;
  display: block;
}
.info__wrap dl {
  display: -webkit-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-justify-content: flex-start;
	justify-content: flex-start;
	-webkit-align-items: flex-start;
	align-items: flex-start;
}
.info__wrap dt,
.info__wrap dd {
  letter-spacing: 0.14em;
}
.info__wrap dd a {
  text-decoration: underline;
  word-break: break-all;
}
.desc__wrap .heading h2 {
  letter-spacing: 0.16em;
  font-weight: normal;
}
.desc__wrap .text p {
  letter-spacing: 0.08em;
}
.img__wrap p {
  margin-top: 0.5em;
  line-height: 1.8;
}

@media all and (max-width: 768px) {
  .content__wrap {
    margin-top: 45px;
  }
  .eyecatch {
    width: 100vw;
    margin: 0 calc(50% - 50vw);
  }
  .info__wrap {
    margin-top: 60px;
  }
  .info__wrap h2 {
    font-size: 1.8rem;
    line-height: 1.8;
  }
  .info__wrap span.cat {
    font-size: 1.2rem;
    line-height: 1;
    margin-top: 0.8em;
  }
  .info__wrap dl {
    margin-top: 28px;
  }
  .info__wrap dt,
  .info__wrap dd {
    font-size: 1.2rem;
    line-height: 1.75;
  }
  .info__wrap dt:nth-of-type(n + 2),
  .info__wrap dd:nth-of-type(n + 2) {
    margin-top: 0.55em;
  }
  .info__wrap dt {
    width: 9.1em;
    padding-right: 1em;
  }
  .info__wrap dd {
    width: calc(100% - 9.1em);
  }
  .desc__wrap {
    margin-top: 67px;
  }
  .desc__wrap .heading h2 {
    font-size: 1.6rem;
    line-height: 1.62;
  }
  .desc__wrap .text {
    margin-top: 20px;
  }
  .desc__wrap .text p {
    font-size: 1.2rem;
    line-height: 2.16;
  }
  .img__wrap {
    margin-top: 63px;
  }
  .img__wrap * + figure {
    margin-top: 22px;
  }
  .img__wrap p {
    font-size: 1.2rem;
  }
}

@media all and (min-width: 769px) {
  .content__wrap {
    margin-top: 60px;
  }
  .info__wrap {
    margin-top: 118px;
    margin-left: 6.2%;
  }
  .info__wrap h2 {
    font-size: 1.8rem;
    line-height: 1.8;
  }
  .info__wrap span.cat {
    font-size: 1.2rem;
    line-height: 1;
    margin-top: 0.8em;
  }
  .info__wrap dl {
    margin-top: 55px;
  }
  .info__wrap dt,
  .info__wrap dd {
    font-size: 1.4rem;
    line-height: 1.8;
  }
  .info__wrap dt:nth-of-type(n + 2),
  .info__wrap dd:nth-of-type(n + 2) {
    margin-top: 0.55em;
  }
  .info__wrap dt {
    width: 9.1em;
    padding-right: 1em;
  }
  .info__wrap dd {
    width: calc(100% - 9.1em);
  }
  .desc__wrap {
    margin-top: 108px;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    -webkit-align-items: flex-start;
    align-items: flex-start;
  }
  .desc__wrap .heading {
    width: calc(389px + 20px);
    margin-right: 20px;
    margin-bottom: 10px;
  }
  .desc__wrap .heading h2 {
    font-size: 2.2rem;
    line-height: 1.68;
  }
  .desc__wrap .text {
    width: 579px;
  }
  .desc__wrap .text p {
    font-size: 1.6rem;
    line-height: 2;
  }
  .img__wrap {
    margin-top: 123px;
  }
  .img__wrap * + figure {
    margin-top: 32px;
  }
  .img__wrap p {
    font-size: 1.4rem;
  }
}

/* ページネーション */
.single__pagination {
  display: -webkit-flex;
	display: flex;
	-webkit-justify-content: space-between;
	justify-content: space-between;
	-webkit-align-items: flex-end;
	align-items: flex-end;
}
.single__pagination a {
  line-height: 1;
  letter-spacing: 0.04em;
  font-weight: 500;
  position: relative;
  display: inline-block;
}
.single__pagination .prev a::before,
.single__pagination .next a::before {
  content: '';
  background-color: #000;
  position: absolute;
}
.single__pagination .all a::before {
  content: '';
  background-color: #e8e900;
  position: absolute;
}
.single__pagination .prev a::after,
.single__pagination .next a::after {
  content: '';
  width: 0;
  height: 0;
  border-style: solid;
  border-top: 0;
  transform: rotate(135deg);
  position: absolute;
}
.single__pagination .prev a::after {
  transform: rotate(-135deg);
}
.single__pagination .next a::after {
  transform: rotate(135deg);
}

@media all and (max-width: 768px) {
  .single__pagination {
    margin-top: 67px;
  }
  .single__pagination .prev,
  .single__pagination .next {
    min-width: 80px;
  }
  .single__pagination .prev a,
  .single__pagination .next a {
    font-size: 1.2rem;
    padding-bottom: 0.5em;
    width: 100%;
  }
  .single__pagination .prev a {
    padding-left: 1.4em;
  }
  .single__pagination .next a {
    padding-right: 1.4em;
  }
  .single__pagination .all a {
    font-size: 1.6rem;
    padding-right: 0.3em;
    padding-left: 0.3em;
    padding-bottom: 0.5em;
  }
  .single__pagination .prev a::before,
  .single__pagination .next a::before {
    width: 100%;
    height: 2px;
    bottom: 0;
    left: 0;
  }
  .single__pagination .all a::before {
    width: 100%;
    height: 5px;
    bottom: 0;
    left: 0;
  }
  .single__pagination .prev a::after {
    border-right: 7px solid transparent;
    border-left: 7px solid transparent;
    border-bottom: 7px solid #e8e900;
    bottom: 0.6em;
    left: -0.3em;
  }
  .single__pagination .next a::after {
    border-right: 7px solid transparent;
    border-left: 7px solid transparent;
    border-bottom: 7px solid #e8e900;
    bottom: 0.6em;
    right: -0.3em;
  }
}

@media all and (min-width: 769px) {
  .single__pagination {
    margin-top: 122px;
  }
  .single__pagination .prev,
  .single__pagination .next {
    min-width: 94px;
  }
  .single__pagination .prev a,
  .single__pagination .next a {
    font-size: 1.4rem;
    padding-bottom: 0.5em;
    width: 100%;
  }
  .single__pagination .prev a {
    padding-left: 1.4em;
  }
  .single__pagination .next a {
    padding-right: 1.4em;
  }
  .single__pagination .all a {
    font-size: 2.4rem;
    padding-right: 0.3em;
    padding-left: 0.3em;
    padding-bottom: 0.45em;
  }
  .single__pagination .prev a::before,
  .single__pagination .next a::before {
    width: 100%;
    height: 2px;
    bottom: 0;
    left: 0;
  }
  .single__pagination .all a::before {
    width: 100%;
    height: 5px;
    bottom: 0;
    left: 0;
  }
  .single__pagination .prev a::after {
    border-right: 7px solid transparent;
    border-left: 7px solid transparent;
    border-bottom: 7px solid #e8e900;
    bottom: 0.6em;
    left: -0.3em;
  }
  .single__pagination .next a::after {
    border-right: 7px solid transparent;
    border-left: 7px solid transparent;
    border-bottom: 7px solid #e8e900;
    bottom: 0.6em;
    right: -0.3em;
  }
}