@charset "UTF-8";
*,
*::before,
*::after {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

:where([hidden]:not([hidden="until-found"])) {
  display: none !important;
}

:where(html) {
  -webkit-text-size-adjust: none;
  color-scheme: dark light;
  tab-size: 2;
}

:where(html:has(dialog:modal[open])) {
  overflow: clip;
}

:where(body) {
  line-height: 1.5;
  font-family: system-ui, sans-serif;
  -webkit-font-smoothing: antialiased;
}

:where(button) {
  all: unset;
}

:where(input, button, textarea, select) {
  font: inherit;
  color: inherit;
}

:where(textarea) {
  resize: vertical;
  resize: block;
}

:where(button, label, select, summary, [role="button"], [role="option"]) {
  cursor: pointer;
}

:where(:disabled) {
  cursor: not-allowed;
}

:where(label:has(> input:disabled), label:has(+ input:disabled)) {
  cursor: not-allowed;
}

:where(a) {
  color: inherit;
  text-underline-offset: 0.2ex;
}

:where(ul, ol) {
  list-style: none;
}

:where(img, svg, video, canvas, audio, iframe, embed, object) {
  display: block;
}

:where(img, picture, svg, video) {
  max-inline-size: 100%;
  block-size: auto;
}

:where(p, h1, h2, h3, h4, h5, h6) {
  overflow-wrap: break-word;
}

:where(h1, h2, h3) {
  line-height: calc(1em + 0.5rem);
}

:where(hr) {
  border: none;
  border-block-start: 1px solid;
  color: inherit;
  block-size: 0;
  overflow: visible;
}

:where(dialog) {
  border: none;
  background: none;
  inset: unset;
  max-width: unset;
  max-height: unset;
}

:where(dialog:not([open])) {
  display: none !important;
}

:where(:focus) {
  outline: none;
}

:where(:focus-visible) {
  outline: none;
}

:where(:focus-visible):is(button, a, input, textarea, [tabindex="0"]) {
  outline: 0.125rem solid CanvasText;
  box-shadow: 0 0 0 0.125rem Canvas;
  outline-offset: 0.125rem;
}

:where(:focus-visible, :target) {
  scroll-margin-block: 8vh;
}

:where(.visually-hidden:not(:focus-within, :active)) {
  clip-path: inset(50%) !important;
  height: 0.0625rem !important;
  width: 0.0625rem !important;
  overflow: hidden !important;
  position: absolute !important;
  white-space: nowrap !important;
  border: 0 !important;
}

:root {
  --vh: 1vh;
  --vw: 1vw;
  --white: #fff;
  --light-gray: #bbbbbb;
  --gray: #959595;
  --dark-gray: #707070;
  --black: #454545;
  --primary: #002b75;
  --light-primary: #dbdfec;
  --font-family-base: "Shippori Mincho", serif;
  --font-family-en: "Cormorant Garamond", serif;
  --font-size-base: 1rem;
  --line-height-base: 2;
  --container-width: 75rem;
  --side-padding: 5.1875rem;
  --side-padding-mobile: 1.25rem;
  --inter: "Inter", sans-serif;
  --trim: trim-both cap alphabetic;
}

html,
body {
  font-size: var(--font-size-base);
  line-height: var(--line-height-base);
  font-family: var(--font-family-base);
  color: var(--black);
  font-weight: 400;
  background: var(--white);
  overflow-x: clip;
}

html:has(.is-gnavi-open) {
  scrollbar-gutter: stable;
  overflow: clip;
}

.bg-gray {
  background: #ededed;
}

:where(a:not[class]) {
  color: var(--primary);
  text-decoration: none;
}
:where(a:not[class]):hover {
  text-decoration: underline;
}

.on-fade {
  transition: opacity 0.3s;
}
.on-fade:hover {
  opacity: 0.8;
}

p + p {
  margin-top: 2rem;
}

.layout-header {
  position: sticky;
  top: 0;
  z-index: 11;
  background-color: var(--primary);
  color: var(--white);
  overflow-x: clip;
  display: flex;
  align-items: center;
  column-gap: 2.5rem;
  justify-content: space-between;
  padding-right: 2.25rem;
  border-bottom: solid 1px #dedfe1;
}
.layout-header__inner {
  width: 100%;
  padding-right: 1.5rem;
  display: flex;
  align-items: center;
  justify-content: space-between;
  min-height: 5.5rem;
}
.layout-header__logo {
  border-right: solid 1px #dedfe1;
  align-self: stretch;
  display: flex;
  align-items: center;
}
.layout-header__logo img {
  width: 100%;
}
.layout-header__sp-button {
  width: 2rem;
  height: 2rem;
  padding: 0.25rem;
  box-sizing: border-box;
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 0.25rem;
  border: none;
  -webkit-appearance: none;
  appearance: none;
}
.layout-header__sp-button-bar {
  width: 100%;
  height: 0.0625rem;
  border-radius: 3px;
  display: block;
  background-color: var(--white);
  transition:
    transform 0.3s ease,
    opacity 0.3s ease;
}
.is-gnavi-open .layout-header__sp-button-bar:nth-child(1) {
  transform: translateY(0.3125rem) rotate(45deg);
}
.is-gnavi-open .layout-header__sp-button-bar:nth-child(2) {
  opacity: 0;
}
.is-gnavi-open .layout-header__sp-button-bar:nth-child(3) {
  transform: translateY(-0.3125rem) rotate(-45deg);
}
.layout-header__nav-list {
  display: flex;
  column-gap: clamp(1rem, 1.61vw, 3rem);
}
.layout-header__nav-list > li a {
  text-decoration: none;
  font-size: clamp(0.875rem, 1.41vw, 1rem);
}
.layout-header__nav-list > li a:hover {
  text-decoration: underline;
}
.layout-header__nav-list > li a::after {
  display: inline-block;
  content: "";
  margin-left: 1rem;
  width: 1rem;
  height: 0.75rem;
  background: url(../images/icon_arrow_down.svg) no-repeat;
  background-size: contain;
}

.layout-footer {
  background-color: var(--light-primary);
  padding-inline: var(--side-padding);
}
.layout-footer__inner {
  max-width: 75rem;
  margin-inline: auto;
  position: relative;
  padding-block: 6rem 1.875rem;
  display: flex;
  flex-direction: column;
  align-items: center;
}
.layout-footer__inner .tel {
  margin-top: 2.5rem;
  font-size: 1.25rem;
}
.layout-footer__inner .tel__title {
  margin-right: 0.5rem;
}
.layout-footer__inner .tel__num {
  font-size: 2.5rem;
  line-height: 1.125;
  display: inline-block;
}
.layout-footer__inner .business-hours {
  margin-top: 0.5rem;
  font-size: 0.875rem;
}
.layout-footer__inner .copyright {
  margin-top: 3.4375rem;
  font-size: 0.75rem;
}

.common-section {
  background-color: #f4f4f9;
  padding-block: 7.5rem;
  padding-inline: 1.25rem;
}
.common-section--aboutus {
  background: url(../images/section-bg_01.jpg) no-repeat;
  background-size: cover;
}
.common-section--service {
  position: relative;
}
.common-section--service::before,
.common-section--service::after {
  content: "";
  position: absolute;
  display: block;
  background-repeat: no-repeat;
  background-size: contain;
}
.common-section--service::before {
  content: "";
  top: 7.5rem;
  right: 0;
  width: 50%;
  max-width: 32.3125rem;
  aspect-ratio: 517/384;
  background-image: url(../images/service_bg_img01.png);
}
.common-section--service::after {
  bottom: 23.5625rem;
  left: 0;
  width: 50%;
  max-width: 36.1875rem;
  aspect-ratio: 579/418;
  background-image: url(../images/service_bg_img02.png);
  background-position: bottom;
}
.common-section--recruit {
  position: relative;
}
.common-section--recruit::after {
  content: "";
  bottom: 0;
  left: 0;
  width: 34.8125rem;
  height: 44.75rem;
  aspect-ratio: 557/716;
  position: absolute;
  display: block;
  background: url(../images/recruit_bg_img.png) no-repeat;
  background-size: contain;
  background-position: bottom;
}
.common-section--company {
  position: relative;
}
.common-section--company::after {
  content: "";
  top: 0;
  right: 0;
  width: 48.6875rem;
  height: 37.875rem;
  aspect-ratio: 779/606;
  position: absolute;
  display: block;
  background: url(../images/company_bg_img.png) no-repeat;
  background-size: contain;
}
.common-section__inner {
  max-width: 75rem;
  margin-inline: auto;
  position: relative;
  padding-block: 6rem 1.875rem;
  padding-inline: 6.25rem 6.25rem;
}
.common-section__inner--has-bg {
  background-image: linear-gradient(to bottom, #ffffff 0%, #f4f4f9 100%);
}
.common-section__inner--full-wide {
  padding-block: 0;
  padding-inline: 0;
}
.common-section:last-child {
  padding-bottom: 12.5rem;
}

.mv {
  height: calc(100vh - 5.5rem);
  background-color: var(--primary);
  color: var(--white);
  position: relative;
}
.mv__inner {
  max-width: calc(75rem + var(--side-padding) * 2);
  width: 100%;
  padding-inline: var(--side-padding);
  position: absolute;
  left: 50%;
  top: 0;
  display: flex;
  align-items: flex-end;
  transform: translateX(-50%);
  bottom: 77.5%;
}
.mv__heading {
  font-family: var(--font-family-en);
  font-size: 9.1vw;
  transform: translateY(12.8235294118vw);
  line-height: 1.15;
  letter-spacing: 0.02em;
  font-weight: 500;
}
.mv__scroll {
  text-decoration: none;
  position: absolute;
  top: 2.5rem;
  right: var(--side-padding);
  width: 10.125rem;
  height: 10.125rem;
  border-radius: 50%;
  border: solid 1px var(--white);
  display: flex;
  align-items: center;
  justify-content: center;
  font-family: var(--font-family-en);
  font-weight: 400;
  font-size: 1.25rem;
}
.mv__scrollLine {
  width: 0.0625rem;
  height: 4rem;
  position: absolute;
  top: 100%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.mv__scrollLine::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: var(--white);
  animation: liner 2.5s cubic-bezier(0.8, 0.4, 0.2, 0.6) infinite;
}
.mv__image {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 77.5%;
}
.mv__image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

@keyframes liner {
  0% {
    transform: scale(1, 0);
    transform-origin: 0 0;
  }
  5% {
    transform: scale(1, 0);
    transform-origin: 0 0;
  }
  48% {
    transform: scale(1, 1);
    transform-origin: 0 0;
  }
  52% {
    transform: scale(1, 1);
    transform-origin: 0 100%;
  }
  95% {
    transform: scale(1, 0);
    transform-origin: 0 100%;
  }
  100% {
    transform: scale(1, 0);
    transform-origin: 0 100%;
  }
}
.common-heading__en {
  font-family: "Cormorant Garamond", serif;
  font-size: 11.6vw;
  font-weight: 500;
  color: var(--primary);
  text-align: center;
}

.common-heading__ja {
  font-size: 2rem;
  text-align: center;
  font-weight: 500;
}
.common-heading__ja > .common-heading__ja {
  border-bottom: 1px solid #000;
  padding-bottom: 1rem;
  font-size: 1.25rem;
}

.aboutus-heading {
  padding-top: 3.125rem;
  margin-bottom: 3rem;
  text-align: center;
  position: relative;
}
.aboutus-heading::before {
  content: "";
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  position: absolute;
  width: 2.1875rem;
  height: 1.5625rem;
  background: url(../images/logo-mark.svg) no-repeat;
}
.aboutus-heading__inner {
  font-size: 2rem;
  color: var(--primary);
  font-weight: 500;
}

.company-list__row {
  display: flex;
  border-bottom: 1px solid var(--light-gray);
}
.company-list__title {
  flex: 0 0 12.25rem;
  position: relative;
  padding-block: 1.25rem;
}
.company-list__title::before {
  content: "";
  bottom: -0.0625rem;
  left: 0;
  position: absolute;
  width: 100%;
  height: 0.0625rem;
  background: var(--primary);
}
.company-list__data {
  padding-block: 1.25rem;
}
.company-list__data.__p-lg {
  padding-block: 2.5rem;
}

.map > iframe {
  width: 100%;
  min-height: 27.125rem;
}

.box {
  background-color: var(--white);
  padding: 2.5rem;
}
.box__inner--flex {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.box__title {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  font-size: 1.5rem;
}
.box__title::before {
  content: "◆";
  display: block;
  margin-right: 0.5rem;
  color: var(--primary);
}
.box__title-small {
  font-size: 1rem;
  margin-left: 0.5rem;
}
.box--z-index2 {
  position: relative;
  z-index: 2;
}
.box--padding-wide {
  padding: 5.25rem 5.25rem 5.25rem 6.625rem;
}

.service-box-wrapper {
  display: flex;
  flex-direction: column;
  position: relative;
  z-index: 2;
}

.service-box {
  display: flex;
  align-items: center;
}
.service-box + .service-box {
  margin-top: -6.5%;
}

.service-heading {
  width: 34.75%;
  height: 34.75%;
  aspect-ratio: 1/1;
  flex: 0 0 auto;
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
}
.service-heading::before {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  border-radius: 50%;
  background-image: linear-gradient(
    0deg,
    #f5f4f6 0%,
    #cbd7e1 48%,
    #bcbcd9 100%
  );
  transform: rotate(135deg);
  opacity: 0.75;
}
.service-heading--grad-reverse::before {
  background-image: linear-gradient(
    0deg,
    #f5f4f6 0%,
    #c6d0de 63.17%,
    #a5b4de 100%
  );
  transform: rotate(-45deg);
}
.service-heading__inner {
  background-color: var(--white);
  width: 84.17%;
  height: 84.17%;
  aspect-ratio: 1/1;
  position: relative;
  border-radius: 50%;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  box-shadow: 0 0 2rem rgba(0, 43, 117, 0.1);
}
.service-heading__ja {
  text-align: center;
  font-size: 2rem;
  font-weight: 500;
}
.service-heading__en {
  text-align: center;
  margin-top: 1.5rem;
  font-size: 1rem;
  color: var(--primary);
  font-family: "EB Garamond", serif;
}

.button-wrapper {
  width: 15rem;
}

.button {
  display: flex;
  justify-content: space-between;
  width: 100%;
  background-color: var(--primary);
  color: var(--white);
  text-decoration: none;
  padding: 1rem;
  border-radius: 2px;
  transition: opacity 0.2s ease;
}
.button:hover {
  opacity: 0.8;
}
.button__inner {
  position: relative;
  width: 100%;
}
.button__inner::after {
  content: "";
  top: 50%;
  transform: translateY(-50%);
  right: 0;
  position: absolute;
  width: 0.875rem;
  height: 0.875rem;
  background: url(../images/icon_button_arrow.svg) no-repeat;
}

.infinite-swiper {
  overflow: visible;
}
.infinite-swiper img {
  width: 100%;
}

.swiper-button-wrapper {
  display: flex;
  justify-content: center;
  margin-top: 4.125rem;
  gap: 5.375rem;
}
.swiper-button-wrapper .swiper-button-prev,
.swiper-button-wrapper .swiper-button-next {
  position: static;
  width: 1.25rem;
  height: 0.9375rem;
  position: relative;
}
.swiper-button-wrapper .swiper-button-prev::before,
.swiper-button-wrapper .swiper-button-next::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  width: 100%;
  height: 0.125rem;
  transform: translateY(-50%);
  background-color: var(--primary);
}
.swiper-button-wrapper .swiper-button-prev::after,
.swiper-button-wrapper .swiper-button-next::after {
  content: "";
  position: absolute;
  top: 50%;
  width: 0.6875rem;
  height: 0.6875rem;
  border-top: solid 2px var(--primary);
  border-right: solid 2px var(--primary);
}
.swiper-button-wrapper .swiper-button-prev::after {
  transform: rotate(-135deg) translate(40%, 27%);
  left: 0;
}
.swiper-button-wrapper .swiper-button-next::after {
  transform: rotate(45deg) translate(-40%, -27%);
  right: 0;
}

.card {
  margin-top: 1rem;
  display: grid;
  grid-template-rows: subgrid;
  gap: 0.5rem;
}
.card__media {
  margin-bottom: 0.5rem;
}
.card__tags {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
}
.card__tag {
  background-color: var(--primary);
  color: var(--white);
  border-radius: 20px;
  font-size: 0.875rem;
  padding: 0.5rem 1rem;
  line-height: 1;
}
.card__title {
  display: flex;
  align-items: center;
  font-size: 1.5rem;
  color: var(--primary);
  line-height: 1.5;
}

.cta {
  background-color: var(--primary);
  position: relative;
}
.cta::after {
  content: "";
  top: 1.25rem;
  right: 0;
  position: absolute;
  width: 21.125rem;
  height: 17.4375rem;
  aspect-ratio: 338/279;
  background: url(../images/cta_bg_img.png) no-repeat;
  background-size: contain;
}
.cta__inner {
  padding: 4.0625rem;
  display: flex;
  flex-direction: column;
  align-items: center;
  color: var(--white);
}
.cta__heading {
  font-size: 1.5rem;
  font-weight: 500;
}
.cta__tel {
  font-family: "Cormorant Garamond", serif;
  margin-top: 1.375rem;
  font-size: 2rem;
  font-style: italic;
}
.cta__tel-title {
  margin-right: 0.9375rem;
}
.cta__tel-num {
  font-family: "EB Garamond", serif;
  font-size: 3rem;
  line-height: 1.125;
  display: inline-block;
}

.lead-text {
  text-align: center;
  font-size: 1.125rem;
  line-height: 2.6666666667;
}

.outService-link {
  display: flex;
  flex-wrap: wrap;
}
.outService-link a {
  position: relative;
  display: flex;
  align-items: center;
  column-gap: 0.8125rem;
  transition: filter 0.3s ease-out;
}
.outService-link a:hover {
  filter: brightness(3);
}

.external-icon1 {
  margin-top: 0.625rem;
}

.external-icon2 {
  margin-top: 0.0625rem;
}

.rounded-0 {
  border-radius: 0 !important;
}
.rounded-sm {
  border-radius: 8px !important;
}
.rounded-md {
  border-radius: 16px !important;
}
.rounded-lg {
  border-radius: 32px !important;
}
.rounded-full {
  border-radius: 100vmax !important;
}
.d-inline {
  display: inline !important;
}
.d-inline-block {
  display: inline-block !important;
}
.d-block {
  display: block !important;
}
.d-grid {
  display: grid !important;
}
.d-inline-grid {
  display: inline-grid !important;
}
.d-flex {
  display: flex !important;
}
.d-inline-flex {
  display: inline-flex !important;
}
.d-none {
  display: none !important;
}
.flex-fill {
  flex: 1 1 auto !important;
}
.flex-row {
  flex-direction: row !important;
}
.flex-column {
  flex-direction: column !important;
}
.flex-row-reverse {
  flex-direction: row-reverse !important;
}
.flex-column-reverse {
  flex-direction: column-reverse !important;
}
.flex-grow-0 {
  flex-grow: 0 !important;
}
.flex-grow-1 {
  flex-grow: 1 !important;
}
.flex-shrink-0 {
  flex-shrink: 0 !important;
}
.flex-shrink-1 {
  flex-shrink: 1 !important;
}
.flex-wrap {
  flex-wrap: wrap !important;
}
.flex-nowrap {
  flex-wrap: nowrap !important;
}
.flex-wrap-reverse {
  flex-wrap: wrap-reverse !important;
}
.justify-content-start {
  justify-content: flex-start !important;
}
.justify-content-end {
  justify-content: flex-end !important;
}
.justify-content-center {
  justify-content: center !important;
}
.justify-content-between {
  justify-content: space-between !important;
}
.justify-content-around {
  justify-content: space-around !important;
}
.justify-content-evenly {
  justify-content: space-evenly !important;
}
.align-items-start {
  align-items: flex-start !important;
}
.align-items-end {
  align-items: flex-end !important;
}
.align-items-center {
  align-items: center !important;
}
.align-items-baseline {
  align-items: baseline !important;
}
.align-items-stretch {
  align-items: stretch !important;
}
.align-content-start {
  align-content: flex-start !important;
}
.align-content-end {
  align-content: flex-end !important;
}
.align-content-center {
  align-content: center !important;
}
.align-content-between {
  align-content: space-between !important;
}
.align-content-around {
  align-content: space-around !important;
}
.align-content-stretch {
  align-content: stretch !important;
}
.align-self-auto {
  align-self: auto !important;
}
.align-self-start {
  align-self: flex-start !important;
}
.align-self-end {
  align-self: flex-end !important;
}
.align-self-center {
  align-self: center !important;
}
.align-self-baseline {
  align-self: baseline !important;
}
.align-self-stretch {
  align-self: stretch !important;
}
.fz-xs {
  font-size: 0.75rem !important;
}
.fz-sm {
  font-size: 0.875rem !important;
}
.fz-base {
  font-size: 1rem !important;
}
.fz-lg {
  font-size: 1.125rem !important;
}
.fz-xl {
  font-size: 1.25rem !important;
}
.fz-xxl {
  font-size: 1.5rem !important;
}
.fz-xxxl {
  font-size: 1.625rem !important;
}
.fz-xxxxl {
  font-size: 1.75rem !important;
}
.fz-xxxxxl {
  font-size: 1.875rem !important;
}
.fw-normal {
  font-weight: normal !important;
}

.fw-500 {
  font-weight: 500 !important;
}

.fw-bold {
  font-weight: bold !important;
}
.lh-1 {
  line-height: 1 !important;
}
.lh-sm {
  line-height: 1.3 !important;
}
.lh-md {
  line-height: 1.5 !important;
}
.lh-base {
  line-height: 2 !important;
}
.text-left {
  text-align: left !important;
}
.text-right {
  text-align: right !important;
}
.text-center {
  text-align: center !important;
}
.text-nowrap {
  white-space: nowrap !important;
}
.color-gray {
  color: #888888 !important;
}

.lang-en {
  font-family: var(--font-family-en);
}

.uppercase {
  text-transform: uppercase;
}

.grid {
  display: grid !important;
}
.grid--ai-center {
  align-items: center;
}

.grid-cols-1 {
  grid-template-columns: repeat(1, minmax(0, 1fr));
}
.grid-cols-2 {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}
.grid-cols-3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}
.grid-cols-4 {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}
.grid-cols-5 {
  grid-template-columns: repeat(5, minmax(0, 1fr));
}
.grid-cols-6 {
  grid-template-columns: repeat(6, minmax(0, 1fr));
}
.grid-cols-7 {
  grid-template-columns: repeat(7, minmax(0, 1fr));
}
.grid-cols-8 {
  grid-template-columns: repeat(8, minmax(0, 1fr));
}
.grid-cols-9 {
  grid-template-columns: repeat(9, minmax(0, 1fr));
}
.grid-cols-10 {
  grid-template-columns: repeat(10, minmax(0, 1fr));
}
.grid-cols-11 {
  grid-template-columns: repeat(11, minmax(0, 1fr));
}
.grid-cols-12 {
  grid-template-columns: repeat(12, minmax(0, 1fr));
}
.gap-0 {
  gap: 0 !important;
}
.gap-xs {
  gap: 0.25rem !important;
}
.gap-sm {
  gap: 0.5rem !important;
}
.gap-md {
  gap: 1rem !important;
}
.gap-lg {
  gap: 1.5rem !important;
}
.gap-xl {
  gap: 2rem !important;
}
.gap-xxl {
  gap: 2.5rem !important;
}
.gap-xxxl {
  gap: 3rem !important;
}
.gap-4xl {
  gap: 4rem !important;
}
.gap-5xl {
  gap: 5rem !important;
}
.gap-6xl {
  gap: 6rem !important;
}
.gap-7xl {
  gap: 7rem !important;
}
.gap-8xl {
  gap: 8rem !important;
}
.gap-9xl {
  gap: 9rem !important;
}
.gap-10xl {
  gap: 10rem !important;
}
.gap-x-0 {
  column-gap: 0;
}
.gap-x-xs {
  column-gap: 0.25rem;
}
.gap-x-sm {
  column-gap: 0.5rem;
}
.gap-x-md {
  column-gap: 1rem;
}
.gap-x-lg {
  column-gap: 1.5rem;
}
.gap-x-xl {
  column-gap: 2rem;
}
.gap-x-xxl {
  column-gap: 2.5rem;
}
.gap-x-xxxl {
  column-gap: 3rem;
}
.gap-x-4xl {
  column-gap: 4rem;
}
.gap-x-5xl {
  column-gap: 5rem;
}
.gap-x-6xl {
  column-gap: 6rem;
}
.gap-x-7xl {
  column-gap: 7rem;
}
.gap-x-8xl {
  column-gap: 8rem;
}
.gap-x-9xl {
  column-gap: 9rem;
}
.gap-x-10xl {
  column-gap: 10rem;
}
.gap-y-0 {
  row-gap: 0;
}
.gap-y-xs {
  row-gap: 0.25rem;
}
.gap-y-sm {
  row-gap: 0.5rem;
}
.gap-y-md {
  row-gap: 1rem;
}
.gap-y-lg {
  row-gap: 1.5rem;
}
.gap-y-xl {
  row-gap: 2rem;
}
.gap-y-xxl {
  row-gap: 2.5rem;
}
.gap-y-xxxl {
  row-gap: 3rem;
}
.gap-y-4xl {
  row-gap: 4rem;
}
.gap-y-5xl {
  row-gap: 5rem;
}
.gap-y-6xl {
  row-gap: 6rem;
}
.gap-y-7xl {
  row-gap: 7rem;
}
.gap-y-8xl {
  row-gap: 8rem;
}
.gap-y-9xl {
  row-gap: 9rem;
}
.gap-y-10xl {
  row-gap: 10rem;
}
.h-25 {
  height: 25% !important;
}
.h-50 {
  height: 50% !important;
}
.h-75 {
  height: 75% !important;
}
.h-100 {
  height: 100% !important;
}
.h-auto {
  height: auto !important;
}
.mh-100 {
  max-height: 100% !important;
}
.mb-0 {
  margin-bottom: 0 !important;
}

.mt-0 {
  margin-top: 0 !important;
}
.mb-xs {
  margin-bottom: 0.25rem !important;
}

.mt-xs {
  margin-top: 0.25rem !important;
}
.mb-sm {
  margin-bottom: 0.5rem !important;
}

.mt-sm {
  margin-top: 0.5rem !important;
}
.mb-md {
  margin-bottom: 1rem !important;
}

.mt-md {
  margin-top: 1rem !important;
}
.mb-lg {
  margin-bottom: 1.5rem !important;
}

.mt-lg {
  margin-top: 1.5rem !important;
}
.mb-xl {
  margin-bottom: 2rem !important;
}

.mt-xl {
  margin-top: 2rem !important;
}
.mb-xxl {
  margin-bottom: 2.5rem !important;
}

.mt-xxl {
  margin-top: 2.5rem !important;
}
.mb-xxxl {
  margin-bottom: 3rem !important;
}

.mt-xxxl {
  margin-top: 3rem !important;
}
.mb-4xl {
  margin-bottom: 4rem !important;
}

.mt-4xl {
  margin-top: 4rem !important;
}
.mb-5xl {
  margin-bottom: 5rem !important;
}

.mt-5xl {
  margin-top: 5rem !important;
}
.mb-6xl {
  margin-bottom: 6rem !important;
}

.mt-6xl {
  margin-top: 6rem !important;
}
.mb-7xl {
  margin-bottom: 7rem !important;
}

.mt-7xl {
  margin-top: 7rem !important;
}
.mb-8xl {
  margin-bottom: 8rem !important;
}

.mt-8xl {
  margin-top: 8rem !important;
}
.mb-9xl {
  margin-bottom: 9rem !important;
}

.mt-9xl {
  margin-top: 9rem !important;
}
.mb-10xl {
  margin-bottom: 10rem !important;
}

.mt-10xl {
  margin-top: 10rem !important;
}
.ml-md {
  margin-left: 1rem !important;
}

.ml-0 {
  margin-left: 0 !important;
}
.m-inline-auto {
  margin-inline: auto !important;
}

.m-inline-inherit {
  margin-inline: inherit !important;
}

.position-static {
  position: static !important;
}
.position-relative {
  position: relative !important;
}
.position-absolute {
  position: absolute !important;
}
.position-fixed {
  position: fixed !important;
}
.position-sticky {
  position: sticky !important;
}
.visible {
  visibility: visible !important;
}
.invisible {
  visibility: hidden !important;
}
.w-25 {
  width: 25% !important;
}
.w-50 {
  width: 50% !important;
}
.w-66 {
  width: 66% !important;
}
.w-75 {
  width: 75% !important;
}
.w-100 {
  width: 100% !important;
}
.w-auto {
  width: auto !important;
}
.mw-100 {
  max-width: 100% !important;
}

.w-fit {
  width: fit-content !important;
}
.minh-unset {
  min-height: unset !important;
}

.no-break {
  word-break: keep-all;
  overflow-wrap: break-word;
}

@media (min-width: 576px) {
  .rounded-sm-0 {
    border-radius: 0 !important;
  }
  .rounded-sm-sm {
    border-radius: 8px !important;
  }
  .rounded-sm-md {
    border-radius: 16px !important;
  }
  .rounded-sm-lg {
    border-radius: 32px !important;
  }
  .rounded-sm-full {
    border-radius: 100vmax !important;
  }
  .d-sm-inline {
    display: inline !important;
  }
  .d-sm-inline-block {
    display: inline-block !important;
  }
  .d-sm-block {
    display: block !important;
  }
  .d-sm-grid {
    display: grid !important;
  }
  .d-sm-inline-grid {
    display: inline-grid !important;
  }
  .d-sm-flex {
    display: flex !important;
  }
  .d-sm-inline-flex {
    display: inline-flex !important;
  }
  .d-sm-none {
    display: none !important;
  }
  .flex-sm-fill {
    flex: 1 1 auto !important;
  }
  .flex-sm-row {
    flex-direction: row !important;
  }
  .flex-sm-column {
    flex-direction: column !important;
  }
  .flex-sm-row-reverse {
    flex-direction: row-reverse !important;
  }
  .flex-sm-column-reverse {
    flex-direction: column-reverse !important;
  }
  .flex-sm-grow-0 {
    flex-grow: 0 !important;
  }
  .flex-grow-sm-1 {
    flex-grow: 1 !important;
  }
  .flex-shrinksm--0 {
    flex-shrink: 0 !important;
  }
  .flex-shrink-sm-1 {
    flex-shrink: 1 !important;
  }
  .flex-sm-wrap {
    flex-wrap: wrap !important;
  }
  .flex-sm-nowrap {
    flex-wrap: nowrap !important;
  }
  .flex-sm-wrap-reverse {
    flex-wrap: wrap-reverse !important;
  }
  .justify-content-sm-start {
    justify-content: flex-start !important;
  }
  .justify-content-sm-end {
    justify-content: flex-end !important;
  }
  .justify-content-sm-center {
    justify-content: center !important;
  }
  .justify-content-sm-between {
    justify-content: space-between !important;
  }
  .justify-content-sm-around {
    justify-content: space-around !important;
  }
  .justify-content-sm-evenly {
    justify-content: space-evenly !important;
  }
  .align-items-sm-start {
    align-items: flex-start !important;
  }
  .align-items-sm-end {
    align-items: flex-end !important;
  }
  .align-items-sm-center {
    align-items: center !important;
  }
  .align-items-sm-baseline {
    align-items: baseline !important;
  }
  .align-items-sm-stretch {
    align-items: stretch !important;
  }
  .align-content-sm-start {
    align-content: flex-start !important;
  }
  .align-content-sm-end {
    align-content: flex-end !important;
  }
  .align-content-sm-center {
    align-content: center !important;
  }
  .align-content-sm-between {
    align-content: space-between !important;
  }
  .align-content-sm-around {
    align-content: space-around !important;
  }
  .align-content-sm-stretch {
    align-content: stretch !important;
  }
  .align-self-sm-auto {
    align-self: auto !important;
  }
  .align-self-sm-start {
    align-self: flex-start !important;
  }
  .align-self-sm-end {
    align-self: flex-end !important;
  }
  .align-self-sm-center {
    align-self: center !important;
  }
  .align-self-sm-baseline {
    align-self: baseline !important;
  }
  .align-self-sm-stretch {
    align-self: stretch !important;
  }
  .fz-sm-xs {
    font-size: 0.75rem !important;
  }
  .fz-sm-sm {
    font-size: 0.875rem !important;
  }
  .fz-sm-base {
    font-size: 1rem !important;
  }
  .fz-sm-lg {
    font-size: 1.125rem !important;
  }
  .fz-sm-xl {
    font-size: 1.25rem !important;
  }
  .fz-sm-xxl {
    font-size: 1.5rem !important;
  }
  .fz-sm-xxxl {
    font-size: 1.625rem !important;
  }
  .fz-sm-xxxxl {
    font-size: 1.75rem !important;
  }
  .fz-sm-xxxxxl {
    font-size: 1.875rem !important;
  }
  .fw-sm-bold {
    font-weight: bold !important;
  }
  .lh-sm-1 {
    line-height: 1 !important;
  }
  .lh-sm-sm {
    line-height: 1.3 !important;
  }
  .lh-sm-md {
    line-height: 1.5 !important;
  }
  .lh-sm-base {
    line-height: 2 !important;
  }
  .text-sm-left {
    text-align: left !important;
  }
  .text-sm-right {
    text-align: right !important;
  }
  .text-sm-center {
    text-align: center !important;
  }
  .text-sm-nowrap {
    white-space: nowrap !important;
  }
  .grid .grid-sm {
    display: grid !important;
  }
  .grid-cols-sm-1 {
    grid-template-columns: repeat(1, minmax(0, 1fr));
  }
  .grid-cols-sm-2 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .grid-cols-sm-3 {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  .grid-cols-sm-4 {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
  .grid-cols-sm-5 {
    grid-template-columns: repeat(5, minmax(0, 1fr));
  }
  .grid-cols-sm-6 {
    grid-template-columns: repeat(6, minmax(0, 1fr));
  }
  .grid-cols-sm-7 {
    grid-template-columns: repeat(7, minmax(0, 1fr));
  }
  .grid-cols-sm-8 {
    grid-template-columns: repeat(8, minmax(0, 1fr));
  }
  .grid-cols-sm-9 {
    grid-template-columns: repeat(9, minmax(0, 1fr));
  }
  .grid-cols-sm-10 {
    grid-template-columns: repeat(10, minmax(0, 1fr));
  }
  .grid-cols-sm-11 {
    grid-template-columns: repeat(11, minmax(0, 1fr));
  }
  .grid-cols-sm-12 {
    grid-template-columns: repeat(12, minmax(0, 1fr));
  }
  .gap-sm-0 {
    gap: 0 !important;
  }
  .gap-sm-xs {
    gap: 0.25rem !important;
  }
  .gap-sm-sm {
    gap: 0.5rem !important;
  }
  .gap-sm-md {
    gap: 1rem !important;
  }
  .gap-sm-lg {
    gap: 1.5rem !important;
  }
  .gap-sm-xl {
    gap: 2rem !important;
  }
  .gap-sm-xxl {
    gap: 2.5rem !important;
  }
  .gap-sm-xxxl {
    gap: 3rem !important;
  }
  .gap-sm-4xl {
    gap: 4rem !important;
  }
  .gap-sm-5xl {
    gap: 5rem !important;
  }
  .gap-sm-6xl {
    gap: 6rem !important;
  }
  .gap-sm-7xl {
    gap: 7rem !important;
  }
  .gap-sm-8xl {
    gap: 8rem !important;
  }
  .gap-sm-9xl {
    gap: 9rem !important;
  }
  .gap-sm-10xl {
    gap: 10rem !important;
  }
  .gap-x-sm-0 {
    column-gap: 0 !important;
  }
  .gap-x-sm-xs {
    column-gap: 0.25rem !important;
  }
  .gap-x-sm-sm {
    column-gap: 0.5rem !important;
  }
  .gap-x-sm-md {
    column-gap: 1rem !important;
  }
  .gap-x-sm-lg {
    column-gap: 1.5rem !important;
  }
  .gap-x-sm-xl {
    column-gap: 2rem !important;
  }
  .gap-x-sm-xxl {
    column-gap: 2.5rem !important;
  }
  .gap-x-sm-xxxl {
    column-gap: 3rem !important;
  }
  .gap-x-sm-4xl {
    column-gap: 4rem !important;
  }
  .gap-x-sm-5xl {
    column-gap: 5rem !important;
  }
  .gap-x-sm-6xl {
    column-gap: 6rem !important;
  }
  .gap-x-sm-7xl {
    column-gap: 7rem !important;
  }
  .gap-x-sm-8xl {
    column-gap: 8rem !important;
  }
  .gap-x-sm-9xl {
    column-gap: 9rem !important;
  }
  .gap-x-sm-10xl {
    column-gap: 10rem !important;
  }
  .gap-y-sm-0 {
    row-gap: 0 !important;
  }
  .gap-y-sm-xs {
    row-gap: 0.25rem !important;
  }
  .gap-y-sm-sm {
    row-gap: 0.5rem !important;
  }
  .gap-y-sm-md {
    row-gap: 1rem !important;
  }
  .gap-y-sm-lg {
    row-gap: 1.5rem !important;
  }
  .gap-y-sm-xl {
    row-gap: 2rem !important;
  }
  .gap-y-sm-xxl {
    row-gap: 2.5rem !important;
  }
  .gap-y-sm-xxxl {
    row-gap: 3rem !important;
  }
  .gap-y-sm-4xl {
    row-gap: 4rem !important;
  }
  .gap-y-sm-5xl {
    row-gap: 5rem !important;
  }
  .gap-y-sm-6xl {
    row-gap: 6rem !important;
  }
  .gap-y-sm-7xl {
    row-gap: 7rem !important;
  }
  .gap-y-sm-8xl {
    row-gap: 8rem !important;
  }
  .gap-y-sm-9xl {
    row-gap: 9rem !important;
  }
  .gap-y-sm-10xl {
    row-gap: 10rem !important;
  }
  .h-sm-25 {
    height: 25% !important;
  }
  .h-sm-50 {
    height: 50% !important;
  }
  .h-sm-75 {
    height: 75% !important;
  }
  .h-sm-100 {
    height: 100% !important;
  }
  .h-sm-auto {
    height: auto !important;
  }
  .mh-sm-100 {
    max-height: 100% !important;
  }
  .mb-sm-0 {
    margin-bottom: 0 !important;
  }
  .mt-sm-0 {
    margin-top: 0 !important;
  }
  .mb-sm-xs {
    margin-bottom: 0.25rem !important;
  }
  .mt-sm-xs {
    margin-top: 0.25rem !important;
  }
  .mb-sm-sm {
    margin-bottom: 0.5rem !important;
  }
  .mt-sm-sm {
    margin-top: 0.5rem !important;
  }
  .mb-sm-md {
    margin-bottom: 1rem !important;
  }
  .mt-sm-md {
    margin-top: 1rem !important;
  }
  .mb-sm-lg {
    margin-bottom: 1.5rem !important;
  }
  .mt-sm-lg {
    margin-top: 1.5rem !important;
  }
  .mb-sm-xl {
    margin-bottom: 2rem !important;
  }
  .mt-sm-xl {
    margin-top: 2rem !important;
  }
  .mb-sm-xxl {
    margin-bottom: 2.5rem !important;
  }
  .mt-sm-xxl {
    margin-top: 2.5rem !important;
  }
  .mb-sm-xxxl {
    margin-bottom: 3rem !important;
  }
  .mt-sm-xxxl {
    margin-top: 3rem !important;
  }
  .mb-sm-4xl {
    margin-bottom: 4rem !important;
  }
  .mt-sm-4xl {
    margin-top: 4rem !important;
  }
  .mb-sm-5xl {
    margin-bottom: 5rem !important;
  }
  .mt-sm-5xl {
    margin-top: 5rem !important;
  }
  .mb-sm-6xl {
    margin-bottom: 6rem !important;
  }
  .mt-sm-6xl {
    margin-top: 6rem !important;
  }
  .mb-sm-7xl {
    margin-bottom: 7rem !important;
  }
  .mt-sm-7xl {
    margin-top: 7rem !important;
  }
  .mb-sm-8xl {
    margin-bottom: 8rem !important;
  }
  .mt-sm-8xl {
    margin-top: 8rem !important;
  }
  .mb-sm-9xl {
    margin-bottom: 9rem !important;
  }
  .mt-sm-9xl {
    margin-top: 9rem !important;
  }
  .mb-sm-10xl {
    margin-bottom: 10rem !important;
  }
  .mt-sm-10xl {
    margin-top: 10rem !important;
  }
  .m-inline-sm-auto {
    margin-inline: auto !important;
  }
  .m-inline-sm-inherit {
    margin-inline: inherit !important;
  }
  .position-sm-static {
    position: static !important;
  }
  .position-sm-relative {
    position: relative !important;
  }
  .position-sm-absolute {
    position: absolute !important;
  }
  .position-sm-fixed {
    position: fixed !important;
  }
  .position-sm-sticky {
    position: sticky !important;
  }
  .sm-visible {
    visibility: visible !important;
  }
  .sm-invisible {
    visibility: hidden !important;
  }
  .w-sm-25 {
    width: 25% !important;
  }
  .w-sm-50 {
    width: 50% !important;
  }
  .w-sm-66 {
    width: 66% !important;
  }
  .w-sm-75 {
    width: 75% !important;
  }
  .w-sm-100 {
    width: 100% !important;
  }
  .w-sm-auto {
    width: auto !important;
  }
  .mw-sm-100 {
    max-width: 100% !important;
  }
}

@media (min-width: 768px) {
  .service-box:nth-child(2) {
    justify-content: flex-end;
  }
  .service-text {
    max-width: 46%;
    margin-left: 3rem;
  }
  .outService-link {
    column-gap: 3.875rem;
    row-gap: 2rem;
  }
  .rounded-md-0 {
    border-radius: 0 !important;
  }
  .rounded-md-sm {
    border-radius: 8px !important;
  }
  .rounded-md-md {
    border-radius: 16px !important;
  }
  .rounded-md-lg {
    border-radius: 32px !important;
  }
  .rounded-md-full {
    border-radius: 100vmax !important;
  }
  .d-md-inline {
    display: inline !important;
  }
  .d-md-inline-block {
    display: inline-block !important;
  }
  .d-md-block {
    display: block !important;
  }
  .d-md-grid {
    display: grid !important;
  }
  .d-md-inline-grid {
    display: inline-grid !important;
  }
  .d-md-flex {
    display: flex !important;
  }
  .d-md-inline-flex {
    display: inline-flex !important;
  }
  .d-md-none {
    display: none !important;
  }
  .flex-md-fill {
    flex: 1 1 auto !important;
  }
  .flex-md-row {
    flex-direction: row !important;
  }
  .flex-md-column {
    flex-direction: column !important;
  }
  .flex-md-row-reverse {
    flex-direction: row-reverse !important;
  }
  .flex-md-column-reverse {
    flex-direction: column-reverse !important;
  }
  .flex-md-grow-0 {
    flex-grow: 0 !important;
  }
  .flex-grow-md-1 {
    flex-grow: 1 !important;
  }
  .flex-shrinkmd--0 {
    flex-shrink: 0 !important;
  }
  .flex-shrink-md-1 {
    flex-shrink: 1 !important;
  }
  .flex-md-wrap {
    flex-wrap: wrap !important;
  }
  .flex-md-nowrap {
    flex-wrap: nowrap !important;
  }
  .flex-md-wrap-reverse {
    flex-wrap: wrap-reverse !important;
  }
  .justify-content-md-start {
    justify-content: flex-start !important;
  }
  .justify-content-md-end {
    justify-content: flex-end !important;
  }
  .justify-content-md-center {
    justify-content: center !important;
  }
  .justify-content-md-between {
    justify-content: space-between !important;
  }
  .justify-content-md-around {
    justify-content: space-around !important;
  }
  .justify-content-md-evenly {
    justify-content: space-evenly !important;
  }
  .align-items-md-start {
    align-items: flex-start !important;
  }
  .align-items-md-end {
    align-items: flex-end !important;
  }
  .align-items-md-center {
    align-items: center !important;
  }
  .align-items-md-baseline {
    align-items: baseline !important;
  }
  .align-items-md-stretch {
    align-items: stretch !important;
  }
  .align-content-md-start {
    align-content: flex-start !important;
  }
  .align-content-md-end {
    align-content: flex-end !important;
  }
  .align-content-md-center {
    align-content: center !important;
  }
  .align-content-md-between {
    align-content: space-between !important;
  }
  .align-content-md-around {
    align-content: space-around !important;
  }
  .align-content-md-stretch {
    align-content: stretch !important;
  }
  .align-self-md-auto {
    align-self: auto !important;
  }
  .align-self-md-start {
    align-self: flex-start !important;
  }
  .align-self-md-end {
    align-self: flex-end !important;
  }
  .align-self-md-center {
    align-self: center !important;
  }
  .align-self-md-baseline {
    align-self: baseline !important;
  }
  .align-self-md-stretch {
    align-self: stretch !important;
  }
  .fz-md-xs {
    font-size: 0.75rem !important;
  }
  .fz-md-sm {
    font-size: 0.875rem !important;
  }
  .fz-md-base {
    font-size: 1rem !important;
  }
  .fz-md-lg {
    font-size: 1.125rem !important;
  }
  .fz-md-xl {
    font-size: 1.25rem !important;
  }
  .fz-md-xxl {
    font-size: 1.5rem !important;
  }
  .fz-md-xxxl {
    font-size: 1.625rem !important;
  }
  .fz-md-xxxxl {
    font-size: 1.75rem !important;
  }
  .fz-md-xxxxxl {
    font-size: 1.875rem !important;
  }
  .fw-md-bold {
    font-weight: bold !important;
  }
  .lh-md-1 {
    line-height: 1 !important;
  }
  .lh-md-sm {
    line-height: 1.3 !important;
  }
  .lh-md-md {
    line-height: 1.5 !important;
  }
  .lh-md-base {
    line-height: 2 !important;
  }
  .text-md-left {
    text-align: left !important;
  }
  .text-md-right {
    text-align: right !important;
  }
  .text-md-center {
    text-align: center !important;
  }
  .text-md-nowrap {
    white-space: nowrap !important;
  }
  .grid .grid-md {
    display: grid !important;
  }
  .grid-cols-md-1 {
    grid-template-columns: repeat(1, minmax(0, 1fr));
  }
  .grid-cols-md-2 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .grid-cols-md-3 {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  .grid-cols-md-4 {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
  .grid-cols-md-5 {
    grid-template-columns: repeat(5, minmax(0, 1fr));
  }
  .grid-cols-md-6 {
    grid-template-columns: repeat(6, minmax(0, 1fr));
  }
  .grid-cols-md-7 {
    grid-template-columns: repeat(7, minmax(0, 1fr));
  }
  .grid-cols-md-8 {
    grid-template-columns: repeat(8, minmax(0, 1fr));
  }
  .grid-cols-md-9 {
    grid-template-columns: repeat(9, minmax(0, 1fr));
  }
  .grid-cols-md-10 {
    grid-template-columns: repeat(10, minmax(0, 1fr));
  }
  .grid-cols-md-11 {
    grid-template-columns: repeat(11, minmax(0, 1fr));
  }
  .grid-cols-md-12 {
    grid-template-columns: repeat(12, minmax(0, 1fr));
  }
  .gap-md-0 {
    gap: 0 !important;
  }
  .gap-md-xs {
    gap: 0.25rem !important;
  }
  .gap-md-sm {
    gap: 0.5rem !important;
  }
  .gap-md-md {
    gap: 1rem !important;
  }
  .gap-md-lg {
    gap: 1.5rem !important;
  }
  .gap-md-xl {
    gap: 2rem !important;
  }
  .gap-md-xxl {
    gap: 2.5rem !important;
  }
  .gap-md-xxxl {
    gap: 3rem !important;
  }
  .gap-md-4xl {
    gap: 4rem !important;
  }
  .gap-md-5xl {
    gap: 5rem !important;
  }
  .gap-md-6xl {
    gap: 6rem !important;
  }
  .gap-md-7xl {
    gap: 7rem !important;
  }
  .gap-md-8xl {
    gap: 8rem !important;
  }
  .gap-md-9xl {
    gap: 9rem !important;
  }
  .gap-md-10xl {
    gap: 10rem !important;
  }
  .gap-x-md-0 {
    column-gap: 0 !important;
  }
  .gap-x-md-xs {
    column-gap: 0.25rem !important;
  }
  .gap-x-md-sm {
    column-gap: 0.5rem !important;
  }
  .gap-x-md-md {
    column-gap: 1rem !important;
  }
  .gap-x-md-lg {
    column-gap: 1.5rem !important;
  }
  .gap-x-md-xl {
    column-gap: 2rem !important;
  }
  .gap-x-md-xxl {
    column-gap: 2.5rem !important;
  }
  .gap-x-md-xxxl {
    column-gap: 3rem !important;
  }
  .gap-x-md-4xl {
    column-gap: 4rem !important;
  }
  .gap-x-md-5xl {
    column-gap: 5rem !important;
  }
  .gap-x-md-6xl {
    column-gap: 6rem !important;
  }
  .gap-x-md-7xl {
    column-gap: 7rem !important;
  }
  .gap-x-md-8xl {
    column-gap: 8rem !important;
  }
  .gap-x-md-9xl {
    column-gap: 9rem !important;
  }
  .gap-x-md-10xl {
    column-gap: 10rem !important;
  }
  .gap-y-md-0 {
    row-gap: 0 !important;
  }
  .gap-y-md-xs {
    row-gap: 0.25rem !important;
  }
  .gap-y-md-sm {
    row-gap: 0.5rem !important;
  }
  .gap-y-md-md {
    row-gap: 1rem !important;
  }
  .gap-y-md-lg {
    row-gap: 1.5rem !important;
  }
  .gap-y-md-xl {
    row-gap: 2rem !important;
  }
  .gap-y-md-xxl {
    row-gap: 2.5rem !important;
  }
  .gap-y-md-xxxl {
    row-gap: 3rem !important;
  }
  .gap-y-md-4xl {
    row-gap: 4rem !important;
  }
  .gap-y-md-5xl {
    row-gap: 5rem !important;
  }
  .gap-y-md-6xl {
    row-gap: 6rem !important;
  }
  .gap-y-md-7xl {
    row-gap: 7rem !important;
  }
  .gap-y-md-8xl {
    row-gap: 8rem !important;
  }
  .gap-y-md-9xl {
    row-gap: 9rem !important;
  }
  .gap-y-md-10xl {
    row-gap: 10rem !important;
  }
  .h-md-25 {
    height: 25% !important;
  }
  .h-md-50 {
    height: 50% !important;
  }
  .h-md-75 {
    height: 75% !important;
  }
  .h-md-100 {
    height: 100% !important;
  }
  .h-md-auto {
    height: auto !important;
  }
  .mh-md-100 {
    max-height: 100% !important;
  }
  .mb-md-0 {
    margin-bottom: 0 !important;
  }
  .mt-md-0 {
    margin-top: 0 !important;
  }
  .mb-md-xs {
    margin-bottom: 0.25rem !important;
  }
  .mt-md-xs {
    margin-top: 0.25rem !important;
  }
  .mb-md-sm {
    margin-bottom: 0.5rem !important;
  }
  .mt-md-sm {
    margin-top: 0.5rem !important;
  }
  .mb-md-md {
    margin-bottom: 1rem !important;
  }
  .mt-md-md {
    margin-top: 1rem !important;
  }
  .mb-md-lg {
    margin-bottom: 1.5rem !important;
  }
  .mt-md-lg {
    margin-top: 1.5rem !important;
  }
  .mb-md-xl {
    margin-bottom: 2rem !important;
  }
  .mt-md-xl {
    margin-top: 2rem !important;
  }
  .mb-md-xxl {
    margin-bottom: 2.5rem !important;
  }
  .mt-md-xxl {
    margin-top: 2.5rem !important;
  }
  .mb-md-xxxl {
    margin-bottom: 3rem !important;
  }
  .mt-md-xxxl {
    margin-top: 3rem !important;
  }
  .mb-md-4xl {
    margin-bottom: 4rem !important;
  }
  .mt-md-4xl {
    margin-top: 4rem !important;
  }
  .mb-md-5xl {
    margin-bottom: 5rem !important;
  }
  .mt-md-5xl {
    margin-top: 5rem !important;
  }
  .mb-md-6xl {
    margin-bottom: 6rem !important;
  }
  .mt-md-6xl {
    margin-top: 6rem !important;
  }
  .mb-md-7xl {
    margin-bottom: 7rem !important;
  }
  .mt-md-7xl {
    margin-top: 7rem !important;
  }
  .mb-md-8xl {
    margin-bottom: 8rem !important;
  }
  .mt-md-8xl {
    margin-top: 8rem !important;
  }
  .mb-md-9xl {
    margin-bottom: 9rem !important;
  }
  .mt-md-9xl {
    margin-top: 9rem !important;
  }
  .mb-md-10xl {
    margin-bottom: 10rem !important;
  }
  .mt-md-10xl {
    margin-top: 10rem !important;
  }
  .ml-md-0 {
    margin-left: 0 !important;
  }
  .m-inline-md-auto {
    margin-inline: auto !important;
  }
  .m-inline-md-inherit {
    margin-inline: inherit !important;
  }
  .position-md-static {
    position: static !important;
  }
  .position-md-relative {
    position: relative !important;
  }
  .position-md-absolute {
    position: absolute !important;
  }
  .position-md-fixed {
    position: fixed !important;
  }
  .position-md-sticky {
    position: sticky !important;
  }
  .md-visible {
    visibility: visible !important;
  }
  .md-invisible {
    visibility: hidden !important;
  }
  .w-md-25 {
    width: 25% !important;
  }
  .w-md-50 {
    width: 50% !important;
  }
  .w-md-66 {
    width: 66% !important;
  }
  .w-md-75 {
    width: 75% !important;
  }
  .w-md-100 {
    width: 100% !important;
  }
  .w-md-auto {
    width: auto !important;
  }
  .mw-md-100 {
    max-width: 100% !important;
  }
}

@media (min-width: 992px) {
  .layout-header__logo {
    padding-inline: 2.5rem;
  }
  .layout-header__sp-button {
    display: none;
  }
  .layout-header__nav {
    margin-left: 0.5rem;
  }
  .mv {
    min-height: 37.5rem;
  }
  .rounded-lg-0 {
    border-radius: 0 !important;
  }
  .rounded-lg-sm {
    border-radius: 8px !important;
  }
  .rounded-lg-md {
    border-radius: 16px !important;
  }
  .rounded-lg-lg {
    border-radius: 32px !important;
  }
  .rounded-lg-full {
    border-radius: 100vmax !important;
  }
  .d-lg-inline {
    display: inline !important;
  }
  .d-lg-inline-block {
    display: inline-block !important;
  }
  .d-lg-block {
    display: block !important;
  }
  .d-lg-grid {
    display: grid !important;
  }
  .d-lg-inline-grid {
    display: inline-grid !important;
  }
  .d-lg-flex {
    display: flex !important;
  }
  .d-lg-inline-flex {
    display: inline-flex !important;
  }
  .d-lg-none {
    display: none !important;
  }
  .flex-lg-fill {
    flex: 1 1 auto !important;
  }
  .flex-lg-row {
    flex-direction: row !important;
  }
  .flex-lg-column {
    flex-direction: column !important;
  }
  .flex-lg-row-reverse {
    flex-direction: row-reverse !important;
  }
  .flex-lg-column-reverse {
    flex-direction: column-reverse !important;
  }
  .flex-lg-grow-0 {
    flex-grow: 0 !important;
  }
  .flex-grow-lg-1 {
    flex-grow: 1 !important;
  }
  .flex-shrinklg--0 {
    flex-shrink: 0 !important;
  }
  .flex-shrink-lg-1 {
    flex-shrink: 1 !important;
  }
  .flex-lg-wrap {
    flex-wrap: wrap !important;
  }
  .flex-lg-nowrap {
    flex-wrap: nowrap !important;
  }
  .flex-lg-wrap-reverse {
    flex-wrap: wrap-reverse !important;
  }
  .justify-content-lg-start {
    justify-content: flex-start !important;
  }
  .justify-content-lg-end {
    justify-content: flex-end !important;
  }
  .justify-content-lg-center {
    justify-content: center !important;
  }
  .justify-content-lg-between {
    justify-content: space-between !important;
  }
  .justify-content-lg-around {
    justify-content: space-around !important;
  }
  .justify-content-lg-evenly {
    justify-content: space-evenly !important;
  }
  .align-items-lg-start {
    align-items: flex-start !important;
  }
  .align-items-lg-end {
    align-items: flex-end !important;
  }
  .align-items-lg-center {
    align-items: center !important;
  }
  .align-items-lg-baseline {
    align-items: baseline !important;
  }
  .align-items-lg-stretch {
    align-items: stretch !important;
  }
  .align-content-lg-start {
    align-content: flex-start !important;
  }
  .align-content-lg-end {
    align-content: flex-end !important;
  }
  .align-content-lg-center {
    align-content: center !important;
  }
  .align-content-lg-between {
    align-content: space-between !important;
  }
  .align-content-lg-around {
    align-content: space-around !important;
  }
  .align-content-lg-stretch {
    align-content: stretch !important;
  }
  .align-self-lg-auto {
    align-self: auto !important;
  }
  .align-self-lg-start {
    align-self: flex-start !important;
  }
  .align-self-lg-end {
    align-self: flex-end !important;
  }
  .align-self-lg-center {
    align-self: center !important;
  }
  .align-self-lg-baseline {
    align-self: baseline !important;
  }
  .align-self-lg-stretch {
    align-self: stretch !important;
  }
  .fz-lg-xs {
    font-size: 0.75rem !important;
  }
  .fz-lg-sm {
    font-size: 0.875rem !important;
  }
  .fz-lg-base {
    font-size: 1rem !important;
  }
  .fz-lg-lg {
    font-size: 1.125rem !important;
  }
  .fz-lg-xl {
    font-size: 1.25rem !important;
  }
  .fz-lg-xxl {
    font-size: 1.5rem !important;
  }
  .fz-lg-xxxl {
    font-size: 1.625rem !important;
  }
  .fz-lg-xxxxl {
    font-size: 1.75rem !important;
  }
  .fz-lg-xxxxxl {
    font-size: 1.875rem !important;
  }
  .fw-lg-bold {
    font-weight: bold !important;
  }
  .lh-lg-1 {
    line-height: 1 !important;
  }
  .lh-lg-sm {
    line-height: 1.3 !important;
  }
  .lh-lg-md {
    line-height: 1.5 !important;
  }
  .lh-lg-base {
    line-height: 2 !important;
  }
  .text-lg-left {
    text-align: left !important;
  }
  .text-lg-right {
    text-align: right !important;
  }
  .text-lg-center {
    text-align: center !important;
  }
  .text-lg-nowrap {
    white-space: nowrap !important;
  }
  .grid .grid-lg {
    display: grid !important;
  }
  .grid-cols-lg-1 {
    grid-template-columns: repeat(1, minmax(0, 1fr));
  }
  .grid-cols-lg-2 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .grid-cols-lg-3 {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  .grid-cols-lg-4 {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
  .grid-cols-lg-5 {
    grid-template-columns: repeat(5, minmax(0, 1fr));
  }
  .grid-cols-lg-6 {
    grid-template-columns: repeat(6, minmax(0, 1fr));
  }
  .grid-cols-lg-7 {
    grid-template-columns: repeat(7, minmax(0, 1fr));
  }
  .grid-cols-lg-8 {
    grid-template-columns: repeat(8, minmax(0, 1fr));
  }
  .grid-cols-lg-9 {
    grid-template-columns: repeat(9, minmax(0, 1fr));
  }
  .grid-cols-lg-10 {
    grid-template-columns: repeat(10, minmax(0, 1fr));
  }
  .grid-cols-lg-11 {
    grid-template-columns: repeat(11, minmax(0, 1fr));
  }
  .grid-cols-lg-12 {
    grid-template-columns: repeat(12, minmax(0, 1fr));
  }
  .gap-lg-0 {
    gap: 0 !important;
  }
  .gap-lg-xs {
    gap: 0.25rem !important;
  }
  .gap-lg-sm {
    gap: 0.5rem !important;
  }
  .gap-lg-md {
    gap: 1rem !important;
  }
  .gap-lg-lg {
    gap: 1.5rem !important;
  }
  .gap-lg-xl {
    gap: 2rem !important;
  }
  .gap-lg-xxl {
    gap: 2.5rem !important;
  }
  .gap-lg-xxxl {
    gap: 3rem !important;
  }
  .gap-lg-4xl {
    gap: 4rem !important;
  }
  .gap-lg-5xl {
    gap: 5rem !important;
  }
  .gap-lg-6xl {
    gap: 6rem !important;
  }
  .gap-lg-7xl {
    gap: 7rem !important;
  }
  .gap-lg-8xl {
    gap: 8rem !important;
  }
  .gap-lg-9xl {
    gap: 9rem !important;
  }
  .gap-lg-10xl {
    gap: 10rem !important;
  }
  .gap-x-lg-0 {
    column-gap: 0 !important;
  }
  .gap-x-lg-xs {
    column-gap: 0.25rem !important;
  }
  .gap-x-lg-sm {
    column-gap: 0.5rem !important;
  }
  .gap-x-lg-md {
    column-gap: 1rem !important;
  }
  .gap-x-lg-lg {
    column-gap: 1.5rem !important;
  }
  .gap-x-lg-xl {
    column-gap: 2rem !important;
  }
  .gap-x-lg-xxl {
    column-gap: 2.5rem !important;
  }
  .gap-x-lg-xxxl {
    column-gap: 3rem !important;
  }
  .gap-x-lg-4xl {
    column-gap: 4rem !important;
  }
  .gap-x-lg-5xl {
    column-gap: 5rem !important;
  }
  .gap-x-lg-6xl {
    column-gap: 6rem !important;
  }
  .gap-x-lg-7xl {
    column-gap: 7rem !important;
  }
  .gap-x-lg-8xl {
    column-gap: 8rem !important;
  }
  .gap-x-lg-9xl {
    column-gap: 9rem !important;
  }
  .gap-x-lg-10xl {
    column-gap: 10rem !important;
  }
  .gap-y-lg-0 {
    row-gap: 0 !important;
  }
  .gap-y-lg-xs {
    row-gap: 0.25rem !important;
  }
  .gap-y-lg-sm {
    row-gap: 0.5rem !important;
  }
  .gap-y-lg-md {
    row-gap: 1rem !important;
  }
  .gap-y-lg-lg {
    row-gap: 1.5rem !important;
  }
  .gap-y-lg-xl {
    row-gap: 2rem !important;
  }
  .gap-y-lg-xxl {
    row-gap: 2.5rem !important;
  }
  .gap-y-lg-xxxl {
    row-gap: 3rem !important;
  }
  .gap-y-lg-4xl {
    row-gap: 4rem !important;
  }
  .gap-y-lg-5xl {
    row-gap: 5rem !important;
  }
  .gap-y-lg-6xl {
    row-gap: 6rem !important;
  }
  .gap-y-lg-7xl {
    row-gap: 7rem !important;
  }
  .gap-y-lg-8xl {
    row-gap: 8rem !important;
  }
  .gap-y-lg-9xl {
    row-gap: 9rem !important;
  }
  .gap-y-lg-10xl {
    row-gap: 10rem !important;
  }
  .h-lg-25 {
    height: 25% !important;
  }
  .h-lg-50 {
    height: 50% !important;
  }
  .h-lg-75 {
    height: 75% !important;
  }
  .h-lg-100 {
    height: 100% !important;
  }
  .h-lg-auto {
    height: auto !important;
  }
  .mh-lg-100 {
    max-height: 100% !important;
  }
  .mb-lg-0 {
    margin-bottom: 0 !important;
  }
  .mt-lg-0 {
    margin-top: 0 !important;
  }
  .mb-lg-xs {
    margin-bottom: 0.25rem !important;
  }
  .mt-lg-xs {
    margin-top: 0.25rem !important;
  }
  .mb-lg-sm {
    margin-bottom: 0.5rem !important;
  }
  .mt-lg-sm {
    margin-top: 0.5rem !important;
  }
  .mb-lg-md {
    margin-bottom: 1rem !important;
  }
  .mt-lg-md {
    margin-top: 1rem !important;
  }
  .mb-lg-lg {
    margin-bottom: 1.5rem !important;
  }
  .mt-lg-lg {
    margin-top: 1.5rem !important;
  }
  .mb-lg-xl {
    margin-bottom: 2rem !important;
  }
  .mt-lg-xl {
    margin-top: 2rem !important;
  }
  .mb-lg-xxl {
    margin-bottom: 2.5rem !important;
  }
  .mt-lg-xxl {
    margin-top: 2.5rem !important;
  }
  .mb-lg-xxxl {
    margin-bottom: 3rem !important;
  }
  .mt-lg-xxxl {
    margin-top: 3rem !important;
  }
  .mb-lg-4xl {
    margin-bottom: 4rem !important;
  }
  .mt-lg-4xl {
    margin-top: 4rem !important;
  }
  .mb-lg-5xl {
    margin-bottom: 5rem !important;
  }
  .mt-lg-5xl {
    margin-top: 5rem !important;
  }
  .mb-lg-6xl {
    margin-bottom: 6rem !important;
  }
  .mt-lg-6xl {
    margin-top: 6rem !important;
  }
  .mb-lg-7xl {
    margin-bottom: 7rem !important;
  }
  .mt-lg-7xl {
    margin-top: 7rem !important;
  }
  .mb-lg-8xl {
    margin-bottom: 8rem !important;
  }
  .mt-lg-8xl {
    margin-top: 8rem !important;
  }
  .mb-lg-9xl {
    margin-bottom: 9rem !important;
  }
  .mt-lg-9xl {
    margin-top: 9rem !important;
  }
  .mb-lg-10xl {
    margin-bottom: 10rem !important;
  }
  .mt-lg-10xl {
    margin-top: 10rem !important;
  }
  .ml-lg-0 {
    margin-left: 0 !important;
  }
  .m-inline-lg-auto {
    margin-inline: auto !important;
  }
  .m-inline-lg-inherit {
    margin-inline: inherit !important;
  }
  .position-lg-static {
    position: static !important;
  }
  .position-lg-relative {
    position: relative !important;
  }
  .position-lg-absolute {
    position: absolute !important;
  }
  .position-lg-fixed {
    position: fixed !important;
  }
  .position-lg-sticky {
    position: sticky !important;
  }
  .lg-visible {
    visibility: visible !important;
  }
  .lg-invisible {
    visibility: hidden !important;
  }
  .w-lg-25 {
    width: 25% !important;
  }
  .w-lg-50 {
    width: 50% !important;
  }
  .w-lg-66 {
    width: 66% !important;
  }
  .w-lg-75 {
    width: 75% !important;
  }
  .w-lg-100 {
    width: 100% !important;
  }
  .w-lg-auto {
    width: auto !important;
  }
  .mw-lg-100 {
    max-width: 100% !important;
  }
}

@media (min-width: 1200px) {
  .common-heading__en {
    font-size: 8.75rem;
  }
  .rounded-xl-0 {
    border-radius: 0 !important;
  }
  .rounded-xl-sm {
    border-radius: 8px !important;
  }
  .rounded-xl-md {
    border-radius: 16px !important;
  }
  .rounded-xl-lg {
    border-radius: 32px !important;
  }
  .rounded-xl-full {
    border-radius: 100vmax !important;
  }
  .d-xl-inline {
    display: inline !important;
  }
  .d-xl-inline-block {
    display: inline-block !important;
  }
  .d-xl-block {
    display: block !important;
  }
  .d-xl-grid {
    display: grid !important;
  }
  .d-xl-inline-grid {
    display: inline-grid !important;
  }
  .d-xl-flex {
    display: flex !important;
  }
  .d-xl-inline-flex {
    display: inline-flex !important;
  }
  .d-xl-none {
    display: none !important;
  }
  .flex-xl-fill {
    flex: 1 1 auto !important;
  }
  .flex-xl-row {
    flex-direction: row !important;
  }
  .flex-xl-column {
    flex-direction: column !important;
  }
  .flex-xl-row-reverse {
    flex-direction: row-reverse !important;
  }
  .flex-xl-column-reverse {
    flex-direction: column-reverse !important;
  }
  .flex-xl-grow-0 {
    flex-grow: 0 !important;
  }
  .flex-grow-xl-1 {
    flex-grow: 1 !important;
  }
  .flex-shrinkxl--0 {
    flex-shrink: 0 !important;
  }
  .flex-shrink-xl-1 {
    flex-shrink: 1 !important;
  }
  .flex-xl-wrap {
    flex-wrap: wrap !important;
  }
  .flex-xl-nowrap {
    flex-wrap: nowrap !important;
  }
  .flex-xl-wrap-reverse {
    flex-wrap: wrap-reverse !important;
  }
  .justify-content-xl-start {
    justify-content: flex-start !important;
  }
  .justify-content-xl-end {
    justify-content: flex-end !important;
  }
  .justify-content-xl-center {
    justify-content: center !important;
  }
  .justify-content-xl-between {
    justify-content: space-between !important;
  }
  .justify-content-xl-around {
    justify-content: space-around !important;
  }
  .justify-content-xl-evenly {
    justify-content: space-evenly !important;
  }
  .align-items-xl-start {
    align-items: flex-start !important;
  }
  .align-items-xl-end {
    align-items: flex-end !important;
  }
  .align-items-xl-center {
    align-items: center !important;
  }
  .align-items-xl-baseline {
    align-items: baseline !important;
  }
  .align-items-xl-stretch {
    align-items: stretch !important;
  }
  .align-content-xl-start {
    align-content: flex-start !important;
  }
  .align-content-xl-end {
    align-content: flex-end !important;
  }
  .align-content-xl-center {
    align-content: center !important;
  }
  .align-content-xl-between {
    align-content: space-between !important;
  }
  .align-content-xl-around {
    align-content: space-around !important;
  }
  .align-content-xl-stretch {
    align-content: stretch !important;
  }
  .align-self-xl-auto {
    align-self: auto !important;
  }
  .align-self-xl-start {
    align-self: flex-start !important;
  }
  .align-self-xl-end {
    align-self: flex-end !important;
  }
  .align-self-xl-center {
    align-self: center !important;
  }
  .align-self-xl-baseline {
    align-self: baseline !important;
  }
  .align-self-xl-stretch {
    align-self: stretch !important;
  }
  .fz-xl-xs {
    font-size: 0.75rem !important;
  }
  .fz-xl-sm {
    font-size: 0.875rem !important;
  }
  .fz-xl-base {
    font-size: 1rem !important;
  }
  .fz-xl-lg {
    font-size: 1.125rem !important;
  }
  .fz-xl-xl {
    font-size: 1.25rem !important;
  }
  .fz-xl-xxl {
    font-size: 1.5rem !important;
  }
  .fz-xl-xxxl {
    font-size: 1.625rem !important;
  }
  .fz-xl-xxxxl {
    font-size: 1.75rem !important;
  }
  .fz-xl-xxxxxl {
    font-size: 1.875rem !important;
  }
  .fw-xl-bold {
    font-weight: bold !important;
  }
  .lh-xl-1 {
    line-height: 1 !important;
  }
  .lh-xl-sm {
    line-height: 1.3 !important;
  }
  .lh-xl-md {
    line-height: 1.5 !important;
  }
  .lh-xl-base {
    line-height: 2 !important;
  }
  .text-xl-left {
    text-align: left !important;
  }
  .text-xl-right {
    text-align: right !important;
  }
  .text-xl-center {
    text-align: center !important;
  }
  .text-xl-nowrap {
    white-space: nowrap !important;
  }
  .grid .grid-xl {
    display: grid !important;
  }
  .grid-cols-xl-1 {
    grid-template-columns: repeat(1, minmax(0, 1fr));
  }
  .grid-cols-xl-2 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .grid-cols-xl-3 {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  .grid-cols-xl-4 {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
  .grid-cols-xl-5 {
    grid-template-columns: repeat(5, minmax(0, 1fr));
  }
  .grid-cols-xl-6 {
    grid-template-columns: repeat(6, minmax(0, 1fr));
  }
  .grid-cols-xl-7 {
    grid-template-columns: repeat(7, minmax(0, 1fr));
  }
  .grid-cols-xl-8 {
    grid-template-columns: repeat(8, minmax(0, 1fr));
  }
  .grid-cols-xl-9 {
    grid-template-columns: repeat(9, minmax(0, 1fr));
  }
  .grid-cols-xl-10 {
    grid-template-columns: repeat(10, minmax(0, 1fr));
  }
  .grid-cols-xl-11 {
    grid-template-columns: repeat(11, minmax(0, 1fr));
  }
  .grid-cols-xl-12 {
    grid-template-columns: repeat(12, minmax(0, 1fr));
  }
  .gap-xl-0 {
    gap: 0 !important;
  }
  .gap-xl-xs {
    gap: 0.25rem !important;
  }
  .gap-xl-sm {
    gap: 0.5rem !important;
  }
  .gap-xl-md {
    gap: 1rem !important;
  }
  .gap-xl-lg {
    gap: 1.5rem !important;
  }
  .gap-xl-xl {
    gap: 2rem !important;
  }
  .gap-xl-xxl {
    gap: 2.5rem !important;
  }
  .gap-xl-xxxl {
    gap: 3rem !important;
  }
  .gap-xl-4xl {
    gap: 4rem !important;
  }
  .gap-xl-5xl {
    gap: 5rem !important;
  }
  .gap-xl-6xl {
    gap: 6rem !important;
  }
  .gap-xl-7xl {
    gap: 7rem !important;
  }
  .gap-xl-8xl {
    gap: 8rem !important;
  }
  .gap-xl-9xl {
    gap: 9rem !important;
  }
  .gap-xl-10xl {
    gap: 10rem !important;
  }
  .gap-x-xl-0 {
    column-gap: 0 !important;
  }
  .gap-x-xl-xs {
    column-gap: 0.25rem !important;
  }
  .gap-x-xl-sm {
    column-gap: 0.5rem !important;
  }
  .gap-x-xl-md {
    column-gap: 1rem !important;
  }
  .gap-x-xl-lg {
    column-gap: 1.5rem !important;
  }
  .gap-x-xl-xl {
    column-gap: 2rem !important;
  }
  .gap-x-xl-xxl {
    column-gap: 2.5rem !important;
  }
  .gap-x-xl-xxxl {
    column-gap: 3rem !important;
  }
  .gap-x-xl-4xl {
    column-gap: 4rem !important;
  }
  .gap-x-xl-5xl {
    column-gap: 5rem !important;
  }
  .gap-x-xl-6xl {
    column-gap: 6rem !important;
  }
  .gap-x-xl-7xl {
    column-gap: 7rem !important;
  }
  .gap-x-xl-8xl {
    column-gap: 8rem !important;
  }
  .gap-x-xl-9xl {
    column-gap: 9rem !important;
  }
  .gap-x-xl-10xl {
    column-gap: 10rem !important;
  }
  .gap-y-xl-0 {
    row-gap: 0 !important;
  }
  .gap-y-xl-xs {
    row-gap: 0.25rem !important;
  }
  .gap-y-xl-sm {
    row-gap: 0.5rem !important;
  }
  .gap-y-xl-md {
    row-gap: 1rem !important;
  }
  .gap-y-xl-lg {
    row-gap: 1.5rem !important;
  }
  .gap-y-xl-xl {
    row-gap: 2rem !important;
  }
  .gap-y-xl-xxl {
    row-gap: 2.5rem !important;
  }
  .gap-y-xl-xxxl {
    row-gap: 3rem !important;
  }
  .gap-y-xl-4xl {
    row-gap: 4rem !important;
  }
  .gap-y-xl-5xl {
    row-gap: 5rem !important;
  }
  .gap-y-xl-6xl {
    row-gap: 6rem !important;
  }
  .gap-y-xl-7xl {
    row-gap: 7rem !important;
  }
  .gap-y-xl-8xl {
    row-gap: 8rem !important;
  }
  .gap-y-xl-9xl {
    row-gap: 9rem !important;
  }
  .gap-y-xl-10xl {
    row-gap: 10rem !important;
  }
  .h-xl-25 {
    height: 25% !important;
  }
  .h-xl-50 {
    height: 50% !important;
  }
  .h-xl-75 {
    height: 75% !important;
  }
  .h-xl-100 {
    height: 100% !important;
  }
  .h-xl-auto {
    height: auto !important;
  }
  .mh-xl-100 {
    max-height: 100% !important;
  }
  .mb-xl-0 {
    margin-bottom: 0 !important;
  }
  .mt-xl-0 {
    margin-top: 0 !important;
  }
  .mb-xl-xs {
    margin-bottom: 0.25rem !important;
  }
  .mt-xl-xs {
    margin-top: 0.25rem !important;
  }
  .mb-xl-sm {
    margin-bottom: 0.5rem !important;
  }
  .mt-xl-sm {
    margin-top: 0.5rem !important;
  }
  .mb-xl-md {
    margin-bottom: 1rem !important;
  }
  .mt-xl-md {
    margin-top: 1rem !important;
  }
  .mb-xl-lg {
    margin-bottom: 1.5rem !important;
  }
  .mt-xl-lg {
    margin-top: 1.5rem !important;
  }
  .mb-xl-xl {
    margin-bottom: 2rem !important;
  }
  .mt-xl-xl {
    margin-top: 2rem !important;
  }
  .mb-xl-xxl {
    margin-bottom: 2.5rem !important;
  }
  .mt-xl-xxl {
    margin-top: 2.5rem !important;
  }
  .mb-xl-xxxl {
    margin-bottom: 3rem !important;
  }
  .mt-xl-xxxl {
    margin-top: 3rem !important;
  }
  .mb-xl-4xl {
    margin-bottom: 4rem !important;
  }
  .mt-xl-4xl {
    margin-top: 4rem !important;
  }
  .mb-xl-5xl {
    margin-bottom: 5rem !important;
  }
  .mt-xl-5xl {
    margin-top: 5rem !important;
  }
  .mb-xl-6xl {
    margin-bottom: 6rem !important;
  }
  .mt-xl-6xl {
    margin-top: 6rem !important;
  }
  .mb-xl-7xl {
    margin-bottom: 7rem !important;
  }
  .mt-xl-7xl {
    margin-top: 7rem !important;
  }
  .mb-xl-8xl {
    margin-bottom: 8rem !important;
  }
  .mt-xl-8xl {
    margin-top: 8rem !important;
  }
  .mb-xl-9xl {
    margin-bottom: 9rem !important;
  }
  .mt-xl-9xl {
    margin-top: 9rem !important;
  }
  .mb-xl-10xl {
    margin-bottom: 10rem !important;
  }
  .mt-xl-10xl {
    margin-top: 10rem !important;
  }
  .m-inline-xl-auto {
    margin-inline: auto !important;
  }
  .m-inline-xl-inherit {
    margin-inline: inherit !important;
  }
  .position-xl-static {
    position: static !important;
  }
  .position-xl-relative {
    position: relative !important;
  }
  .position-xl-absolute {
    position: absolute !important;
  }
  .position-xl-fixed {
    position: fixed !important;
  }
  .position-xl-sticky {
    position: sticky !important;
  }
  .xl-visible {
    visibility: visible !important;
  }
  .xl-invisible {
    visibility: hidden !important;
  }
  .w-xl-25 {
    width: 25% !important;
  }
  .w-xl-50 {
    width: 50% !important;
  }
  .w-xl-66 {
    width: 66% !important;
  }
  .w-xl-75 {
    width: 75% !important;
  }
  .w-xl-100 {
    width: 100% !important;
  }
  .w-xl-auto {
    width: auto !important;
  }
  .mw-xl-100 {
    max-width: 100% !important;
  }
}

@media (min-width: 1400px) {
  .mv__heading {
    font-size: 8rem;
    transform: translateY(11.25rem);
  }
}

@media (max-width: 1199.98px) {
  .service-box + .service-box {
    margin-top: -5vw;
  }
}

@media (max-width: 991.98px) {
  .layout-header {
    display: block;
    padding-right: 0;
  }
  .layout-header__inner {
    width: calc(100vw - 0.625rem);
    padding-right: 1.25rem;
    min-height: 3.75rem;
  }
  .layout-header__logo {
    width: 11.25rem;
    position: relative;
    z-index: 11;
    flex: 0 0 auto;
    padding-inline: 1rem;
  }
  .layout-header__nav-list {
    display: block;
    position: fixed;
    top: 3.8125rem;
    right: 0;
    left: 0;
    height: calc(100vh - 3.75rem);
    background: var(--primary);
    padding: 1.25rem;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transition:
      opacity 0.3s ease,
      visibility 0.3s ease;
  }
  .layout-header__nav-list.is-gnavi-open {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
  }
  .layout-header__nav-list > li + li {
    margin-top: 1rem;
  }
  .common-section--service::after {
    width: 30%;
  }
  .mv {
    height: calc(100vh - 3.75rem);
  }
  .mv__inner {
    padding-inline: var(--side-padding-mobile);
  }
  .mv__scroll {
    top: 1.25rem;
    right: var(--side-padding-mobile);
    width: 4.375rem;
    height: 4.375rem;
    font-size: 0.75rem;
  }
  .mv__scrollLine {
    height: 1.875rem;
  }
  .box {
    padding: 1.5rem;
  }
  .box__inner--flex {
    flex-direction: column;
  }
  .box__title {
    margin-bottom: 0.5rem;
  }
  .service-heading__ja {
    font-size: clamp(1.25rem, 2.6vw, 2rem);
  }
  .card__title {
    margin-bottom: 0.5rem;
  }
}

@media (max-width: 767.98px) {
  .layout-header__inner {
    width: 100vw;
  }
  .layout-footer {
    padding-inline: var(--side-padding-mobile);
  }
  .layout-footer__inner {
    padding-block: 4rem 1.875rem;
  }
  .common-section {
    padding-block: 4rem;
  }
  .common-section--service::after {
    bottom: 50%;
    transform: translateY(1.25rem);
    width: 50%;
  }
  .common-section--recruit::after {
    width: 80%;
  }
  .common-section--company::after {
    width: 80%;
  }
  .common-section__inner {
    padding-block: 4rem 1.875rem;
    padding-inline: 1.5rem 1.5rem;
  }
  .common-section__inner--sp-full-wide {
    padding-block: 0;
    padding-inline: 0;
  }
  .common-section:last-child {
    padding-bottom: 6.25rem;
  }
  .common-heading__en {
    font-size: clamp(2.5rem, 10.66vw, 4rem);
  }
  .aboutus-heading {
    margin-bottom: 1.5rem;
  }
  .aboutus-heading__inner {
    font-size: 1.5rem;
  }
  .company-list__title {
    flex: 0 0 6.25rem;
  }
  .company-list__data.__p-lg {
    padding-block: 1.875rem;
  }
  .map > iframe {
    min-height: 18.75rem;
  }
  .box__title {
    font-size: 1.125rem;
  }
  .box__title::before {
    font-size: 1.125rem;
  }
  .box__title-small {
    font-size: 0.875rem;
  }
  .service-box {
    flex-direction: column;
  }
  .service-box + .service-box {
    margin-top: 3rem;
  }
  .service-heading {
    width: 80%;
    height: 80%;
  }
  .service-heading__inner {
    box-shadow: 0 0 2rem rgba(0, 43, 117, 0.1);
  }
  .service-heading__ja {
    font-size: clamp(1rem, 4.84vw, 1.5rem);
  }
  .service-heading__en {
    margin-top: 1rem;
  }
  .service-text {
    margin-top: 1.5rem;
  }
  .button-wrapper {
    width: 100%;
    max-width: 15rem;
  }
  .card__tags {
    gap: 0.75rem;
  }
  .card__tag {
    font-size: 0.75rem;
    padding: 0.3125rem 0.625rem;
  }
  .card__title {
    font-size: 1.125rem;
  }
  .cta::after {
    top: 0.625rem;
    width: 50%;
  }
  .cta__inner {
    padding: 1.5rem;
  }
  .cta__heading {
    font-size: 1.125rem;
  }
  .cta__tel {
    margin-top: 0.875rem;
    font-size: 1.25rem;
  }
  .cta__tel-num {
    font-size: 2rem;
  }
  .cta__business-hours {
    text-align: center;
    font-size: 0.875rem;
  }
  .lead-text {
    font-size: 1rem;
    line-height: 2.5;
  }
  .outService-link {
    flex-direction: column;
    row-gap: 1.5rem;
  }
  .outService-link a img {
    max-height: 1.5rem;
  }
  .external-icon1 {
    margin-top: 0.3125rem;
    width: 0.75rem;
  }
  .external-icon2 {
    width: 0.75rem;
  }
  .px-sm-md {
    padding-inline: 1rem !important;
  }
}

@media (max-width: 319.98px) {
  .service-heading {
    width: 100%;
    height: 100%;
  }
}
