@charset "UTF-8";

/* after delete */
.privacy_first_contents_txts ol {
  padding-left: 1em;
}

.privacy_first_contents_txts li {
  position: relative;
  list-style: decimal;
  content: none;
  padding-left: 0;
}

.privacy_first_contents_txts li:before {
  display: none;
}

/* news single */
.news_single_contents_body a {
  color: var(--cl-black-2);
}

.wp-block-embed__wrapper {
  aspect-ratio: 16 / 9;
  width: 100%;
}

.wp-block-embed iframe {
  width: 100%;
  height: 100%;
}

.wp-block-group-is-layout-flex {
  display: flex;
  flex-direction: row;
  gap: 1rem;
  align-items: flex-start;
}

.wp-block-group-is-layout-flex:not(:last-child) {
  margin-bottom: 2em;
}

.wp-block-group-is-layout-flex .wp-block-image {
  flex-shrink: 0;
  width: 40%;
}

.wp-block-group-is-layout-flex {
  font-size: 12px;
}

.news_single_contents_body p strong {
  font-size: 120%;
}

.wp-block-separator {
  border-top: 1px solid;
  color: var(--cl-gray-3);
  margin-top: 2rem;
  margin-bottom: 2rem;
}

.wp-block-image.size-medium {
  width: 60%;
}

.c-breadcrumb_icon svg,
.c-breadcrumb_icon img {
  stroke: var(--cl-black-2);
}

.business_first .c-breadcrumb_icon svg,
.career_first .c-breadcrumb_icon svg {
  stroke: var(--cl-white);
}

figure.wp-block-gallery.has-nested-images {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}

.wp-block-gallery.has-nested-images figure.wp-block-image:has(figcaption):before {
  display: none !important;
}

.wp-block-gallery.has-nested-images figure.wp-block-image figcaption {
  position: static !important;
  background: transparent !important;
  box-sizing: border-box !important;
  color: var(--cl-gray-5) !important;
  font-size: 12px !important;
  margin: 0 !important;
  overflow: auto !important;
  padding: .5rem 0 !important;
  scrollbar-color: none !important;
  scrollbar-gutter: none !important;
  scrollbar-width: none !important;
  text-align: left !important;
  text-shadow: none !important;
  will-change: transform !important;
}

.wp-block-gallery.has-nested-images figcaption {
  flex-basis: initial !important;
  flex-grow: initial !important;
  text-align: initial !important;
}

.c-side_line .mask_in {
  position: absolute;
  top: 0;
  left: 0;
}

.c-news_panel_info {
  gap: 8px;
}

.c-news_panel_cats_txt {
  white-space: nowrap;
}

.subpage_career_bg {
  background-image: url(./img/common/bg-bnr-career@sp.webp);
}

.form-step {
  display: none;
}

.form-step.active {
  display: block;
}

.contact_first_contents_body .formLabel.-confirm {
  color: var(--cl-gray-1);
}

[data-confirm] {
  display: block;
  font-size: 16px;
  line-height: 1;
  font-family: MFW-PA1GothicStd-Medium, sans-serif;
  padding: 20px 0;
  border-top: 1px solid var(--cl-gray-3);
}

.contact_first_contents_body .formActions button.is-disabled {
  background-color: var(--cl-gray-1);
  cursor: not-allowed;
}

.contact_first_contents_body .formActions.-two {
  display: flex;
  flex-direction: column;
  gap: 15px;
}

.contact_first_contents_body .formActions button {
  height: 60px;
}

.contact_first_contents_body .formActions button.btn-back {
  background-color: var(--cl-white);
  border: 1px solid var(--cl-black-2);
  color: var(--cl-black-2);
}

.contact_first_contents_body .formActions {
  padding-top: max(50px, calc(var(--vw100) * 50 / 393));
}

.formAgree .wpcf7-list-item {
  margin: 0;
}

.contact_first_contents_body .wpcf7 form.failed .wpcf7-response-output,
.contact_first_contents_body .wpcf7 form.aborted .wpcf7-response-output,
.contact_first_contents_body .wpcf7 form.invalid .wpcf7-response-output,
.contact_first_contents_body .wpcf7 form.unaccepted .wpcf7-response-output,
.contact_first_contents_body .wpcf7 form.payment-required .wpcf7-response-output {
  margin: 20px 0 0;
  padding: 10px;
  background-color: rgba(220, 50, 50, 0.1);
  color: #dc3232;
  text-align: center;
  font-size: 12px;
}

.contact_first_contents_body .wpcf7 form.sent .wpcf7-response-output {
  margin: 20px 0 0;
  padding: 10px;
  background-color: rgba(70, 180, 80, 0.1);
  color: #46b450;
  text-align: center;
  font-size: 12px;
}

/* .g-footer_logo_i svg,
.g-footer_logo_i img {
  width: 100%;
} */
/* 
.g-footer_logo_i {
  height: calc(var(--vw100) * 34.86 / 393);
  line-height: 0;
}

.g-footer_logo_i.LogoSplit1_G {
  width: calc(var(--vw100) * 34.44 / 393);
  aspect-ratio: 34.44 / 393;
}

.g-footer_logo_i.LogoSplit2_A {
  width: calc(var(--vw100) * 41.2 / 393);
  aspect-ratio: 41.2 / 393;
}

.g-footer_logo_i.LogoSplit3_N {
  width: calc(var(--vw100) * 35.71 / 393);
  aspect-ratio: 35.71 / 393;

}

.g-footer_logo_i.LogoSplit4_Y {
  width: calc(var(--vw100) * 37.44 / 393);
  aspect-ratio: 37.44 / 393;

}

.g-footer_logo_i.LogoSplit5_M {
  width: calc(var(--vw100) * 39.72 / 393);
  aspect-ratio: 39.72 / 393;

}

.g-footer_logo_i.LogoSplit6_E {
  width: calc(var(--vw100) * 33.38 / 393);
  aspect-ratio: 33.38 / 393;

}

.g-footer_logo_i.LogoSplit7_D {
  width: calc(var(--vw100) * 36.55 / 393);
  aspect-ratio: 36.55 / 393;

}

.g-footer_logo_i.LogoSplit8_E {
  width: calc(var(--vw100) * 32.54 / 393);
  aspect-ratio: 32.54 / 393;
} */

.career_single_first_contents_block_body a {
  color: var(--cl-black-2);
}

/*  */
.c-slot_line svg {
  fill: #242424;
}

.contact_first_contents_body .wpcf7-not-valid-tip {
  font-size: 12px;
  color: var(--cl-red);
  margin-top: 10px;
}

.contact_first_contents_body input.wpcf7-not-valid {
  border: solid 1px var(--cl-red);
}

.form-global-block {
  display: block;
  font-size: 12px;
  color: var(--cl-red);
  margin-top: 10px;
  text-align: center;
}

.news_single_first .ctr {
  position: relative;
  z-index: 2;
}

.g-footer_main_foot_list_icon {
  flex-shrink: 0;
}

.g-header_logo svg,
.home_first_ttl svg {
  overflow: visible;
}

/* .g-footer_logo_inner {
  opacity: 0;
  visibility: hidden;
  display: none;
} */

.ph_grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: max(5px, calc(var(--vw100) * 5 / 393));
}

.ph_grid img {
  width: 100%;
}

.company_business_sect_sub {
  margin-top: max(15px, var(--vw100) * 15 / 393);
}

.company_business_sect_sub .home_business_sect_sub_panel {
  position: relative;
}

.company_business_sect_sub .home_business_sect_sub_panel::before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  background-color: var(--cl-black-2);
  z-index: 1;
  opacity: 0.4;
}

.company_business_sect_sub .home_business_sect_sub_panel_ttl {
  font-size: 11px;
  padding: 10px;
  color: var(--cl-white);
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  z-index: 1;
}

.company_first_slideshow_thumb {
  backface-visibility: hidden;
  transform: translateZ(0);
}

@media (max-width:768px) {
  .career_article_list {
    flex-direction: column;
  }

  .contact-footer {
    padding: max(100px, calc(var(--vw100) * 100 / 393)) 0;
  }

  .g-footer_main_body {
    padding-top: max(40px, calc(var(--vw100) * 40 / 393));
  }

  .g-footer_main_inner {
    margin-top: calc(var(--vw100) * (-1 * 100) / 393);
    padding-top: calc(var(--vw100) * 100 / 393)
  }

  .c-breadcrumb {
    gap: 8px;
  }

  .c-breadcrumb_txt {
    font-size: 11px;
  }

  .company_ag_scene {
    width: 200%;
    margin-left: -50%;
  }

  .wp-block-gallery.has-nested-images figure.wp-block-image:not(#individual-image) {
    width: 100% !important;
  }

  /* .g-footer_logo svg {
    overflow: visible;
  } */

  .g-footer_main_head {
    padding-top: 40px;
    justify-content: space-between;
  }

  .g-footer_main_foot {
    padding-top: 50px;
  }

  /* .g-footer_logo_inner {
    opacity: 0;
    visibility: hidden;
    display: none;
  } */
}

@media (min-width:769px) {
  .home_intro_txts {
    font-size: 19px;
  }

  .ph_grid {
    grid-template-columns: repeat(3, 1fr);
    gap: max(5px, calc(var(--vw100) * 5 / 1440));
  }

  .g-header_child {
    padding: 14px 15px 20px;
  }

  /* .company_business_sect {
    margin-bottom: max(100px, var(--vw100) * 100 / 1440);
  } */


  .company_business_sect_sub {
    margin-top: max(10px, calc(var(--vw100) * 10 / 1440));
  }

  .company_business_sect_sub .home_business_sect_sub_list {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
  }

  .company_business_sect_sub .home_business_sect_sub_list .home_business_sect_sub_list_i {
    width: 100%;
  }

  /* .career_article_panel_thumb {
    position: relative;
    overflow: hidden;
  }

  .career_article_panel_thumb .bg_cover {
    object-fit: cover;
    width: 120%;
    height: 120%;
    object-position: center;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
  } */

  /* .g-footer_logo_hotfix {
    display: none;
  } */
  .career_article_list {
    gap: max(30px, calc(var(--vw100) * 30 / 1440)) max(20px, calc(var(--vw100) * 20 / 1440));
  }

  .single-page_first_inner {
    position: relative;
    z-index: 1;
  }

  figure.wp-block-gallery.has-nested-images {
    flex-direction: row;
  }

  .subpage_career_bg {
    background-image: url(./img/common/bg-bnr-career@2x.webp);
  }

  [data-confirm] {
    padding: 10px 0;
  }

  .contact_first_contents_body .formActions {
    padding-top: min(100px, calc(var(--vw100) * 100 / 1440));
  }

  .contact_first_contents_body .formActions button {
    height: 80px;
  }

  .contact_first_contents_body .formActions.-two {
    flex-direction: row;
  }

  /* .g-footer_logo_i {
    height: calc(var(--vw100) * 172 / 1440);
  } */

  /* .g-footer_logo_inner {
    justify-content: flex-start;
  } */
  /* 
  .g-footer_logo_i.LogoSplit1_G {
    width: calc(var(--vw100) * 166 / 1440);
    aspect-ratio: 166 / 172;
    position: relative;
    right: calc(var(--vw100) * 5 / 1440);
  }

  .g-footer_logo_i.LogoSplit2_A {
    width: calc(var(--vw100) * 197 / 1440);
    aspect-ratio: 197 / 172;
  }

  .g-footer_logo_i.LogoSplit3_N {
    width: calc(var(--vw100) * 171 / 1440);
    aspect-ratio: 171 / 172;

  }

  .g-footer_logo_i.LogoSplit4_Y {
    width: calc(var(--vw100) * 184 / 1440);
    aspect-ratio: 184 / 172;

  }

  .g-footer_logo_i.LogoSplit5_M {
    width: calc(var(--vw100) * 191 / 1440);
    aspect-ratio: 191 / 172;

  }

  .g-footer_logo_i.LogoSplit6_E {
    width: calc(var(--vw100) * 160 / 1440);
    aspect-ratio: 160 / 172;

  }

  .g-footer_logo_i.LogoSplit7_D {
    width: calc(var(--vw100) * 175 / 1440);
    aspect-ratio: 175 / 172;

  }

  .g-footer_logo_i.LogoSplit8_E {
    width: calc(var(--vw100) * 157 / 1440);
    aspect-ratio: 157 / 172;
  } */

  .contact_first_contents_body {
    max-width: max(700px, calc(var(--vw100) * 700 / 1440));
  }
}



/* .news_single_contents_body strong {
  font-size: 120%;
  font-weight: bold;
} */


/* 参考CSS（必要に応じて調整してください） */
.is-loading-anchor {
  position: relative;
}

.btn-spinner {
  display: none;
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
}

.btn-spinner__dot {
  position: absolute;
  left: 50%;
  top: 50%;
  width: 1.25em;
  height: 1.25em;
  transform: translate(-50%, -50%);
  border-radius: 50%;
  border: 2px solid currentColor;
  border-top-color: transparent;
  animation: btnspin 0.8s linear infinite;
}

.is-loading {
  opacity: 0.85;
}

.visually-hidden {
  position: absolute !important;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

@keyframes btnspin {
  to {
    transform: translate(-50%, -50%) rotate(360deg);
  }
}

/* スクロールロック用の保険（JSでもoverflow制御しています） */
.js-scroll-locked {
  overscroll-behavior: contain;
  cursor: wait;
  pointer-events: none;
}

.contact_first_contents_body .formActions button.is-loading {
  background-color: rgba(13, 13, 13, 0.5);
}

@media (min-width:769px) {
  .g-header_list_txt {
    letter-spacing: normal;
  }

  .home_intro_contents {
    gap: max(140px, var(--vw100) * 140 / 1440);
  }
}

.contactTabs {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  margin-bottom: 30px;
  gap: 5px;
}

.contactTab {
  /* padding: .6rem 1rem; */
  /* border: 1px solid #ccc; */
  display: flex;
  align-items: center;
  justify-content: center;
  height: 50px;
  border-bottom: 2px solid var(--cl-black-2);
  font-size: 16px;
}

.contactTab.is-active,
.contactTab[aria-selected="true"] {
  /* border-color: #000; */
  background-color: var(--cl-black-2);
  color: var(--cl-white);
  pointer-events: none;
}

/* 確認画面でタブ非表示 */
.contact_first_contents_body.is-confirm .contactTabs {
  display: none;
}

.formSelectWrap {
  position: relative;
  display: block;
}

/* セレクト本体のベース */
.formSelectWrap select,
.formSelectWrap .wpcf7-select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  display: block;
  /* width: max(180px, calc(var(--vw100) * 180 / 393)); */
  width: 100%;
  border: solid 1px var(--cl-gray-1);
  border-radius: 2px;
  outline-width: 0;
  font-size: 16px;
  line-height: 1;
  font-family: MFW-PA1GothicStd-Medium, sans-serif;
  background-color: transparent;
  letter-spacing: -0.025em;
  height: 50px;
  padding: 10px 15px;
  position: relative;
  color: var(--cl-black-2);
}

/* Windows IE/Edge旧式のデフォ矢印を消す */
.formSelectWrap select::-ms-expand {
  display: none;
}


.contact_first_contents_body input[type=text],
.contact_first_contents_body input[type=email],
.contact_first_contents_body input[type=tel],
.contact_first_contents_body input[type=tel] {
  letter-spacing: -0.025em;
  padding: 10px 15px;
  height: 50px;
}

.contact_first_contents_body textarea {
  letter-spacing: -0.025em;
  padding: 10px 15px;
  line-height: 1.7;
}

.formSelectWrap {
  /* width: max(180px, calc(var(--vw100) * 180 / 393)); */
  width: 100%;
}

.formSelectWrap svg {
  transform: rotate(90deg);
  width: 50px;
  height: 50px;
  position: absolute;
  top: 0;
  right: 0;
  fill: var(--cl-black-2);
  pointer-events: none;
}

/* 矢印（疑似要素）。SVGをdata URIで埋め込み */
/* .formSelectWrap select, .formSelectWrap .wpcf7-select::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 16px;
  width: 14px;
  height: 14px;
  transform: translateY(-50%);
  pointer-events: none;
  background-repeat: no-repeat;
  background-position: center;
  background-size: 14px 14px;
} */

/* .formSelectWrap select:hover {
  border-color: #bbb;
} */

.formSelectWrap select:focus {
  outline: none;
  border-color: var(--cl-black-2);
}

.btn-confirm.is-disabled {
  pointer-events: none;
}

@media (min-width:769px) {
  .contactTabs {
    margin-bottom: max(50px, var(--vw100) * 50 / 1440);
    gap: max(10px, var(--vw100) * 10 / 1440);
  }

  .contactTab {
    height: max(65px, var(--vw100) * 65 / 1440);
    font-size: 22px;
    border-bottom: 4px solid var(--cl-black-2);
  }

  .contact_first_contents_body input[type=text],
  .contact_first_contents_body input[type=email],
  .contact_first_contents_body input[type=tel],
  .contact_first_contents_body input[type=tel] {
    height: 70px;
    padding: 20px 25px;
  }

  .contact_first_contents_body textarea {
    padding: 20px 25px;
  }

  .formSelectWrap {
    width: 500px;
    /* width: 100%; */
  }

  .formSelectWrap select,
  .formSelectWrap .wpcf7-select {
    height: 70px;
    padding: 20px 25px;
    width: 500px;
    /* width: 100%; */
  }

  .formSelectWrap svg {
    top: 50%;
    transform: translateY(-50%) rotate(90deg);
  }

  .career_recruit_btn_icon svg,
  .career_recruit_btn_icon img {
    width: 7px;
    height: 5.44px;
  }
}

@media (hover: hover) {
  .contactTab {
    transition: opacity ease .4s;
  }

  .contactTab:hover {
    opacity: 0.5;
  }

  .contact_thanks_btn,
  .contact_first_contents_body .formActions button {
    transition: background-color ease .4s, color ease .4s, border-color ease .4s, opacity ease .4s, border-color ease .4s;
  }

  .contact_thanks_btn:hover,
  .contact_first_contents_body .formActions button:hover {
    border-color: var(--cl-yellow);
    background-color: var(--cl-yellow);
    color: var(--cl-black);
  }

  .contact_first_contents_body .formActions button.btn-back:hover {
    border-color: var(--cl-black-2);
    background-color: transparent;
    color: var(--cl-black);
    opacity: 0.5;
  }
}

.g-header_child-lang {
  padding: 14px 15px 20px;
}