@charset "UTF-8";
/* --------------------------------------------------
    common
-------------------------------------------------- */
.mv {
  position: relative;
}
.mv .mv_title {
  font-size: 80rem;
  font-weight: 700;
  line-height: 1;
  color: #fff;
  letter-spacing: 0.05em;
  position: absolute;
  top: 215rem;
  left: 125rem;
}
.mv .mv_lead {
  font-size: 30rem;
  font-weight: 700;
  line-height: 2;
  color: #fff;
  letter-spacing: 0.05em;
  text-box: var(--trim);
  position: absolute;
  top: 370rem;
  left: 125rem;
}

.content {
  position: relative;
  padding-block: 200rem 150rem;
  background: url(../image/recruit/common/content_bg.webp) top left/contain repeat;
}
.content::before {
  content: "";
  position: absolute;
  top: -200rem;
  left: 0;
  width: 100%;
  height: 200rem;
  background: url(../image/recruit/common/content_before.webp) bottom right/100% 100% no-repeat;
}
.content .slide_wrap {
  position: absolute;
  width: 100%;
  left: 0;
  top: -100rem;
}

.container + .container {
  margin-top: 100rem;
}
.container .container_title {
  font-size: 36rem;
  font-weight: 700;
  text-box: var(--trim);
  margin-bottom: 20rem;
}

.sec .sec_title {
  font-size: 60rem;
  font-weight: 700;
  color: #522b04;
  line-height: 1.4;
  text-box: var(--trim);
  margin-bottom: 50rem;
}
.sec .sec_title .en {
  font-family: "Montserrat", sans-serif;
  font-size: 40rem;
  color: #222222;
  display: inline-block;
  margin-top: 30rem;
}
.sec .sec_subtitle {
  font-size: 30rem;
  font-weight: 500;
  line-height: 1.7333333333;
  text-box: var(--trim);
  margin-bottom: 50rem;
}
.sec .sec_head {
  font-size: 24rem;
  font-weight: 500;
  line-height: 1.75;
  text-box: var(--trim);
}
.sec .sec_lead {
  font-size: 18rem;
  line-height: 2;
  text-box: var(--trim);
}
.sec .sec_name {
  font-size: 30rem;
  font-weight: 500;
  line-height: 1;
  margin-top: 60rem;
}
.sec .sec_name small {
  font-size: 0.8em;
}

.slide_wrap {
  overflow-x: hidden;
}
.slide_wrap .slide li {
  display: flex;
  -moz-column-gap: var(--_infinite-scroll-gap);
       column-gap: var(--_infinite-scroll-gap);
}

@media screen and (max-width: 768px) {
  .mv .mv_title {
    font-size: 54rem;
    top: 55rem;
    left: 55rem;
  }
  .mv .mv_lead {
    font-size: 40rem;
    line-height: 1.75;
    top: 385rem;
    left: 55rem;
  }
  .content {
    padding-block: 100rem 200rem;
  }
  .content::before {
    height: 100rem;
    top: -100rem;
    background-image: url(../image/recruit/common/content_before_sp.webp);
  }
  .container .container_title {
    font-size: 60rem;
    margin-bottom: 35rem;
  }
  .sec .sec_title {
    font-size: 50rem;
    margin-bottom: 60rem;
  }
  .sec .sec_title .en {
    font-size: 36rem;
  }
  .sec .sec_subtitle {
    font-size: 36rem;
    line-height: 1.4444444444;
    margin-bottom: 60rem;
  }
  .sec .sec_lead {
    font-size: 28rem;
    line-height: 2.1428571429;
  }
}
/* --------------------------------------------------
    トップ
-------------------------------------------------- */
#index .inner {
  width: 1400rem;
}
#index .button_grad {
  font-size: 20rem;
  position: relative;
  width: 340rem;
}
#index .button_grad::after {
  content: "";
  position: absolute;
  width: 12rem;
  height: 12rem;
  top: calc(50% - 6rem);
  right: 25rem;
  border-top: 2rem solid #fff;
  border-right: 2rem solid #fff;
  transform: rotate(45deg);
}
#index .interview, #index .family, #index .infographic {
  padding-block: 300rem 300rem;
  margin-top: -250rem;
  background: url(../image/recruit/common/content_bg_orange.webp) top left/250rem auto repeat;
}
#index .message {
  position: relative;
  margin-top: -300rem;
  padding-block: 50rem 250rem;
  background: url(../image/recruit/index/message_bg.webp) top left/100% 100% no-repeat;
}
#index .message .slide_wrap {
  margin-bottom: 100rem;
}
#index .message .slide_wrap .slide li img {
  width: 960rem;
}
#index .message .mes_container {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  -moz-column-gap: 75rem;
       column-gap: 75rem;
}
#index .message .mes_container .mes_text {
  width: 670rem;
}
#index .message .mes_container .mes_image {
  width: 918rem;
}
#index .infographic .inf_logo {
  width: 231rem;
  margin: 0 auto 65rem;
}
#index .infographic .sec_title,
#index .infographic .sec_title .en,
#index .infographic .sec_head {
  text-align: center;
  color: #fff;
}
#index .infographic .button_grad {
  margin: 60rem auto 0;
}
#index .wellbeing {
  position: relative;
  padding-block: 320rem 350rem;
  margin-top: -200rem;
  background: url(../image/recruit/index/wellbeing_bg.webp) top left/100% 100% no-repeat;
}
#index .wellbeing .button_grad {
  margin-block: 60rem 20rem;
}
#index .family .fam_container {
  display: flex;
  align-items: center;
  flex-direction: row-reverse;
  -moz-column-gap: 100rem;
       column-gap: 100rem;
}
#index .family .fam_container .fam_text {
  width: 563rem;
}
#index .family .fam_container .fam_text .sec_title,
#index .family .fam_container .fam_text .sec_title .en,
#index .family .fam_container .fam_text .sec_head {
  color: #fff;
}
#index .family .fam_container .fam_text .button_grad {
  margin-top: 60rem;
}
#index .family .fam_container .fam_image {
  width: 737rem;
}
#index .job {
  position: relative;
  padding-block: 300rem;
  margin-top: -250rem;
  background: url(../image/recruit/index/job_bg.webp) top left/100% 100% no-repeat;
}
#index .job .sec_title,
#index .job .sec_head {
  text-align: center;
}
#index .job .job_list {
  display: flex;
  flex-wrap: wrap;
  gap: 60rem 68.3333333333rem;
  width: 1725rem;
  margin: 90rem auto 0;
}
#index .job .job_list .job_item {
  width: 380rem;
}
#index .job .job_list .job_item .job_item_image {
  display: flex;
  justify-content: center;
  align-items: center;
  aspect-ratio: 380/372;
  background-size: 100% 100%;
}
#index .job .job_list .job_item .job_item_image.bg_orange {
  background-image: url(../image/recruit/index/job_item_bg_orange.webp);
}
#index .job .job_list .job_item .job_item_image.bg_red {
  background-image: url(../image/recruit/index/job_item_bg_red.webp);
}
#index .job .job_list .job_item .job_item_image.bg_green {
  background-image: url(../image/recruit/index/job_item_bg_green.webp);
}
#index .job .job_list .job_item .job_item_image.bg_blue {
  background-image: url(../image/recruit/index/job_item_bg_blue.webp);
}
#index .job .job_list .job_item .job_item_image img {
  transition: transform 0.3s;
}
#index .job .job_list .job_item .job_item_image img[src$="01.webp"] {
  width: 246rem;
}
#index .job .job_list .job_item .job_item_image img[src$="02.webp"] {
  width: 229rem;
}
#index .job .job_list .job_item .job_item_image img[src$="03.webp"] {
  width: 233rem;
}
#index .job .job_list .job_item .job_item_image img[src$="04.webp"] {
  width: 268rem;
}
#index .job .job_list .job_item .job_item_image img[src$="05.webp"] {
  width: 232rem;
}
#index .job .job_list .job_item .job_item_image img[src$="06.webp"] {
  width: 229rem;
}
#index .job .job_list .job_item .job_item_image img[src$="07.webp"] {
  width: 266rem;
}
#index .job .job_list .job_item .job_item_image img[src$="08.webp"] {
  width: 249rem;
}
#index .job .job_list .job_item .job_item_image img[src$="09.webp"] {
  width: 221rem;
}
#index .job .job_list .job_item .job_item_image img[src$="10.webp"] {
  width: 258rem;
}
#index .job .job_list .job_item .job_item_image img[src$="11.webp"] {
  width: 265rem;
}
#index .job .job_list .job_item .job_item_caption {
  font-size: 24rem;
  font-weight: 500;
  text-align: center;
  text-box: var(--trim);
  margin-top: 25rem;
}
#index .interview {
  background-image: url(../image/recruit/common/content_bg_green.webp);
  padding-bottom: 80rem;
}
#index .interview .sec_title,
#index .interview .sec_head {
  text-align: center;
}
#index .interview .button_grad {
  margin: 60rem auto 70rem;
}
#index .interview .int_list {
  display: flex;
  align-items: flex-start;
  justify-content: center;
  -moz-column-gap: 50rem;
       column-gap: 50rem;
}
#index .interview .int_list .int_item {
  width: 265rem;
}
#index .interview .int_list .int_item:nth-of-type(2) {
  margin-top: 70rem;
}
#index .interview .int_list .int_item .int_item_image {
  transition: transform 0.3s;
}
#index .interview .int_list .int_item .int_item_text {
  width: 220rem;
  margin: 50rem auto 0;
  padding: 10rem 15rem 15rem 15rem;
  background: #fff;
}
#index .interview .int_list .int_item .int_item_text p {
  font-size: 24rem;
  font-weight: 500;
  text-box: var(--trim);
}
#index .interview .int_list .int_item .int_item_text p small {
  font-size: 0.625em;
}
#index .information {
  padding-block: 70rem 150rem;
}
#index .information .inf_title {
  font-size: 24rem;
  line-height: 1;
  font-weight: 500;
  color: #fff;
  text-align: center;
  background: #285d80;
  border-radius: 9999px;
  padding-block: 15px;
  margin-bottom: 65rem;
}
#index .information .inf_container {
  display: flex;
  align-items: center;
  -moz-column-gap: 20rem;
       column-gap: 20rem;
  width: 1020rem;
  max-width: 100%;
  margin-inline: auto;
}
#index .information .inf_container .inf_subtitle {
  font-size: 48rem;
  color: #fff;
  font-weight: 700;
  text-align: center;
  letter-spacing: 0.25em;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 215rem;
  aspect-ratio: 1/1;
  border-radius: 10rem;
  background: #3160ac;
  margin-right: 10rem;
}
#index .information .inf_container .inf_subtitle span {
  padding-left: 0.25em;
}
#index .information .inf_container .inf_banner a {
  transition: opacity 0.3s;
}
#index .information .inf_container .inf_banner.mynavi {
  width: 160rem;
}
#index .information .inf_container .inf_banner.meidaisha {
  width: 414rem;
}
#index .information .inf_container .inf_banner.engage {
  width: 600rem;
}
#index .information .inf_container + .inf_container {
  margin-top: 60rem;
}

@media (hover: hover) and (pointer: fine) {
  #index .job .job_list .job_item a:hover .job_item_image img {
    transform: scale(1.2) rotate(15deg);
  }
  #index .interview .int_list .int_item a:hover .int_item_image {
    transform: translateY(-30rem);
  }
  #index .information .inf_container .inf_banner a:hover {
    opacity: 0.7;
  }
}
@media screen and (max-width: 768px) {
  #index .inner {
    width: 670rem;
  }
  #index .button_grad {
    font-size: 40rem;
    width: 670rem;
    height: 110rem;
  }
  #index .button_grad::after {
    width: 25rem;
    height: 25rem;
    top: calc(50% - 12.5rem);
    right: 45rem;
    border-top-width: 4rem;
    border-right-width: 4rem;
  }
  #index .infographic, #index .family, #index .interview {
    padding-block: 200rem;
    margin-top: -130rem;
  }
  #index .message {
    background-image: url(../image/recruit/index/message_bg_sp.webp);
    margin-top: -200rem;
    padding-block: 0 200rem;
  }
  #index .message .slide_wrap .slide li img {
    width: 590rem;
  }
  #index .message .mes_container {
    display: block;
  }
  #index .message .mes_container .mes_text {
    margin: 0 auto 80rem;
  }
  #index .message .mes_container .mes_image {
    width: 700rem;
    margin-inline: auto 0;
  }
  #index .infographic .inf_logo {
    width: 160rem;
    margin-bottom: 45rem;
  }
  #index .wellbeing {
    margin-top: -150rem;
    padding-block: 175rem 200rem;
    background-image: url(../image/recruit/index/wellbeing_bg_sp.webp);
  }
  #index .wellbeing .sec_title,
  #index .wellbeing .sec_head {
    text-align: center;
  }
  #index .wellbeing .button_grad {
    margin-bottom: 100rem;
  }
  #index .family {
    position: relative;
    z-index: 3;
    margin-top: -100rem;
    padding-block: 140rem 170rem;
    background: url(../image/recruit/index/family_bg_sp.webp) top left/100% 100% no-repeat;
  }
  #index .family .sec_title,
  #index .family .sec_head {
    text-align: center;
  }
  #index .family .fam_container {
    display: block;
  }
  #index .family .fam_container .fam_text {
    width: 100%;
  }
  #index .family .fam_container .fam_image {
    width: 616rem;
    margin: 100rem auto 0;
  }
  #index .job {
    background-image: url(../image/recruit/index/job_bg_sp.webp);
    padding-block: 320rem 180rem;
    margin-top: -215rem;
  }
  #index .job .job_list {
    width: 670rem;
    gap: 100rem 100rem;
  }
  #index .job .job_list .job_item {
    width: 285rem;
  }
  #index .job .job_list .job_item .job_item_image img[src$="01.webp"] {
    width: 185rem;
  }
  #index .job .job_list .job_item .job_item_image img[src$="02.webp"] {
    width: 172rem;
  }
  #index .job .job_list .job_item .job_item_image img[src$="03.webp"] {
    width: 175rem;
  }
  #index .job .job_list .job_item .job_item_image img[src$="04.webp"] {
    width: 201rem;
  }
  #index .job .job_list .job_item .job_item_image img[src$="05.webp"] {
    width: 174rem;
  }
  #index .job .job_list .job_item .job_item_image img[src$="06.webp"] {
    width: 171rem;
  }
  #index .job .job_list .job_item .job_item_image img[src$="07.webp"] {
    width: 200rem;
  }
  #index .job .job_list .job_item .job_item_image img[src$="08.webp"] {
    width: 187rem;
  }
  #index .job .job_list .job_item .job_item_image img[src$="09.webp"] {
    width: 166rem;
  }
  #index .job .job_list .job_item .job_item_image img[src$="10.webp"] {
    width: 194rem;
  }
  #index .job .job_list .job_item .job_item_image img[src$="11.webp"] {
    width: 199rem;
  }
  #index .interview .button_grad {
    margin-bottom: 85rem;
  }
  #index .interview .int_list {
    display: block;
  }
  #index .interview .int_list .int_item {
    width: 380rem;
    margin-inline: auto;
  }
  #index .interview .int_list .int_item .int_item_text {
    width: 325rem;
    padding: 25rem;
    margin-top: 40rem;
  }
  #index .interview .int_list .int_item .int_item_text p {
    font-size: 36rem;
    font-feature-settings: "palt";
    letter-spacing: 0.05em;
  }
  #index .interview .int_list .int_item .int_item_text p small {
    font-size: 0.6666666667em;
  }
  #index .interview .int_list .int_item:not(:first-of-type) {
    margin-top: 100rem;
  }
  #index .information {
    padding-block: 120rem 200rem;
  }
  #index .information .inf_title {
    font-size: 40rem;
    padding-block: 35rem;
    margin-bottom: 40rem;
  }
  #index .information .inf_container {
    justify-content: center;
    flex-wrap: wrap;
    row-gap: 20rem;
  }
  #index .information .inf_container .inf_subtitle {
    font-size: 32rem;
    width: 80%;
    aspect-ratio: unset;
    margin-right: 0;
    margin-bottom: 10rem;
    padding-block: 10rem;
    border-radius: 20rem;
  }
  #index .information .inf_container .inf_banner.engage {
    width: 500rem;
  }
}
/* --------------------------------------------------
    ご家族の方へ
-------------------------------------------------- */
#family .inner {
  width: 1155rem;
}
#family .slide_wrap .slide li img {
  width: 910rem;
}
#family .president {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  -moz-column-gap: 75rem;
       column-gap: 75rem;
}
#family .president .pre_text {
  width: 670rem;
}
#family .president .pre_image {
  width: 918rem;
}
#family .message .mes_item + .mes_item {
  margin-top: 150rem;
}
#family .message .mes_item .mes_title {
  font-size: 30rem;
  font-weight: 700;
  text-align: center;
  color: #522b04;
  text-box: var(--trim);
  margin-bottom: 30rem;
}
#family .message .mes_item .mes_title .number {
  font-size: 44rem;
}
#family .message .mes_item .mes_container {
  display: flex;
  -moz-column-gap: 60rem;
       column-gap: 60rem;
}
#family .message .mes_item .mes_container .mes_image {
  width: 460rem;
}
#family .message .mes_item .mes_container .mes_image img + img {
  margin-top: 40rem;
}
#family .message .mes_item .mes_container .mes_text {
  width: 635rem;
}
#family .message .mes_item .mes_container .mes_text .sec_lead {
  text-align: justify;
}
#family .message .mes_item .mes_container .mes_text dl + dl {
  margin-top: 50rem;
}
#family .message .mes_item .mes_container .mes_text dl dt {
  font-size: 30rem;
  font-weight: 700;
  color: #522b04;
  text-box: var(--trim);
  margin-bottom: 20rem;
}
#family .financial .logo {
  width: 373rem;
  margin: 60rem auto 25rem;
}
#family .financial .logo a {
  transition: opacity 0.3s;
}
#family .financial .address {
  text-align: center;
  width: -moz-fit-content;
  width: fit-content;
  margin-inline: auto;
}
#family .wellbeing .wel_container {
  display: flex;
  flex-wrap: wrap;
  gap: 18rem;
  margin-top: 50rem;
}
#family .wellbeing .wel_container .wel_item {
  width: 568.5rem;
}
#family .wellbeing .wel_container .wel_item.full {
  width: 100%;
}

@media (hover: hover) and (pointer: fine) {
  #family .financial .logo a:hover {
    opacity: 0.7;
  }
}
@media screen and (max-width: 768px) {
  #family .inner {
    width: 670rem;
  }
  #family .slide_wrap .slide li img {
    width: 560rem;
  }
  #family .president {
    display: block;
  }
  #family .president .pre_text {
    margin-inline: auto;
  }
  #family .president .pre_image {
    width: 705rem;
    margin: 50rem 0 0 auto;
  }
  #family .message .mes_item + .mes_item {
    margin-top: 70rem;
  }
  #family .message .mes_item .mes_title {
    text-align: left;
  }
  #family .message .mes_item .mes_container {
    display: block;
  }
  #family .message .mes_item .mes_container .mes_image {
    width: 100%;
    margin-bottom: 30rem;
  }
  #family .message .mes_item .mes_container .mes_image img + img {
    margin-top: 60rem;
  }
  #family .message .mes_item .mes_container .mes_text {
    width: 100%;
  }
  #family .message .mes_item .mes_container .mes_text dl + dl {
    margin-top: 80rem;
  }
  #family .message .mes_item .mes_container .mes_text dl dt {
    font-size: 36rem;
    margin-bottom: 50rem;
  }
  #family .financial .logo {
    margin-block: 70rem 30rem;
  }
  #family .financial .address {
    font-size: 28rem;
  }
  #family .wellbeing .wel_container {
    gap: 20rem;
    margin-top: 60rem;
  }
  #family .wellbeing .wel_container .wel_item {
    width: 100%;
  }
}
/* --------------------------------------------------
    人を大切にする制度
-------------------------------------------------- */
#wellbeing .inner {
  width: 1155rem;
}
#wellbeing .slide_wrap .slide li img {
  width: 1370rem;
}
#wellbeing .wel_container {
  display: flex;
  -moz-column-gap: 70rem;
       column-gap: 70rem;
}
#wellbeing .wel_container:nth-child(odd) {
  flex-direction: row-reverse;
}
#wellbeing .wel_container .wel_image {
  width: 460rem;
}
#wellbeing .wel_container .wel_image img + img {
  margin-top: 60rem;
}
#wellbeing .wel_container .wel_text {
  width: 625rem;
}
#wellbeing .wel_container .wel_text .wel_title {
  font-size: 46rem;
  font-weight: 700;
  line-height: 1.7391304348;
  text-box: var(--trim);
  margin-bottom: 60rem;
}
#wellbeing .wel_container .wel_text .wel_list .wel_item .wel_subtitle {
  font-size: 30rem;
  text-box: var(--trim);
  width: -moz-fit-content;
  width: fit-content;
  min-width: 350rem;
  padding: 20rem 30rem;
  margin-bottom: 30rem;
  border: 1rem solid #222222;
  border-radius: 9999px;
}
#wellbeing .wel_container .wel_text .wel_list .wel_item .wel_subtitle::before {
  content: "◎";
}
#wellbeing .wel_container .wel_text .wel_list .wel_item .wel_subtitle.green {
  border: none;
  background-image: linear-gradient(to right, #3da700 0%, #80c13f 40%, #80c13f 100%);
}
#wellbeing .wel_container .wel_text .wel_list .wel_item .wel_lead {
  font-size: 16rem;
  line-height: 2.25;
  text-align: justify;
  text-box: var(--trim);
}
#wellbeing .wel_container .wel_text .wel_list .wel_item + .wel_item {
  margin-top: 40rem;
}

@media screen and (max-width: 768px) {
  #wellbeing .inner {
    width: 670rem;
  }
  #wellbeing .slide_wrap .slide li img {
    width: 840rem;
  }
  #wellbeing .wel_container {
    display: block;
  }
  #wellbeing .wel_container .wel_image {
    width: 660rem;
    margin: 0 auto 100rem;
  }
  #wellbeing .wel_container .wel_text {
    width: 100%;
  }
  #wellbeing .wel_container .wel_text .wel_title {
    font-size: 50rem;
    text-align: center;
    line-height: 1.44;
  }
  #wellbeing .wel_container .wel_text .wel_list .wel_item .wel_subtitle {
    min-width: unset;
    margin-inline: auto;
  }
  #wellbeing .wel_container .wel_text .wel_list .wel_item .wel_lead {
    font-size: 28rem;
    line-height: 1.7857142857;
  }
  #wellbeing .wel_container .wel_text .wel_list .wel_item + .wel_item {
    margin-top: 60rem;
  }
}
/* --------------------------------------------------
    数字で知るエコペーパーJP
-------------------------------------------------- */
.w300, #infographic .info_wrap .card.company_sales, #infographic .info_wrap .card.company_capital {
  width: 300rem;
}

.w580, #infographic .info_wrap .card.company_shareholder {
  width: 580rem;
}

.w610, #infographic .info_wrap .card.work_overtime, #infographic .info_wrap .card.work_paid, #infographic .info_wrap .card.work_year, #infographic .info_wrap .card.work_childcare, #infographic .info_wrap .card.employee_bonus, #infographic .info_wrap .card.employee_career {
  width: 610rem;
}

.w1280, #infographic .info_wrap .card.work_menu, #infographic .info_wrap .card.employee_commute, #infographic .info_wrap .card.employee_department {
  width: 100%;
}

#infographic .mv h1 {
  position: absolute;
  top: 90rem;
  left: 50%;
  transform: translateX(-50%);
}
#infographic .mv h1 img {
  width: 700rem;
}
#infographic .info_wrap {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  row-gap: 40rem;
}
#infographic .info_wrap .card {
  padding: 30rem 40rem;
  background: #ddc5a4;
}
#infographic .info_wrap .card dt {
  font-size: 24rem;
  font-weight: 500;
  text-align: center;
  text-box: var(--trim);
  margin-bottom: 30rem;
}
#infographic .info_wrap .card .card_number .count_text {
  font-size: 36rem;
  font-weight: 700;
  line-height: 1;
  color: #4da94b;
  text-align: center;
  font-feature-settings: "palt";
}
#infographic .info_wrap .card .card_number .count_text .count {
  font-family: "Montserrat", sans-serif;
  font-size: 80rem;
}
#infographic .info_wrap .card .card_number .count_text .unit {
  font-size: 36rem;
}
#infographic .info_wrap .card .card_caption {
  text-align: right;
  line-height: 1.75;
  text-box: var(--trim);
  font-feature-settings: var(--palt);
  letter-spacing: 0.01em;
  margin-top: 15rem;
}
#infographic .info_wrap .card.company_shareholder .card_number {
  display: flex;
  align-items: center;
  -moz-column-gap: 18rem;
       column-gap: 18rem;
}
#infographic .info_wrap .card.company_shareholder .card_number p {
  font-size: 28rem;
  text-align: left;
}
#infographic .info_wrap .card.company_shareholder .card_number .card_image {
  width: 145rem;
}
#infographic .info_wrap .card.company_shareholder .card_caption {
  text-align: left;
  width: -moz-fit-content;
  width: fit-content;
  margin: 30rem auto 0;
}
#infographic .info_wrap .card.company_capital .card_number .card_image {
  width: 183rem;
  margin: 0 auto 25rem;
}
#infographic .info_wrap .card.company_sales .card_number .card_image {
  width: 200rem;
  margin: 0 auto 25rem;
}
#infographic .info_wrap .card.employee_department dt {
  margin-bottom: 120rem;
}
#infographic .info_wrap .card.employee_department .card_number {
  position: relative;
  width: 280rem;
  margin-inline: auto;
}
#infographic .info_wrap .card.employee_department .card_number p {
  text-align: left;
  position: absolute;
}
#infographic .info_wrap .card.employee_department .card_number p::before {
  content: "";
  position: absolute;
  width: 100%;
  height: 2rem;
  background: #4da94b;
  bottom: 0;
}
#infographic .info_wrap .card.employee_department .card_number p:nth-of-type(1) {
  text-align: right;
  width: 420rem;
  top: -90rem;
  left: 112rem;
}
#infographic .info_wrap .card.employee_department .card_number p:nth-of-type(1)::before {
  right: 0;
}
#infographic .info_wrap .card.employee_department .card_number p:nth-of-type(1)::after {
  content: "";
  position: absolute;
  width: 2rem;
  height: 25rem;
  bottom: -25rem;
  left: 0;
  background: #4da94b;
}
#infographic .info_wrap .card.employee_department .card_number p:nth-of-type(2) {
  text-align: right;
  width: 477rem;
  top: -3rem;
  left: 135rem;
}
#infographic .info_wrap .card.employee_department .card_number p:nth-of-type(2)::before {
  right: 0;
}
#infographic .info_wrap .card.employee_department .card_number p:nth-of-type(3) {
  text-align: right;
  width: 385rem;
  top: 90rem;
  left: 240rem;
}
#infographic .info_wrap .card.employee_department .card_number p:nth-of-type(3)::before {
  right: 0;
}
#infographic .info_wrap .card.employee_department .card_number p:nth-of-type(4) {
  width: 218rem;
  top: -90rem;
  left: -125rem;
}
#infographic .info_wrap .card.employee_department .card_number p:nth-of-type(4)::before {
  left: 0;
}
#infographic .info_wrap .card.employee_department .card_number p:nth-of-type(4)::after {
  content: "";
  position: absolute;
  width: 2rem;
  height: 30rem;
  bottom: -30rem;
  right: 0;
  background: #4da94b;
}
#infographic .info_wrap .card.employee_department .card_number p:nth-of-type(5) {
  width: 428rem;
  top: -35rem;
  left: -358rem;
}
#infographic .info_wrap .card.employee_department .card_number p:nth-of-type(5)::before {
  left: 0;
}
#infographic .info_wrap .card.employee_department .card_number p:nth-of-type(6) {
  width: 322rem;
  top: 50rem;
  left: -358rem;
}
#infographic .info_wrap .card.employee_department .card_number p:nth-of-type(6)::before {
  left: 0;
}
#infographic .info_wrap .card.employee_department .card_number p:nth-of-type(6)::after {
  content: "";
  position: absolute;
  width: 2rem;
  height: 95rem;
  bottom: 1rem;
  right: 1rem;
  transform: rotate(60deg);
  transform-origin: bottom left;
  background: #4da94b;
}
#infographic .info_wrap .card.employee_department .card_number p:nth-of-type(7) {
  text-align: center;
  width: 260rem;
  top: 130rem;
  left: -285rem;
}
#infographic .info_wrap .card.employee_department .card_number p:nth-of-type(7)::before {
  left: 0;
}
#infographic .info_wrap .card.employee_department .card_number p:nth-of-type(7)::after {
  content: "";
  position: absolute;
  width: 2rem;
  height: 95rem;
  bottom: 1rem;
  right: 1rem;
  transform: rotate(45deg);
  transform-origin: bottom left;
  background: #4da94b;
}
#infographic .info_wrap .card.employee_department .card_number p:nth-of-type(8) {
  text-align: center;
  width: 365rem;
  bottom: -15rem;
  left: -345rem;
}
#infographic .info_wrap .card.employee_department .card_number p:nth-of-type(8)::before {
  left: 0;
}
#infographic .info_wrap .card.employee_department .card_number p:nth-of-type(8)::after {
  content: "";
  position: absolute;
  width: 2rem;
  height: 95rem;
  bottom: 1rem;
  right: 1rem;
  transform: rotate(45deg);
  transform-origin: bottom left;
  background: #4da94b;
}
#infographic .info_wrap .card.employee_career .card_number .card_image {
  width: 200rem;
  margin: 0 auto 10rem;
}
#infographic .info_wrap .card.employee_career .card_number .card_text {
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
  align-content: center;
  align-items: flex-end;
}
#infographic .info_wrap .card.employee_career .card_number .card_text p {
  width: -moz-max-content;
  width: max-content;
  text-align: right;
}
#infographic .info_wrap .card.employee_bonus .card_number .card_image {
  width: 275rem;
  margin: 50rem auto 50rem;
}
#infographic .info_wrap .card.employee_bonus .card_caption {
  margin-top: 55rem;
}
#infographic .info_wrap .card.employee_commute .card_number {
  display: flex;
}
#infographic .info_wrap .card.employee_commute .card_number .card_number_item {
  width: 20%;
}
#infographic .info_wrap .card.employee_commute .card_number .card_number_item:nth-of-type(even) {
  padding-top: 120rem;
}
#infographic .info_wrap .card.employee_commute .card_number .card_number_item .card_image {
  margin: 0 auto 10rem;
}
#infographic .info_wrap .card.employee_commute .card_number .card_number_item .card_image:where(.item-car *) {
  width: 160rem;
}
#infographic .info_wrap .card.employee_commute .card_number .card_number_item .card_image:where(.item-bicycle *) {
  width: 165rem;
}
#infographic .info_wrap .card.employee_commute .card_number .card_number_item .card_image:where(.item-bus *) {
  width: 165rem;
}
#infographic .info_wrap .card.employee_commute .card_number .card_number_item .card_image:where(.item-bike *) {
  width: 165rem;
}
#infographic .info_wrap .card.employee_commute .card_number .card_number_item .card_image:where(.item-walk *) {
  width: 76rem;
}
#infographic .info_wrap .card.employee_commute .card_number .card_number_item p {
  white-space: nowrap;
}
#infographic .info_wrap .card.work_menu .card_number {
  display: flex;
  justify-content: center;
  -moz-column-gap: 75rem;
       column-gap: 75rem;
}
#infographic .info_wrap .card.work_menu .card_number .menu_total .count_text {
  line-height: 1.2;
  text-align: left;
}
#infographic .info_wrap .card.work_menu .card_number .menu_total .count_text .count {
  font-size: 96rem;
}
#infographic .info_wrap .card.work_menu .card_number .menu_total .card_caption {
  text-align: left;
}
#infographic .info_wrap .card.work_menu .card_number .menu_subtotal {
  display: flex;
  -moz-column-gap: 70rem;
       column-gap: 70rem;
}
#infographic .info_wrap .card.work_menu .card_number .menu_subtotal .menu_subtotal_item .card_image {
  margin: 0 auto 10rem;
}
#infographic .info_wrap .card.work_menu .card_number .menu_subtotal .menu_subtotal_item .card_image:where(.item-noodle *) {
  width: 200rem;
}
#infographic .info_wrap .card.work_menu .card_number .menu_subtotal .menu_subtotal_item .card_image:where(.item-rice *) {
  width: 271rem;
}
#infographic .info_wrap .card.work_childcare .card_number {
  display: flex;
  justify-content: center;
  align-items: center;
  -moz-column-gap: 50rem;
       column-gap: 50rem;
  margin-top: -50rem;
}
#infographic .info_wrap .card.work_childcare .card_number .card_text .count_text {
  text-align: right;
}
#infographic .info_wrap .card.work_childcare .card_number .card_image {
  width: 144rem;
}
#infographic .info_wrap .card.work_childcare .card_caption {
  margin-top: 0;
}
#infographic .info_wrap .card.work_year .card_number {
  display: flex;
  align-items: center;
  justify-content: center;
  -moz-column-gap: 90rem;
       column-gap: 90rem;
}
#infographic .info_wrap .card.work_year .card_number .card_image {
  width: 190rem;
}
#infographic .info_wrap .card.work_year .card_caption {
  margin-top: 0;
}
#infographic .info_wrap .card.work_paid .card_number {
  display: flex;
  align-items: center;
  justify-content: center;
  -moz-column-gap: 90rem;
       column-gap: 90rem;
}
#infographic .info_wrap .card.work_paid .card_number .card_image {
  width: 167rem;
}
#infographic .info_wrap .card.work_paid .card_caption {
  margin-top: 0;
}
#infographic .info_wrap .card.work_overtime .card_number {
  display: flex;
  align-items: center;
  justify-content: center;
  -moz-column-gap: 10rem;
       column-gap: 10rem;
}
#infographic .info_wrap .card.work_overtime .card_number .card_image {
  width: 190rem;
}
#infographic .info_wrap .card.work_overtime .card_caption {
  margin-top: 0;
}

@media screen and (max-width: 768px) {
  .w300, #infographic .info_wrap .card.company_capital, #infographic .info_wrap .card.company_sales {
    width: 325rem;
  }
  .w580, #infographic .info_wrap .card.company_shareholder, .w610, #infographic .info_wrap .card.employee_career, #infographic .info_wrap .card.employee_bonus, #infographic .info_wrap .card.work_childcare, #infographic .info_wrap .card.work_year, #infographic .info_wrap .card.work_paid, #infographic .info_wrap .card.work_overtime {
    width: 100%;
  }
  #infographic .mv h1 {
    top: 60rem;
  }
  #infographic .info_wrap {
    row-gap: 20rem;
  }
  #infographic .info_wrap .card {
    padding: 30rem;
  }
  #infographic .info_wrap .card dt {
    font-size: 45rem;
    margin-bottom: 30rem;
  }
  #infographic .info_wrap .card .card_number .count_text {
    font-size: 40rem;
  }
  #infographic .info_wrap .card .card_number .count_text .count {
    font-size: 90rem;
  }
  #infographic .info_wrap .card .card_number .count_text .unit {
    font-size: 40rem;
  }
  #infographic .info_wrap .card .card_caption {
    font-size: 22rem;
  }
  #infographic .info_wrap .card.company_shareholder .card_number {
    justify-content: center;
    -moz-column-gap: 15rem;
         column-gap: 15rem;
  }
  #infographic .info_wrap .card.company_shareholder .card_number .card_image {
    width: 156rem;
  }
  #infographic .info_wrap .card.employee_department dt {
    margin-bottom: 90rem;
  }
  #infographic .info_wrap .card.employee_department .card_number {
    width: 205rem;
  }
  #infographic .info_wrap .card.employee_department .card_number p {
    font-size: 24rem;
  }
  #infographic .info_wrap .card.employee_department .card_number p .count {
    font-size: 50rem;
  }
  #infographic .info_wrap .card.employee_department .card_number p .unit {
    font-size: 24rem;
  }
  #infographic .info_wrap .card.employee_department .card_number p:nth-of-type(1) {
    width: 255rem;
    top: -67rem;
    left: 83rem;
  }
  #infographic .info_wrap .card.employee_department .card_number p:nth-of-type(2) {
    width: 303rem;
    top: -15rem;
    left: 98rem;
  }
  #infographic .info_wrap .card.employee_department .card_number p:nth-of-type(3) {
    width: 250rem;
    top: 53rem;
    left: 153rem;
  }
  #infographic .info_wrap .card.employee_department .card_number p:nth-of-type(4) {
    width: 155rem;
    top: -67rem;
    left: -87rem;
  }
  #infographic .info_wrap .card.employee_department .card_number p:nth-of-type(5) {
    width: 250rem;
    top: -19rem;
    left: -199rem;
  }
  #infographic .info_wrap .card.employee_department .card_number p:nth-of-type(6) {
    width: 190rem;
    top: 30rem;
    left: -200rem;
  }
  #infographic .info_wrap .card.employee_department .card_number p:nth-of-type(6)::after {
    height: 50rem;
    transform: rotate(60deg);
    bottom: 2rem;
    right: 0rem;
  }
  #infographic .info_wrap .card.employee_department .card_number p:nth-of-type(7) {
    width: 190rem;
    top: 77rem;
    left: -202rem;
  }
  #infographic .info_wrap .card.employee_department .card_number p:nth-of-type(7)::after {
    height: 50rem;
    transform: rotate(60deg);
    bottom: 2rem;
    right: 0rem;
  }
  #infographic .info_wrap .card.employee_department .card_number p:nth-of-type(8) {
    width: 221rem;
    bottom: 10rem;
    left: -202rem;
  }
  #infographic .info_wrap .card.employee_department .card_number p:nth-of-type(8)::after {
    height: 50rem;
    transform: rotate(60deg);
    bottom: 2rem;
    right: 0rem;
  }
  #infographic .info_wrap .card.employee_bonus .card_number .card_image {
    margin-block: 0 15rem;
  }
  #infographic .info_wrap .card.employee_bonus .card_caption {
    margin-top: 15rem;
  }
  #infographic .info_wrap .card.employee_commute .card_number {
    flex-wrap: wrap;
    align-items: flex-end;
    row-gap: 50rem;
  }
  #infographic .info_wrap .card.employee_commute .card_number .card_number_item {
    width: 50%;
  }
  #infographic .info_wrap .card.employee_commute .card_number .card_number_item:nth-of-type(even) {
    padding-top: 0;
  }
  #infographic .info_wrap .card.work_menu .card_number {
    flex-direction: row;
    flex-wrap: wrap;
  }
  #infographic .info_wrap .card.work_menu .card_number .count_text {
    font-size: 24rem;
    text-align: left;
  }
  #infographic .info_wrap .card.work_menu .card_number .menu_total {
    display: contents;
  }
  #infographic .info_wrap .card.work_menu .card_number .menu_total .count_text {
    width: 100%;
    order: 1;
    margin-bottom: 25rem;
  }
  #infographic .info_wrap .card.work_menu .card_number .menu_total .card_caption {
    order: 3;
    margin-block: 20rem;
  }
  #infographic .info_wrap .card.work_menu .card_number .menu_subtotal {
    justify-content: center;
    align-items: flex-end;
    -moz-column-gap: 40rem;
         column-gap: 40rem;
    order: 2;
  }
  #infographic .info_wrap .card.work_menu .card_number .menu_subtotal .menu_subtotal_item .card_image:where(.item-noodle *) {
    width: 240rem;
  }
  #infographic .info_wrap .card.work_menu .card_number .menu_subtotal .menu_subtotal_item .card_image:where(.item-rice *) {
    width: 200rem;
  }
  #infographic .info_wrap .card.work_childcare .card_number {
    margin-top: -20rem;
  }

}
.count {
  display: inline-block;
  text-align: right;   /* 桁が増えても右寄せ */

}

.vs2 {
   min-width: 2ch;
}

.vs3 {
   min-width: 3ch;
}
.vs3s {
   min-width: 3.4ch;
}
.vs4 {
   min-width: 4ch;
}


/*
.length01 {
  width: 140rem;
  display: inline-block;
}
.length02 {
  width: 120rem;
  display: inline-block;
}

.length03 {
  width: 190rem;
  display: inline-block;
}

.length04 {
  width: 150rem;
  display: inline-block;
}

.length05 {
  width: 185rem;
  display: inline-block;
}

@media screen and (max-width: 768px) {
  
  .length01,
  .length02,
  .length03,
  .length04,
  .length05 {
    width: auto;
    display: inline-block;
  }
}
*/
/*# sourceMappingURL=recruit.css.map */