/*! This style is addtional style for Recruit site */
@charset "UTF-8";

/*-----benefit START---------*/

.modal-front__contents {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}

.modal-front__contents .modal-front__content {
  width: calc(215 / 375 * 1rem);
  height: calc(142 / 375 * 1rem);
}

.factory-gallery_inner {
  margin-bottom: calc(100 / 375 * 1rem);
}

[data-layout="benefit"] .thumb-inner {
  position: relative;
}

[data-layout="benefit"] .thumb-txt {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  left: 5%;
  bottom: 5%;
  font-weight: 600;
  margin-top: 0.02666666rem;
  margin-bottom: 0.02666666rem;
  align-items: center;
}

[data-layout="benefit"] .thumb-txt .new {
  padding: 0.008rem 0.0133333333rem;
  background-color: red;
  font-weight: 600;
  color: #fff;
  font-family: var(--fontEn);
  margin-right: 0.02rem;
  font-size: var(--fz12);
}
[data-layout="benefit"] .thumb-img p {
  position: absolute;
  color: #fff;
  font-weight: 600;
  font-size: var(--fz12);
  margin-left: 0.032rem;
  margin-top: 0.016rem;
}

[data-layout="benefit"] .thumb-img .btn-circle_border {
  position: absolute;
  right: 0.0133333333rem;
  bottom: 0.0133333333rem;
}

[data-layout="benefit"] .factoryMap {
  position: relative;
}

[data-layout="benefit"] .pins .pin {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-flex: 0;
  -ms-flex: none;
  flex: none;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  width: calc(37 / 375 * 1rem);
  height: calc(62 / 375 * 1rem);
  padding-bottom: calc(15 / 375 * 1rem);
  margin-right: 0.04rem;
  font-size: var(--fz20);
  color: #fff;
  background: url(../img/icn_mappin.svg) no-repeat 50% / contain;
  font-family: "Work Sans", sans-serif;
  font-weight: 600;
  text-align: start;
  position: absolute;
}

[data-layout="benefit"] .pins .pin01 {
  right: 18%;
  bottom: 30%;
}

[data-layout="benefit"] .pins .pin02 {
  right: 34%;
  top: 25%;
}

[data-layout="benefit"] .pins .pin03 {
  right: 41%;
  top: 16%;
}

[data-layout="benefit"] .pins .pin04 {
  right: 47%;
  top: 10%;
}

[data-layout="benefit"] .pins .pin05 {
  left: 19%;
  top: 13%;
}

[data-layout="benefit"] .thumb-txt .pin {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-flex: 0;
  -ms-flex: none;
  flex: none;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  width: 0.0451466667rem;
  height: 0.0762666667rem;
  width: calc(24 / 375 * 1rem);
  height: calc(36 / 375 * 1rem);
  padding-bottom: 0.0186666667rem;
  margin-right: 0.04rem;
  font-size: var(--fz13);
  color: #fff;
  background: url(../img/icn_mappin.svg) no-repeat 50% / contain;
  font-family: "Work Sans", sans-serif;
  font-weight: 600;
  text-align: start;
}

.modal-close {
  position: absolute;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  /*width: .224rem;*/
  width: 0.32rem;
  cursor: pointer;
  -webkit-transition: 0.3s linear;
  transition: 0.3s linear;
  background-color: transparent;
  border: none;
}

.modal-close p {
  position: relative;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  margin-right: 0.0373333333rem;
  font-size: calc(16 / 375 * 1rem);
  line-height: 1;
  color: #fff !important;
  font-family: "Work Sans", sans-serif;
  font-weight: 400;
  text-align: start;
}

.modal-close:after {
  content: "";
  background: url(../img/common/icn_modal_close.svg) no-repeat 50% / contain;
  width: calc(46 / 375 * 1rem);
  height: calc(46 / 375 * 1rem);
}

/* モーダルのスタイル */
.modal {
  visibility: hidden;
  position: fixed;
  z-index: 1000;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.8);
  justify-content: center;
  align-items: center;
  overflow-y: auto;
  opacity: 0; /* 透明にする */
  transition: opacity 0.3s ease, visibility 0.3s ease;
}

/* モーダルが表示されているとき */
.modal.show {
  display: flex;
  visibility: visible;
  opacity: 1;
  overflow: hidden;
}
/* モーダル内のコンテンツ */
.modal-content {
  /* background-color: white;
    
    border-radius: 10px;*/
  padding: 20px;
  max-width: 60%;
  max-height: 90%;
  text-align: center;
  position: relative;
}

/* スライド画像のスタイル */
.slide {
  display: none;
  transition: opacity 0.3s ease, transform 0.3s ease;
  opacity: 0;
}

.slide.active {
  display: block;
  /* transform: translateX(0); */
  opacity: 1;
}

.btn-prev,
.btn-next {
  position: absolute;
  top: 47%;
  transform: translateY(-50%);
  background-color: rgba(255, 255, 255, 0.7);
  border: none;
  padding: 10px;
  /* cursor: pointer;*/
}

.btn-prev {
  left: -0.1333333333rem;
}

.btn-next {
  right: -0.1333333333rem;
}

/* 前へボタンの背景画像 */
.btn-prev {
  background-image: url("../img/benefit/slider_arrow_l_w.png");
  background-size: contain;
  background-repeat: no-repeat;
  width: calc(46 / 375 * 1rem); /* 画像のサイズに応じて調整 */
  height: calc(46 / 375 * 1rem); /* 画像のサイズに応じて調整 */
  border: none;
  background-color: transparent;
  cursor: pointer;
}

/* 次へボタンの背景画像 */
.btn-next {
  background-image: url("../img/benefit/slider_arrow_r_w.png");
  background-size: contain;
  background-repeat: no-repeat;
  width: calc(46 / 375 * 1rem); /* 画像のサイズに応じて調整 */
  height: calc(46 / 375 * 1rem); /* 画像のサイズに応じて調整 */
  border: none;
  background-color: transparent;
  cursor: pointer;
}

[data-layout="benefit"] .ourSystem {
  position: relative;
  background: #fff;
}
[data-layout="benefit"] .ourSystem_inner {
  position: relative;
  margin-left: auto;
}

[data-layout="benefit"] .ourSystem .items {
  display: flex;
  flex-wrap: wrap; /* アイテムが折り返せるようにする */
  justify-content: space-between; /* アイテム間にスペースを配置 */
}

[data-layout="benefit"] .ourSystem .item {
  width: 48%; /* 横幅を2列にするために約50% */
  margin-bottom: 0.053333333rem; /* 下にマージンを入れて余白を確保 */
}

[data-layout="benefit"] .ourSystem .item-head {
  font-weight: bold;
  margin-bottom: 0.026666666rem;
  font-size: var(--fz20);
  color: #ad0b40;
}

[data-layout="benefit"] .ourSystem .item-list {
  margin-bottom: 0.013333333rem;
  list-style: none;
  padding-left: 0;
  font-size: var(--fz16);
  font-weight: 500;
  padding-top: 0.013333333rem;
  /*padding-bottom: 0.013333333rem;*/
  list-style-type: disc;
  text-indent: 0.013333333rem;
  margin-left: 0.053333333rem;
  line-height: 1.8;
}

[data-layout="benefit"] .ourSystem .Section_head {
  margin-bottom: 0.08rem;
}

[data-layout="benefit"] .ourSystem .thumbs {
  display: flex;
  flex-wrap: wrap; /* アイテムが折り返せるようにする */
  justify-content: space-between; /* アイテム間にスペースを配置 */
  margin-top: 0.08rem;
}

[data-layout="benefit"] .ourSystem .thumb {
  width: 48%; /* 横幅を2列にするために約50% */
  margin-bottom: 0.053333333rem; /* 下にマージンを入れて余白を確保 */
}

[data-layout="benefit"] .ourSystem .thumb p {
  text-align: right;
}

@media (min-width: 768px) {
  .factoryTour {
    /*margin-bottom:calc(100 / 375 * 1rem);*/
    padding-bottom: calc(50 / 375 * 1rem);
  }
  .Modal {
    padding: 0.2666666667rem;
  }

  .modal-close {
    top: -0.1rem;
    right: -0.3rem;
  }

  [data-layout="benefit"] .ourSystem {
    padding-right: 0.32rem;
    /* padding-right: .2666666667rem;*/
    margin-right: calc(50% - 1.44rem);
    margin-bottom: 0.4rem;
    margin-left: calc(50% - 50vw);
  }

  [data-layout="benefit"] .ourSystem_inner {
    /*width: 2.6133333333rem;
   padding: .2666666667rem 0 .1866666667rem;*/
    padding: 0.32rem 0 0.1866666667rem;
    width: 2.7rem;
  }

  [data-layout="benefit"] .ourSystem .item {
    margin-bottom: calc(50 / 375 * 1rem);
  }

  .item01 {
    order: 1; /* 左上 */
  }

  .item02 {
    order: 3; /* 左下 */
  }

  .item03 {
    order: 2; /* 右上 */
  }

  .item04 {
    order: 4; /* 右下 */
    margin-bottom: 0;
  }

  [data-layout="benefit"] .ourSystem .block {
    margin-bottom: calc(100 / 375 * 1rem);
  }

  [data-layout="benefit"] .ourSystem .item.item04 {
    margin-bottom: 0;
  }
}

@media (max-width: 767px) {
  [data-layout="benefit"] .PageHead .thumb img {
    position: relative;
    width: 100%;
    height: 100%;
    bottom: 0;
    left: -18%;
    object-fit: cover;
  }

  [data-layout="benefit"] .Main {
    padding-bottom: calc(30 / 375 * 1rem);
  }

  [data-layout="benefit"] .PageTitle {
    margin-bottom: 0.1066666667rem;
  }

  [data-layout="benefit"] .pins .pin {
    width: calc(19 / 375 * 1rem);
    height: calc(32 / 375 * 1rem);
    padding-bottom: calc(8 / 375 * 1rem);
    margin-right: 0.04rem;
    font-size: var(--fz10);
  }

  [data-layout="benefit"] .pins .pin01 {
    right: 14%;
    bottom: 30%;
  }

  [data-layout="benefit"] .pins .pin02 {
    right: 29%;
    top: 19%;
  }

  [data-layout="benefit"] .pins .pin03 {
    right: 35%;
    top: 10%;
  }

  [data-layout="benefit"] .pins .pin04 {
    right: 42%;
    top: 4%;
  }

  [data-layout="benefit"] .pins .pin05 {
    left: 18%;
    top: 8%;
  }
  [data-layout="benefit"] .thumb-txt .pin {
    margin-right: 0.02rem;
  }
  [data-layout="benefit"] .thumb-txt {
    left: 0;
  }

  .factory-gallery_inner {
    margin-bottom: calc(50 / 375 * 1rem);
  }

  .modal-front__contents .modal-front__content {
    width: 48%;
    height: auto;
  }

  .modal-content {
    max-width: 100%;
    max-height: 100%;
  }

  .btn-prev {
    width: calc(25 / 375 * 1rem);
    height: calc(25 / 375 * 1rem);
    z-index: 1100;
    left: 0.01rem;
  }

  .btn-next {
    width: calc(25 / 375 * 1rem);
    height: calc(25 / 375 * 1rem);
    z-index: 1100;
    right: 0.01rem;
  }

  .modal-close {
    top: -7%;
    right: 0;
  }

  .modal-close::after {
    width: calc(25 / 375 * 1rem);
    height: calc(25 / 375 * 1rem);
  }

  .btn-circle_border {
    width: calc(24 / 375 * 1rem);
    height: calc(24 / 375 * 1rem);
  }

  .btn-circle_border:after {
    width: calc(8 / 375 * 1rem);
    height: calc(8 / 375 * 1rem);
  }

  [data-layout="benefit"] .ourSystem .item {
    width: 100%;
    order: initial;
  }

  [data-layout="benefit"] .ourSystem .thumb {
    width: 100%;
  }

  [data-layout="benefit"] .ourSystem {
    padding-right: 0;
    margin-right: 0;
    margin-bottom: calc(30 / 375 * 1rem);
    margin-left: calc(50% - 50vw);
  }

  [data-layout="benefit"] .ourSystem_inner {
    /*width: 2.6133333333rem;
   padding: .2666666667rem 0 .1866666667rem;*/
    padding-top: calc(60 / 375 * 1rem);
    padding-right: 0.0533333333rem;
    padding-bottom: calc(30 / 375 * 1rem);
    padding-left: 0.0533333333rem;
    width: 100%;
  }

  [data-layout="benefit"] .ourSystem .item {
    margin-bottom: calc(30 / 375 * 1rem);
  }

  [data-layout="benefit"] .ourSystem .block {
    margin-bottom: calc(50 / 375 * 1rem);
  }

  [data-layout="benefit"] .ourSystem .thumb p {
    font-size: var(--fz14);
  }

  [data-layout="benefit"] .ourSystem .item-list {
    font-size: 0.0373333333rem;
    line-height: 0.0653333333rem;
    padding-top: calc(3 / 375 * 1rem);
  }
  [data-layout="benefit"] .ourSystem .items .item04 {
    margin-bottom: 0;
  }
}
