@charset "utf-8";
/* ========== 解決事例 ========== */
.area-lp .area-cases {
  padding: calc(60 * var(--u)) calc(15 * var(--u));
  background: #f6fbef;
  font-family: "Noto Sans JP", sans-serif;
  letter-spacing: 0;
}
.area-lp .area-cases__inner {
  max-width: calc(1024 * var(--u));
  margin: 0 auto;
}
.area-lp .area-cases__title {
  margin: 0;
  color: #0e5a88;
  font-family: "Zen Old Mincho", serif;
  font-size: calc(26 * var(--u));
  font-weight: 400;
  letter-spacing: 0.2em;
  line-height: 1.6;
  text-align: center;
}

/* カード */
.area-lp .area-cases__list {
  display: grid;
  grid-template-columns: 1fr;
  gap: calc(16 * var(--u));
  margin: calc(30 * var(--u)) 0 0;
  padding: 0;
  list-style: none;
}
.area-lp .area-cases__card {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: calc(14 * var(--u));
  padding: calc(20 * var(--u));
  border: calc(1 * var(--u)) solid #dbe0de;
  border-radius: calc(12 * var(--u));
  background: #fff;
}
.area-lp .area-cases__area {
  margin: 0;
  padding: calc(4 * var(--u)) calc(12 * var(--u));
  border-radius: calc(4 * var(--u));
  background: #9bca61;
  color: #fff;
  font-size: calc(14 * var(--u));
  font-weight: 700;
  line-height: calc(20 * var(--u));
}
.area-lp .area-cases__card-title {
  margin: 0;
  color: #0e5a88;
  font-family: "Zen Old Mincho", serif;
  font-size: calc(18 * var(--u));
  font-weight: 400;
  line-height: 1.6;
}
.area-lp .area-cases__box {
  display: flex;
  flex-direction: column;
  gap: calc(4 * var(--u));
  width: 100%;
  padding: calc(14 * var(--u));
  border-radius: calc(6 * var(--u));
  box-sizing: border-box;
  font-size: calc(14 * var(--u));
}
.area-lp .area-cases__box--before { background: #f2f2f2; }
.area-lp .area-cases__box--after { background: #f6fbef; }
.area-lp .area-cases__box-label {
  margin: 0;
  color: #666;
  font-weight: 700;
  line-height: calc(20 * var(--u));
}
.area-lp .area-cases__box--after .area-cases__box-label { color: #0e5a88; }
.area-lp .area-cases__box-text {
  margin: 0;
  color: #333;
  line-height: calc(25 * var(--u));
}

/* 一覧ボタン */
.area-lp .area-cases__btn-wrap {
  margin-top: calc(32 * var(--u));
  text-align: center;
}
.area-lp .area-cases__btn {
  display: inline-block;
  padding: calc(18 * var(--u)) calc(48 * var(--u));
  border-radius: calc(40 * var(--u));
  background: #0e5a88;
  color: #fff;
  font-size: calc(16 * var(--u));
  font-weight: 700;
  line-height: calc(24 * var(--u));
  text-decoration: none;
  transition: opacity .3s;
}
.area-lp .area-cases__btn:hover { opacity: .8; }

@media (min-width: 992px) {
  .area-lp .area-cases {
    padding: calc(100 * var(--u)) calc(24 * var(--u));
  }
  .area-lp .area-cases__title {
    font-size: calc(40 * var(--u));
    letter-spacing: calc(8 * var(--u));
    line-height: calc(80 * var(--u));
  }
  /* 325px×3枚・間隔24px */
  .area-lp .area-cases__list {
    grid-template-columns: repeat(3, calc(325 * var(--u)));
    justify-content: center;
    gap: calc(24 * var(--u));
    margin-top: calc(40 * var(--u));
  }
  .area-lp .area-cases__card { padding: calc(28 * var(--u)); }
  .area-lp .area-cases__card-title {
    font-size: calc(20 * var(--u));
    line-height: calc(32 * var(--u));
  }
  .area-lp .area-cases__btn-wrap { margin-top: calc(40 * var(--u)); }
}
