/*-------------------------------
---.introduction
-------------------------------*/

.introduction {
  margin-top: 0;
}

.introduction .page_title {
  margin-bottom: 2rem;
}

.introduction .lead {
  font-size: 1.4rem;
}


/*-------------------------------
---.terms
-------------------------------*/

.terms {
  grid-template-columns: 1fr;
  grid-gap: 0;
}

.terms .terms_title {
  width: min(22rem, 50%);
  margin-left: auto;
  margin-right: auto;
}

.terms .terms_list {
  display: grid;
  grid-template-columns: 1fr;
  grid-auto-rows: max-content;
  grid-gap: 1.5rem;
}

.terms .terms_list .item {
  background-size: 20%;
  background-position: top left !important;
  padding-top: 1rem !important;
}

.terms .terms_list .item.term01,
.terms .terms_list .item.term02,
.terms .terms_list .item.term03 {
  padding-left: 0;
  padding-right: 0;
  padding-bottom: 0;
}

.terms .terms_list .item.term04,
.terms .terms_list .item.term05 {
  padding-right: 0;
}

.terms .terms_list .item.term05 {
  margin-left: 0;
}

.terms .terms_title,
.terms .terms_list .item.term01,
.terms .terms_list .item.term02,
.terms .terms_list .item.term03,
.terms .terms_list .item.term04,
.terms .terms_list .item.term05,
.terms .terms_list .item.term06,
.terms .terms_list .item.term07 {
  display: block;
  grid-column: unset;
  grid-row: unset;
}

.terms .terms_list .item .illustration {
  width: 35%;
  height: auto;
  margin-left: auto;
}

.terms .terms_list .item .illustration img {
  height: auto;
}

.terms .term_title {
  font-size: 1.7rem;
  text-align: left;
  margin-top: calc(-1em - 1rem);
  padding-right: 35%;
}


/*-------------------------------
---.merits
-------------------------------*/

.merits {
  padding-top: 2rem;
  padding-bottom: 2rem;
  margin-bottom: 0;
}

.merits .merits_contents {
  grid-template-columns: 1fr;
}

.merits .merits_title {
  padding-right: 0;
  margin-top: 0;
}

.merits .merits_list .item {
  background-size: 17.5%;
  background-position: top 15% left !important;
  padding-top: 25%;
  padding-bottom: 9.5%;
  padding-left: 7.5% !important;
}

.merits .merits_list .item:nth-child(even) {
  padding-right: 0;
}

.merits .merits_list .item:first-child {
  background-position: top 5% left !important;
  padding-top: 15%;
}

.merits .merits_list .item:last-child {
  border-bottom: 5px dotted #fff;
}

.merits .merits_list .item:nth-child(2n+2) {
  border-right: none;
}

.merits .merit_title {
  font-size: 1.9rem;
  margin-bottom: 1rem;
}

.merits .merit_title::after {
  left: 10%;
  transform: unset;
  -webkit-transform: unset;
  -ms-transform: unset;
}

.merits .merit_title.emphasis {
  font-size: 2.2rem;
}

.merits .decoration {
  width: min(28rem, 100%);
  margin-top: 1rem;
}