/* 数字で紐解く巴商会
=========================================================================
=========================================================================*/
main {
  background-color: #045DA6;
}

.numbers {
  position: relative;
  margin: 0 auto;
  padding: 91px 0 120px;
  max-width: 1120px;
}

.numbers h1 {
  overflow: visible !important;
  margin-bottom: 75px;
  font-weight: 600;
  font-size: 36px;
  line-height: 1em;
  color: #FFF;
}

.numbers h1 span {
  font-family: "Lexend Mega", sans-serif;
  font-weight: 900;
  font-size: 76px;
  line-height: 1.5em;
  transform: translateX(-0.1em);
}

/* グリッド */
.numbers .grid_container {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  grid-template-rows: 1fr;
  gap: 10px 10px;
  text-align: center;
  color: #FFF;
}

.numbers .grid_container .grid_item {
  border: 1px solid #EBEBEB;
  border-radius: 6px;
}

.numbers h2 {
  margin-top: 25px;
  font-weight: 600;
  font-size: 28px;
}

.grid_item .value .count {
  font-family: "Outfit", sans-serif;
  font-weight: 900;
  line-height: 1em;
  background: linear-gradient(#97FEE1, #31B9EB);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  color: transparent;
}

/* 01）売上推移
=========================================================================*/
#gi01 {
  grid-column: 1 / 3;
}
#gi01 .layout {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: flex-end;
  flex-direction: row-reverse;
  gap: 0 calc(126 /741 * 100%);
  margin-bottom: 30px;
}
#gi01 .layout .value {
  text-align: center;
}
#gi01 .value .count {
  font-size: 277px;
}
#gi01 .value .unit {
  display: block;
  margin: -.75em auto 0 auto;
  font-family: "Lexend Mega", sans-serif;
  font-weight: 900;
  font-size: 40px;
  line-height: 1em;
  color: #5AE0D1;
}
#gi01 .layout .graph {
  width: calc(229 / 743 * 100%);
}
#gi01 .layout .graph svg {
  margin-bottom: 17px;
  width: 100%;
  max-width: 230px;
  height: auto;
}
#gi01 .layout .graph .note {
  font-weight: 600;
  font-size: 22px;
}

/* 02）設立
=========================================================================*/
#gi02 .value {
  position: relative;
  margin: 2em auto 1.5em;
  display: block;
}
#gi02 .value .count {
  padding-right: .2em;
  font-size: 216px;
}
#gi02 .value .unit {
  display: block;
  margin: -1.25em calc(46 / 367 * 100%) 0 auto;
  width: fit-content;
  font-weight: 600;
  font-size: 40px;
}
#gi02 .note {
  margin-bottom: 30px;
  font-weight: 600;
  font-size: 22px;
}

/* 03）業界シェア
=========================================================================*/
#gi03 .value {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: flex-end;
  margin: 2em auto 1.5em;
}
#gi03 .value .unit {
  width: fit-content;
  font-family: "Lexend Mega", sans-serif;
  font-weight: 900;
  font-size: 73px;
  line-height: 1em;
  letter-spacing: -.1em;
  color: #5AE0D1;
  transform: translateY(-0.3em);
}
#gi03 .value .count {
  position: relative;
  display: inline-block;
  font-size: 243px;
  line-height: 1em;
  transform: translateX(-0.075em);
  transform-origin: bottom;
}
#gi03 .value .crown {
  position: absolute;
  top: 0;
  right: calc(50 / 365 * 100%);
  width: calc(76.5 / 365 * 100%);
}

/* 04）社員数
=========================================================================*/
#gi04 {
  grid-column: 2 / 4;
}
#gi04 .layout {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  align-items: center;
  gap: 0 0;
  margin: 30px 0 20px 0;
}
#gi04 .layout svg {
  width: calc(182 / 741 * 100%);
}
#gi04 .layout svg path {
  transform-origin: bottom;
}
#gi04 .layout .value {
  position: relative;
  display: block;
  width: calc(520 / 741 * 100%);
}
#gi04 .value .count {
  font-size: 207px;
}
#gi04 .value .unit {
  display: block;
  position: absolute;
  right: calc(36 / 741 * 100%);
  bottom: calc(70 / 741 * 100%);
  width: fit-content;
  font-weight: 600;
  font-size: 40px;
}
#gi04 .note {
  font-weight: 600;
  font-size: 22px;
}

/* 05）売上内訳（取扱商品）
=========================================================================*/
#gi05 {
  grid-column: 1 / 3;
  grid-row: 3 / 5;
}
#gi05 .graph {
  position: relative;
  margin: 130px auto 50px;
  max-width: 468px;
  width: calc(468 / 741 * 100%);
}
#gi05 .graph svg {
  width: 100%;
  height: auto;
}
#gi05 .graph .value .count {
  position: relative;
  font-size: 90px;
}
#gi05 .graph .value .type {
  overflow: visible;
  display: block;
  position: relative;
  font-weight: 600;
  font-size: 28px;
  text-align: left;
  word-break: keep-all;
}
#gi05 .graph .value .unit {
  position: absolute;
  bottom: .25em;
  right: -.7em;
  font-family: "Outfit", sans-serif;
  font-weight: 900;
  font-size: 50px;
}
/* ガス */
#gi05 .graph .value.type01 {
  position: absolute;
  top: calc(217 / 468 * 100%);
  right: calc(-55 / 468 * 100%);
  width: calc(140 / 468 * 100%) !important;
}
#gi05 .graph .value.type01 .count {
  font-size: 112px;
}
#gi05 .graph .value.type01 .type {
  font-size: 38px;
}
#gi05 .graph .value.type01 .unit {
  position: absolute;
  bottom: .4em;
  right: -.7em;
  font-size: 65px;
}
/* 工事 */
#gi05 .graph .value.type02 {
  position: absolute;
  top: calc(310 / 468 * 100%);
  left: calc(0 / 468 * 100%);
  width: calc(120 / 468 * 100%) !important;
}
/* 関連機器 */
#gi05 .graph .value.type03 {
  position: absolute;
  top: calc(120 / 468 * 100%);
  left: calc(-80 / 468 * 100%);
  width: calc(100 / 468 * 100%) !important;
}
/* メンテナンス分析等 */
#gi05 .graph .value.type04 {
  position: absolute;
  top: calc(-70 / 468 * 100%);
  left: calc(20 / 468 * 100%);
  width: calc(60 / 468 * 100%) !important;
}
#gi05 .graph .value.type04 .type {
  transform: translateX(-2em);
}
/* 化学薬品等 */
#gi05 .graph .value.type05 {
  position: absolute;
  top: calc(-80 / 468 * 100%);
  left: calc(155 / 468 * 100%);
  width: calc(60 / 468 * 100%) !important;
}

/* 06）売上高
=========================================================================*/
#gi06 .value {
  position: relative;
  margin: 2em auto 3em;
  display: block;
}
#gi06 .value .count {
  font-size: 167px;
}
#gi06 .value .unit {
  display: block;
  margin: 0 calc(46 / 367 * 100%) 0 auto;
  width: fit-content;
  font-weight: 600;
  font-size: 40px;
}

/* 07）平均有給取得日数
=========================================================================*/
#gi07 .value {
  position: relative;
  margin: 2em auto 3em;
  display: block;
}
#gi07 .value .count {
  font-size: 171px;
}
#gi07 .value .count small {
  font-size: 120px;
}
#gi07 .value .unit {
  display: block;
  margin: -.5em calc(46 / 367 * 100%) 0 auto;
  width: fit-content;
  font-weight: 600;
  font-size: 40px;
}

/* 08）総合職平均年収
=========================================================================*/
#gi08 .value {
  position: relative;
  margin: 2em auto 2em;
  display: block;
}
#gi08 .value .count {
  font-size: 172px;
}

#gi08 .value .unit {
  display: block;
  margin: 0 calc(46 / 367 * 100%) 0 auto;
  width: fit-content;
  font-weight: 600;
  font-size: 40px;
}
#gi08 .note {
  margin-bottom: 20px;
  font-weight: 600;
  font-size: 22px;
}

/* 09）拠点
=========================================================================*/
#gi09 {
  grid-column: 2 / 4;
}
#gi09 .layout {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 0 calc(257 / 741 * 100%);
  margin: 25px 0 40px 0;
}
#gi09 .value {
  width: 200px;
  width: calc(200 / 741 * 100%);
}
#gi09 figure {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  max-width: 195px;
  width: calc(195 / 741 * 100%);
}
#gi09 .value {
  position: relative;
  z-index: 2;
}
#gi09 .value .count {
  display: block;
  font-size: 140px;
  line-height: .95em;
}
#gi09 .value .area,
#gi09 .value .unit {
  font-weight: 900;
  font-size: 28px;
  line-height: 1em;
}
#gi09 .note {
  margin-bottom: 20px;
  font-weight: 600;
  font-size: 22px;
}

/* 10）平均年齢 / 11）平均勤続年数 / 12）離職率
=========================================================================*/
#gi10 .value,
#gi11 .value,
#gi12 .value {
  position: relative;
  margin: 2em auto 3em;
  display: block;
}
#gi12 .value {
  margin: 2em auto 0;
}
#gi10 .value .count,
#gi11 .value .count,
#gi12 .value .count {
  font-size: 152px;
}
#gi10 .value .count small,
#gi11 .value .count small,
#gi12 .value .count small {
  font-size: 100px;
}

#gi10 .value .unit,
#gi11 .value .unit,
#gi12 .value .unit {
  display: block;
  margin: -.5em calc(62 / 367 * 100%) 0 auto;
  width: fit-content;
  font-weight: 600;
  font-size: 40px;
}

#gi12 .note {
  margin-bottom: 30px;
  font-weight: 600;
  font-size: 22px;
}

/*  1150px以下
=========================================================================
=========================================================================*/
@media screen and (max-width:1150px) {
  .numbers {
    padding: 91px 15px 120px;
  }

  .numbers h2 {
    font-size: calc(28 / 1150 * 100vw);
  }

  /* 01）売上推移
  =========================================================================*/
  #gi01 .value .count {
    font-size: calc(277 / 1150 * 100vw);
  }
  #gi01 .value .unit {
    font-size: calc(40 / 1150 * 100vw);
  }
  #gi01 .note {
    font-size: calc(22 / 1150 * 100vw);
  }

  /* 02）設立
  =========================================================================*/
  #gi02 .value .count {
    font-size: calc(216 / 1150 * 100vw);
  }
  #gi02 .value .unit {
    font-size: calc(40 / 1150 * 100vw);
  }
  #gi02 .note {
    font-size: calc(22 / 1150 * 100vw);
  }

  /* 03）業界シェア
  =========================================================================*/
  #gi03 .value .unit {
    font-size: calc(73 / 1150 * 100vw);
  }
  #gi03 .value .count {
    font-size: calc(243 / 1150 * 100vw);
  }

  /* 04）社員数
  =========================================================================*/
  #gi04 .value .count {
    font-size: calc(207 / 1150 * 100vw);
  }
  #gi04 .value .unit {
    font-size: calc(40 / 1150 * 100vw);
  }
  #gi04 .note {
    font-size: calc(22 / 1150 * 100vw);
  }

  /* 05）売上内訳（取扱商品）
  =========================================================================*/
  #gi05 .graph .value .count {
    font-size: calc(90 / 1150 * 100vw);
  }
  #gi05 .graph .value .type {
    font-size: calc(28 / 1150 * 100vw);
  }
  #gi05 .graph .value .unit {
    font-size: calc(50 / 1150 * 100vw);
  }
  /* ガス */
  #gi05 .graph .value.type01 .count {
    font-size: calc(112 / 1150 * 100vw);
  }

  #gi05 .graph .value.type01 .type {
    font-size: calc(38 / 1150 * 100vw);
  }

  #gi05 .graph .value.type01 .unit {
    font-size: calc(65 / 1150 * 100vw);
  }

  /* 06）売上高
  =========================================================================*/
  #gi06 .value .count {
    font-size: calc(167 / 1150 * 100vw);
  }
  #gi06 .value .unit {
    font-size: calc(40 / 1150 * 100vw);
  }

  /* 07）平均有給取得日数
  =========================================================================*/
  #gi07 .value .count {
    font-size: calc(171 / 1150 * 100vw);
  }
  #gi07 .value .count small {
    font-size: calc(120 / 1150 * 100vw);
  }
  #gi07 .value .unit {
    font-size: calc(40 / 1150 * 100vw);
  }

  /* 08）総合職平均年収
  =========================================================================*/
  #gi08 .value .count {
    font-size: calc(172 / 1150 * 100vw);
  }
  #gi08 .value .unit {
    font-size: calc(40 / 1150 * 100vw);
  }
  #gi08 .note {
    font-size: calc(22 / 1150 * 100vw);
  }

  /* 09）拠点
  =========================================================================*/
  #gi09 .value .count {
    font-size: calc(140 / 1150 * 100vw);
  }
  #gi09 .value .area,
  #gi09 .value .unit {
    font-size: calc(28 / 1150 * 100vw);
  }
  #gi09 .note {
    font-size: calc(22 / 1150 * 100vw);
  }

  /* 10）平均年齢 / 11）平均勤続年数 / 12）離職率
  =========================================================================*/
  #gi10 .value .count,
  #gi11 .value .count,
  #gi12 .value .count {
    font-size: calc(152 / 1150 * 100vw);
  }
  #gi10 .value .count small,
  #gi11 .value .count small,
  #gi12 .value .count small {
    font-size: calc(100 / 1150 * 100vw);
  }
  #gi10 .value .unit,
  #gi11 .value .unit,
  #gi12 .value .unit {
    font-size: calc(40 / 1150 * 100vw);
  }
}

/*  スマホ（767px以下）
=========================================================================
=========================================================================*/
@media screen and (max-width:767px) {
  .numbers {
    padding: 50px 15px 120px;
  }

  .numbers h1 {
    margin-bottom: 50px;
    font-size: 22px;
  }

  .numbers h1 span {
    margin-bottom: .05em;
    font-size: 39px;
  }

  /* グリッド */
  .numbers .grid_container {
    grid-template-columns: 1fr;
    margin: 0 auto;
    max-width: 360px;
    width: 100%;
  }

  .numbers .grid_container .grid_item {
    grid-column: auto !important;
    grid-row: auto !important;
  }

  .numbers h2 {
    margin-top: 25px;
    font-size: 28px;
  }

  /* 01）売上推移
  =========================================================================*/
  #gi01 .layout {
    gap: 0 0;
    margin: 40px 0 30px;
  }
  #gi01 .value .count {
    font-size: 277px;
  }
  #gi01 .value .unit {
    font-size: 40px;
  }
  #gi01 .layout .graph {
    width: 100%;
  }
  #gi01 .note {
    font-size: 18px;
  }

  /* 02）設立
  =========================================================================*/
  #gi02 .value .count {
    padding-right: 0;
    font-size: 216px;
  }
  #gi02 .value .unit {
    margin: -1.25em calc(20 / 367 * 100%) 0 auto;
    font-size: 40px;
  }
  #gi02 .note {
    margin-bottom: 20px;
    font-size: 18px;
  }

  /* 03）業界シェア
  =========================================================================*/
  #gi03 .value .unit {
    font-size: 73px;
  }
  #gi03 .value .count {
    font-size: 243px;
  }
  #gi03 .value .crown {
    width: 76.5px;
  }

  /* 04）社員数
  =========================================================================*/
  #gi04 .layout {
    gap: 20px 0;
    margin: 30px 0 10px 0;
  }
  #gi04 .layout svg {
    margin: 0 auto;
    width: 182px;
  }
  #gi04 .layout .value {
    width: 100%;
  }
  #gi04 .value .count {
    font-size: 123px;
  }
  #gi04 .value .unit {
    right: calc(32 / 360 * 100%);
    bottom: calc(30 / 360 * 100%);
    font-size: 40px;
  }
  #gi04 .note {
    margin-bottom: 25px;
    font-size: 18px;
  }

  /* 05）売上内訳（取扱商品）
  =========================================================================*/
  #gi05 .graph {
    position: relative;
    margin: 80px auto 30px;
    width: 245px;
  }
  #gi05 .graph .value .type {
    font-size: 16px;
  }
  #gi05 .graph .value .count {
    font-size: 49px;
  }
  #gi05 .graph .value .unit {
    font-size: 21px;
  }
  /* ガス */
  #gi05 .graph .value.type01 .count {
    font-size: 59px;
  }
  #gi05 .graph .value.type01 .type {
    font-size: 21px;
  }
  #gi05 .graph .value.type01 .unit {
    font-size: 30px;
  }

  /* 06）売上高
  =========================================================================*/
  #gi06 .value .count {
    font-size: 167px;
  }
  #gi06 .value .unit {
    font-size: 40px;
  }

  /* 07）平均有給取得日数
  =========================================================================*/
  #gi07 .value .count {
    font-size: 171px;
  }
  #gi07 .value .count small {
    font-size: 120px;
  }
  #gi07 .value .unit {
    font-size: 40px;
  }

  /* 08）総合職平均年収
  =========================================================================*/
  #gi08 .value .count {
    font-size: 172px;
  }
  #gi08 .value .unit {
    font-size: 40px;
  }
  #gi08 .note {
    padding: 0 15px;
    font-size: 16px;
  }

  /* 09）拠点
  =========================================================================*/
  #gi09 .layout {
    gap: 0 calc(78 / 360 * 100%);
    margin: 25px auto 20px;
    width: 300px;
    height: 195px;
  }
  #gi09 .value {
    width: 120px;
  }
  #gi09 figure {
    width: 195px;
  }
  #gi09 .value .count {
    font-size: 80px;
  }
  #gi09 .value .area {
    font-size: 26px;
  }
  #gi09 .value .unit {
    font-size: 18px;
  }
  #gi09 .note {
    padding: 0 15px;
    font-size: 16px;
  }

  /* 10）平均年齢 / 11）平均勤続年数 / 12）離職率
  =========================================================================*/
  #gi10 .value .count,
  #gi11 .value .count,
  #gi12 .value .count {
    font-size: 152px;
  }
  #gi10 .value .count small,
  #gi11 .value .count small,
  #gi12 .value .count small {
    font-size: 100px;
  }
  #gi10 .value .unit,
  #gi11 .value .unit,
  #gi12 .value .unit {
    font-size: 40px;
  }
}

/*  スマホ（360px以下）
=========================================================================
=========================================================================*/
@media screen and (max-width:360px) {
  /* 05）売上内訳（取扱商品）
  =========================================================================*/
  /* ガス */
  #gi05 .graph .value.type01 {
    right: calc(-10 / 468 * 100%);
  }


  /* 関連機器 */
  #gi05 .graph .value.type03 {
    left: calc(-40 / 468 * 100%);
  }
}
