/*!****************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].use[1]!./node_modules/postcss-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[1].use[3]!./src/scss/index.scss ***!
  \****************************************************************************************************************************************************************************************************************/
@charset "UTF-8";
.section-contact {
  padding-block: 69px 43px;
}
@media screen and (max-width: 991.98px) {
  .section-contact {
    padding-block: 45px 35px;
  }
}
.section-contact .btn-area {
  margin-top: 33px;
  gap: 33px;
}
@media screen and (max-width: 991.98px) {
  .section-contact .btn-area {
    margin-top: 25px;
    gap: 17px;
  }
}

.btn-large {
  height: 121px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: url("/dist/img/footer/arrow-r.svg") no-repeat center right 19px white;
  border-radius: 7px;
  color: var(--blue);
}
@media screen and (max-width: 991.98px) {
  .btn-large {
    height: 97px;
    border-radius: 11px;
    background: url("/dist/img/footer/arrow-r-mobile.svg") no-repeat center right 13px white;
  }
}

.btn-large.__tel {
  flex-direction: column;
  gap: 3px;
}
.btn-large.__tel .subtitle {
  font-weight: var(--fw-bold);
  color: #333;
}
@media screen and (max-width: 991.98px) {
  .btn-large.__tel .subtitle {
    font-size: 0.75rem;
    text-align: center;
    font-size: 0.875rem;
  }
}
.btn-large.__tel .text {
  font-size: 2.5rem;
  font-weight: var(--fw-semibold);
}
@media screen and (max-width: 991.98px) {
  .btn-large.__tel .text {
    font-size: 2.25rem;
  }
}
.btn-large.__tel .flex {
  gap: 12px;
}
@media screen and (max-width: 991.98px) {
  .btn-large.__tel .flex {
    align-items: center;
  }
}

.btn-large.__mail {
  gap: 18px;
}
@media screen and (max-width: 991.98px) {
  .btn-large.__mail {
    gap: 22px;
  }
}
.btn-large.__mail .text {
  font-size: 1.25rem;
  font-weight: var(--fw-bold);
}
@media screen and (max-width: 991.98px) {
  .btn-large.__mail .text {
    font-size: 1.375rem;
  }
}

.button-subtext {
  margin-top: 22px;
  font-size: 0.8125rem;
  font-weight: var(--fw-medium);
}
@media screen and (max-width: 991.98px) {
  .button-subtext {
    margin-top: 22px;
    font-size: 0.75rem;
    line-height: 1.25;
  }
}
@media screen and (max-width: 575.98px) {
  .button-subtext {
    gap: 5px;
  }
}
.button-subtext .hl {
  white-space: nowrap;
}

.section-address {
  padding-block: 75px;
}
@media screen and (max-width: 991.98px) {
  .section-address {
    padding-block: 52px 0;
  }
}
.section-address .grid-address {
  grid-template-columns: 388px 1fr;
  gap: 10px;
}
@media screen and (max-width: 991.98px) {
  .section-address .grid-address {
    gap: 49px;
  }
}
.section-address .title {
  font-size: 1.625rem;
  font-weight: var(--fw-bold);
}
@media screen and (max-width: 991.98px) {
  .section-address .title {
    font-size: 1.5rem;
  }
}
.section-address .address {
  line-height: 2;
  margin-top: 35px;
}
@media screen and (max-width: 991.98px) {
  .section-address .address {
    margin-top: 18px;
  }
}
.section-address .address b {
  font-weight: var(--fw-bold);
}
@media screen and (max-width: 991.98px) {
  .section-address .map {
    height: 282px;
  }
  .section-address .map iframe {
    height: 282px;
  }
}

.section-footer {
  background: #f4f4f4;
  padding-block: 72px 39px;
}
@media screen and (max-width: 991.98px) {
  .section-footer {
    padding-block: 49px 0;
  }
}
.section-footer .copy {
  font-size: 0.875rem;
  margin-top: 100px;
}
@media screen and (max-width: 991.98px) {
  .section-footer .copy {
    margin-top: 0;
    font-size: 0.8125rem;
    display: flex;
    flex-direction: column;
    gap: 10px;
  }
}
@media screen and (max-width: 991.98px) {
  .section-footer .copy-area {
    background: white;
    padding-block: 28px 18px;
    margin-top: 66px;
  }
}
@media screen and (max-width: 991.98px) {
  .section-footer .footer-logo {
    font-size: 1.8125rem;
    font-family: var(--ff-maru);
    font-weight: bold;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 11px;
  }
}

.grid-footer .title {
  font-size: 1.25rem;
  margin-bottom: 42px;
}
@media screen and (max-width: 991.98px) {
  .grid-footer .title {
    margin-bottom: 19px;
  }
}
.grid-footer .list-nav {
  font-weight: var(--fw-bold);
}
.grid-footer .list-nav li + li {
  margin-top: 21.5px;
}
@media screen and (max-width: 991.98px) {
  .grid-footer .list-nav li + li {
    margin-top: 24px;
  }
}
.grid-footer .list-nav a {
  display: flex;
  align-items: center;
  gap: 0;
}
.grid-footer .list-nav a::before {
  content: "";
  margin-right: 30px;
  display: block;
  height: 20px;
  width: 7px;
  background: url(../img/common/arrow-r-black.svg) center/contain no-repeat;
}
.grid-footer .item.__right {
  padding-left: 150px;
}
@media screen and (max-width: 991.98px) {
  .grid-footer .item.__right {
    padding-left: 0;
  }
}
@media screen and (max-width: 991.98px) {
  .grid-footer .item.__left .grid-2 {
    grid-template-columns: 142px 1fr;
    gap: 16px;
  }
}
@media screen and (max-width: 991.98px) {
  .grid-footer {
    gap: 43px;
  }
}

.js-menu {
  transition: clip-path 0.3s;
  clip-path: inset(0 0 0 100%);
  position: fixed;
  z-index: 9;
  inset: 0;
  background: #fff;
  padding-top: var(--header-height);
  overflow-y: scroll;
  padding-bottom: 30px;
}

.menu {
  padding-top: 52px;
}
.menu .list-nav li {
  padding: 1px 0 0 0;
  height: 74px;
  border-top: 1px solid #f2f3f4;
  font-weight: var(--fw-bold);
}
.menu .list-nav li a {
  display: grid;
  place-items: center;
  height: 100%;
}
.menu .list-nav li:last-child {
  border-bottom: 1px solid #f2f3f4;
}

.menu-buttons .btn-large.__tel {
  margin-top: 36px;
  background: url("/dist/img/footer/arrow-r-white.svg") no-repeat center right 19px, var(--blue_gd);
}
.menu-buttons .btn-large.__tel .text {
  font-size: 2.0625rem;
}
.menu-buttons .btn-large.__tel .subtitle {
  font-size: 0.75rem;
  margin-left: 24px;
}
.menu-buttons .btn-large.__tel .flex {
  margin-left: -21px;
}
.menu-buttons .btn-large.__mail {
  border: 2px solid var(--blue);
  margin-top: 17px;
}
.menu-buttons .btn-large.__mail .text {
  font-size: 1.25rem;
}
.menu-buttons .btn-large.__mail .icon {
  margin-left: -32px;
}

.button-subtext.__menu {
  margin-top: 16px;
}

.menu-subtext {
  font-weight: var(--fw-medium);
  gap: 1px;
}

.menu-open .js-menu {
  clip-path: inset(0 0 0 0%);
  display: block;
}

.btn-menu {
  --size: 32px;
  --distance: 7px;
  width: var(--size);
  height: var(--size);
  position: fixed;
  z-index: 100;
  inset: 20px 20px auto auto;
  background: white;
}
.btn-menu .bars {
  position: relative;
}
.btn-menu .bar {
  width: 100%;
  height: 2px;
  background: var(--blue);
  display: block;
  position: absolute;
  inset: 0;
  margin: auto;
  transition: transform 0.3s;
}
.btn-menu .bar:nth-child(1) {
  transform: translateY(var(--distance));
}
.btn-menu .bar:nth-child(2) {
  opacity: 1;
}
.btn-menu .bar:nth-child(3) {
  transform: translateY(calc(var(--distance) * -1));
}

.menu-open .bar {
  background: #3e3e3e;
}
.menu-open .bar:nth-child(1) {
  transform: translateY(0) rotate(35deg);
}
.menu-open .bar:nth-child(2) {
  opacity: 0;
}
.menu-open .bar:nth-child(3) {
  transform: translateY(0) rotate(-35deg);
}

.btn {
  width: -moz-fit-content;
  width: fit-content;
  display: block;
  padding: 16px 32px 16px 20px;
  background: white;
  border-radius: 10px;
  border: 1px solid #3e3e3e;
  background: url(../img/common/arrow-r-more.svg) center right 14px no-repeat;
  font-weight: var(--fw-semibold);
}
@media screen and (max-width: 991.98px) {
  .btn {
    padding: 19px 32px 19px 20px;
  }
}

.btn.__blue {
  background-image: url(../img/common/arrow-r-more-blue.svg);
  border-color: var(--blue);
  color: var(--blue);
}

.btn-blue {
  margin-top: 130px;
  display: block;
  width: -moz-fit-content;
  width: fit-content;
  font-weight: var(--fw-bold);
  text-align: center;
  background: url(../img/recruit/arrow-r-white.svg) center right 24px no-repeat, var(--blue);
  color: white;
  border-radius: 4px;
  padding: 23px;
  min-width: 300px;
}
@media screen and (max-width: 991.98px) {
  .btn-blue {
    min-width: unset;
    width: 100%;
  }
}

.ff-jost {
  font-family: "Jost", sans-serif;
}

.ff-maru {
  font-family: "Zen Maru Gothic", sans-serif;
}

.hl-lv01 {
  font-size: 1.875rem;
  line-height: 1.6;
  font-weight: var(--fw-bold);
  color: white;
  text-shadow: 0 3px 6px rgba(0, 0, 0, 0.16);
}
@media screen and (max-width: 991.98px) {
  .hl-lv01 {
    font-size: 1.5rem;
    line-height: 1.5;
  }
}
.hl-lv01 small {
  font-size: 1rem;
  line-height: 1.875;
  font-family: var(--ff-jost);
  font-weight: var(--fw-semibold);
  display: block;
  margin-bottom: 10px;
  text-shadow: 0 0 6px rgba(0, 0, 0, 0.58);
}

.hl-lv02 {
  font-family: var(--ff-jost);
  font-size: 2.25rem;
  text-transform: uppercase;
  font-weight: var(--fw-semibold);
  color: var(--blue);
}
.hl-lv02 small {
  display: block;
  font-family: var(--ff-noto);
  font-size: 0.4444444444em;
  font-weight: var(--fw-normal);
  color: #363636;
}

.hl-lv02.color-white small {
  color: white;
}

.hl-lv03 {
  font-size: 1.625rem;
  font-weight: var(--fw-bold);
}

.hl-lv04 {
  font-size: 1.25rem;
  font-weight: var(--fw-bold);
}

@media screen and (max-width: 991.98px) {
  .hl-blue-sp {
    color: white;
    background: #184c91;
    padding-block: 14px;
    box-shadow: 0 0 0 100vmax #184c91;
    clip-path: inset(0 -100vmax);
  }
}

.hl-block,
.section-lower-common h2,
.section-lower-common h1 {
  font-size: 1.25rem;
  font-weight: var(--fw-bold);
  line-height: 1.2;
  background: rgba(9, 88, 181, 0.08);
  padding: 19px 31px;
  margin-bottom: 80px;
}
@media screen and (max-width: 991.98px) {
  .hl-block,
  .section-lower-common h2,
  .section-lower-common h1 {
    text-align: center;
    margin-bottom: 26px;
  }
}

.section-lower-common h2,
.section-lower-common h1 {
  font-size: 1rem;
}
@media screen and (max-width: 991.98px) {
  .section-lower-common h2,
  .section-lower-common h1 {
    font-size: 1.25rem;
  }
}

.hl-block-blue {
  font-size: 1rem;
  font-weight: var(--fw-bold);
  line-height: 2.25;
  padding: 17px 20px;
  background: var(--blue);
  color: white;
  margin-bottom: 11px;
}
@media screen and (max-width: 991.98px) {
  .hl-block-blue {
    margin-bottom: 0;
  }
}

.bg-blue_gd {
  background: var(--blue_gd);
}

.color-white {
  color: white !important;
}

.color-blue {
  color: var(--blue);
}

.color-black {
  color: #333;
}

.stack {
  display: grid;
}
.stack > * {
  grid-column: 1/-1;
  grid-row: 1/-1;
}

picture.ta-center {
  display: block;
}

.box {
  border-radius: 10px;
  background: white;
}

hr {
  height: 1px;
  background: #707070;
}

.table {
  width: 100%;
}
.table th,
.table td {
  border: 1px solid #c1c1c1;
  padding: 37px;
}
@media screen and (max-width: 991.98px) {
  .table th,
  .table td {
    padding: 37px 16px;
  }
}
.table th {
  font-weight: var(--fw-bold);
  text-align: center;
  vertical-align: middle;
  white-space: nowrap;
}
@media screen and (max-width: 991.98px) {
  .table th {
    font-size: 0.9375rem;
  }
}
.table td {
  font-size: 0.9375rem;
  line-height: 1.8666666667;
}
@media screen and (min-width: 992px) {
  .table td {
    padding-left: 117px;
  }
}
@media screen and (max-width: 991.98px) {
  .table td {
    font-size: 0.875rem;
    line-height: 2;
  }
}

.pager {
  margin-top: 130px;
}
@media screen and (max-width: 991.98px) {
  .pager {
    margin-top: 55px;
  }
}
.pager .pager__list {
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 0.9375rem;
  line-height: 1.8666666667;
  gap: 14px;
}
.pager .pager__item a {
  --size: 56px;
  width: var(--size);
  height: var(--size);
  display: grid;
  place-items: center;
  border: 1px solid #707070;
  background: white;
  border-radius: 5px;
}
@media screen and (max-width: 991.98px) {
  .pager .pager__item a {
    --size: 52px;
  }
}
.pager .pager__item.return a {
  min-width: 186px;
  width: -moz-fit-content;
  width: fit-content;
}
.pager .pager__next a,
.pager .pager__prev a {
  border: unset;
}
.pager .pager__link.is-current {
  background: var(--blue);
  border-color: var(--blue);
  color: white;
}
.pager .pager__next {
  margin-left: 40px;
}
@media screen and (max-width: 991.98px) {
  .pager .pager__next {
    margin-left: auto;
  }
}
.pager .pager__prev {
  margin-right: 40px;
}
@media screen and (max-width: 991.98px) {
  .pager .pager__prev {
    margin-right: auto;
  }
}

.pager.single .pager__list {
  gap: 38px;
}
.pager.single .pager__next {
  margin-left: 0;
}
@media screen and (max-width: 991.98px) {
  .pager.single .pager__next {
    margin-left: auto;
  }
}
.pager.single .pager__prev {
  margin-right: 0;
}
@media screen and (max-width: 991.98px) {
  .pager.single .pager__prev {
    margin-right: auto;
  }
}

.forms input,
.forms select,
.forms textarea {
  border: 1px solid #707070;
  padding: 9px 20px;
}
.forms select {
  padding-right: 4em;
  background: url(../img/contact/arrow-select.svg) center right 20px no-repeat;
}
@media screen and (max-width: 991.98px) {
  .forms select {
    width: 100%;
  }
}
.forms input,
.forms textarea {
  width: 100%;
}
.forms .form + .form {
  margin-top: 105px;
}
@media screen and (max-width: 991.98px) {
  .forms .form + .form {
    margin-top: 32px;
  }
}
.forms .form {
  display: grid;
  grid-template-columns: 58px 1fr 620px;
}
@media screen and (max-width: 991.98px) {
  .forms .form {
    grid-template-columns: auto 1fr;
    gap: 19px 10px;
  }
}
.forms .form:last-child {
  margin-top: 139px;
}
@media screen and (max-width: 991.98px) {
  .forms .form:last-child {
    padding-top: 42px;
  }
}
.forms .span-2 {
  grid-column: span 2;
}
.forms .required::before {
  content: "必須";
  display: block;
  background: var(--blue);
  color: white;
  font-size: 0.875rem;
  padding: 3px 9px;
  border-radius: 4px;
  width: -moz-fit-content;
  width: fit-content;
}
.forms .required.__hide::before {
  display: none;
}
.forms .required,
.forms .label-text {
  display: flex;
  align-items: center;
}
.forms .input-area {
  position: relative;
}
@media screen and (max-width: 991.98px) {
  .forms .input-area {
    position: unset;
    grid-column: 1/3;
  }
}
.forms .note {
  position: absolute;
  font-size: 1rem;
  color: #777777;
  line-height: 1.5;
  margin-top: 10px;
}
@media screen and (max-width: 991.98px) {
  .forms .note {
    position: unset;
  }
}

@media screen and (min-width: 992px) {
  a[href^="tel:"] {
    pointer-events: none;
    cursor: default;
    text-decoration: none;
  }
}
.section-mv .title {
  font-size: 2.5rem;
  font-weight: bold;
  line-height: 1.5;
}
@media screen and (max-width: 991.98px) {
  .section-mv .title {
    font-size: 2rem;
    font-weight: bold;
    line-height: 1.5;
  }
}
.section-mv .title small {
  font-size: 1.25rem;
  margin-bottom: 14px;
  display: block;
}
@media screen and (max-width: 991.98px) {
  .section-mv .title small {
    font-size: 1.25rem;
    margin-bottom: 10px;
    line-height: 1.5;
  }
}
.section-mv .mv-content {
  align-items: flex-end;
  gap: 93px;
}
.section-mv .content-wrap {
  padding-top: 10vw;
}
@media screen and (max-width: 991.98px) {
  .section-mv .content-wrap {
    padding-top: 13vw;
  }
}

.mv-circles {
  gap: 13px;
}
.mv-circles .circle {
  --size: 132px;
  width: var(--size);
  height: var(--size);
  border-radius: 10rem;
  background: var(--blue_gd);
  color: white;
  display: grid;
  place-items: center;
  font-size: 1.25rem;
  font-weight: var(--fw-bold);
  text-align: center;
}

.section-intro {
  padding-block: 40px 112px;
}
.section-intro .mv-circles {
  justify-content: center;
  margin-bottom: 30px;
  gap: 11px;
}
.section-intro .mv-circles .circle {
  --size: 111px;
  font-size: 1rem;
}
@media screen and (max-width: 991.98px) {
  .section-intro {
    padding-block: 43px 29px;
  }
}
.section-intro .title {
  font-size: 1.5rem;
  font-weight: var(--fw-bold);
  line-height: 1.6666666667;
  margin-bottom: 57px;
}
@media screen and (max-width: 991.98px) {
  .section-intro .title {
    font-size: 1.375rem;
    font-weight: var(--fw-bold);
    line-height: 1.7272727273;
    margin-bottom: 23px;
  }
}

.section-about {
  background: url(../img/top/bg-about.jpg) center/cover no-repeat;
  padding-block: 100px 122px;
}
.section-about picture img {
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.05);
}
@media screen and (max-width: 991.98px) {
  .section-about picture img {
    box-shadow: 0 0 20px rgba(0, 0, 0, 0.05);
    margin-top: 30px;
  }
}
.section-about .subtitle {
  font-size: 1.625rem;
  line-height: 1.8461538462;
  font-weight: var(--fw-bold);
  margin-top: 52px;
}
@media screen and (max-width: 991.98px) {
  .section-about .subtitle {
    margin-top: 0;
    font-size: 1.375rem;
    line-height: 1.7272727273;
    font-weight: var(--fw-bold);
  }
}
.section-about .description {
  font-size: 1.0625rem;
  line-height: 2.3529411765;
  font-weight: var(--fw-semibold);
}
@media screen and (max-width: 991.98px) {
  .section-about .description {
    font-size: 1.125rem;
    line-height: 1.8888888889;
    font-weight: var(--fw-medium);
  }
}
.section-about .content {
  gap: 89px;
}
@media screen and (max-width: 991.98px) {
  .section-about .content {
    gap: 30px;
  }
}
.section-about .content .text {
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  gap: 26px;
}
@media screen and (max-width: 991.98px) {
  .section-about .content .text {
    gap: 24px;
  }
}
@media screen and (max-width: 991.98px) {
  .section-about {
    background-image: url(../img/top/bg-about-sp.jpg);
    padding-block: 73px 96px;
  }
}

.section-service {
  padding-top: 100px;
}
@media screen and (max-width: 991.98px) {
  .section-service {
    padding-top: 38px;
  }
}
.section-service .subtitle {
  font-size: 1.625rem;
  margin-top: 84px;
}
@media screen and (max-width: 991.98px) {
  .section-service .subtitle {
    font-size: 1.125rem;
    line-height: 1.6666666667;
    margin-top: 28px;
  }
}
.section-service .list-card {
  gap: 61px;
  margin-top: 64px;
}
@media screen and (max-width: 991.98px) {
  .section-service .list-card {
    gap: 20px;
    margin-top: 45px;
  }
}
.section-service .list-card picture {
  display: flex;
  justify-content: center;
  align-items: flex-end;
  min-height: 200px;
}
@media screen and (max-width: 991.98px) {
  .section-service .list-card picture {
    min-height: 184px;
  }
}
.section-service .list-card .card {
  background: var(--blue_gd);
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.05);
}
@media screen and (max-width: 991.98px) {
  .section-service .list-card .card {
    max-width: 358px;
    width: 100%;
    margin-inline: auto;
    box-shadow: 0 0 15px rgba(0, 0, 0, 0.05);
  }
}
.section-service .list-card .text {
  padding: 38px 34px 39px;
}
@media screen and (max-width: 991.98px) {
  .section-service .list-card .text {
    padding: 21px 38px 43px;
  }
}
.section-service .list-card .title {
  font-size: 1.625rem;
  line-height: 1;
  border-bottom: 1px solid white;
  padding-bottom: 19px;
  margin-bottom: 18px;
  color: white;
}
@media screen and (max-width: 991.98px) {
  .section-service .list-card .title {
    font-size: 1.875rem;
    line-height: 1;
    padding-bottom: 17px;
    margin-bottom: 16px;
  }
}
.section-service .list-card .description {
  color: white;
  line-height: 1.75;
}
@media screen and (max-width: 991.98px) {
  .section-service .list-card .description {
    font-size: 1.125rem;
    line-height: 1.7777777778;
  }
}

.section-news {
  padding-block: 126px 116px;
}
@media screen and (max-width: 991.98px) {
  .section-news {
    padding-block: 78px 73px;
  }
}
.section-news .content {
  gap: 107px;
}
@media screen and (max-width: 991.98px) {
  .section-news .content {
    gap: 37px;
  }
}
.section-news .btn-wrap {
  margin-top: 38px;
}
.section-news .list-news a {
  display: flex;
  align-items: flex-start;
  gap: 20px;
}
@media screen and (max-width: 991.98px) {
  .section-news .list-news a {
    flex-wrap: wrap;
    gap: 9px 20px;
  }
}
.section-news .list-news li + li {
  margin-top: 47px;
}
@media screen and (max-width: 991.98px) {
  .section-news .list-news li + li {
    margin-top: 33px;
  }
}
.section-news .list-news span {
  display: block;
}
.section-news .list-news .tag {
  white-space: nowrap;
  background: #3e3e3e;
  color: white;
  padding: 2px 17px 2px;
  border-radius: 4px;
  font-size: 0.75rem;
  line-height: 1.75;
}
@media screen and (max-width: 991.98px) {
  .section-news .list-news .tag {
    padding: 2px 13px 2px;
  }
}
.section-news .list-news .description {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
  text-overflow: ellipsis;
  font-size: 0.9375rem;
  line-height: 1.8666666667;
  margin-top: -0.1em;
}
@media screen and (max-width: 991.98px) {
  .section-news .list-news .description {
    flex: 0 0 100%;
    -webkit-line-clamp: 3;
  }
}
.section-news .btn {
  margin-top: 61px;
  min-width: 262px;
}
@media screen and (max-width: 991.98px) {
  .section-news .btn {
    margin-top: 60px;
  }
}

.section-recruit {
  padding-bottom: 143px;
}
@media screen and (max-width: 991.98px) {
  .section-recruit {
    padding-bottom: 58px;
  }
}
.section-recruit .text-area {
  margin-top: -10px;
}
@media screen and (max-width: 991.98px) {
  .section-recruit .text-area {
    margin-top: 18px;
  }
}
.section-recruit .content {
  height: 361px;
  display: flex;
  align-items: center;
  padding-left: 100px;
  background: url(../img/top/img-recruit.jpg) center right no-repeat, #f4f4f6;
}
@media screen and (max-width: 991.98px) {
  .section-recruit .content {
    height: 212px;
    background: url(../img/top/img-recruit-sp.jpg) center right no-repeat, #f4f4f6;
    padding-left: 27px;
  }
}
@media screen and (max-width: 991.98px) {
  .section-recruit .hl-lv02 {
    font-size: 1.625rem;
  }
}
.section-recruit .hl-lv02 small {
  font-weight: var(--fw-semibold);
  font-size: 1.25rem;
  font-family: var(--ff-jost);
  margin-bottom: 10px;
}
@media screen and (max-width: 991.98px) {
  .section-recruit .hl-lv02 small {
    font-size: 0.875rem;
    margin-bottom: 5px;
  }
}
.section-recruit .description {
  width: -moz-fit-content;
  width: fit-content;
  border-top: 1px solid #3e3e3e;
  padding-top: 10px;
  margin-top: 30px;
  padding-right: 23px;
}
@media screen and (max-width: 991.98px) {
  .section-recruit .description {
    padding-top: 8px;
    margin-top: 28px;
    padding-right: 0;
    display: block;
    min-width: 175px;
  }
  .section-recruit .description img {
    margin-bottom: 0.5em;
    margin-left: 10px;
  }
}

.company-banner {
  margin-top: 119px;
}
.company-banner img {
  box-shadow: 0 0 20px rgba(0, 0, 0, 0.1);
}
@media screen and (max-width: 991.98px) {
  .company-banner {
    margin-top: 52px;
  }
}

.company-images {
  margin-top: 92px;
}
@media screen and (max-width: 991.98px) {
  .company-images {
    margin-top: 42px;
  }
}

.section-company-message {
  background: url(../img/company/bg-message.jpg) center/cover no-repeat;
  padding-block: 145px 136px;
}
@media screen and (max-width: 991.98px) {
  .section-company-message {
    background: url(../img/company/bg-message-sp.jpg) center/cover no-repeat;
    padding-block: 82px 64px;
  }
}
.section-company-message .hl-lv03 {
  margin-top: 84px;
}
@media screen and (max-width: 991.98px) {
  .section-company-message .hl-lv03 {
    margin-top: 40px;
    font-size: 1.375rem;
    line-height: 1.7272727273;
  }
}
.section-company-message .text {
  margin-top: 36px;
  line-height: 2;
}
@media screen and (max-width: 991.98px) {
  .section-company-message .text {
    font-size: 1.125rem;
    line-height: 1.8888888889;
    margin-top: 33px;
  }
}
@media screen and (max-width: 991.98px) {
  .section-company-message .wrapper-small {
    width: min(100% - 66px, (var(--width-container-small)));
  }
}

.section-company-company {
  padding-block: 127px 91px;
}
@media screen and (max-width: 991.98px) {
  .section-company-company {
    padding-block: 68px 55px;
  }
}
.section-company-company .table {
  margin-top: 69px;
}
@media screen and (max-width: 991.98px) {
  .section-company-company .table {
    margin-top: 44px;
  }
}

.section-company-other {
  background: rgba(179, 205, 240, 0.24);
  padding-block: 133px 116px;
}
@media screen and (max-width: 991.98px) {
  .section-company-other {
    padding-block: 0 40px;
  }
}
.section-company-other .hl-lv03 {
  margin-bottom: 45px;
}
@media screen and (max-width: 991.98px) {
  .section-company-other .hl-lv03 {
    margin-bottom: 40px;
  }
}
.section-company-other .box + .hl-lv03 {
  margin-top: 86px;
}
@media screen and (max-width: 991.98px) {
  .section-company-other .box + .hl-lv03 {
    margin-top: 40px;
  }
}
.section-company-other .box {
  padding: 80px 70px;
}
@media screen and (max-width: 991.98px) {
  .section-company-other .box {
    padding: 42px 20px;
  }
}
.section-company-other .box.__01 .flex {
  gap: 86px;
}
@media screen and (max-width: 991.98px) {
  .section-company-other .box.__01 .flex {
    gap: 0;
    align-items: flex-start;
    justify-content: flex-start;
  }
}
.section-company-other .box.__01 p {
  font-size: 0.9375rem;
  line-height: 1.8666666667;
}
@media screen and (max-width: 991.98px) {
  .section-company-other .box.__01 {
    display: flex;
    align-items: center;
    justify-content: center;
  }
}
.section-company-other .box.__02 .btn {
  width: 100%;
  font-size: 0.75rem;
}
@media screen and (max-width: 991.98px) {
  .section-company-other .box.__02 .btn {
    font-size: 0.9375rem;
  }
}
.section-company-other .box.__02 .flex {
  gap: 56px;
  padding-left: 20px;
}
@media screen and (max-width: 991.98px) {
  .section-company-other .box.__02 .flex {
    gap: 18px;
    padding-left: 0;
  }
}
.section-company-other .box.__02 .grid-2 {
  flex-grow: 1;
  gap: 10px 18px;
}
@media screen and (max-width: 991.98px) {
  .section-company-other .box.__02 .grid-2 {
    width: 100%;
    gap: 15px 18px;
  }
}
.section-company-other .box.__02 hr {
  margin-block: 40px;
}
@media screen and (max-width: 991.98px) {
  .section-company-other .box.__02 {
    padding-inline: 16px;
  }
  .section-company-other .box.__02 .flex.__02 {
    margin-top: 22px;
  }
}
.section-company-other .box.__03 {
  padding-inline: 137px;
}
.section-company-other .box.__03 .before-circle {
  gap: 3px 14px;
  margin-top: 19px;
  margin-left: 39px;
}
@media screen and (max-width: 991.98px) {
  .section-company-other .box.__03 .before-circle {
    margin-left: 30px;
    margin-top: 20px;
  }
  .section-company-other .box.__03 .before-circle img {
    width: 11px;
    height: 11px;
  }
}
.section-company-other .box.__03 .before-circle p {
  display: flex;
  align-items: center;
  gap: 7px;
  font-size: 0.875rem;
}
@media screen and (max-width: 991.98px) {
  .section-company-other .box.__03 {
    padding-inline: 16px;
  }
}

.section-news-main {
  padding-bottom: 199px;
  margin-top: 100px;
}
@media screen and (max-width: 991.98px) {
  .section-news-main {
    margin-top: 44px;
    padding-bottom: 119px;
  }
}
.section-news-main .hl-block {
  margin-bottom: 55px;
}
@media screen and (max-width: 991.98px) {
  .section-news-main .hl-block {
    margin-bottom: 40px;
  }
}
@media screen and (max-width: 991.98px) {
  .section-news-main .hl-block-blue {
    margin-bottom: 0;
    font-size: 1.125rem;
    padding-block: 15px;
  }
}

@media screen and (max-width: 991.98px) {
  .news-contents {
    margin-top: 82px;
  }
}
.news-contents .news {
  padding-bottom: 38px;
  border-bottom: 1px solid #f2f3f4;
}
@media screen and (max-width: 991.98px) {
  .news-contents .news {
    padding-bottom: 20px;
  }
}
.news-contents .news:not(:last-child) {
  margin-bottom: 40px;
}
@media screen and (max-width: 991.98px) {
  .news-contents .news:not(:last-child) {
    margin-bottom: 27px;
  }
}
.news-contents .news a {
  --gap: 22px;
  display: grid;
  grid-template-columns: 88px calc(140px - var(--gap)) 1fr;
  gap: var(--gap);
}
@media screen and (max-width: 991.98px) {
  .news-contents .news a {
    --gap: 11px 23px;
    grid-template-columns: auto 1fr;
  }
}
.news-contents .news .date {
  font-size: 1rem;
  font-weight: var(--fw-semibold);
  font-family: var(--ff-jost);
  line-height: 2;
  color: rgba(54, 54, 54, 0.7);
}
.news-contents .news .tag {
  color: white;
  background: #3e3e3e;
  border-radius: 4px;
  padding: 3px 12px;
  font-size: 0.875rem;
  line-height: 1.5;
  width: -moz-fit-content;
  width: fit-content;
}
.news-contents .news .title {
  font-size: 0.9375rem;
  line-height: 1.8666666667;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  overflow: hidden;
  text-overflow: ellipsis;
}
@media screen and (max-width: 991.98px) {
  .news-contents .news .title {
    grid-column: 1/3;
  }
}

.category-wrap + .category-wrap {
  margin-top: 100px;
}
@media screen and (max-width: 991.98px) {
  .category-wrap + .category-wrap {
    margin-top: 10px;
  }
}

@media screen and (max-width: 991.98px) {
  .list-category {
    border: 1px solid #707070;
    border-top: unset;
    padding-block: 13px;
  }
}
.list-category a {
  display: block;
  height: 100%;
}
.list-category > li {
  border-bottom: 1px solid #f2f3f4;
  padding: 24px 0;
}
.list-category > li > a,
.list-category > li > div {
  padding-left: 20px;
  background: url(../img/news/arrow-r-black.svg) center right no-repeat;
  cursor: pointer;
}
@media screen and (max-width: 991.98px) {
  .list-category > li > a,
  .list-category > li > div {
    background: url(../img/news/arrow-r-black.svg) center right 27px no-repeat;
    padding: 0 36px;
  }
}
@media screen and (max-width: 991.98px) {
  .list-category > li:last-child {
    border-bottom: unset;
  }
}
.list-category > li.has-child > a,
.list-category > li.has-child div {
  background: url(../img/news/arrow-b-black.svg) center right no-repeat;
}
@media screen and (max-width: 991.98px) {
  .list-category > li.has-child > a,
  .list-category > li.has-child div {
    background: url(../img/news/arrow-b-black.svg) center right 27px no-repeat;
  }
}
.list-category > li.has-child.is-open > a,
.list-category > li.has-child.is-open div {
  background: url(../img/news/arrow-t-black.svg) center right no-repeat;
}
@media screen and (max-width: 991.98px) {
  .list-category > li.has-child.is-open > a,
  .list-category > li.has-child.is-open div {
    background: url(../img/news/arrow-t-black.svg) center right 27px no-repeat;
  }
}
.list-category .list-category-child {
  display: none;
}
.list-category .list-category-child > li {
  padding: 5px 36px;
}
@media screen and (max-width: 991.98px) {
  .list-category .list-category-child > li {
    padding: 5px 54px;
  }
}
.list-category .list-category-child > li:first-child {
  padding-top: 12px;
}
@media screen and (max-width: 991.98px) {
  .list-category .list-category-child > li:first-child {
    padding-top: 25px;
  }
}
.list-category .list-category-child.is-active {
  display: block;
}
@media screen and (max-width: 991.98px) {
  .list-category {
    position: relative;
    display: none;
  }
  .list-category.is-active {
    display: block;
  }
  .list-category::before, .list-category::after {
    content: "";
    display: block;
    background: white;
    width: 18px;
    height: 100%;
  }
  .list-category::before {
    position: absolute;
    inset: 0 auto 0 0;
  }
  .list-category::after {
    position: absolute;
    inset: 0 0 0 auto;
  }
}

@media screen and (max-width: 991.98px) {
  button.hl-block-blue {
    background: url(../img/news/arrow-b-mobile.svg) center right 18px no-repeat, var(--blue);
    text-align: center;
  }
  button.hl-block-blue.is-open {
    background: url(../img/news/arrow-t-mobile.svg) center right 18px no-repeat, var(--blue);
  }
}
.section-news-single {
  margin-top: 64px;
  padding-bottom: 200px;
}
@media screen and (max-width: 991.98px) {
  .section-news-single {
    margin-top: 44px;
    padding-bottom: 117px;
  }
}
.section-news-single .article-information {
  align-items: flex-end;
  gap: 24px;
}
.section-news-single .article-information .date {
  font-size: 0.875rem;
  font-weight: var(--fw-semibold);
  font-family: var(--ff-jost);
  line-height: 2;
  color: rgba(54, 54, 54, 0.7);
}
.section-news-single .article-information .tag {
  background: #3e3e3e;
  padding: 14px 39px;
  color: white;
  border-radius: 5px;
  font-size: 0.875rem;
  line-height: 1.5;
}
.article h1 {
  font-size: 1.625rem;
  font-weight: var(--fw-bold);
  line-height: 1.8461538462;
  padding-bottom: 25px;
  margin-bottom: 32px;
  margin-top: 35px;
  border-bottom: 1px solid #1d4094;
}
@media screen and (max-width: 991.98px) {
  .article h1 {
    font-size: 1.375rem;
    line-height: 2.1818181818;
    padding-bottom: 7px;
    margin-bottom: 41px;
  }
}
.article h2 {
  font-size: 1.25rem;
  font-weight: var(--fw-bold);
  line-height: 1.2;
  background: rgba(9, 88, 181, 0.08);
  padding: 16px 33px;
  margin-bottom: 40px;
}
@media screen and (max-width: 991.98px) {
  .article h2 {
    margin-bottom: 24px;
    padding: 15px 16px;
    font-size: 1.125rem;
    line-height: 1.3333333333;
  }
}
.article > * + * {
  margin-top: 24px;
}
.article > p + h2 {
  margin-top: 44px;
}

.article__content > * + * {
  margin-top: 24px;
}
.article__content > p + h2 {
  margin-top: 44px;
}

.section-recruit-intro {
  padding-block: 130px 104px;
}
@media screen and (max-width: 991.98px) {
  .section-recruit-intro {
    padding-block: 58px 27px;
  }
}
.section-recruit-intro .headline {
  font-size: 3.8125rem;
  color: var(--blue);
  line-height: 1.2131147541;
}
@media screen and (max-width: 991.98px) {
  .section-recruit-intro .headline {
    font-size: 3.3125rem;
  }
}
.section-recruit-intro .headline small {
  font-size: 1.5625rem;
  display: block;
  line-height: 1.2;
  margin-bottom: 11px;
}
@media screen and (max-width: 991.98px) {
  .section-recruit-intro .headline small {
    margin-bottom: 7px;
  }
}
.section-recruit-intro .subtitle {
  font-size: 1.25rem;
  margin-top: 67px;
}
@media screen and (max-width: 991.98px) {
  .section-recruit-intro .subtitle {
    margin-top: 30px;
    line-height: 1.2;
  }
}
.section-recruit-intro .text {
  margin-top: 35px;
  font-size: 0.9375rem;
  line-height: 1.8666666667;
}
@media screen and (max-width: 991.98px) {
  .section-recruit-intro .text {
    margin-top: 20px;
  }
}
.section-recruit-intro .images {
  gap: 36px;
  margin-top: 91px;
}
@media screen and (max-width: 991.98px) {
  .section-recruit-intro .images {
    gap: 10px;
    margin-top: 54px;
  }
}

.section-recruit-point {
  padding-block: 70px 107px;
  background: url(../img/recruit/bg-point.jpg) center/cover no-repeat;
}
@media screen and (max-width: 991.98px) {
  .section-recruit-point {
    padding-block: 30px 77px;
    background: url(../img/recruit/bg-point-sp.jpg) center/cover no-repeat;
  }
}
.section-recruit-point .title {
  font-size: 1.625rem;
  line-height: 1.8461538462;
  color: var(--blue);
}
.section-recruit-point .title span {
  font-size: 2.5rem;
}
.section-recruit-point .flex-points {
  margin-top: 75px;
}
@media screen and (max-width: 991.98px) {
  .section-recruit-point .flex-points {
    margin-top: 66px;
    gap: 77px;
  }
}
.section-recruit-point .flex-points .item {
  position: relative;
  flex: 0 0 278px;
  padding: 64px 30px 27px;
  display: grid;
  grid-template-rows: 100px auto 1fr;
}
@media screen and (max-width: 991.98px) {
  .section-recruit-point .flex-points .item {
    max-width: 358px;
    margin-inline: auto;
    flex: unset;
    padding: 82px 30px 50px;
    grid-template-rows: 129px auto 1fr;
  }
}
.section-recruit-point .flex-points .point {
  --size: 75px;
  height: var(--size);
  width: var(--size);
  background: var(--blue_gd);
  font-family: var(--ff-jost);
  font-weight: var(--fw-semibold);
  color: white;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  border-radius: 50%;
  line-height: 1;
  position: absolute;
  inset: calc(var(--size) * -1 / 2) 0 auto 0;
  margin: auto;
}
@media screen and (max-width: 991.98px) {
  .section-recruit-point .flex-points .point {
    --size: 97px;
  }
}
.section-recruit-point .flex-points .point span {
  display: block;
  text-align: center;
}
.section-recruit-point .flex-points .point .p {
  font-size: 0.6875rem;
  margin-bottom: 2px;
}
@media screen and (max-width: 991.98px) {
  .section-recruit-point .flex-points .point .p {
    font-size: 0.875rem;
    margin-top: 0.1em;
  }
}
.section-recruit-point .flex-points .point .n {
  font-size: 1.8125rem;
}
@media screen and (max-width: 991.98px) {
  .section-recruit-point .flex-points .point .n {
    font-size: 2.25rem;
  }
}
.section-recruit-point .flex-points .headline {
  font-weight: var(--fw-bold);
  font-size: 1.25rem;
  line-height: 1.5;
  color: var(--blue);
}
@media screen and (max-width: 991.98px) {
  .section-recruit-point .flex-points .headline {
    font-size: 1.5625rem;
  }
}
.section-recruit-point .flex-points .text {
  margin-top: 7px;
  font-size: 0.9375rem;
  line-height: 1.8666666667;
}
@media screen and (max-width: 991.98px) {
  .section-recruit-point .flex-points .text {
    margin-top: 23px;
  }
}

.section-recruit-table {
  padding-block: 155px 173px;
}
@media screen and (max-width: 991.98px) {
  .section-recruit-table {
    padding-block: 74px 100px;
  }
}
.section-recruit-table .table {
  margin-top: 70px;
}
@media screen and (max-width: 991.98px) {
  .section-recruit-table .table {
    margin-top: 33px;
  }
}
.section-recruit-table .table th,
.section-recruit-table .table td {
  border-left: unset;
  border-right: unset;
}
.section-recruit-table .table th {
  text-align: left;
  padding-left: 76px;
  padding-right: 0;
}
@media screen and (max-width: 991.98px) {
  .section-recruit-table .table th {
    padding-left: 16px;
  }
}
.section-recruit-table .table td {
  padding-left: 0;
}
@media screen and (max-width: 991.98px) {
  .section-recruit-table .table td {
    padding-left: 24px;
  }
}
.section-recruit-table .table colgroup col.th {
  width: 36.3%;
}
@media screen and (max-width: 991.98px) {
  .section-recruit-table .table colgroup col.th {
    width: unset;
  }
}
.section-recruit-table .btn-blue {
  margin-top: 130px;
}
@media screen and (max-width: 991.98px) {
  .section-recruit-table .btn-blue {
    margin-top: 42px;
  }
}

.section-lower-common {
  margin-top: 100px;
  padding-bottom: 104px;
}
@media screen and (max-width: 991.98px) {
  .section-lower-common {
    margin-top: 44px;
    padding-bottom: 114px;
  }
}
.section-lower-common p {
  margin-top: 80px;
  line-height: 2;
}
@media screen and (max-width: 991.98px) {
  .section-lower-common p {
    margin-top: 26px;
  }
}
.section-lower-common p b {
  font-weight: var(--fw-bold);
}
.section-lower-common h2 {
  margin-top: 100px;
}
@media screen and (max-width: 991.98px) {
  .section-lower-common h2 {
    margin-top: 40px;
    padding-inline: 45px;
  }
}

.section-lower-common.__sitemap h1 {
  margin-top: 87px;
}
@media screen and (max-width: 991.98px) {
  .section-lower-common.__sitemap h1 {
    margin-top: 44px;
    margin-bottom: 43px;
  }
}

.grid-footer.__sitemap {
  padding-left: 31px;
}
@media screen and (max-width: 991.98px) {
  .grid-footer.__sitemap {
    padding-left: 0;
  }
}
.grid-footer.__sitemap .item.__right {
  padding-left: 171px;
}
@media screen and (max-width: 991.98px) {
  .grid-footer.__sitemap .item.__right {
    padding-left: 0;
  }
}
.grid-footer.__sitemap .list-nav a::before {
  background-image: url(../img/common/arrow-r.svg);
}

.main-lower.__contact .breadcrumbs {
  margin-bottom: 29px;
}

.section-contact-table {
  padding-block: 111px 188px;
}
@media screen and (max-width: 991.98px) {
  .section-contact-table {
    padding-block: 59px 106px;
  }
}
.section-contact-table .btn-blue {
  margin-top: 105px;
}
@media screen and (max-width: 991.98px) {
  .section-contact-table .btn-blue {
    margin-top: 59px;
  }
}

.mt-0 {
  margin-top: 0 !important;
}

.mb-0 {
  margin-bottom: 0 !important;
}

.pt-0 {
  padding-top: 0 !important;
}

.pb-0 {
  padding-bottom: 0 !important;
}

.mt-05 {
  margin-top: 0.5em !important;
}

.mb-05 {
  margin-bottom: 0.5em !important;
}

.mt-1 {
  margin-top: 1em !important;
}

.mb-1 {
  margin-bottom: 1em !important;
}

.mt-2 {
  margin-top: 2em !important;
}

.mb-2 {
  margin-bottom: 2em !important;
}

.mt-3 {
  margin-top: 3em !important;
}

.mb-3 {
  margin-bottom: 3em !important;
}

.mt-4 {
  margin-top: 4em !important;
}

.mb-4 {
  margin-bottom: 4em !important;
}

.mt-5 {
  margin-top: 5em !important;
}

.mb-5 {
  margin-bottom: 5em !important;
}

@media screen and (max-width: 991.98px) {
  .mt-0-sp {
    margin-top: 0 !important;
  }
  .mb-0-sp {
    margin-bottom: 0 !important;
  }
  .pt-0-sp {
    padding-top: 0 !important;
  }
  .pb-0-sp {
    padding-bottom: 0 !important;
  }
  .mt-05-sp {
    margin-top: 0.5em !important;
  }
  .mb-05-sp {
    margin-bottom: 0.5em !important;
  }
  .mt-1-sp {
    margin-top: 1em !important;
  }
  .mb-1-sp {
    margin-bottom: 1em !important;
  }
  .mt-2-sp {
    margin-top: 2em !important;
  }
  .mb-2-sp {
    margin-bottom: 2em !important;
  }
  .mt-3-sp {
    margin-top: 3em !important;
  }
  .mb-3-sp {
    margin-bottom: 3em !important;
  }
  .mt-4-sp {
    margin-top: 4em !important;
  }
  .mb-4-sp {
    margin-bottom: 4em !important;
  }
  .mt-5-sp {
    margin-top: 5em !important;
  }
  .mb-5-sp {
    margin-bottom: 5em !important;
  }
}
.gap-0 {
  gap: 0 !important;
}

.fw-light {
  font-weight: 300;
}

.fw-normal {
  font-weight: 400;
}

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

.fw-semibold {
  font-weight: 600;
}

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

.fw-black {
  font-weight: 900;
}

@media screen and (max-width: 991.98px) {
  .fw-light-sp {
    font-weight: 300;
  }
  .fw-normal-sp {
    font-weight: 400;
  }
  .fw-medium-sp {
    font-weight: 500;
  }
  .fw-semibold-sp {
    font-weight: 600;
  }
  .fw-bold-sp {
    font-weight: 700;
  }
  .fw-black-sp {
    font-weight: 900;
  }
}

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