.special {
  padding-top: 1.875rem;
  padding-bottom: 1.875rem;
}
.special h2 {
  font-size: clamp(1.75rem, 4vw, 3.75rem);
}
.special-block {
  padding-top: 2.5rem;
}
.special-block .d-flex {
  margin-left: -0.625rem;
  margin-right: -0.625rem;
  row-gap: 1.25rem;
}
.special-block .bx {
  padding-left: 0.625rem;
  padding-right: 0.625rem;
  flex: 0 0 100%;
  max-width: 100%;
}
.special-block .bx-fl {
  display: flex;
  flex-wrap: wrap;
  margin-left: -0.625rem;
  margin-right: -0.625rem;
  row-gap: 1.25rem;
}
.special-block .bx-item {
  padding-left: 0.625rem;
  padding-right: 0.625rem;
  flex: 0 0 100%;
  max-width: 100%;
}
.special-block .image {
  position: relative;
  overflow: hidden;
  height: 100%;
  border-radius: 1.25rem;
  -webkit-border-radius: 1.25rem;
  -moz-border-radius: 1.25rem;
  -ms-border-radius: 1.25rem;
  -o-border-radius: 1.25rem;
}
.special-block .image img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.special-box {
  position: relative;
  background-color: #F6F6F6;
  border-radius: 1.25rem;
  -webkit-border-radius: 1.25rem;
  -moz-border-radius: 1.25rem;
  -ms-border-radius: 1.25rem;
  -o-border-radius: 1.25rem;
  padding: 1.875rem 1.25rem;
  height: 100%;
}
.special-box .top {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  min-height: 3.125rem;
  margin-bottom: 1.25rem;
}
.special-box .icon {
  width: 48px;
}
.special-box .icon img {
  margin: 0 auto;
}
.special-box .name {
  margin-left: 0.9375rem;
  color: #000;
  font-size: 1.25rem;
  font-weight: 600;
  flex: 0 0 calc(100% - 63px);
  max-width: calc(100% - 63px);
}
.special-box p {
  margin: 0 0 1.25rem;
  color: #000;
  font-weight: 400;
  font-size: 0.875rem;
}
.special-box p:last-child {
  margin-bottom: 0;
}

@media (min-width: 680px) {
  .special-block .bx-item {
    flex: 0 0 50%;
    max-width: 50%;
  }
}
@media (min-width: 768px) {
  .special {
    padding-top: 4.375rem;
    padding-bottom: 4.375rem;
  }
  .special-box p {
    font-size: 1rem;
  }
}
@media (min-width: 1200px) {
  .special-block .d-flex {
    flex-direction: row-reverse;
  }
  .special-block .bx {
    flex: 0 0 62%;
    max-width: 62%;
  }
  .special-block .bx:first-child {
    flex: 0 0 38%;
    max-width: 38%;
  }
}
@media (min-width: 1440px) {
  .special-block .bx {
    flex: 0 0 50%;
    max-width: 50%;
  }
  .special-block .bx:first-child {
    flex: 0 0 50%;
    max-width: 50%;
  }
  .special-box .name {
    font-size: 1.4375rem;
  }
}
@media (min-width: 1600px) {
  .special-box {
    padding-left: 2.5rem;
    padding-right: 2.5rem;
  }
}/*# sourceMappingURL=special.css.map */