@charset "utf-8";


/*  l-event
--------------------------------------------------*/
.l-event {
  padding-block: 5rem;
  border-radius: 20px;
  background: var(--white);
}
.event-contents {
  margin-top: 3.125rem;
}
.event-contents__item {
  width: calc(642 / 1344 * 100%);
}
.event-contents__item__thumnail {
  border-radius: 12px;
  overflow: hidden;
}
.event-contents__item__detail {
  position: relative;
  margin-top: 2rem;
  padding-left: 1.25rem;
}
.event-contents__item__detail::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 1px;
  height: 100%;
  background: var(--border-base);
}
.event-contents__item__detail__heading {
  font-size: clamp(1rem, 0.427rem + 1.1923vw, 1.5rem);
  line-height: 1.45;
  font-weight: 500;
  color: var(--base-color);
  letter-spacing: 0.02em;
}
.event-contents__item__detail__desc {
  font-size: clamp(0.875rem, 0.5885rem + 0.5961vw, 1.125rem);
  line-height: 1.45;
  letter-spacing: 0.02em;
  font-weight: 500;
  color: var(--brand-color);
  margin-top: 0.9375rem;
}
@media screen and (max-width: 768px){
  .l-event {
    padding-block: 3.125rem 3.125rem;
  }
  .event-contents {
    margin-top: 2.1875rem;
    gap: 1.5625rem 0;
  }
  .event-contents__item {
    width: 100%;
  }
  .event-contents__item__detail {
    margin-top: 0.625rem;
    padding-left: 0.9375rem;
  }
  .event-contents__item__detail__heading {
    font-size: clamp(0.8125rem, 0.0625rem + 3.75vw, 1rem);
  }
  .event-contents__item__detail__desc {
    font-size: clamp(0.6875rem, -0.0625rem + 3.75vw, 0.875rem);
    margin-top: 0.3125rem;
  }
}





/*  l-equipment
--------------------------------------------------*/
.l-equipment {
  padding-block: 5rem 4.6875rem;
}
.equipment-contents {
  grid-template-columns: repeat(2,1fr);
  gap: clamp(1.5625rem, -0.2282rem + 3.7258vw, 3.125rem) clamp(1.875rem, -0.2738rem + 4.4709vw, 3.75rem);
  margin-top: 3.75rem;
}
.equipment-contents__item {
  position: relative;
}
.equipment-contents__item__photo {
  border-radius: 12px;
  overflow: hidden;
}
.equipment-contents__item__detail {
  margin-top: 1.375rem;
}
.equipment-contents__item__detail__desc {
  font-size: clamp(0.9375rem, 0.7226rem + 0.4471vw, 1.125rem);
  line-height: 1.75;
  letter-spacing: 0.02em;
  color: var(--base-color);
  font-weight: 500;
}
@media screen and (min-width: 900px) {
  .equipment-head__jpTtl {
    position: absolute;
    top: 0;
    left: 0;
    margin-top: 147px;
    margin-left: 412px;
  }
}
@media screen and (max-width: 768px){
  .l-equipment {
    padding-block: 3.125rem;
  }
  .equipment-contents {
    grid-template-columns: repeat(1,1fr);
    gap: 1.875rem 0;
    margin-top: 2.5rem;
  }
  .equipment-contents__item__detail {
    margin-top: 0.9375rem;
  }
  .equipment-contents__item__detail__desc {
    font-size: clamp(0.75rem, 0rem + 3.75vw, 0.9375rem);
    line-height: 1.5;
  }
}




/*  l-after
--------------------------------------------------*/
.l-after {
  padding-block: 5rem;
  border-radius: 20px;
  background: var(--white);
}
.after-contents {
  margin-top: 3.75rem;
  padding-top: 3.75rem;
  border-top: solid 1px var(--border-base);
}
.after-article {
  position: relative;
  width: 100%;
}
.after-article + .after-article {
  margin-top: 3.75rem;
  padding-top: 3.75rem;
  border-top: solid 1px var(--border-base);
}
.after-article__head {
  width: 100%;
}
.after-article__head__ttl {
  font-size: clamp(1rem, 0.7135rem + 0.5961vw, 1.25rem);
  line-height: 1;
  letter-spacing: 0.02em;
  color: var(--base-color);
  font-weight: 500;
}
.after-article__head__ttl i {
  color: var(--brand-color);
}
.after-article__head__heading {
  font-size: clamp(1.125rem, 0.6952rem + 0.8942vw, 1.5rem);
  line-height: 1.75;
  letter-spacing: 0.02em;
  color: var(--base-color);
  font-weight: 500;
  margin-top: 1.875rem;
}
.after-article__head__desc {
  font-size: clamp(0.875rem, 0.8034rem + 0.149vw, 0.9375rem);
  line-height: 1.75;
  letter-spacing: 0.02em;
  margin-top: 1.0625rem;
}
.after-article__detail {
  margin-top: 2.1875rem;
}
.after-article__detail__note {
  font-size: clamp(0.625rem, 0.5534rem + 0.149vw, 0.6875rem);
  line-height: 1.81818182;
  letter-spacing: 0.02em;
  margin-top: 0.3125rem;
}
/* warranty */
.after-article[data-name="warranty"] .after-article__detail {
  border: solid 1px var(--border-base);
  border-radius: 12px;
  padding: clamp(0.9375rem, -0.1369rem + 2.2355vw, 1.875rem) clamp(0.9375rem, -0.1369rem + 2.2355vw, 1.875rem) 0.625rem;
}
/* partner */
.after-article[data-name="partner"] .after-article__detail {
  grid-template-columns: repeat(3, 1fr);
  gap: clamp(1.0625rem, -0.1552rem + 2.5335vw, 2.125rem) clamp(0.625rem, -0.0913rem + 1.4903vw, 1.25rem);
}
.after-article[data-name="partner"] .after-article__detail__item {
  position: relative;
}
.after-article[data-name="partner"] .after-article__detail__item__photo {
  border-radius: 12px;
  overflow: hidden;
}
.after-article[data-name="partner"] .after-article__detail__item__detail {
  margin-top: 0.8125rem;
}
.after-article[data-name="partner"] .after-article__detail__item__detail__desc {
  font-size: clamp(0.9375rem, 0.7226rem + 0.4471vw, 1.125rem);
  line-height: 1.75;
  letter-spacing: 0.02em;
  color: var(--base-color);
  font-weight: 500;
}
@media screen and (max-width: 768px){
  .l-after {
    padding-block: 3.125rem 3.125rem;
  }
  .after-contents {
    margin-top: 1.25rem;
    padding-top: 1.5625rem;
  }
  .after-article + .after-article {
    margin-top: 1.875rem;
    padding-top: 1.875rem;
  }
  .after-article__head__ttl {
    font-size: clamp(0.8125rem, 0.0625rem + 3.75vw, 1rem);
  }
  .after-article__head__heading {
    font-size: clamp(0.875rem, -0.125rem + 5vw, 1.125rem);
    margin-top: 1.25rem;
  }
  .after-article__head__desc {
    font-size: clamp(0.6875rem, -0.0625rem + 3.75vw, 0.875rem);
    margin-top: 0.625rem;
  }
  .after-article__detail {
    margin-top: 2.1875rem;
  }
  .after-article__detail__note {
    font-size: 0.625rem;
  }
  /* warranty */
  .after-article[data-name="warranty"] .after-article__detail {
    padding: 0.9375rem;
  }
  /* partner */
  .after-article[data-name="partner"] .after-article__detail {
    grid-template-columns: repeat(1,1fr);
    gap: 1.875rem 0;
  }
  .after-article[data-name="partner"] .after-article__detail__item__detail {
    margin-top: 0.9375rem;
  }
  .after-article[data-name="partner"] .after-article__detail__item__detail__desc {
    font-size: clamp(0.75rem, 0rem + 3.75vw, 0.9375rem);
    line-height: 1.5;
  }
}