@charset "UTF-8";
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
}

* {
  box-sizing: border-box;
}

body {
  line-height: 1;
  -webkit-text-size-adjust: 100%;
}

img {
  border: 0;
  vertical-align: bottom;
}

article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
  display: block;
}

sub {
  vertical-align: sub;
}

sup {
  vertical-align: super;
}

ol, ul {
  list-style: none;
}

blockquote, q {
  quotes: none;
}

blockquote:before, blockquote:after,
q:before, q:after {
  content: "";
  content: none;
}

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

pre {
  white-space: pre-wrap;
}

button {
  background-color: transparent;
  border: none;
  cursor: pointer;
  outline: none;
  padding: 0;
  appearance: none;
}

input,
textarea,
select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background: transparent;
  border: none;
  border-radius: 0;
  font: inherit;
  outline: none;
  padding: 0;
  margin: 0;
}

.m-color-orn {
  color: #ED6C00;
}

.m-btn {
  width: 13.3333333333vw;
  height: 2.65625vw;
  border-radius: 1.3020833333vw;
  background: #fff;
  border: 1px solid #3B3B3B;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  color: #3B3B3B;
  font-size: 1.8rem;
  line-height: 1.6666666667;
  letter-spacing: 0.1em;
  font-weight: 700;
  font-size: 0.9375vw;
  position: relative;
}
.m-btn::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 1.8229166667vw;
  width: 0.4166666667vw;
  height: 0.4166666667vw;
  border-top: 0.1041666667vw solid #3B3B3B;
  border-right: 0.1041666667vw solid #3B3B3B;
  transform: translateY(-50%) rotate(45deg);
}
.m-btn:hover {
  border: 1px solid #fff;
  color: #fff;
  background: radial-gradient(circle at center, #ebbb5f 0%, #f8a24c 40.32%, #fc7603 100%);
}
.m-btn:hover::after {
  border-top: 0.1041666667vw solid #fff;
  border-right: 0.1041666667vw solid #fff;
}

.m-title {
  font-size: 5rem;
  line-height: 1.5;
  font-weight: 500;
  font-size: 2.6041666667vw;
  margin-left: 8.0729166667vw;
  margin-bottom: 2.34375vw;
}
.m-title._about {
  width: 41.3020833333vw;
  aspect-ratio: 793/80.5;
}
.m-title._message {
  width: 48.1510416667vw;
  aspect-ratio: 924.5/80.5;
}
.m-title._profile {
  width: 18.6458333333vw;
  aspect-ratio: 358/81;
}
.m-title._society {
  width: 44.4791666667vw;
  aspect-ratio: 854/81.5;
}
.m-title._service {
  width: 17.9947916667vw;
  aspect-ratio: 345.5/81;
}
.m-title._partner {
  width: 59.6354166667vw;
  aspect-ratio: 1145/82;
}
.m-title._contact {
  width: 27.1354166667vw;
  aspect-ratio: 521/81;
}
.m-title img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center;
}

@media screen and (max-width: 767px) {
  .m-btn {
    width: 68.2666666667vw;
    height: 13.6vw;
    border-radius: 6.6666666667vw;
    border: 1px solid #3B3B3B;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    color: #3B3B3B;
    font-size: 4.8vw;
    line-height: 1.6666666667;
    letter-spacing: 0.1em;
    font-weight: 700;
  }
  .m-btn::after {
    border-top: 0.5333333333vw solid #3B3B3B;
    border-right: 0.5333333333vw solid #3B3B3B;
    top: 50%;
    right: 9.3333333333vw;
    width: 2.1333333333vw;
    height: 2.1333333333vw;
  }
  .m-btn:hover {
    border: 1px solid #3B3B3B;
    color: #3B3B3B;
    background: #fff;
  }
  .m-btn:hover::after {
    border-top: 0.5333333333vw solid #3B3B3B;
    border-right: 0.5333333333vw solid #3B3B3B;
  }
  .m-title {
    font-size: 6.1333333333vw;
    margin-left: 6.6666666667vw;
    margin-bottom: 5.3333333333vw;
  }
  .m-title._about {
    width: 79.8666666667vw;
  }
  .m-title._message {
    width: 50.6666666667vw;
    aspect-ratio: 190/73.5;
  }
  .m-title._profile {
    width: 35.2vw;
  }
  .m-title._society {
    width: 52.2666666667vw;
    aspect-ratio: 196/75.5;
  }
  .m-title._service {
    width: 34.8vw;
  }
  .m-title._partner {
    width: 80vw;
    aspect-ratio: 300/76;
  }
  .m-title._contact {
    width: 52.5333333333vw;
  }
}
.m-contact-box {
  max-width: 62.5vw;
  margin: 0 auto;
}

.m-contact-box-item + .m-contact-box-item {
  margin-top: 8.9583333333vw;
}

.m-contact-box-link {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  grid-template-rows: 1fr;
  grid-column-gap: 0;
  grid-row-gap: 0;
  align-items: center;
  width: 100%;
  height: 13.5416666667vw;
  background: #F6AB00;
  color: #fff;
}

.m-contact-box-link-catalog {
  background: #A5A4A4;
}

.m-contact-box-icon {
  margin-left: 3.125vw;
  grid-area: 1/1/2/2;
}
.m-contact-box-icon img {
  width: 6.140625vw;
  height: auto;
}

.m-contact-box-link-catalog .m-contact-box-icon img {
  width: 6.5104166667vw;
  height: auto;
}

.m-contact-box-text {
  grid-area: 1/2/2/3;
  align-self: center;
  width: 20.8333333333vw;
}

.m-contact-box-label {
  text-align: center;
  font-size: 2.7rem;
  line-height: 1.2962962963;
  letter-spacing: 0.1em;
  font-weight: 500;
  font-size: 1.40625vw;
  margin-bottom: 0.78125vw;
}

.m-contact-box-sub {
  margin: 0 auto;
  text-align: center;
}
.m-contact-box-sub img {
  width: 5.5223958333vw;
  height: auto;
}

.m-contact-box-link-catalog .m-contact-box-sub img {
  width: 12.9026041667vw;
  height: auto;
}

.m-contact-box-desc {
  grid-area: 1/3/2/4;
  width: 31.25vw;
  text-align: center;
  font-size: 2rem;
  line-height: 1.75;
  letter-spacing: 0.1em;
  font-weight: 500;
  font-size: 1.0416666667vw;
  position: relative;
}
.m-contact-box-desc::before {
  content: "";
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  left: 0;
  width: 0.0520833333vw;
  height: 8.5416666667vw;
  background: #fff;
}

.m-contact-box-logo {
  width: 9.2057291667vw;
  height: 4.7208333333vw;
  margin: 0 auto;
  margin-bottom: 0.5208333333vw;
}
.m-contact-box-logo img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

@media screen and (max-width: 767px) {
  .m-contact-box {
    max-width: 100%;
  }
  .m-contact-box-item + .m-contact-box-item {
    margin-top: 9.6vw;
  }
  .m-contact-box-link {
    grid-template-columns: repeat(2, auto);
    grid-template-rows: repeat(2, auto);
    grid-column-gap: 0;
    grid-row-gap: 6.6666666667vw;
    align-items: center;
    width: calc(100% + 13.3333333334vw);
    height: 64vw;
    margin-left: -6.6666666667vw;
    margin-right: -6.6666666667vw;
  }
  .m-contact-box-link-catalog {
    height: 74.6666666667vw;
  }
  .m-contact-box-icon {
    margin-left: auto;
    margin-right: 0;
    grid-area: 1/1/2/2;
    align-self: end;
    justify-self: end;
  }
  .m-contact-box-icon img {
    width: 18.7946666667vw;
    height: auto;
  }
  .m-contact-box-link-catalog .m-contact-box-icon img {
    width: 19.5413333333vw;
    height: auto;
  }
  .m-contact-box-text {
    grid-area: 1/2/2/3;
    margin-left: -4vw;
    align-self: end;
    width: 100%;
  }
  .m-contact-box-link-catalog .m-contact-box-text {
    margin-left: 0;
  }
  .m-contact-box-label {
    font-size: 5.6vw;
    line-height: 1.6666666667;
    letter-spacing: 0.1em;
    font-weight: 500;
    margin-bottom: 1.3333333333vw;
  }
  .m-contact-box-sub img {
    width: 15.7066666667vw;
    height: auto;
  }
  .m-contact-box-link-catalog .m-contact-box-sub img {
    width: 36.7013333333vw;
    height: auto;
  }
  .m-contact-box-desc {
    grid-area: 2/1/3/3;
    align-self: self-start;
    width: 100%;
    text-align: center;
    font-size: 3.4666666667vw;
    line-height: 1.6923076923;
    letter-spacing: 0.1em;
    font-weight: 500;
  }
  .m-contact-box-desc::before {
    width: 0;
    height: 0;
  }
  .m-contact-box-logo {
    width: 32.2vw;
    height: 16.1706666667vw;
    margin-bottom: 5.3333333333vw;
  }
}
/* Wisywigエディタ スタイル
---------------------------------------------------------------------------- */
.m-single-content {
  font-size: 1.6rem;
  line-height: 1.75;
}
.m-single-content p + p {
  margin-top: 1.5em;
}
.m-single-content h2 {
  font-size: 2em;
  font-weight: 700;
  clear: both;
}
.m-single-content h3 {
  font-size: 1.7em;
  font-weight: 700;
  clear: both;
}
.m-single-content h4 {
  font-size: 1.5em;
  font-weight: 500;
  clear: both;
}
.m-single-content h5 {
  font-size: 1.4em;
  font-weight: 500;
  clear: both;
}
.m-single-content h6 {
  font-size: 1.2em;
  font-weight: 500;
  clear: both;
}
.m-single-content table {
  width: auto;
  margin-top: 2em;
  clear: both;
}
.m-single-content table th {
  padding: 20px 15px;
  border-bottom: 3px solid #fff;
  border-right: 3px solid #fff;
  background-color: #d6d6d6;
}
.m-single-content table td {
  padding: 20px 15px;
  border-bottom: 3px solid #fff;
  background-color: #f2f2f2;
  font-weight: 400;
}
.m-single-content table td p {
  margin: 0;
}
.m-single-content .wp-block-image {
  margin-top: 20px;
}
.m-single-content ul {
  margin-top: 1.5em;
  list-style-type: disc;
  list-style-position: inside;
}
.m-single-content ol {
  margin-top: 1.5em;
  list-style-type: decimal;
  list-style-position: inside;
}
.m-single-content .aligncenter {
  display: block;
  margin: 0 auto;
}
.m-single-content .alignright {
  float: right;
  margin-left: 1em;
}
.m-single-content .alignleft {
  float: left;
  margin-left: 1em;
}
.m-single-content strong {
  font-weight: bold;
}
.m-single-content em {
  font-style: italic;
}
.m-single-content blockquote {
  display: block;
  position: relative;
  padding: 10px 15px 10px 60px;
  box-sizing: border-box;
  font-style: italic;
  background: #efefef;
  color: #555;
  margin: 1.5em;
}
.m-single-content blockquote:before {
  display: inline-block;
  position: absolute;
  top: 10px;
  left: 10px;
  content: "“";
  color: #cfcfcf;
  font-size: 3em;
  line-height: 1;
  font-weight: 900;
}
.m-single-content hr {
  clear: both;
}

/* タイトル系
---------------------------------------------------------------------------- */
/*------------- m-ttl01 -------------*/
.m-ttl01 {
  background: radial-gradient(circle at top left, #f8d797 0%, #f29f47 18%, #ed6c00 100%);
  text-align: center;
  width: 25.3645833333vw;
  height: 7.3958333333vw;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  flex-direction: column;
  color: #fff;
}

.m-ttl01-jp {
  font-size: 3.5rem;
  line-height: 1.2857142857;
  letter-spacing: 0.06em;
  font-weight: 500;
  font-size: 1.8229166667vw;
  margin-bottom: 0.78125vw;
}

.m-ttl01-en img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center;
}

@media screen and (max-width: 767px) {
  .m-ttl01 {
    width: 73.0666666667vw;
    height: 15.4666666667vw;
    margin-inline: auto;
  }
  .m-ttl01-jp {
    font-size: 5.0666666667vw;
    line-height: 1.3157894737;
    letter-spacing: 0.03em;
    font-weight: 500;
    margin-bottom: initial;
    margin-top: 0.5333333333vw;
  }
}
/*------------- m-ttl02 -------------*/
.m-ttl02 {
  background: radial-gradient(circle at top left, #f8d797 0%, #f29f47 18%, #ed6c00 100%);
  text-align: center;
  width: 25.3645833333vw;
  height: 6.0416666667vw;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  position: absolute;
  top: -3.0208333333vw;
  left: -3.4375vw;
}

.m-ttl02-jp {
  font-size: 3.5rem;
  line-height: 1.2857142857;
  letter-spacing: 0.06em;
  font-weight: 500;
  font-size: 1.8229166667vw;
  color: #fff;
  text-align: center;
}

@media screen and (max-width: 767px) {
  .m-ttl02 {
    width: 73.0666666667vw;
    height: 15.4666666667vw;
    top: -7.7333333333vw;
    left: -6.6666666667vw;
  }
  .m-ttl02-jp {
    font-size: 5.0666666667vw;
    line-height: 1.2105263158;
    letter-spacing: 0.03em;
    font-weight: 500;
  }
}
/*------------- m-ttl03 -------------*/
.m-ttl03 {
  background: radial-gradient(circle at top left, #f8d797 0%, #f29f47 18%, #ed6c00 100%);
  text-align: center;
  width: 25.3645833333vw;
  height: 6.0416666667vw;
  padding-inline: 1.0416666667vw;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0 0.5208333333vw;
  color: #fff;
  position: absolute;
  z-index: 1;
  top: -3.8541666667vw;
  left: -3.4895833333vw;
}

.m-ttl03-img._service {
  width: 3.4635416667vw;
  aspect-ratio: 66.5/67.5;
}
.m-ttl03-img._partner {
  width: 5.3385416667vw;
  aspect-ratio: 102.5/68.5;
}
.m-ttl03-img._others {
  width: 5vw;
  aspect-ratio: 96/64.5;
  margin-left: 1.5625vw;
}
.m-ttl03-img img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center;
}

.m-ttl03-jp {
  flex: 1;
  font-size: 2.8rem;
  line-height: 1.4285714286;
  letter-spacing: 0.06em;
  font-weight: 500;
  font-size: 1.4583333333vw;
  text-align: center;
}

@media screen and (max-width: 767px) {
  .m-ttl03 {
    width: 80.8vw;
    height: 15.4666666667vw;
    padding-inline: 4vw 2.6666666667vw;
    gap: 0 2.6666666667vw;
    top: -7.7333333333vw;
    left: -6.6666666667vw;
  }
  .m-ttl03-img._service {
    width: 9.6vw;
  }
  .m-ttl03-img._partner {
    width: 13.6vw;
  }
  .m-ttl03-img._others {
    width: 14.5333333333vw;
    margin-left: 4vw;
  }
  .m-ttl03-jp {
    font-size: 5.0666666667vw;
    line-height: 1.2105263158;
    letter-spacing: 0.03em;
    font-weight: 500;
    margin-bottom: 0.5333333333vw;
  }
}
/* ボタン系
---------------------------------------------------------------------------- */
/*------------- m-btn01 -------------*/
.m-btn01 {
  display: flex;
  justify-content: center;
  align-items: center;
  padding-block: 0.7291666667vw;
  padding-inline: 0.5208333333vw;
  border-radius: 0.3125vw;
  background-color: #ED6C00;
  font-size: 2.8rem;
  line-height: 1.5;
  letter-spacing: 0.06em;
  font-weight: 700;
  font-size: 1.4583333333vw;
  color: #fff;
}

@media screen and (max-width: 767px) {
  .m-btn01 {
    padding-block: 1.2vw;
    padding-inline: 2.6666666667vw;
    border-radius: 1.6vw;
    font-size: 7.4666666667vw;
  }
}
/* パーツ系
---------------------------------------------------------------------------- */
/*------------- m-recruit -------------*/
.m-recruit-section {
  margin-top: 7.6041666667vw;
  display: flex;
  align-items: center;
  width: 100%;
  height: 7.7083333333vw;
  background-color: #59699D;
}

.m-recruit-img {
  display: block;
}
.m-recruit-img img {
  width: 17.2630208333vw;
  height: auto;
}

.m-recruit-content {
  text-align: center;
  margin: 0 3.6979166667vw 0 2.8125vw;
}

.m-recruit-title {
  font-size: 2.7rem;
  line-height: 1.2962962963;
  letter-spacing: 0.1em;
  font-weight: 500;
  font-size: 1.40625vw;
  color: #fff;
  margin-bottom: 0.5208333333vw;
}

.m-recruit-subtitle {
  margin: 0 auto;
}
.m-recruit-subtitle img {
  width: 5.2807291667vw;
  height: auto;
}

.m-recruit-buttons {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 1.5625vw;
}
.m-recruit-buttons a {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  width: 13.5416666667vw;
  height: 4.0625vw;
  border-radius: 0.3125vw;
  color: #fff;
  font-size: 2.3rem;
  line-height: 1.3043478261;
  letter-spacing: 0.04em;
  font-weight: 700;
  font-size: 1.1979166667vw;
  position: relative;
}
.m-recruit-buttons a::after {
  content: "";
  position: absolute;
  top: 50%;
  width: 0.4166666667vw;
  height: 0.4166666667vw;
  border-top: 0.1041666667vw solid #fff;
  border-right: 0.1041666667vw solid #fff;
  transform: translateY(-50%) rotate(45deg);
}

.m-recruit-button-orange {
  background: linear-gradient(#ebbb5f 0%, #f8a24c 40.32%, #fc7603 100%);
}
.m-recruit-button-orange::after {
  right: 1.5625vw;
}

.m-recruit-button-purple {
  background: linear-gradient(#e0c7a7 0%, #e6b1c9 15.76%, #e2a9ca 33%, #b797c2 66.97%, #737ab7 96.91%, #6c77b6 100%);
}
.m-recruit-button-purple::after {
  right: 0.78125vw;
}

@media screen and (max-width: 767px) {
  .m-recruit-section {
    margin-top: 9.8666666667vw;
    flex-direction: column;
    width: 100%;
    height: auto;
    padding: 6.9333333333vw 0 12.5333333333vw;
  }
  .m-recruit-img {
    display: block;
    margin-bottom: 12.5333333333vw;
  }
  .m-recruit-img img {
    width: 100%;
    height: auto;
  }
  .m-recruit-content {
    margin: 0;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 7.2vw;
    margin-bottom: 5.3333333333vw;
  }
  .m-recruit-title {
    font-size: 7.2vw;
    line-height: 1.2962962963;
    letter-spacing: 0.1em;
    font-weight: 500;
    margin-bottom: 0;
  }
  .m-recruit-subtitle {
    margin: 0 auto;
  }
  .m-recruit-subtitle img {
    width: 15.0213333333vw;
    height: auto;
  }
  .m-recruit-buttons {
    flex-direction: column;
    gap: 8vw;
  }
  .m-recruit-buttons a {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    width: 69.3333333333vw;
    height: 20.8vw;
    border-radius: 1.6vw;
    font-size: 6.1333333333vw;
    line-height: 1.3043478261;
    letter-spacing: 0.04em;
    font-weight: 700;
  }
  .m-recruit-buttons a::after {
    width: 2.1333333333vw;
    height: 2.1333333333vw;
    border-top: 0.5333333333vw solid #fff;
    border-right: 0.5333333333vw solid #fff;
  }
  .m-recruit-button-orange::after {
    right: 8vw;
  }
  .m-recruit-button-purple::after {
    right: 5.3333333333vw;
  }
}
/* contactページ下層
---------------------------------------------------------------------------- */
/*------------- m-step -------------*/
.m-step {
  display: flex;
  align-items: center;
  gap: 0 2.0833333333vw;
  max-width: 79.1666666667vw;
  margin-inline: auto;
  margin-top: 4.6875vw;
}

.m-step-txt {
  font-size: 2.8rem;
  line-height: 1.25;
  letter-spacing: 0.01em;
  font-weight: 700;
  font-size: 1.4583333333vw;
  text-align: right;
  margin-left: 1.0416666667vw;
}

.m-step-items {
  flex: 1;
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 0 2.1614583333vw;
}

.m-step-item {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0 0.2em;
  clip-path: polygon(calc(100% - 1.0416666667vw) 0, 100% 50%, calc(100% - 1.0416666667vw) 100%, 0 100%, 0 0);
  width: 100%;
  height: 2.9427083333vw;
  padding-right: 1.0416666667vw;
  padding-bottom: 0.1041666667vw;
  position: relative;
}

.m-step-item::before,
.m-step-item::after {
  content: "";
  position: absolute;
  z-index: -1;
  clip-path: polygon(calc(100% - 1.0416666667vw) 0, 100% 50%, calc(100% - 1.0416666667vw) 100%, 0 100%, 0 0);
}

.m-step-item::before {
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #3B3B3B;
}

.m-step-item::after {
  top: 0.0520833333vw;
  left: 0.0520833333vw;
  width: calc(100% - 0.1041666667vw);
  height: calc(100% - 0.1041666667vw);
  background-color: #fff;
}

.m-step-item.is-current {
  background-color: #FF7600;
  color: #fff;
}
.m-step-item.is-current::before, .m-step-item.is-current::after {
  content: none;
}

.m-step-item-num,
.m-step-item-txt {
  font-size: 1.8rem;
  line-height: 1.2222222222;
  font-weight: 700;
  font-size: 0.9375vw;
}

@media screen and (max-width: 767px) {
  .m-step {
    flex-direction: column;
    align-items: initial;
    max-width: 86.6666666667vw;
    gap: 1.3333333333vw;
    margin-top: -3.4666666667vw;
  }
  .m-step-txt {
    font-size: 3.2vw;
    line-height: 1.25;
    text-align: left;
    margin-left: initial;
  }
  .m-step-items {
    grid-template-columns: repeat(2, 1fr);
    gap: 5.3333333333vw;
  }
  .m-step-item {
    height: 7.3333333333vw;
    padding-right: 1.3333333333vw;
    clip-path: polygon(calc(100% - 2.6666666667vw) 0, 100% 50%, calc(100% - 2.6666666667vw) 100%, 0 100%, 0 0);
  }
  .m-step-item::before,
  .m-step-item::after {
    clip-path: polygon(calc(100% - 2.6666666667vw) 0, 100% 50%, calc(100% - 2.6666666667vw) 100%, 0 100%, 0 0);
  }
  .m-step-item::after {
    top: 0.2666666667vw;
    left: 0.2666666667vw;
    width: calc(100% - 0.5333333333vw);
    height: calc(100% - 0.5333333333vw);
  }
  .m-step-item-num,
  .m-step-item-txt {
    font-size: 2.4vw;
    line-height: 1.1111111111;
  }
}
/*------------- m-terms -------------*/
.m-terms-ttl {
  font-size: 4.5rem;
  line-height: 1;
  letter-spacing: 0.01em;
  font-weight: 300;
  font-size: 2.34375vw;
  padding-bottom: 1.9270833333vw;
  border-bottom: 0.5208333333vw solid rgba(59, 59, 59, 0.2);
}

.m-terms-blocks {
  display: flex;
  flex-direction: column;
  gap: 1.9791666667vw;
  margin-top: 1.875vw;
}

.m-terms-block-ttl {
  font-size: 2.1rem;
  line-height: 1.8095238095;
  letter-spacing: 0.01em;
  font-weight: 500;
  font-size: 1.09375vw;
}

.m-terms-block-list {
  font-size: 2rem;
  line-height: 1.9;
  font-weight: 500;
  font-size: 1.0416666667vw;
  padding-left: 1em;
  text-indent: -1em;
}

.m-terms-block-box {
  padding-block: 0.78125vw;
  padding-inline: 0.5208333333vw;
  background-color: rgba(226, 223, 223, 0.5);
  margin-block: 1.5625vw 2.34375vw;
}

.m-terms-block-box-txt {
  font-size: 2.5rem;
  line-height: 1.4;
  font-weight: 700;
  font-size: 1.3020833333vw;
  text-align: center;
}

.m-terms-block-block-txt {
  font-size: 2rem;
  line-height: 1.9;
  font-weight: 500;
  font-size: 1.0416666667vw;
}

.m-terms-block-block-items {
  display: flex;
  flex-direction: column;
  gap: 1.9791666667vw;
  margin-top: 1.9791666667vw;
}

.m-terms-block-block-item-ttl {
  font-size: 2.1rem;
  line-height: 1.8095238095;
  font-weight: 500;
  font-size: 1.09375vw;
}

.m-terms-block-block-item-list {
  font-size: 2rem;
  line-height: 1.9;
  font-weight: 500;
  font-size: 1.0416666667vw;
  padding-left: 1em;
  text-indent: -1em;
}

.m-terms-block-block-item-list-innerList {
  font-size: 2rem;
  line-height: 1.9;
  font-weight: 500;
  font-size: 1.0416666667vw;
  padding-left: 0.6em;
  text-indent: -0.6em;
}

.m-terms-block-block-item-txt {
  font-size: 2rem;
  line-height: 1.9;
  font-weight: 500;
  font-size: 1.0416666667vw;
}

.m-terms-block-block-item-txt a {
  color: #0018CC;
  text-decoration: underline;
}

.m-terms-button {
  width: 18.2291666667vw;
  margin-inline: auto;
  margin-top: 7.5520833333vw;
}

@media screen and (max-width: 767px) {
  .m-terms-ttl {
    font-size: 7.4666666667vw;
    padding-bottom: 5.8666666667vw;
    border-width: 1.6vw;
  }
  .m-terms-blocks {
    gap: 4.8vw;
    margin-top: 4.8vw;
  }
  .m-terms-block-ttl {
    font-size: 2.6666666667vw;
    line-height: 1.5;
  }
  .m-terms-block-list {
    font-size: 2.6666666667vw;
    line-height: 1.5;
  }
  .m-terms-block-box {
    padding-block: 2.6666666667vw;
    padding-inline: 5.3333333333vw;
    margin-block: 2.6666666667vw 4vw;
  }
  .m-terms-block-box-txt {
    font-size: 3.2vw;
    line-height: 1.6666666667;
    text-align: left;
  }
  .m-terms-block-block-txt {
    font-size: 2.6666666667vw;
    line-height: 1.5;
  }
  .m-terms-block-block-items {
    gap: 4vw;
    margin-top: 3.7333333333vw;
  }
  .m-terms-block-block-item-ttl {
    font-size: 2.6666666667vw;
    line-height: 1.5;
  }
  .m-terms-block-block-item-list {
    font-size: 2.6666666667vw;
    line-height: 1.5;
  }
  .m-terms-block-block-item-list-innerList {
    font-size: 2.6666666667vw;
    line-height: 1.5;
  }
  .m-terms-block-block-item-txt {
    font-size: 2.6666666667vw;
    line-height: 1.5;
  }
  .m-terms-button {
    width: 68vw;
    margin-top: 12vw;
  }
}
/*------------- m-complete -------------*/
.m-complete-ttl {
  font-size: 4rem;
  line-height: 1;
  letter-spacing: 0.01em;
  font-weight: 500;
  font-size: 2.0833333333vw;
  color: #FF7600;
}

.m-complete-txt {
  font-size: 2.5rem;
  line-height: 1.4;
  letter-spacing: 0.01em;
  font-weight: 500;
  font-size: 1.3020833333vw;
  margin-top: 2.6041666667vw;
}

.m-complete-btn {
  display: inline-block;
  font-size: 2.5rem;
  line-height: 1.4;
  letter-spacing: 0.01em;
  font-weight: 500;
  font-size: 1.3020833333vw;
  color: #FF7600;
  margin-top: 2.34375vw;
}

@media screen and (max-width: 767px) {
  .m-complete-ttl {
    font-size: 6.4vw;
    line-height: 1.4583333333;
  }
  .m-complete-txt {
    font-size: 4vw;
    line-height: 1.6666666667;
    margin-top: 5.3333333333vw;
  }
  .m-complete-btn {
    font-size: 4vw;
    margin-top: 4vw;
  }
}
/* m-contactForm
---------------------------------------------------------------------------- */
.m-contactForm-txt {
  font-size: 2.5rem;
  line-height: 1.4;
  letter-spacing: 0.01em;
  font-weight: 500;
  font-size: 1.3020833333vw;
  padding-left: 4.4270833333vw;
  margin-bottom: 3.5416666667vw;
}

.m-contactForm-items {
  display: flex;
  flex-direction: column;
  padding-left: 4.4270833333vw;
}

.m-contactForm-items._confirm {
  padding-left: initial;
}

.m-contactForm-item {
  width: 100%;
  display: flex;
  position: relative;
  border: 1px solid #E2DFDF;
  border-left-width: 0.5208333333vw;
}

.m-contactForm-item:not(:first-child) {
  border-top: none;
}

.m-contactForm-item::before {
  position: absolute;
  top: 50%;
  left: -4.9479166667vw;
  transform: translateY(-50%);
  color: #fff;
  font-size: 2rem;
  line-height: 1;
  letter-spacing: 0.2em;
  font-weight: 700;
  font-size: 1.0416666667vw;
  padding: 0.2395833333vw 0.15625vw 0.3020833333vw 0.3125vw;
}

.m-contactForm-item._required::before {
  content: "必須";
  background-color: #F80505;
}

.m-contactForm-item._any::before {
  content: "任意";
  background-color: #A5A4A4;
}

.m-contactForm-label {
  width: 11.875vw;
  padding-block: 1.0416666667vw;
  padding-inline: 1.0416666667vw;
  background-color: #fff;
  display: flex;
  align-items: center;
}

.m-contactForm-label-str {
  font-size: 2rem;
  line-height: 1.75;
  letter-spacing: 0.01em;
  font-weight: 500;
  font-size: 1.0416666667vw;
}
.m-contactForm-label-str em {
  color: #F80505;
}
.m-contactForm-label-str ._ls {
  letter-spacing: -1em;
}

.m-contactForm-inputBox {
  flex: 1;
  background-color: rgba(165, 164, 164, 0.1);
  padding-block: 2.0833333333vw;
  padding-inline: 2.6041666667vw;
  min-height: 8.3333333333vw;
  align-content: center;
}

.m-contactForm-inputBox-inner {
  display: flex;
  align-items: center;
  gap: 0 1.5625vw;
}

.m-contactForm-inputBox-txt {
  font-size: 2rem;
  line-height: 1.75;
  letter-spacing: 0.01em;
  font-weight: 500;
  font-size: 1.0416666667vw;
  margin-bottom: 0.6770833333vw;
}

.m-contactForm-inputBox._confirm {
  font-size: 2rem;
  line-height: 1.75;
  letter-spacing: 0.01em;
  font-weight: 500;
  font-size: 1.0416666667vw;
  display: flex;
  align-items: center;
  gap: 0 1em;
  padding-block: 1.0416666667vw;
  min-height: 5.7291666667vw;
}

.m-contactForm-inputWrap-select {
  width: fit-content;
  position: relative;
}

.m-contactForm-inputWrap-select::after {
  content: "";
  position: absolute;
  top: 0.3385416667vw;
  right: 1.0416666667vw;
  width: 1.25vw;
  aspect-ratio: 1;
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  background-image: url(./../../images/contact/icn_select.svg);
  pointer-events: none;
}

.m-contactForm-input {
  font-size: 2rem;
  line-height: 1.75;
  letter-spacing: 0.01em;
  font-weight: 500;
  font-size: 1.0416666667vw;
  width: 100%;
  padding-block: 0.6770833333vw;
  padding-inline: 0.78125vw;
  border: 1px solid #3B3B3B;
  background-color: #fff;
}

.m-contactForm-input::placeholder {
  color: rgba(59, 59, 59, 0.3);
}

.m-contactForm-input._select {
  width: 11.8229166667vw;
  padding-block: 0.2083333333vw;
  padding-inline: 1.4583333333vw;
  border-radius: 0.5208333333vw;
  font-size: 0.78125vw;
  position: relative;
}

.m-contactForm-input._textarea {
  resize: vertical;
  white-space: pre-wrap;
  min-height: 13.28125vw;
}

.m-contactForm-radio {
  display: grid;
  gap: 1.0416666667vw;
}
.m-contactForm-radio._col02 {
  grid-template-columns: repeat(2, 1fr);
}
.m-contactForm-radio._col03 {
  grid-template-columns: repeat(3, 1fr);
}

.m-contactForm-radio-label {
  font-size: 2rem;
  line-height: 1.75;
  letter-spacing: 0.01em;
  font-weight: 500;
  font-size: 1.0416666667vw;
}

.m-contactForm-buttonArea {
  position: relative;
}

.m-contactForm-button {
  width: 18.2291666667vw;
  margin-inline: auto;
  margin-top: 6.5104166667vw;
}

.m-contactForm-button [type=submit] {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
  padding-block: 0.7291666667vw;
  padding-inline: 0.5208333333vw;
  border-radius: 0.3125vw;
  background-color: #ED6C00;
  font-size: 2.8rem;
  line-height: 1.5;
  letter-spacing: 0.06em;
  font-weight: 700;
  font-size: 1.4583333333vw;
  color: #fff;
  cursor: pointer;
  transition: opacity 0.3s ease;
}
@media (any-hover: hover) {
  .m-contactForm-button [type=submit]:hover {
    opacity: 0.7;
  }
}

.m-contactForm-button-reverse {
  position: absolute;
  top: 50%;
  left: 4.6875vw;
  transform: translateY(-50%);
  width: fit-content;
  height: auto;
}

.m-contactForm-button-reverse::before {
  content: "";
  position: absolute;
  top: 0.5208333333vw;
  left: 0.2604166667vw;
  z-index: 1;
  width: 0.4166666667vw;
  aspect-ratio: 1;
  border-left: 0.1041666667vw solid #3B3B3B;
  border-bottom: 0.1041666667vw solid #3B3B3B;
  transform: rotate(45deg);
  pointer-events: none;
}

.m-contactForm-button-reverse [type=button] {
  font-size: 1.6rem;
  line-height: 1.8;
  letter-spacing: 0.05em;
  font-weight: 700;
  font-size: 0.8333333333vw;
  padding-left: 1.0416666667vw;
  border-bottom: 1px solid currentColor;
  cursor: pointer;
  transition: opacity 0.3s ease 0s;
}
.m-contactForm-button-reverse [type=button]:hover {
  border-color: transparent;
  opacity: 0.8;
}

.m-contactForm-check-input {
  font-size: 2rem;
  line-height: 1.75;
  letter-spacing: 0.01em;
  font-weight: 500;
  font-size: 1.0416666667vw;
  display: grid;
  gap: 1.0416666667vw;
}
.m-contactForm-check-input._col02 {
  grid-template-columns: repeat(2, 1fr);
}
.m-contactForm-check-input._col03 {
  grid-template-columns: repeat(3, 1fr);
}

@media screen and (max-width: 767px) {
  .m-contactForm-txt {
    font-size: 4vw;
    line-height: 1.6666666667;
    padding-inline: 4vw;
    margin-bottom: 7.4666666667vw;
  }
  .m-contactForm-items {
    padding-left: initial;
  }
  .m-contactForm-item {
    flex-direction: column;
    border-left-width: 0.8vw;
  }
  .m-contactForm-item._required::before,
  .m-contactForm-item._any::before {
    content: none;
  }
  .m-contactForm-label {
    gap: 0 1.3333333333vw;
    width: 100%;
    padding-block: 3.4666666667vw;
    padding-inline: 2.1333333333vw;
    background-color: rgba(165, 164, 164, 0.1);
  }
  .m-contactForm-label-required,
  .m-contactForm-label-any {
    flex-shrink: 0;
    display: inline-block;
    font-size: 2.6666666667vw;
    line-height: 1;
    letter-spacing: 0.1em;
    font-weight: 700;
    color: #fff;
    padding-block: 0.5333333333vw;
    padding-inline: 0.8vw;
  }
  .m-contactForm-label-required {
    background-color: #F80505;
  }
  .m-contactForm-label-any {
    background-color: #A5A4A4;
  }
  .m-contactForm-label-str {
    font-size: 3.2vw;
    line-height: 1.1666666667;
  }
  .m-contactForm-inputBox {
    padding-block: 4.5333333333vw;
    padding-inline: 2.6666666667vw;
    min-height: initial;
    background-color: #fff;
  }
  .m-contactForm-inputBox._radio,
  .m-contactForm-inputBox._checkbox {
    padding-inline: 6.1333333333vw;
    padding-block: 3.4666666667vw 4.8vw;
  }
  .m-contactForm-inputBox-inner {
    gap: 0 2.6666666667vw;
  }
  .m-contactForm-inputBox-txt {
    font-size: 2.6666666667vw;
    line-height: 1.5;
    margin-bottom: 2.6666666667vw;
  }
  .m-contactForm-inputBox._confirm {
    font-size: 3.2vw;
    padding-block: 5.3333333333vw;
    min-height: initial;
  }
  .m-contactForm-inputWrap-select::after {
    top: 1.8666666667vw;
    right: 2.1333333333vw;
    width: 3.64vw;
  }
  .m-contactForm-input {
    font-size: 2.6666666667vw;
    padding-block: 1.3333333333vw;
    padding-inline: 2.6666666667vw;
  }
  .m-contactForm-input._select {
    width: 35.4666666667vw;
    padding-block: 1.0666666667vw;
    padding-inline: 2.6666666667vw;
    font-size: 2.6666666667vw;
  }
  .m-contactForm-input._textarea {
    min-height: 49.3333333333vw;
  }
  .m-contactForm-radio {
    gap: 1.3333333333vw 2.6666666667vw;
  }
  .m-contactForm-radio._col03 {
    grid-template-columns: repeat(2, 1fr);
  }
  .m-contactForm-radio-label {
    font-size: 2.6666666667vw;
  }
  .m-contactForm-buttonArea {
    display: flex;
    flex-direction: column-reverse;
    align-items: center;
    gap: 8vw;
    margin-top: 8vw;
  }
  .m-contactForm-button {
    width: 68vw;
  }
  .m-contactForm-button [type=submit] {
    padding-block: 1.8666666667vw;
    padding-inline: 2.6666666667vw;
    border-radius: 1.6vw;
    font-size: 6.4vw;
  }
  .m-contactForm-button-reverse {
    position: relative;
    top: initial;
    left: initial;
    transform: initial;
  }
  .m-contactForm-button-reverse::before {
    top: 2.6666666667vw;
    left: 1.3333333333vw;
    width: 1.8666666667vw;
    border-width: 0.5333333333vw;
  }
  .m-contactForm-button-reverse [type=button] {
    font-size: 4vw;
    padding-left: 5.3333333333vw;
  }
  .m-contactForm-check-input {
    font-size: 2.6666666667vw;
    gap: 1.3333333333vw 2.6666666667vw;
  }
  .m-contactForm-check-input._col03 {
    grid-template-columns: repeat(2, 1fr);
  }
}
/* wpcf7
---------------------------------------------------------------------------- */
.wpcf7-not-valid-tip {
  font-size: 0.8333333333vw !important;
  margin-top: 0.15625vw;
}

.wpcf7-list-item {
  margin: 0 !important;
}

/* contactform7のclass */
.wpcf7-spinner {
  display: none !important;
}

.wpcf7-spinner::before {
  display: none !important;
}

.wpcf7 form .wpcf7-response-output {
  display: none !important;
}

/* .wpcf7-not-valid-tip {
        display: none !important;
  } */
.wpcf7 form.sent .wpcf7-response-output {
  display: none !important;
}

div.wpcf7 .ajax-loader {
  display: none !important;
}

.wpcf7-mail-sent-ok {
  display: none !important;
}

.wpcf7-form-control-wrap {
  width: 100%;
}

.m-contactForm-radio-label .wpcf7-list-item {
  display: flex;
  align-items: center;
  gap: 0 0.78125vw;
}

.m-contactForm-radio-label .wpcf7-list-item [type=radio] {
  margin: 0;
  position: relative;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  width: 1.3020833333vw;
  height: 1.3020833333vw;
  background-color: #fff;
  border: 1px solid #707070;
  border-radius: 0.2604166667vw;
  box-shadow: 2px 2px 3px rgba(0, 0, 0, 0.16);
}

.m-contactForm-radio-label .wpcf7-list-item [type=radio]:checked {
  background-color: #FF7600;
  border: none;
}

.m-contactForm-radio-label .wpcf7-list-item [type=radio]:checked::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 0.6770833333vw;
  aspect-ratio: 20/15;
  border-left: 0.15625vw solid #FFFFFF;
  border-bottom: 0.15625vw solid #FFFFFF;
  transform: translate(-50%, -80%) rotate(-45deg);
}

.m-contactForm-check-input .wpcf7-list-item label {
  display: flex;
  align-items: center;
  gap: 0 0.78125vw;
}

.m-contactForm-check-input .wpcf7-list-item [type=checkbox] {
  margin: 0;
  position: relative;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  width: 1.3020833333vw;
  height: 1.3020833333vw;
  background-color: #fff;
  border: 1px solid #707070;
  border-radius: 0.2604166667vw;
  box-shadow: 2px 2px 3px rgba(0, 0, 0, 0.16);
}

.m-contactForm-check-input .wpcf7-list-item [type=checkbox]:checked {
  background-color: #FF7600;
  border: none;
}

.m-contactForm-check-input .wpcf7-list-item [type=checkbox]::before {
  content: none;
}

.m-contactForm-check-input .wpcf7-list-item [type=checkbox]::after {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 0.9375vw;
  aspect-ratio: 20/15;
  background-color: initial;
  border: none;
  border-left: 0.15625vw solid #FFFFFF;
  border-bottom: 0.15625vw solid #FFFFFF;
  transform: translate(-50%, -80%) rotate(-45deg);
  opacity: 0;
}

.m-contactForm-check-input .wpcf7-list-item [type=checkbox]:checked::after {
  opacity: 1;
}

@media screen and (max-width: 767px) {
  .wpcf7-not-valid-tip {
    font-size: 3.7333333333vw !important;
    margin-top: 0.8vw;
  }
  .m-contactForm-radio-label .wpcf7-list-item {
    gap: 0 1.8666666667vw;
  }
  .m-contactForm-radio-label .wpcf7-list-item [type=radio] {
    width: 3.4666666667vw;
    height: 3.4666666667vw;
    border-radius: 0.8vw;
  }
  .m-contactForm-radio-label .wpcf7-list-item [type=radio]:checked::before {
    width: 1.8666666667vw;
    border-width: 0.5333333333vw;
  }
  @supports (-webkit-hyphens: none) {
    .wpcf7-list-item-label {
      letter-spacing: -0.02em;
    }
  }
  @supports (-moz-appearance: none) {
    .wpcf7-list-item-label {
      letter-spacing: -0.04em;
    }
  }
  .m-contactForm-check-input .wpcf7-list-item label {
    gap: 0 1.8666666667vw;
  }
  .m-contactForm-check-input .wpcf7-list-item [type=checkbox] {
    width: 3.4666666667vw;
    height: 3.4666666667vw;
    border-radius: 0.8vw;
  }
  .m-contactForm-check-input .wpcf7-list-item [type=checkbox]::after {
    width: auto;
    height: 1.8666666667vw;
    border-width: 0.5333333333vw;
  }
}
.m-404-text {
  font-size: 2rem;
  line-height: 1.5;
  font-weight: 500;
  font-size: 1.0416666667vw;
  margin-bottom: 1.5625vw;
}

@media screen and (max-width: 767px) {
  .m-404-text {
    font-size: 4.2666666667vw;
    line-height: 1.875;
    font-weight: 500;
    margin-bottom: 8vw;
  }
}
/*必要なフォントのみ読み込んでください。不要なフォントおよび太さは削除でお願いします。*/
@font-face {
  font-family: "Noto Sans JP";
  src: url("../../fonts/Noto_Sans_JP/NotoSansJP-Regular.woff2") format("woff2"), url("../../fonts/Noto_Sans_JP/NotoSansJP-Regular.woff") format("woff");
  font-display: swap;
  font-weight: 400;
  font-style: normal;
}
@font-face {
  font-family: "Noto Sans JP";
  src: url("../../fonts/Noto_Sans_JP/NotoSansJP-Medium.woff2") format("woff2"), url("../../fonts/Noto_Sans_JP/NotoSansJP-Medium.woff") format("woff");
  font-display: swap;
  font-weight: 500;
  font-style: normal;
}
@font-face {
  font-family: "Noto Sans JP";
  src: url("../../fonts/Noto_Sans_JP/NotoSansJP-Bold.woff2") format("woff2"), url("../../fonts/Noto_Sans_JP/NotoSansJP-Bold.woff") format("woff");
  font-display: swap;
  font-weight: 700;
  font-style: normal;
}
@font-face {
  font-family: "Noto Sans JP";
  src: url("../../fonts/Noto_Sans_JP/NotoSansJP-Black.woff2") format("woff2"), url("../../fonts/Noto_Sans_JP/NotoSansJP-Black.woff") format("woff");
  font-display: swap;
  font-weight: 900;
  font-style: normal;
}
/* base
---------------------------------------------------------------------------- */
/*------------- General Elements -------------*/
html {
  font-size: 62.5%;
}

body {
  font-family: "Noto Sans JP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-weight: 400;
  color: #3B3B3B;
  font-size: 1.5rem;
  position: relative;
}

a {
  text-decoration: none;
  color: #2c6cd6;
  outline: none;
}
a:hover, a:active, a:focus {
  text-decoration: none;
}

img {
  max-width: 100%;
}

* {
  word-break: break-all;
}

@media screen and (max-width: 1280px) and (min-width: 768px) {
  html {
    font-size: 0.625vw;
  }
}
@media screen and (max-width: 767px) {
  body {
    min-width: inherit;
  }
  body.is-menu-open {
    overflow: hidden;
  }
  body.is-menu-open::before {
    content: "";
    position: fixed;
    left: 0;
    right: 0;
    bottom: 0;
    top: var(--header-height, 0px);
    background: #fff;
    z-index: 100;
    pointer-events: none;
  }
}
/*------------- .l-pagebody -------------*/
.l-pagebody {
  background: #FEF0E6;
  padding: 5.7291666667vw 0 10.4166666667vw;
}

.l-content {
  background: #fff;
  box-shadow: 0 0 1.5625vw rgba(0, 0, 0, 0.16);
  max-width: 79.1666666667vw;
  margin: 0 auto;
  padding: 5.2083333333vw;
}
.l-content._1200 {
  max-width: 62.5vw;
}

.l-content-recruit {
  width: 100%;
  max-width: 62.5vw;
  margin-inline: auto;
}
.l-content-recruit._1620 {
  max-width: 84.375vw;
}
.l-content-recruit._1320 {
  max-width: 68.75vw;
}

@media screen and (max-width: 767px) {
  .l-pagebody {
    padding: 25.3333333333vw 0 9.6vw;
  }
  .l-content {
    box-shadow: 0 0 8vw rgba(0, 0, 0, 0.16);
    max-width: 100%;
    margin: 0 auto;
    padding: 9.6vw 6.1333333333vw;
  }
  .l-content._1200 {
    max-width: 100%;
  }
  .l-content-recruit {
    max-width: initial;
    padding-inline: 6.6666666667vw;
  }
  .l-content-recruit._1620, .l-content-recruit._1320 {
    max-width: initial;
  }
}
/*------------- .l-header -------------*/
.l-header {
  position: fixed;
  left: 0;
  top: 0;
  background: #fff;
  width: 100%;
  padding: 1.4583333333vw 0 1.25vw;
  z-index: 1000;
}

.l-header-inner {
  margin: 0 3.6458333333vw 0 2.96875vw;
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.l-header-left {
  display: flex;
  align-items: center;
}

.l-header-logo {
  width: 11.875vw;
}
.l-header-logo img {
  width: 100%;
  height: auto;
  display: block;
}

.l-header-site-link {
  width: 7.2395833333vw;
  margin-left: 2.2395833333vw;
}
.l-header-site-link img {
  width: 100%;
  height: auto;
  display: block;
}

.l-header-menu-btn {
  display: none;
}

@media screen and (max-width: 767px) {
  .l-header {
    position: fixed;
    z-index: 2000;
    padding: 4.2666666667vw 0 3.2vw;
  }
  .l-header-inner {
    margin: 0 6.6666666667vw;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    flex-direction: column;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-align-items: flex-start;
    align-items: flex-start;
    position: relative;
  }
  .l-header-left {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    flex-direction: column;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-align-items: flex-start;
    align-items: flex-start;
  }
  .l-header-logo {
    width: 49.8666666667vw;
  }
  .l-header-site-link {
    width: 26.6666666667vw;
    margin-left: 0;
    margin-top: 2.6666666667vw;
  }
  .l-header-menu-btn {
    z-index: 200;
    position: absolute;
    right: 0;
    top: 0;
    display: block;
    width: 10.9333333333vw;
    height: 10.9333333333vw;
    font-size: 2.1333333333vw;
    line-height: 1.875;
    letter-spacing: 0.12em;
    font-weight: 500;
  }
  .l-header-menu-btn-line {
    display: block;
    width: 100%;
    height: 2px;
    background: #000;
    border-radius: 9999px;
    margin-bottom: 2.6666666667vw;
  }
  body.is-menu-open .l-header-menu-btn {
    position: absolute;
    right: 0;
    top: 0;
    color: #000;
  }
  body.is-menu-open .l-header-menu-btn .l-header-menu-btn-line {
    position: absolute;
    top: 50%;
    left: 0;
    margin: 0;
    transform: translateY(-50%) rotate(45deg);
    transition: transform 0.3s ease;
  }
  body.is-menu-open .l-header-menu-btn .l-header-menu-btn-line:nth-of-type(2) {
    transform: translateY(-50%) rotate(-45deg);
  }
  body.is-menu-open .l-header-menu-btn .l-header-menu-btn-line:nth-of-type(3) {
    display: none;
  }
  body.is-menu-open .l-header-menu-btn > span:not(.l-header-menu-btn-line) {
    display: none;
  }
  .l-header-menu-btn-text {
    color: #000;
  }
}
/*------------- .l-gnav -------------*/
.l-gnav {
  display: block;
}

.l-gnav-list {
  display: flex;
  gap: 1.5625vw;
  list-style: none;
}

.l-gnav-item a {
  font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "Noto Sans JP", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  display: block;
  text-decoration: none;
  color: #171717;
  font-size: 1.8rem;
  line-height: 1.2777777778;
  font-weight: 700;
  font-size: 0.9375vw;
  position: relative;
  padding: 0 0.5208333333vw;
}
.l-gnav-item a::after {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  bottom: -0.2666666667vw;
  width: 0;
  height: 1px;
  background: #171717;
  transition: width 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}
.l-gnav-item a:hover::after {
  width: 100%;
}

@media screen and (max-width: 767px) {
  .l-gnav {
    /* display切替ではアニメできないため、トランジション可能なプロパティで制御 */
    max-height: 0;
    overflow: hidden;
    opacity: 0;
    visibility: hidden;
    transform: translateY(-8px);
    transition: max-height 0.35s ease, opacity 0.25s ease, transform 0.35s ease, visibility 0s linear 0.35s;
    overflow-y: scroll;
    scrollbar-width: none;
  }
  .l-gnav.is-open {
    max-height: 100vh;
    height: 100vh;
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
    transition: max-height 0.45s ease, opacity 0.3s ease, transform 0.3s ease, visibility 0s;
    width: 100%;
  }
  .l-gnav-list {
    margin: 10.6666666667vw 0;
    flex-direction: column;
    gap: 8vw;
  }
  .l-gnav-item a {
    font-size: 4vw;
    line-height: 1.5333333333;
    font-weight: 700;
    padding: 0 2.6666666667vw;
  }
  .l-gnav-item:hover a::after {
    background: #fff;
  }
  .l-gnav-item a::after {
    background: #fff;
  }
}
/*------------- .l-breadcrumbs -------------*/
.l-breadcrumbs {
  margin: 0 4.6875vw 1.8229166667vw;
}
.l-breadcrumbs ol {
  display: flex;
}
.l-breadcrumbs ol li {
  position: relative;
  padding-right: 1.5625vw;
  margin-right: 1.5625vw;
}
.l-breadcrumbs ol li::before {
  content: "";
  position: absolute;
  top: 50%;
  right: 0;
  width: 0.4166666667vw;
  height: 0.4166666667vw;
  border-top: 0.1041666667vw solid #3B3B3B;
  border-right: 0.1041666667vw solid #3B3B3B;
  transform: translateY(-50%) rotate(45deg);
}
.l-breadcrumbs ol li:last-child::before {
  display: none;
}
.l-breadcrumbs a {
  font-size: 1.5rem;
  line-height: 1.3333333333;
  letter-spacing: 0.01em;
  font-weight: 500;
  font-size: 0.78125vw;
  color: #3B3B3B;
}

.l-breadcrumbs._recruit {
  overflow-x: auto;
  overflow-y: hidden;
  word-break: keep-all;
  white-space: nowrap;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: none;
  margin: initial;
  margin-inline: 7.8125vw;
  padding-top: 1.3020833333vw;
}
.l-breadcrumbs._recruit li {
  padding-right: 0.78125vw;
  margin-right: 0.5208333333vw;
}
.l-breadcrumbs._recruit li::before {
  width: 0.3645833333vw;
  height: 0.3645833333vw;
  border-width: 0.0520833333vw;
  border-color: #707070;
}
.l-breadcrumbs._recruit li:last-child a {
  color: #000;
}
.l-breadcrumbs._recruit a {
  font-size: 1.4rem;
  line-height: 1.4285714286;
  font-weight: 500;
  font-size: 0.7291666667vw;
  color: #707070;
}

@media screen and (max-width: 767px) {
  .l-breadcrumbs {
    display: none;
  }
  .l-breadcrumbs._recruit {
    display: block;
    margin-inline: 6.6666666667vw;
    padding-top: 4.8vw;
  }
  .l-breadcrumbs._recruit li {
    padding-right: 4vw;
    margin-right: 2.6666666667vw;
  }
  .l-breadcrumbs._recruit li::before {
    width: 1.8666666667vw;
    height: 1.8666666667vw;
    border-width: 0.2666666667vw;
  }
  .l-breadcrumbs._recruit a {
    font-size: 3.7333333333vw;
  }
}
/*------------- .l-sidebar -------------*/ /*------------- .l-pagetop -------------*/
.l-pagetop {
  position: fixed;
  z-index: 100;
  bottom: 2.6041666667vw;
  right: 2.0833333333vw;
}
.l-pagetop img {
  width: 1.0416666667vw;
  height: auto;
}

.l-pagetop.is-fix {
  position: absolute;
  bottom: 44.2708333333vw;
  right: 2.0833333333vw;
}

@media screen and (max-width: 767px) {
  .l-pagetop {
    display: none !important;
  }
  .l-pagetop.is-fix {
    display: none !important;
  }
}
.l-recruit-banner {
  position: fixed;
  top: 7.8125vw;
  right: 2.0833333333vw;
  z-index: 100;
}

.l-recruit-banner-img {
  width: 15.2604166667vw;
  height: auto;
}

.l-recruit-banner-close {
  position: absolute;
  top: -0.5208333333vw;
  right: -0.5208333333vw;
  z-index: 200;
}
.l-recruit-banner-close img {
  width: 2.0833333333vw;
  height: auto;
}

.is-hide {
  display: none !important;
}

@media screen and (max-width: 767px) {
  .l-recruit-banner {
    position: fixed;
    top: auto;
    bottom: 5.3333333333vw;
    right: 2.6666666667vw;
  }
  .l-recruit-banner-img {
    width: 25.8666666667vw;
    height: auto;
  }
  .l-recruit-banner-close {
    position: absolute;
    top: -1.3333333333vw;
    right: -1.3333333333vw;
  }
  .l-recruit-banner-close img {
    width: 3.4666666667vw;
    height: auto;
  }
}
/*------------- .l-footer -------------*/
.l-footer {
  background: #EBEBEB;
  position: relative;
  z-index: 200;
}

.l-footer-inner {
  padding: 4.1666666667vw 7.7083333333vw 3.90625vw 4.3229166667vw;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: 6.25vw;
}

.l-footer-logo {
  margin-bottom: 1.0416666667vw;
}
.l-footer-logo img {
  width: 16.8229166667vw;
  height: auto;
}

.l-footer-nav {
  flex: 1;
}

.l-footer-nav-inner {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-top: 0.2604166667vw;
}

.l-footer-nav-inner + .l-footer-nav-inner {
  margin-top: 2.6041666667vw;
  padding-top: 2.6041666667vw;
  border-top: 1px solid #A5A4A4;
}

.l-footer-col {
  width: 19.7916666667vw;
}
.l-footer-col li {
  position: relative;
}
.l-footer-col li a {
  font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "Noto Sans JP", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  color: #171717;
  font-size: 2.1rem;
  line-height: 1.5238095238;
  font-weight: 700;
  font-size: 1.09375vw;
  position: relative;
}
.l-footer-col li a::after {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  bottom: -0.15625vw;
  width: 0;
  height: 1px;
  background: #171717;
  transition: width 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}
.l-footer-col li a:hover::after {
  width: 100%;
}

.l-footer-col-mt {
  margin-top: 2.6041666667vw;
}

.l-footer-col-list a {
  padding-left: 0.78125vw;
  font-weight: 400 !important;
}
.l-footer-col-list::after {
  position: absolute;
  content: "";
  top: 50%;
  transform: translateY(-50%);
  left: 0;
  width: 0.4166666667vw;
  height: 3px;
  background: #171717;
}

.l-footer-col-list + .l-footer-col-list {
  margin-top: 0.2604166667vw;
}

.l-footer-col-item {
  margin-bottom: 1.0416666667vw;
}

.l-footer-catalog {
  width: calc(100% - 39.5833333333vw);
  padding-bottom: 1.0416666667vw;
}

.l-footer-catalog-inner {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-align-items: flex-end;
  -ms-flex-align: end;
  align-items: flex-end;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.l-footer-catalog-img img {
  width: 8.3333333333vw;
  height: auto;
}

.l-footer-catalog-btn {
  display: block;
  background-image: radial-gradient(farthest-side at 1% 20%, #f8d797, #ed6c00);
  width: 14.375vw;
  height: 5.5729166667vw;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  font-size: 1.9rem;
  line-height: 1.3157894737;
  font-weight: 700;
  font-size: 0.9895833333vw;
  color: #fff;
  padding-left: 1.5625vw;
  position: relative;
  border-radius: 0.4166666667vw;
}
.l-footer-catalog-btn::before {
  content: "";
  position: absolute;
  right: 1.1458333333vw;
  top: 50%;
  transform: translateY(-50%);
  background: url(../../images/common/icn_pdf.svg) no-repeat left top;
  background-size: contain;
  width: 2.9067708333vw;
  height: 3.4567708333vw;
}

.l-footer-copy {
  background: #3B3B3B;
  color: #fff;
  text-align: center;
  padding: 1.3020833333vw 0;
  font-size: 1.7rem;
  line-height: 1.1764705882;
  font-weight: 700;
  font-size: 0.8854166667vw;
  font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "Noto Sans JP", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}

@media screen and (max-width: 767px) {
  /*------------- .l-footer -------------*/
  .l-footer-inner {
    padding: 11.4666666667vw 4vw 13.3333333333vw 10.6666666667vw;
    gap: 0;
    flex-direction: column;
  }
  .l-footer-logo {
    margin-bottom: 10.6666666667vw;
  }
  .l-footer-logo img {
    width: 61.4506666667vw;
    height: auto;
  }
  .l-footer-nav-inner {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    flex-direction: column;
    gap: 2.0833333333vw;
    margin-top: 0;
  }
  .l-footer-nav-inner + .l-footer-nav-inner {
    margin-top: 10.6666666667vw;
    padding-top: 0;
    border-top: none;
  }
  .l-footer-col {
    width: 100%;
    margin-bottom: 6.6666666667vw;
  }
  .l-footer-col li a {
    font-size: 3.4666666667vw;
    line-height: 1.5384615385;
    font-weight: 700;
  }
  .l-footer-col li a:hover::after {
    width: 0;
  }
  .l-footer-col-mt {
    margin-top: 0;
  }
  .l-footer-col-list a {
    padding-left: 2.6666666667vw;
  }
  .l-footer-col-list::after {
    width: 1.6vw;
    height: 3px;
  }
  .l-footer-col-list + .l-footer-col-list {
    margin-top: 2.6666666667vw;
  }
  .l-footer-col-item {
    margin-bottom: 5.3333333333vw;
  }
  .l-footer-catalog {
    width: 100%;
    padding-bottom: 0;
  }
  .l-footer-catalog-inner {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: flex-start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -webkit-align-items: flex-end;
    -ms-flex-align: end;
    align-items: flex-end;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: 1.6vw;
  }
  .l-footer-catalog-img img {
    width: 26.7866666667vw;
    height: auto;
  }
  .l-footer-catalog-btn {
    width: 51.92vw;
    height: 22.016vw;
    font-size: 3.7333333333vw;
    line-height: 1.4285714286;
    font-weight: 700;
    padding-left: 8vw;
    border-radius: 2.1333333333vw;
  }
  .l-footer-catalog-btn::before {
    content: "";
    position: absolute;
    right: 4vw;
    top: 50%;
    transform: translateY(-50%);
    background: url(../../images/common/icn_pdf.svg) no-repeat left top;
    background-size: contain;
    width: 9.2586666667vw;
    height: 11.0106666667vw;
  }
  .l-footer-copy {
    padding: 2.6666666667vw 0;
    font-size: 2.4vw;
    line-height: 1.6666666667;
    font-weight: 700;
  }
}
/* l-recruit-footer
---------------------------------------------------------------------------- */
.l-recruit-footer {
  background: #3B3B3B;
  position: relative;
  z-index: 200;
}

.l-recruit-footer-container {
  padding-block: 5.2083333333vw 9.7916666667vw;
  padding-inline: 13.28125vw;
  display: flex;
  align-items: flex-start;
  gap: 0 6.25vw;
}

.l-recruit-footer-logoBox {
  display: flex;
  align-items: center;
  gap: 0 1.0416666667vw;
}

.l-recruit-footer-logo {
  width: 15.1041666667vw;
  aspect-ratio: 290/36;
}
.l-recruit-footer-logo img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center;
}

.l-recruit-footer-logoBox-txt {
  font-size: 2rem;
  line-height: 1.45;
  font-weight: 500;
  font-size: 1.0416666667vw;
  color: #E85400;
}

.l-recruit-footer-items {
  flex: 1;
  display: flex;
  justify-content: space-between;
  gap: 0 3.6458333333vw;
}

.l-recruit-footer-item-lists {
  display: flex;
  flex-direction: column;
  gap: 1.9270833333vw;
}

.l-recruit-footer-item-list-link {
  font-size: 2.6rem;
  line-height: 1.1538461538;
  font-weight: 500;
  font-size: 1.3541666667vw;
  color: #fff;
  transition: color 0.3s ease 0s;
  position: relative;
}
@media (any-hover: hover) {
  .l-recruit-footer-item-list-link:hover {
    color: #E85400;
  }
  .l-recruit-footer-item-list-link:hover[target=_blank]::after {
    background-color: #E85400;
  }
}

.l-recruit-footer-item-list-link[target=_blank]::after {
  content: "";
  position: absolute;
  top: 55%;
  transform: translateY(-50%);
  right: -1.5625vw;
  width: 1.3020833333vw;
  aspect-ratio: 25/20;
  mask-position: center;
  mask-repeat: no-repeat;
  mask-size: contain;
  mask-image: url(./../../images/common/icn_blank_white.svg);
  background-color: currentColor;
  transition: background-color 0.3s ease 0s;
}

.l-recruit-footer-copy {
  font-size: 1.3rem;
  line-height: 1;
  font-weight: 400;
  font-size: 0.6770833333vw;
  color: #fff;
  padding-inline: 13.28125vw;
  padding-bottom: 1.5625vw;
}

@media screen and (max-width: 767px) {
  .l-recruit-footer-container {
    flex-direction: column;
    gap: 17.3333333333vw;
    padding-block: 29.3333333333vw 30.6666666667vw;
    padding-inline: 6.6666666667vw;
  }
  .l-recruit-footer-logoBox {
    flex-direction: column;
    align-items: flex-start;
    gap: 4vw;
  }
  .l-recruit-footer-logo {
    width: 66.6666666667vw;
  }
  .l-recruit-footer-logoBox-txt {
    font-size: 5.3333333333vw;
  }
  .l-recruit-footer-items {
    flex-direction: column;
    gap: 9.3333333333vw;
  }
  .l-recruit-footer-item-lists {
    gap: 9.8666666667vw;
  }
  .l-recruit-footer-item-list-link {
    font-size: 5.3333333333vw;
    line-height: 1.5;
  }
  .l-recruit-footer-item-list-link[target=_blank]::after {
    right: -6.6666666667vw;
    width: 5.8666666667vw;
  }
  .l-recruit-footer-copy {
    font-size: 2.9333333333vw;
    text-align: center;
    padding-inline: 2.6666666667vw;
    padding-bottom: 4vw;
  }
}
/* l-recruit-header
---------------------------------------------------------------------------- */
.l-recruit-header {
  position: fixed;
  left: 0;
  top: 0;
  background: #fff;
  width: 100%;
  padding-block: 1.3020833333vw;
  z-index: 1000;
}

.l-recruit-header-inner {
  padding-inline: 7.8125vw;
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.l-recruit-header-logoBox {
  display: flex;
  align-items: center;
  gap: 0 1.0416666667vw;
}

.l-recruit-header-logo {
  display: block;
  width: 13.0208333333vw;
  aspect-ratio: 250/31;
}
.l-recruit-header-logo img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center;
}

.l-recruit-header-logoBox-txt {
  font-size: 2rem;
  line-height: 1.45;
  font-weight: 700;
  font-size: 1.0416666667vw;
  color: #E85400;
}

.l-recruit-header-menu-btn {
  display: none;
}

@media screen and (max-width: 767px) {
  .l-recruit-header {
    padding-block: 3.3333333333vw;
    z-index: 2000;
  }
  .l-recruit-header-inner {
    flex-direction: column;
    align-items: initial;
    padding-inline: 4.8vw 6.6666666667vw;
    position: relative;
  }
  .l-recruit-header-logoBox {
    gap: 0 2.6666666667vw;
  }
  .l-recruit-header-logo {
    width: 50.1333333333vw;
  }
  .l-recruit-header-logoBox-txt {
    font-size: 3.2vw;
    line-height: 1.4166666667;
  }
  .l-recruit-header-menu-btn {
    z-index: 200;
    position: absolute;
    right: 6.6666666667vw;
    top: 0;
    margin: auto;
    display: block;
    width: 6.6666666667vw;
    height: 6.6666666667vw;
  }
  .l-recruit-header-menu-btn-line {
    display: block;
    width: 100%;
    height: 0.5333333333vw;
    background-color: #3B3B3B;
  }
  .l-recruit-header-menu-btn-line:nth-of-type(2) {
    margin-block: 1.6vw;
  }
  body.is-menu-open .l-recruit-header-menu-btn-line {
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%) rotate(45deg);
    transition: transform 0.3s ease;
  }
  body.is-menu-open .l-recruit-header-menu-btn-line:nth-of-type(2) {
    display: none;
  }
  body.is-menu-open .l-recruit-header-menu-btn-line:nth-of-type(3) {
    transform: translateY(-50%) rotate(-45deg);
  }
}
/* l-recruit-gnav
---------------------------------------------------------------------------- */
.l-recruit-gnav {
  display: block;
}

.l-recruit-gnav-wrapper {
  display: flex;
  align-items: center;
  gap: 0 2.0833333333vw;
}

.l-recruit-gnav-items {
  display: flex;
  gap: 0 2.0833333333vw;
}

.l-recruit-gnav-item-link {
  display: block;
  color: #3B3B3B;
  font-size: 2rem;
  line-height: 1.45;
  font-weight: 700;
  font-size: 1.0416666667vw;
  transition: color 0.3s ease 0s;
}
@media (any-hover: hover) {
  .l-recruit-gnav-item-link:hover {
    color: #E85400;
  }
}

.l-recruit-gnav-buttons {
  display: flex;
  align-items: center;
  gap: 0 0.78125vw;
}

.l-recruit-gnav-button {
  width: 7.8125vw;
}

.l-recruit-gnav-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  min-height: 2.6041666667vw;
  padding-block: 0.5208333333vw;
  padding-inline: 0.5208333333vw;
  border-radius: 0.2604166667vw;
  overflow: hidden;
  position: relative;
  transition: transform 0.3s ease 0s;
}
.l-recruit-gnav-btn::before, .l-recruit-gnav-btn::after {
  content: "";
  position: absolute;
}
.l-recruit-gnav-btn::before {
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #3B3B3B;
  z-index: 1;
  transform: scaleX(0);
  transform-origin: right;
  transition: transform 0.3s ease 0s;
}
.l-recruit-gnav-btn::after {
  inset: 0;
  width: 100%;
  height: 100%;
  z-index: 0;
}
.l-recruit-gnav-btn._01::after {
  background-image: linear-gradient(135deg, #E85400 0, #FFCE00 100%);
}
.l-recruit-gnav-btn._02::after {
  background-image: linear-gradient(135deg, #CFA1E0 0, #4848AA 100%);
}
@media (any-hover: hover) {
  .l-recruit-gnav-btn:hover {
    transform: translateY(-0.1041666667vw);
  }
  .l-recruit-gnav-btn:hover::before {
    transform: scaleX(1);
    transform-origin: left;
  }
  .l-recruit-gnav-btn:hover .img-default {
    opacity: 0;
  }
  .l-recruit-gnav-btn:hover .img-hover {
    opacity: 1;
  }
}

.l-recruit-gnav-btn-img {
  position: relative;
  z-index: 2;
}
.l-recruit-gnav-btn-img._01 {
  width: 4.6875vw;
  aspect-ratio: 90/29.5;
}
.l-recruit-gnav-btn-img._02 {
  width: 4.8177083333vw;
  aspect-ratio: 92.5/29;
}
.l-recruit-gnav-btn-img img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center;
  transition: opacity 0.3s ease 0s;
}
.l-recruit-gnav-btn-img .img-default {
  opacity: 1;
}
.l-recruit-gnav-btn-img .img-hover {
  position: absolute;
  inset: 0;
  opacity: 0;
}

@media screen and (max-width: 767px) {
  .l-recruit-gnav {
    /* display切替ではアニメできないため、トランジション可能なプロパティで制御 */
    max-height: 0;
    overflow: hidden;
    opacity: 0;
    visibility: hidden;
    transform: translateY(-8px);
    transition: max-height 0.35s ease, opacity 0.25s ease, transform 0.35s ease, visibility 0s linear 0.35s;
    overflow-y: scroll;
    scrollbar-width: none;
  }
  .l-recruit-gnav.is-open {
    max-height: 100vh;
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
    transition: max-height 0.45s ease, opacity 0.3s ease, transform 0.3s ease, visibility 0s;
    width: 100%;
  }
  .l-recruit-gnav-wrapper {
    flex-direction: column;
    gap: 18.6666666667vw;
    padding-block: 27.2vw;
    padding-inline: 1.8666666667vw 0;
  }
  .l-recruit-gnav-items {
    flex-direction: column;
    align-items: center;
    gap: 12vw;
  }
  .l-recruit-gnav-item {
    width: 100%;
  }
  .l-recruit-gnav-item-link {
    font-size: 5.3333333333vw;
    text-align: center;
  }
  .l-recruit-gnav-buttons {
    flex-direction: column;
    gap: 9.3333333333vw;
  }
  .l-recruit-gnav-button {
    width: 40vw;
  }
  .l-recruit-gnav-btn {
    min-height: 13.3333333333vw;
    padding-block: 2.6666666667vw;
    padding-inline: 2.6666666667vw;
    border-radius: 1.3333333333vw;
  }
  .l-recruit-gnav-btn-img._01 {
    width: 24vw;
  }
  .l-recruit-gnav-btn-img._02 {
    width: 24.6666666667vw;
  }
}
/* RWD表示切り替え
---------------------------------------------------------------------------- */
@media all and (min-width: 768px) {
  .nopc {
    display: none !important;
  }
}
@media all and (max-width: 767px) {
  .nosp {
    display: none !important;
  }
}
/* フォントサイズ
---------------------------------------------------------------------------- */
.fs50 {
  font-size: 5rem !important;
}

.fs49 {
  font-size: 4.9rem !important;
}

.fs48 {
  font-size: 4.8rem !important;
}

.fs47 {
  font-size: 4.7rem !important;
}

.fs46 {
  font-size: 4.6rem !important;
}

.fs45 {
  font-size: 4.5rem !important;
}

.fs44 {
  font-size: 4.4rem !important;
}

.fs43 {
  font-size: 4.3rem !important;
}

.fs42 {
  font-size: 4.2rem !important;
}

.fs41 {
  font-size: 4.1rem !important;
}

.fs40 {
  font-size: 4rem !important;
}

.fs39 {
  font-size: 3.9rem !important;
}

.fs38 {
  font-size: 3.8rem !important;
}

.fs37 {
  font-size: 3.7rem !important;
}

.fs36 {
  font-size: 3.6rem !important;
}

.fs35 {
  font-size: 3.5rem !important;
}

.fs34 {
  font-size: 3.4rem !important;
}

.fs33 {
  font-size: 3.3rem !important;
}

.fs32 {
  font-size: 3.2rem !important;
}

.fs31 {
  font-size: 3.1rem !important;
}

.fs30 {
  font-size: 3rem !important;
}

.fs29 {
  font-size: 2.9rem !important;
}

.fs28 {
  font-size: 2.8rem !important;
}

.fs27 {
  font-size: 2.7rem !important;
}

.fs26 {
  font-size: 2.6rem !important;
}

.fs25 {
  font-size: 2.5rem !important;
}

.fs24 {
  font-size: 2.4rem !important;
}

.fs23 {
  font-size: 2.3rem !important;
}

.fs22 {
  font-size: 2.2rem !important;
}

.fs21 {
  font-size: 2.1rem !important;
}

.fs20 {
  font-size: 2rem !important;
}

.fs19 {
  font-size: 1.9rem !important;
}

.fs18 {
  font-size: 1.8rem !important;
}

.fs17 {
  font-size: 1.7rem !important;
}

.fs16 {
  font-size: 1.6rem !important;
}

.fs15 {
  font-size: 1.5rem !important;
}

.fs14 {
  font-size: 1.4rem !important;
}

.fs13 {
  font-size: 1.3rem !important;
}

.fs12 {
  font-size: 1.2rem !important;
}

.fs11 {
  font-size: 1.1rem !important;
}

.fs10 {
  font-size: 1rem !important;
}

.fs9 {
  font-size: 0.9rem !important;
}

.fs8 {
  font-size: 0.8rem !important;
}

.fs7 {
  font-size: 0.7rem !important;
}

.fs6 {
  font-size: 0.6rem !important;
}

@media screen and (max-width: 767px) {
  .spfs50 {
    font-size: 6.6666666667vw !important;
  }
  .spfs49 {
    font-size: 6.5333333333vw !important;
  }
  .spfs48 {
    font-size: 6.4vw !important;
  }
  .spfs47 {
    font-size: 6.2666666667vw !important;
  }
  .spfs46 {
    font-size: 6.1333333333vw !important;
  }
  .spfs45 {
    font-size: 6vw !important;
  }
  .spfs44 {
    font-size: 5.8666666667vw !important;
  }
  .spfs43 {
    font-size: 5.7333333333vw !important;
  }
  .spfs42 {
    font-size: 5.6vw !important;
  }
  .spfs41 {
    font-size: 5.4666666667vw !important;
  }
  .spfs40 {
    font-size: 5.3333333333vw !important;
  }
  .spfs39 {
    font-size: 5.2vw !important;
  }
  .spfs38 {
    font-size: 5.0666666667vw !important;
  }
  .spfs37 {
    font-size: 4.9333333333vw !important;
  }
  .spfs36 {
    font-size: 4.8vw !important;
  }
  .spfs35 {
    font-size: 4.6666666667vw !important;
  }
  .spfs34 {
    font-size: 4.5333333333vw !important;
  }
  .spfs33 {
    font-size: 4.4vw !important;
  }
  .spfs32 {
    font-size: 4.2666666667vw !important;
  }
  .spfs31 {
    font-size: 4.1333333333vw !important;
  }
  .spfs30 {
    font-size: 4vw !important;
  }
  .spfs29 {
    font-size: 3.8666666667vw !important;
  }
  .spfs28 {
    font-size: 3.7333333333vw !important;
  }
  .spfs27 {
    font-size: 3.6vw !important;
  }
  .spfs26 {
    font-size: 3.4666666667vw !important;
  }
  .spfs25 {
    font-size: 3.3333333333vw !important;
  }
  .spfs24 {
    font-size: 3.2vw !important;
  }
  .spfs23 {
    font-size: 3.0666666667vw !important;
  }
  .spfs22 {
    font-size: 2.9333333333vw !important;
  }
  .spfs21 {
    font-size: 2.8vw !important;
  }
  .spfs20 {
    font-size: 2.6666666667vw !important;
  }
  .spfs19 {
    font-size: 2.5333333333vw !important;
  }
  .spfs18 {
    font-size: 2.4vw !important;
  }
  .spfs17 {
    font-size: 2.2666666667vw !important;
  }
  .spfs16 {
    font-size: 2.1333333333vw !important;
  }
  .spfs15 {
    font-size: 2vw !important;
  }
  .spfs14 {
    font-size: 1.8666666667vw !important;
  }
  .spfs13 {
    font-size: 1.7333333333vw !important;
  }
  .spfs12 {
    font-size: 1.6vw !important;
  }
  .spfs11 {
    font-size: 1.4666666667vw !important;
  }
  .spfs10 {
    font-size: 1.3333333333vw !important;
  }
  .spfs9 {
    font-size: 1.2vw !important;
  }
  .spfs8 {
    font-size: 1.0666666667vw !important;
  }
  .spfs7 {
    font-size: 0.9333333333vw !important;
  }
  .spfs6 {
    font-size: 0.8vw !important;
  }
}
/* clearfix
---------------------------------------------------------------------------- */
.clearfix {
  zoom: 1;
}

.clearfix:after {
  content: "";
  clear: both;
  display: block;
}

/* テキスト
---------------------------------------------------------------------------- */
.tal {
  text-align: left !important;
}

.tac {
  text-align: center !important;
}

.tar {
  text-align: right !important;
}

.fwb {
  font-weight: bold !important;
}

@media screen and (max-width: 767px) {
  .sptal {
    text-align: left !important;
  }
  .sptac {
    text-align: center !important;
  }
  .sptar {
    text-align: right !important;
  }
  .spfwb {
    font-weight: bold !important;
  }
}
/* マージン
---------------------------------------------------------------------------- */
.mt100 {
  margin-top: 10rem !important;
}

.mb100 {
  margin-bottom: 10rem !important;
}

.ml100 {
  margin-left: 10rem !important;
}

.mr100 {
  margin-right: 10rem !important;
}

.mt95 {
  margin-top: 9.5rem !important;
}

.mb95 {
  margin-bottom: 9.5rem !important;
}

.ml95 {
  margin-left: 9.5rem !important;
}

.mr95 {
  margin-right: 9.5rem !important;
}

.mt90 {
  margin-top: 9rem !important;
}

.mb90 {
  margin-bottom: 9rem !important;
}

.ml90 {
  margin-left: 9rem !important;
}

.mr90 {
  margin-right: 9rem !important;
}

.mt85 {
  margin-top: 8.5rem !important;
}

.mb85 {
  margin-bottom: 8.5rem !important;
}

.ml85 {
  margin-left: 8.5rem !important;
}

.mr85 {
  margin-right: 8.5rem !important;
}

.mt80 {
  margin-top: 8rem !important;
}

.mb80 {
  margin-bottom: 8rem !important;
}

.ml80 {
  margin-left: 8rem !important;
}

.mr80 {
  margin-right: 8rem !important;
}

.mt75 {
  margin-top: 7.5rem !important;
}

.mb75 {
  margin-bottom: 7.5rem !important;
}

.ml75 {
  margin-left: 7.5rem !important;
}

.mr75 {
  margin-right: 7.5rem !important;
}

.mt70 {
  margin-top: 7rem !important;
}

.mb70 {
  margin-bottom: 7rem !important;
}

.ml70 {
  margin-left: 7rem !important;
}

.mr70 {
  margin-right: 7rem !important;
}

.mt65 {
  margin-top: 6.5rem !important;
}

.mb65 {
  margin-bottom: 6.5rem !important;
}

.ml65 {
  margin-left: 6.5rem !important;
}

.mr65 {
  margin-right: 6.5rem !important;
}

.mt60 {
  margin-top: 6rem !important;
}

.mb60 {
  margin-bottom: 6rem !important;
}

.ml60 {
  margin-left: 6rem !important;
}

.mr60 {
  margin-right: 6rem !important;
}

.mt55 {
  margin-top: 5.5rem !important;
}

.mb55 {
  margin-bottom: 5.5rem !important;
}

.ml55 {
  margin-left: 5.5rem !important;
}

.mr55 {
  margin-right: 5.5rem !important;
}

.mt50 {
  margin-top: 5rem !important;
}

.mb50 {
  margin-bottom: 5rem !important;
}

.ml50 {
  margin-left: 5rem !important;
}

.mr50 {
  margin-right: 5rem !important;
}

.mt45 {
  margin-top: 4.5rem !important;
}

.mb45 {
  margin-bottom: 4.5rem !important;
}

.ml45 {
  margin-left: 4.5rem !important;
}

.mr45 {
  margin-right: 4.5rem !important;
}

.mt40 {
  margin-top: 4rem !important;
}

.mb40 {
  margin-bottom: 4rem !important;
}

.ml40 {
  margin-left: 4rem !important;
}

.mr40 {
  margin-right: 4rem !important;
}

.mt35 {
  margin-top: 3.5rem !important;
}

.mb35 {
  margin-bottom: 3.5rem !important;
}

.ml35 {
  margin-left: 3.5rem !important;
}

.mr35 {
  margin-right: 3.5rem !important;
}

.mt30 {
  margin-top: 3rem !important;
}

.mb30 {
  margin-bottom: 3rem !important;
}

.ml30 {
  margin-left: 3rem !important;
}

.mr30 {
  margin-right: 3rem !important;
}

.mt25 {
  margin-top: 2.5rem !important;
}

.mb25 {
  margin-bottom: 2.5rem !important;
}

.ml25 {
  margin-left: 2.5rem !important;
}

.mr25 {
  margin-right: 2.5rem !important;
}

.mt20 {
  margin-top: 2rem !important;
}

.mb20 {
  margin-bottom: 2rem !important;
}

.ml20 {
  margin-left: 2rem !important;
}

.mr20 {
  margin-right: 2rem !important;
}

.mt15 {
  margin-top: 1.5rem !important;
}

.mb15 {
  margin-bottom: 1.5rem !important;
}

.ml15 {
  margin-left: 1.5rem !important;
}

.mr15 {
  margin-right: 1.5rem !important;
}

.mt10 {
  margin-top: 1rem !important;
}

.mb10 {
  margin-bottom: 1rem !important;
}

.ml10 {
  margin-left: 1rem !important;
}

.mr10 {
  margin-right: 1rem !important;
}

.mt5 {
  margin-top: 0.5rem !important;
}

.mb5 {
  margin-bottom: 0.5rem !important;
}

.ml5 {
  margin-left: 0.5rem !important;
}

.mr5 {
  margin-right: 0.5rem !important;
}

.mt0 {
  margin-top: 0rem !important;
}

.mb0 {
  margin-bottom: 0rem !important;
}

.ml0 {
  margin-left: 0rem !important;
}

.mr0 {
  margin-right: 0rem !important;
}

@media screen and (max-width: 767px) {
  .spmt100 {
    margin-top: 13.3333333333vw !important;
  }
  .spmb100 {
    margin-bottom: 13.3333333333vw !important;
  }
  .spml100 {
    margin-left: 13.3333333333vw !important;
  }
  .spmr100 {
    margin-right: 13.3333333333vw !important;
  }
  .spmt95 {
    margin-top: 12.6666666667vw !important;
  }
  .spmb95 {
    margin-bottom: 12.6666666667vw !important;
  }
  .spml95 {
    margin-left: 12.6666666667vw !important;
  }
  .spmr95 {
    margin-right: 12.6666666667vw !important;
  }
  .spmt90 {
    margin-top: 12vw !important;
  }
  .spmb90 {
    margin-bottom: 12vw !important;
  }
  .spml90 {
    margin-left: 12vw !important;
  }
  .spmr90 {
    margin-right: 12vw !important;
  }
  .spmt85 {
    margin-top: 11.3333333333vw !important;
  }
  .spmb85 {
    margin-bottom: 11.3333333333vw !important;
  }
  .spml85 {
    margin-left: 11.3333333333vw !important;
  }
  .spmr85 {
    margin-right: 11.3333333333vw !important;
  }
  .spmt80 {
    margin-top: 10.6666666667vw !important;
  }
  .spmb80 {
    margin-bottom: 10.6666666667vw !important;
  }
  .spml80 {
    margin-left: 10.6666666667vw !important;
  }
  .spmr80 {
    margin-right: 10.6666666667vw !important;
  }
  .spmt75 {
    margin-top: 10vw !important;
  }
  .spmb75 {
    margin-bottom: 10vw !important;
  }
  .spml75 {
    margin-left: 10vw !important;
  }
  .spmr75 {
    margin-right: 10vw !important;
  }
  .spmt70 {
    margin-top: 9.3333333333vw !important;
  }
  .spmb70 {
    margin-bottom: 9.3333333333vw !important;
  }
  .spml70 {
    margin-left: 9.3333333333vw !important;
  }
  .spmr70 {
    margin-right: 9.3333333333vw !important;
  }
  .spmt65 {
    margin-top: 8.6666666667vw !important;
  }
  .spmb65 {
    margin-bottom: 8.6666666667vw !important;
  }
  .spml65 {
    margin-left: 8.6666666667vw !important;
  }
  .spmr65 {
    margin-right: 8.6666666667vw !important;
  }
  .spmt60 {
    margin-top: 8vw !important;
  }
  .spmb60 {
    margin-bottom: 8vw !important;
  }
  .spml60 {
    margin-left: 8vw !important;
  }
  .spmr60 {
    margin-right: 8vw !important;
  }
  .spmt55 {
    margin-top: 7.3333333333vw !important;
  }
  .spmb55 {
    margin-bottom: 7.3333333333vw !important;
  }
  .spml55 {
    margin-left: 7.3333333333vw !important;
  }
  .spmr55 {
    margin-right: 7.3333333333vw !important;
  }
  .spmt50 {
    margin-top: 6.6666666667vw !important;
  }
  .spmb50 {
    margin-bottom: 6.6666666667vw !important;
  }
  .spml50 {
    margin-left: 6.6666666667vw !important;
  }
  .spmr50 {
    margin-right: 6.6666666667vw !important;
  }
  .spmt45 {
    margin-top: 6vw !important;
  }
  .spmb45 {
    margin-bottom: 6vw !important;
  }
  .spml45 {
    margin-left: 6vw !important;
  }
  .spmr45 {
    margin-right: 6vw !important;
  }
  .spmt40 {
    margin-top: 5.3333333333vw !important;
  }
  .spmb40 {
    margin-bottom: 5.3333333333vw !important;
  }
  .spml40 {
    margin-left: 5.3333333333vw !important;
  }
  .spmr40 {
    margin-right: 5.3333333333vw !important;
  }
  .spmt35 {
    margin-top: 4.6666666667vw !important;
  }
  .spmb35 {
    margin-bottom: 4.6666666667vw !important;
  }
  .spml35 {
    margin-left: 4.6666666667vw !important;
  }
  .spmr35 {
    margin-right: 4.6666666667vw !important;
  }
  .spmt30 {
    margin-top: 4vw !important;
  }
  .spmb30 {
    margin-bottom: 4vw !important;
  }
  .spml30 {
    margin-left: 4vw !important;
  }
  .spmr30 {
    margin-right: 4vw !important;
  }
  .spmt25 {
    margin-top: 3.3333333333vw !important;
  }
  .spmb25 {
    margin-bottom: 3.3333333333vw !important;
  }
  .spml25 {
    margin-left: 3.3333333333vw !important;
  }
  .spmr25 {
    margin-right: 3.3333333333vw !important;
  }
  .spmt20 {
    margin-top: 2.6666666667vw !important;
  }
  .spmb20 {
    margin-bottom: 2.6666666667vw !important;
  }
  .spml20 {
    margin-left: 2.6666666667vw !important;
  }
  .spmr20 {
    margin-right: 2.6666666667vw !important;
  }
  .spmt15 {
    margin-top: 2vw !important;
  }
  .spmb15 {
    margin-bottom: 2vw !important;
  }
  .spml15 {
    margin-left: 2vw !important;
  }
  .spmr15 {
    margin-right: 2vw !important;
  }
  .spmt10 {
    margin-top: 1.3333333333vw !important;
  }
  .spmb10 {
    margin-bottom: 1.3333333333vw !important;
  }
  .spml10 {
    margin-left: 1.3333333333vw !important;
  }
  .spmr10 {
    margin-right: 1.3333333333vw !important;
  }
  .spmt5 {
    margin-top: 0.6666666667vw !important;
  }
  .spmb5 {
    margin-bottom: 0.6666666667vw !important;
  }
  .spml5 {
    margin-left: 0.6666666667vw !important;
  }
  .spmr5 {
    margin-right: 0.6666666667vw !important;
  }
  .spmt0 {
    margin-top: 0vw !important;
  }
  .spmb0 {
    margin-bottom: 0vw !important;
  }
  .spml0 {
    margin-left: 0vw !important;
  }
  .spmr0 {
    margin-right: 0vw !important;
  }
}
/* パディング
---------------------------------------------------------------------------- */
.pt100 {
  padding-top: 10rem !important;
}

.pb100 {
  padding-bottom: 10rem !important;
}

.pl100 {
  padding-left: 10rem !important;
}

.pr100 {
  padding-right: 10rem !important;
}

.pt95 {
  padding-top: 9.5rem !important;
}

.pb95 {
  padding-bottom: 9.5rem !important;
}

.pl95 {
  padding-left: 9.5rem !important;
}

.pr95 {
  padding-right: 9.5rem !important;
}

.pt90 {
  padding-top: 9rem !important;
}

.pb90 {
  padding-bottom: 9rem !important;
}

.pl90 {
  padding-left: 9rem !important;
}

.pr90 {
  padding-right: 9rem !important;
}

.pt85 {
  padding-top: 8.5rem !important;
}

.pb85 {
  padding-bottom: 8.5rem !important;
}

.pl85 {
  padding-left: 8.5rem !important;
}

.pr85 {
  padding-right: 8.5rem !important;
}

.pt80 {
  padding-top: 8rem !important;
}

.pb80 {
  padding-bottom: 8rem !important;
}

.pl80 {
  padding-left: 8rem !important;
}

.pr80 {
  padding-right: 8rem !important;
}

.pt75 {
  padding-top: 7.5rem !important;
}

.pb75 {
  padding-bottom: 7.5rem !important;
}

.pl75 {
  padding-left: 7.5rem !important;
}

.pr75 {
  padding-right: 7.5rem !important;
}

.pt70 {
  padding-top: 7rem !important;
}

.pb70 {
  padding-bottom: 7rem !important;
}

.pl70 {
  padding-left: 7rem !important;
}

.pr70 {
  padding-right: 7rem !important;
}

.pt65 {
  padding-top: 6.5rem !important;
}

.pb65 {
  padding-bottom: 6.5rem !important;
}

.pl65 {
  padding-left: 6.5rem !important;
}

.pr65 {
  padding-right: 6.5rem !important;
}

.pt60 {
  padding-top: 6rem !important;
}

.pb60 {
  padding-bottom: 6rem !important;
}

.pl60 {
  padding-left: 6rem !important;
}

.pr60 {
  padding-right: 6rem !important;
}

.pt55 {
  padding-top: 5.5rem !important;
}

.pb55 {
  padding-bottom: 5.5rem !important;
}

.pl55 {
  padding-left: 5.5rem !important;
}

.pr55 {
  padding-right: 5.5rem !important;
}

.pt50 {
  padding-top: 5rem !important;
}

.pb50 {
  padding-bottom: 5rem !important;
}

.pl50 {
  padding-left: 5rem !important;
}

.pr50 {
  padding-right: 5rem !important;
}

.pt45 {
  padding-top: 4.5rem !important;
}

.pb45 {
  padding-bottom: 4.5rem !important;
}

.pl45 {
  padding-left: 4.5rem !important;
}

.pr45 {
  padding-right: 4.5rem !important;
}

.pt40 {
  padding-top: 4rem !important;
}

.pb40 {
  padding-bottom: 4rem !important;
}

.pl40 {
  padding-left: 4rem !important;
}

.pr40 {
  padding-right: 4rem !important;
}

.pt35 {
  padding-top: 3.5rem !important;
}

.pb35 {
  padding-bottom: 3.5rem !important;
}

.pl35 {
  padding-left: 3.5rem !important;
}

.pr35 {
  padding-right: 3.5rem !important;
}

.pt30 {
  padding-top: 3rem !important;
}

.pb30 {
  padding-bottom: 3rem !important;
}

.pl30 {
  padding-left: 3rem !important;
}

.pr30 {
  padding-right: 3rem !important;
}

.pt25 {
  padding-top: 2.5rem !important;
}

.pb25 {
  padding-bottom: 2.5rem !important;
}

.pl25 {
  padding-left: 2.5rem !important;
}

.pr25 {
  padding-right: 2.5rem !important;
}

.pt20 {
  padding-top: 2rem !important;
}

.pb20 {
  padding-bottom: 2rem !important;
}

.pl20 {
  padding-left: 2rem !important;
}

.pr20 {
  padding-right: 2rem !important;
}

.pt15 {
  padding-top: 1.5rem !important;
}

.pb15 {
  padding-bottom: 1.5rem !important;
}

.pl15 {
  padding-left: 1.5rem !important;
}

.pr15 {
  padding-right: 1.5rem !important;
}

.pt10 {
  padding-top: 1rem !important;
}

.pb10 {
  padding-bottom: 1rem !important;
}

.pl10 {
  padding-left: 1rem !important;
}

.pr10 {
  padding-right: 1rem !important;
}

.pt5 {
  padding-top: 0.5rem !important;
}

.pb5 {
  padding-bottom: 0.5rem !important;
}

.pl5 {
  padding-left: 0.5rem !important;
}

.pr5 {
  padding-right: 0.5rem !important;
}

.pt0 {
  padding-top: 0rem !important;
}

.pb0 {
  padding-bottom: 0rem !important;
}

.pl0 {
  padding-left: 0rem !important;
}

.pr0 {
  padding-right: 0rem !important;
}

@media screen and (max-width: 767px) {
  .sppt100 {
    padding-top: 13.3333333333vw !important;
  }
  .sppb100 {
    padding-bottom: 13.3333333333vw !important;
  }
  .sppl100 {
    padding-left: 13.3333333333vw !important;
  }
  .sppr100 {
    padding-right: 13.3333333333vw !important;
  }
  .sppt95 {
    padding-top: 12.6666666667vw !important;
  }
  .sppb95 {
    padding-bottom: 12.6666666667vw !important;
  }
  .sppl95 {
    padding-left: 12.6666666667vw !important;
  }
  .sppr95 {
    padding-right: 12.6666666667vw !important;
  }
  .sppt90 {
    padding-top: 12vw !important;
  }
  .sppb90 {
    padding-bottom: 12vw !important;
  }
  .sppl90 {
    padding-left: 12vw !important;
  }
  .sppr90 {
    padding-right: 12vw !important;
  }
  .sppt85 {
    padding-top: 11.3333333333vw !important;
  }
  .sppb85 {
    padding-bottom: 11.3333333333vw !important;
  }
  .sppl85 {
    padding-left: 11.3333333333vw !important;
  }
  .sppr85 {
    padding-right: 11.3333333333vw !important;
  }
  .sppt80 {
    padding-top: 10.6666666667vw !important;
  }
  .sppb80 {
    padding-bottom: 10.6666666667vw !important;
  }
  .sppl80 {
    padding-left: 10.6666666667vw !important;
  }
  .sppr80 {
    padding-right: 10.6666666667vw !important;
  }
  .sppt75 {
    padding-top: 10vw !important;
  }
  .sppb75 {
    padding-bottom: 10vw !important;
  }
  .sppl75 {
    padding-left: 10vw !important;
  }
  .sppr75 {
    padding-right: 10vw !important;
  }
  .sppt70 {
    padding-top: 9.3333333333vw !important;
  }
  .sppb70 {
    padding-bottom: 9.3333333333vw !important;
  }
  .sppl70 {
    padding-left: 9.3333333333vw !important;
  }
  .sppr70 {
    padding-right: 9.3333333333vw !important;
  }
  .sppt65 {
    padding-top: 8.6666666667vw !important;
  }
  .sppb65 {
    padding-bottom: 8.6666666667vw !important;
  }
  .sppl65 {
    padding-left: 8.6666666667vw !important;
  }
  .sppr65 {
    padding-right: 8.6666666667vw !important;
  }
  .sppt60 {
    padding-top: 8vw !important;
  }
  .sppb60 {
    padding-bottom: 8vw !important;
  }
  .sppl60 {
    padding-left: 8vw !important;
  }
  .sppr60 {
    padding-right: 8vw !important;
  }
  .sppt55 {
    padding-top: 7.3333333333vw !important;
  }
  .sppb55 {
    padding-bottom: 7.3333333333vw !important;
  }
  .sppl55 {
    padding-left: 7.3333333333vw !important;
  }
  .sppr55 {
    padding-right: 7.3333333333vw !important;
  }
  .sppt50 {
    padding-top: 6.6666666667vw !important;
  }
  .sppb50 {
    padding-bottom: 6.6666666667vw !important;
  }
  .sppl50 {
    padding-left: 6.6666666667vw !important;
  }
  .sppr50 {
    padding-right: 6.6666666667vw !important;
  }
  .sppt45 {
    padding-top: 6vw !important;
  }
  .sppb45 {
    padding-bottom: 6vw !important;
  }
  .sppl45 {
    padding-left: 6vw !important;
  }
  .sppr45 {
    padding-right: 6vw !important;
  }
  .sppt40 {
    padding-top: 5.3333333333vw !important;
  }
  .sppb40 {
    padding-bottom: 5.3333333333vw !important;
  }
  .sppl40 {
    padding-left: 5.3333333333vw !important;
  }
  .sppr40 {
    padding-right: 5.3333333333vw !important;
  }
  .sppt35 {
    padding-top: 4.6666666667vw !important;
  }
  .sppb35 {
    padding-bottom: 4.6666666667vw !important;
  }
  .sppl35 {
    padding-left: 4.6666666667vw !important;
  }
  .sppr35 {
    padding-right: 4.6666666667vw !important;
  }
  .sppt30 {
    padding-top: 4vw !important;
  }
  .sppb30 {
    padding-bottom: 4vw !important;
  }
  .sppl30 {
    padding-left: 4vw !important;
  }
  .sppr30 {
    padding-right: 4vw !important;
  }
  .sppt25 {
    padding-top: 3.3333333333vw !important;
  }
  .sppb25 {
    padding-bottom: 3.3333333333vw !important;
  }
  .sppl25 {
    padding-left: 3.3333333333vw !important;
  }
  .sppr25 {
    padding-right: 3.3333333333vw !important;
  }
  .sppt20 {
    padding-top: 2.6666666667vw !important;
  }
  .sppb20 {
    padding-bottom: 2.6666666667vw !important;
  }
  .sppl20 {
    padding-left: 2.6666666667vw !important;
  }
  .sppr20 {
    padding-right: 2.6666666667vw !important;
  }
  .sppt15 {
    padding-top: 2vw !important;
  }
  .sppb15 {
    padding-bottom: 2vw !important;
  }
  .sppl15 {
    padding-left: 2vw !important;
  }
  .sppr15 {
    padding-right: 2vw !important;
  }
  .sppt10 {
    padding-top: 1.3333333333vw !important;
  }
  .sppb10 {
    padding-bottom: 1.3333333333vw !important;
  }
  .sppl10 {
    padding-left: 1.3333333333vw !important;
  }
  .sppr10 {
    padding-right: 1.3333333333vw !important;
  }
  .sppt5 {
    padding-top: 0.6666666667vw !important;
  }
  .sppb5 {
    padding-bottom: 0.6666666667vw !important;
  }
  .sppl5 {
    padding-left: 0.6666666667vw !important;
  }
  .sppr5 {
    padding-right: 0.6666666667vw !important;
  }
  .sppt0 {
    padding-top: 0vw !important;
  }
  .sppb0 {
    padding-bottom: 0vw !important;
  }
  .sppl0 {
    padding-left: 0vw !important;
  }
  .sppr0 {
    padding-right: 0vw !important;
  }
}
/* 印刷設定
---------------------------------------------------------------------------- */
@media print {
  * html body {
    zoom: 70%;
  }
}
/* recruitページ以下
---------------------------------------------------------------------------- */
/*------------- l-recruit-bg -------------*/
.l-recruit-bg {
  padding-top: 4.6875vw;
  position: relative;
}

.l-recruit-bg::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -10;
  width: 100%;
  height: 100%;
  background-color: #F8F8F8;
}

@media screen and (max-width: 767px) {
  .l-recruit-bg {
    padding-top: 13.3333333333vw;
  }
}
/*------------- m-recruit-bottom -------------*/
.m-recruit-bottom {
  position: relative;
  z-index: 200;
}

.m-recruit-bottom-buttons {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
}

.m-recruit-bottom-btn {
  width: 100%;
  height: 23.4375vw;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  background-color: #242424;
  overflow: hidden;
  position: relative;
}
.m-recruit-bottom-btn::after {
  content: "";
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
  transition: opacity 0.3s ease 0s;
  z-index: 0;
}
.m-recruit-bottom-btn._01::after {
  background-image: linear-gradient(135deg, #E85400 0, #FFCE00 100%);
  opacity: 1;
}
.m-recruit-bottom-btn._02::after {
  background-image: linear-gradient(135deg, #CFA1E0 0, #4848AA 100%);
  opacity: 1;
}
@media (any-hover: hover) {
  .m-recruit-bottom-btn:hover::after {
    opacity: 0;
  }
  .m-recruit-bottom-btn:hover .img-default {
    opacity: 0;
  }
  .m-recruit-bottom-btn:hover .img-hover {
    opacity: 1;
  }
}

.m-recruit-bottom-btn-box {
  display: flex;
  flex-direction: column;
  gap: 2.0833333333vw;
}

.m-recruit-bottom-btn-box-img {
  position: relative;
  z-index: 1;
}
.m-recruit-bottom-btn-box-img._01 {
  width: 11.9010416667vw;
  aspect-ratio: 228.5/74;
}
.m-recruit-bottom-btn-box-img._02 {
  width: 18.1770833333vw;
  aspect-ratio: 349/73.25;
}
.m-recruit-bottom-btn-box-img img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center;
}
.m-recruit-bottom-btn-box-img .img-default {
  opacity: 1;
}
.m-recruit-bottom-btn-box-img .img-hover {
  position: absolute;
  inset: 0;
  opacity: 0;
}

.m-recruit-bottom-btn-box-txt {
  position: relative;
  z-index: 1;
  font-size: 1.8rem;
  line-height: 1.6666666667;
  font-weight: 500;
  font-size: 0.9375vw;
  color: #fff;
}

@media screen and (max-width: 767px) {
  .m-recruit-bottom-buttons {
    grid-template-columns: 1fr;
  }
  .m-recruit-bottom-btn {
    height: 72vw;
    align-items: initial;
    padding-inline: 6.6666666667vw;
  }
  .m-recruit-bottom-btn-box {
    gap: 9.3333333333vw;
  }
  .m-recruit-bottom-btn-box-img._01 {
    width: 39.1333333333vw;
    aspect-ratio: 146.75/50.25;
  }
  .m-recruit-bottom-btn-box-img._02 {
    width: 59.5333333333vw;
    aspect-ratio: 223.25/49.75;
  }
  .m-recruit-bottom-btn-box-txt {
    font-size: 4vw;
    line-height: 1.6666666667;
  }
}
/*------------- m-recruit-button -------------*/
.m-recruit-button {
  width: 100%;
  max-width: 62.5vw;
  margin-inline: auto;
  margin-bottom: 3.90625vw;
}

.m-recruit-btn {
  padding-block: 1.0416666667vw;
  padding-inline: 2.6041666667vw;
  border-radius: 0.5208333333vw;
  overflow: hidden;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-between;
  min-height: 7.8125vw;
}
@media (any-hover: hover) {
  .m-recruit-btn:hover::before {
    transform: scaleX(1);
    transform-origin: left;
  }
}

.m-recruit-btn::before,
.m-recruit-btn::after {
  content: "";
  position: absolute;
}

.m-recruit-btn::before {
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: -1;
  background-color: #E85400;
  transform: scaleX(0);
  transform-origin: right;
  transition: transform 0.3s ease 0s;
}

.m-recruit-btn::after {
  inset: 0;
  width: 100%;
  height: 100%;
  z-index: -2;
  background-color: #3B3B3B;
}

.m-recruit-btn-ttl {
  width: 9.0625vw;
  aspect-ratio: 174.75/40.25;
}
.m-recruit-btn-ttl img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center;
}

.m-recruit-btn-txt {
  display: flex;
  align-items: center;
  gap: 0 0.78125vw;
  color: #fff;
}
.m-recruit-btn-txt ._txt {
  font-size: 2.5rem;
  line-height: 1.44;
  font-weight: 400;
  font-size: 1.3020833333vw;
}
.m-recruit-btn-txt ._arrow {
  font-size: 4.5rem;
  line-height: 1;
  font-weight: 400;
  font-size: 2.34375vw;
}

@media screen and (max-width: 767px) {
  .m-recruit-button {
    max-width: initial;
    padding-inline: 6.6666666667vw;
    margin-bottom: 32vw;
  }
  .m-recruit-btn {
    padding-block: 8.8vw 4.5333333333vw;
    padding-inline: 5.3333333333vw;
    border-radius: 2.6666666667vw;
    flex-direction: column;
    align-items: initial;
    min-height: 40vw;
  }
  .m-recruit-btn-ttl {
    width: 36.2vw;
  }
  .m-recruit-btn-txt {
    justify-content: flex-end;
    gap: initial;
  }
  .m-recruit-btn-txt ._txt {
    font-size: 4vw;
    line-height: 1.4;
  }
  .m-recruit-btn-txt ._arrow {
    font-size: 4vw;
  }
}
/*------------- m-recruit-more-btn -------------*/
.m-recruit-more-btn {
  width: 8.3333333333vw;
  aspect-ratio: 1;
  border-radius: 50%;
  background-color: rgba(232, 84, 0, 0.8);
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0 0.15625vw;
  padding-left: 0.78125vw;
  color: #fff;
  transition: background-color 0.3s ease 0s, transform 0.3s ease 0s;
}
.m-recruit-more-btn ._txt {
  font-size: 2.6rem;
  line-height: 1;
  font-weight: 700;
  font-size: 1.3541666667vw;
  text-align: center;
}
.m-recruit-more-btn ._arrow {
  font-size: 2.6rem;
  line-height: 1;
  font-weight: 700;
  font-size: 1.3541666667vw;
}
@media (any-hover: hover) {
  .m-recruit-more-btn:hover {
    background-color: rgba(59, 59, 59, 0.9);
    transform: scale(1.15);
  }
}

@media screen and (max-width: 767px) {
  .m-recruit-more-btn {
    width: 30.1333333333vw;
    gap: 0 0.8vw;
    padding-left: 2.6666666667vw;
  }
  .m-recruit-more-btn ._txt {
    font-size: 5.3333333333vw;
  }
  .m-recruit-more-btn ._arrow {
    font-size: 5.3333333333vw;
  }
}
/*------------- m-recruit-lower-layer-ttl -------------*/
.m-recruit-lower-layer-ttl {
  margin-top: 7.2916666667vw;
}
.m-recruit-lower-layer-ttl._company {
  width: 22.7473958333vw;
  aspect-ratio: 436.75/79.75;
}
.m-recruit-lower-layer-ttl._jobs {
  width: 25.546875vw;
  aspect-ratio: 490.5/79.75;
}
.m-recruit-lower-layer-ttl._environment {
  width: 19.9479166667vw;
  aspect-ratio: 383/80;
}
.m-recruit-lower-layer-ttl._voices {
  width: 11.4453125vw;
  aspect-ratio: 219.75/79.25;
}
.m-recruit-lower-layer-ttl._requirements {
  width: 11.5494791667vw;
  aspect-ratio: 221.75/80;
}
.m-recruit-lower-layer-ttl img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center;
}

@media screen and (max-width: 767px) {
  .m-recruit-lower-layer-ttl {
    margin-top: 21.8666666667vw;
  }
  .m-recruit-lower-layer-ttl._company {
    width: 83.2vw;
  }
  .m-recruit-lower-layer-ttl._jobs {
    width: 62.8666666667vw;
    aspect-ratio: 235.75/106.75;
  }
  .m-recruit-lower-layer-ttl._environment {
    width: 72.8vw;
  }
  .m-recruit-lower-layer-ttl._voices {
    width: 41.8vw;
  }
  .m-recruit-lower-layer-ttl._requirements {
    width: 42.2666666667vw;
  }
}
/* m-entry
---------------------------------------------------------------------------- */
.m-entry {
  margin-top: 8.4375vw;
  padding-bottom: 8.8541666667vw;
}

.m-entry._entry {
  padding-bottom: 5.46875vw;
}

.m-entry-ttl {
  margin-inline: auto;
}
.m-entry-ttl._entry {
  width: 17.7317708333vw;
  aspect-ratio: 340.45/45;
}
.m-entry-ttl._newgrad {
  width: 32.5703125vw;
  aspect-ratio: 625.35/44.75;
}
.m-entry-ttl._career {
  width: 37.5833333333vw;
  aspect-ratio: 721.6/44.75;
}
.m-entry-ttl img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center;
}

.m-entry-items {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 0 0.78125vw;
  margin-top: 6.3541666667vw;
}

.m-entry-item {
  height: 4.84375vw;
  padding-inline: 2.6041666667vw;
  background-color: #3B3B3B;
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 0.2604166667vw;
  clip-path: polygon(calc(100% - 1.5625vw) 0, 100% 50%, calc(100% - 1.5625vw) 100%, 0 100%, 0 0);
}
.m-entry-item._bgColorOrange {
  background-color: #E85400;
}
.m-entry-item._bgColorGray {
  background-color: #B1B1B1;
}

.m-entry-item-step {
  font-size: 1.8rem;
  line-height: 1;
  font-weight: 700;
  font-size: 0.9375vw;
  color: #fff;
}

.m-entry-item-txt {
  font-size: 2.5rem;
  line-height: 1;
  font-weight: 700;
  font-size: 1.3020833333vw;
  color: #fff;
}

.m-entry-box {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.9375vw;
  margin-top: 2.7083333333vw;
}

.m-entry-box-txt {
  font-size: 1.7rem;
  line-height: 1.4705882353;
  font-weight: 500;
  font-size: 0.8854166667vw;
  text-align: center;
}
.m-entry-box-txt span {
  color: #F80505;
}

.m-entry-complete {
  margin-top: 4.6875vw;
}

.m-entry-complete-txt01 {
  font-size: 3rem;
  line-height: 1.4666666667;
  font-weight: 700;
  font-size: 1.5625vw;
  text-align: center;
}

.m-entry-complete-txt02 {
  font-size: 1.8rem;
  line-height: 1.6666666667;
  font-weight: 500;
  font-size: 0.9375vw;
  text-align: center;
  margin-top: 2.6041666667vw;
}

.m-entry-complete-btn {
  display: block;
  font-size: 2rem;
  line-height: 1.25;
  font-weight: 500;
  font-size: 1.0416666667vw;
  color: #E85400;
  width: fit-content;
  margin-inline: auto;
  margin-top: 5.0520833333vw;
}

.m-entry-container {
  width: 100%;
  height: 25vw;
  padding-block: 2.5vw;
  padding-inline: 2.6041666667vw;
  background-color: #fff;
  margin-top: 6.875vw;
}

.m-entry-inner {
  height: 100%;
  overflow-y: auto;
}

.m-entry-groups {
  display: flex;
  flex-direction: column;
  gap: 2.34375vw;
}

.m-entry-group-txt {
  font-size: 1.8rem;
  line-height: 1.8888888889;
  font-weight: 500;
  font-size: 0.9375vw;
}
.m-entry-group-txt em {
  font-weight: 700;
}
.m-entry-group-txt ._ib {
  display: inline-block;
}
.m-entry-group-txt ._pl {
  display: inline-block;
  padding-left: 1em;
}

.m-entry-group-ttl {
  font-size: 2rem;
  line-height: 1.7;
  font-weight: 700;
  font-size: 1.0416666667vw;
}

.m-entry-group-box {
  padding-inline: 1.09375vw 1em;
  margin-top: 0.15625vw;
}

.m-entry-group-box-txt {
  font-size: 1.8rem;
  line-height: 1.8888888889;
  font-weight: 500;
  font-size: 0.9375vw;
}

.m-entry-group-box-list {
  font-size: 1.8rem;
  line-height: 1.8888888889;
  font-weight: 500;
  font-size: 0.9375vw;
  padding-left: 1em;
  text-indent: -1em;
}

@media screen and (max-width: 767px) {
  .m-entry {
    margin-top: 38.1333333333vw;
    padding-bottom: 32vw;
  }
  .m-entry._entry {
    padding-bottom: 40vw;
  }
  .m-entry-ttl._entry {
    width: 72.6266666667vw;
  }
  .m-entry-ttl._newgrad {
    width: 67.7333333333vw;
    aspect-ratio: 254/65.75;
  }
  .m-entry-ttl._career {
    width: 67.7333333333vw;
    aspect-ratio: 254/65.75;
  }
  .m-entry-items {
    gap: 0 1.3333333333vw;
    margin-top: 16vw;
  }
  .m-entry-item {
    height: 10.6666666667vw;
    padding-inline: 1.8666666667vw;
    gap: 0.8vw;
    clip-path: polygon(calc(100% - 2.4vw) 0, 100% 50%, calc(100% - 2.4vw) 100%, 0 100%, 0 0);
  }
  .m-entry-item-step {
    font-size: 2.1333333333vw;
  }
  .m-entry-item-txt {
    font-size: 3.2vw;
  }
  .m-entry-box {
    gap: 8vw;
    margin-top: 8vw;
  }
  .m-entry-box-txt {
    font-size: 4vw;
    line-height: 1.6666666667;
  }
  .m-entry-complete {
    margin-top: 10.6666666667vw;
  }
  .m-entry-complete-txt01 {
    font-size: 5.3333333333vw;
    line-height: 1.25;
  }
  .m-entry-complete-txt02 {
    font-size: 4.5333333333vw;
    line-height: 1.7647058824;
    margin-top: 7.4666666667vw;
  }
  .m-entry-complete-btn {
    font-size: 4.8vw;
    margin-top: 18.6666666667vw;
  }
  .m-entry-container {
    height: 128vw;
    padding-block: 12vw;
    padding-inline: 5.3333333333vw;
    margin-top: 32.5333333333vw;
  }
  .m-entry-groups {
    gap: 12vw;
  }
  .m-entry-group-txt {
    font-size: 4vw;
    line-height: 2.2666666667;
    padding-inline: 0 1em;
  }
  .m-entry-group-txt span {
    padding-left: initial;
  }
  .m-entry-group-ttl {
    font-size: 5.3333333333vw;
  }
  .m-entry-group-box {
    padding-inline: 5.6vw 1em;
    margin-top: 0.8vw;
  }
  .m-entry-group-box-txt {
    font-size: 4vw;
    line-height: 2.2666666667;
  }
  .m-entry-group-box-list {
    font-size: 4vw;
    line-height: 2.2666666667;
  }
}
/* m-entry-contactForm
---------------------------------------------------------------------------- */
.m-entry-contactForm {
  margin-top: 2.6041666667vw;
}

.m-entry-contactForm-container {
  padding-block: 4.6875vw 5.2083333333vw;
  padding-inline: 6.6145833333vw;
  background-color: #fff;
}

.m-entry-contactForm-container._confirm {
  padding-block: 5.9895833333vw 5.7291666667vw;
}

.m-entry-contactForm-items {
  display: flex;
  flex-direction: column;
  gap: 3.0729166667vw;
}

.m-entry-contactForm-items._confirm {
  gap: 1.9270833333vw;
}

.m-entry-contactForm-item {
  display: flex;
  align-items: flex-start;
}

.m-entry-contactForm-item._mt {
  margin-top: -1.3020833333vw;
}

.m-entry-contactForm-item._file {
  margin-top: 3.125vw;
}

.m-entry-contactForm-label {
  flex: 1;
  padding-block: 0.5208333333vw;
  display: flex;
  align-items: center;
}

.m-entry-contactForm-label._alignSelf {
  align-self: flex-end;
}

.m-entry-contactForm-label._address {
  padding-top: 1.9270833333vw;
}

.m-entry-contactForm-label._confirm {
  padding-block: initial;
}

.m-entry-contactForm-label-str {
  font-size: 1.8rem;
  line-height: 1.6666666667;
  font-weight: 700;
  font-size: 0.9375vw;
}

.m-entry-contactForm-label-str._file {
  color: #FF0000;
}

.m-entry-contactForm-label-required {
  font-size: 1.8rem;
  line-height: 1.6666666667;
  font-weight: 700;
  font-size: 0.9375vw;
  color: #FF0000;
  display: inline-block;
  margin-left: 0.4166666667vw;
}

.m-entry-contactForm-inputBox {
  width: 41.6666666667vw;
}

.m-entry-contactForm-inputBox-inner {
  display: flex;
  align-items: center;
  gap: 0 1.0416666667vw;
}

.m-entry-contactForm-inputBox-inner._confirm {
  gap: 0 3.125vw;
}

.m-entry-contactForm-inputBoxBox {
  width: 100%;
}

.m-entry-contactForm-inputBoxBox._post {
  display: flex;
  flex-direction: column;
  width: fit-content;
}

.m-entry-contactForm-inputBoxBox-txt {
  font-size: 1.5rem;
  line-height: 2;
  font-weight: 400;
  font-size: 0.78125vw;
}

.m-entry-contactForm-inputBox-lists {
  margin-top: 0.2604166667vw;
}

.m-entry-contactForm-inputBox-list {
  font-size: 1.5rem;
  line-height: 1.5;
  font-weight: 400;
  font-size: 0.78125vw;
  padding-left: 1em;
  text-indent: -1em;
}

.m-entry-contactForm-inputWrap-select {
  width: fit-content;
  position: relative;
}

.m-entry-contactForm-inputWrap-select::after {
  content: "";
  position: absolute;
  top: 0.7291666667vw;
  right: 1.0416666667vw;
  width: 0.6770833333vw;
  aspect-ratio: 1;
  border-bottom: 1px solid #707070;
  border-right: 1px solid #707070;
  transform: rotate(45deg);
  pointer-events: none;
}

.m-entry-contactForm-input {
  font-size: 1.5rem;
  line-height: 2;
  font-weight: 400;
  font-size: 0.78125vw;
  width: 100%;
  padding-block: 0.4166666667vw 0.5208333333vw;
  padding-inline: 1.0416666667vw;
  background-color: #EFEFEF;
  border: 1px solid #707070;
  border-radius: 0.1041666667vw;
}

.m-entry-contactForm-input::placeholder {
  color: rgba(59, 59, 59, 0.3);
}

.m-entry-contactForm-input._select {
  width: 20.3125vw;
}

.m-entry-contactForm-input._textarea {
  resize: vertical;
  white-space: pre-wrap;
  min-height: 7.8125vw;
}

.m-entry-contactForm-input._file {
  border-style: dashed;
  background-color: transparent;
}

.m-entry-contactForm-input._post {
  width: 20.3125vw;
}

.m-entry-contactForm-input._file {
  background-color: #fff;
  border: 1px dashed #707070;
}

.m-entry-contactForm-inputAddress {
  display: flex;
  flex-direction: column;
  gap: 1.5625vw;
}

.m-entry-contactForm-inputAddress._confirm {
  gap: 1.875vw;
}

.m-entry-contactForm-inputAddress-post {
  display: flex;
  align-items: flex-end;
  gap: 0 1.0416666667vw;
}

.m-entry-contactForm-inputAddress-post-btn {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 6.7708333333vw;
  height: 2.6041666667vw;
  background-color: #fff;
  border: 1px solid #707070;
  border-radius: 0.1041666667vw;
  font-size: 1.5rem;
  line-height: 2;
  font-weight: 400;
  color: #3B3B3B;
  cursor: pointer;
}

.m-entry-contactForm-acceptance {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.5208333333vw;
  margin-inline: auto;
  font-size: 1.5rem;
  line-height: 2;
  font-weight: 700;
  font-size: 0.78125vw;
  text-align: center;
  margin-top: 1.5625vw;
}

[type=checkbox] {
  margin: 0;
  width: 1.3020833333vw;
  height: 1.3020833333vw;
  position: relative;
}

[type=checkbox]::before,
[type=checkbox]::after {
  content: "";
  position: absolute;
  box-sizing: border-box;
}

[type=checkbox]::before {
  width: 100%;
  height: 100%;
  background-color: #fff;
  border: 1px solid #707070;
  border-radius: 0.2604166667vw;
}

[type=checkbox]::after {
  border-bottom: 0.15625vw solid #3B3B3B;
  border-left: 0.15625vw solid #3B3B3B;
  opacity: 0;
  height: 0.5208333333vw;
  width: 1.3020833333vw;
  top: 25%;
  left: 65%;
  transform: translate(-50%, -50%) rotate(-45deg);
}

[type=checkbox]:checked::after {
  opacity: 1;
}

.m-entry-contactForm-buttonArea {
  position: relative;
}

.m-entry-contactForm-button {
  width: 13.0208333333vw;
  margin-inline: auto;
  margin-top: 5.2083333333vw;
}
.m-entry-contactForm-button._entry {
  margin-top: 1.0416666667vw;
}

.m-entry-contactForm-button [type=submit],
.m-entry-contactForm-button a {
  font-size: 1.5rem;
  line-height: 2;
  font-weight: 700;
  font-size: 0.78125vw;
  color: #fff;
  width: 100%;
  height: 2.6041666667vw;
  border-radius: 0.2604166667vw;
  background-color: #3B3B3B;
  display: flex;
  align-items: center;
  justify-content: center;
  padding-block: 0;
  padding-inline: 0;
  cursor: pointer;
}
.m-entry-contactForm-button [type=submit]:disabled, .m-entry-contactForm-button [type=submit].disabled,
.m-entry-contactForm-button a:disabled,
.m-entry-contactForm-button a.disabled {
  background-color: #B1B1B1;
  pointer-events: none;
  cursor: not-allowed;
}

.m-entry-contactForm-button-reverse {
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  width: fit-content;
  height: auto;
}

.m-entry-contactForm-button-reverse::before {
  content: "";
  position: absolute;
  top: 0.5208333333vw;
  left: 0.2604166667vw;
  z-index: 1;
  width: 0.4166666667vw;
  aspect-ratio: 1;
  border-left: 0.1041666667vw solid #3B3B3B;
  border-bottom: 0.1041666667vw solid #3B3B3B;
  transform: rotate(45deg);
  pointer-events: none;
}

.m-entry-contactForm-button-reverse [type=button] {
  font-size: 1.6rem;
  line-height: 1.8;
  letter-spacing: 0.05em;
  font-weight: 700;
  font-size: 0.8333333333vw;
  padding-left: 1.0416666667vw;
  cursor: pointer;
  transition: opacity 0.3s ease 0s;
}
.m-entry-contactForm-button-reverse [type=button]:hover {
  border-color: transparent;
  opacity: 0.8;
}

.m-entry-contactForm-inputBox-confirm,
.m-entry-contactForm-inputBoxBox-confirm {
  font-size: 1.5rem;
  line-height: 2;
  font-weight: 400;
  font-size: 0.78125vw;
}

@media screen and (max-width: 767px) {
  .m-entry-contactForm {
    margin-top: 12vw;
  }
  .m-entry-contactForm-container {
    padding-block: 8vw 26.6666666667vw;
    padding-inline: 5.3333333333vw;
  }
  .m-entry-contactForm-container._confirm {
    padding-block: 8vw 26.6666666667vw;
  }
  .m-entry-contactForm-items {
    gap: 6.9333333333vw;
  }
  .m-entry-contactForm-items._confirm {
    gap: 9.3333333333vw;
  }
  .m-entry-contactForm-item {
    flex-direction: column;
    gap: initial;
  }
  .m-entry-contactForm-item._mt {
    margin-top: initial;
  }
  .m-entry-contactForm-item._spmt {
    margin-top: 7.4666666667vw;
  }
  .m-entry-contactForm-item._confirm {
    gap: 4vw;
  }
  .m-entry-contactForm-item._file {
    margin-top: 5.3333333333vw;
  }
  .m-entry-contactForm-label,
  .m-entry-contactForm-label._address {
    padding-block: initial;
  }
  .m-entry-contactForm-label._alignSelf {
    align-self: initial;
  }
  .m-entry-contactForm-label-str {
    font-size: 4vw;
    line-height: 2;
  }
  .m-entry-contactForm-label-required {
    font-size: 4vw;
    line-height: 2;
    margin-left: 1.3333333333vw;
  }
  .m-entry-contactForm-inputBox {
    width: 100%;
  }
  .m-entry-contactForm-inputBox-inner {
    flex-direction: column;
    align-items: initial;
    gap: 4vw;
  }
  .m-entry-contactForm-inputBox-inner._confirm {
    gap: 2.9333333333vw;
  }
  .m-entry-contactForm-inputBoxBox._post {
    width: 100%;
  }
  .m-entry-contactForm-inputBoxBox-txt {
    font-size: 4vw;
  }
  .m-entry-contactForm-inputBox-lists {
    margin-top: 1.3333333333vw;
  }
  .m-entry-contactForm-inputBox-list {
    font-size: 4vw;
  }
  .m-entry-contactForm-inputWrap-select {
    width: 100%;
  }
  .m-entry-contactForm-inputWrap-select::after {
    top: 3.7333333333vw;
    right: 5.3333333333vw;
    width: 3.4666666667vw;
  }
  .m-entry-contactForm-input {
    font-size: 4vw;
    padding-block: 2.1333333333vw 2.6666666667vw;
    padding-inline: 5.3333333333vw;
    border-radius: 0.5333333333vw;
  }
  .m-entry-contactForm-input._select {
    width: 100%;
  }
  .m-entry-contactForm-input._textarea {
    min-height: 53.3333333333vw;
  }
  .m-entry-contactForm-input._post {
    width: 100%;
  }
  .m-entry-contactForm-inputAddress {
    gap: 2.6666666667vw;
  }
  .m-entry-contactForm-inputAddress-post {
    flex-direction: column;
    align-items: center;
    gap: 5.3333333333vw;
  }
  .m-entry-contactForm-inputAddress-post-btn {
    width: 34.6666666667vw;
    height: 13.3333333333vw;
    border-radius: 0.5333333333vw;
    font-size: 4vw;
  }
  .m-entry-contactForm-acceptance {
    gap: 4vw;
    font-size: 4vw;
    margin-top: 8vw;
  }
  [type=checkbox] {
    width: 6.6666666667vw;
    height: 6.6666666667vw;
  }
  [type=checkbox]::before {
    border-radius: 1.3333333333vw;
  }
  [type=checkbox]::after {
    border-width: 0.5333333333vw;
    height: 2.6666666667vw;
    width: 5.3333333333vw;
  }
  .m-entry-contactForm-buttonArea {
    display: flex;
    flex-direction: column-reverse;
    align-items: center;
    gap: 8vw;
  }
  .m-entry-contactForm-button {
    width: 66.6666666667vw;
    margin-top: 18.6666666667vw;
  }
  .m-entry-contactForm-button._entry {
    margin-top: 10.6666666667vw;
  }
  .m-entry-contactForm-button [type=submit],
  .m-entry-contactForm-button a {
    height: 13.3333333333vw;
    border-radius: 1.3333333333vw;
    font-size: 4vw;
  }
  .m-entry-contactForm-button-reverse {
    position: relative;
    top: initial;
    left: initial;
    transform: initial;
  }
  .m-entry-contactForm-button-reverse::before {
    top: 2.6666666667vw;
    left: 1.3333333333vw;
    width: 1.8666666667vw;
    border-width: 0.5333333333vw;
  }
  .m-entry-contactForm-button-reverse [type=button] {
    font-size: 4vw;
    padding-left: 5.3333333333vw;
  }
  .m-entry-contactForm-inputBox-confirm,
  .m-entry-contactForm-inputBoxBox-confirm {
    font-size: 4vw;
    padding-left: 1.3em;
  }
}
/* wpcf7
---------------------------------------------------------------------------- */
.m-entry-contactForm-acceptance .wpcf7-list-item label {
  display: flex;
  align-items: center;
  gap: 0.5208333333vw;
}

@media screen and (max-width: 767px) {
  .m-entry-contactForm-acceptance .wpcf7-list-item label {
    gap: 4vw;
  }
}
/* m-voices
---------------------------------------------------------------------------- */
.m-voices {
  margin-top: 5.7291666667vw;
  padding-bottom: 11.4583333333vw;
}

.m-voices-ttl._01 {
  width: 10.6770833333vw;
  aspect-ratio: 205/31;
}
.m-voices-ttl._02 {
  width: 8.9713541667vw;
  aspect-ratio: 172.25/31.25;
}
.m-voices-ttl._03 {
  width: 16.0286458333vw;
  aspect-ratio: 307.75/31.25;
}
.m-voices-ttl img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center;
}

.m-voices-wrap {
  margin-block: 4.6875vw 5.8854166667vw;
  position: relative;
}

.m-voices-wrap-img {
  width: 100%;
  aspect-ratio: 1200/600;
}
.m-voices-wrap-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

.m-voices-wrap-txtVerticalImg {
  position: absolute;
  z-index: 1;
  top: -2.0833333333vw;
}
.m-voices-wrap-txtVerticalImg._01 {
  left: 7.2916666667vw;
  width: 8.8541666667vw;
  aspect-ratio: 170/655;
}
.m-voices-wrap-txtVerticalImg._02 {
  left: 6.25vw;
  width: 11.9791666667vw;
  aspect-ratio: 230/687.25;
}
.m-voices-wrap-txtVerticalImg._03 {
  left: 9.375vw;
  width: 5.7291666667vw;
  aspect-ratio: 110/665.25;
}
.m-voices-wrap-txtVerticalImg img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center;
}

.m-voices-wrap-txtImg {
  position: absolute;
  z-index: 1;
  top: calc(100% + 0.5208333333vw);
  right: 0;
}
.m-voices-wrap-txtImg._01 {
  width: 14.7395833333vw;
  aspect-ratio: 283/90;
}
.m-voices-wrap-txtImg._02 {
  width: 14.53125vw;
  aspect-ratio: 279/90;
}
.m-voices-wrap-txtImg._03 {
  width: 19.1145833333vw;
  aspect-ratio: 367/90;
}
.m-voices-wrap-txtImg img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center;
}

.m-voices-group {
  display: flex;
  align-items: center;
  gap: 0 2.5vw;
}

.m-voices-group-wrap {
  flex: 1;
}

.m-voices-group-wrap._03 {
  flex: initial;
  width: calc(100% - 27.5vw);
}

.m-voices-group-txt {
  font-size: 1.6rem;
  line-height: 1.875;
  font-weight: 700;
  font-size: 0.8333333333vw;
  margin-bottom: 4.6875vw;
}

.m-voices-group-read {
  margin-left: 0.9375vw;
}
.m-voices-group-read._01_01 {
  width: 29.609375vw;
  aspect-ratio: 568.5/81.25;
}
.m-voices-group-read._01_02 {
  width: 32.4869791667vw;
  aspect-ratio: 623.75/81.25;
}
.m-voices-group-read._02_01 {
  width: 31.5104166667vw;
  aspect-ratio: 605/81.25;
}
.m-voices-group-read._02_02 {
  width: 30.9244791667vw;
  aspect-ratio: 593.75/81.25;
}
.m-voices-group-read._03_01 {
  width: 36.5625vw;
  aspect-ratio: 702/81.25;
  margin-left: initial;
}
.m-voices-group-read._03_02 {
  width: 30.625vw;
  aspect-ratio: 588/81.25;
}
.m-voices-group-read img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center;
}

.m-voices-group-boxes {
  display: flex;
  flex-direction: column;
  gap: 4.6875vw;
  margin-top: 5.2083333333vw;
}

.m-voices-group-box-ttl {
  font-size: 2rem;
  line-height: 1.5;
  font-weight: 400;
  font-size: 1.0416666667vw;
  color: #E85400;
  margin-bottom: 0.8854166667vw;
}

.m-voices-group-box-txt {
  font-size: 1.6rem;
  line-height: 1.875;
  font-weight: 700;
  font-size: 0.8333333333vw;
}

.m-voices-group-img {
  width: 25vw;
  aspect-ratio: 480/300;
}
.m-voices-group-img._mb {
  margin-bottom: 8.0729166667vw;
}
.m-voices-group-img._mt {
  margin-top: 10.6770833333vw;
}
.m-voices-group-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

.m-voices-image {
  width: 100%;
  aspect-ratio: 1200/300;
  margin-block: 7.2916666667vw 7.8125vw;
}
.m-voices-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

.m-voices-hedge {
  margin-top: 4.6875vw;
}

.m-voices-hedge-ttl {
  font-size: 2rem;
  line-height: 1.5;
  font-weight: 700;
  font-size: 1.0416666667vw;
  color: #E85400;
  margin-bottom: 0.9375vw;
}

.m-voices-hedge-container {
  overflow: hidden !important;
}

.m-voices-hedge-chart {
  width: 100%;
  aspect-ratio: 1200/160;
}
.m-voices-hedge-chart._aspect {
  aspect-ratio: 1200/186;
}
.m-voices-hedge-chart img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center;
}

.m-voices-items {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 0 2.6041666667vw;
  margin-top: 12.5vw;
}

.m-voices-item-link {
  display: block;
  position: relative;
}
@media (any-hover: hover) {
  .m-voices-item-link:hover .m-voices-item-img img {
    transform: scale(1.05);
  }
  .m-voices-item-link:hover .m-voices-item-box-arrow {
    background-color: #fff;
    color: #E85400;
    border-radius: 0.5208333333vw 0 0.5208333333vw 0;
  }
}

.m-voices-item-img {
  width: 100%;
  aspect-ratio: 575/270;
  border-radius: 1.0416666667vw 0 1.0416666667vw 0;
  overflow: hidden;
}
.m-voices-item-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  transition: transform 0.3s ease 0s;
}

.m-voices-item-box {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  gap: 0 0.5208333333vw;
  position: absolute;
  z-index: 1;
  left: 0;
  right: 0;
  bottom: 1.0416666667vw;
  padding-inline: 1.0416666667vw;
}

.m-voices-item-box-ttl._01 {
  width: 10.4166666667vw;
  aspect-ratio: 200/73;
}
.m-voices-item-box-ttl._02 {
  width: 8.8541666667vw;
  aspect-ratio: 170/73;
}
.m-voices-item-box-ttl._03 {
  width: 15.0520833333vw;
  aspect-ratio: 289/73;
}
.m-voices-item-box-ttl img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center;
}

.m-voices-item-box-arrow {
  width: 2.6041666667vw;
  aspect-ratio: 1;
  border: 1px solid #E85400;
  background-color: #E85400;
  font-size: 1.5rem;
  line-height: 1;
  font-weight: 700;
  font-size: 0.78125vw;
  color: #fff;
  display: flex;
  justify-content: center;
  align-items: center;
  transition: background-color 0.3s ease 0s, color 0.3s ease 0s, border-radius 0.3s ease 0s;
}

@media screen and (max-width: 767px) {
  .m-voices {
    margin-top: 33.8666666667vw;
    padding-bottom: 60.5333333333vw;
  }
  .m-voices-ttl._01 {
    width: 39.2vw;
  }
  .m-voices-ttl._02 {
    width: 39.2vw;
  }
  .m-voices-ttl._03 {
    width: 58.6vw;
  }
  .m-voices-wrap {
    margin-block: 18.6666666667vw 25.8666666667vw;
  }
  .m-voices-wrap-img {
    aspect-ratio: 325/450;
  }
  .m-voices-wrap-txtVerticalImg {
    top: -5.3333333333vw;
  }
  .m-voices-wrap-txtVerticalImg._01 {
    left: -2.6666666667vw;
    width: 25.5333333333vw;
  }
  .m-voices-wrap-txtVerticalImg._02 {
    left: -2.6666666667vw;
    width: 34.5333333333vw;
  }
  .m-voices-wrap-txtVerticalImg._03 {
    left: -2.6666666667vw;
    width: 16.5333333333vw;
  }
  .m-voices-wrap-txtImg {
    top: initial;
    bottom: -4.5333333333vw;
    right: -2.6666666667vw;
  }
  .m-voices-wrap-txtImg._01 {
    width: 64.6666666667vw;
    aspect-ratio: 242.5/70.75;
  }
  .m-voices-wrap-txtImg._02 {
    width: 66.1333333333vw;
    aspect-ratio: 248/71;
  }
  .m-voices-wrap-txtImg._03 {
    width: 81.0666666667vw;
    aspect-ratio: 304/71;
  }
  .m-voices-group {
    flex-direction: column;
    align-items: initial;
    gap: initial;
  }
  .m-voices-group-wrap {
    display: contents;
  }
  .m-voices-group-txt {
    font-size: 4vw;
    line-height: 2;
    margin-bottom: 22.6666666667vw;
    order: 1;
  }
  .m-voices-group-read {
    margin-left: 4vw;
    order: 2;
  }
  .m-voices-group-read._01_01 {
    width: 72.8666666667vw;
    aspect-ratio: 273.25/142.5;
  }
  .m-voices-group-read._01_02 {
    width: 73.6vw;
    aspect-ratio: 276/142.5;
  }
  .m-voices-group-read._02_01 {
    width: 100%;
    aspect-ratio: 316/142.5;
    margin-left: initial;
  }
  .m-voices-group-read._02_02 {
    width: 78.1333333333vw;
    aspect-ratio: 293/142.5;
  }
  .m-voices-group-read._03_01 {
    width: 100%;
    aspect-ratio: 318/142.5;
  }
  .m-voices-group-read._03_02 {
    width: 78.8666666667vw;
    aspect-ratio: 295.75/142.5;
  }
  .m-voices-group-boxes {
    gap: 24.8vw;
    margin-top: 23.2vw;
    order: 4;
  }
  .m-voices-group-box-ttl {
    font-size: 4.8vw;
    line-height: 1.6666666667;
    margin-bottom: 3.4666666667vw;
  }
  .m-voices-group-box-txt {
    font-size: 4vw;
    line-height: 2;
  }
  .m-voices-group-img {
    width: 100%;
    order: 3;
    margin-top: 24vw;
  }
  .m-voices-group-img._mb {
    margin-bottom: initial;
  }
  .m-voices-group-img._mt {
    margin-top: 24vw;
  }
  .m-voices-image {
    aspect-ratio: 325/110;
    margin-block: 23.2vw 24vw;
  }
  .m-voices-hedge {
    margin-top: 26.6666666667vw;
  }
  .m-voices-hedge-ttl {
    font-size: 5.3333333333vw;
    margin-bottom: 4.8vw;
  }
  .m-voices-hedge-container {
    overflow-x: auto !important;
  }
  .m-voices-hedge-chart {
    width: 320vw;
  }
  .m-voices-items {
    grid-template-columns: 1fr;
    gap: 17.8666666667vw;
    margin-top: 66.6666666667vw;
  }
  .m-voices-item-imgBox {
    padding-inline: 2.1333333333vw;
  }
  .m-voices-item-img {
    aspect-ratio: 309/163;
    border-radius: 5.3333333333vw 0 5.3333333333vw 0;
  }
  .m-voices-item-img img {
    object-position: center 20%;
  }
  .m-voices-item-box {
    gap: 0 2.6666666667vw;
    bottom: -2.1333333333vw;
    padding-inline: initial;
  }
  .m-voices-item-box-ttl._01 {
    width: 32.5333333333vw;
  }
  .m-voices-item-box-ttl._02 {
    width: 28vw;
  }
  .m-voices-item-box-ttl._03 {
    width: 45.8666666667vw;
  }
  .m-voices-item-box-arrow {
    width: 9.8666666667vw;
    font-size: 4vw;
  }
}
/* reset
---------------------------------------------------------------------------- */
/* common
---------------------------------------------------------------------------- */
/* layout
-----------------------------------------------------------------------------*/
/* module
---------------------------------------------------------------------------- */
/* print
---------------------------------------------------------------------------- */
/* recruit-common
---------------------------------------------------------------------------- */
