@charset "UTF-8";
.sec-intro {
  --u: clamp(0.72222px, calc((100vw - 66px) / 1080), 1px);
  padding: 103.27px 0 115.5px;
  font-feature-settings: normal;
  text-spacing-trim: space-all;
  text-autospace: no-autospace;
  line-break: strict;
  background-color: #F8F8F8;
  background-image: url("../../assets/img/intro/bg-grid.webp");
  background-repeat: repeat;
  background-position: 0 -2.75px;
  background-size: 10px 10px;
}
.intro-head {
  width: min(1080px, 100% - 48px);
  margin: 0 auto;
  text-align: center;
}
.intro-title {
  margin: 0;
  font-family: var(--font-heading);
  font-weight: 400;
  font-size: 40px;
  line-height: 1.6;
  letter-spacing: 0;
  color: var(--c-text);
}
.intro-title-lg {
  font-size: 48px;
}
.intro-title-br {
  display: none;
}
.intro-divider {
  display: block;
  width: 80px;
  height: 1px;
  margin: 28.93px auto 0;
  background-color: #666666;
}
.intro-lead {
  width: min(1136px, 100% - 48px);
  margin: 39px auto 0;
  font-family: var(--font-body);
  font-weight: 300;
  font-size: clamp(15px, calc((100vw - 66px) * 0.024557), 18px);
  line-height: 2;
  letter-spacing: 0.04em;
  text-align: center;
  color: var(--c-text);
}
.intro-cards {
  width: min(1080px, 100% - 48px);
  margin: 59.5px auto 0;
  display: flex;
  align-items: flex-start;
  gap: calc(80 * var(--u));
}
.intro-card {
  position: relative;
  box-sizing: border-box;
  flex: 1 1 0;
  min-width: 0;
  max-width: calc(500 * var(--u));
  min-height: calc(283 * var(--u));
  padding: calc(28.07 * var(--u)) calc(34.82 * var(--u)) calc(57.61 * var(--u)) calc(37.18 * var(--u));
  background-color: #FFFFFF;
  border: 1px solid #CCCCCC;
  border-radius: 8px;
}
.intro-label {
  position: relative;
  height: calc(35 * var(--u));
  margin: 0 0 0 calc(8 * var(--u));
}
.intro-num {
  position: absolute;
  left: 0;
  top: calc(-9.7296 * var(--u));
  font-family: var(--font-heading);
  font-weight: 400;
  font-size: calc(48 * var(--u));
  line-height: 1;
  letter-spacing: 0;
  white-space: nowrap;
}
.intro-en {
  position: absolute;
  left: calc(67 * var(--u));
  top: calc(4.1352 * var(--u));
  font-family: var(--font-heading);
  font-weight: 400;
  font-size: calc(24 * var(--u));
  line-height: 1;
  letter-spacing: 0;
  white-space: nowrap;
}
.intro-rule {
  display: block;
  width: calc(200 * var(--u));
  height: calc(2 * var(--u));
  margin-top: calc(13 * var(--u));
}
.intro-card-title {
  margin: calc(22 * var(--u)) 0 0 calc(8 * var(--u));
  font-family: var(--font-heading);
  font-weight: 400;
  font-size: calc(32 * var(--u));
  line-height: 2;
  letter-spacing: 0;
  color: var(--c-text);
}
.intro-dash {
  display: block;
  height: 1px;
  margin-top: calc(6.5 * var(--u));
  background-image: repeating-linear-gradient(to right, currentColor 0, currentColor 2px, transparent 2px, transparent 4px);
}
.intro-card-body {
  margin: calc(15.82 * var(--u)) 0 0 calc(8 * var(--u));
  font-family: var(--font-body);
  font-weight: 300;
  font-size: calc(18 * var(--u));
  line-height: 2;
  letter-spacing: 0;
  color: var(--c-text);
}
.intro-card-bar {
  position: absolute;
  left: -1px;
  right: -1px;
  bottom: -1px;
  height: calc(16 * var(--u));
  border-radius: 0 0 8px 8px;
}
.intro-body-spbr {
  display: none;
}
.intro-card--included .intro-num,
.intro-card--included .intro-en {
  color: #9BB3CD;
}
.intro-card--included .intro-rule,
.intro-card--included .intro-card-bar {
  background-color: #A4BBD2;
}
.intro-card--included .intro-dash {
  color: #A4BBD2;
}
.intro-card--excluded .intro-num,
.intro-card--excluded .intro-en {
  color: #DDD2C3;
}
.intro-card--excluded .intro-rule,
.intro-card--excluded .intro-card-bar {
  background-color: #DDD2C3;
}
.intro-card--excluded .intro-dash {
  color: #DDD2C3;
}
@media (max-width: 767px) {
  .sec-intro {
    --u: 1px;
    padding: 65.9244px 0 72px;
    background-position: 0 0;
  }
  .intro-head {
    width: auto;
    margin: 0 24px;
  }
  .intro-title {
    font-size: 28px;
  }
  .intro-title-lg {
    font-size: 28px;
  }
  .intro-title-br {
    display: inline;
  }
  .intro-divider {
    width: 64px;
    margin-top: 21.4756px;
  }
  .intro-lead {
    width: auto;
    margin: 39px 24px 0;
    font-size: 16px;
    letter-spacing: 0.01em;
    text-align: justify;
  }
  .intro-cards {
    width: auto;
    margin: 45px 16px 0;
    display: block;
  }
  .intro-card {
    width: min(308px, 100%);
    max-width: none;
    margin: 0 auto;
    min-height: 264px;
    padding: 29px 21px 36px 23px;
  }
  .intro-card + .intro-card {
    margin-top: 44px;
  }
  .intro-card--excluded {
    min-height: 240px;
    padding-bottom: 44px;
  }
  .intro-label {
    height: 23px;
    margin-left: 0;
  }
  .intro-num {
    top: -6.4864px;
    font-size: 32px;
  }
  .intro-en {
    left: 46px;
    top: 2.757px;
    font-size: 16px;
  }
  .intro-rule {
    width: 200px;
    height: 2px;
    margin-top: 24.07px;
  }
  .intro-card-title {
    margin: 19.93px 0 0 0;
    font-size: 24px;
  }
  .intro-dash {
    margin-top: 7.5px;
  }
  .intro-card-body {
    margin: 7.5px 0 0 0;
    font-size: 16px;
  }
  .intro-card-bar {
    bottom: 0;
    height: 10px;
  }
  .intro-body-spbr {
    display: inline;
  }
}
.intro-lead { text-wrap: pretty; }
