@charset "UTF-8";
*, *::after, *::before {
  line-break: strict;
  overflow-wrap: anywhere;
  word-break: normal;
  min-inline-size: 0;
  box-sizing: border-box;
}

html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure, picture,
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {
  font: normal normal 400 100%/1 "Noto Sans JP", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", Arial, Verdana, sans-serif;
  color: #000;
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  vertical-align: baseline;
  background: transparent;
}

html {
  -webkit-font-smoothing: antialiased;
  -webkit-text-size-adjust: 100%;
  font-size: 62.5%;
  height: 100%;
  overflow-y: scroll;
}
@media screen and (max-width: 1280px) {
  html {
    font-size: calc(10 / 1280 * 100vw);
  }
}
@media screen and (max-width: 767px) {
  html {
    font-size: clamp(0%, 1.3333333333vw, 31.25%);
  }
}
html:has(body.is-fixed) {
  overflow: clip;
  overscroll-behavior: none;
}

body {
  min-height: 100svh;
}
body.is-fixed {
  overflow: clip;
  overscroll-behavior: none;
}

a {
  color: inherit;
  text-decoration: none;
  outline: none;
  background-color: transparent;
  transition: opacity 0.4s;
}
a:focus-visible {
  text-decoration: none;
  opacity: 0.8;
}
@media (any-hover: hover) {
  a[href*="tel:"] {
    pointer-events: none;
  }
  a:hover {
    text-decoration: none;
    opacity: 0.8;
  }
}

abbr[title] {
  border-bottom: none;
  text-decoration: none;
}

b, strong {
  font-weight: bolder;
}

code, kbd, samp {
  font-family: monospace, monospace;
  font-size: 1em;
}

span,
small {
  font: inherit;
  color: inherit;
}

picture {
  display: block;
}

sub, sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

img, svg {
  vertical-align: bottom;
  width: 100%;
  max-width: 100%;
  height: auto;
  border-style: none;
}

button, input, optgroup, select, textarea {
  font: normal normal 400 100%/1 "Noto Sans JP", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", Arial, Verdana, sans-serif;
  color: #000;
  margin: 0;
  padding: 0;
  border: none;
  border-radius: 0;
  background: none;
  outline: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

select::-ms-expand {
  display: none;
}

::placeholder {
  color: #A8A8A8;
}

button, input {
  overflow: visible;
}
button[disabled], input[disabled] {
  cursor: not-allowed;
}

button, select {
  text-transform: none;
}

button {
  text-align: left;
  cursor: pointer;
  touch-action: manipulation;
  transition: opacity 0.4s;
}
button:focus-visible {
  opacity: 0.8;
}
@media (any-hover: hover) {
  button:hover {
    opacity: 0.8;
  }
}

textarea {
  display: block;
  resize: none;
  field-sizing: content;
  overflow: auto;
}

[type=button]::-moz-focus-inner, [type=reset]::-moz-focus-inner, [type=submit]::-moz-focus-inner, button::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

[type=button]:-moz-focusring, [type=reset]:-moz-focusring, [type=submit]:-moz-focusring, button:-moz-focusring {
  outline: 1px dotted ButtonText;
}

[type=checkbox], [type=radio] {
  position: absolute;
  visibility: hidden;
  width: 1px;
}

fieldset {
  padding: 0.35em 0.75em 0.625em;
}

legend {
  color: inherit;
  display: table;
  max-width: 100%;
  padding: 0;
  white-space: normal;
}

progress {
  vertical-align: baseline;
}

[type=number]::-webkit-inner-spin-button, [type=number]::-webkit-outer-spin-button {
  height: auto;
}

[type=search] {
  -webkit-appearance: textfield;
  outline-offset: -2px;
}

[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}

::-webkit-file-upload-button {
  -webkit-appearance: button;
  font: inherit;
}

details {
  display: block;
}

summary {
  display: list-item;
}

template {
  display: none;
}

[hidden] {
  display: none;
}

pre {
  white-space: pre-wrap;
}

ul, ol {
  list-style: none;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

th, td {
  background-clip: padding-box;
}

:root {
  --header-height: 10rem;
}
@media screen and (max-width: 767px) {
  :root {
    --header-height: 12.8rem;
  }
}

.l-header {
  height: var(--header-height);
}
.l-header .inner {
  display: grid;
  grid-template-columns: 19.3rem 1fr;
  align-items: center;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 1000;
  padding-inline: min(80px, 4.1666666667vw);
  width: 100%;
  height: inherit;
  background: #fff;
}
@media screen and (min-width: 768px) {
  .l-header .inner {
    column-gap: min(90px, 4.6875vw);
  }
}
@media screen and (max-width: 767px) {
  .l-header .inner {
    grid-template-columns: 19.6rem 1fr;
    padding-inline: 4.8rem 0;
  }
}
.l-header .logo {
  position: relative;
  z-index: 1;
}
.l-header .logo_link {
  display: block;
}
@media screen and (min-width: 768px) {
  .l-header .menu-btn {
    display: none;
  }
}
@media screen and (max-width: 767px) {
  .l-header .menu-btn {
    position: relative;
    z-index: 1;
    display: grid;
    place-content: center;
    gap: 0.8rem;
    margin-left: auto;
    width: 14.4rem;
    height: inherit;
  }
}
@media screen and (max-width: 767px) {
  .l-header .menu-btn.is-active .menu-btn_line:nth-child(1) {
    transform: translateY(1.2rem) rotate(45deg);
  }
  .l-header .menu-btn.is-active .menu-btn_line:nth-child(2) {
    opacity: 0;
  }
  .l-header .menu-btn.is-active .menu-btn_line:nth-child(3) {
    transform: translateY(-1.2rem) rotate(-45deg);
  }
}
@media screen and (max-width: 767px) {
  .l-header .menu-btn_line {
    width: 4.8rem;
    height: 0.4rem;
    background: #000;
    transition: transform 0.6s, opacity 0.6s;
  }
}
@media screen and (min-width: 768px) {
  .l-header .gnav {
    display: flex;
    justify-content: space-between;
    height: inherit;
  }
}
@media screen and (max-width: 767px) {
  .l-header .gnav {
    position: fixed;
    inset: var(--header-height) 0 0 0;
    padding-block: 4.6rem 12rem;
    background: #fff;
    overflow-y: scroll;
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.6s;
  }
}
@media screen and (max-width: 767px) {
  .l-header .gnav.is-open {
    opacity: 1;
    pointer-events: all;
  }
}
@media screen and (min-width: 768px) {
  .l-header .gnav_list {
    display: flex;
    column-gap: min(30px, 1.5625vw);
  }
}
@media screen and (max-width: 767px) {
  .l-header .gnav_list {
    margin-inline: auto;
    width: 74.4%;
  }
}
@media screen and (min-width: 768px) {
  .l-header .gnav_list_item {
    display: flex;
    align-items: center;
  }
}
@media screen and (max-width: 767px) {
  .l-header .gnav_list_item:nth-child(n+2) {
    margin-top: 3.2rem;
  }
}
@media screen and (min-width: 768px) {
  .l-header .gnav_list_item:has(.js-acd_btn) {
    position: relative;
  }
  .l-header .gnav_list_item:has(.js-acd_btn):hover .gnav_list_trigger-cont {
    grid-template-rows: 1fr;
  }
  .l-header .gnav_list_item:has(.js-acd_btn):has(.gnav_list_trigger-cont_list_link:focus-visible) .gnav_list_trigger-cont {
    grid-template-rows: 1fr;
  }
}
@media screen and (max-width: 767px) {
  .l-header .gnav_list_item:has(.js-acd_btn) {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
  .l-header .gnav_list_item:has(.js-acd_btn).is-open .gnav_list_trigger::before {
    rotate: -90deg;
    opacity: 0;
  }
  .l-header .gnav_list_item:has(.js-acd_btn).is-open .gnav_list_trigger::after {
    rotate: 0deg;
  }
}
.l-header .gnav_list_link {
  font-size: clamp(1.4rem, 1.09375vw, 1.6rem);
  transition: color 0.4s;
}
@media screen and (min-width: 768px) {
  .l-header .gnav_list_link {
    display: flex;
    align-items: center;
    position: relative;
    height: 3.8rem;
  }
}
@media screen and (max-width: 767px) {
  .l-header .gnav_list_link {
    font-size: 3.6rem;
    line-height: 1.7777777778;
    display: inline-block;
  }
}
.l-header .gnav_list_link::before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 0.2rem;
  background: #ff643c;
  opacity: 0;
  transition: opacity 0.4s;
}
.l-header .gnav_list_link:focus-visible {
  color: #ff643c;
  opacity: 1;
}
.l-header .gnav_list_link:focus-visible::before {
  opacity: 1;
}
@media (any-hover: hover) {
  .l-header .gnav_list_link:hover {
    color: #ff643c;
    opacity: 1;
  }
  .l-header .gnav_list_link:hover::before {
    opacity: 1;
  }
}
@media screen and (min-width: 768px) {
  .l-header .gnav_list_trigger {
    display: none;
  }
}
@media screen and (max-width: 767px) {
  .l-header .gnav_list_trigger {
    position: relative;
    width: 4.8rem;
    height: inherit;
  }
  .l-header .gnav_list_trigger::before, .l-header .gnav_list_trigger::after {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    translate: -50% -50%;
    width: 3.2rem;
    height: 0.4rem;
    background: #b1bfcc;
    transition: opacity 0.4s, rotate 0.4s;
  }
  .l-header .gnav_list_trigger::after {
    rotate: 90deg;
  }
}
@media screen and (min-width: 768px) {
  .l-header .gnav_list_trigger-cont {
    position: absolute;
    top: var(--header-height);
    width: max-content;
  }
  .l-header .gnav_list_trigger-cont::before {
    content: "";
    position: absolute;
    top: 0;
    left: 50%;
    z-index: -1;
    translate: -50% 0;
    width: 200vw;
    height: 100%;
    background: rgba(0, 0, 0, 0.7);
  }
}
@media screen and (max-width: 767px) {
  .l-header .gnav_list_trigger-cont {
    width: 100%;
  }
}
.l-header .gnav_list_trigger-cont_list {
  display: flex;
  column-gap: min(30px, 1.5625vw);
}
@media screen and (max-width: 767px) {
  .l-header .gnav_list_trigger-cont_list {
    display: grid;
    grid-template-columns: repeat(2, auto);
    gap: 0.2rem 6rem;
    padding: 0.9rem 3.9rem 3.4rem;
    width: fit-content;
  }
}
.l-header .gnav_list_trigger-cont_list_link {
  font-size: 1.6rem;
  line-height: 2;
  color: #fff;
  display: block;
  position: relative;
}
@media screen and (min-width: 768px) {
  .l-header .gnav_list_trigger-cont_list_link {
    padding-block: 2.3rem;
  }
}
@media screen and (max-width: 767px) {
  .l-header .gnav_list_trigger-cont_list_link {
    font-size: 3.2rem;
    line-height: 2;
    color: #495f74;
  }
}
.l-header .gnav_list_trigger-cont_list_link::before {
  content: "";
  position: absolute;
  top: calc(50% + 1.7rem);
  left: 0;
  translate: 0 -50%;
  width: 100%;
  height: 0.2rem;
  background: transparent;
  transition: background-color 0.4s;
}
.l-header .gnav_list_trigger-cont_list_link:focus-visible {
  opacity: 1;
}
.l-header .gnav_list_trigger-cont_list_link:focus-visible::before {
  background: #fff;
}
@media (any-hover: hover) {
  .l-header .gnav_list_trigger-cont_list_link:hover {
    opacity: 1;
  }
  .l-header .gnav_list_trigger-cont_list_link:hover::before {
    background: #fff;
  }
}
@media screen and (min-width: 768px) {
  .l-header .gnav_btns {
    display: flex;
    align-items: center;
    column-gap: min(16px, 0.8333333333vw);
  }
}
@media screen and (max-width: 767px) {
  .l-header .gnav_btns {
    margin: 6.5rem auto 0;
    width: 74.4%;
  }
}
@media screen and (max-width: 767px) {
  .l-header .gnav_btns_item:nth-child(n+2) {
    margin-top: 3rem;
  }
}
.l-header .gnav_btns_link {
  font-size: clamp(1.3rem, 1.015625vw, 1.6rem);
  line-height: 1.125;
  font-weight: 500;
  color: #fff;
  text-transform: uppercase;
  text-align: center;
  display: grid;
  place-content: center;
  width: min(160px, 8.3333333333vw);
  height: 4.8rem;
  border-radius: 0.4rem;
  background: #ff643c;
}
@media screen and (max-width: 767px) {
  .l-header .gnav_btns_link {
    font-size: 3.2rem;
    line-height: 1.46875;
    width: 100%;
    height: 10.9rem;
    border-radius: 1.6rem;
  }
}
.l-header .gnav_btns_link._blue {
  background: #0078f0;
}

.l-header-recruit {
  height: var(--header-height);
}
.l-header-recruit .inner {
  display: grid;
  grid-template-columns: 19.3rem 1fr;
  align-items: center;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 1000;
  padding-inline: min(80px, 4.1666666667vw);
  width: 100%;
  height: inherit;
  background: #fff;
}
@media screen and (min-width: 768px) {
  .l-header-recruit .inner {
    column-gap: min(90px, 4.6875vw);
  }
}
@media screen and (max-width: 767px) {
  .l-header-recruit .inner {
    grid-template-columns: 19.6rem 1fr;
    padding-inline: 4.8rem 0;
  }
}
.l-header-recruit .logo {
  position: relative;
  z-index: 1;
}
.l-header-recruit .logo_link {
  display: block;
}
@media screen and (min-width: 768px) {
  .l-header-recruit .menu-btn {
    display: none;
  }
}
@media screen and (max-width: 767px) {
  .l-header-recruit .menu-btn {
    position: relative;
    z-index: 1;
    display: grid;
    place-content: center;
    gap: 0.8rem;
    margin-left: auto;
    width: 14.4rem;
    height: inherit;
  }
}
@media screen and (max-width: 767px) {
  .l-header-recruit .menu-btn.is-active .menu-btn_line:nth-child(1) {
    transform: translateY(1.2rem) rotate(45deg);
  }
  .l-header-recruit .menu-btn.is-active .menu-btn_line:nth-child(2) {
    opacity: 0;
  }
  .l-header-recruit .menu-btn.is-active .menu-btn_line:nth-child(3) {
    transform: translateY(-1.2rem) rotate(-45deg);
  }
}
@media screen and (max-width: 767px) {
  .l-header-recruit .menu-btn_line {
    width: 4.8rem;
    height: 0.4rem;
    background-image: linear-gradient(90deg, rgb(255, 140, 110) 0%, rgb(180, 151, 216) 50%, rgb(37, 145, 255) 100%);
    transition: transform 0.6s, opacity 0.6s;
  }
}
@media screen and (min-width: 768px) {
  .l-header-recruit .gnav {
    display: flex;
    justify-content: space-between;
    height: inherit;
  }
}
@media screen and (max-width: 767px) {
  .l-header-recruit .gnav {
    position: fixed;
    inset: var(--header-height) 0 0 0;
    padding-block: 4.6rem 12rem;
    background: linear-gradient(135deg, rgba(255, 140, 110, 0.08) 0%, rgba(180, 151, 216, 0.08) 50%, rgba(37, 145, 255, 0.08) 100%), #fff;
    overflow-y: scroll;
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.6s;
  }
}
@media screen and (max-width: 767px) {
  .l-header-recruit .gnav.is-open {
    opacity: 1;
    pointer-events: all;
  }
}
@media screen and (min-width: 768px) {
  .l-header-recruit .gnav_list {
    display: flex;
    column-gap: min(30px, 1.5625vw);
  }
}
@media screen and (max-width: 767px) {
  .l-header-recruit .gnav_list {
    margin-inline: auto;
    width: 87.2%;
  }
}
@media screen and (min-width: 768px) {
  .l-header-recruit .gnav_list_item {
    display: flex;
    align-items: center;
  }
}
@media screen and (max-width: 767px) {
  .l-header-recruit .gnav_list_item:nth-child(n+2) {
    margin-top: 0.3rem;
  }
}
@media screen and (min-width: 768px) {
  .l-header-recruit .gnav_list_item:has(.js-acd_btn) {
    position: relative;
  }
  .l-header-recruit .gnav_list_item:has(.js-acd_btn):hover .gnav_list_trigger-cont {
    grid-template-rows: 1fr;
  }
  .l-header-recruit .gnav_list_item:has(.js-acd_btn):has(.gnav_list_trigger-cont_list_link:focus-visible) .gnav_list_trigger-cont {
    grid-template-rows: 1fr;
  }
}
@media screen and (max-width: 767px) {
  .l-header-recruit .gnav_list_item:has(.js-acd_btn) {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
  .l-header-recruit .gnav_list_item:has(.js-acd_btn).is-open .gnav_list_trigger::before {
    rotate: -90deg;
    opacity: 0;
  }
  .l-header-recruit .gnav_list_item:has(.js-acd_btn).is-open .gnav_list_trigger::after {
    rotate: 0deg;
  }
}
.l-header-recruit .gnav_list_link {
  font-size: 1.6rem;
}
@media screen and (min-width: 768px) {
  .l-header-recruit .gnav_list_link {
    display: flex;
    align-items: center;
    position: relative;
    height: 3.8rem;
  }
}
@media screen and (max-width: 767px) {
  .l-header-recruit .gnav_list_link {
    font-size: 3.6rem;
    line-height: 1.7777777778;
    display: inline-block;
    padding-block: 1.4rem;
  }
}
.l-header-recruit .gnav_list_link::before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 0.2rem;
  background-image: linear-gradient(90deg, rgb(255, 100, 60) 0%, rgb(0, 120, 240) 100%);
  opacity: 0;
  transition: opacity 0.4s;
}
.l-header-recruit .gnav_list_link:focus-visible {
  opacity: 1;
}
.l-header-recruit .gnav_list_link:focus-visible::before {
  opacity: 1;
}
@media (any-hover: hover) {
  .l-header-recruit .gnav_list_link:hover {
    opacity: 1;
  }
  .l-header-recruit .gnav_list_link:hover::before {
    opacity: 1;
  }
}
@media screen and (min-width: 768px) {
  .l-header-recruit .gnav_list_trigger {
    display: none;
  }
}
@media screen and (max-width: 767px) {
  .l-header-recruit .gnav_list_trigger {
    position: relative;
    width: 4.8rem;
    height: inherit;
  }
  .l-header-recruit .gnav_list_trigger::before, .l-header-recruit .gnav_list_trigger::after {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    translate: -50% -50%;
    width: 3.2rem;
    height: 0.4rem;
    background: #b1bfcc;
    transition: opacity 0.4s, rotate 0.4s;
  }
  .l-header-recruit .gnav_list_trigger::after {
    rotate: 90deg;
  }
}
@media screen and (min-width: 768px) {
  .l-header-recruit .gnav_list_trigger-cont {
    position: absolute;
    top: var(--header-height);
    width: max-content;
  }
  .l-header-recruit .gnav_list_trigger-cont::before {
    content: "";
    position: absolute;
    top: 0;
    left: 50%;
    z-index: -1;
    translate: -50% 0;
    width: calc(100% + 12rem);
    height: 100%;
    border-radius: 0 0 1.6rem 1.6rem;
    background: rgba(255, 100, 60, 0.7);
  }
}
@media screen and (max-width: 767px) {
  .l-header-recruit .gnav_list_trigger-cont {
    width: 100%;
    border-radius: 2rem;
    background: rgba(255, 100, 60, 0.7);
  }
}
.l-header-recruit .gnav_list_trigger-cont_theme {
  padding-top: 2.2rem;
}
@media screen and (max-width: 767px) {
  .l-header-recruit .gnav_list_trigger-cont_theme {
    padding: 4.4rem 4.8rem 0;
  }
}
.l-header-recruit .gnav_list_trigger-cont_theme_link {
  font-size: 1.6rem;
  line-height: 2;
  color: #fff;
  text-decoration: underline;
  text-decoration-color: transparent;
  text-decoration-thickness: 0.1rem;
  text-underline-offset: 0.8rem;
  display: inline-block;
  transition: text-decoration-color 0.4s;
}
@media screen and (max-width: 767px) {
  .l-header-recruit .gnav_list_trigger-cont_theme_link {
    font-size: 3.2rem;
    line-height: 2;
  }
}
.l-header-recruit .gnav_list_trigger-cont_theme_link:focus-visible {
  text-decoration-color: currentColor;
  opacity: 1;
}
@media (any-hover: hover) {
  .l-header-recruit .gnav_list_trigger-cont_theme_link:hover {
    text-decoration-color: currentColor;
    opacity: 1;
  }
}
.l-header-recruit .gnav_list_trigger-cont_list {
  display: flex;
  column-gap: min(30px, 1.5625vw);
}
@media screen and (max-width: 767px) {
  .l-header-recruit .gnav_list_trigger-cont_list {
    display: block;
    padding: 2.4rem 4.8rem;
  }
}
.l-header-recruit .gnav_list_trigger-cont_list._col-1 {
  display: block;
  padding: 0 0 2.1rem 1em;
}
@media screen and (max-width: 767px) {
  .l-header-recruit .gnav_list_trigger-cont_list._col-1 {
    margin-top: 3.6rem;
    padding: 0 4.8rem 7rem;
  }
}
@media screen and (max-width: 767px) {
  .l-header-recruit .gnav_list_trigger-cont_list._col-1 .gnav_list_trigger-cont_list_item:nth-child(n+2) {
    margin-top: 2.3rem;
    padding-top: 3rem;
  }
}
.l-header-recruit .gnav_list_trigger-cont_list._col-1 .gnav_list_trigger-cont_list_link {
  font-size: 1.4rem;
  line-height: 2.2857142857;
  display: inline;
  padding-block: 0;
}
@media screen and (max-width: 767px) {
  .l-header-recruit .gnav_list_trigger-cont_list._col-1 .gnav_list_trigger-cont_list_link {
    font-size: 2.8rem;
    line-height: 1.7142857143;
    display: block;
  }
}
@media screen and (max-width: 767px) {
  .l-header-recruit .gnav_list_trigger-cont_list_item:nth-child(n+2) {
    padding-top: 1rem;
    border-top: 1px solid #fff;
  }
}
.l-header-recruit .gnav_list_trigger-cont_list_link {
  font-size: 1.6rem;
  line-height: 2;
  color: #fff;
  display: block;
  position: relative;
  padding-block: 2.3rem;
}
@media screen and (max-width: 767px) {
  .l-header-recruit .gnav_list_trigger-cont_list_link {
    font-size: 3.2rem;
    line-height: 2;
    padding-block: 1.4rem;
  }
}
.l-header-recruit .gnav_list_trigger-cont_list_link::before {
  content: "";
  position: absolute;
  top: calc(50% + 1.7rem);
  left: 0;
  translate: 0 -50%;
  width: 100%;
  height: 0.1rem;
  background: transparent;
  transition: background-color 0.4s;
}
.l-header-recruit .gnav_list_trigger-cont_list_link:focus-visible {
  opacity: 1;
}
.l-header-recruit .gnav_list_trigger-cont_list_link:focus-visible::before {
  background: #fff;
}
@media (any-hover: hover) {
  .l-header-recruit .gnav_list_trigger-cont_list_link:hover {
    opacity: 1;
  }
  .l-header-recruit .gnav_list_trigger-cont_list_link:hover::before {
    background: #fff;
  }
}
@media screen and (min-width: 768px) {
  .l-header-recruit .gnav_btns {
    display: flex;
    align-items: center;
    column-gap: min(16px, 0.8333333333vw);
  }
}
@media screen and (max-width: 767px) {
  .l-header-recruit .gnav_btns {
    margin: 9.3rem auto 0;
    width: 74.4%;
  }
}
@media screen and (max-width: 767px) {
  .l-header-recruit .gnav_btns_item:nth-child(n+2) {
    margin-top: 3rem;
  }
}
.l-header-recruit .gnav_btns_link {
  font-size: clamp(1.3rem, 1.015625vw, 1.6rem);
  line-height: 1.125;
  font-weight: 500;
  color: #fff;
  text-transform: uppercase;
  text-align: center;
  display: grid;
  place-content: center;
  width: min(160px, 8.3333333333vw);
  height: 4.8rem;
  border-radius: calc(infinity * 1px);
  background: #ff643c;
}
@media screen and (max-width: 767px) {
  .l-header-recruit .gnav_btns_link {
    font-size: 3.2rem;
    line-height: 1.46875;
    width: 100%;
    height: 10.9rem;
  }
}
.l-header-recruit .gnav_btns_link._gradation {
  background-image: linear-gradient(90deg, rgb(255, 140, 110) 0%, rgb(180, 151, 216) 50%, rgb(37, 145, 255) 100%);
}
.l-header-recruit .gnav_btns_link._blue {
  background: #0078f0;
}

.l-footer {
  padding-block: 8rem 7.5rem;
  background: #fff;
}
@media screen and (max-width: 767px) {
  .l-footer {
    padding-block: 15.5rem 7.6rem;
  }
}
.l-footer .c-wrap {
  max-width: 160rem;
}
@media screen and (min-width: 768px) {
  .l-footer .c-wrap {
    display: grid;
    align-items: flex-start;
    grid-template-columns: 16rem auto auto;
    column-gap: min(42px, 2.1875vw);
  }
}
@media screen and (max-width: 767px) {
  .l-footer .c-wrap {
    width: 88%;
    max-width: fit-content;
  }
}
@media screen and (min-width: 768px) {
  .l-footer .logo {
    grid-row: span 2;
    grid-column: 1;
  }
}
@media screen and (max-width: 767px) {
  .l-footer .logo {
    width: 25.8rem;
  }
}
@media screen and (min-width: 768px) {
  .l-footer .add {
    grid-row: 1;
    grid-column: 2;
  }
}
@media screen and (max-width: 767px) {
  .l-footer .add_dl {
    margin-top: 5.3rem;
  }
}
.l-footer .add_dl_theme {
  font-size: 1.6rem;
  line-height: 2;
}
@media screen and (min-width: 768px) {
  .l-footer .add_dl_theme {
    margin-top: calc((1em - 1lh) / 2);
  }
}
@media screen and (max-width: 767px) {
  .l-footer .add_dl_theme {
    font-size: 3.2rem;
    line-height: 1.5;
  }
}
.l-footer .add_dl_des {
  font-size: 1.6rem;
  line-height: 2;
  margin-top: 0.3rem;
}
@media screen and (max-width: 767px) {
  .l-footer .add_dl_des {
    font-size: 3.2rem;
    line-height: 1.5;
    margin-top: 2.4rem;
  }
}
.l-footer .add_dl_des_tel {
  margin-right: 4rem;
}
@media screen and (max-width: 767px) {
  .l-footer .add_dl_des_tel {
    margin-right: 8.2rem;
  }
}
.l-footer .box {
  display: grid;
  align-items: flex-start;
  grid-template-columns: repeat(3, auto);
}
@media screen and (min-width: 768px) {
  .l-footer .box {
    grid-row: span 3;
    grid-column: 3;
    width: fit-content;
  }
}
@media screen and (max-width: 767px) {
  .l-footer .box {
    grid-template-columns: 37.7rem 1fr;
    column-gap: 4.5rem;
    margin-top: 6.5rem;
  }
}
@media screen and (min-width: 768px) {
  .l-footer .box_list:nth-of-type(1) {
    grid-row: span 3;
    grid-column: 1;
    margin-right: 1.5rem;
  }
}
@media screen and (min-width: 768px) {
  .l-footer .box_list:nth-of-type(2) {
    grid-row: span 3;
    grid-column: 2;
    margin-right: min(60px, 3.125vw);
  }
}
.l-footer .box_list:nth-of-type(3) {
  grid-column: 3;
}
@media screen and (min-width: 768px) {
  .l-footer .box_list:nth-of-type(3) {
    grid-row: 1;
    grid-column: 3;
  }
}
@media screen and (max-width: 767px) {
  .l-footer .box_list:nth-of-type(3) {
    grid-column: span 2;
    margin-top: 6.5rem;
  }
}
.l-footer .box_list_item:nth-child(n+2) {
  margin-top: 0.4rem;
}
@media screen and (max-width: 767px) {
  .l-footer .box_list_item:nth-child(n+2) {
    margin-top: 2.4rem;
  }
}
.l-footer .box_list_link, .l-footer .box_list_detail_link {
  font-feature-settings: "palt";
  font-size: 1.6rem;
  line-height: 2;
  display: inline-block;
  position: relative;
  transition: color 0.4s;
}
@media screen and (max-width: 767px) {
  .l-footer .box_list_link, .l-footer .box_list_detail_link {
    font-size: 3.2rem;
    line-height: 1.5;
  }
}
.l-footer .box_list_link::before, .l-footer .box_list_detail_link::before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 0.2rem;
  background: #ff643c;
  opacity: 0;
  transition: opacity 0.4s;
}
.l-footer .box_list_link:focus-visible, .l-footer .box_list_detail_link:focus-visible {
  color: #ff643c;
  opacity: 1;
}
.l-footer .box_list_link:focus-visible::before, .l-footer .box_list_detail_link:focus-visible::before {
  opacity: 1;
}
@media (any-hover: hover) {
  .l-footer .box_list_link:hover, .l-footer .box_list_detail_link:hover {
    color: #ff643c;
    opacity: 1;
  }
  .l-footer .box_list_link:hover::before, .l-footer .box_list_detail_link:hover::before {
    opacity: 1;
  }
}
.l-footer .box_list_detail {
  display: flex;
  flex-wrap: wrap;
  column-gap: 1.5rem;
  position: relative;
  margin-top: 0.2rem;
  padding: 1.2rem 0 0 1.9rem;
  max-width: 19.5rem;
  border-top: 1px solid #b1bfcc;
}
@media screen and (max-width: 767px) {
  .l-footer .box_list_detail {
    gap: 1.6rem 3rem;
    margin-top: 1.2rem;
    padding: 2.9rem 0 0 4rem;
    max-width: 100%;
    border-top-width: 0.2rem;
  }
}
.l-footer .box_logo-list {
  display: grid;
  align-items: center;
  grid-template-columns: 7rem 6rem;
  column-gap: 1.9rem;
  grid-column: 3;
  margin-top: 3.4rem;
}
@media screen and (min-width: 768px) {
  .l-footer .box_logo-list {
    grid-row: 2;
  }
}
@media screen and (max-width: 767px) {
  .l-footer .box_logo-list {
    justify-content: center;
    grid-template-columns: 11rem 10rem;
    column-gap: 4rem;
    grid-column: span 2;
    margin-top: 7.3rem;
  }
}
.l-footer .copy {
  font-size: 1.4rem;
  line-height: 2.2857142857;
  margin-top: 5.3rem;
}
@media screen and (min-width: 768px) {
  .l-footer .copy {
    grid-row: 2;
    grid-column: 2;
  }
}
@media screen and (max-width: 767px) {
  .l-footer .copy {
    font-size: 2.8rem;
    line-height: 1.3571428571;
    text-align: center;
    margin-top: 7.2rem;
  }
}

.l-footer-recruit {
  padding-block: 8rem 7.5rem;
  background: #fff;
}
@media screen and (max-width: 767px) {
  .l-footer-recruit {
    padding-block: 15.5rem 7.6rem;
  }
}
.l-footer-recruit .c-wrap {
  max-width: 160rem;
}
@media screen and (min-width: 768px) {
  .l-footer-recruit .c-wrap {
    display: grid;
    align-items: flex-start;
    grid-template-columns: 16rem auto auto;
    column-gap: min(42px, 2.1875vw);
  }
}
@media screen and (max-width: 767px) {
  .l-footer-recruit .c-wrap {
    width: 88%;
    max-width: fit-content;
  }
}
@media screen and (min-width: 768px) {
  .l-footer-recruit .logo {
    grid-row: span 2;
    grid-column: 1;
  }
}
@media screen and (max-width: 767px) {
  .l-footer-recruit .logo {
    width: 25.8rem;
  }
}
@media screen and (min-width: 768px) {
  .l-footer-recruit .add {
    grid-row: 1;
    grid-column: 2;
  }
}
@media screen and (max-width: 767px) {
  .l-footer-recruit .add_dl {
    margin-top: 5.3rem;
  }
}
.l-footer-recruit .add_dl_theme {
  font-size: 1.6rem;
  line-height: 2;
}
@media screen and (min-width: 768px) {
  .l-footer-recruit .add_dl_theme {
    margin-top: calc((1em - 1lh) / 2);
  }
}
@media screen and (max-width: 767px) {
  .l-footer-recruit .add_dl_theme {
    font-size: 3.2rem;
    line-height: 1.5;
  }
}
.l-footer-recruit .add_dl_des {
  font-size: 1.6rem;
  line-height: 2;
  margin-top: 0.3rem;
}
@media screen and (max-width: 767px) {
  .l-footer-recruit .add_dl_des {
    font-size: 3.2rem;
    line-height: 1.5;
    margin-top: 2.4rem;
  }
}
.l-footer-recruit .add_dl_des_tel {
  margin-right: 4rem;
}
@media screen and (max-width: 767px) {
  .l-footer-recruit .add_dl_des_tel {
    margin-right: 8.2rem;
  }
}
@media screen and (min-width: 768px) {
  .l-footer-recruit .box {
    display: grid;
    align-items: flex-start;
    grid-template-columns: repeat(3, auto);
    grid-row: span 3;
    grid-column: 3;
    width: fit-content;
  }
}
@media screen and (max-width: 767px) {
  .l-footer-recruit .box {
    margin-top: 6.5rem;
  }
}
@media screen and (min-width: 768px) {
  .l-footer-recruit .box_list:nth-of-type(1) {
    grid-row: span 3;
    grid-column: 1;
    margin-right: min(40px, 2.0833333333vw);
    width: 16.1rem;
  }
}
@media screen and (max-width: 767px) {
  .l-footer-recruit .box_list:nth-of-type(1) {
    margin-left: 2rem;
    width: 32.2rem;
  }
}
@media screen and (min-width: 768px) {
  .l-footer-recruit .box_list:nth-of-type(2) {
    grid-row: span 3;
    grid-column: 2;
    margin-right: min(60px, 3.125vw);
    width: 16.1rem;
  }
}
@media screen and (max-width: 767px) {
  .l-footer-recruit .box_list:nth-of-type(2) {
    margin-top: 4.5rem;
    margin-left: 2rem;
    width: 32.2rem;
  }
}
@media screen and (min-width: 768px) {
  .l-footer-recruit .box_list:nth-of-type(3) {
    grid-row: 1;
    grid-column: 3;
  }
}
@media screen and (max-width: 767px) {
  .l-footer-recruit .box_list:nth-of-type(3) {
    display: grid;
    grid-template-columns: repeat(2, auto);
    gap: 1.5rem 7.6rem;
    margin-top: 6.5rem;
    padding-inline: 2rem;
  }
  .l-footer-recruit .box_list:nth-of-type(3) .box_list_item:nth-child(n+2) {
    margin-top: 0;
  }
  .l-footer-recruit .box_list:nth-of-type(3) .box_list_item:nth-child(2) {
    grid-row: 2;
    grid-column: 1;
  }
  .l-footer-recruit .box_list:nth-of-type(3) .box_list_item:nth-child(3) {
    grid-row: 3;
    grid-column: 1;
  }
  .l-footer-recruit .box_list:nth-of-type(3) .box_list_item:nth-child(4) {
    grid-row: 4;
    grid-column: 1;
  }
}
.l-footer-recruit .box_list_item:nth-child(n+2) {
  margin-top: 0.4rem;
}
@media screen and (max-width: 767px) {
  .l-footer-recruit .box_list_item:nth-child(n+2) {
    margin-top: 2.4rem;
  }
}
.l-footer-recruit .box_list_link, .l-footer-recruit .box_list_detail_link {
  font-feature-settings: "palt";
  display: inline-block;
  position: relative;
}
.l-footer-recruit .box_list_link::before, .l-footer-recruit .box_list_detail_link::before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 0.2rem;
  background-image: linear-gradient(90deg, rgb(255, 140, 110) 0%, rgb(180, 151, 216) 50%, rgb(37, 145, 255) 100%);
  opacity: 0;
  transition: opacity 0.4s;
}
.l-footer-recruit .box_list_link:focus-visible, .l-footer-recruit .box_list_detail_link:focus-visible {
  opacity: 1;
}
.l-footer-recruit .box_list_link:focus-visible::before, .l-footer-recruit .box_list_detail_link:focus-visible::before {
  opacity: 1;
}
@media (any-hover: hover) {
  .l-footer-recruit .box_list_link:hover, .l-footer-recruit .box_list_detail_link:hover {
    opacity: 1;
  }
  .l-footer-recruit .box_list_link:hover::before, .l-footer-recruit .box_list_detail_link:hover::before {
    opacity: 1;
  }
}
.l-footer-recruit .box_list_link {
  font-size: 1.6rem;
  line-height: 2;
}
@media screen and (max-width: 767px) {
  .l-footer-recruit .box_list_link {
    font-size: 3.2rem;
    line-height: 1.5;
  }
}
.l-footer-recruit .box_list_link._gradation {
  color: transparent;
  background-image: linear-gradient(90deg, rgb(255, 140, 110) 0%, rgb(180, 151, 216) 50%, rgb(37, 145, 255) 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}
.l-footer-recruit .box_list_detail {
  position: relative;
  margin-top: 0.2rem;
  padding: 1.4rem 0 0 1.9rem;
}
@media screen and (max-width: 767px) {
  .l-footer-recruit .box_list_detail {
    gap: 1.6rem 3rem;
    margin-top: 1.2rem;
    padding: 3.1rem 0 0 4rem;
    max-width: 100%;
  }
}
.l-footer-recruit .box_list_detail::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 0.2rem;
  background-image: linear-gradient(90deg, rgb(255, 140, 110) 0%, rgb(180, 151, 216) 50%, rgb(37, 145, 255) 100%);
}
@media screen and (max-width: 767px) {
  .l-footer-recruit .box_list_detail_item {
    margin-top: 1.2rem;
  }
}
.l-footer-recruit .box_list_detail_link {
  font-size: 1.4rem;
  line-height: 2.2857142857;
}
@media screen and (max-width: 767px) {
  .l-footer-recruit .box_list_detail_link {
    font-size: 2.8rem;
    line-height: 1.7142857143;
  }
}
.l-footer-recruit .copy {
  font-size: 1.4rem;
  line-height: 2.2857142857;
  margin-top: 5.3rem;
}
@media screen and (min-width: 768px) {
  .l-footer-recruit .copy {
    grid-row: 2;
    grid-column: 2;
  }
}
@media screen and (max-width: 767px) {
  .l-footer-recruit .copy {
    font-size: 2.8rem;
    line-height: 1.3571428571;
    text-align: center;
    margin-top: 7.2rem;
  }
}

@keyframes splide-loading {
  0% {
    transform: rotate(0);
  }
  to {
    transform: rotate(1turn);
  }
}
.splide__track--draggable {
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

.splide__track--fade > .splide__list > .splide__slide {
  margin: 0 !important;
  opacity: 0;
  z-index: 0;
}

.splide__track--fade > .splide__list > .splide__slide.is-active {
  opacity: 1;
  z-index: 1;
}

.splide--rtl {
  direction: rtl;
}

.splide__track--ttb > .splide__list {
  display: block;
}

.splide__container {
  box-sizing: border-box;
  position: relative;
}

.splide__list {
  backface-visibility: hidden;
  display: -ms-flexbox;
  display: flex;
  height: auto;
  margin: 0 !important;
  padding: 0 !important;
}

.splide.is-initialized:not(.is-active) .splide__list {
  display: block;
}

.splide__pagination {
  -ms-flex-align: center;
  align-items: center;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -ms-flex-pack: center;
  justify-content: center;
  margin: 0;
  pointer-events: none;
}

.splide__pagination li {
  display: inline-block;
  line-height: 1;
  list-style-type: none;
  margin: 0;
  pointer-events: auto;
}

.splide:not(.is-overflow) .splide__pagination {
  display: none;
}

.splide__progress__bar {
  width: 0;
}

.splide {
  position: relative;
  visibility: hidden;
}

.splide.is-initialized, .splide.is-rendered {
  visibility: visible;
}

.splide__slide {
  backface-visibility: hidden;
  box-sizing: border-box;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  list-style-type: none !important;
  margin: 0;
  position: relative;
}

.splide__slide img {
  vertical-align: bottom;
}

.splide__spinner {
  animation: splide-loading 1s linear infinite;
  border: 2px solid #999;
  border-left-color: transparent;
  border-radius: 50%;
  bottom: 0;
  contain: strict;
  display: inline-block;
  height: 20px;
  left: 0;
  margin: auto;
  position: absolute;
  right: 0;
  top: 0;
  width: 20px;
}

.splide__sr {
  clip: rect(0 0 0 0);
  border: 0;
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px;
}

.splide__toggle.is-active .splide__toggle__play, .splide__toggle__pause {
  display: none;
}

.splide__toggle.is-active .splide__toggle__pause {
  display: inline;
}

.splide__track {
  overflow: hidden;
  position: relative;
  z-index: 0;
}

@keyframes scroll-hint-appear {
  0% {
    transform: translateX(4rem);
    opacity: 0;
  }
  10% {
    opacity: 1;
  }
  50%, 100% {
    transform: translateX(-4rem);
    opacity: 0;
  }
}
.scroll-hint.is-right-scrollable {
  background: linear-gradient(270deg, rgba(0, 0, 0, 0.15) 0, rgba(0, 0, 0, 0) 1.6rem, rgba(0, 0, 0, 0));
}

.scroll-hint.is-right-scrollable.is-left-scrollable {
  background: linear-gradient(90deg, rgba(0, 0, 0, 0.15) 0, rgba(0, 0, 0, 0) 1.6rem, rgba(0, 0, 0, 0)), linear-gradient(270deg, rgba(0, 0, 0, 0.15) 0, rgba(0, 0, 0, 0) 1.6rem, rgba(0, 0, 0, 0));
}

.scroll-hint.is-left-scrollable {
  background: linear-gradient(90deg, rgba(0, 0, 0, 0.15) 0, rgba(0, 0, 0, 0) 1.6rem, rgba(0, 0, 0, 0));
}

.scroll-hint-icon {
  position: absolute;
  top: 50%;
  left: 50%;
  translate: -50% -50%;
  box-sizing: border-box;
  width: 25.9rem;
  height: 22.4rem;
  border-radius: 3rem;
  transition: opacity 0.3s;
  opacity: 0;
  background: rgba(219, 227, 235, 0.8);
  text-align: center;
}
@media screen and (max-width: 767px) {
  .scroll-hint-icon {
    width: 51.8rem;
    height: 44.8rem;
    border-radius: 6rem;
  }
}

.scroll-hint-icon-wrap {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  max-height: 100%;
  pointer-events: none;
}

.scroll-hint-text {
  font-feature-settings: "palt";
  font-size: 2.4rem;
  font-weight: 500;
  color: #222;
  margin-top: 2.6rem;
}
@media screen and (max-width: 767px) {
  .scroll-hint-text {
    font-size: 4.8rem;
    margin-top: 5.2rem;
  }
}

.scroll-hint-icon-wrap.is-active .scroll-hint-icon {
  opacity: 1;
}

.scroll-hint-icon::before {
  content: "";
  display: block;
  position: relative;
  left: calc(50% + 1.2rem);
  translate: -50% 0;
  margin-top: 5.8rem;
  width: 7.5rem;
  height: 9.2rem;
  background: url(../images/common/icon_scroll_hint_cursor.png) center/contain no-repeat;
}
@media screen and (max-width: 767px) {
  .scroll-hint-icon::before {
    left: calc(50% + 2.4rem);
    margin-top: 11.6rem;
    width: 15rem;
    height: 18.4rem;
  }
}

.scroll-hint-icon:after {
  content: "";
  position: absolute;
  top: 2.8rem;
  left: 50%;
  translate: -50% 0;
  width: 8.6rem;
  height: 2.1rem;
  background: url(../images/common/icon_scroll_hint_arrow.svg) center/contain no-repeat;
  opacity: 0;
  transition-delay: 2.4s;
}
@media screen and (max-width: 767px) {
  .scroll-hint-icon:after {
    top: 5.6rem;
    width: 17.2rem;
    height: 4.2rem;
  }
}

.scroll-hint-icon-wrap.is-active .scroll-hint-icon:after {
  opacity: 1;
}

.scroll-hint-icon-wrap.is-active .scroll-hint-icon:before {
  animation: scroll-hint-appear 1.2s linear;
  animation-iteration-count: 2;
}

.scroll-hint-icon-white {
  background-color: #FFF;
  box-shadow: 0 0.4rem 0.5rem rgba(0, 0, 0, 0.4);
}

.scroll-hint-icon-white:before {
  background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNS43NyIgaGVpZ2h0PSIzMC41MiIgdmlld0JveD0iMCAwIDI1Ljc3IDMwLjUyIj48dGl0bGU+44Ki44K744OD44OIIDQ8L3RpdGxlPjxnIGlkPSLjg6zjgqTjg6Tjg7xfMiIgZGF0YS1uYW1lPSLjg6zjgqTjg6Tjg7wgMiI+PGcgaWQ9IuODrOOCpOODpOODvF8xLTIiIGRhdGEtbmFtZT0i44Os44Kk44Ok44O8IDEiPjxwYXRoIGQ9Ik0yMS4zMywzMC41Mkg3Ljg1QTEuNTUsMS41NSwwLDAsMSw2LjMsMjlhMTIuNDYsMTIuNDYsMCwwLDAtLjYzLTQuNDIsMjUuMTYsMjUuMTYsMCwwLDAtNC4yNS01bC0uMDYtLjA2QTUsNSwwLDAsMSwwLDE1Ljg2YTMuNjQsMy42NCwwLDAsMSwxLjE3LTIuNjIsMy42MywzLjYzLDAsMCwxLDUuMTQuMDdWMy43N2EzLjc3LDMuNzcsMCwxLDEsNy41NCwwVjguMzNhMy4zNSwzLjM1LDAsMCwxLDEuMjYsMCwzLDMsMCwwLDEsMiwxLjIyLDMuNSwzLjUsMCwwLDEsMi0uMDYsMy4yMSwzLjIxLDAsMCwxLDIsMS41NCwzLjc0LDMuNzQsMCwwLDEsMywuNDdBNC4yMSw0LjIxLDAsMCwxLDI1Ljc0LDE1YzAsLjExLDAsLjI3LDAsLjQ2YTE5LjI2LDE5LjI2LDAsMCwxLS44NCw3Yy0uMTQuMzgtLjM2LjgxLS41NiwxLjIybC0uMTEuMjJjMCwuMDctLjA5LjE0LS4xNC4yMWE3LjEzLDcuMTMsMCwwLDAtMS4xNywyLjE3Yy0uMDYuNTYtLjA2LDIuMTUtLjA1LDIuNzFBMS41NSwxLjU1LDAsMCwxLDIxLjMzLDMwLjUyWk04LjYxLDI4LjIxaDEyYzAtLjcxLDAtMS43MS4wNy0yLjIzYTguNzQsOC43NCwwLDAsMSwxLjU5LTMuMjVsLjA2LS4xMmExMCwxMCwwLDAsMCwuNDYtMSwxNi44LDE2LjgsMCwwLDAsLjctNi4xMmMwLS4yMywwLS40MSwwLS41NGgwYTIsMiwwLDAsMC0uNjQtMS41MiwxLjMzLDEuMzMsMCwwLDAtMS41NS4wOCwxLjEzLDEuMTMsMCwwLDEtMS4xOC4yOCwxLjE1LDEuMTUsMCwwLDEtLjc4LS45NCwxLjI2LDEuMjYsMCwwLDAtLjc1LTEuMTEsMSwxLDAsMCwwLTEuMTEuMjhsLS4xLjFhMS4xNSwxLjE1LDAsMCwxLTEuMTkuMjksMS4xNiwxLjE2LDAsMCwxLS43OC0uOTVjLS4wOS0uNjgtLjIxLS43Ny0uNy0uODdhLjgyLjgyLDAsMCwwLTEsLjQ4LDEuMTYsMS4xNiwwLDAsMS0yLjE2LS41OFYzLjc3YTEuNDYsMS40NiwwLDEsMC0yLjkyLDB2Ny44NWwwLDQuMzNhMS4xNywxLjE3LDAsMCwxLS44MywxLjExLDEuMTUsMS4xNSwwLDAsMS0xLjItLjM1bC0xLS45MWMtLjQ3LS40Mi0uNzMtLjY2LS44NC0uNzdhMS4zNSwxLjM1LDAsMCwwLTItLjEyTDIuNywxNWExLjMyLDEuMzIsMCwwLDAtLjM5LDFBMi41NywyLjU3LDAsMCwwLDMsMTcuODVsMCwwYTI3LjI0LDI3LjI0LDAsMCwxLDQuNyw1LjYyQTEyLjYzLDEyLjYzLDAsMCwxLDguNjEsMjguMjFaTTIzLjIsMjMuMzVaTTYuNTEsMTYuNTlaIi8+PC9nPjwvZz48L3N2Zz4=);
}

.scroll-hint-icon-white:after {
  background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIzMy4yOSIgaGVpZ2h0PSIxMi4wMiIgdmlld0JveD0iMCAwIDMzLjI5IDEyLjAyIj48dGl0bGU+44Ki44K744OD44OIIDI8L3RpdGxlPjxnIGlkPSLjg6zjgqTjg6Tjg7xfMiIgZGF0YS1uYW1lPSLjg6zjgqTjg6Tjg7wgMiI+PGcgaWQ9IuODrOOCpOODpOODvF8xLTIiIGRhdGEtbmFtZT0i44Os44Kk44Ok44O8IDEiPjxsaW5lIHgxPSIxLjg1IiB5MT0iNi4wMSIgeDI9IjEwLjQiIHkyPSI2LjAxIi8+PHBhdGggZD0iTTEwLjQsNy4xN0gxLjg1YTEuMTYsMS4xNiwwLDEsMSwwLTIuMzFIMTAuNGExLjE2LDEuMTYsMCwxLDEsMCwyLjMxWiIvPjxwYXRoIGQ9Ik03LjQsMTJhMS4xNSwxLjE1LDAsMCwxLS43Mi0uMjVsLTYuMjUtNUExLjIsMS4yLDAsMCwxLDAsNS44NywxLjE0LDEuMTQsMCwwLDEsLjQ2LDVMNi43LjIzQTEuMTYsMS4xNiwwLDAsMSw4LjEsMi4wOEwzLDUuOTEsOC4xMiwxMEExLjE2LDEuMTYsMCwwLDEsNy40LDEyWiIvPjxsaW5lIHgxPSIzMS40NSIgeTE9IjYuMDEiIHgyPSIyMi44OSIgeTI9IjYuMDEiLz48cGF0aCBkPSJNMzEuNDUsNy4xN0gyMi44OWExLjE2LDEuMTYsMCwxLDEsMC0yLjMxaDguNTZhMS4xNiwxLjE2LDAsMCwxLDAsMi4zMVoiLz48cGF0aCBkPSJNMjUuOSwxMmExLjE4LDEuMTgsMCwwLDEtLjkxLS40M0ExLjE3LDEuMTcsMCwwLDEsMjUuMTcsMTBsNS4wOS00LjA1TDI1LjIsMi4wOEExLjE2LDEuMTYsMCwwLDEsMjYuNTkuMjNMMzIuODQsNWExLjE2LDEuMTYsMCwwLDEsLjQ1LjkxLDEuMTQsMS4xNCwwLDAsMS0uNDMuOTJsLTYuMjQsNUExLjE3LDEuMTcsMCwwLDEsMjUuOSwxMloiLz48L2c+PC9nPjwvc3ZnPg==);
}

.scroll-hint-icon-white .scroll-hint-text {
  color: #000;
}

.aligncenter {
  text-align: center;
  display: block;
  margin-inline: auto;
}

.alignright {
  float: right;
}

.alignleft {
  float: left;
}

.is-preload * {
  -webkit-transition: none !important;
  -moz-transition: none !important;
  -ms-transition: none !important;
  -o-transition: none !important;
  transition: none !important;
}

.js-bottom-action._fade-in {
  opacity: 0;
  transition: opacity ease-out 0.6s;
}
.js-bottom-action._fade-in.is-bottom-action {
  opacity: 1;
}
.js-bottom-action._fade-up {
  opacity: 0;
  translate: 0 10%;
  transition: opacity ease-out 0.6s, translate ease-out 0.6s;
}
.js-bottom-action._fade-up.is-bottom-action {
  opacity: 1;
  translate: 0 0;
}
.js-bottom-action._slide-in {
  clip-path: inset(0 100% 0 0);
  transition: clip-path 0.6s;
}
.js-bottom-action._slide-in.is-bottom-action {
  clip-path: inset(0);
}

.js-acd.is-open .js-acd_cont {
  grid-template-rows: 1fr;
}
.js-acd_cont {
  display: grid;
  grid-template-rows: 0fr;
  transition: grid-template-rows 0.4s ease-out;
}
.js-acd_cont_inner {
  overflow: hidden;
}

.c-wrap {
  margin-inline: auto;
  width: 97%;
}
@media screen and (min-width: 768px) {
  .c-wrap {
    max-width: 120rem;
  }
}
@media screen and (max-width: 767px) {
  .c-wrap {
    width: calc(656 / 750 * 100%);
  }
}

.c-btn-01_link {
  font-size: 2rem;
  line-height: 1.3;
  font-weight: 500;
  color: #fff;
  text-align: center;
  display: grid inline;
  place-content: center;
  width: 100%;
  max-width: 32rem;
  height: 8rem;
  border-radius: 0.8rem;
  background: #ff643c;
}
@media screen and (max-width: 767px) {
  .c-btn-01_link {
    font-size: 3.2rem;
    line-height: 1.25;
    max-width: 55.8rem;
    height: 12rem;
    border-radius: 1.6rem;
  }
}

.c-btn-02_link {
  font-size: 2rem;
  line-height: 1.3;
  font-weight: 500;
  color: #fff;
  text-align: center;
  display: grid inline;
  place-content: center;
  position: relative;
  padding-bottom: 0.2rem;
  width: 100%;
  max-width: 32rem;
  height: 8rem;
  border-radius: calc(infinity * 1px);
  background: #ff643c;
}
@media screen and (max-width: 767px) {
  .c-btn-02_link {
    font-size: 3.2rem;
    line-height: 1.25;
    max-width: 55.8rem;
    height: 12rem;
  }
}
.c-btn-02_link._blue {
  background: #0078f0;
}
.c-btn-02_link::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 3rem;
  translate: 0 -50%;
  width: 1rem;
  height: 1.3rem;
  background: #fff;
  clip-path: polygon(0 0, 50% 0, 100% 50%, 50% 100%, 0 100%, 50% 50%);
  transition: right 0.4s;
}
@media screen and (max-width: 767px) {
  .c-btn-02_link::after {
    width: 1.9rem;
    height: 2.4rem;
  }
}

.c-ttl-01 {
  font-feature-settings: "palt";
  font-size: 4.8rem;
  line-height: 1.4583333333;
  letter-spacing: 0.05em;
  font-weight: 500;
  text-align: center;
  position: relative;
  margin-inline: auto;
  padding-bottom: 4.5rem;
  width: fit-content;
}
@media screen and (max-width: 767px) {
  .c-ttl-01 {
    font-size: 6.4rem;
    line-height: 1.5;
    padding-bottom: 10.9rem;
  }
}
.c-ttl-01._icon-blue {
  --_c-ttl-01-icon-color: #0078f0;
}
.c-ttl-01._icon-orange {
  --_c-ttl-01-icon-color: #ff643c;
}
.c-ttl-01::before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 50%;
  translate: -50% 0;
  width: 4.7rem;
  height: 1.6rem;
  mask: url(../images/common/icon_c_ttl_01.svg) center/contain no-repeat;
  background-color: var(--_c-ttl-01-icon-color);
}
@media screen and (max-width: 767px) {
  .c-ttl-01::before {
    width: 9.4rem;
    height: 3rem;
  }
}

.c-ttl-02 {
  display: grid;
  place-content: center;
  margin-inline: auto;
  width: 100%;
  max-width: 45rem;
  height: 10rem;
  border-radius: 1.6rem;
  background-image: linear-gradient(90deg, rgb(255, 140, 110) 0%, rgb(180, 151, 216) 50%, rgb(37, 145, 255) 100%);
  transform: skewX(-22deg);
}
@media screen and (max-width: 767px) {
  .c-ttl-02 {
    max-width: 52rem;
    height: 11.6rem;
    border-radius: 2.4rem;
  }
}
.c-ttl-02_txt {
  font-feature-settings: "palt";
  font-size: 4rem;
  color: #fff;
  transform: skewX(22deg);
}
@media screen and (max-width: 767px) {
  .c-ttl-02_txt {
    font-size: 4.8rem;
  }
}

.c-ttl-03 {
  font-feature-settings: "palt";
  font-size: 4rem;
  line-height: 1.5;
  color: #fff;
  text-align: center;
  padding: 3rem 3rem 3.4rem;
  background-image: linear-gradient(90deg, rgb(255, 140, 110) 0%, rgb(180, 151, 216) 50%, rgb(37, 145, 255) 100%);
}
@media screen and (max-width: 767px) {
  .c-ttl-03 {
    font-size: 4.8rem;
    line-height: 1.4166666667;
    padding: 1.9rem 2rem 2.3rem;
  }
}

.c-ttl-04 {
  font-feature-settings: "palt";
  font-size: 3.2rem;
  line-height: 1.75;
  letter-spacing: 0.05em;
  font-weight: 500;
  margin-inline: auto;
  width: fit-content;
}
@media screen and (max-width: 767px) {
  .c-ttl-04 {
    font-size: 4.8rem;
    line-height: 1.25;
    letter-spacing: 0em;
  }
}

.c-radius {
  --_padding: 0.6rem;
  --_radius: 1.2rem;
  padding: var(--_padding);
  border-radius: var(--_radius);
}
.c-radius_inner {
  border-radius: calc(var(--_radius) - var(--_padding));
}

.c-box-oblique {
  position: relative;
  z-index: 1;
  padding-block: 12rem 11.5rem;
  background: linear-gradient(90deg, #f9f9fa 0%, #f9f9fa 50%, #dadfe5 50%, #dadfe5 100%);
}
@media screen and (max-width: 767px) {
  .c-box-oblique {
    padding-block: 16rem 15.2rem;
    background: linear-gradient(#f9f9fa 0%, #f9f9fa 50%, #dadfe5 50%, #dadfe5 100%);
  }
}
.c-box-oblique::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  background: #edeff2;
  --_clip-path-cut: 36rem;
  clip-path: polygon(0 100%, var(--_clip-path-cut) 0, 100% 0, calc(100% - var(--_clip-path-cut)) 100%);
}
@media screen and (max-width: 767px) {
  .c-box-oblique::before {
    --_clip-path-cut: 37.3rem;
    clip-path: polygon(0 var(--_clip-path-cut), 100% 0, 100% calc(100% - var(--_clip-path-cut)), 0 100%);
  }
}

.c-faq_item {
  border-bottom: 1px solid #b1bfcc;
}
.c-faq_item.is-open .c-faq_theme_btn::before {
  rotate: -90deg;
  opacity: 0;
}
.c-faq_item.is-open .c-faq_theme_btn::after {
  rotate: 0deg;
}
.c-faq_theme_btn {
  position: relative;
  padding: 2rem 3rem 2rem 0.6rem;
  width: 100%;
}
@media screen and (max-width: 767px) {
  .c-faq_theme_btn {
    padding: 4rem 4.8rem 4.8rem 0;
  }
}
.c-faq_theme_btn::before, .c-faq_theme_btn::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 0;
  translate: 0 -50%;
  width: 2.4rem;
  height: 0.2rem;
  background: #b1bfcc;
  transition: opacity 0.4s, rotate 0.4s;
}
@media screen and (max-width: 767px) {
  .c-faq_theme_btn::before, .c-faq_theme_btn::after {
    width: 3rem;
  }
}
.c-faq_theme_btn::after {
  rotate: 90deg;
}
.c-faq_theme_btn_txt {
  font-size: 1.6rem;
  line-height: 2;
  display: flex;
  align-items: center;
  column-gap: 2rem;
}
@media screen and (max-width: 767px) {
  .c-faq_theme_btn_txt {
    font-size: 2.8rem;
    line-height: 1.5714285714;
    column-gap: 1.7rem;
  }
}
.c-faq_theme_btn_txt::before {
  font-size: 2.4rem;
  color: #fff;
  text-transform: uppercase;
  content: "q";
  display: grid;
  place-content: center;
  flex-shrink: 0;
  padding-bottom: 0.4rem;
  width: 6rem;
  height: 6rem;
  border-radius: 50%;
  background: #0078f0;
}
@media screen and (max-width: 767px) {
  .c-faq_theme_btn_txt::before {
    font-size: 3.2rem;
    width: 8rem;
    height: 8rem;
  }
}
.c-faq_des_inner {
  display: flex;
  column-gap: 2rem;
  padding: 0 3rem 2rem 0.6rem;
}
@media screen and (max-width: 767px) {
  .c-faq_des_inner {
    column-gap: 1.7rem;
    padding: 0 4.8rem 5.2rem 0;
  }
}
.c-faq_des_inner::before {
  font-size: 2.4rem;
  color: #fff;
  text-transform: uppercase;
  content: "a";
  display: grid;
  place-content: center;
  flex-shrink: 0;
  padding-bottom: 0.4rem;
  width: 6rem;
  height: 6rem;
  border-radius: 50%;
  background: #ff643c;
}
@media screen and (max-width: 767px) {
  .c-faq_des_inner::before {
    font-size: 3.2rem;
    width: 8rem;
    height: 8rem;
  }
}
.c-faq_des_inner .txt {
  font-size: 1.6rem;
  line-height: 1.75;
}
@media screen and (min-width: 768px) {
  .c-faq_des_inner .txt {
    padding-top: 1.6rem;
  }
}
@media screen and (max-width: 767px) {
  .c-faq_des_inner .txt {
    font-feature-settings: "palt";
    font-size: 2.8rem;
    line-height: 1.5714285714;
    letter-spacing: 0.05em;
    margin-top: calc((1em - 1lh) / 2);
    display: flex;
    align-items: center;
  }
}

.c-related-card-list {
  display: grid;
  justify-content: center;
  grid-template-columns: repeat(auto-fit, minmax(auto, 36.8rem));
  gap: 4.8rem;
}
@media screen and (max-width: 767px) {
  .c-related-card-list {
    grid-template-columns: 1fr;
    gap: 11.2rem;
  }
}
.c-related-card-list_link {
  display: block;
  position: relative;
  background: #fff;
}
.c-related-card-list_link::before {
  content: "";
  position: absolute;
  bottom: 1.9rem;
  right: 3.7rem;
  z-index: 2;
  width: 1.6rem;
  height: 2.1rem;
  background: #ff643c;
  clip-path: polygon(0 0, 50% 0, 100% 50%, 50% 100%, 0 100%, 50% 50%);
  transition: right 0.4s;
}
@media screen and (max-width: 767px) {
  .c-related-card-list_link::before {
    bottom: 3.4rem;
    right: 6.4rem;
    width: 3rem;
    height: 3.8rem;
  }
}
.c-related-card-list_link:focus-visible {
  opacity: 1;
  --_img-scale: 1.1;
}
.c-related-card-list_link:focus-visible::before {
  right: 3.2rem;
}
@media screen and (max-width: 767px) {
  .c-related-card-list_link:focus-visible::before {
    bottom: 2.9rem;
  }
}
@media (any-hover: hover) {
  .c-related-card-list_link:hover {
    opacity: 1;
    --_img-scale: 1.1;
  }
  .c-related-card-list_link:hover::before {
    right: 3.2rem;
  }
}
@media screen and (any-hover: hover) and (max-width: 767px) {
  .c-related-card-list_link:hover::before {
    bottom: 2.9rem;
  }
}
.c-related-card-list_link_in {
  clip-path: polygon(0 0, 100% 0, 100% calc(100% - 6rem), calc(100% - 8.8rem) calc(100% - 6rem), calc(100% - 12rem) 100%, 0 100%);
}
@media screen and (max-width: 767px) {
  .c-related-card-list_link_in {
    clip-path: polygon(0 0, 100% 0, 100% calc(100% - 10.8rem), calc(100% - 15.7rem) calc(100% - 10.8rem), calc(100% - 21.4rem) 100%, 0 100%);
  }
}
.c-related-card-list_link_in img {
  scale: var(--_img-scale);
  transition: scale 0.4s;
}
.c-related-card-list_ttl {
  font-size: 2rem;
  line-height: 1.5;
  font-weight: 500;
  color: #0078f0;
  text-align: center;
  margin-top: 3.4rem;
}
@media screen and (min-width: 768px) {
  .c-related-card-list_ttl._lg-pc {
    font-size: 2.4rem;
    line-height: 1.25;
  }
}
@media screen and (max-width: 767px) {
  .c-related-card-list_ttl {
    font-size: 4rem;
    line-height: 1.4;
    margin-top: 4.9rem;
  }
}

.c-lead-list {
  display: grid;
  grid-template-columns: repeat(auto-fit, 38rem);
  justify-content: center;
  gap: 3rem;
  margin: 10.2rem auto 0;
  width: 100%;
  max-width: 120rem;
}
@media screen and (max-width: 767px) {
  .c-lead-list {
    grid-template-columns: 1fr;
    gap: 11.3rem;
    margin-top: 15.2rem;
    max-width: 55.9rem;
  }
}
.c-lead-list._col-2 {
  grid-template-columns: repeat(auto-fit, 56rem);
  gap: 10.4rem 8rem;
}
@media screen and (max-width: 767px) {
  .c-lead-list._col-2 {
    grid-template-columns: 1fr;
    gap: 12rem;
    max-width: 65.4rem;
  }
}
.c-lead-list._col-2 .c-lead-list_ttl {
  left: 4rem;
  min-width: 31.6rem;
}
@media screen and (max-width: 767px) {
  .c-lead-list._col-2 .c-lead-list_ttl {
    left: 50%;
    translate: -50% 0;
    width: 85.7798165138%;
    min-width: auto;
  }
}
.c-lead-list._col-2 .c-lead-list_here_txt {
  font-size: 1.6rem;
  line-height: 2;
  padding-right: 4.8rem;
  height: 9.4rem;
}
@media screen and (max-width: 767px) {
  .c-lead-list._col-2 .c-lead-list_here_txt {
    font-size: 2.8rem;
    line-height: 1.3214285714;
    padding-right: 6.9rem;
    height: 11rem;
  }
}
.c-lead-list._col-2 .c-lead-list_here_txt::after {
  content: "";
  position: absolute;
  top: calc(50% + 0.1rem);
  right: var(--_arrow-right);
  translate: 0 -50%;
  width: 1.6rem;
  height: 2.1rem;
  background: #ff643c;
  clip-path: polygon(0 0, 50% 0, 100% 50%, 50% 100%, 0 100%, 50% 50%);
  transition: right 0.4s;
}
@media screen and (max-width: 767px) {
  .c-lead-list._col-2 .c-lead-list_here_txt::after {
    width: 1.9rem;
    height: 2.5rem;
  }
}
.c-lead-list_link {
  --_arrow-right: 0;
  display: block;
  position: relative;
}
.c-lead-list_link:focus-visible {
  --_img-scale: 1.1;
  --_arrow-right: -0.5rem;
  opacity: 1;
}
@media (any-hover: hover) {
  .c-lead-list_link:hover {
    --_img-scale: 1.1;
    --_arrow-right: -0.5rem;
    opacity: 1;
  }
}
.c-lead-list_link._coming-soon {
  pointer-events: none;
}
.c-lead-list_link._coming-soon::before {
  font-feature-settings: "palt";
  font-size: 2.4rem;
  line-height: 1.3333333333;
  font-weight: 500;
  color: #fff;
  text-align: center;
  text-transform: capitalize;
  content: "coming soon";
  position: absolute;
  top: 50%;
  left: 0;
  z-index: 1;
  translate: 0 -50%;
  width: 100%;
}
@media screen and (max-width: 767px) {
  .c-lead-list_link._coming-soon::before {
    font-size: 3.2rem;
  }
}
.c-lead-list_ttl {
  font-size: 1.6rem;
  line-height: 2;
  font-weight: 500;
  color: #fff;
  text-align: center;
  position: absolute;
  top: -2.2rem;
  left: 3.2rem;
  z-index: 1;
  padding: 0.6rem 3rem 0.7rem;
  width: fit-content;
  min-width: 17.6rem;
  border-radius: 0.8rem;
  background: #0078f0;
}
@media screen and (max-width: 767px) {
  .c-lead-list_ttl {
    font-size: 2.4rem;
    line-height: 1.3333333333;
    top: -3rem;
    left: 4.5rem;
    padding: 1.3rem 3rem 1.5rem;
    min-width: 35.2rem;
    border-radius: 1.6rem;
  }
}
.c-lead-list_img {
  mask: url(../images/common/img_clip_path_frame_type_01.svg) center/cover no-repeat;
  aspect-ratio: 380/217;
  overflow: hidden;
}
.c-lead-list_img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  scale: var(--_img-scale);
  transition: scale 0.4s;
}
.c-lead-list_here {
  position: absolute;
  bottom: 0;
  right: 0;
  z-index: 1;
}
.c-lead-list_here_txt {
  font-feature-settings: "palt";
  font-size: 1.4rem;
  line-height: 1.7142857143;
  display: flex;
  align-items: center;
  position: relative;
  padding-right: 2.9rem;
  height: 6.3rem;
}
@media screen and (max-width: 767px) {
  .c-lead-list_here_txt {
    font-size: 2.4rem;
    line-height: 1.3333333333;
    padding-right: 5.6rem;
    height: 9.3rem;
  }
}
.c-lead-list_here_txt::after {
  content: "";
  position: absolute;
  top: calc(50% + 0.1rem);
  right: var(--_arrow-right);
  translate: 0 -50%;
  width: 1.6rem;
  height: 2.1rem;
  background: #ff643c;
  clip-path: polygon(0 0, 50% 0, 100% 50%, 50% 100%, 0 100%, 50% 50%);
  transition: right 0.4s;
}
@media screen and (max-width: 767px) {
  .c-lead-list_here_txt::after {
    width: 1.9rem;
    height: 2.5rem;
  }
}
.c-lead-list_txt {
  font-feature-settings: "palt";
  font-size: 1.4rem;
  line-height: 1.7142857143;
  margin-top: 1.5rem;
}
@media screen and (max-width: 767px) {
  .c-lead-list_txt {
    font-size: 2.4rem;
    line-height: 1.3333333333;
    margin-top: 2.7rem;
  }
}

.c-anchor-list {
  display: grid;
  grid-template-columns: repeat(auto-fit, 38rem);
  justify-content: center;
  gap: 3rem;
  margin-inline: auto;
  width: 100%;
  max-width: 120rem;
}
@media screen and (max-width: 767px) {
  .c-anchor-list {
    grid-template-columns: 1fr;
    gap: 4rem;
  }
}
@media screen and (min-width: 768px) {
  .c-anchor-list._col-4-pc {
    grid-template-columns: repeat(auto-fit, 29.1rem);
    gap: 1.2rem;
  }
  .c-anchor-list._col-4-pc .c-anchor-list_link {
    font-size: 2.4rem;
    line-height: 1.3333333333;
    height: 6.3rem;
    border-radius: 1rem;
  }
  .c-anchor-list._col-4-pc .c-anchor-list_link::after {
    width: 2.2rem;
    height: 1.7rem;
  }
}
@media screen and (max-width: 767px) {
  .c-anchor-list._col-2-sp {
    grid-template-columns: repeat(2, 1fr);
    gap: 2.2rem;
  }
  .c-anchor-list._col-2-sp .c-anchor-list_link {
    font-size: 2.4rem;
    align-items: initial;
    place-content: center;
    padding: 0 4.5rem;
    height: 6.1rem;
    border-radius: 1rem;
  }
  .c-anchor-list._col-2-sp .c-anchor-list_link::after {
    right: 1.8rem;
    width: 2.2rem;
    height: 1.7rem;
  }
}
.c-anchor-list_link {
  font-feature-settings: "palt";
  font-size: 2rem;
  line-height: 1.5;
  font-weight: 500;
  color: #ff643c;
  display: grid;
  position: relative;
  border: 0.2rem solid #ff643c;
  border-radius: 0.8rem;
  background: #fff;
}
@media screen and (min-width: 768px) {
  .c-anchor-list_link {
    place-content: center;
    height: 8rem;
  }
}
@media screen and (max-width: 767px) {
  .c-anchor-list_link {
    font-size: 3.2rem;
    align-items: center;
    padding: 2.3rem 7.5rem 2.5rem 4.4rem;
    border-radius: 1.6rem;
  }
}
.c-anchor-list_link::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 1.8rem;
  translate: 0 -50%;
  width: 1.5rem;
  height: 1.3rem;
  clip-path: polygon(0 0, 50% 53.8461538462%, 100% 0, 100% 53.8461538462%, 50% 100%, 0 53.8461538462%);
  background: #ff643c;
}
@media screen and (max-width: 767px) {
  .c-anchor-list_link::after {
    right: 4.6rem;
    width: 2.3rem;
    height: 2rem;
  }
}
.c-anchor-list_link._blue {
  color: #0078f0;
  border-color: #0078f0;
}
.c-anchor-list_link._blue::after {
  background: #0078f0;
}

.c-txt-01 {
  font-size: 1.6rem;
  line-height: 2;
}
@media screen and (max-width: 767px) {
  .c-txt-01 {
    font-size: 3.2rem;
    line-height: 2;
  }
}

.c-breadcrumb {
  margin-top: 11rem;
  padding-bottom: 0.9rem;
}
@media screen and (max-width: 767px) {
  .c-breadcrumb {
    display: none;
  }
}
.c-breadcrumb_list {
  display: flex;
  flex-wrap: wrap;
  margin-inline: auto;
  width: 96%;
  max-width: 160rem;
}
.c-breadcrumb_item {
  font-size: 1.4rem;
  line-height: 2.2857142857;
  font-weight: 500;
}
.c-breadcrumb_item:nth-child(n+2) {
  position: relative;
  padding-left: 3.5rem;
}
.c-breadcrumb_item:nth-child(n+2)::before {
  content: ">";
  position: absolute;
  top: 0;
  left: 1.3rem;
}
.c-breadcrumb_link, .c-breadcrumb_name {
  font: inherit;
  color: inherit;
  display: block;
}
.c-breadcrumb_link {
  text-decoration: underline;
  text-decoration-thickness: 0.1rem;
  text-underline-offset: 0.3rem;
  transition: text-decoration-color 0.4s;
}
.c-breadcrumb_link:focus-visible {
  text-decoration-color: transparent;
}
@media (any-hover: hover) {
  .c-breadcrumb_link:hover {
    text-decoration-color: transparent;
  }
}

:has(.l-header-recruit) .c-breadcrumb_link {
  text-decoration: none;
  position: relative;
}
:has(.l-header-recruit) .c-breadcrumb_link::before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 0.2rem;
  background-image: linear-gradient(90deg, rgb(255, 140, 110) 0%, rgb(180, 151, 216) 50%, rgb(37, 145, 255) 100%);
  transition: opacity 0.4s;
}
:has(.l-header-recruit) .c-breadcrumb_link:focus-visible::before {
  opacity: 0;
}
@media (any-hover: hover) {
  :has(.l-header-recruit) .c-breadcrumb_link:hover::before {
    opacity: 0;
  }
}

.c-sec-recruit-flow {
  position: relative;
  z-index: 1;
  padding-bottom: 12rem;
}
@media screen and (max-width: 767px) {
  .c-sec-recruit-flow {
    padding-bottom: 20rem;
  }
}
.c-sec-recruit-flow::before {
  content: "";
  position: absolute;
  --_top: 5rem;
  top: var(--_top);
  left: 0;
  z-index: -1;
  width: 100%;
  height: calc(100% - var(--_top));
  background: linear-gradient(135deg, rgba(255, 140, 110, 0.08) 0%, rgba(180, 151, 216, 0.08) 50%, rgba(37, 145, 255, 0.08) 100%), #fff;
}
@media screen and (max-width: 767px) {
  .c-sec-recruit-flow::before {
    --_top: 5.8rem;
  }
}
.c-sec-recruit-flow .flow {
  position: relative;
  margin-top: 9.2rem;
}
@media screen and (min-width: 768px) {
  .c-sec-recruit-flow .flow {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    column-gap: 6rem;
  }
}
@media screen and (max-width: 767px) {
  .c-sec-recruit-flow .flow {
    margin-top: 12rem;
  }
}
.c-sec-recruit-flow .flow::before {
  content: "";
  position: absolute;
  top: 11.5rem;
  left: 50%;
  z-index: -1;
  translate: -50% 0;
  width: 83.3333333333%;
  height: 2.4rem;
  background-image: linear-gradient(90deg, rgba(37, 145, 255, 0.2) 0%, rgba(180, 151, 216, 0.2) 50%, rgba(255, 140, 110, 0.2) 100%);
}
@media screen and (max-width: 767px) {
  .c-sec-recruit-flow .flow::before {
    top: 50%;
    left: 9.6rem;
    translate: 0 -50%;
    width: 4.8rem;
    height: calc(100% - 24rem);
    background-image: linear-gradient(rgba(37, 145, 255, 0.2) 0%, rgba(180, 151, 216, 0.2) 50%, rgba(255, 140, 110, 0.2) 100%);
  }
}
@media screen and (min-width: 768px) {
  .c-sec-recruit-flow .flow_item {
    display: grid;
    grid-row: span 2;
    grid-template-rows: subgrid;
  }
}
@media screen and (max-width: 767px) {
  .c-sec-recruit-flow .flow_item:nth-child(n+2) {
    margin-top: 2.4rem;
  }
}
@media screen and (min-width: 768px) {
  .c-sec-recruit-flow .flow_detail {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 0.7rem 6rem;
    grid-row: span 2;
    grid-template-rows: subgrid;
  }
}
.c-sec-recruit-flow .flow_detail_item {
  position: relative;
}
@media screen and (min-width: 768px) {
  .c-sec-recruit-flow .flow_detail_item {
    padding-top: 5.2rem;
  }
}
@media screen and (max-width: 767px) {
  .c-sec-recruit-flow .flow_detail_item {
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding-left: 30rem;
    min-height: 24rem;
  }
}
.c-sec-recruit-flow .flow_detail_item:has(.flow_detail_box) {
  padding: 0;
  min-height: auto;
}
@media screen and (max-width: 767px) {
  .c-sec-recruit-flow .flow_detail_item:nth-child(n+2) {
    margin-top: 4rem;
  }
}
@media screen and (min-width: 768px) {
  .c-sec-recruit-flow .flow_detail_item:nth-child(3) {
    grid-row: 2;
    grid-column: span 3;
  }
}
.c-sec-recruit-flow .flow_detail_txt {
  font-feature-settings: "palt";
  font-size: 1.6rem;
  line-height: 2;
}
@media screen and (min-width: 768px) {
  .c-sec-recruit-flow .flow_detail_txt {
    position: absolute;
    top: 0;
    left: 50%;
    translate: -50% 0;
    width: max-content;
  }
}
@media screen and (max-width: 767px) {
  .c-sec-recruit-flow .flow_detail_txt {
    font-size: 3.2rem;
    line-height: 2;
  }
  .c-sec-recruit-flow .flow_detail_txt ~ .flow_detail_ttl {
    margin-top: 0.8rem;
  }
}
@media screen and (max-width: 767px) {
  .c-sec-recruit-flow .flow_detail_icon {
    position: absolute;
    top: 50%;
    left: 0;
    translate: 0 -50%;
    width: 24rem;
  }
}
.c-sec-recruit-flow .flow_detail_ttl {
  font-feature-settings: "palt";
  font-size: 1.6rem;
  line-height: 2;
  font-weight: 500;
}
@media screen and (min-width: 768px) {
  .c-sec-recruit-flow .flow_detail_ttl {
    text-align: center;
    margin-top: 1.1rem;
  }
}
@media screen and (max-width: 767px) {
  .c-sec-recruit-flow .flow_detail_ttl {
    font-size: 4.8rem;
    line-height: 1.3333333333;
  }
}
.c-sec-recruit-flow .flow_detail_note {
  font-feature-settings: "palt";
  font-size: 1.4rem;
  line-height: 2;
}
@media screen and (min-width: 768px) {
  .c-sec-recruit-flow .flow_detail_note {
    text-align: center;
  }
}
@media screen and (max-width: 767px) {
  .c-sec-recruit-flow .flow_detail_note {
    font-size: 2.8rem;
    line-height: 1.7142857143;
    margin-top: 1.6rem;
  }
}
.c-sec-recruit-flow .flow_detail_box {
  --_box-padding-top: 2.2rem;
  --_box-border-width: 0.2rem;
  --_box-radius: 1.5rem;
  position: relative;
  z-index: 1;
  padding-top: var(--_box-padding-top);
}
@media screen and (max-width: 767px) {
  .c-sec-recruit-flow .flow_detail_box {
    --_box-padding-top: 4.3rem;
    --_box-border-width: 0.2rem;
    --_box-radius: 3.2rem;
    grid-column: span 2;
  }
}
.c-sec-recruit-flow .flow_detail_box::before, .c-sec-recruit-flow .flow_detail_box::after {
  content: "";
  position: absolute;
  left: 50%;
  translate: -50% 0;
  width: 2.9rem;
  height: calc(var(--_box-padding-top) + var(--_box-border-width));
  clip-path: polygon(50% 0, 100% 100%, 0 100%);
}
@media screen and (max-width: 767px) {
  .c-sec-recruit-flow .flow_detail_box::before, .c-sec-recruit-flow .flow_detail_box::after {
    width: 5.1rem;
  }
}
.c-sec-recruit-flow .flow_detail_box::before {
  top: 0;
  z-index: 1;
  background: rgb(0, 120, 240);
}
.c-sec-recruit-flow .flow_detail_box::after {
  top: calc(var(--_box-border-width) * 2);
  z-index: 2;
  background: #fff;
}
.c-sec-recruit-flow .flow_detail_box_inner {
  position: relative;
  z-index: 0;
  padding: 2.4rem 0;
  border-radius: var(--_box-radius);
  background-image: linear-gradient(rgb(37, 145, 255) calc(0% - var(--_box-padding-top)), rgb(180, 151, 216) 50%, rgb(255, 140, 110) 100%);
}
@media screen and (max-width: 767px) {
  .c-sec-recruit-flow .flow_detail_box_inner {
    padding: 4.8rem 4.8rem 3.6rem;
  }
}
.c-sec-recruit-flow .flow_detail_box_inner::before {
  content: "";
  position: absolute;
  inset: var(--_box-border-width);
  z-index: -1;
  border-radius: calc(var(--_box-radius) - var(--_box-border-width));
  background: #fff;
}
.c-sec-recruit-flow .flow_detail_box_theme {
  font-size: 1.6rem;
  line-height: 1.5;
  margin-inline: auto;
  width: fit-content;
}
@media screen and (max-width: 767px) {
  .c-sec-recruit-flow .flow_detail_box_theme {
    font-size: 2.8rem;
    line-height: 1.7142857143;
  }
}
.c-sec-recruit-flow .flow_detail_box_des {
  font-feature-settings: "palt";
  font-size: 1.6rem;
  line-height: 1.5;
  font-weight: 500;
  color: #ff643c;
  text-align: center;
  margin-top: 1.1rem;
  padding-top: 1.2rem;
  border-top: 1px solid #b1bfcc;
}
@media screen and (min-width: 768px) {
  .c-sec-recruit-flow .flow_detail_box_des {
    margin-inline: auto;
    width: calc(100% - 14rem);
  }
}
@media screen and (max-width: 767px) {
  .c-sec-recruit-flow .flow_detail_box_des {
    font-size: 3.2rem;
    line-height: 2;
    margin-top: 2.8rem;
    padding-top: 1.5rem;
  }
}
.c-sec-recruit-flow .note-box {
  font-size: 2.4rem;
  line-height: 1.3333333333;
  font-weight: 500;
  text-align: center;
  position: relative;
  margin-top: 4rem;
  padding-block: 2rem 2.1rem;
  border-radius: 1.6rem;
  background: linear-gradient(-90deg, rgba(37, 145, 255, 0.2) 0%, rgba(180, 151, 216, 0.2) 50%, rgba(255, 140, 110, 0.2) 100%), #fff;
}
@media screen and (max-width: 767px) {
  .c-sec-recruit-flow .note-box {
    font-size: 3.2rem;
    line-height: 2;
    margin-top: 11.8rem;
    padding-block: 5.5rem 5.6rem;
    border-radius: 3.2rem;
  }
}
.c-sec-recruit-flow .note-box_lg {
  font-size: 4rem;
  line-height: 0.8;
  font-weight: 400;
  color: #ff643c;
}
@media screen and (max-width: 767px) {
  .c-sec-recruit-flow .note-box_lg {
    font-size: 6.4rem;
    line-height: 1;
  }
}
.c-sec-recruit-flow .note-box_md {
  font-size: 3.2rem;
  line-height: 1;
  color: #ff643c;
}
@media screen and (max-width: 767px) {
  .c-sec-recruit-flow .note-box_md {
    font-size: 4.8rem;
    line-height: 1.3333333333;
  }
}
.c-sec-recruit-flow .note {
  font-feature-settings: "palt";
  font-size: 1.6rem;
  line-height: 1.5;
  font-weight: 500;
  text-align: center;
  margin-top: 1.1rem;
}
@media screen and (max-width: 767px) {
  .c-sec-recruit-flow .note {
    font-size: 3.2rem;
    line-height: 2;
    margin-top: 2.8rem;
  }
}
.c-sec-recruit-flow .c-btn-02 {
  margin-top: 8rem;
}
@media screen and (max-width: 767px) {
  .c-sec-recruit-flow .c-btn-02 {
    margin-top: 12rem;
  }
}

.c-sec-recruit-entry {
  container-type: inline-size;
  background: #fff;
}
@media screen and (max-width: 767px) {
  .c-sec-recruit-entry {
    padding-block: 17.8rem 20rem;
    background: linear-gradient(135deg, rgba(255, 140, 110, 0.08) 0%, rgba(180, 151, 216, 0.08) 50%, rgba(37, 145, 255, 0.08) 100%), #fff;
  }
}
@media screen and (min-width: 768px) {
  .c-sec-recruit-entry .c-wrap {
    position: relative;
    z-index: 1;
    max-width: 160rem;
    padding-block: 11rem 12rem;
  }
  .c-sec-recruit-entry .c-wrap::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
    width: calc(50% + 50cqi);
    height: 100%;
    border-radius: 5.6rem 0 0 5.6rem;
    background: linear-gradient(135deg, rgba(255, 140, 110, 0.08) 0%, rgba(180, 151, 216, 0.08) 50%, rgba(37, 145, 255, 0.08) 100%), #fff;
  }
}
@media screen and (max-width: 767px) {
  .c-sec-recruit-entry .c-wrap {
    width: 87.2%;
  }
}
.c-sec-recruit-entry .ttl {
  text-align: center;
}
.c-sec-recruit-entry .ttl_txt {
  font-feature-settings: "palt";
  font-size: 4rem;
  line-height: 1.5;
  display: inline-block;
  color: transparent;
  background-image: linear-gradient(90deg, rgb(255, 140, 110) 0%, rgb(180, 151, 216) 50%, rgb(37, 145, 255) 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}
@media screen and (max-width: 767px) {
  .c-sec-recruit-entry .ttl_txt {
    font-size: 6.4rem;
    line-height: 1.6875;
  }
}
.c-sec-recruit-entry .list {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 8rem;
  margin: 6.7rem auto 0;
  width: 90%;
  max-width: 120rem;
}
@media screen and (max-width: 767px) {
  .c-sec-recruit-entry .list {
    grid-template-columns: 1fr;
    margin-top: 9.7rem;
    width: 100%;
  }
}
.c-sec-recruit-entry .list_item {
  position: relative;
  padding-top: 5rem;
}
@media screen and (max-width: 767px) {
  .c-sec-recruit-entry .list_item {
    padding-top: 8.4rem;
  }
}
.c-sec-recruit-entry .list_item._new-graduate {
  --_ttl-width: 21.6rem;
}
@media screen and (max-width: 767px) {
  .c-sec-recruit-entry .list_item._new-graduate {
    --_ttl-width: 30.4rem;
  }
}
.c-sec-recruit-entry .list_item._mid-career {
  --_ttl-width: 18.5rem;
}
@media screen and (max-width: 767px) {
  .c-sec-recruit-entry .list_item._mid-career {
    --_ttl-width: 25.9rem;
  }
}
.c-sec-recruit-entry .list_ttl {
  position: absolute;
  top: 0;
  left: 50%;
  translate: -50% 0;
  width: var(--_ttl-width);
}
.c-sec-recruit-entry .list .c-btn-02_link {
  max-width: 100%;
  height: 12rem;
}
@media screen and (max-width: 767px) {
  .c-sec-recruit-entry .list .c-btn-02_link {
    max-width: 65.4rem;
    height: 14rem;
  }
}
@media screen and (max-width: 767px) {
  .c-sec-recruit-entry .list .c-btn-02_link::after {
    width: 2rem;
    height: 2.5rem;
  }
}

.c-sec-recruit-entry-low {
  padding-block: 6rem 8rem;
  background: linear-gradient(135deg, rgba(255, 140, 110, 0.08) 0%, rgba(180, 151, 216, 0.08) 50%, rgba(37, 145, 255, 0.08) 100%), #fff;
}
@media screen and (max-width: 767px) {
  .c-sec-recruit-entry-low {
    padding-block: 9.5rem 12rem;
  }
}
.c-sec-recruit-entry-low + .c-breadcrumb {
  margin-top: 3.2rem;
}
.c-sec-recruit-entry-low .hgroup_txt {
  margin-inline: auto;
  width: 20.2rem;
}
@media screen and (max-width: 767px) {
  .c-sec-recruit-entry-low .hgroup_txt {
    width: 23.5rem;
  }
}
.c-sec-recruit-entry-low .hgroup_ttl {
  text-align: center;
  margin-top: 2rem;
}
.c-sec-recruit-entry-low .hgroup_ttl_txt {
  font-feature-settings: "palt";
  font-size: 3.2rem;
  line-height: 1.625;
  display: inline-block;
  color: transparent;
  background-image: linear-gradient(90deg, rgb(255, 140, 110) 0%, rgb(180, 151, 216) 50%, rgb(37, 145, 255) 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}
@media screen and (max-width: 767px) {
  .c-sec-recruit-entry-low .hgroup_ttl_txt {
    font-size: 3.6rem;
    line-height: 1.5555555556;
  }
}
.c-sec-recruit-entry-low .list {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 6rem;
  margin: 4rem auto 0;
  max-width: 94rem;
}
@media screen and (max-width: 767px) {
  .c-sec-recruit-entry-low .list {
    grid-template-columns: 1fr;
    gap: 4rem;
    margin-top: 6rem;
    max-width: 55.6rem;
  }
}
.c-sec-recruit-entry-low .list .c-btn-02_link {
  max-width: 100%;
}
@media screen and (max-width: 767px) {
  .c-sec-recruit-entry-low .list .c-btn-02_link {
    font-size: 3rem;
    line-height: 1.3333333333;
    height: 12.6rem;
  }
}
@media screen and (max-width: 767px) {
  .c-sec-recruit-entry-low .list .c-btn-02_link::after {
    width: 2.1rem;
    height: 2.8rem;
  }
}

.c-sec-recruit-lead {
  padding-block: 13.7rem 8.3rem;
  background-image: linear-gradient(90deg, rgb(255, 140, 110) 0%, rgb(180, 151, 216) 50%, rgb(37, 145, 255) 100%);
  clip-path: polygon(0 0, calc(50% - 18.5rem) 0, 50% 8.8rem, calc(50% + 18.5rem) 0, 100% 0, 100% 100%, 0 100%);
}
@media screen and (max-width: 767px) {
  .c-sec-recruit-lead {
    padding-block: 15.5rem 12rem;
  }
}
.c-sec-recruit-lead .ttl {
  font-feature-settings: "palt";
  font-size: 4rem;
  line-height: 1.25;
  color: #fff;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .c-sec-recruit-lead .ttl {
    font-size: 3.6rem;
    line-height: 1.2777777778;
  }
}
.c-sec-recruit-lead .c-btn-02 {
  margin-top: 5.4rem;
}
@media screen and (max-width: 767px) {
  .c-sec-recruit-lead .c-btn-02 {
    margin-top: 6.7rem;
  }
}
.c-sec-recruit-lead .c-btn-02_link {
  color: #ff643c;
  background: #fff;
}
@media screen and (max-width: 767px) {
  .c-sec-recruit-lead .c-btn-02_link {
    font-size: 3rem;
    max-width: 55.6rem;
    height: 12.6rem;
  }
}
.c-sec-recruit-lead .c-btn-02_link::after {
  background: #ff643c;
}
@media screen and (max-width: 767px) {
  .c-sec-recruit-lead .c-btn-02_link::after {
    width: 2.1rem;
    height: 2.8rem;
  }
}

.c-sec-infographics .list {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 4.5rem;
}
@media screen and (max-width: 767px) {
  .c-sec-infographics .list {
    grid-template-columns: repeat(2, 1fr);
    gap: 2rem;
  }
}
.c-sec-infographics .list_item {
  --_icon-margin-top: 0;
  --_icon-width: auto;
  --_icon-translate-x: 0;
  --_val-font-size: 12rem;
  --_val-line-height: calc(110 / 120);
  --_val-margin-top: -1.7rem;
  --_val-unit-font-size: 4rem;
  --_val-box-column-gap: 5rem;
  display: grid;
  align-items: flex-start;
  padding-block: 2.9rem 4rem;
  border-radius: 4rem;
  background: linear-gradient(135deg, rgba(255, 100, 60, 0.05) 0%, rgba(0, 120, 240, 0.05) 100%), #fff;
}
@media screen and (max-width: 767px) {
  .c-sec-infographics .list_item {
    padding-block: 2.5rem 4rem;
  }
}
.c-sec-infographics .list_item._span-2 {
  grid-column: span 2;
}
.c-sec-infographics .list_item._average-overtime-hours {
  --_icon-margin-top: 9.8rem;
  --_icon-width: 31.4rem;
  --_icon-translate-x: 1.4rem;
  --_val-margin-top: 18.3rem;
  --_val-balloon-top: -10.2rem;
  --_val-balloon-left: 0;
  --_val-balloon-right: 0;
}
@media screen and (max-width: 767px) {
  .c-sec-infographics .list_item._average-overtime-hours {
    --_icon-width: 30.7rem;
    --_icon-translate-x: 0;
    --_val-font-size: 11.2rem;
    --_val-line-height: calc(102 / 112);
    --_val-margin-top: 15.2rem;
    --_val-unit-font-size: 3.6rem;
    --_val-balloon-top: -12.7rem;
    --_val-balloon-right: 3.2rem;
    --_val-box-column-gap: 2rem;
  }
}
.c-sec-infographics .list_item._average-age {
  --_icon-margin-top: 9.2rem;
  --_icon-width: 21.1rem;
  --_val-margin-top: 19rem;
}
@media screen and (max-width: 767px) {
  .c-sec-infographics .list_item._average-age {
    --_icon-margin-top: 8.2rem;
    --_icon-width: 18.4rem;
    --_val-margin-top: 14.9rem;
  }
}
.c-sec-infographics .list_item._humanities-and-sciences-ratio {
  --_icon-margin-top: 8.5rem;
  --_icon-width: 26.2rem;
  --_val-margin-top: 19rem;
}
@media screen and (max-width: 767px) {
  .c-sec-infographics .list_item._humanities-and-sciences-ratio {
    --_icon-margin-top: 8.2rem;
    --_icon-width: 24.7rem;
    --_val-margin-top: 14.9rem;
  }
}
.c-sec-infographics .list_item._average-paid-leave-acquisition-days {
  --_icon-margin-top: 7.6rem;
  --_icon-width: 23.6rem;
  --_val-margin-top: 17.8rem;
  --_val-balloon-top: -10.2rem;
  --_val-balloon-left: 0;
  --_val-balloon-right: 0;
}
@media screen and (max-width: 767px) {
  .c-sec-infographics .list_item._average-paid-leave-acquisition-days {
    --_icon-margin-top: 7.6rem;
    --_icon-width: 25.2rem;
    --_val-font-size: 11.2rem;
    --_val-line-height: calc(102 / 112);
    --_val-margin-top: 15.1rem;
    --_val-unit-font-size: 3.6rem;
    --_val-balloon-top: -12.4rem;
    --_val-balloon-left: -2.4rem;
    --_val-balloon-right: 0.9rem;
    --_val-box-column-gap: 8rem;
  }
}
.c-sec-infographics .list_item._average-continued-service-years {
  --_icon-margin-top: 9.4rem;
  --_icon-width: 19.4rem;
  --_val-margin-top: 19rem;
}
@media screen and (max-width: 767px) {
  .c-sec-infographics .list_item._average-continued-service-years {
    --_icon-margin-top: 6.9rem;
    --_icon-width: 19.3rem;
    --_val-margin-top: 15.1rem;
  }
}
.c-sec-infographics .list_item._male-childcare-leave-acquisition-rate {
  --_icon-margin-top: 8.2rem;
  --_icon-width: 10.1rem;
  --_val-margin-top: 19rem;
}
@media screen and (max-width: 767px) {
  .c-sec-infographics .list_item._male-childcare-leave-acquisition-rate {
    --_icon-margin-top: 6.7rem;
    --_icon-width: 10.2rem;
    --_val-margin-top: 14.5rem;
  }
}
.c-sec-infographics .list_item._annual-holiday {
  --_icon-margin-top: 9.4rem;
  --_icon-width: 12.6rem;
  --_val-margin-top: 19rem;
}
@media screen and (max-width: 767px) {
  .c-sec-infographics .list_item._annual-holiday {
    --_icon-margin-top: 6.9rem;
    --_icon-width: 12.7rem;
    --_val-margin-top: 14.8rem;
  }
}
.c-sec-infographics .list_ttl {
  font-size: 3rem;
  line-height: 1.3333333333;
  font-weight: 500;
  text-align: center;
  grid-row: 1;
  grid-column: 1;
  position: relative;
  z-index: 1;
  margin-inline: auto;
  padding: 0.3rem 2rem 0.5rem;
  width: fit-content;
  min-width: 24.8rem;
  border-radius: calc(infinity * 1px);
  background-image: linear-gradient(90deg, rgb(255, 140, 110) 0%, rgb(180, 151, 216) 50%, rgb(37, 145, 255) 100%);
}
@media screen and (max-width: 767px) {
  .c-sec-infographics .list_ttl {
    font-size: 2.4rem;
    line-height: 1.4166666667;
    padding: 0.5rem 2rem 0.7rem;
  }
}
.c-sec-infographics .list_ttl::before {
  content: "";
  position: absolute;
  inset: 0.2rem;
  z-index: -1;
  border-radius: calc(infinity * 1px);
  background: #fff;
  pointer-events: none;
}
.c-sec-infographics .list_ttl_sup {
  font-size: 0.5em;
  top: -0.75em;
}
.c-sec-infographics .list_icon {
  grid-row: 1;
  grid-column: 1;
  margin: var(--_icon-margin-top) auto 0;
  width: var(--_icon-width);
  translate: var(--_icon-translate-x) 0;
}
.c-sec-infographics .list_val {
  font-feature-settings: "palt";
  font-size: var(--_val-font-size);
  line-height: var(--_val-line-height);
  letter-spacing: 0.02em;
  text-shadow: -0.26rem 0.31rem 0.8rem rgba(34, 34, 34, 0.2);
  grid-row: 1;
  grid-column: 1;
  position: relative;
  z-index: 1;
  margin: var(--_val-margin-top) auto 0;
}
.c-sec-infographics .list_val.u-text-color-orange .list_val_balloon {
  background: #ff643c;
}
.c-sec-infographics .list_val.u-text-color-blue .list_val_balloon {
  background: #0078f0;
}
.c-sec-infographics .list_val_balloon {
  font-size: 1.8rem;
  letter-spacing: 0em;
  font-weight: 500;
  color: #fff;
  text-shadow: none;
  text-align: center;
  display: grid;
  place-content: center;
  position: absolute;
  top: var(--_val-balloon-top);
  width: 10.1rem;
  height: 10.1rem;
  border-radius: 50%;
}
@media screen and (max-width: 767px) {
  .c-sec-infographics .list_val_balloon {
    font-size: 2.4rem;
    width: 11.7rem;
    height: 11.7rem;
  }
}
.c-sec-infographics .list_val_balloon::before {
  content: "";
  position: absolute;
  bottom: -0.7rem;
  z-index: -1;
  width: 3rem;
  height: 1.4rem;
  background: inherit;
  clip-path: polygon(0 0, calc(100% - 26.6666666667%) 0, 100% 100%);
}
@media screen and (max-width: 767px) {
  .c-sec-infographics .list_val_balloon::before {
    bottom: -0.8rem;
    width: 3.3rem;
    height: 1.7rem;
  }
}
.c-sec-infographics .list_val_unit {
  font-weight: 500;
  font-size: var(--_val-unit-font-size);
}
.c-sec-infographics .list_val-box {
  display: flex;
  justify-content: center;
  grid-row: 1;
  grid-column: 1;
  column-gap: var(--_val-box-column-gap);
  margin-top: var(--_val-margin-top);
}
.c-sec-infographics .list_val-box .list_val {
  margin: 0;
}
.c-sec-infographics .list_val-box .list_val:nth-of-type(1) .list_val_balloon {
  left: var(--_val-balloon-left);
}
.c-sec-infographics .list_val-box .list_val:nth-of-type(1) .list_val_balloon::before {
  left: 50%;
}
.c-sec-infographics .list_val-box .list_val:nth-of-type(2) .list_val_balloon {
  right: var(--_val-balloon-right);
}
.c-sec-infographics .list_val-box .list_val:nth-of-type(2) .list_val_balloon::before {
  right: 50%;
  scale: -1 1;
}
.c-sec-infographics .current {
  font-feature-settings: "palt";
  font-size: 2.4rem;
  line-height: 1.4166666667;
  font-weight: 500;
  margin-top: 4.1rem;
}
@media screen and (max-width: 767px) {
  .c-sec-infographics .current {
    margin-top: 2.2rem;
  }
}
.c-sec-infographics .note {
  font-feature-settings: "palt";
  font-size: 1.6rem;
  line-height: 1.625;
  margin-top: 1.1rem;
}
@media screen and (max-width: 767px) {
  .c-sec-infographics .note {
    font-size: 2rem;
    line-height: 1.5;
    margin-top: 0.7rem;
  }
}

.c-sec-form {
  padding-top: 12rem;
  min-height: calc(100svh - 15.1rem);
}
@media screen and (max-width: 767px) {
  .c-sec-form {
    padding-top: 6rem;
    min-height: 100svh;
  }
}
.c-sec-form .progress-list {
  --_progress-list-padding: 0.4rem;
  --_progress-list-height: 6.8rem;
  --_progress-list-radius: 1rem;
  --_progress-list-skew-x-deg: 22;
  --_progress-list-item-bg-color: rgba(0, 120, 240, 0.88);
  --_progress-list-item-txt-color: #626262;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: var(--_progress-list-padding);
  margin-inline: auto;
  padding: var(--_progress-list-padding);
  width: 100%;
  max-width: calc(100% - tan(var(--_progress-list-skew-x-deg) * 1deg) * var(--_progress-list-height));
  border-radius: var(--_progress-list-radius);
  background: rgba(238, 243, 249, 0.88);
  transform: skewX(calc(var(--_progress-list-skew-x-deg) * -1deg));
}
@media screen and (max-width: 767px) {
  .c-sec-form .progress-list {
    --_progress-list-padding: 0.8rem;
    --_progress-list-height: 9.6rem;
    --_progress-list-radius: 2rem;
  }
}
.c-sec-form .progress-list._gradation {
  --_progress-list-item-bg-color: linear-gradient( 90deg, rgb(255,140,110) 0%, rgb(180,151,216) 50%, rgb(37,145,255) 100%);
  background: linear-gradient(90deg, rgba(255, 140, 110, 0.24) 0%, rgba(180, 151, 216, 0.24) 50%, rgba(37, 145, 255, 0.24) 100%);
}
.c-sec-form .progress-list_item {
  display: grid;
  place-content: center;
  height: calc(var(--_progress-list-height) - var(--_progress-list-padding) * 2);
  border-radius: calc(var(--_progress-list-radius) - var(--_progress-list-padding));
  background: rgba(255, 255, 255, 0.88);
}
.c-sec-form .progress-list_item._current {
  --_progress-list-item-txt-color: #fff;
  background: var(--_progress-list-item-bg-color);
}
.c-sec-form .progress-list_txt {
  font-size: 2rem;
  color: var(--_progress-list-item-txt-color);
  text-align: center;
  transform: skewX(calc(var(--_progress-list-skew-x-deg) * 1deg));
}
.c-sec-form .hgroup {
  text-align: center;
  margin-top: 11.5rem;
}
@media screen and (max-width: 767px) {
  .c-sec-form .hgroup {
    margin-top: 7.5rem;
  }
}
.c-sec-form .hgroup + .form {
  margin-top: 8.9rem;
}
@media screen and (max-width: 767px) {
  .c-sec-form .hgroup + .form {
    margin-top: 7.4rem;
  }
}
.c-sec-form .hgroup_ttl {
  font-feature-settings: "palt";
  font-size: 4.8rem;
  line-height: 1.25;
  font-weight: 500;
}
.c-sec-form .hgroup_txt {
  font-feature-settings: "palt";
  font-size: 2rem;
  line-height: 1.6;
  font-weight: 500;
  margin-top: 2.8rem;
}
@media screen and (max-width: 767px) {
  .c-sec-form .hgroup_txt {
    font-size: 3.2rem;
    line-height: 1.5;
    margin-top: 2.6rem;
  }
}
.c-sec-form .intro {
  margin-top: 5.4rem;
  padding: 4rem;
  border: 0.4rem solid #eef3f9;
  border-radius: 1rem;
  background: #fff;
}
@media screen and (max-width: 767px) {
  .c-sec-form .intro {
    margin-top: 7.2rem;
    padding: 5rem 4rem;
  }
}
.c-sec-form .intro_txt {
  font-feature-settings: "palt";
  font-size: 1.6rem;
  line-height: 2;
  font-weight: 500;
}
@media screen and (max-width: 767px) {
  .c-sec-form .intro_txt {
    font-size: 2.8rem;
    line-height: 2;
  }
}
.c-sec-form .intro_txt + .intro_list, .c-sec-form .intro_txt:is(.intro_list + .intro_txt) {
  margin-top: 2.4rem;
}
@media screen and (max-width: 767px) {
  .c-sec-form .intro_txt + .intro_list, .c-sec-form .intro_txt:is(.intro_list + .intro_txt) {
    margin-top: 2.6rem;
  }
}
.c-sec-form .intro_list {
  display: grid;
  justify-content: center;
  grid-template-columns: repeat(auto-fit, minmax(auto, 26rem));
  gap: 2rem;
}
@media screen and (max-width: 767px) {
  .c-sec-form .intro_list {
    grid-template-columns: repeat(auto-fit, minmax(auto, 54.5rem));
    gap: 3.2rem;
  }
}
.c-sec-form .intro_list_item {
  font-feature-settings: "palt";
  font-size: 2rem;
  line-height: 1.6;
  font-weight: 500;
  text-align: center;
  display: grid;
  place-content: center;
  height: 10rem;
  border-radius: 0.8rem;
  background: #ffe0d8;
}
@media screen and (max-width: 767px) {
  .c-sec-form .intro_list_item {
    font-size: 3.2rem;
    line-height: 1.5;
    height: 13.6rem;
  }
}
.c-sec-form .intro_list_item:nth-child(even) {
  background: #cce4fc;
}
.c-sec-form .form {
  display: flex;
  flex-direction: column;
  margin-top: 3.5rem;
}
@media screen and (max-width: 767px) {
  .c-sec-form .form {
    margin-top: 3.2rem;
  }
}
.c-sec-form .form_dl_item {
  padding: 1.8rem 6rem 1.8rem 5.2rem;
  border-bottom: 0.2rem solid #eff1f3;
}
@media screen and (min-width: 768px) {
  .c-sec-form .form_dl_item {
    display: grid;
    align-items: flex-start;
    grid-template-columns: 25.3rem 1fr;
    column-gap: 7.4rem;
  }
}
@media screen and (max-width: 767px) {
  .c-sec-form .form_dl_item {
    padding: 4.8rem 5rem 3.6rem;
  }
}
@media screen and (min-width: 768px) {
  .c-sec-form .form_dl_item:has(.form_dl_des_input, .form_dl_des_select) .form_dl_theme {
    padding-top: 0.65rem;
  }
}
.c-sec-form .form_dl_theme {
  font-feature-settings: "palt";
  font-size: 2rem;
  line-height: 1.5;
  font-weight: 500;
}
@media screen and (max-width: 767px) {
  .c-sec-form .form_dl_theme {
    font-size: 3.2rem;
    line-height: 1.5;
  }
}
.c-sec-form .form_dl_theme._req {
  display: grid inline;
  align-items: center;
  grid-template-columns: 1fr 5.5rem;
  gap: 1.8rem;
  position: relative;
}
@media screen and (max-width: 767px) {
  .c-sec-form .form_dl_theme._req {
    grid-template-columns: auto 7rem;
    gap: 2.6rem;
  }
}
.c-sec-form .form_dl_theme._req::after {
  font-feature-settings: "palt";
  font-size: 1.6rem;
  line-height: 1;
  font-weight: 500;
  color: #ff643c;
  text-align: center;
  content: "必須";
  display: grid;
  place-content: center;
  position: relative;
  padding-block: 0.9rem 1rem;
  border-radius: 0.8rem;
  background: #ffe0d8;
}
@media screen and (max-width: 767px) {
  .c-sec-form .form_dl_theme._req::after {
    font-size: 2.4rem;
    padding-block: 0.7rem 0.9rem;
  }
}
@media screen and (max-width: 767px) {
  .c-sec-form .form_dl_des {
    margin-top: 3.3rem;
  }
}
.c-sec-form .form_dl_des:has(.cf7msm-ro + .cf7msm-ro) {
  display: grid;
  grid-template-columns: auto 1fr;
  column-gap: 1.5em;
}
.c-sec-form .form_dl_des:has(.cf7msm-ro ~ .cf7msm-ro ~ .cf7msm-ro) {
  font-feature-settings: "palt";
  font-size: 2rem;
  line-height: 1.6;
  display: grid;
  grid-template-columns: auto auto auto auto auto 1fr;
  column-gap: 0;
}
@media screen and (max-width: 767px) {
  .c-sec-form .form_dl_des:has(.cf7msm-ro ~ .cf7msm-ro ~ .cf7msm-ro) {
    font-size: 3.2rem;
    line-height: 2;
  }
}
.c-sec-form .form_dl_des:has(.cf7msm-ro ~ .cf7msm-ro ~ .cf7msm-ro) .cf7msm-ro ~ .cf7msm-ro {
  padding-left: 0.25em;
}
.c-sec-form .form_dl_des_radio .wpcf7-form-control {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  gap: 2.8rem 4rem;
}
@media screen and (max-width: 767px) {
  .c-sec-form .form_dl_des_radio .wpcf7-form-control {
    gap: 0 4.8rem;
  }
}
.c-sec-form .form_dl_des_radio._col-1 .wpcf7-form-control {
  flex-direction: column;
}
.c-sec-form .form_dl_des_radio label {
  display: inline-block;
  cursor: pointer;
}
.c-sec-form .form_dl_des_radio label input:checked + span::before {
  border-color: #0078f0;
}
.c-sec-form .form_dl_des_radio label input:checked + span::after {
  opacity: 1;
}
.c-sec-form .form_dl_des_radio label span {
  font-feature-settings: "palt";
  font-size: 2rem;
  line-height: 1.6;
  display: block;
  position: relative;
  padding-left: 3.8rem;
}
@media screen and (max-width: 767px) {
  .c-sec-form .form_dl_des_radio label span {
    font-size: 3.2rem;
    line-height: 2;
    padding-left: 5.2rem;
  }
}
.c-sec-form .form_dl_des_radio label span::before, .c-sec-form .form_dl_des_radio label span::after {
  content: "";
  position: absolute;
}
.c-sec-form .form_dl_des_radio label span::before {
  top: 0.6rem;
  left: 0;
  width: 2.4rem;
  height: 2.4rem;
  border: 0.2rem solid #000;
  border-radius: 50%;
  background: #fff;
}
@media screen and (max-width: 767px) {
  .c-sec-form .form_dl_des_radio label span::before {
    top: 1.7rem;
    width: 3.4rem;
    height: 3.4rem;
  }
}
.c-sec-form .form_dl_des_radio label span::after {
  top: 1.2rem;
  left: 0.6rem;
  width: 1.2rem;
  height: 1.2rem;
  border-radius: 50%;
  background: #0078f0;
  opacity: 0;
}
@media screen and (max-width: 767px) {
  .c-sec-form .form_dl_des_radio label span::after {
    top: 2.6rem;
    left: 0.9rem;
    width: 1.6rem;
    height: 1.6rem;
  }
}
.c-sec-form .form_dl_des_select._col-3 {
  display: grid inline;
  align-items: flex-start;
  grid-template-columns: repeat(3, auto);
  column-gap: 4rem;
}
@media screen and (max-width: 767px) {
  .c-sec-form .form_dl_des_select._col-3 {
    column-gap: 2rem;
  }
}
.c-sec-form .form_dl_des_select._col-3 label {
  display: grid inline;
  grid-template-columns: 16rem auto;
  column-gap: 1.8rem;
}
@media screen and (max-width: 767px) {
  .c-sec-form .form_dl_des_select._col-3 label {
    grid-template-columns: 10rem auto;
  }
  .c-sec-form .form_dl_des_select._col-3 label:first-of-type {
    grid-template-columns: 14rem auto;
  }
}
@media screen and (min-width: 768px) {
  .c-sec-form .form_dl_des_select._col-3 label > span + span {
    padding-top: 0.8rem;
  }
}
.c-sec-form .form_dl_des_select label {
  display: grid;
}
.c-sec-form .form_dl_des_select label span,
.c-sec-form .form_dl_des_select label select {
  font-feature-settings: "palt";
  font-size: 2rem;
  line-height: 1.6;
  display: block;
}
@media screen and (max-width: 767px) {
  .c-sec-form .form_dl_des_select label span,
  .c-sec-form .form_dl_des_select label select {
    font-size: 3.2rem;
    line-height: 2;
  }
}
.c-sec-form .form_dl_des_select label select {
  padding-inline: 1.8rem 4.2rem;
  width: 100%;
  height: 4.8rem;
  background: #eef3f9;
  cursor: pointer;
}
@media screen and (max-width: 767px) {
  .c-sec-form .form_dl_des_select label select {
    padding-inline: 1rem 5rem;
    height: 6.4rem;
  }
}
.c-sec-form .form_dl_des_select label span:has(select) {
  position: relative;
}
.c-sec-form .form_dl_des_select label span:has(select)::after {
  content: "";
  position: absolute;
  top: 1.3rem;
  right: 1.4rem;
  width: 1.4rem;
  height: 1.4rem;
  border-bottom: 0.2rem solid #000;
  border-right: 0.2rem solid #000;
  rotate: 45deg;
  pointer-events: none;
}
@media screen and (max-width: 767px) {
  .c-sec-form .form_dl_des_select label span:has(select)::after {
    top: 2.2rem;
    right: 1.7rem;
  }
}
.c-sec-form .form_dl_des_input._col-2 {
  display: grid inline;
  align-items: flex-start;
  grid-template-columns: repeat(2, auto);
  column-gap: 4rem;
}
@media screen and (max-width: 767px) {
  .c-sec-form .form_dl_des_input._col-2 {
    column-gap: 2.5rem;
  }
}
.c-sec-form .form_dl_des_input._col-2 label {
  display: grid inline;
  grid-template-columns: auto 20rem;
  column-gap: 1.8rem;
}
@media screen and (max-width: 767px) {
  .c-sec-form .form_dl_des_input._col-2 label {
    grid-template-columns: auto 17.8rem;
  }
}
@media screen and (min-width: 768px) {
  .c-sec-form .form_dl_des_input._col-2 label > span {
    padding-top: 0.8rem;
  }
  .c-sec-form .form_dl_des_input._col-2 label > span + span {
    padding-top: 0;
  }
}
.c-sec-form .form_dl_des_input label {
  display: grid;
  cursor: pointer;
}
.c-sec-form .form_dl_des_input label span,
.c-sec-form .form_dl_des_input label input {
  font-feature-settings: "palt";
  font-size: 2rem;
  line-height: 1.6;
  display: block;
}
@media screen and (max-width: 767px) {
  .c-sec-form .form_dl_des_input label span,
  .c-sec-form .form_dl_des_input label input {
    font-size: 3.2rem;
    line-height: 2;
  }
}
.c-sec-form .form_dl_des_input label input {
  padding-inline: 1.8rem;
  width: 100%;
  height: 4.8rem;
  background: #eef3f9;
}
@media screen and (max-width: 767px) {
  .c-sec-form .form_dl_des_input label input {
    padding-inline: 2.5rem;
    height: 6.4rem;
  }
}
.c-sec-form .form_dl_des_textarea label {
  display: block;
  cursor: pointer;
}
.c-sec-form .form_dl_des_textarea label span,
.c-sec-form .form_dl_des_textarea label textarea {
  font-feature-settings: "palt";
  font-size: 2rem;
  line-height: 1.6;
  display: block;
}
@media screen and (max-width: 767px) {
  .c-sec-form .form_dl_des_textarea label span,
  .c-sec-form .form_dl_des_textarea label textarea {
    font-size: 3.2rem;
    line-height: 2;
  }
}
.c-sec-form .form_dl_des_textarea label textarea {
  padding: 1.2rem 1.8rem;
  width: 100%;
  height: 24rem;
  background: #eef3f9;
}
@media screen and (max-width: 767px) {
  .c-sec-form .form_dl_des_textarea label textarea {
    padding: 0.9rem 2.5rem;
    height: 30rem;
  }
}
.c-sec-form .form_dl_des .wpcf7-list-item {
  margin: 0;
}
.c-sec-form .form_dl_des .cf7msm-ro {
  font-feature-settings: "palt";
  font-size: 2rem;
  line-height: 1.6;
  display: block;
}
@media screen and (max-width: 767px) {
  .c-sec-form .form_dl_des .cf7msm-ro {
    font-size: 3.2rem;
    line-height: 2;
  }
}
.c-sec-form .form_agree {
  margin-top: 5.6rem;
}
@media screen and (max-width: 767px) {
  .c-sec-form .form_agree {
    margin-top: 7.7rem;
  }
}
.c-sec-form .form_agree_theme {
  font-feature-settings: "palt";
  font-size: 2.4rem;
  line-height: 1.3333333333;
  font-weight: 500;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .c-sec-form .form_agree_theme {
    font-size: 3.6rem;
    line-height: 1.2222222222;
  }
}
.c-sec-form .form_agree_des {
  margin: 1.6rem auto 0;
  padding: 1.6rem 2rem;
  width: 80rem;
  height: 15.2rem;
  border: 0.2rem solid #eff1f3;
  overflow-y: scroll;
}
@media screen and (max-width: 767px) {
  .c-sec-form .form_agree_des {
    margin-top: 4.8rem;
    width: 82.1100917431%;
    height: 32rem;
    border-width: 0.4rem;
  }
}
.c-sec-form .form_agree_des_txt {
  font-feature-settings: "palt";
  font-size: 1.6rem;
  line-height: 1.5;
  color: #707070;
}
@media screen and (max-width: 767px) {
  .c-sec-form .form_agree_des_txt {
    font-size: 2.4rem;
    line-height: 1.75;
  }
}
.c-sec-form .form_agree_des_txt + .form_agree_des_txt {
  margin-top: 1em;
}
.c-sec-form .form_agree_des_txt a {
  color: #0078f0;
  text-decoration: underline;
  text-decoration-thickness: 0.1rem;
  text-underline-offset: 0.2rem;
  transition: text-decoration-color 0.4s;
}
.c-sec-form .form_agree_des_txt a:focus-visible {
  text-decoration-color: transparent;
}
@media (any-hover: hover) {
  .c-sec-form .form_agree_des_txt a[href*="tel:"] {
    color: inherit;
    text-decoration: none;
  }
  .c-sec-form .form_agree_des_txt a:hover {
    text-decoration-color: transparent;
  }
}
.c-sec-form .form_agree_check {
  display: flex;
  align-items: center;
  flex-direction: column;
  margin-top: 1.4rem;
}
@media screen and (max-width: 767px) {
  .c-sec-form .form_agree_check {
    margin-top: 3.7rem;
  }
}
.c-sec-form .form_agree_check label {
  display: inline-block;
  cursor: pointer;
}
.c-sec-form .form_agree_check label input:checked + span::before {
  border-color: #0078f0;
}
.c-sec-form .form_agree_check label input:checked + span::after {
  opacity: 1;
}
.c-sec-form .form_agree_check label span {
  font-feature-settings: "palt";
  font-size: 1.6rem;
  line-height: 2;
  display: block;
  position: relative;
  padding-left: 2.8rem;
}
@media screen and (max-width: 767px) {
  .c-sec-form .form_agree_check label span {
    font-size: 3.2rem;
    padding-left: 5.4rem;
  }
}
.c-sec-form .form_agree_check label span::before, .c-sec-form .form_agree_check label span::after {
  content: "";
  position: absolute;
}
.c-sec-form .form_agree_check label span::before {
  top: 1.1rem;
  left: 0;
  width: 1.3rem;
  height: 1.3rem;
  border: 1px solid #000;
  border-radius: 0.2rem;
  background: #fff;
}
@media screen and (max-width: 767px) {
  .c-sec-form .form_agree_check label span::before {
    top: 1.9rem;
    width: 3rem;
    height: 3rem;
    border-width: 0.2rem;
  }
}
.c-sec-form .form_agree_check label span::after {
  top: 1.1rem;
  left: 0.2rem;
  width: 1.6rem;
  height: 0.6rem;
  border-bottom: 0.2rem solid #0078f0;
  border-left: 0.2rem solid #0078f0;
  rotate: -45deg;
  opacity: 0;
}
@media screen and (max-width: 767px) {
  .c-sec-form .form_agree_check label span::after {
    top: 1.4rem;
    left: 0.6rem;
    width: 3.9rem;
    height: 1.9rem;
    border-bottom-width: 0.4rem;
    border-left-width: 0.4rem;
  }
}
.c-sec-form .form_btns {
  display: grid;
  justify-content: center;
  grid-template-columns: repeat(auto-fit, minmax(auto, 32rem));
  gap: 4rem 6rem;
  order: 1;
  position: relative;
  margin-top: 6rem;
}
@media screen and (max-width: 767px) {
  .c-sec-form .form_btns {
    grid-template-columns: repeat(auto-fit, minmax(auto, 55.8rem));
    margin-top: 8rem;
  }
}
.c-sec-form .form_btns:is(.form_agree + .form_btns) {
  margin-top: 5.3rem;
}
@media screen and (max-width: 767px) {
  .c-sec-form .form_btns:is(.form_agree + .form_btns) {
    margin-top: 6.6rem;
  }
}
.c-sec-form .form_btns._not-arrow .form_btns_item input {
  border-radius: 0.8rem;
  background: #ff643c;
}
@media screen and (max-width: 767px) {
  .c-sec-form .form_btns._not-arrow .form_btns_item input {
    border-radius: 1.6rem;
  }
}
.c-sec-form .form_btns._not-arrow .form_btns_item input[type=button] {
  color: #ff643c;
  background: #fff;
}
.c-sec-form .form_btns_item input {
  font-size: 2rem;
  line-height: 1.3;
  font-weight: 500;
  color: #fff;
  text-align: center;
  display: grid;
  place-content: center;
  position: relative;
  padding-bottom: 0.2rem;
  width: 100%;
  max-width: 32rem;
  height: 8rem;
  border: 0.2rem solid #ff643c;
  border-radius: calc(infinity * 1px);
  background: url(../images/common/icon_arrow_white.svg) right 3rem center/1rem 100% no-repeat, #ff643c;
  cursor: pointer;
  transition: opacity 0.4s;
}
@media screen and (max-width: 767px) {
  .c-sec-form .form_btns_item input {
    font-size: 3.2rem;
    line-height: 1.25;
    max-width: 55.8rem;
    height: 12rem;
    background-size: 1.9rem 100%;
  }
}
.c-sec-form .form_btns_item input[type=button] {
  color: #ff643c;
  background-image: url(../images/common/icon_arrow_orange.svg);
  background-color: #fff;
}
.c-sec-form .form_btns_item input[disabled] {
  opacity: 0.5;
}
.c-sec-form .form_btns_item input:focus-visible {
  opacity: 0.8;
}
@media (any-hover: hover) {
  .c-sec-form .form_btns_item input:hover {
    opacity: 0.8;
  }
}
.c-sec-form .form .wpcf7-not-valid-tip {
  font-feature-settings: "palt";
  font-size: 1.6rem;
  line-height: 2;
  font-weight: 500;
  color: #ff643c;
  display: block;
  margin-top: 0.3em;
}
@media screen and (max-width: 767px) {
  .c-sec-form .form .wpcf7-not-valid-tip {
    font-size: 2.4rem;
    line-height: 2.1666666667;
  }
}
.c-sec-form .form .wpcf7-spinner {
  position: absolute;
  top: 110%;
  left: 50%;
  z-index: 1;
  translate: -50% 0;
  margin: 0;
  width: 2.4rem;
  height: 2.4rem;
}
.c-sec-form .form .wpcf7-spinner::before {
  top: 0.4rem;
  left: 0.4rem;
  width: 0.6rem;
  height: 0.6rem;
  transform-origin: 0.8rem 0.8rem;
}
.c-sec-form .form .wpcf7-response-output {
  font-feature-settings: "palt";
  font-size: 2.4rem;
  line-height: 1.3333333333;
  font-weight: 500;
  color: #f00;
  margin: 6rem auto 0;
  padding: 0;
  width: fit-content;
  border: none !important;
}
@media screen and (max-width: 767px) {
  .c-sec-form .form .wpcf7-response-output {
    font-size: 3.6rem;
    line-height: 1.5555555556;
  }
}
.c-sec-form .form .wpcf7-response-output:empty {
  display: none;
}
.c-sec-form .txt {
  font-feature-settings: "palt";
  font-size: 2rem;
  line-height: 2;
  font-weight: 500;
  text-align: center;
  margin-top: 2.4rem;
}
@media screen and (max-width: 767px) {
  .c-sec-form .txt {
    font-size: 3.2rem;
    line-height: 2;
    margin-top: 1.8rem;
  }
}
.c-sec-form .txt + .txt {
  margin-top: 2rem;
}
@media screen and (max-width: 767px) {
  .c-sec-form .txt + .txt {
    margin-top: 2.7rem;
  }
}
.c-sec-form .c-btn-01,
.c-sec-form .c-btn-02 {
  text-align: center;
  margin-top: 5rem;
}
@media screen and (max-width: 767px) {
  .c-sec-form .c-btn-01,
  .c-sec-form .c-btn-02 {
    margin-top: 6.5rem;
  }
}

.u-text-align-left {
  text-align: left;
}
@media screen and (max-width: 767px) {
  .u-text-align-left-sp {
    text-align: left;
  }
}
@media screen and (min-width: 768px) {
  .u-text-align-left-pc {
    text-align: left;
  }
}
.u-text-align-center {
  text-align: center;
}
@media screen and (max-width: 767px) {
  .u-text-align-center-sp {
    text-align: center;
  }
}
@media screen and (min-width: 768px) {
  .u-text-align-center-pc {
    text-align: center;
  }
}
.u-text-align-right {
  text-align: right;
}
@media screen and (max-width: 767px) {
  .u-text-align-right-sp {
    text-align: right;
  }
}
@media screen and (min-width: 768px) {
  .u-text-align-right-pc {
    text-align: right;
  }
}

@media screen and (max-width: 767px) {
  .u-pc {
    display: none !important;
  }
}

@media screen and (min-width: 768px) {
  .u-sp {
    display: none !important;
  }
}

.u-leading-trim {
  margin-block: calc((1em - 1lh) / 2);
}

.u-leading-trim-top {
  margin-top: calc((1em - 1lh) / 2);
}

.u-leading-trim-bottom {
  margin-bottom: calc((1em - 1lh) / 2);
}

.u-border-radius-infinity {
  border-radius: calc(infinity * 1px);
}

.u-font-weight-medium {
  font-weight: 500;
}

.u-font-weight-bold {
  font-weight: 700;
}

.u-text-color-orange {
  color: #ff643c;
}
.u-text-color-blue {
  color: #0078f0;
}

.u-text-gradation {
  color: transparent;
  display: inline-block;
  background-image: linear-gradient(90deg, rgb(255, 140, 110) 0%, rgb(180, 151, 216) 50%, rgb(37, 145, 255) 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}

/*# sourceMappingURL=common.css.map */
