/* CSS Document */
.spmask {
  display: inline-block;
}

.spmask-inline {
  display: inline;
}

.sponly {
  display: none;
}

@media (max-width: 767px) {
  .spmask {
    display: none;
  }
  .spmask-inline {
    display: none;
  }
  .sponly {
    display: block;
  }
}
/*------------------------------*/
.contentsMv {
  height: 50rem;
}
@media screen and (max-width: 767px) {
  .contentsMv {
    height: 34rem;
  }
}
.contentsMv .polygon .right, .contentsMv .polygon .left {
  background-size: contain;
}
@media screen and (max-width: 767px) {
  .contentsMv .polygon .left {
    display: none;
  }
}

.contentsMv_catch {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  left: 6rem;
  transform: translate(0, -50%);
  width: auto;
}
@media screen and (max-width: 767px) {
  .contentsMv_catch {
    left: 2rem;
    right: 2rem;
  }
}
.contentsMv_catch p.contentsMv_catch-en {
  font-size: 3.2rem;
}
@media screen and (max-width: 767px) {
  .contentsMv_catch p.contentsMv_catch-en {
    font-size: 2.4rem;
  }
}
.contentsMv_catch h1 {
  text-align: left;
  font-size: 6rem;
  margin-bottom: 2rem;
}
@media screen and (max-width: 767px) {
  .contentsMv_catch h1 {
    font-size: 4rem;
  }
}

/*------------------------------*/
.data {
  padding-block: 0 10rem;
}
@media screen and (max-width: 767px) {
  .data {
    padding-block: 0 14rem;
  }
}
.data .container {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: min(3vw, 36px);
}
@media screen and (max-width: 767px) {
  .data .container {
    grid-template-columns: repeat(2, 1fr);
    gap: calc(min(3vw, 36px) + 13.5vw) min(3vw, 36px);
  }
}
.data .container li {
  width: 100%;
  position: relative;
  z-index: 1;
  background-color: #fff;
  box-shadow: 0 0 12px -4px #9ba7ae;
  padding-block: min(3.3333333333vw, 40px);
}
@media screen and (max-width: 767px) {
  .data .container li {
    scale: 1.5;
    transform-origin: 0 0;
    width: 66.6666666667%;
  }
}
.data .container li .image {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-inline: auto;
}
.data .container li .column-wrap {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  align-items: center;
  row-gap: 2.5rem;
  height: 100%;
}
@media screen and (max-width: 767px) {
  .data .container li .column-wrap {
    row-gap: 1rem;
  }
}
.data .container li .row-wrap {
  display: grid;
  grid-template-columns: auto auto auto auto;
  grid-template-rows: auto auto;
}
.data .container li .row-wrap .row {
  display: grid;
  grid-template-columns: subgrid;
  grid-column: span 4;
}
.data .container li .row-wrap .text {
  display: grid;
  grid-template-columns: subgrid;
  grid-column: span 3;
}
.data .container li .text {
  display: flex;
  align-items: flex-end;
}
.data .container li .text .title, .data .container li .text .unit {
  font-size: min(2.5vw, 30px);
  font-weight: 600;
  color: var(--main);
  display: inline-block;
  line-height: 1;
  text-align: right;
}
.data .container li .text .countUp {
  font-size: min(7.1666666667vw, 86px);
  font-weight: 700;
  color: #c60105;
  line-height: 0.75;
  letter-spacing: -0.025em;
  padding-inline: 0 0.1em;
  text-align: right;
}
.data .container li p.sub-title {
  font-size: min(1.75vw, 21px);
  font-weight: 600;
  color: var(--main);
  text-align: center;
}
.data .container li p.caption {
  position: absolute;
  background-color: var(--main);
  border-radius: 100vmax;
  display: inline-block;
  font-size: min(1.1666666667vw, 14px);
  color: #fff;
  font-weight: 600;
  padding: min(0.5vw, 6px) min(2.5vw, 30px) min(0.4166666667vw, 5px);
  white-space: nowrap;
}
.data .container li .i01 {
  width: min(6vw, 72px);
}
.data .container li .i02 {
  width: min(10.5vw, 126px);
  margin-top: min(3vw, 36px);
}
.data .container li .i03a {
  width: min(2.6666666667vw, 32px);
}
.data .container li .i03b {
  width: min(3.75vw, 45px);
}
.data .container li .i04 {
  width: min(10.8333333333vw, 130px);
}
.data .container li .i05 {
  width: min(10.5vw, 126px);
}
.data .container li .i06 {
  width: min(9.5vw, 114px);
}
.data .container li .i07 {
  position: absolute;
  right: 0;
  bottom: 0;
  width: min(6vw, 72px);
}
.data .container li .i08 {
  width: min(10vw, 120px);
  margin-top: min(1.6666666667vw, 20px);
}
.data .container li .i09 {
  position: absolute;
  right: 0;
  bottom: 0;
  width: min(8.3333333333vw, 100px);
}
.data .container li .i10a {
  width: min(5.6666666667vw, 68px);
}
.data .container li .i10b {
  width: min(4.4166666667vw, 53px);
}
.data .container li .i11 {
  width: min(7.8333333333vw, 94px);
}
.data .container li .i12 {
  width: min(8.3333333333vw, 100px);
  margin-top: min(0.8333333333vw, 10px);
}
.data .container li.item01 .title {
  writing-mode: vertical-lr;
}
.data .container li.item01 .countUp {
  width: 3.9ch;
}
.data .container li.item02 .countUp {
  width: 3.9ch;
}
.data .container li.item03 {
  display: grid;
  place-content: center;
}
.data .container li.item03 .row-wrap {
  padding-inline: min(3.3333333333vw, 40px) min(2.5vw, 30px);
  row-gap: min(2.5vw, 30px);
}
.data .container li.item03 .row-wrap .text {
  padding-left: min(1.6666666667vw, 20px);
}
.data .container li.item03 .title {
  writing-mode: vertical-lr;
}
.data .container li.item03 .countUp {
  width: 2.2ch;
}
.data .container li.item04 {
  padding-bottom: min(5vw, 60px);
}
@media screen and (max-width: 767px) {
  .data .container li.item04 {
    padding-block: min(3.3333333333vw, 40px);
  }
}
.data .container li.item04 .countUp {
  width: 2.2ch;
}
.data .container li.item05 {
  padding-bottom: min(5vw, 60px);
}
.data .container li.item05 .countUp {
  width: 2.2ch;
}
.data .container li.item05 p.caption {
  bottom: min(1.5vw, 18px);
  left: 50%;
  translate: -50% 0;
  padding-inline: min(1.25vw, 15px);
}
.data .container li.item05 .text {
  padding-left: min(0.8333333333vw, 10px);
}
.data .container li.item06 {
  padding-bottom: min(5vw, 60px);
}
.data .container li.item06 .countUp {
  width: 2ch;
}
.data .container li.item06 .text {
  padding-left: min(0.8333333333vw, 10px);
}
.data .container li.item07 {
  padding-bottom: min(5.8333333333vw, 70px);
}
.data .container li.item07 .row-wrap {
  row-gap: min(2.5vw, 30px);
  grid-template-columns: auto auto auto;
  margin-top: min(1.6666666667vw, 20px);
  padding-inline: min(4.5833333333vw, 55px) min(3.75vw, 45px);
}
.data .container li.item07 .countUp {
  width: 3ch;
}
.data .container li.item07 .title {
  white-space: nowrap;
}
.data .container li.item07 p.caption {
  bottom: min(1.5vw, 18px);
  left: 50%;
  translate: -50% 0;
  padding-inline: min(2.0833333333vw, 25px);
}
.data .container li.item08 .countUp {
  width: 3ch;
}
.data .container li.item09 {
  padding-bottom: min(5.8333333333vw, 70px);
}
.data .container li.item09 .row-wrap {
  row-gap: min(2.5vw, 30px);
  grid-template-columns: auto auto auto;
  margin-top: min(1.6666666667vw, 20px);
  padding-inline: min(5.8333333333vw, 70px) min(5vw, 60px);
}
.data .container li.item09 .countUp {
  width: 1.8ch;
  padding-right: 0;
}
.data .container li.item09 .title {
  white-space: nowrap;
}
.data .container li.item10 {
  display: grid;
  place-content: center;
}
.data .container li.item10 .row-wrap {
  padding-inline: min(3.3333333333vw, 40px) min(2.5vw, 30px);
  row-gap: min(2.5vw, 30px);
}
.data .container li.item10 .row-wrap .text {
  padding-left: min(0.8333333333vw, 10px);
}
.data .container li.item10 .title {
  writing-mode: vertical-lr;
  padding-right: 0.5rem;
}
.data .container li.item10 .countUp {
  width: 2.2ch;
}
.data .container li.item11 {
  display: grid;
  place-content: center;
}
.data .container li.item11 .countUp {
  width: 1.2ch;
}
.data .container li.item12 {
  display: grid;
  place-content: center;
}
.data .container li.item12 .countUp {
  width: 2.1ch;
}
.data .container li.item12 .text {
  padding-left: min(0.8333333333vw, 10px);
}
/*# sourceMappingURL=style.css.map */