@charset "UTF-8";
/*! destyle.css v4.0.1 | MIT License | https://github.com/nicolas-cusan/destyle.css */
/* Reset box-model and set borders */
/* ============================================ */
*,
::before,
::after {
  box-sizing: border-box;
  border-style: solid;
  border-width: 0;
  min-width: 0;
}

/* Document */
/* ============================================ */
/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 * 3. Remove gray overlay on links for iOS.
 */
html {
  line-height: 1.15; /* 1 */
  -webkit-text-size-adjust: 100%; /* 2 */
  -webkit-tap-highlight-color: transparent; /* 3*/
}

/* Sections */
/* ============================================ */
/**
 * Remove the margin in all browsers.
 */
body {
  margin: 0;
}

/**
 * Render the `main` element consistently in IE.
 */
main {
  display: block;
}

/* Vertical rhythm */
/* ============================================ */
p,
table,
blockquote,
address,
pre,
iframe,
form,
figure,
dl {
  margin: 0;
}

/* Headings */
/* ============================================ */
h1,
h2,
h3,
h4,
h5,
h6 {
  font-size: inherit;
  font-weight: inherit;
  margin: 0;
}

/* Lists (enumeration) */
/* ============================================ */
ul,
ol {
  margin: 0;
  padding: 0;
  list-style: none;
}

/* Lists (definition) */
/* ============================================ */
dt {
  font-weight: bold;
}

dd {
  margin-left: 0;
}

/* Grouping content */
/* ============================================ */
/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */
hr {
  box-sizing: content-box; /* 1 */
  height: 0; /* 1 */
  overflow: visible; /* 2 */
  border-top-width: 1px;
  margin: 0;
  clear: both;
  color: inherit;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
pre {
  font-family: monospace, monospace; /* 1 */
  font-size: inherit; /* 2 */
}

address {
  font-style: inherit;
}

/* Text-level semantics */
/* ============================================ */
/**
 * Remove the gray background on active links in IE 10.
 */
a {
  background-color: transparent;
  text-decoration: none;
  color: inherit;
}

/**
 * 1. Remove the bottom border in Chrome 57-
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */
abbr[title] {
  -webkit-text-decoration: underline dotted;
          text-decoration: underline dotted; /* 2 */
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */
b,
strong {
  font-weight: bolder;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
code,
kbd,
samp {
  font-family: monospace, monospace; /* 1 */
  font-size: inherit; /* 2 */
}

/**
 * Add the correct font size in all browsers.
 */
small {
  font-size: 80%;
}

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/* Replaced content */
/* ============================================ */
/**
 * Prevent vertical alignment issues.
 */
svg,
img,
embed,
object,
iframe {
  vertical-align: bottom;
}

/* Forms */
/* ============================================ */
/**
 * Reset form fields to make them styleable.
 * 1. Make form elements stylable across systems iOS especially.
 * 2. Inherit text-transform from parent.
 */
button,
input,
optgroup,
select,
textarea {
  -webkit-appearance: none; /* 1 */
  -moz-appearance: none;
       appearance: none;
  vertical-align: middle;
  color: inherit;
  font: inherit;
  background: transparent;
  padding: 0;
  margin: 0;
  border-radius: 0;
  text-align: inherit;
  text-transform: inherit; /* 2 */
}

/**
 * Correct cursors for clickable elements.
 */
button,
[type=button],
[type=reset],
[type=submit] {
  cursor: pointer;
}

button:disabled,
[type=button]:disabled,
[type=reset]:disabled,
[type=submit]:disabled {
  cursor: default;
}

/**
 * Improve outlines for Firefox and unify style with input elements & buttons.
 */
:-moz-focusring {
  outline: auto;
}

select:disabled {
  opacity: inherit;
}

/**
 * Remove padding
 */
option {
  padding: 0;
}

/**
 * Reset to invisible
 */
fieldset {
  margin: 0;
  padding: 0;
  min-width: 0;
}

legend {
  padding: 0;
}

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */
progress {
  vertical-align: baseline;
}

/**
 * Remove the default vertical scrollbar in IE 10+.
 */
textarea {
  overflow: auto;
}

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */
[type=number]::-webkit-inner-spin-button,
[type=number]::-webkit-outer-spin-button {
  height: auto;
}

/**
 * Correct the outline style in Safari.
 */
[type=search] {
  outline-offset: -2px; /* 1 */
}

/**
 * Remove the inner padding in Chrome and Safari on macOS.
 */
[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Fix font inheritance.
 */
::-webkit-file-upload-button {
  -webkit-appearance: button; /* 1 */
  font: inherit; /* 2 */
}

/**
 * Fix appearance for Firefox
 */
[type=number] {
  -moz-appearance: textfield;
}

/**
 * Clickable labels
 */
label[for] {
  cursor: pointer;
}

/* Interactive */
/* ============================================ */
/*
 * Add the correct display in Edge, IE 10+, and Firefox.
 */
details {
  display: block;
}

/*
 * Add the correct display in all browsers.
 */
summary {
  display: list-item;
}

/*
 * Remove outline for editable content.
 */
[contenteditable]:focus {
  outline: auto;
}

/* Tables */
/* ============================================ */
/**
1. Correct table border color inheritance in all Chrome and Safari.
*/
table {
  border-color: inherit; /* 1 */
  border-collapse: collapse;
}

caption {
  text-align: left;
}

td,
th {
  vertical-align: top;
  padding: 0;
}

th {
  text-align: left;
  font-weight: bold;
}

img {
  width: 100%;
}

@media screen and (max-width: 768px) {
  .pc-only {
    display: none;
  }
}
.sp-only {
  display: none;
}

@media screen and (max-width: 768px) {
  .sp-only {
    display: block;
  }
}
body {
  overflow-x: hidden;
}

main {
  padding-top: 79px;
}
@media screen and (max-width: 1250px) {
  main {
    padding-top: 52.66px;
  }
}
@media screen and (max-width: 768px) {
  main {
    padding-top: 0;
  }
}

@font-face {
  font-family: "Noto Sans JP";
  font-style: normal;
  font-weight: 700;
  src: url("../fonts/NotoSansJP-Bold.woff2") format("woff2");
  font-display: swap;
}
@font-face {
  font-family: "Yuji Syuku";
  font-style: normal;
  font-weight: 400;
  src: url("../fonts/YujiSyuku-Regular.woff2") format("woff2");
  font-display: swap;
}
@font-face {
  font-family: "Zen Kaku Gothic Antique";
  font-style: normal;
  font-weight: 400;
  src: url("../fonts/ZenKakuGothicAntique-Regular.woff2") format("woff2");
  font-display: swap;
}
@font-face {
  font-family: "Zen Kaku Gothic Antique";
  font-style: normal;
  font-weight: 500;
  src: url("../fonts/ZenKakuGothicAntique-Medium.woff2") format("woff2");
  font-display: swap;
}
@font-face {
  font-family: "Zen Kaku Gothic Antique";
  font-style: normal;
  font-weight: 700;
  src: url("../fonts/ZenKakuGothicAntique-Bold.woff2") format("woff2");
  font-display: swap;
}
@font-face {
  font-family: "Zen Old Mincho";
  font-style: normal;
  font-weight: 400;
  src: url("../fonts/ZenOldMincho-Regular.woff2") format("woff2");
  font-display: swap;
}
html {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-size: 0.5208333333vw;
  color: #3A3A3A;
}

@media screen and (max-width: 768px) {
  html {
    font-size: 2.6666666667vw;
  }
}
.orange-text {
  color: #F7931E;
}

header {
  background-color: #ffffff;
  display: flex;
  justify-content: space-between;
  position: fixed;
  width: 100%;
  z-index: 100;
  top: 0;
  height: 80px;
}
@media screen and (max-width: 768px) {
  header {
    height: 14.67vw;
  }
}

.header-logo {
  width: 300px;
  margin-left: 40px;
  margin-bottom: 12px;
}
@media screen and (max-width: 1250px) {
  .header-logo {
    margin-left: 2vw;
    width: clamp(180px, 3rem, 300px);
  }
}
@media screen and (max-width: 768px) {
  .header-logo {
    width: 36.5vw;
    margin-left: 0;
    margin-bottom: 4.53vw;
    margin-top: 2vw;
  }
}

.header-nav {
  display: flex;
}
.header-nav .header-nav__list {
  display: flex;
  gap: 40px;
  align-items: center;
}
@media screen and (max-width: 1250px) {
  .header-nav .header-nav__list {
    gap: 2vw;
  }
}
@media screen and (max-width: 1105px) {
  .header-nav .header-nav__list {
    gap: 1.5vw;
  }
}
@media screen and (max-width: 768px) {
  .header-nav .header-nav__list {
    position: fixed;
    top: 14.67vw;
    right: -100%;
    width: 100%;
    height: calc(100vh - 14.67vw);
    background-color: #295486;
    flex-direction: column;
    align-items: center;
    z-index: 120;
    gap: 0px;
    transition: right 0.3s ease-in-out;
  }
  .header-nav .header-nav__list.active {
    right: 0;
  }
}
.header-nav .header-nav__item {
  color: #295486;
  font-size: 16px;
  position: relative;
}
@media screen and (max-width: 1250px) {
  .header-nav .header-nav__item {
    font-size: clamp(14px, 1.6rem, 16px);
  }
}
@media screen and (max-width: 768px) {
  .header-nav .header-nav__item {
    color: #ffffff;
    font-size: 3.73vw;
    padding: 5.33vw;
    border-bottom: 1px solid #ffffff;
    width: 100%;
    text-align: center;
  }
}
.header-nav .header-nav__item::after {
  content: "";
  position: absolute;
  bottom: -8px;
  left: 50%;
  width: 0;
  height: 1px;
  background-color: #295486;
  transform: translateX(-50%);
  transition: width 0.3s ease;
}
@media screen and (max-width: 768px) {
  .header-nav .header-nav__item:hover {
    color: #BAC3E0;
  }
}
.header-nav .header-nav__item:hover::after {
  width: 40px;
}
.header-nav .header-nav__item--service {
  position: relative;
  cursor: pointer;
}
@media screen and (max-width: 768px) {
  .header-nav .header-nav__item--service .submenu-toggle {
    position: absolute;
    cursor: pointer;
    right: 4.53vw;
    top: 4vw;
  }
  .header-nav .header-nav__item--service .submenu-toggle img {
    width: 2.93vw;
    transition: transform 0.3s ease;
  }
  .header-nav .header-nav__item--service .submenu-toggle img.open {
    transform: rotate(180deg);
  }
}
.header-nav .header-nav__item--service .header-submenu {
  position: absolute;
  top: 35px;
  left: -77px;
  background-color: rgba(41, 84, 134, 0.8);
  width: 220px;
  border-radius: 3px;
  display: none;
  flex-direction: column;
  align-items: center;
  text-align: center;
  z-index: 200;
  padding: 23px 14px;
  gap: 12px;
}
@media screen and (max-width: 768px) {
  .header-nav .header-nav__item--service .header-submenu {
    position: static !important;
    width: 100%;
    overflow: hidden;
    max-height: 0;
    transition: max-height 0.4s ease-out;
    display: flex;
    flex-direction: column;
    gap: 0.08vw;
    padding: 0;
  }
  .header-nav .header-nav__item--service .header-submenu.open {
    max-height: 100vw;
  }
}
.header-nav .header-nav__item--service .header-submenu a {
  color: #ffffff;
  display: block;
  font-size: 14px;
  line-height: 1.5;
}
@media screen and (max-width: 768px) {
  .header-nav .header-nav__item--service .header-submenu a {
    font-size: 3.73vw;
    padding: 0.8vw 0;
    text-align: center;
    width: 100%;
  }
}
.header-nav .header-nav__item--service .header-submenu a:hover {
  color: #BAC3E0;
}

.header-nav__item--service.open .header-submenu {
  display: flex;
}

.hamburger-menu {
  display: none;
  background: none;
  border: none;
  cursor: pointer;
  padding: 0;
  width: 13.3vw;
  height: auto;
  position: relative;
  z-index: 10;
}
@media screen and (max-width: 768px) {
  .hamburger-menu {
    display: block;
    text-align: center;
  }
}
.hamburger-menu .bar {
  display: block;
  width: 8.267vw;
  height: 0.53vw;
  border-radius: 17px;
  margin: 1.33vw auto;
  background-color: #295486;
  transition: all 0.3s ease-in-out;
}
.hamburger-menu .menu-text {
  display: block;
  font-size: 3.2vw;
  line-height: 1.5em;
  margin-top: 5px;
  color: #295486;
  font-weight: bold;
  transition: all 0.3s ease-in-out;
  letter-spacing: 0.1em;
}
.hamburger-menu.active .bar:nth-child(1) {
  transform: translateY(1.7vw) rotate(45deg);
}
.hamburger-menu.active .bar:nth-child(2) {
  opacity: 0;
}
.hamburger-menu.active .bar:nth-child(3) {
  transform: translateY(-1.7vw) rotate(-45deg);
}

.header-recruit {
  text-align: center;
  width: 118px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  margin-left: 50px;
}
@media screen and (max-width: 1250px) {
  .header-recruit {
    margin-left: 5rem;
    width: clamp(90px, 11.8rem, 118px);
    margin-right: -2rem;
  }
}
@media screen and (max-width: 1105px) {
  .header-recruit {
    margin-left: 2rem;
    margin-right: -3rem;
  }
}
@media screen and (max-width: 768px) {
  .header-recruit {
    width: 29.2vw;
    margin-right: -6.267vw;
    margin-left: 0;
  }
}
.header-recruit:hover {
  opacity: 0.5;
}
.header-recruit .header-recruit__text {
  font-size: 18px;
}
@media screen and (max-width: 1250px) {
  .header-recruit .header-recruit__text {
    font-size: clamp(14px, 1.8rem, 18px);
  }
}
@media screen and (max-width: 768px) {
  .header-recruit .header-recruit__text {
    font-size: 3.73vw;
  }
}
.header-recruit img {
  width: 39px;
}
@media screen and (max-width: 1250px) {
  .header-recruit img {
    width: clamp(28px, 3.9rem, 39px);
  }
}
@media screen and (max-width: 768px) {
  .header-recruit img {
    width: 6.13vw;
  }
}

.header-contact {
  background-image: url(../images/bg_contact-button_01_pc.webp);
  background-size: contain;
  background-repeat: no-repeat;
  text-align: center;
  width: 182px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 5px;
  padding-left: 15px;
}
@media screen and (max-width: 1250px) {
  .header-contact {
    width: clamp(120px, 18.2rem, 182px);
    background-position: left;
    background-size: cover;
  }
}
@media screen and (max-width: 768px) {
  .header-contact {
    background-image: url(../images/bg_contact-button_02_sp.webp);
    width: 18.13vw;
    padding-left: 0;
  }
}
.header-contact:hover {
  opacity: 0.5;
}
.header-contact .header-contact__email-img {
  width: 42px;
}
@media screen and (max-width: 1250px) {
  .header-contact .header-contact__email-img {
    width: clamp(36px, 4.2rem, 42px);
  }
}
@media screen and (max-width: 768px) {
  .header-contact .header-contact__email-img {
    width: 8.53vw;
    margin-left: 3.2vw;
  }
}
.header-contact .header-contact__text {
  font-size: 18px;
  color: #ffffff;
}
@media screen and (max-width: 1250px) {
  .header-contact .header-contact__text {
    font-size: clamp(14px, 1.8rem, 18px);
  }
}
@media screen and (max-width: 768px) {
  .header-contact .header-contact__text {
    display: none;
    font-size: 3.73vw;
  }
}
.header-contact .header-contact__text::after {
  content: "";
  background-image: url(../images/icon_arrow_01_pc.webp);
  background-size: contain;
  background-repeat: no-repeat;
  width: 7px;
  height: 12px;
  display: inline-block;
  margin-left: 5px;
}

footer {
  background-color: #295486;
  text-align: center;
  color: #ffffff;
  padding-top: 90px;
  padding-bottom: 12px;
}
@media screen and (max-width: 1550px) {
  footer {
    padding: 90px 5% 12px 5%;
  }
}
@media screen and (max-width: 768px) {
  footer {
    padding: 5.4rem 2rem 10px 2rem;
  }
}
footer .footer__wrapper {
  max-width: 1523px;
  text-align: left;
  margin: 0 auto;
  display: flex;
  margin-bottom: 77px;
}
@media screen and (max-width: 768px) {
  footer .footer__wrapper {
    flex-direction: column-reverse;
    margin-bottom: 5.6rem;
  }
}
footer .footer__wrapper .footer__company-details {
  margin-right: 88px;
}
@media screen and (max-width: 1550px) {
  footer .footer__wrapper .footer__company-details {
    min-width: 284px;
    margin-right: 8rem;
  }
}
@media screen and (max-width: 768px) {
  footer .footer__wrapper .footer__company-details {
    text-align: center;
    min-width: 100%;
    margin-right: 0;
    width: 100%;
  }
}
footer .footer__wrapper .footer__company-details .footer__logo {
  width: 285px;
  margin-left: -23px;
  margin-bottom: -10px;
}
@media screen and (max-width: 1550px) {
  footer .footer__wrapper .footer__company-details .footer__logo {
    width: clamp(200px, 28.5rem, 285px);
  }
}
@media screen and (max-width: 768px) {
  footer .footer__wrapper .footer__company-details .footer__logo {
    width: 63.73vw;
    margin-left: 0;
    margin-bottom: -5%;
  }
}
footer .footer__wrapper .footer__company-details .footer__company-name {
  font-size: 28px;
}
@media screen and (max-width: 1550px) {
  footer .footer__wrapper .footer__company-details .footer__company-name {
    font-size: clamp(20px, 2.8rem, 28px);
  }
}
@media screen and (max-width: 768px) {
  footer .footer__wrapper .footer__company-details .footer__company-name {
    font-size: 4.8vw;
    line-height: 1.5em;
  }
}
footer .footer__wrapper .footer__company-details .footer__address {
  font-size: 18px;
  line-height: 1.5em;
}
@media screen and (max-width: 1250px) {
  footer .footer__wrapper .footer__company-details .footer__address {
    font-size: clamp(14px, 1.8rem, 18px);
  }
}
@media screen and (max-width: 768px) {
  footer .footer__wrapper .footer__company-details .footer__address {
    font-size: clamp(16px, 1.6rem, 18px);
    display: inline-block;
  }
}
footer .footer__wrapper .footer__company-details .footer__sns {
  display: flex;
  align-items: center;
  font-family: "Zen Old Mincho", serif;
  margin-top: 11px;
}
@media screen and (max-width: 768px) {
  footer .footer__wrapper .footer__company-details .footer__sns {
    justify-content: center;
  }
}
footer .footer__wrapper .footer__company-details .footer__sns .footer-sns {
  font-size: 18px;
}
@media screen and (max-width: 768px) {
  footer .footer__wrapper .footer__company-details .footer__sns .footer-sns {
    font-size: clamp(16px, 1.6rem, 18px);
    display: inline-block;
  }
}
footer .footer__wrapper .footer__company-details .footer__sns .icon__x {
  width: 23px;
  margin-left: 30px;
  position: relative;
}
@media screen and (max-width: 768px) {
  footer .footer__wrapper .footer__company-details .footer__sns .icon__x {
    width: clamp(24px, 2.4rem, 28px);
  }
}
footer .footer__wrapper .footer__company-details .footer__sns .icon__x::before {
  content: "";
  position: absolute;
  bottom: 2px;
  left: -12px;
  width: 1px;
  height: 18px;
  background-color: #ffffff;
}
footer .footer__wrapper .footer__nav--wrapper {
  display: flex;
}
@media screen and (max-width: 1550px) {
  footer .footer__wrapper .footer__nav--wrapper {
    flex-wrap: wrap;
    width: -moz-fit-content;
    width: fit-content;
  }
}
@media screen and (max-width: 768px) {
  footer .footer__wrapper .footer__nav--wrapper {
    flex-direction: column;
    width: 100%;
  }
}
footer .footer__wrapper .footer__nav--wrapper .footer__nav {
  font-size: 18px;
}
@media screen and (max-width: 1250px) {
  footer .footer__wrapper .footer__nav--wrapper .footer__nav {
    font-size: clamp(16px, 1.8rem, 18px);
  }
}
@media screen and (max-width: 768px) {
  footer .footer__wrapper .footer__nav--wrapper .footer__nav {
    font-size: clamp(14px, 1.4rem, 16px);
  }
}
footer .footer__wrapper .footer__nav--wrapper .footer__nav .footer-nav__heading {
  position: relative;
  margin-bottom: 20px;
}
@media screen and (max-width: 768px) {
  footer .footer__wrapper .footer__nav--wrapper .footer__nav .footer-nav__heading {
    font-size: clamp(16px, 1.6rem, 18px);
    margin-bottom: clamp(24px, 2.4rem, 28px);
    line-height: 1.5em;
    margin-left: 4px;
  }
}
footer .footer__wrapper .footer__nav--wrapper .footer__nav .footer-nav__heading::after {
  content: "";
  position: absolute;
  bottom: -6px;
  left: -11px;
  width: 141px;
  height: 1px;
  background-color: #ffffff;
}
@media screen and (max-width: 768px) {
  footer .footer__wrapper .footer__nav--wrapper .footer__nav .footer-nav__heading::after {
    width: 89.3vw;
    bottom: -7px;
    left: 0;
  }
}
footer .footer__wrapper .footer__nav--wrapper .footer__nav .footer-nav__list {
  display: flex;
  flex-direction: column;
  gap: 15px;
  line-height: 1.5em;
}
@media screen and (max-width: 768px) {
  footer .footer__wrapper .footer__nav--wrapper .footer__nav .footer-nav__list {
    margin-left: 4px;
    display: grid;
    grid-template-columns: max-content max-content max-content;
    grid-auto-flow: column;
    -moz-column-gap: 2rem;
         column-gap: 2rem;
    row-gap: 1.3rem;
    grid-template-areas: "item1 item3 item5" "item2 item4 .";
  }
}
footer .footer__wrapper .footer__nav--wrapper .footer__nav .footer-nav__list .footer-nav__item:hover {
  color: #BAC3E0;
}
@media screen and (max-width: 768px) {
  footer .footer__wrapper .footer__nav--wrapper .footer__nav .footer-nav__item:nth-child(1) {
    grid-area: item1;
  }
  footer .footer__wrapper .footer__nav--wrapper .footer__nav .footer-nav__item:nth-child(2) {
    grid-area: item2;
  }
  footer .footer__wrapper .footer__nav--wrapper .footer__nav .footer-nav__item:nth-child(3) {
    grid-area: item3;
  }
  footer .footer__wrapper .footer__nav--wrapper .footer__nav .footer-nav__item:nth-child(4) {
    grid-area: item4;
  }
  footer .footer__wrapper .footer__nav--wrapper .footer__nav .footer-nav__item:nth-child(5) {
    grid-area: item5;
  }
}
footer .footer__wrapper .footer__nav--wrapper .footer-nav__first {
  margin-right: 52px;
}
@media screen and (max-width: 768px) {
  footer .footer__wrapper .footer__nav--wrapper .footer-nav__first {
    margin-right: 0;
    margin-bottom: 3.3rem;
  }
}
footer .footer__wrapper .footer__nav--wrapper .footer-top-nav__list {
  margin-left: 48px;
  font-size: 18px;
  display: flex;
  gap: 30px;
}
@media screen and (max-width: 1550px) {
  footer .footer__wrapper .footer__nav--wrapper .footer-top-nav__list {
    margin-left: 0;
  }
}
@media screen and (max-width: 1314px) {
  footer .footer__wrapper .footer__nav--wrapper .footer-top-nav__list {
    margin-top: 4vw;
    flex-wrap: wrap;
  }
}
@media screen and (max-width: 1250px) {
  footer .footer__wrapper .footer__nav--wrapper .footer-top-nav__list {
    font-size: clamp(16px, 1.8rem, 18px);
  }
}
@media screen and (max-width: 768px) {
  footer .footer__wrapper .footer__nav--wrapper .footer-top-nav__list {
    font-size: clamp(14px, 1.4rem, 16px);
    margin-top: 3.3rem;
    display: grid;
    grid-template-columns: max-content max-content max-content;
    grid-auto-flow: column;
    -moz-column-gap: 2rem;
         column-gap: 2rem;
    row-gap: 1.3rem;
    grid-template-areas: "nav1 nav2 nav3" "nav4 nav5 nav6";
    margin-left: 0;
    margin-bottom: 7rem;
  }
}
@media screen and (max-width: 768px) {
  footer .footer__wrapper .footer__nav--wrapper .footer-top-nav__list .footer-top-nav__item:nth-child(1) {
    grid-area: nav1;
  }
  footer .footer__wrapper .footer__nav--wrapper .footer-top-nav__list .footer-top-nav__item:nth-child(2) {
    grid-area: nav2;
  }
  footer .footer__wrapper .footer__nav--wrapper .footer-top-nav__list .footer-top-nav__item:nth-child(3) {
    grid-area: nav3;
  }
  footer .footer__wrapper .footer__nav--wrapper .footer-top-nav__list .footer-top-nav__item:nth-child(4) {
    grid-area: nav4;
  }
  footer .footer__wrapper .footer__nav--wrapper .footer-top-nav__list .footer-top-nav__item:nth-child(5) {
    grid-area: nav5;
  }
  footer .footer__wrapper .footer__nav--wrapper .footer-top-nav__list .footer-top-nav__item:nth-child(6) {
    grid-area: nav6;
  }
}
footer .footer__wrapper .footer__nav--wrapper .footer-top-nav__list .footer-top-nav__item:hover {
  color: #BAC3E0;
}
footer .privacy__button {
  font-size: 14px;
}
@media screen and (max-width: 768px) {
  footer .privacy__button {
    font-size: clamp(12px, 1.2rem, 14px);
  }
}
footer .copyright {
  font-size: 14px;
  margin-top: 8px;
}
@media screen and (max-width: 768px) {
  footer .copyright {
    font-size: clamp(12px, 1.2rem, 14px);
    margin-top: 4px;
  }
}

.wpcf7-form {
  max-width: 1200px;
  display: flex;
  flex-direction: column;
}
@media screen and (max-width: 768px) {
  .wpcf7-form {
    max-width: 100%;
  }
}
.wpcf7-form .form-group {
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.wpcf7-form .form-group label {
  font-size: 18px;
  font-weight: 500;
}
@media screen and (max-width: 768px) {
  .wpcf7-form .form-group label {
    font-size: 3.73vw;
    font-weight: 400;
  }
}
.wpcf7-form .form-group label .required {
  font-size: 14px;
  background-color: #295486;
  color: #ffffff;
  padding: 1px 8px;
  border-radius: 6px;
  margin-left: 10px;
}
@media screen and (max-width: 768px) {
  .wpcf7-form .form-group label .required {
    font-size: 3.73vw;
    margin-left: 4.53vw;
    padding: 1px 2.13vw;
  }
}
.wpcf7-form .form-group label .small-notice {
  font-size: 14px;
  font-weight: 400;
  margin-left: 6px;
}
@media screen and (max-width: 768px) {
  .wpcf7-form .form-group label .small-notice {
    font-size: 3.73vw;
  }
}
.wpcf7-form .form-group .form-label {
  font-size: 18px;
  font-weight: 500;
}
@media screen and (max-width: 768px) {
  .wpcf7-form .form-group .form-label {
    font-size: 3.73vw;
    font-weight: 400;
  }
}
.wpcf7-form .form-group .form-label .required {
  font-size: 14px;
  background-color: #295486;
  color: #ffffff;
  padding: 1px 8px;
  border-radius: 6px;
  margin-left: 10px;
}
@media screen and (max-width: 768px) {
  .wpcf7-form .form-group .form-label .required {
    font-size: 3.73vw;
    margin-left: 4.53vw;
    padding: 1px 2.13vw;
  }
}
.wpcf7-form .form-group input {
  border: 1px solid #295486;
  font-size: 18px;
  padding: 10px;
  width: 100%;
  height: 50px;
  margin-top: 6px;
}
@media screen and (max-width: 768px) {
  .wpcf7-form .form-group input {
    font-size: 3.73vw;
    padding: 2.67vw;
    height: 10.67vw;
    margin-top: 1.87vw;
  }
}
.wpcf7-form .form-group ::-moz-placeholder {
  color: rgba(58, 58, 58, 0.3);
}
.wpcf7-form .form-group ::placeholder {
  color: rgba(58, 58, 58, 0.3);
}
.wpcf7-form .form-group textarea {
  border: 1px solid #295486;
  font-size: 18px;
  padding: 10px;
  width: 100%;
  height: 348px;
  margin-top: 6px;
}
@media screen and (max-width: 768px) {
  .wpcf7-form .form-group textarea {
    font-size: 3.73vw;
    height: 80vw;
    padding: 3vw;
    margin-top: 1.87vw;
  }
}
.wpcf7-form .form-group:not(:last-child) {
  margin-bottom: 35px;
}
@media screen and (max-width: 768px) {
  .wpcf7-form .form-group:not(:last-child) {
    margin-bottom: 5.33vw;
  }
}
.wpcf7-form .form-radio {
  display: flex;
  flex-direction: row;
  justify-content: flex-start;
}
@media screen and (max-width: 768px) {
  .wpcf7-form .form-radio {
    flex-direction: column;
    gap: 1.6vw;
  }
}
.wpcf7-form .form-radio .wpcf7-radio {
  display: flex;
  align-items: center;
  flex-direction: row;
  justify-content: center;
  margin-left: 40px;
  gap: 20px;
}
@media screen and (max-width: 768px) {
  .wpcf7-form .form-radio .wpcf7-radio {
    justify-content: flex-start;
    margin-left: 0;
    gap: 8.53vw;
  }
}
.wpcf7-form .form-radio .wpcf7-radio label {
  display: flex;
  align-items: center;
}
.wpcf7-form .form-radio .wpcf7-radio label input {
  width: 14px;
  height: 14px;
  border: 1px solid #3A3A3A;
  border-radius: 2px;
  margin-top: 0;
  margin-right: 9px;
  line-height: 1.5em;
  padding: 0;
}
@media screen and (max-width: 768px) {
  .wpcf7-form .form-radio .wpcf7-radio label input {
    width: 3.73vw;
    height: 3.73vw;
  }
}
.wpcf7-form .form-radio .wpcf7-radio label input:checked {
  background-color: #295486;
  border-color: #295486;
  position: relative;
}
.wpcf7-form .form-radio .wpcf7-radio label input:checked::after {
  content: "✓";
  color: #fff;
  font-size: 14px;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -55%);
}
@media screen and (max-width: 768px) {
  .wpcf7-form .form-radio .wpcf7-radio label input:checked::after {
    font-size: 3.73vw;
  }
}
.wpcf7-form .form-privacy {
  display: flex;
  align-items: center;
}
@media screen and (max-width: 768px) {
  .wpcf7-form .form-privacy {
    margin-top: 9.87vw;
  }
}
.wpcf7-form .form-privacy label {
  display: flex;
  align-items: center;
}
@media screen and (max-width: 768px) {
  .wpcf7-form .form-privacy label {
    font-size: 4.8vw;
  }
}
.wpcf7-form .form-privacy label input[type=checkbox] {
  -moz-appearance: none;
       appearance: none;
  -webkit-appearance: none;
  cursor: pointer;
  width: 20px;
  height: 20px;
  background-color: #ffffff;
  border: 1px solid #295486;
  margin-top: 0;
  margin-right: 10px;
}
@media screen and (max-width: 768px) {
  .wpcf7-form .form-privacy label input[type=checkbox] {
    width: 5.33vw;
    height: 5.33vw;
    margin-right: 2.65vw;
  }
}
.wpcf7-form .form-privacy label input[type=checkbox]:checked {
  background-color: #295486;
  border-color: #295486;
  position: relative;
}
.wpcf7-form .form-privacy label input[type=checkbox]:checked::after {
  content: "✓";
  color: #fff;
  font-size: 20px;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -55%);
}
@media screen and (max-width: 768px) {
  .wpcf7-form .form-privacy label input[type=checkbox]:checked::after {
    font-size: 5.33vw;
  }
}
.wpcf7-form .wpcf7-list-item {
  margin-left: 0 !important;
}
.wpcf7-form .privacy__text {
  font-size: 18px;
  text-align: center;
  margin-top: 10px;
  line-height: 1.5em;
}
@media screen and (max-width: 768px) {
  .wpcf7-form .privacy__text {
    font-size: 4.27vw;
    margin-top: 2.67vw;
  }
}
.wpcf7-form .form-submit {
  margin-top: 40px;
}
@media screen and (max-width: 768px) {
  .wpcf7-form .form-submit {
    margin-top: 14.93vw;
  }
}
.wpcf7-form .form-submit p {
  text-align: center;
}
.wpcf7-form .form-submit p input {
  font-size: 22px;
  color: #295486;
  border: 1px solid #295486;
  box-sizing: border-box;
  border-radius: 40px;
  cursor: pointer;
  width: 300px;
  height: 60px;
  display: flex;
  align-items: center;
  margin: 0 auto;
  justify-content: center;
  position: relative;
}
@media screen and (max-width: 768px) {
  .wpcf7-form .form-submit p input {
    font-size: 4.8vw;
    width: 66.7vw;
    height: 13.33vw;
  }
}
.wpcf7-form .form-submit p input:hover {
  background: linear-gradient(to bottom, #BAC3E0 0%, #7E8FC7 100%);
  color: #ffffff;
  border: 1px solid #295486;
}

.contact-form__notice {
  margin-top: 37px;
  font-size: 18px;
  line-height: 1.5em;
}
@media screen and (max-width: 768px) {
  .contact-form__notice {
    font-size: 3.2vw;
  }
}

.policy__link {
  text-decoration: underline;
}

.page-partner__wrapper .form .form-submit button {
  color: #ffffff;
  background-color: #295486;
}

.wpcf7-not-valid-tip {
  font-size: 18px !important;
}
@media screen and (max-width: 768px) {
  .wpcf7-not-valid-tip {
    font-size: 3.73vw !important;
  }
}

.wpcf7-response-output {
  font-size: 24px !important;
}
@media screen and (max-width: 768px) {
  .wpcf7-response-output {
    font-size: 4vw !important;
  }
}

.wpcf7-form-control-wrap {
  position: relative;
}

/* textarea用エラー */
.form-group textarea + .wpcf7-not-valid-tip {
  position: absolute !important;
  top: -188px;
  left: 210px;
  white-space: nowrap;
}
@media screen and (max-width: 1250px) {
  .form-group textarea + .wpcf7-not-valid-tip {
    top: -192px;
  }
}
@media screen and (max-width: 768px) {
  .form-group textarea + .wpcf7-not-valid-tip {
    position: static !important;
  }
}

.form-group.form-radio {
  position: relative;
}

.form-group.form-radio .wpcf7-not-valid-tip {
  position: absolute;
  left: -200px;
  white-space: nowrap;
}
@media screen and (max-width: 768px) {
  .form-group.form-radio .wpcf7-not-valid-tip {
    position: static;
  }
}

.breadcrumb__nav {
  font-size: 14px;
  max-width: 1200px;
  margin: 0 auto;
  margin-top: 16px;
}
@media screen and (max-width: 1250px) {
  .breadcrumb__nav {
    padding: 0 5% 0 5%;
  }
}
@media screen and (max-width: 768px) {
  .breadcrumb__nav {
    padding: 0 5.3vw 0 5.3vw;
    margin-top: 1.6vw;
    font-size: 3.2vw;
  }
}

.breadcrumb-nav__list {
  flex-wrap: wrap;
  align-items: center;
  display: flex;
}

.breadcrumb-nav__list li:not(:first-child)::before {
  content: "＞";
  font-size: 14px;
}
@media screen and (max-width: 768px) {
  .breadcrumb-nav__list li:not(:first-child)::before {
    font-size: 3.2vw;
  }
}

@media screen and (max-width: 768px) {
  .cleaning__before-after .section-title__type1::after {
    bottom: -10px;
  }
}

.service-swiper__container {
  max-width: 77.83vw;
  margin: 64px auto 0 auto;
  position: relative;
  /* 矢印ボタンの共通設定 */
  /* 右矢印 */
  /* 左矢印 */
}
@media screen and (max-width: 768px) {
  .service-swiper__container {
    max-width: 89.33vw;
    margin-top: 5.87vw;
  }
}
.service-swiper__container .service-swiper {
  overflow: hidden;
}
.service-swiper__container .service-swiper-button-next,
.service-swiper__container .service-swiper-button-prev {
  width: 3.28vw;
  height: 3.28vw;
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  color: transparent; /* Swiperデフォルトの矢印を消す */
  position: absolute;
  z-index: 2;
}
@media screen and (max-width: 1250px) {
  .service-swiper__container .service-swiper-button-next,
  .service-swiper__container .service-swiper-button-prev {
    width: 5.04vw;
    height: 5.04vw;
  }
}
@media screen and (max-width: 768px) {
  .service-swiper__container .service-swiper-button-next,
  .service-swiper__container .service-swiper-button-prev {
    width: 6.67vw;
    height: 6.67vw;
  }
}
.service-swiper__container .service-swiper-button-next {
  background-image: url("../images/icon_arrow_09_pc.webp");
  right: -8.17vw;
  top: 40%;
}
@media screen and (max-width: 1250px) {
  .service-swiper__container .service-swiper-button-next {
    right: -5.5vw;
  }
}
@media screen and (max-width: 768px) {
  .service-swiper__container .service-swiper-button-next {
    right: -3.5vw;
    top: 45%;
  }
}
.service-swiper__container .service-swiper-button-prev {
  background-image: url("../images/icon_arrow_08_pc.webp");
  left: -8.17vw;
  top: 40%;
}
@media screen and (max-width: 1250px) {
  .service-swiper__container .service-swiper-button-prev {
    left: -5.5vw;
  }
}
@media screen and (max-width: 768px) {
  .service-swiper__container .service-swiper-button-prev {
    left: -3.5vw;
    top: 45%;
  }
}
.service-swiper__container .service-swiper-button-next:hover {
  background-image: url("../images/icon_arrow_06_pc.webp");
}
.service-swiper__container .service-swiper-button-prev:hover {
  background-image: url("../images/icon_arrow_05_pc.webp");
}
.service-swiper__container .service-pagination {
  margin-top: 35px;
  text-align: center;
}
@media screen and (max-width: 1250px) {
  .service-swiper__container .service-pagination {
    margin-top: 2.8vw;
  }
}
@media screen and (max-width: 768px) {
  .service-swiper__container .service-pagination {
    margin-top: 5.33vw;
  }
}
.service-swiper__container .swiper-pagination-bullet {
  background: #BAC3E0;
  width: 18px !important;
  height: 18px !important;
  margin: 0 10px !important;
}
@media screen and (max-width: 768px) {
  .service-swiper__container .swiper-pagination-bullet {
    width: 1.6vw !important;
    height: 1.6vw !important;
    margin: 0 1.33vw !important;
  }
}

.cleaning__slide {
  text-align: center;
  padding: 1.25vw 7.29vw 0vw 7.29vw;
  background-color: #ffffff;
}
@media screen and (max-width: 1250px) {
  .cleaning__slide {
    padding: 1.25vw 3vw 0vw 3vw;
  }
}
@media screen and (max-width: 768px) {
  .cleaning__slide {
    padding: 4.8vw 0 0 0;
  }
}
.cleaning__slide .service-slide__title {
  font-size: 26px;
  color: #295486;
  font-weight: 700;
  line-height: 1.5em;
}
@media screen and (max-width: 768px) {
  .cleaning__slide .service-slide__title {
    font-size: 4.267vw;
  }
}
.cleaning__slide .service-slide__wrapper {
  display: flex;
  gap: 10.31vw;
  padding-bottom: 10px;
}
@media screen and (max-width: 1250px) {
  .cleaning__slide .service-slide__wrapper {
    gap: 0;
    justify-content: space-between;
  }
}
@media screen and (max-width: 768px) {
  .cleaning__slide .service-slide__wrapper {
    padding-left: 2.66vw;
    padding-right: 2.66vw;
  }
}
.cleaning__slide .service-slide__wrapper .service-slide__inner {
  width: 26.04vw;
  text-align: left;
}
@media screen and (max-width: 1250px) {
  .cleaning__slide .service-slide__wrapper .service-slide__inner {
    width: 30vw;
  }
}
@media screen and (max-width: 768px) {
  .cleaning__slide .service-slide__wrapper .service-slide__inner {
    width: 40vw;
  }
}
.cleaning__slide .service-slide__wrapper .service-slide__inner .before-after__text-wrapper {
  min-height: clamp(58px, 3.65vw, 72px);
  display: flex;
  align-items: flex-end;
}
@media screen and (max-width: 768px) {
  .cleaning__slide .service-slide__wrapper .service-slide__inner .before-after__text-wrapper {
    min-height: auto;
  }
}
.cleaning__slide .service-slide__wrapper .service-slide__inner .before-after__text-wrapper .service-slide__before-text {
  font-size: 26px;
  font-weight: 700;
  margin-top: 20px;
  line-height: 1.5em;
}
@media screen and (max-width: 1250px) {
  .cleaning__slide .service-slide__wrapper .service-slide__inner .before-after__text-wrapper .service-slide__before-text {
    font-size: clamp(16px, 2.08vw, 26px);
  }
}
@media screen and (max-width: 768px) {
  .cleaning__slide .service-slide__wrapper .service-slide__inner .before-after__text-wrapper .service-slide__before-text {
    font-size: 5.33vw;
    margin-top: 0;
  }
}
.cleaning__slide .service-slide__wrapper .service-slide__inner .before-after__text-wrapper .service-slide__after-text {
  font-size: 48px;
  font-weight: 700;
  color: #FD7E00;
  margin-top: -12px;
  position: relative;
  line-height: 1.5em;
}
@media screen and (max-width: 1250px) {
  .cleaning__slide .service-slide__wrapper .service-slide__inner .before-after__text-wrapper .service-slide__after-text {
    font-size: clamp(30px, 3.84vw, 48px);
  }
}
@media screen and (max-width: 768px) {
  .cleaning__slide .service-slide__wrapper .service-slide__inner .before-after__text-wrapper .service-slide__after-text {
    font-size: 5.33vw;
    margin-top: 0;
  }
}
.cleaning__slide .service-slide__wrapper .service-slide__inner .before-after__text-wrapper .service-slide__after-text::before {
  content: "";
  position: absolute;
  background-image: url(../images/icon_focus_01_pc.webp);
  width: 54px;
  height: 38px;
  background-repeat: no-repeat;
  background-size: contain;
  left: 90px;
  top: -7px;
}
@media screen and (max-width: 1250px) {
  .cleaning__slide .service-slide__wrapper .service-slide__inner .before-after__text-wrapper .service-slide__after-text::before {
    left: 7vw;
  }
}
@media screen and (max-width: 768px) {
  .cleaning__slide .service-slide__wrapper .service-slide__inner .before-after__text-wrapper .service-slide__after-text::before {
    width: 6.67vw;
    height: 6.4vw;
    left: 10vw;
    top: -1vw;
  }
}
.cleaning__slide .service-slide__wrapper .service-slide__inner .service-slide__img {
  width: 100%;
  height: 20.83vw;
}
.cleaning__slide .service-slide__wrapper .service-slide__inner .service-slide__img img {
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
@media screen and (max-width: 768px) {
  .cleaning__slide .service-slide__wrapper .service-slide__inner .service-slide__img {
    height: 29.33vw;
  }
}
.cleaning__slide .service-slide__wrapper .service-slide__inner .service-slide__description {
  font-size: 18px;
  line-height: 1.5em;
  min-height: 128px;
}
@media screen and (max-width: 1250px) {
  .cleaning__slide .service-slide__wrapper .service-slide__inner .service-slide__description {
    font-size: clamp(16px, 1.44vw, 18px);
    min-height: clamp(110px, 6.67vw, 128px);
  }
}
@media screen and (max-width: 768px) {
  .cleaning__slide .service-slide__wrapper .service-slide__inner .service-slide__description {
    font-size: 3.73vw;
    min-height: 26vw;
    line-height: 1.4em;
  }
}
.cleaning__slide .service-slide__wrapper .service-slide__after {
  position: relative;
}
.cleaning__slide .service-slide__wrapper .service-slide__after::before {
  content: "";
  position: absolute;
  background-image: url(../images/icon_arrow_13_pc.webp);
  width: 11.4vw;
  height: 6.71vw;
  background-repeat: no-repeat;
  background-size: contain;
  left: -20%;
  transform: translateX(-50%);
  top: 40%;
}
@media screen and (max-width: 768px) {
  .cleaning__slide .service-slide__wrapper .service-slide__after::before {
    top: 1.3vw;
    width: 9.6vw;
    height: 5.6vw;
    left: -5vw;
  }
}

.page-faq .heading {
  background-image: url(../images/mv_faq_01_pc.webp);
}
@media screen and (max-width: 768px) {
  .page-faq .heading {
    background-image: url(../images/mv_faq_02_sp.webp);
  }
}

.page-faq__wrapper {
  max-width: 1200px;
  margin: 0 auto;
  padding: 50px 0 0 0;
}
@media screen and (max-width: 1250px) {
  .page-faq__wrapper {
    padding: 5rem 5% 0 5%;
  }
}
@media screen and (max-width: 768px) {
  .page-faq__wrapper {
    padding: 8vw 5vw 0 5vw;
  }
}
.page-faq__wrapper .page-faq__title {
  color: #ffffff;
  background-color: #295486;
  text-align: center;
  padding: 14px 40px;
  width: 100%;
  line-height: 1.5em;
  font-size: 36px;
  font-weight: 500;
}
@media screen and (max-width: 1250px) {
  .page-faq__wrapper .page-faq__title {
    padding: 1.12vw 3.2vw;
    font-size: 2.88vw;
  }
}
@media screen and (max-width: 768px) {
  .page-faq__wrapper .page-faq__title {
    text-align: center;
    font-size: 4.8vw;
    padding: 2.4vw 8.8vw;
  }
}
.page-faq__wrapper .faq-accordion {
  margin-bottom: 80px;
}
@media screen and (max-width: 1250px) {
  .page-faq__wrapper .faq-accordion {
    margin-bottom: 8rem;
  }
}
@media screen and (max-width: 768px) {
  .page-faq__wrapper .faq-accordion {
    margin-bottom: 16vw;
  }
  .page-faq__wrapper .faq-accordion:last-child {
    margin-bottom: 1.6vw;
  }
}
.page-faq__wrapper .faq-accordion .panel {
  border-bottom: 1px solid #295486;
  width: 100%;
}
.page-faq__wrapper .faq-accordion .panel .panel-header {
  width: 100%;
  padding: 47px 0 35px 0px;
  display: flex;
  align-items: center;
  border: none;
  cursor: pointer;
  font-size: 26px;
  text-align: left;
  position: relative;
}
@media screen and (max-width: 1250px) {
  .page-faq__wrapper .faq-accordion .panel .panel-header {
    padding: 3.76vw 0 2.8vw 0;
    font-size: 2.08vw;
  }
}
@media screen and (max-width: 768px) {
  .page-faq__wrapper .faq-accordion .panel .panel-header {
    align-items: flex-start;
    padding: 5.33vw 0;
  }
}
.page-faq__wrapper .faq-accordion .panel .panel-header .panel-q {
  font-family: "Zen Antique", serif;
  font-size: 36px;
  color: #295486;
  width: 29px;
}
@media screen and (max-width: 1250px) {
  .page-faq__wrapper .faq-accordion .panel .panel-header .panel-q {
    font-size: 2.88vw;
    width: 2.32vw;
  }
}
@media screen and (max-width: 768px) {
  .page-faq__wrapper .faq-accordion .panel .panel-header .panel-q {
    font-size: 4.8vw;
  }
}
.page-faq__wrapper .faq-accordion .panel .panel-header .panel-q__text {
  margin-left: 38px;
  position: relative;
  color: #295486;
  font-size: 26px;
  line-height: 1.5em;
  font-weight: 500;
}
@media screen and (max-width: 1250px) {
  .page-faq__wrapper .faq-accordion .panel .panel-header .panel-q__text {
    font-size: 2.08vw;
    margin-left: 3.04vw;
  }
}
@media screen and (max-width: 768px) {
  .page-faq__wrapper .faq-accordion .panel .panel-header .panel-q__text {
    font-size: 3.73vw;
    max-width: 71.2vw;
    margin-left: 4.267vw;
  }
}
.page-faq__wrapper .faq-accordion .panel .panel-header .panel-q__text::before {
  width: 1px;
  height: 44px;
  background-color: #295486;
  content: "";
  position: absolute;
  left: -20px;
  top: -5px;
}
@media screen and (max-width: 1250px) {
  .page-faq__wrapper .faq-accordion .panel .panel-header .panel-q__text::before {
    left: -1.6vw;
    top: -0.04vw;
    height: 3.52vw;
  }
}
@media screen and (max-width: 768px) {
  .page-faq__wrapper .faq-accordion .panel .panel-header .panel-q__text::before {
    height: 5.33vw;
  }
}
.page-faq__wrapper .faq-accordion .panel .panel-header .icon {
  position: absolute;
  width: 17px;
  height: 13px;
  right: 30px;
  transition: transform 0.3s;
  transform-origin: center;
  top: 60%;
  transform: translateY(-50%);
  content: "";
  background-image: url(../images/icon_arrow_14_pc.webp);
  background-size: contain;
  background-repeat: no-repeat;
}
@media screen and (max-width: 768px) {
  .page-faq__wrapper .faq-accordion .panel .panel-header .icon {
    width: 4.53vw;
    top: 50%;
    height: 3.46vw;
    right: 2.93vw;
  }
}
.page-faq__wrapper .faq-accordion .panel .panel-header.active .icon {
  transform: translateY(-50%) rotate(-180deg);
}
.page-faq__wrapper .faq-accordion .panel .panel-content {
  height: 0;
  overflow: hidden;
  transition: height 0.3s ease-out;
}
.page-faq__wrapper .faq-accordion .panel .panel-content .panel-body {
  display: flex;
}
.page-faq__wrapper .faq-accordion .panel .panel-content .panel-body .panel-a {
  font-size: 36px;
  color: #F7931E;
  font-family: "Zen Antique", serif;
  width: 28px;
}
@media screen and (max-width: 1250px) {
  .page-faq__wrapper .faq-accordion .panel .panel-content .panel-body .panel-a {
    font-size: 2.88vw;
    width: 2.24vw;
  }
}
@media screen and (max-width: 768px) {
  .page-faq__wrapper .faq-accordion .panel .panel-content .panel-body .panel-a {
    font-size: 4.8vw;
    width: 3.73vw;
  }
}
.page-faq__wrapper .faq-accordion .panel .panel-content .panel-body .panel-a__text {
  font-size: 26px;
  line-height: 1.5em;
  margin-left: 38px;
  padding-bottom: 33px;
  padding-right: 85px;
}
@media screen and (max-width: 1250px) {
  .page-faq__wrapper .faq-accordion .panel .panel-content .panel-body .panel-a__text {
    font-size: 2.08vw;
    margin-left: 3.04vw;
    padding-bottom: 2.64vw;
    padding-right: 6.8vw;
  }
}
@media screen and (max-width: 768px) {
  .page-faq__wrapper .faq-accordion .panel .panel-content .panel-body .panel-a__text {
    font-size: 3.73vw;
    margin-left: 4.53vw;
    padding-bottom: 4.8vw;
    padding-right: 7.46vw;
  }
}

.page-recruit .heading {
  background-image: url(../images/mv_recruit_01_pc.webp);
}
@media screen and (max-width: 768px) {
  .page-recruit .heading {
    background-image: url(../images/mv_recruit_02_sp.webp);
  }
}

.page-recruit__recruit-wrapper {
  padding-bottom: 80px;
  padding-top: 15px;
  text-align: center;
  background-image: url(../images/bg_recruit_01_pc.webp);
  background-size: cover;
  background-repeat: no-repeat;
}
@media screen and (max-width: 1250px) {
  .page-recruit__recruit-wrapper {
    padding: 1.5rem 5% 8rem 5%;
  }
}
@media screen and (max-width: 768px) {
  .page-recruit__recruit-wrapper {
    background-image: url(../images/bg_recruit_02_sp.webp);
    padding: 1.6vw 5.06vw 10.6vw 5.06vw;
  }
}
.page-recruit__recruit-wrapper .page-recruit__inner {
  max-width: 1200px;
  margin: 0 auto;
}
.page-recruit__recruit-wrapper .page-recruit__inner .breadcrumb__nav {
  margin-top: 0;
}
@media screen and (max-width: 1250px) {
  .page-recruit__recruit-wrapper .page-recruit__inner .breadcrumb__nav {
    padding: 0;
  }
}
.page-recruit__recruit-wrapper .page-recruit__inner .recruit-title {
  margin: 40px 0;
}
@media screen and (max-width: 768px) {
  .page-recruit__recruit-wrapper .page-recruit__inner .recruit-title {
    margin: 10.67vw 0 7.467vw 0;
    font-size: 5.33vw;
  }
}
.page-recruit__recruit-wrapper .page-recruit__inner .recruit-title::before {
  content: "";
  background-image: url(../images/text_recruit_01_pc.webp);
  width: 545px;
  height: 100px;
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  left: 0;
  right: 0;
  margin: 0 auto;
  bottom: -20px;
  z-index: -1;
}
@media screen and (max-width: 768px) {
  .page-recruit__recruit-wrapper .page-recruit__inner .recruit-title::before {
    width: 87.2vw;
    height: 41.33vw;
    bottom: -16vw;
  }
}
.page-recruit__recruit-wrapper .page-recruit__inner .page-recruit__description {
  font-size: 26px;
  text-align: left;
  line-height: 1.5em;
  margin-bottom: 45px;
}
@media screen and (max-width: 768px) {
  .page-recruit__recruit-wrapper .page-recruit__inner .page-recruit__description {
    font-size: 3.73vw;
    margin-bottom: 3.73vw;
  }
}
.page-recruit__recruit-wrapper .page-recruit__inner .requirements-title {
  text-align: left;
}
.page-recruit__recruit-wrapper .page-recruit__inner .requirements__wrapper {
  margin-top: 32px;
}
.page-recruit__recruit-wrapper .page-recruit__inner .requirements__wrapper .requirements__list {
  display: flex;
  align-items: stretch;
  text-align: left;
  font-size: 18px;
  line-height: 1.5em;
}
.page-recruit__recruit-wrapper .page-recruit__inner .requirements__wrapper .requirements__list .requirements__title {
  width: 422px;
  background-color: #295486;
  color: #ffffff;
  border: 1px solid #ffffff;
  padding-left: 20px;
  display: flex;
  align-items: center;
  min-height: 80px;
  line-height: 1.5em;
  letter-spacing: 0.2em;
}
@media screen and (max-width: 1250px) {
  .page-recruit__recruit-wrapper .page-recruit__inner .requirements__wrapper .requirements__list .requirements__title {
    width: 30%;
    padding-left: 2rem;
  }
}
@media screen and (max-width: 768px) {
  .page-recruit__recruit-wrapper .page-recruit__inner .requirements__wrapper .requirements__list .requirements__title {
    width: 24vw;
    padding-left: 2.93vw;
    font-size: 4.267vw;
  }
}
.page-recruit__recruit-wrapper .page-recruit__inner .requirements__wrapper .requirements__list .requirements__details {
  border: 1px solid #295486;
  width: 778px;
  padding: 20px 0 20px 35px;
  align-items: center;
}
@media screen and (max-width: 1250px) {
  .page-recruit__recruit-wrapper .page-recruit__inner .requirements__wrapper .requirements__list .requirements__details {
    width: 70%;
    padding: 2rem 0.5rem 2rem 3.5rem;
  }
}
@media screen and (max-width: 768px) {
  .page-recruit__recruit-wrapper .page-recruit__inner .requirements__wrapper .requirements__list .requirements__details {
    width: 66.13vw;
    padding: 4vw 2.13vw 4vw 1.867vw;
    font-size: 3.73vw;
    line-height: 1.5em;
  }
}
.page-recruit__recruit-wrapper .page-recruit__inner .requirements__wrapper .requirements__list .requirements__details .requirements__text:first-child {
  margin-bottom: 20px;
}
@media screen and (max-width: 768px) {
  .page-recruit__recruit-wrapper .page-recruit__inner .requirements__wrapper .requirements__list .requirements__details .requirements__small {
    font-size: 3vw;
  }
}
.page-recruit__recruit-wrapper .page-recruit__inner .requirements__wrapper .requirements__list .requirements__details .requirements__diamond {
  display: none;
}
@media screen and (max-width: 768px) {
  .page-recruit__recruit-wrapper .page-recruit__inner .requirements__wrapper .requirements__list .requirements__details .requirements__diamond {
    display: inline-block;
  }
}

.page-recruit__entry {
  max-width: 1200px;
  margin: 0 auto;
  padding: 130px 0 80px 0;
}
@media screen and (max-width: 1250px) {
  .page-recruit__entry {
    padding: 13rem 5% 8rem 5%;
  }
}
@media screen and (max-width: 768px) {
  .page-recruit__entry {
    padding: 20vw 5vw 17vw 5vw;
  }
}
.page-recruit__entry .requirements-title::after {
  content: "";
  background-image: url(../images/text_entry_01_pc.webp);
  width: 416px;
  height: 100px;
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  left: -25px;
  bottom: -10px;
  z-index: -1;
}
@media screen and (max-width: 768px) {
  .page-recruit__entry .requirements-title::after {
    width: 67vw;
    height: 41vw;
    bottom: -14vw;
  }
}
.page-recruit__entry form {
  margin-top: 30px;
}
@media screen and (max-width: 768px) {
  .page-recruit__entry form {
    margin-top: 6vw;
  }
}

.page-case .heading {
  background-image: url(../images/mv_case-aircon_01_pc.webp);
}
@media screen and (max-width: 768px) {
  .page-case .heading {
    background-image: url(../images/mv_case-aircon_02_sp.webp);
  }
}

.page-case__latest-case {
  max-width: 1200px;
  margin: 0 auto;
  padding: 44px 0 82px 0;
}
@media screen and (max-width: 1250px) {
  .page-case__latest-case {
    padding: 4.4rem 5% 8.2rem 5%;
  }
}
@media screen and (max-width: 768px) {
  .page-case__latest-case {
    padding: 8vw 5.3vw 1.8vw;
  }
}
.page-case__latest-case .latest-case__wrapper {
  margin-top: 28px;
}
@media screen and (max-width: 768px) {
  .page-case__latest-case .latest-case__wrapper {
    margin-top: 4.2vw;
  }
}
.page-case__latest-case .latest-case__wrapper .latest-case__list {
  display: grid;
  gap: 15px 30px;
  grid-template-columns: repeat(3, 1fr);
  grid-template-rows: repeat(3, 354px);
}
@media screen and (max-width: 1250px) {
  .page-case__latest-case .latest-case__wrapper .latest-case__list {
    justify-content: space-between;
    grid-template-rows: repeat(5, 1fr);
    grid-template-columns: repeat(2, 1fr);
  }
}
@media screen and (max-width: 768px) {
  .page-case__latest-case .latest-case__wrapper .latest-case__list {
    gap: 8vw;
    grid-template-columns: 1fr;
    margin-bottom: 25.33vw;
  }
}
.page-case__latest-case .latest-case__wrapper .latest-case__list .latest-case__item {
  width: 100%;
}
@media screen and (max-width: 768px) {
  .page-case__latest-case .latest-case__wrapper .latest-case__list .latest-case__item {
    width: 100%;
  }
}
.page-case__latest-case .latest-case__wrapper .latest-case__list .latest-case__item:hover {
  opacity: 0.7;
}
.page-case__latest-case .latest-case__wrapper .latest-case__list .latest-case__item .latest-case__link .case__img {
  width: 100%;
  height: 250px;
  aspect-ratio: 380/250;
}
.page-case__latest-case .latest-case__wrapper .latest-case__list .latest-case__item .latest-case__link .case__img img {
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
@media screen and (max-width: 1250px) {
  .page-case__latest-case .latest-case__wrapper .latest-case__list .latest-case__item .latest-case__link .case__img {
    height: auto;
  }
}
@media screen and (max-width: 768px) {
  .page-case__latest-case .latest-case__wrapper .latest-case__list .latest-case__item .latest-case__link .case__img {
    height: 66.67vw;
  }
}
.page-case__latest-case .latest-case__wrapper .latest-case__list .latest-case__item .latest-case__link .case__category {
  font-size: 18px;
  color: #ffffff;
  line-height: 1.5em;
  background-color: #295486;
  text-align: center;
  width: 90px;
  height: 26px;
  font-weight: 500;
  margin-top: 20px;
  letter-spacing: 0.64em;
}
@media screen and (max-width: 1250px) {
  .page-case__latest-case .latest-case__wrapper .latest-case__list .latest-case__item .latest-case__link .case__category {
    font-size: clamp(14px, 1.8rem, 18px);
  }
}
@media screen and (max-width: 768px) {
  .page-case__latest-case .latest-case__wrapper .latest-case__list .latest-case__item .latest-case__link .case__category {
    font-size: 3.73vw;
    width: 21.33vw;
    height: 6.4vw;
    margin-top: 2.6vw;
    padding-top: 0.5vw;
  }
}
.page-case__latest-case .latest-case__wrapper .latest-case__list .latest-case__item .latest-case__link .case__category::before {
  content: "";
  margin-left: 0.64em;
}
.page-case__latest-case .latest-case__wrapper .latest-case__list .latest-case__item .latest-case__link .case__text {
  font-size: 18px;
  margin-top: 5px;
  line-height: 1.5em;
}
@media screen and (max-width: 1250px) {
  .page-case__latest-case .latest-case__wrapper .latest-case__list .latest-case__item .latest-case__link .case__text {
    font-size: clamp(14px, 1.8rem, 18px);
  }
}
@media screen and (max-width: 768px) {
  .page-case__latest-case .latest-case__wrapper .latest-case__list .latest-case__item .latest-case__link .case__text {
    font-size: 3.73vw;
  }
}

.page-company .heading {
  background-image: url(../images/mv_company_01_pc.webp);
}
@media screen and (max-width: 768px) {
  .page-company .heading {
    background-image: url(../images/mv_company_02_sp.webp);
  }
}

.page-company__philosophy {
  text-align: center;
  padding: 125px 0 100px 0;
}
@media screen and (max-width: 1550px) {
  .page-company__philosophy {
    padding: 12.5rem 5% 10rem 5%;
  }
}
@media screen and (max-width: 768px) {
  .page-company__philosophy {
    padding: 10.9vw 0 12.8vw 0;
  }
}
.page-company__philosophy .page-company__philosophy-title::before {
  content: "";
  background-image: url(../images/text_philosophy_01_pc.webp);
  width: 703px;
  height: 224px;
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  left: 0;
  right: 0;
  margin: 0 auto;
  bottom: -90px;
  z-index: -1;
}
@media screen and (max-width: 1250px) {
  .page-company__philosophy .page-company__philosophy-title::before {
    width: clamp(600px, 70.3rem, 703px);
    height: clamp(190px, 2.24rem, 224px);
    bottom: -70px;
  }
}
@media screen and (max-width: 768px) {
  .page-company__philosophy .page-company__philosophy-title::before {
    width: 80.53vw;
    height: 25.6vw;
    bottom: -9vw;
  }
}
.page-company__philosophy .philosophy__text {
  width: 960px;
  margin: 0 auto;
  margin-top: 78px;
}
@media screen and (max-width: 1250px) {
  .page-company__philosophy .philosophy__text {
    width: 70vw;
  }
}
@media screen and (max-width: 768px) {
  .page-company__philosophy .philosophy__text {
    width: 85.3vw;
  }
}
.page-company__philosophy .philosophy__img {
  width: 1579px;
  margin: 0 auto;
  margin-top: -30px;
}
@media screen and (max-width: 1550px) {
  .page-company__philosophy .philosophy__img {
    width: 100%;
    margin-top: 1.6vw;
  }
}

.page-company__message {
  background-image: url(../images/bg_message_01_pc.webp);
  background-position: top;
  background-repeat: no-repeat;
  background-size: cover;
  padding: 135px 0 175px 0;
  position: relative;
}
@media screen and (max-width: 1550px) {
  .page-company__message {
    padding: 9.6vw 0 12.43vw 0;
  }
}
@media screen and (max-width: 1250px) {
  .page-company__message {
    padding: 9.6vw 5% 10vw 5%;
  }
}
@media screen and (max-width: 768px) {
  .page-company__message {
    background-image: url(../images/bg_message_02_sp.webp);
    padding: 14.93vw 5.1vw 10.67vw 5.1vw;
  }
}
.page-company__message .page-company__message--wrapper {
  max-width: 1190px;
  margin: 0 auto;
}
.page-company__message .page-company__message--wrapper .page-company__message-title::after {
  content: "";
  background-image: url(../images/text_message_01_pc.webp);
  width: 547px;
  height: 224px;
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  left: -25px;
  bottom: -75px;
  z-index: -1;
}
@media screen and (max-width: 768px) {
  .page-company__message .page-company__message--wrapper .page-company__message-title::after {
    width: 62.67vw;
    height: 25.6vw;
    bottom: -9vw;
  }
}
.page-company__message .page-company__message--wrapper .message__heading {
  color: #295486;
  font-size: 36px;
  font-family: "Yuji Syuku", serif;
  margin-top: 43px;
  line-height: 1.5em;
}
@media screen and (max-width: 1250px) {
  .page-company__message .page-company__message--wrapper .message__heading {
    font-size: clamp(28px, 3.6rem, 36px);
    margin-top: 3.56vw;
  }
}
@media screen and (max-width: 768px) {
  .page-company__message .page-company__message--wrapper .message__heading {
    font-size: 4.8vw;
    font-weight: 400;
  }
}
.page-company__message .page-company__message--wrapper .message__text-wrapper {
  font-size: 18px;
  display: flex;
  flex-direction: column;
  gap: 20px;
  line-height: 1.5em;
  font-family: "Zen Old Mincho", serif;
  font-weight: 700;
  max-width: 726px;
  margin-top: 60px;
}
@media screen and (max-width: 1250px) {
  .page-company__message .page-company__message--wrapper .message__text-wrapper {
    font-size: clamp(16px, 1.8rem, 18px);
    max-width: 56vw;
    gap: 1.42vw;
    margin-top: 4.26vw;
  }
}
@media screen and (max-width: 768px) {
  .page-company__message .page-company__message--wrapper .message__text-wrapper {
    font-size: 3.73vw;
    max-width: 100%;
  }
}
.page-company__message .page-company__message--wrapper .message__text-wrapper .message__text {
  margin-bottom: 1em;
}
.page-company__message .page-company__message--wrapper .message__name--wrapper {
  font-family: "Yuji Syuku", serif;
  position: absolute;
  bottom: 44px;
  transform: translateX(calc(-50% + 210px));
  left: 50%;
  z-index: 2;
}
@media screen and (max-width: 768px) {
  .page-company__message .page-company__message--wrapper .message__name--wrapper {
    position: static;
    display: flex;
    flex-direction: column;
    transform: none;
    left: auto;
    align-items: flex-end;
  }
}
.page-company__message .page-company__message--wrapper .message__name--wrapper .message-name__small {
  font-size: 20px;
}
@media screen and (max-width: 768px) {
  .page-company__message .page-company__message--wrapper .message__name--wrapper .message-name__small {
    font-size: 4.26vw;
  }
}
.page-company__message .page-company__message--wrapper .message__name--wrapper .message-name {
  font-size: 26px;
}
@media screen and (max-width: 768px) {
  .page-company__message .page-company__message--wrapper .message__name--wrapper .message-name {
    font-size: 4.8vw;
  }
}
.page-company__message .page-company__message--wrapper .message__img {
  width: 486px;
  position: absolute;
  bottom: -10px;
  left: 50%;
  transform: translateX(calc(-50% + 440px));
}
@media screen and (max-width: 1550px) {
  .page-company__message .page-company__message--wrapper .message__img {
    width: 34.54vw;
    transform: translateX(calc(-50% + 31vw));
  }
}
@media screen and (max-width: 768px) {
  .page-company__message .page-company__message--wrapper .message__img {
    display: block;
    width: 60.8vw;
    margin: 0 auto;
    margin-top: 12.26vw;
    position: static;
  }
}

.page-company__company-profile {
  max-width: 1200px;
  padding: 152px 0 81px 0;
  margin: 0 auto;
}
@media screen and (max-width: 1250px) {
  .page-company__company-profile {
    padding: 15.2rem 5% 8.1rem 5%;
    max-width: 100%;
  }
}
@media screen and (max-width: 768px) {
  .page-company__company-profile {
    padding: 28vw 5.3vw 0.18vw 5.3vw;
  }
}
.page-company__company-profile .page-company__profile-title::after {
  content: "";
  background-image: url(../images/text_companyprofile_01_pc.webp);
  width: 1033px;
  height: 224px;
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  left: -25px;
  bottom: -75px;
  z-index: -1;
}
@media screen and (max-width: 1250px) {
  .page-company__company-profile .page-company__profile-title::after {
    width: clamp(700px, 10.33rem, 1033px);
    height: clamp(190px, 2.24rem, 224px);
    bottom: -70px;
  }
}
@media screen and (max-width: 768px) {
  .page-company__company-profile .page-company__profile-title::after {
    width: 69.6vw;
    height: 31vw;
    bottom: -11vw;
    background-image: url(../images/text_companyprofile_02_sp.webp);
  }
}
.page-company__company-profile .company-profile__wrapper {
  margin-top: 80px;
}
@media screen and (max-width: 768px) {
  .page-company__company-profile .company-profile__wrapper {
    margin-top: 18.93vw;
  }
}
.page-company__company-profile .company-profile__wrapper .company-profile__list {
  display: flex;
  font-size: 18px;
  border-bottom: 1px solid rgba(41, 84, 134, 0.4);
  line-height: 1.5em;
  padding: 14px 0 14px 25px;
}
@media screen and (max-width: 768px) {
  .page-company__company-profile .company-profile__wrapper .company-profile__list {
    font-size: 3.73vw;
    padding: 4vw 0;
  }
}
.page-company__company-profile .company-profile__wrapper .company-profile__list dt {
  color: #295486;
  font-weight: 700;
  width: 12%;
}
@media screen and (max-width: 768px) {
  .page-company__company-profile .company-profile__wrapper .company-profile__list dt {
    width: 22%;
  }
}

.page-contact .heading {
  background-image: url(../images/mv_contact_01_pc.webp);
}
@media screen and (max-width: 768px) {
  .page-contact .heading {
    background-image: url(../images/mv_contact_02_sp.webp);
  }
}

.page-contact__contact-wrapper {
  max-width: 1200px;
  margin: 0 auto;
  padding: 41px 0 84px 0;
}
@media screen and (max-width: 1250px) {
  .page-contact__contact-wrapper {
    padding: 8rem 5% 8.4rem 5%;
  }
}
@media screen and (max-width: 768px) {
  .page-contact__contact-wrapper {
    padding: 10.93vw 5.07vw 16vw 5.07vw;
  }
}
.page-contact__contact-wrapper .recruit-title {
  text-align: center;
}
.page-contact__contact-wrapper .recruit-title::before {
  content: "";
  background-image: url(../images/text_contact_01_pc.webp);
  width: 589px;
  height: 258px;
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  left: 0;
  right: 0;
  margin: 0 auto;
  bottom: -100px;
  z-index: -1;
}
@media screen and (max-width: 768px) {
  .page-contact__contact-wrapper .recruit-title::before {
    width: 88vw;
    height: 29.1vw;
    bottom: -10.5vw;
  }
}
.page-contact__contact-wrapper .page-contact__description {
  margin-top: 45px;
  font-size: 18px;
  line-height: 1.5em;
}
@media screen and (max-width: 768px) {
  .page-contact__contact-wrapper .page-contact__description {
    font-size: 3.73vw;
  }
}
.page-contact__contact-wrapper .partner__cta {
  margin-top: 25px;
  text-align: center;
  margin-bottom: 33px;
}
@media screen and (max-width: 768px) {
  .page-contact__contact-wrapper .partner__cta {
    margin-top: 8.8vw;
    margin-bottom: 15.2vw;
  }
}
.page-contact__contact-wrapper .partner__cta .partner__cta-copy {
  color: #F7931E;
  font-size: 26px;
}
@media screen and (max-width: 768px) {
  .page-contact__contact-wrapper .partner__cta .partner__cta-copy {
    font-size: 5.33vw;
  }
}
.page-contact__contact-wrapper .partner__cta .partner__cta-button {
  font-size: 28px;
  color: #295486;
  font-weight: 700;
  width: 550px;
  height: 72px;
  border-radius: 5px;
  background: linear-gradient(to bottom, rgba(88, 158, 239, 0.75) 0%, rgba(241, 244, 255, 0.75) 50%, rgba(82, 138, 204, 0.75) 100%);
  border: 1px solid #3A3A3A;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 auto;
  margin-top: 5px;
  position: relative;
}
@media screen and (max-width: 768px) {
  .page-contact__contact-wrapper .partner__cta .partner__cta-button {
    font-size: 4.8vw;
    margin-top: 1.6vw;
    width: 89.33vw;
    height: 19.2vw;
  }
}
.page-contact__contact-wrapper .partner__cta .partner__cta-button::after {
  content: "";
  background-image: url(../images/icon_arrow_02_pc.webp);
  background-size: contain;
  background-repeat: no-repeat;
  width: 13px;
  height: 24px;
  right: 23px;
  position: absolute;
}
@media screen and (max-width: 768px) {
  .page-contact__contact-wrapper .partner__cta .partner__cta-button::after {
    width: 2.95vw;
    height: 5.33vw;
    right: 5.6vw;
  }
}
.page-contact__contact-wrapper .partner__cta .partner__cta-button:hover {
  opacity: 0.7;
}

.mv {
  aspect-ratio: 1920/1080;
  background-image: url(../images/mv_01_pc.webp);
  background-repeat: no-repeat;
  background-size: cover;
  z-index: -2;
}
@media screen and (max-width: 768px) {
  .mv {
    background-image: url(../images/mv_02_sp.webp);
    aspect-ratio: 375/667;
  }
}

.mv-text__wrapper {
  padding-top: 10.05vw;
  padding-bottom: 0.78vw;
  gap: 1.56vw;
  display: flex;
  flex-direction: column;
}
@media screen and (max-width: 768px) {
  .mv-text__wrapper {
    padding-top: 29.33vw;
    gap: 6vw;
  }
}
.mv-text__wrapper .mv-text {
  font-size: 3.65vw;
  padding-left: 4.32vw;
  font-family: "Zen Old Mincho", serif;
  color: #ffffff;
  font-weight: 700;
  position: relative;
  z-index: 1;
}
@media screen and (max-width: 768px) {
  .mv-text__wrapper .mv-text {
    font-size: 6.4vw;
    padding-left: 5.1vw;
  }
}
.mv-text__wrapper .mv-text__01::before {
  content: "";
  background-image: url(../images/bg_mv_01_pc.webp);
  width: 44.01vw;
  height: 5.2vw;
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  left: 0;
  z-index: -1;
  top: -5%;
}
@media screen and (max-width: 768px) {
  .mv-text__wrapper .mv-text__01::before {
    background-image: url(../images/bg_mv_04_sp.webp);
    width: 69vw;
    top: -15%;
    height: 11.2vw;
  }
}
.mv-text__wrapper .mv-text__02::before {
  content: "";
  background-image: url(../images/bg_mv_02_pc.webp);
  width: 47.7vw;
  height: 5.2vw;
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  left: 0;
  z-index: -1;
  top: -5%;
}
@media screen and (max-width: 768px) {
  .mv-text__wrapper .mv-text__02::before {
    background-image: url(../images/bg_mv_05_sp.webp);
    width: 76.53vw;
    top: -15%;
    height: 11.2vw;
  }
}
.mv-text__wrapper .mv-text__03::before {
  content: "";
  background-image: url(../images/bg_mv_03_pc.webp);
  width: 52.1vw;
  height: 5.2vw;
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  left: 0;
  z-index: -1;
  top: -5%;
}
@media screen and (max-width: 768px) {
  .mv-text__wrapper .mv-text__03::before {
    background-image: url(../images/bg_mv_06_sp.webp);
    width: 84.53vw;
    top: -15%;
    height: 11.2vw;
  }
}

.mv-sub-text__wrapper {
  margin-left: 4.32vw;
  margin-top: 1.04vw;
}
@media screen and (max-width: 768px) {
  .mv-sub-text__wrapper {
    margin-left: 4.8vw;
    margin-top: 55vw;
  }
}
.mv-sub-text__wrapper .mv-sub-text {
  font-family: "Zen Old Mincho", serif;
  font-size: 1.77vw;
  line-height: 1.5em;
  text-shadow: 0 4px 13px #fff;
}
@media screen and (max-width: 768px) {
  .mv-sub-text__wrapper .mv-sub-text {
    font-size: 4.267vw;
    letter-spacing: -0.1em;
    text-shadow: 1px 1px 2px #fff;
    line-height: 1.8em;
  }
}
.mv-sub-text__wrapper .mv-sub-text .mv-sub-text__box {
  color: #295486;
  font-size: 1.67vw;
  padding: 0.16vw 1.04vw;
  margin-left: 1.04vw;
  background-color: #ffffff;
  border: 1px solid #295486;
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-weight: 700;
}
@media screen and (max-width: 768px) {
  .mv-sub-text__wrapper .mv-sub-text .mv-sub-text__box {
    font-size: 4.267vw;
    padding: 0 1.6vw;
    line-height: 1em;
    background-color: rgba(255, 255, 255, 0.8);
  }
}

.about {
  max-width: 1215px;
  margin: 0 auto;
  padding: 110px 0 80px 0;
}
@media screen and (max-width: 1250px) {
  .about {
    padding: 11rem 5% 8rem 5%;
  }
}
@media screen and (max-width: 768px) {
  .about {
    padding: 20.8vw 5.3vw 10.67vw 5.3vw;
  }
}
.about .about-title {
  font-size: 36px;
  color: #295486;
  margin-bottom: 34px;
  position: relative;
  font-weight: 500;
}
@media screen and (max-width: 1250px) {
  .about .about-title {
    font-size: clamp(26px, 3.6rem, 36px);
  }
}
@media screen and (max-width: 768px) {
  .about .about-title {
    font-size: clamp(20px, 2rem, 30px);
  }
}
.about .about-title::before {
  content: "";
  position: absolute;
  background-image: url(../images/text_aboutus_01_pc.webp);
  background-size: contain;
  background-repeat: no-repeat;
  width: 863px;
  height: 280px;
  bottom: -100px;
}
@media screen and (max-width: 1250px) {
  .about .about-title::before {
    width: 86.3rem;
    height: 28rem;
    bottom: -10rem;
  }
}
@media screen and (max-width: 768px) {
  .about .about-title::before {
    width: 55.2vw;
    bottom: 4vw;
    height: 20.5vw;
  }
}
.about .about-text {
  font-size: 26px;
  line-height: 1.5em;
}
@media screen and (max-width: 1250px) {
  .about .about-text {
    font-size: clamp(20px, 2.6rem, 26px);
  }
}
@media screen and (max-width: 768px) {
  .about .about-text {
    font-size: clamp(16px, 1.6rem, 18px);
  }
}

.service {
  background-color: rgba(56, 73, 128, 0.1);
  padding-top: 90px;
  padding-bottom: 90px;
  display: flex;
  gap: 20px;
  justify-content: center;
  position: relative;
}
@media screen and (max-width: 1550px) {
  .service {
    padding: 4.6vw 5%;
  }
}
@media screen and (max-width: 768px) {
  .service {
    padding: 6rem 3.6rem 6rem 3.6rem;
    background-color: #ffffff;
    flex-direction: column;
  }
}
.service .service__box {
  width: 602px;
  position: relative;
}
@media screen and (max-width: 1550px) {
  .service .service__box {
    width: 39.34vw;
  }
}
@media screen and (max-width: 768px) {
  .service .service__box {
    width: 80vw;
  }
}
.service .service__box .service__inner {
  position: absolute;
  top: 45%;
  text-align: center;
  left: 0;
  right: 0;
  margin: 0 auto;
}
.service .service__box .service__inner .service__name {
  font-size: 36px;
  color: #ffffff;
  font-weight: bold;
  margin-bottom: 44px;
}
@media screen and (max-width: 1250px) {
  .service .service__box .service__inner .service__name {
    font-size: clamp(24px, 3.6rem, 36px);
  }
}
@media screen and (max-width: 768px) {
  .service .service__box .service__inner .service__name {
    font-size: clamp(20px, 2rem, 30px);
    margin-bottom: 4vw;
  }
}
.service .service__box .service__inner .service__button .service-button__text {
  font-size: 24px;
  color: #295486;
  padding: 8px 128px;
  background-color: #ffffff;
  border: 1px solid #295486;
  display: inline-block;
  font-weight: 500;
  position: relative;
  line-height: 1.5em;
}
@media screen and (max-width: 1250px) {
  .service .service__box .service__inner .service__button .service-button__text {
    font-size: clamp(18px, 2.4rem, 24px);
    padding: 0.8rem 12rem;
  }
}
@media screen and (max-width: 768px) {
  .service .service__box .service__inner .service__button .service-button__text {
    font-size: clamp(16px, 1.6rem, 18px);
    padding: 4px 5.2rem;
    line-height: 1.5em;
  }
}
.service .service__box .service__inner .service__button .service-button__text::after {
  content: "";
  background-image: url(../images/icon_arrow_02_pc.webp);
  background-size: contain;
  background-repeat: no-repeat;
  width: 10px;
  height: 18px;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 15px;
}
@media screen and (max-width: 1250px) {
  .service .service__box .service__inner .service__button .service-button__text::after {
    right: 10px;
  }
}
@media screen and (max-width: 768px) {
  .service .service__box .service__inner .service__button .service-button__text::after {
    width: 1.3vw;
    height: 2.5vw;
    right: 9px;
  }
}
.service .service__box .service__inner .service__button .service-button__text:hover::after {
  background-image: url(../images/icon_arrow_01_pc.webp);
}
.service .service__box .service__inner .service__button .service-button__text:hover {
  background: linear-gradient(to bottom, #BAC3E0 0%, #7E8FC7 100%);
  color: #ffffff;
}
.service .service__text-deco {
  position: absolute;
  width: 100px;
  left: 50%;
  transform: translateX(620%);
}
@media screen and (max-width: 1550px) {
  .service .service__text-deco {
    width: 6.72vw;
    transform: translateX(40vw);
  }
}
@media screen and (max-width: 768px) {
  .service .service__text-deco {
    width: 59.4vw;
    top: 0;
    transform: translateX(50%);
    left: 0;
    right: 0;
  }
}

.strength {
  text-align: center;
  padding-top: 120px;
  padding-bottom: 75px;
  background-image: url(../images/bg_strength_01_pc.webp);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
}
@media screen and (max-width: 1250px) {
  .strength {
    padding: 12rem 5% 7.5rem 5%;
  }
}
@media screen and (max-width: 768px) {
  .strength {
    background-image: url(../images/bg_strength_02_sp.webp);
    padding: 17.3vw 5.3vw 16vw 5.3vw;
    text-align: center;
  }
}
.strength .strength-title::before {
  content: "";
  background-image: url(../images/text_strength_01_pc.webp);
  width: 746px;
  height: 258px;
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  left: 0;
  right: 0;
  margin: 0 auto;
  bottom: -100px;
  z-index: -1;
}
@media screen and (max-width: 1105px) {
  .strength .strength-title::before {
    left: -3%;
  }
}
@media screen and (max-width: 768px) {
  .strength .strength-title::before {
    width: clamp(358px, 35.8rem, 380px);
    bottom: clamp(-62px, -6.2rem, -72px);
    height: clamp(124px, 12.4rem, 140px);
    left: -2%;
  }
}
.strength .strength__wrapper {
  width: 63vw;
  margin: 0 auto;
  display: flex;
  flex-wrap: wrap;
  margin-top: 120px;
  gap: 2.91vw 1.56vw;
  justify-content: center;
}
@media screen and (max-width: 1250px) {
  .strength .strength__wrapper {
    margin-top: 6.25vw;
  }
}
@media screen and (max-width: 768px) {
  .strength .strength__wrapper {
    margin-top: 8rem;
    flex-direction: column;
    gap: 13.3vw;
    width: 100%;
  }
}
.strength .strength__wrapper .strength__container {
  background-color: #ffffff;
  width: 19.8vw;
  height: 21.89vw;
  position: relative;
  padding: 2.3vw 0.78vw 0 0.78vw;
  text-align: left;
  aspect-ratio: 380/420;
}
@media screen and (max-width: 1250px) {
  .strength .strength__wrapper .strength__container {
    width: 47%;
    height: auto;
  }
}
@media screen and (max-width: 768px) {
  .strength .strength__wrapper .strength__container {
    width: 89.3vw;
    aspect-ratio: unset;
    height: 85.3vw;
    padding: 6.1vw 3vw 3.4vw 3vw;
  }
}
.strength .strength__wrapper .strength__container .strength__point {
  position: absolute;
  font-size: clamp(20px, 1.46vw, 26px);
  color: #295486;
  font-family: "Zen Antique", serif;
  left: 0;
  right: 0;
  margin: 0 auto;
  top: -2.6vw;
  display: flex;
  align-items: center;
  justify-content: center;
}
@media screen and (max-width: 768px) {
  .strength .strength__wrapper .strength__container .strength__point {
    align-items: end;
    font-size: 7.4vw;
    top: -50px;
  }
}
.strength .strength__wrapper .strength__container .strength__point .point-large {
  font-size: 4.16vw;
}
@media screen and (max-width: 768px) {
  .strength .strength__wrapper .strength__container .strength__point .point-large {
    font-size: clamp(60px, 6rem, 70px);
    margin-bottom: -2%;
  }
}
.strength .strength__wrapper .strength__container .strength__icon {
  height: 7.67vw;
  text-align: center;
}
@media screen and (max-width: 1250px) {
  .strength .strength__wrapper .strength__container .strength__icon {
    height: 10vw;
  }
}
@media screen and (max-width: 768px) {
  .strength .strength__wrapper .strength__container .strength__icon {
    height: clamp(114px, 11.4rem, 130px);
  }
}
.strength .strength__wrapper .strength__container .strength__icon img {
  height: 100%;
  width: auto;
}
.strength .strength__wrapper .strength__container .strength__heading {
  font-size: 1.35vw;
  color: #295486;
  font-weight: bold;
  margin-left: 9px;
  position: relative;
  min-height: 4.16vw;
  line-height: 1.5em;
}
@media screen and (max-width: 1250px) {
  .strength .strength__wrapper .strength__container .strength__heading {
    font-size: clamp(16px, 1.35vw, 26px);
  }
}
@media screen and (max-width: 768px) {
  .strength .strength__wrapper .strength__container .strength__heading {
    font-size: 4.8vw;
    min-height: -moz-fit-content;
    min-height: fit-content;
  }
}
.strength .strength__wrapper .strength__container .strength__heading::before {
  content: "";
  position: absolute;
  left: -7px;
  width: 2px;
  height: 30px;
  background-color: #295486;
  top: 10px;
}
@media screen and (max-width: 1250px) {
  .strength .strength__wrapper .strength__container .strength__heading::before {
    height: clamp(24px, 3rem, 30px);
    top: 2px;
  }
}
@media screen and (max-width: 768px) {
  .strength .strength__wrapper .strength__container .strength__heading::before {
    height: 6.4vw;
    top: 2px;
  }
}
.strength .strength__wrapper .strength__container .strength__heading .capital-letter {
  font-size: 1.98vw;
  color: #F7931E;
}
@media screen and (max-width: 1250px) {
  .strength .strength__wrapper .strength__container .strength__heading .capital-letter {
    font-size: clamp(18px, 1.98vw, 28px);
  }
}
@media screen and (max-width: 768px) {
  .strength .strength__wrapper .strength__container .strength__heading .capital-letter {
    font-size: 6.4vw;
  }
}
.strength .strength__wrapper .strength__container .strength__text {
  font-size: 0.94vw;
  margin-top: 0.78vw;
  line-height: 1.5em;
}
@media screen and (max-width: 1250px) {
  .strength .strength__wrapper .strength__container .strength__text {
    font-size: clamp(14px, 0.94vw, 26px);
  }
}
@media screen and (max-width: 768px) {
  .strength .strength__wrapper .strength__container .strength__text {
    font-size: 4.267vw;
    margin-top: 1rem;
  }
}

.flow {
  text-align: center;
  padding-top: 120px;
  padding-bottom: 80px;
}
@media screen and (max-width: 1250px) {
  .flow {
    padding: 12rem 5% 8rem 5%;
  }
}
@media screen and (max-width: 768px) {
  .flow {
    padding: 6.5rem 2rem 6rem 2rem;
  }
}
.flow .flow-title::before {
  content: "";
  background-image: url(../images/text_flow_01_pc.webp);
  width: 371px;
  height: 258px;
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  left: 0;
  right: 0;
  margin: 0 auto;
  bottom: -100px;
  z-index: -1;
}
@media screen and (max-width: 768px) {
  .flow .flow-title::before {
    width: clamp(179px, 17.9rem, 190px);
    height: clamp(124px, 12.4rem, 140px);
    bottom: clamp(-52px, -5.2rem, -60px);
  }
}
.flow .flow__wrapper {
  max-width: 1200px;
  margin: 80px auto 0 auto;
  display: flex;
  flex-direction: column;
  gap: 65px;
}
@media screen and (max-width: 768px) {
  .flow .flow__wrapper {
    margin: 4.4rem auto 0 auto;
    gap: 3rem;
  }
}
.flow .flow__wrapper .flow__container {
  border: 2px solid #295486;
  display: flex;
  position: relative;
}
@media screen and (max-width: 768px) {
  .flow .flow__wrapper .flow__container {
    width: 89.3vw;
  }
}
.flow .flow__wrapper .flow__container:not(:first-of-type)::before {
  background-image: url(../images/icon_arrow_07_pc.webp);
  width: 75px;
  height: 26px;
  position: absolute;
  left: 0;
  right: 0;
  margin: 0 auto;
  content: "";
  background-size: contain;
  background-repeat: no-repeat;
  top: -45px;
}
@media screen and (max-width: 768px) {
  .flow .flow__wrapper .flow__container:not(:first-of-type)::before {
    width: 3.8rem;
    height: 1.5rem;
    top: -6vw;
  }
}
.flow .flow__wrapper .flow__container .flow__number {
  color: #ffffff;
  font-size: 48px;
  font-family: "Zen Antique", serif;
  display: flex;
  flex-direction: column;
  align-items: center;
  background-color: #295486;
  width: 80px;
  justify-content: center;
}
@media screen and (max-width: 768px) {
  .flow .flow__wrapper .flow__container .flow__number {
    font-size: clamp(36px, 3.6rem, 40px);
    width: 13.33vw;
    justify-content: flex-start;
    padding-top: 2.7vw;
  }
}
.flow .flow__wrapper .flow__container .flow__number .flow-number__small {
  font-size: 16px;
}
@media screen and (max-width: 768px) {
  .flow .flow__wrapper .flow__container .flow__number .flow-number__small {
    font-size: clamp(14px, 1.4rem, 16px);
  }
}
.flow .flow__wrapper .flow__container .flow__contents {
  padding: 28px 23px;
}
@media screen and (max-width: 768px) {
  .flow .flow__wrapper .flow__container .flow__contents {
    padding: 1.2rem 0.5rem 2rem 1rem;
    width: 76.27vw;
    min-height: 37.33vw;
  }
}
.flow .flow__wrapper .flow__container .flow__contents .flow-heading__wrapper {
  display: flex;
  align-items: center;
}
.flow .flow__wrapper .flow__container .flow__contents .flow-heading__wrapper img {
  width: 70px;
}
@media screen and (max-width: 768px) {
  .flow .flow__wrapper .flow__container .flow__contents .flow-heading__wrapper img {
    width: clamp(26px, 2.6rem, 30px);
  }
}
.flow .flow__wrapper .flow__container .flow__contents .flow-heading__wrapper .flow__heading {
  font-size: 26px;
  font-weight: bold;
  color: #295486;
  margin-left: 8px;
}
@media screen and (max-width: 768px) {
  .flow .flow__wrapper .flow__container .flow__contents .flow-heading__wrapper .flow__heading {
    font-size: clamp(14px, 1.4rem, 18px);
    margin-left: 0;
  }
}
.flow .flow__wrapper .flow__container .flow__contents .flow__text {
  font-size: 18px;
  margin-top: 22px;
  text-align: left;
  line-height: 1.5em;
}
@media screen and (max-width: 768px) {
  .flow .flow__wrapper .flow__container .flow__contents .flow__text {
    font-size: clamp(14px, 1.4rem, 16px);
    margin-top: 0;
  }
}

.movie {
  text-align: center;
  padding-top: 112px;
  padding-bottom: 80px;
  background-image: url(../images/bg_movie_01_pc.webp);
  background-size: cover;
}
@media screen and (max-width: 1250px) {
  .movie {
    padding: 11.2rem 5% 8rem 5%;
  }
}
@media screen and (max-width: 768px) {
  .movie {
    padding: 7rem 0 5.8rem 0;
    background-image: none;
    background-color: rgba(19, 74, 154, 0.1);
  }
}
.movie .movie-title::before {
  content: "";
  background-image: url(../images/text_movie_01_pc.webp);
  width: 417px;
  height: 258px;
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  left: 0;
  right: 0;
  margin: 0 auto;
  bottom: -100px;
  z-index: -1;
}
@media screen and (max-width: 768px) {
  .movie .movie-title::before {
    width: clamp(250px, 25rem, 270px);
    height: clamp(155px, 15.5rem, 170px);
    bottom: clamp(-62px, -6.2rem, -72px);
  }
}
.movie .movie__wrapper {
  max-width: 1186px;
  margin: 73px auto 53px auto;
  display: flex;
  flex-wrap: wrap;
  gap: 33px;
  justify-content: center;
}
@media screen and (max-width: 768px) {
  .movie .movie__wrapper {
    gap: 2rem;
    margin: 4.5rem auto 3rem auto;
  }
}
.movie .movie__wrapper .movie__container {
  position: relative;
  width: 373px;
  aspect-ratio: 373/209;
  overflow: hidden;
}
@media screen and (max-width: 1250px) {
  .movie .movie__wrapper .movie__container {
    width: 21vw;
  }
}
@media screen and (max-width: 768px) {
  .movie .movie__wrapper .movie__container {
    width: 89.3vw;
  }
}
.movie .movie__wrapper .movie__container lite-youtube {
  position: absolute;
  top: 0;
  left: 0;
  width: 100% !important;
  height: 100% !important;
  border: 0;
}

.case {
  text-align: center;
  padding-top: 120px;
  padding-bottom: 80px;
}
@media screen and (max-width: 1550px) {
  .case {
    padding: 12rem 5% 8rem 5%;
  }
}
@media screen and (max-width: 768px) {
  .case {
    padding: 7rem 2rem 0 2rem;
  }
}
.case .case-title::before {
  content: "";
  background-image: url(../images/text_case_01_pc.webp);
  width: 322px;
  height: 258px;
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  left: 0;
  right: 0;
  margin: 0 auto;
  bottom: -100px;
  z-index: -1;
}
@media screen and (max-width: 768px) {
  .case .case-title::before {
    width: clamp(194px, 19.4rem, 210px);
    height: clamp(155px, 15.5rem, 170px);
    bottom: clamp(-62px, -6.2rem, -72px);
  }
}
.case .swiper__container {
  max-width: 1200px;
  width: 100%;
  margin: 0 auto;
  margin-top: 62px;
  position: relative;
  overflow: visible;
  /* 矢印ボタンの共通設定 */
  /* 右矢印 */
  /* 左矢印 */
}
.case .swiper__container .mySwiper {
  max-width: 1200px;
  overflow: hidden;
  position: relative;
}
@media screen and (max-width: 1550px) {
  .case .swiper__container .mySwiper {
    max-width: 80vw;
  }
}
@media screen and (max-width: 768px) {
  .case .swiper__container .mySwiper {
    max-width: 100%;
  }
}
.case .swiper__container .mySwiper .swiper-wrapper {
  display: flex;
  margin-bottom: 120px;
}
@media screen and (max-width: 768px) {
  .case .swiper__container .mySwiper .swiper-wrapper {
    flex-direction: column;
    gap: 2rem;
    margin-bottom: 3rem;
  }
}
.case .swiper__container .mySwiper .swiper-wrapper .case__slide {
  width: 382px;
  border: 1px solid #295486;
  text-align: left;
}
@media screen and (max-width: 1550px) {
  .case .swiper__container .mySwiper .swiper-wrapper .case__slide {
    width: 19.9vw;
  }
}
@media screen and (max-width: 768px) {
  .case .swiper__container .mySwiper .swiper-wrapper .case__slide {
    width: 100%;
  }
}
.case .swiper__container .mySwiper .swiper-wrapper .case__slide:hover {
  opacity: 0.7;
}
.case .swiper__container .mySwiper .swiper-wrapper .case__slide .case__img {
  width: 100%;
}
@media screen and (max-width: 768px) {
  .case .swiper__container .mySwiper .swiper-wrapper .case__slide .case__img {
    height: 66.7vw;
  }
}
.case .swiper__container .mySwiper .swiper-wrapper .case__slide .case__img img {
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.case .swiper__container .mySwiper .swiper-wrapper .case__slide .case__category {
  font-size: 16px;
  color: #ffffff;
  background-color: #295486;
  display: inline-block;
  padding-top: 2px;
  padding-bottom: 2px;
  line-height: 1.5em;
  margin: 20px auto 5px 10px;
  letter-spacing: 0.64em;
  width: 90px;
  text-align: center;
}
@media screen and (max-width: 1550px) {
  .case .swiper__container .mySwiper .swiper-wrapper .case__slide .case__category {
    font-size: clamp(14px, 1.6rem, 16px);
  }
}
@media screen and (max-width: 768px) {
  .case .swiper__container .mySwiper .swiper-wrapper .case__slide .case__category {
    font-size: 3.73vw;
    margin: 1rem auto 0.6rem 0.7rem;
    width: 21.33vw;
  }
}
.case .swiper__container .mySwiper .swiper-wrapper .case__slide .case__category::before {
  content: "";
  margin-left: 0.64em;
}
.case .swiper__container .mySwiper .swiper-wrapper .case__slide .case__text {
  font-size: 18px;
  line-height: 1.5em;
  padding: 0 10px 15px 10px;
}
@media screen and (max-width: 1550px) {
  .case .swiper__container .mySwiper .swiper-wrapper .case__slide .case__text {
    font-size: clamp(14px, 1.8rem, 18px);
  }
}
@media screen and (max-width: 1250px) {
  .case .swiper__container .mySwiper .swiper-wrapper .case__slide .case__text {
    min-height: 25rem;
  }
}
@media screen and (max-width: 768px) {
  .case .swiper__container .mySwiper .swiper-wrapper .case__slide .case__text {
    font-size: 3.73vw;
    padding: 0 0.7rem 4rem 0.7rem;
    min-height: auto;
  }
}
@media screen and (max-width: 768px) {
  .case .swiper__container .mySwiper .swiper-wrapper .case__slide.pc-only {
    display: none;
  }
}
.case .swiper__container .swiper-button-next,
.case .swiper__container .swiper-button-prev {
  width: 63px;
  height: 63px;
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  color: transparent; /* Swiperデフォルトの矢印を消す */
}
@media screen and (max-width: 1550px) {
  .case .swiper__container .swiper-button-next,
  .case .swiper__container .swiper-button-prev {
    width: 3.28vw;
  }
}
.case .swiper__container .swiper-pagination-bullet {
  margin: 0 10px !important;
}
.case .swiper__container .swiper-button-next {
  background-image: url("../images/icon_arrow_06_pc.webp");
  right: -100px;
  top: 40%;
}
@media screen and (max-width: 1550px) {
  .case .swiper__container .swiper-button-next {
    right: -5%;
  }
}
@media screen and (max-width: 1250px) {
  .case .swiper__container .swiper-button-next {
    right: 0;
  }
}
@media screen and (max-width: 768px) {
  .case .swiper__container .swiper-button-next {
    display: none;
  }
}
.case .swiper__container .swiper-button-prev {
  background-image: url("../images/icon_arrow_05_pc.webp");
  left: -100px;
  top: 40%;
}
@media screen and (max-width: 1550px) {
  .case .swiper__container .swiper-button-prev {
    left: -5%;
  }
}
@media screen and (max-width: 1250px) {
  .case .swiper__container .swiper-button-prev {
    left: 0;
  }
}
@media screen and (max-width: 768px) {
  .case .swiper__container .swiper-button-prev {
    display: none;
  }
}
.case .swiper__container .swiper-button-next:hover {
  background-image: url("../images/icon_arrow_09_pc.webp");
}
.case .swiper__container .swiper-button-prev:hover {
  background-image: url("../images/icon_arrow_08_pc.webp");
}
.case .swiper__container .swiper-pagination {
  bottom: 50px;
}
.case .swiper__container .swiper-pagination-bullet {
  background: #134A9A;
  width: 18px !important;
  height: 18px !important;
}

.news {
  padding-top: 109px;
  padding-bottom: 85px;
  max-width: 1200px;
  margin: 0 auto;
  text-align: center;
}
@media screen and (max-width: 1250px) {
  .news {
    padding: 10.9rem 5% 8.5rem 5%;
  }
}
@media screen and (max-width: 768px) {
  .news {
    padding: 7rem 2rem 0 2rem;
  }
}
.news .news-title {
  margin-left: 103px;
}
@media screen and (max-width: 768px) {
  .news .news-title {
    margin-left: 0;
  }
}
.news .news-title::before {
  content: "";
  background-image: url(../images/text_news_01_pc.webp);
  width: 361px;
  height: 258px;
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  left: 0;
  right: 0;
  margin: 0 auto;
  bottom: -100px;
  z-index: -1;
}
@media screen and (max-width: 768px) {
  .news .news-title::before {
    width: clamp(217px, 21.7rem, 250px);
    height: clamp(155px, 15.5rem, 170px);
    bottom: clamp(-62px, -6.2rem, -72px);
  }
}
.news .news__wrapper {
  display: flex;
  flex-direction: column;
  gap: 40px;
  margin-top: 70px;
  margin-bottom: 60px;
  text-align: left;
}
@media screen and (max-width: 768px) {
  .news .news__wrapper {
    margin-top: 4.6rem;
    margin-bottom: 3rem;
    gap: 2rem;
  }
}
.news .news__wrapper .news__container {
  border-bottom: 1px solid #295486;
}
.news .news__wrapper .news__container .news__date {
  font-size: 18px;
  color: #ffffff;
  background-color: #295486;
  width: 120px;
  display: block;
  font-family: "Zen Antique", serif;
  text-align: center;
  margin-bottom: 12px;
  line-height: 1.5em;
}
@media screen and (max-width: 768px) {
  .news .news__wrapper .news__container .news__date {
    font-size: 3.73vw;
    width: 26.7vw;
  }
}
.news .news__wrapper .news__container .news__heading {
  font-size: 26px;
  color: #295486;
  line-height: 1.5em;
  padding-bottom: 15px;
  font-weight: 700;
}
@media screen and (max-width: 768px) {
  .news .news__wrapper .news__container .news__heading {
    font-size: 4.267vw;
    font-weight: 500;
  }
}
.news .news__wrapper .news__container:hover {
  opacity: 0.5;
}

.contact {
  text-align: center;
  padding-top: 106px;
  padding-bottom: 80px;
}
@media screen and (max-width: 768px) {
  .contact {
    padding: 7.5rem 0 4rem 0;
  }
}
.contact .contact-title::before {
  content: "";
  background-image: url(../images/text_contact_01_pc.webp);
  width: 589px;
  height: 258px;
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  left: 0;
  right: 0;
  margin: 0 auto;
  bottom: -100px;
  z-index: -1;
}
@media screen and (max-width: 768px) {
  .contact .contact-title::before {
    width: 94.4vw;
    height: 29.1vw;
    bottom: -9vw;
  }
}
.contact .contact__wrapper {
  border: 1px solid #295486;
  max-width: 1500px;
  margin: 0 auto;
  margin-top: 80px;
}
@media screen and (max-width: 768px) {
  .contact .contact__wrapper {
    margin-top: 12.53vw;
  }
}
.contact .contact__wrapper .contact__heading {
  font-size: 36px;
  color: #295486;
  padding: 24px;
  font-weight: bold;
}
@media screen and (max-width: 768px) {
  .contact .contact__wrapper .contact__heading {
    font-size: clamp(18px, 1.8rem, 24px);
  }
}
.contact .contact__wrapper .contact__details {
  background-image: url(../images/bg_cta_01_pc.webp);
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  padding-top: 42px;
  padding-bottom: 42px;
  color: #ffffff;
}
@media screen and (max-width: 768px) {
  .contact .contact__wrapper .contact__details {
    background-image: url(../images/bg_cta_02_sp.webp);
    padding-top: 10.67vw;
    padding-bottom: 10.67vw;
  }
}
.contact .contact__wrapper .contact__details .contact__text {
  font-size: 18px;
  border: 1px solid #ffffff;
  border-radius: 60px;
  padding: 23px 38px;
  display: inline-block;
}
@media screen and (max-width: 768px) {
  .contact .contact__wrapper .contact__details .contact__text {
    font-size: clamp(14px, 1.4rem, 16px);
    padding: 1rem 2rem;
  }
}
.contact .contact__wrapper .contact__details .contact-details__inner {
  margin-top: 40px;
  margin-bottom: 44px;
}
@media screen and (max-width: 768px) {
  .contact .contact__wrapper .contact__details .contact-details__inner {
    margin-top: 7.2vw;
    margin-bottom: 8vw;
  }
}
.contact .contact__wrapper .contact__details .contact-details__inner .contact__small-text {
  font-size: 18px;
}
@media screen and (max-width: 768px) {
  .contact .contact__wrapper .contact__details .contact-details__inner .contact__small-text {
    font-size: clamp(16px, 1.6rem, 18px);
  }
}
.contact .contact__wrapper .contact__details .contact-details__inner .contact__number {
  font-size: 70px;
  margin-left: 61px;
  font-weight: 700;
  position: relative;
  line-height: 1.5em;
}
@media screen and (max-width: 768px) {
  .contact .contact__wrapper .contact__details .contact-details__inner .contact__number {
    font-size: clamp(46px, 4.6rem, 54px);
  }
}
.contact .contact__wrapper .contact__details .contact-details__inner .contact__number::before {
  content: "";
  background-image: url(../images/icon_phone_01_pc.webp);
  background-repeat: no-repeat;
  background-size: contain;
  width: 61px;
  height: 62px;
  position: absolute;
  left: -61px;
  bottom: 15px;
}
@media screen and (max-width: 768px) {
  .contact .contact__wrapper .contact__details .contact-details__inner .contact__number::before {
    width: clamp(46px, 4.6rem, 52px);
    height: clamp(47px, 4.7rem, 53px);
    bottom: 10%;
  }
}
.contact .contact__wrapper .contact__details .contact-details__inner .contact__opening-hour--wrapper {
  display: flex;
  font-size: 18px;
  gap: 30px;
  justify-content: center;
  line-height: 1.5em;
}
@media screen and (max-width: 768px) {
  .contact .contact__wrapper .contact__details .contact-details__inner .contact__opening-hour--wrapper {
    font-size: clamp(14px, 1.4rem, 16px);
    gap: 1.7rem;
  }
}
@media screen and (max-width: 768px) {
  .contact .contact__wrapper .contact__details .contact-details__inner .contact__opening-hour--wrapper .opening-hour__small {
    font-size: clamp(12px, 1.2rem, 14px);
  }
}

.page-news .heading {
  background-image: url(../images/mv_news_01_pc.webp);
}
@media screen and (max-width: 768px) {
  .page-news .heading {
    background-image: url(../images/mv_news_02_sp.webp);
  }
}

.page-news__wrapper {
  max-width: 1200px;
  margin: 0 auto;
  padding: 40px 0 160px 0;
}
@media screen and (max-width: 1250px) {
  .page-news__wrapper {
    padding: 4rem 5% 16rem 5%;
  }
}
@media screen and (max-width: 768px) {
  .page-news__wrapper {
    padding: 8vw 5.33vw 1.8vw 5.33vw;
  }
}
.page-news__wrapper .page-news__list {
  display: flex;
  flex-direction: column;
  gap: 30px;
  width: 100%;
  margin-bottom: 130px;
}
@media screen and (max-width: 768px) {
  .page-news__wrapper .page-news__list {
    gap: 3vw;
    margin-bottom: 10vw;
  }
}
.page-news__wrapper .page-news__list .page-news__item {
  padding: 15px 0;
  border-bottom: 1px solid #295486;
}
@media screen and (max-width: 768px) {
  .page-news__wrapper .page-news__list .page-news__item {
    padding: 4.8vw 0;
  }
}
.page-news__wrapper .page-news__list .page-news__item .page-news__link:hover {
  opacity: 0.7;
}
.page-news__wrapper .page-news__text {
  font-size: 22px;
  line-height: 2em;
  margin-bottom: 440px;
}
@media screen and (max-width: 768px) {
  .page-news__wrapper .page-news__text {
    margin-bottom: 26.6vw;
    font-size: 3.73vw;
    line-height: 1.5em;
  }
}

.news__date {
  color: #ffffff;
  font-size: 18px;
  background-color: #295486;
  width: 120px;
  height: 27px;
  text-align: center;
  line-height: 1.5em;
  font-family: "Zen Antique", serif;
}
@media screen and (max-width: 768px) {
  .news__date {
    font-size: 3.73vw;
    width: 26vw;
    height: 5.33vw;
  }
}

.news__heading {
  font-size: 26px;
  color: #295486;
  font-weight: 700;
  margin-top: 12px;
  line-height: 1.5em;
}
@media screen and (max-width: 768px) {
  .news__heading {
    font-size: 4.2vw;
    margin-top: 4vw;
    font-weight: 500;
  }
}

.page-partner .heading {
  background-image: url(../images/mv_partner_01_pc.webp);
}
@media screen and (max-width: 768px) {
  .page-partner .heading {
    background-image: url(../images/mv_partner_02_sp.webp);
  }
}

.page-partner__wrapper {
  max-width: 1200px;
  margin: 0 auto;
  padding: 50px 0 80px 0;
}
@media screen and (max-width: 1250px) {
  .page-partner__wrapper {
    padding: 5rem 5% 8rem 5%;
  }
}
@media screen and (max-width: 768px) {
  .page-partner__wrapper {
    padding: 6.13vw 4.53vw 16vw 4.53vw;
  }
}
.page-partner__wrapper .page-partner__description {
  font-size: 26px;
  color: #295486;
  font-weight: 700;
  text-align: center;
  line-height: 1.5em;
}
@media screen and (max-width: 1250px) {
  .page-partner__wrapper .page-partner__description {
    font-size: 2.08vw;
  }
}
@media screen and (max-width: 768px) {
  .page-partner__wrapper .page-partner__description {
    font-size: 4.7vw;
    font-weight: 500;
  }
}
.page-partner__wrapper .page-partner__description .orange-text {
  color: #F7931E;
}
.page-partner__wrapper .partner-title {
  margin-top: 83px;
  margin-bottom: 33px;
}
@media screen and (max-width: 768px) {
  .page-partner__wrapper .partner-title {
    margin-top: 13.33vw;
    margin-bottom: 11.2vw;
  }
}
.page-partner__wrapper .partner-title::after {
  content: "";
  background-image: url(../images/text_partner_01_pc.webp);
  width: 589px;
  height: 91px;
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  left: -25px;
  bottom: 0;
  z-index: -1;
}
@media screen and (max-width: 768px) {
  .page-partner__wrapper .partner-title::after {
    width: 91.47vw;
    height: 14.93vw;
    bottom: -4vw;
    left: -4vw;
  }
}

.page__privacy .breadcrumb {
  padding-top: 60px;
  margin-top: 0;
}
@media screen and (max-width: 768px) {
  .page__privacy .breadcrumb {
    padding-top: 20vw;
  }
}

.privacy__wrapper {
  max-width: 1200px;
  margin: 0 auto;
  padding: 30px 0 80px 0;
}
@media screen and (max-width: 1250px) {
  .privacy__wrapper {
    padding-left: 5%;
    padding-right: 5%;
  }
}
@media screen and (max-width: 768px) {
  .privacy__wrapper {
    padding: 1.3vw 4vw 16vw 4vw;
  }
}
.privacy__wrapper .privacy__text {
  font-size: 16px;
  line-height: 1.5em;
  margin-top: 2em;
  padding-left: 1em;
}
@media screen and (max-width: 768px) {
  .privacy__wrapper .privacy__text {
    font-size: 14px;
    margin-top: 2vw;
  }
}
.privacy__wrapper .privacy__heading {
  font-size: 24px;
  line-height: 1.5em;
  font-weight: 700;
  margin-top: 2em;
}
@media screen and (max-width: 768px) {
  .privacy__wrapper .privacy__heading {
    font-size: 20px;
    margin-top: 2vw;
  }
}
.privacy__wrapper .privacy__sub-heading {
  font-size: 20px;
  line-height: 1.5em;
  font-weight: 500;
  text-indent: 1em;
  margin-top: 2rem;
}
@media screen and (max-width: 768px) {
  .privacy__wrapper .privacy__sub-heading {
    font-size: 18px;
    margin-top: 2vw;
  }
}
.privacy__wrapper .privacy__name {
  font-size: 18px;
  line-height: 1.5em;
  font-weight: 500;
  text-indent: 2em;
  margin-top: 2em;
  text-align: right;
}
.privacy__wrapper .privacy__list {
  list-style-type: disc;
  margin-top: 2em;
}
.privacy__wrapper .privacy__list .privacy__item {
  font-size: 16px;
  line-height: 1.5em;
  margin-left: 2em;
  padding-left: 1em;
}
.privacy__wrapper .indent2 {
  padding-left: 2em;
}
.privacy__wrapper .indent3 {
  margin-left: 3em;
}

.page-service-aircon .heading {
  background-image: url(../images/mv_service-aircon_01_pc.webp);
}
@media screen and (max-width: 768px) {
  .page-service-aircon .heading {
    background-image: url(../images/mv_service-aircon_03_sp.webp);
  }
}

.page-service-aircon .page-service__wrapper {
  background-image: url(../images/bg_service-aircon_01_pc.webp);
}
@media screen and (max-width: 768px) {
  .page-service-aircon .page-service__wrapper {
    background-image: url(../images/bg_service-cleaning_12_sp.webp);
    background-position: bottom;
    background-size: cover;
    padding: 1.6vw 5vw 9.33vw 5vw;
  }
}
.page-service-aircon .page-service__wrapper .breadcrumb__nav {
  margin-top: 0;
}
@media screen and (max-width: 1250px) {
  .page-service-aircon .page-service__wrapper .breadcrumb__nav {
    padding: 0 !important;
  }
}
.page-service-aircon .page-service__wrapper .cta-button__wrapper {
  margin-top: 54px;
}

.page-service-aircon__service {
  padding-bottom: 100px;
}
@media screen and (max-width: 1250px) {
  .page-service-aircon__service {
    padding-bottom: 10rem;
  }
}
@media screen and (max-width: 768px) {
  .page-service-aircon__service {
    padding: 4.267vw 0 16vw 0;
  }
}
.page-service-aircon__service .page-service-aircon__service--wrapper {
  display: flex;
  flex-direction: column;
  gap: 3.96vw;
}
@media screen and (max-width: 1250px) {
  .page-service-aircon__service .page-service-aircon__service--wrapper {
    gap: 6.4vw;
  }
}
@media screen and (max-width: 768px) {
  .page-service-aircon__service .page-service-aircon__service--wrapper {
    gap: 4.53vw;
    margin-top: 10.9vw;
  }
}
.page-service-aircon__service .page-service-aircon__service--wrapper .aircon-service__container {
  padding-bottom: 4.0625vw;
  position: relative;
  overflow: hidden;
}
@media screen and (max-width: 1250px) {
  .page-service-aircon__service .page-service-aircon__service--wrapper .aircon-service__container {
    padding-bottom: 3vw;
  }
}
@media screen and (max-width: 768px) {
  .page-service-aircon__service .page-service-aircon__service--wrapper .aircon-service__container {
    padding-bottom: 0;
    aspect-ratio: 375/528;
  }
}
.page-service-aircon__service .page-service-aircon__service--wrapper .aircon-service__container .aircon-service__inner {
  max-width: 63.21vw;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
  flex-direction: row;
  align-items: flex-end;
}
@media screen and (max-width: 1250px) {
  .page-service-aircon__service .page-service-aircon__service--wrapper .aircon-service__container .aircon-service__inner {
    max-width: 80vw;
    align-items: flex-start;
  }
}
@media screen and (max-width: 768px) {
  .page-service-aircon__service .page-service-aircon__service--wrapper .aircon-service__container .aircon-service__inner {
    max-width: 100%;
    flex-direction: column;
    justify-content: center;
    align-items: center;
  }
}
.page-service-aircon__service .page-service-aircon__service--wrapper .aircon-service__container .aircon-service__inner .aircon-service__img {
  width: 31.25vw;
}
@media screen and (max-width: 1250px) {
  .page-service-aircon__service .page-service-aircon__service--wrapper .aircon-service__container .aircon-service__inner .aircon-service__img {
    width: 35vw;
  }
}
@media screen and (max-width: 768px) {
  .page-service-aircon__service .page-service-aircon__service--wrapper .aircon-service__container .aircon-service__inner .aircon-service__img {
    width: 89.33vw;
    padding-top: 10.67vw;
  }
}
.page-service-aircon__service .page-service-aircon__service--wrapper .aircon-service__container .aircon-service__inner .aircon-service__details {
  width: 30.72vw;
  padding-top: 4.68vw;
}
@media screen and (max-width: 1250px) {
  .page-service-aircon__service .page-service-aircon__service--wrapper .aircon-service__container .aircon-service__inner .aircon-service__details {
    width: 42vw;
    padding-top: 4vw;
  }
}
@media screen and (max-width: 768px) {
  .page-service-aircon__service .page-service-aircon__service--wrapper .aircon-service__container .aircon-service__inner .aircon-service__details {
    width: 91.4vw;
    padding-top: 5.33vw;
  }
}
.page-service-aircon__service .page-service-aircon__service--wrapper .aircon-service__container .aircon-service__inner .aircon-service__details .aircon-service__title {
  font-size: 1.875vw;
  color: #295486;
  font-weight: 700;
  margin-left: 0.885vw;
  position: relative;
}
@media screen and (max-width: 1250px) {
  .page-service-aircon__service .page-service-aircon__service--wrapper .aircon-service__container .aircon-service__inner .aircon-service__details .aircon-service__title {
    font-size: clamp(20px, 1.875vw, 36px);
  }
}
@media screen and (max-width: 768px) {
  .page-service-aircon__service .page-service-aircon__service--wrapper .aircon-service__container .aircon-service__inner .aircon-service__details .aircon-service__title {
    font-size: 5.33vw;
    margin-left: 2.67vw;
  }
}
.page-service-aircon__service .page-service-aircon__service--wrapper .aircon-service__container .aircon-service__inner .aircon-service__details .aircon-service__title::before {
  content: "";
  position: absolute;
  bottom: 0;
  left: -0.885vw;
  width: 2px;
  height: 2vw;
  background-color: #FF6200;
}
@media screen and (max-width: 768px) {
  .page-service-aircon__service .page-service-aircon__service--wrapper .aircon-service__container .aircon-service__inner .aircon-service__details .aircon-service__title::before {
    height: 6.4vw;
    width: 1px;
    left: -2.4vw;
  }
}
.page-service-aircon__service .page-service-aircon__service--wrapper .aircon-service__container .aircon-service__inner .aircon-service__details .aircon-service__text {
  font-size: 0.94vw;
  line-height: 1.5em;
  margin-top: 0.52vw;
}
@media screen and (max-width: 1250px) {
  .page-service-aircon__service .page-service-aircon__service--wrapper .aircon-service__container .aircon-service__inner .aircon-service__details .aircon-service__text {
    font-size: clamp(14px, 1.2vw, 18px);
    min-height: 10vw;
  }
}
@media screen and (max-width: 768px) {
  .page-service-aircon__service .page-service-aircon__service--wrapper .aircon-service__container .aircon-service__inner .aircon-service__details .aircon-service__text {
    font-size: 3.73vw;
    margin-top: 2.93vw;
  }
}
.page-service-aircon__service .page-service-aircon__service--wrapper .aircon-service__container:nth-child(even) .aircon-service__inner {
  flex-direction: row-reverse;
}
@media screen and (max-width: 768px) {
  .page-service-aircon__service .page-service-aircon__service--wrapper .aircon-service__container:nth-child(even) .aircon-service__inner {
    flex-direction: column;
  }
}
.page-service-aircon__service .page-service-aircon__service--wrapper .aircon-service__container:before {
  background-position: bottom;
  background-repeat: no-repeat;
  background-size: cover;
  position: absolute;
  width: 81.7vw;
  height: 20.03vw;
  z-index: -1;
  bottom: 0;
  content: "";
}
@media screen and (max-width: 1250px) {
  .page-service-aircon__service .page-service-aircon__service--wrapper .aircon-service__container:before {
    width: 120vw;
    height: 27vw;
  }
}
@media screen and (max-width: 768px) {
  .page-service-aircon__service .page-service-aircon__service--wrapper .aircon-service__container:before {
    width: 100%;
    height: 93.33vw;
  }
}
.page-service-aircon__service .page-service-aircon__service--wrapper .aircon-service__container:nth-child(odd):before {
  background-image: url(../images/bg_service-aircon_02_pc.webp);
  left: 58.8vw;
  transform: translateX(-50%);
}
@media screen and (max-width: 1250px) {
  .page-service-aircon__service .page-service-aircon__service--wrapper .aircon-service__container:nth-child(odd):before {
    left: 69.25vw;
  }
}
@media screen and (max-width: 768px) {
  .page-service-aircon__service .page-service-aircon__service--wrapper .aircon-service__container:nth-child(odd):before {
    background-image: url(../images/bg_service-aircon_03_sp.webp);
    left: 50%;
  }
}
.page-service-aircon__service .page-service-aircon__service--wrapper .aircon-service__container:nth-child(even):before {
  background-image: url(../images/bg_service-aircon_03_pc.webp);
  right: 58.8vw;
  transform: translateX(50%);
}
@media screen and (max-width: 1250px) {
  .page-service-aircon__service .page-service-aircon__service--wrapper .aircon-service__container:nth-child(even):before {
    right: 69.25vw;
  }
}
@media screen and (max-width: 768px) {
  .page-service-aircon__service .page-service-aircon__service--wrapper .aircon-service__container:nth-child(even):before {
    background-image: url(../images/bg_service-aircon_04_sp.webp);
    right: 50%;
  }
}
.page-service-aircon__service .page-service-aircon__service--wrapper .aircon-service__01 {
  position: relative;
}
.page-service-aircon__service .page-service-aircon__service--wrapper .aircon-service__01::after {
  content: "";
  background-image: url(../images/text_cleaning_01_pc.webp);
  width: 13.02vw;
  height: 4.73vw;
  position: absolute;
  background-repeat: no-repeat;
  background-size: contain;
  transform-origin: left top;
  transform: translateX(-50%) rotate(-90deg);
  left: 21.5vw;
  top: 13vw;
}
@media screen and (max-width: 1250px) {
  .page-service-aircon__service .page-service-aircon__service--wrapper .aircon-service__01::after {
    left: 13vw;
  }
}
@media screen and (max-width: 768px) {
  .page-service-aircon__service .page-service-aircon__service--wrapper .aircon-service__01::after {
    left: 5vw;
    top: 0;
    transform: none;
    width: 44.53vw;
    height: 16.26vw;
  }
}
.page-service-aircon__service .page-service-aircon__service--wrapper .aircon-service__02 {
  position: relative;
}
.page-service-aircon__service .page-service-aircon__service--wrapper .aircon-service__02::after {
  content: "";
  background-image: url(../images/text_repair_01_pc.webp);
  width: 9.63vw;
  height: 4.73vw;
  position: absolute;
  background-repeat: no-repeat;
  background-size: contain;
  transform-origin: left top;
  transform: translateX(-50%) rotate(90deg);
  right: 0.5vw;
  top: 0;
}
@media screen and (max-width: 1250px) {
  .page-service-aircon__service .page-service-aircon__service--wrapper .aircon-service__02::after {
    right: -8vw;
  }
}
@media screen and (max-width: 768px) {
  .page-service-aircon__service .page-service-aircon__service--wrapper .aircon-service__02::after {
    right: 5vw;
    top: 0;
    transform: none;
    width: 33.067vw;
    height: 16.26vw;
  }
}
.page-service-aircon__service .page-service-aircon__service--wrapper .aircon-service__03 {
  position: relative;
}
.page-service-aircon__service .page-service-aircon__service--wrapper .aircon-service__03::after {
  content: "";
  background-image: url(../images/text_maintenance_01_pc.webp);
  width: 18.95vw;
  height: 4.73vw;
  position: absolute;
  background-repeat: no-repeat;
  background-size: contain;
  transform-origin: left top;
  transform: translateX(50%) rotate(-90deg);
  left: 6vw;
  top: 19vw;
}
@media screen and (max-width: 1250px) {
  .page-service-aircon__service .page-service-aircon__service--wrapper .aircon-service__03::after {
    left: -2.5vw;
  }
}
@media screen and (max-width: 768px) {
  .page-service-aircon__service .page-service-aircon__service--wrapper .aircon-service__03::after {
    left: 5vw;
    top: 2vw;
    transform: none;
    width: 64.8vw;
    height: 16.26vw;
  }
}
.page-service-aircon__service .page-service-aircon__service--wrapper .aircon-service__04 {
  position: relative;
}
.page-service-aircon__service .page-service-aircon__service--wrapper .aircon-service__04::after {
  content: "";
  background-image: url(../images/text_inspection_01_pc.webp);
  width: 15.46vw;
  height: 4.73vw;
  position: absolute;
  background-repeat: no-repeat;
  background-size: contain;
  transform-origin: left top;
  transform: translateX(-50%) rotate(90deg);
  right: -8vw;
  top: 0;
}
@media screen and (max-width: 1250px) {
  .page-service-aircon__service .page-service-aircon__service--wrapper .aircon-service__04::after {
    right: -17vw;
  }
}
@media screen and (max-width: 768px) {
  .page-service-aircon__service .page-service-aircon__service--wrapper .aircon-service__04::after {
    right: 5vw;
    top: 0;
    transform: none;
    width: 52.8vw;
    height: 16.26vw;
  }
}
.page-service-aircon__service .page-service-aircon__service--wrapper .aircon-service__05 {
  position: relative;
}
.page-service-aircon__service .page-service-aircon__service--wrapper .aircon-service__05::after {
  content: "";
  background-image: url(../images/text_replacement_01_pc.webp);
  width: 18.85vw;
  height: 4.73vw;
  position: absolute;
  background-repeat: no-repeat;
  background-size: contain;
  transform-origin: left top;
  transform: translateX(50%) rotate(-90deg);
  left: 5.5vw;
  top: 19vw;
}
@media screen and (max-width: 1250px) {
  .page-service-aircon__service .page-service-aircon__service--wrapper .aircon-service__05::after {
    left: -3vw;
  }
}
@media screen and (max-width: 768px) {
  .page-service-aircon__service .page-service-aircon__service--wrapper .aircon-service__05::after {
    left: 5vw;
    top: 0;
    transform: none;
    width: 64.267vw;
    height: 16.26vw;
  }
}
.page-service-aircon__service .page-service-aircon__button {
  font-size: 0.94vw;
  color: #295486;
  background: #ffffff;
  box-sizing: border-box;
  border-radius: 40px;
  cursor: pointer;
  width: 15.625vw;
  height: 2.86vw;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  margin-top: 3.125vw;
  font-weight: 700;
  box-shadow: 4px 4px 4px rgba(0, 0, 0, 0.25);
}
@media screen and (max-width: 1250px) {
  .page-service-aircon__service .page-service-aircon__button {
    width: 24vw;
    height: 4vw;
    font-size: 1.44vw;
    margin-top: 2vw;
  }
}
@media screen and (max-width: 768px) {
  .page-service-aircon__service .page-service-aircon__button {
    font-size: 4.2vw;
    width: 66.67vw;
    height: 13.33vw;
    margin: 0 auto;
    border-radius: 80px;
    position: absolute;
    bottom: 5.33vw;
    left: 0;
    right: 0;
  }
}
.page-service-aircon__service .page-service-aircon__button::after {
  content: "";
  background-image: url(../images/icon_arrow_02_pc.webp);
  background-size: contain;
  background-repeat: no-repeat;
  width: 0.52vw;
  height: 1vw;
  right: 1.56vw;
  position: absolute;
}
@media screen and (max-width: 768px) {
  .page-service-aircon__service .page-service-aircon__button::after {
    width: 2.67vw;
    right: 2.67vw;
    height: 4.53vw;
  }
}
.page-service-aircon__service .page-service-aircon__button:hover::after {
  background-image: url(../images/icon_arrow_01_pc.webp);
}
.page-service-aircon__service .page-service-aircon__button:hover {
  background: linear-gradient(to bottom, #BAC3E0 0%, #7E8FC7 100%);
  color: #ffffff;
  border: 1px solid #295486;
}

.page-service-cleaning .heading {
  background-image: url(../images/mv_service-cleaning_01_pc.webp);
}
@media screen and (max-width: 768px) {
  .page-service-cleaning .heading {
    background-image: url(../images/mv_service-cleaning_03_sp.webp);
  }
}

.page-service__wrapper {
  background-image: url(../images/bg_service-cleaning_06_pc.webp);
  background-size: cover;
  background-position: top;
  padding: 15px 0 84px 0;
}
@media screen and (max-width: 1250px) {
  .page-service__wrapper {
    padding: 1.5rem 5% 8.4rem 5%;
  }
}
@media screen and (max-width: 768px) {
  .page-service__wrapper {
    background-image: url(../images/bg_service-cleaning_12_sp.webp);
    padding: 1.6vw 5.33vw 16vw 5.33vw;
  }
}
.page-service__wrapper .breadcrumb__nav {
  margin-top: 0;
}
@media screen and (max-width: 1250px) {
  .page-service__wrapper .breadcrumb__nav {
    padding: 0;
  }
}

.page-service__inner {
  max-width: 1200px;
  margin: 40px auto 0 auto;
}
@media screen and (max-width: 1250px) {
  .page-service__inner {
    margin-top: 3.2vw;
  }
}
@media screen and (max-width: 768px) {
  .page-service__inner {
    text-align: center;
    margin-top: 5.867vw;
  }
}
.page-service__inner .page-service__reason-title {
  font-size: 36px;
  font-weight: 700;
  color: #295486;
  line-height: 1.5em;
  display: inline;
  background: linear-gradient(to bottom, rgba(255, 240, 201, 0.8) 0%, rgba(255, 240, 201, 0.8) 100%);
  background-size: 100% 1.4vw;
  background-position: bottom left;
  background-repeat: no-repeat;
}
@media screen and (max-width: 1250px) {
  .page-service__inner .page-service__reason-title {
    font-size: 2.88vw;
  }
}
@media screen and (max-width: 768px) {
  .page-service__inner .page-service__reason-title {
    font-size: 4.8vw;
  }
}
.page-service__inner .reason__text {
  font-size: 26px;
  line-height: 1.5em;
  margin-top: 27px;
}
@media screen and (max-width: 1250px) {
  .page-service__inner .reason__text {
    font-size: clamp(15px, 2.08vw, 26px);
    margin-top: 2.16vw;
  }
}
@media screen and (max-width: 768px) {
  .page-service__inner .reason__text {
    text-align: left;
    font-size: 3.73vw;
    margin-top: 3.73vw;
  }
}
.page-service__inner .reason__title {
  width: 397px;
  margin: 54px auto 18px auto;
}
@media screen and (max-width: 1250px) {
  .page-service__inner .reason__title {
    margin-top: 4.32vw;
  }
}
@media screen and (max-width: 768px) {
  .page-service__inner .reason__title {
    width: 60.27vw;
    margin: 11.46vw auto 1.6vw auto;
  }
}
.page-service__inner .reason__wrapper {
  max-width: 1200px;
  margin: 0 auto;
  display: flex;
  flex-wrap: wrap;
  gap: 0 90px;
  margin-bottom: 63px;
  justify-content: center;
}
@media screen and (max-width: 1250px) {
  .page-service__inner .reason__wrapper {
    gap: 0 7.2vw;
    margin-bottom: 5.04vw;
  }
}
@media screen and (max-width: 768px) {
  .page-service__inner .reason__wrapper {
    flex-direction: column;
    gap: 4.267vw;
    align-items: center;
  }
}
.page-service__inner .reason__wrapper .reason__container {
  width: 509px;
  height: 500px;
  aspect-ratio: 509/500;
  padding: 121px 37px 0 30px;
  background-repeat: no-repeat;
  background-position: center;
}
@media screen and (max-width: 1250px) {
  .page-service__inner .reason__wrapper .reason__container {
    width: 40.72vw;
    height: 40vw;
    padding: 9.68vw 2.96vw 0 2.4vw;
  }
}
@media screen and (max-width: 768px) {
  .page-service__inner .reason__wrapper .reason__container {
    width: 64.267vw;
    height: 82.13vw;
    aspect-ratio: 241/308;
    padding: 20.26vw 3vw 0 3vw;
  }
}
.page-service__inner .reason__wrapper .reason__container .reason-point__title {
  font-weight: 700;
  color: #295486;
  font-size: 26px;
  padding: 0 0 15px 0;
  border-bottom: 1px solid #F7931E;
}
@media screen and (max-width: 1250px) {
  .page-service__inner .reason__wrapper .reason__container .reason-point__title {
    font-size: clamp(15px, 2.08vw, 26px);
    padding-bottom: 1.2vw;
  }
}
@media screen and (max-width: 768px) {
  .page-service__inner .reason__wrapper .reason__container .reason-point__title {
    font-size: 4.267vw;
    padding-bottom: 2.13vw;
  }
}
.page-service__inner .reason__wrapper .reason__container .reason-point__text {
  font-size: 26px;
  margin-top: 20px;
  line-height: 1.5em;
}
@media screen and (max-width: 1250px) {
  .page-service__inner .reason__wrapper .reason__container .reason-point__text {
    font-size: clamp(15px, 2.08vw, 26px);
    margin-top: 1.6vw;
  }
}
@media screen and (max-width: 768px) {
  .page-service__inner .reason__wrapper .reason__container .reason-point__text {
    font-size: 3.73vw;
    margin-top: 4vw;
    text-align: left;
  }
}
.page-service__inner .reason__wrapper .reason__01 {
  background-image: url(../images/bg_point_01_pc.webp);
  background-size: contain;
}
@media screen and (max-width: 768px) {
  .page-service__inner .reason__wrapper .reason__01 {
    background-image: url(../images/bg_point_05_sp.webp);
  }
}
.page-service__inner .reason__wrapper .reason__02 {
  background-image: url(../images/bg_point_02_pc.webp);
  background-size: contain;
}
@media screen and (max-width: 768px) {
  .page-service__inner .reason__wrapper .reason__02 {
    background-image: url(../images/bg_point_06_sp.webp);
  }
}
.page-service__inner .reason__wrapper .reason__03 {
  background-image: url(../images/bg_point_03_pc.webp);
  background-size: contain;
}
@media screen and (max-width: 768px) {
  .page-service__inner .reason__wrapper .reason__03 {
    background-image: url(../images/bg_point_07_sp.webp);
  }
}
.page-service__inner .reason__wrapper .reason__04 {
  background-image: url(../images/bg_point_04_pc.webp);
  background-size: contain;
}
@media screen and (max-width: 768px) {
  .page-service__inner .reason__wrapper .reason__04 {
    background-image: url(../images/bg_point_08_sp.webp);
  }
}
@media screen and (max-width: 768px) {
  .page-service__inner .reason__wrapper .reason__04 .reason-point__title {
    font-size: 4vw;
  }
}

.page-service-cleaning__service {
  padding: 37px 0 80px 0;
}
@media screen and (max-width: 1250px) {
  .page-service-cleaning__service {
    padding: 3.7rem 0 8rem 0;
  }
}
@media screen and (max-width: 768px) {
  .page-service-cleaning__service {
    padding: 2.4vw 0 16vw 0;
  }
}
.page-service-cleaning__service .page-service-cleaning__service-title {
  text-align: center;
}
@media screen and (max-width: 768px) {
  .page-service-cleaning__service .page-service-cleaning__service-title {
    font-size: 5.3vw;
    line-height: 1.5em;
  }
}
.page-service-cleaning__service .page-service-cleaning__service-title::before {
  content: "";
  background-image: url(../images/text_service_02_sp.webp);
  width: 530px;
  height: 258px;
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  left: 0;
  right: 0;
  margin: 0 auto;
  bottom: -100px;
  z-index: -1;
}
@media screen and (max-width: 768px) {
  .page-service-cleaning__service .page-service-cleaning__service-title::before {
    background-image: url(../images/text_service_03_sp.webp);
    width: 84.8vw;
    height: 13.86vw;
    bottom: -3.8vw;
  }
}
.page-service-cleaning__service .page-service-cleaning__service--wrapper {
  display: flex;
  flex-direction: column;
  gap: 4.16vw;
  margin-top: 4.625vw;
}
@media screen and (max-width: 1250px) {
  .page-service-cleaning__service .page-service-cleaning__service--wrapper {
    margin-top: 6.16vw;
    gap: 6.4vw;
  }
}
@media screen and (max-width: 768px) {
  .page-service-cleaning__service .page-service-cleaning__service--wrapper {
    gap: 0;
    margin-top: 10.9vw;
  }
}
.page-service-cleaning__service .page-service-cleaning__service--wrapper .cleaning-service__container {
  padding-bottom: 3.64vw;
  position: relative;
  overflow: hidden;
}
@media screen and (max-width: 1250px) {
  .page-service-cleaning__service .page-service-cleaning__service--wrapper .cleaning-service__container {
    padding-bottom: 5vw;
  }
}
@media screen and (max-width: 768px) {
  .page-service-cleaning__service .page-service-cleaning__service--wrapper .cleaning-service__container {
    padding-bottom: 0;
    aspect-ratio: 375/425;
  }
}
.page-service-cleaning__service .page-service-cleaning__service--wrapper .cleaning-service__container .cleaning-service__inner {
  max-width: 62.5vw;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
  flex-direction: row;
}
@media screen and (max-width: 1250px) {
  .page-service-cleaning__service .page-service-cleaning__service--wrapper .cleaning-service__container .cleaning-service__inner {
    max-width: 80vw;
  }
}
@media screen and (max-width: 768px) {
  .page-service-cleaning__service .page-service-cleaning__service--wrapper .cleaning-service__container .cleaning-service__inner {
    max-width: 100%;
    flex-direction: column;
    justify-content: center;
    align-items: center;
  }
}
.page-service-cleaning__service .page-service-cleaning__service--wrapper .cleaning-service__container .cleaning-service__inner .cleaning-service__img {
  width: 31.25vw;
}
@media screen and (max-width: 1250px) {
  .page-service-cleaning__service .page-service-cleaning__service--wrapper .cleaning-service__container .cleaning-service__inner .cleaning-service__img {
    width: 38vw;
  }
}
@media screen and (max-width: 768px) {
  .page-service-cleaning__service .page-service-cleaning__service--wrapper .cleaning-service__container .cleaning-service__inner .cleaning-service__img {
    width: 89.33vw;
    padding-top: 10.67vw;
  }
}
.page-service-cleaning__service .page-service-cleaning__service--wrapper .cleaning-service__container .cleaning-service__inner .cleaning-service__details {
  width: 28.9vw;
  padding-top: 5.26vw;
}
@media screen and (max-width: 1250px) {
  .page-service-cleaning__service .page-service-cleaning__service--wrapper .cleaning-service__container .cleaning-service__inner .cleaning-service__details {
    width: 38vw;
    padding-top: 7.6vw;
  }
}
@media screen and (max-width: 768px) {
  .page-service-cleaning__service .page-service-cleaning__service--wrapper .cleaning-service__container .cleaning-service__inner .cleaning-service__details {
    width: 91.4vw;
    padding-top: 5.33vw;
  }
}
.page-service-cleaning__service .page-service-cleaning__service--wrapper .cleaning-service__container .cleaning-service__inner .cleaning-service__details .cleaning-service__title {
  font-size: 1.875vw;
  color: #295486;
  font-weight: 700;
  margin-left: 1.145vw;
  position: relative;
}
@media screen and (max-width: 1250px) {
  .page-service-cleaning__service .page-service-cleaning__service--wrapper .cleaning-service__container .cleaning-service__inner .cleaning-service__details .cleaning-service__title {
    font-size: clamp(20px, 1.875vw, 36px);
  }
}
@media screen and (max-width: 768px) {
  .page-service-cleaning__service .page-service-cleaning__service--wrapper .cleaning-service__container .cleaning-service__inner .cleaning-service__details .cleaning-service__title {
    font-size: 5.33vw;
    margin-left: 2.67vw;
  }
}
.page-service-cleaning__service .page-service-cleaning__service--wrapper .cleaning-service__container .cleaning-service__inner .cleaning-service__details .cleaning-service__title::before {
  content: "";
  position: absolute;
  bottom: 0;
  left: -1.25vw;
  width: 2px;
  height: 2vw;
  background-color: #FF6200;
}
@media screen and (max-width: 768px) {
  .page-service-cleaning__service .page-service-cleaning__service--wrapper .cleaning-service__container .cleaning-service__inner .cleaning-service__details .cleaning-service__title::before {
    height: 6.4vw;
    width: 1px;
    left: -2.4vw;
  }
}
.page-service-cleaning__service .page-service-cleaning__service--wrapper .cleaning-service__container .cleaning-service__inner .cleaning-service__details .cleaning-service__text {
  font-size: 1.354vw;
  line-height: 1.5em;
  margin-top: 0.9vw;
}
@media screen and (max-width: 1250px) {
  .page-service-cleaning__service .page-service-cleaning__service--wrapper .cleaning-service__container .cleaning-service__inner .cleaning-service__details .cleaning-service__text {
    font-size: clamp(16px, 1.345vw, 26px);
  }
}
@media screen and (max-width: 768px) {
  .page-service-cleaning__service .page-service-cleaning__service--wrapper .cleaning-service__container .cleaning-service__inner .cleaning-service__details .cleaning-service__text {
    font-size: 3.73vw;
    margin-top: 2.93vw;
  }
}
.page-service-cleaning__service .page-service-cleaning__service--wrapper .cleaning-service__container:nth-child(even) .cleaning-service__inner {
  flex-direction: row-reverse;
}
@media screen and (max-width: 768px) {
  .page-service-cleaning__service .page-service-cleaning__service--wrapper .cleaning-service__container:nth-child(even) .cleaning-service__inner {
    flex-direction: column;
  }
}
.page-service-cleaning__service .page-service-cleaning__service--wrapper .cleaning-service__container:before {
  background-position: bottom;
  background-repeat: no-repeat;
  background-size: cover;
  position: absolute;
  width: 88vw;
  height: 20.03vw;
  z-index: -1;
  bottom: 0;
  content: "";
}
@media screen and (max-width: 1250px) {
  .page-service-cleaning__service .page-service-cleaning__service--wrapper .cleaning-service__container:before {
    width: 120vw;
    height: 25vw;
  }
}
@media screen and (max-width: 768px) {
  .page-service-cleaning__service .page-service-cleaning__service--wrapper .cleaning-service__container:before {
    width: 100%;
    height: 69.33vw;
  }
}
.page-service-cleaning__service .page-service-cleaning__service--wrapper .cleaning-service__01:before {
  background-image: url(../images/bg_service-cleaning_01_pc.webp);
  left: 55.5vw;
  transform: translateX(-50%);
}
@media screen and (max-width: 1250px) {
  .page-service-cleaning__service .page-service-cleaning__service--wrapper .cleaning-service__01:before {
    left: 60.1vw;
  }
}
@media screen and (max-width: 768px) {
  .page-service-cleaning__service .page-service-cleaning__service--wrapper .cleaning-service__01:before {
    background-image: url(../images/bg_service-cleaning_07_sp.webp);
    left: 50%;
  }
}
.page-service-cleaning__service .page-service-cleaning__service--wrapper .cleaning-service__02:before {
  background-image: url(../images/bg_service-cleaning_02_pc.webp);
  right: 55.6vw;
  transform: translateX(50%);
}
@media screen and (max-width: 1250px) {
  .page-service-cleaning__service .page-service-cleaning__service--wrapper .cleaning-service__02:before {
    right: 60.3vw;
  }
}
@media screen and (max-width: 768px) {
  .page-service-cleaning__service .page-service-cleaning__service--wrapper .cleaning-service__02:before {
    background-image: url(../images/bg_service-cleaning_08_sp.webp);
    right: 50%;
  }
}
.page-service-cleaning__service .page-service-cleaning__service--wrapper .cleaning-service__03:before {
  background-image: url(../images/bg_service-cleaning_03_pc.webp);
  left: 55.5vw;
  transform: translateX(-50%);
}
@media screen and (max-width: 1250px) {
  .page-service-cleaning__service .page-service-cleaning__service--wrapper .cleaning-service__03:before {
    left: 60.1vw;
  }
}
@media screen and (max-width: 768px) {
  .page-service-cleaning__service .page-service-cleaning__service--wrapper .cleaning-service__03:before {
    background-image: url(../images/bg_service-cleaning_09_sp.webp);
    left: 50%;
  }
}
.page-service-cleaning__service .page-service-cleaning__service--wrapper .cleaning-service__04:before {
  background-image: url(../images/bg_service-cleaning_04_pc.webp);
  right: 55.5vw;
  transform: translateX(50%);
}
@media screen and (max-width: 1250px) {
  .page-service-cleaning__service .page-service-cleaning__service--wrapper .cleaning-service__04:before {
    right: 60.1vw;
  }
}
@media screen and (max-width: 768px) {
  .page-service-cleaning__service .page-service-cleaning__service--wrapper .cleaning-service__04:before {
    background-image: url(../images/bg_service-cleaning_10_sp.webp);
    right: 50%;
  }
}
.page-service-cleaning__service .page-service-cleaning__service--wrapper .cleaning-service__05:before {
  background-image: url(../images/bg_service-cleaning_05_pc.webp);
  left: 55.5vw;
  transform: translateX(-50%);
}
@media screen and (max-width: 1250px) {
  .page-service-cleaning__service .page-service-cleaning__service--wrapper .cleaning-service__05:before {
    left: 60.1vw;
  }
}
@media screen and (max-width: 768px) {
  .page-service-cleaning__service .page-service-cleaning__service--wrapper .cleaning-service__05:before {
    background-image: url(../images/bg_service-cleaning_11_sp.webp);
    left: 50%;
  }
}
.page-service-cleaning__service .page-service-cleaning__flow-button {
  font-size: 22px;
  color: #ffffff;
  background: #295486;
  box-sizing: border-box;
  border-radius: 40px;
  cursor: pointer;
  width: 388px;
  height: 62px;
  display: flex;
  align-items: center;
  margin: 0 auto;
  justify-content: center;
  position: relative;
  margin-top: 80px;
  box-shadow: 4px 4px 4px rgba(0, 0, 0, 0.25);
}
@media screen and (max-width: 768px) {
  .page-service-cleaning__service .page-service-cleaning__flow-button {
    font-size: 4.8vw;
    width: 80vw;
    height: 13.33vw;
  }
}
.page-service-cleaning__service .page-service-cleaning__flow-button::after {
  content: "";
  background-image: url(../images/icon_arrow_01_pc.webp);
  background-size: contain;
  background-repeat: no-repeat;
  width: 10px;
  height: 17px;
  right: 22px;
  position: absolute;
}
@media screen and (max-width: 768px) {
  .page-service-cleaning__service .page-service-cleaning__flow-button::after {
    width: 2.67vw;
    right: 2.67vw;
    height: 4.53vw;
  }
}
.page-service-cleaning__service .page-service-cleaning__flow-button:hover {
  background: linear-gradient(to bottom, #BAC3E0 0%, #7E8FC7 100%);
  color: #ffffff;
  border: 1px solid #295486;
}

.cleaning__before-after {
  padding: 90px 0 80px 0;
  background-image: url(../images/bg_before-after_01_pc.webp);
  background-repeat: no-repeat;
  background-size: cover;
}
@media screen and (max-width: 1250px) {
  .cleaning__before-after {
    padding: 9rem 0 8rem 0;
  }
}
@media screen and (max-width: 768px) {
  .cleaning__before-after {
    padding: 6.4vw 0 10.9vw 0;
    background-image: url(../images/bg_before-after_02_sp.webp);
  }
}
.cleaning__before-after .page-service-cleaning__service-title {
  text-align: center;
  color: #ffffff;
}

.page-service-cleaning-flow .heading {
  background-image: url(../images/mv_service-cleaning_02_pc.webp);
}
@media screen and (max-width: 768px) {
  .page-service-cleaning-flow .heading {
    background-image: url(../images/mv_service-cleaning_04_sp.webp);
  }
}

.page-service-aircon-flow .heading {
  background-image: url(../images/mv_service-aircon_02_pc.webp);
}
@media screen and (max-width: 768px) {
  .page-service-aircon-flow .heading {
    background-image: url(../images/mv_service-aircon_04_sp.webp);
  }
}

.page-service-flow__wrapper {
  padding: 53px 0 80px 0;
}
@media screen and (max-width: 1250px) {
  .page-service-flow__wrapper {
    padding: 5.3rem 5% 8rem 5%;
  }
}
@media screen and (max-width: 768px) {
  .page-service-flow__wrapper {
    padding: 7.2vw 5vw 1.6vw 5vw;
  }
}
.page-service-flow__wrapper .page-service-flow__text {
  font-size: 26px;
  line-height: 1.5em;
  max-width: 1200px;
  margin: 0 auto;
}
@media screen and (max-width: 1550px) {
  .page-service-flow__wrapper .page-service-flow__text {
    font-size: clamp(16px, 1.6vw, 26px);
  }
}
@media screen and (max-width: 768px) {
  .page-service-flow__wrapper .page-service-flow__text {
    font-size: 3.73vw;
  }
}
.page-service-flow__wrapper .service-flow__wrapper {
  margin: 72px auto 0 auto;
  max-width: 1274px;
  position: relative;
}
@media screen and (max-width: 1550px) {
  .page-service-flow__wrapper .service-flow__wrapper {
    max-width: 82.193vw;
  }
}
@media screen and (max-width: 768px) {
  .page-service-flow__wrapper .service-flow__wrapper {
    max-width: 89.33vw;
  }
}
.page-service-flow__wrapper .service-flow__wrapper::before {
  content: "";
  width: 80px;
  height: 558px;
  background-image: url(../images/text_process_01_pc.webp);
  position: absolute;
  left: -82px;
  top: 70px;
  background-repeat: no-repeat;
  background-size: contain;
}
@media screen and (max-width: 1550px) {
  .page-service-flow__wrapper .service-flow__wrapper::before {
    width: 5.16vw;
    height: 36vw;
    left: -5.29vw;
    top: 4.5vw;
  }
}
@media screen and (max-width: 768px) {
  .page-service-flow__wrapper .service-flow__wrapper::before {
    display: none;
  }
}
.page-service-flow__wrapper .service-flow__wrapper .page-service-flow__title {
  font-size: 36px;
}
@media screen and (max-width: 1550px) {
  .page-service-flow__wrapper .service-flow__wrapper .page-service-flow__title {
    font-size: clamp(26px, 2.3vw, 36px);
  }
}
@media screen and (max-width: 768px) {
  .page-service-flow__wrapper .service-flow__wrapper .page-service-flow__title {
    font-size: 5.33vw;
  }
}
@media screen and (max-width: 768px) {
  .page-service-flow__wrapper .service-flow__wrapper .page-service-flow__title::after {
    content: "";
    width: 89.33vw;
    height: 13.33vw;
    background-image: url(../images/text_process_02_sp.webp);
    position: absolute;
    left: -2vw;
    top: -4vw;
    background-repeat: no-repeat;
    background-size: contain;
  }
}
@media screen and (max-width: 768px) {
  .page-service-flow__wrapper .service-flow__wrapper .page-service-flow__title--two-lines::after {
    top: 0;
  }
}
@media screen and (max-width: 768px) {
  .page-service-flow__wrapper .service-flow__wrapper .page-service-flow__title--two-lines::before {
    bottom: unset;
    top: 0;
  }
}
.page-service-flow__wrapper .service-flow__wrapper .service-flow__inner {
  display: flex;
  flex-wrap: wrap;
  margin-top: 35px;
  gap: 37px;
}
@media screen and (max-width: 1550px) {
  .page-service-flow__wrapper .service-flow__wrapper .service-flow__inner {
    gap: 2.39vw;
    margin-top: 2.26vw;
  }
}
@media screen and (max-width: 768px) {
  .page-service-flow__wrapper .service-flow__wrapper .service-flow__inner {
    margin-top: 13.33vw;
    gap: 8.53vw;
    flex-direction: column;
  }
}
.page-service-flow__wrapper .service-flow__wrapper .service-flow__inner .service-flow__container {
  aspect-ratio: 400/500;
  width: 400px;
  height: 500px;
  border: 1px solid #295486;
  position: relative;
}
@media screen and (max-width: 1550px) {
  .page-service-flow__wrapper .service-flow__wrapper .service-flow__inner .service-flow__container {
    width: 25.8vw;
    height: 32.26vw;
  }
}
@media screen and (max-width: 768px) {
  .page-service-flow__wrapper .service-flow__wrapper .service-flow__inner .service-flow__container {
    width: 100%;
    height: 106vw;
  }
}
.page-service-flow__wrapper .service-flow__wrapper .service-flow__inner .service-flow__container .service-flow__img {
  width: 360px;
  margin: 11px auto 0 auto;
}
@media screen and (max-width: 1550px) {
  .page-service-flow__wrapper .service-flow__wrapper .service-flow__inner .service-flow__container .service-flow__img {
    width: 23.22vw;
    margin-top: 0.7vw;
  }
}
@media screen and (max-width: 768px) {
  .page-service-flow__wrapper .service-flow__wrapper .service-flow__inner .service-flow__container .service-flow__img {
    margin-top: 2.93vw;
    width: 80vw;
  }
}
.page-service-flow__wrapper .service-flow__wrapper .service-flow__inner .service-flow__container .service-flow__title-number {
  width: 102px;
  margin-top: 5px;
  margin-left: 20px;
  position: relative;
}
@media screen and (max-width: 1550px) {
  .page-service-flow__wrapper .service-flow__wrapper .service-flow__inner .service-flow__container .service-flow__title-number {
    width: 6.59vw;
    margin-top: 0.3vw;
    margin-left: 1.29vw;
  }
}
@media screen and (max-width: 768px) {
  .page-service-flow__wrapper .service-flow__wrapper .service-flow__inner .service-flow__container .service-flow__title-number {
    width: 18.4vw;
    margin-top: 1.33vw;
    margin-left: 4.8vw;
  }
}
.page-service-flow__wrapper .service-flow__wrapper .service-flow__inner .service-flow__container .service-flow__title-number .service-flow__title {
  font-size: 26px;
  color: #295486;
  font-weight: 500;
  position: absolute;
  width: 338px;
  left: 36px;
  bottom: -10px;
  line-height: 1em;
}
@media screen and (max-width: 1550px) {
  .page-service-flow__wrapper .service-flow__wrapper .service-flow__inner .service-flow__container .service-flow__title-number .service-flow__title {
    font-size: 1.67vw;
    width: 21.8vw;
    left: 2.32vw;
    bottom: -0.6vw;
  }
}
@media screen and (max-width: 768px) {
  .page-service-flow__wrapper .service-flow__wrapper .service-flow__inner .service-flow__container .service-flow__title-number .service-flow__title {
    font-size: 5.33vw;
    width: 76.26vw;
    left: 5.33vw;
    bottom: 0;
  }
}
.page-service-flow__wrapper .service-flow__wrapper .service-flow__inner .service-flow__container .service-flow__title-number .service-flow__title .service-flow__small-text {
  font-size: 18px;
}
@media screen and (max-width: 1550px) {
  .page-service-flow__wrapper .service-flow__wrapper .service-flow__inner .service-flow__container .service-flow__title-number .service-flow__title .service-flow__small-text {
    font-size: 1.16vw;
  }
}
@media screen and (max-width: 768px) {
  .page-service-flow__wrapper .service-flow__wrapper .service-flow__inner .service-flow__container .service-flow__title-number .service-flow__title .service-flow__small-text {
    font-size: 3.73vw;
  }
}
.page-service-flow__wrapper .service-flow__wrapper .service-flow__inner .service-flow__container .service-flow__title-number .service-flow__title .sp-only {
  display: none;
}
@media screen and (max-width: 768px) {
  .page-service-flow__wrapper .service-flow__wrapper .service-flow__inner .service-flow__container .service-flow__title-number .service-flow__title .sp-only {
    display: inline-block;
  }
}
@media screen and (max-width: 768px) {
  .page-service-flow__wrapper .service-flow__wrapper .service-flow__inner .service-flow__container .service-flow__title-number .service-title__two-lines {
    bottom: -2vw;
  }
}
@media screen and (max-width: 768px) {
  .page-service-flow__wrapper .service-flow__wrapper .service-flow__inner .service-flow__container .service-flow__title-number .service-title__two-lines .sp-only {
    display: inline-block;
  }
}
.page-service-flow__wrapper .service-flow__wrapper .service-flow__inner .service-flow__container .flow-number__01 {
  width: 90px;
}
@media screen and (max-width: 1550px) {
  .page-service-flow__wrapper .service-flow__wrapper .service-flow__inner .service-flow__container .flow-number__01 {
    width: 5.8vw;
  }
}
@media screen and (max-width: 768px) {
  .page-service-flow__wrapper .service-flow__wrapper .service-flow__inner .service-flow__container .flow-number__01 {
    width: 16.4vw;
  }
}
.page-service-flow__wrapper .service-flow__wrapper .service-flow__inner .service-flow__container .service-flow__text {
  font-size: 18px;
  width: 367px;
  margin: 20px auto 0 auto;
  line-height: 1.5em;
}
@media screen and (max-width: 1550px) {
  .page-service-flow__wrapper .service-flow__wrapper .service-flow__inner .service-flow__container .service-flow__text {
    width: 23.67vw;
    margin-top: 1.29vw;
    font-size: clamp(13px, 1.16vw, 18px);
  }
}
@media screen and (max-width: 768px) {
  .page-service-flow__wrapper .service-flow__wrapper .service-flow__inner .service-flow__container .service-flow__text {
    width: 80.8vw;
    margin-top: 2.13vw;
    font-size: 3.73vw;
  }
}
.page-service-flow__wrapper .service-flow__wrapper .service-flow__inner .service-flow__container:not(:last-child)::after {
  content: "";
  width: 28px;
  height: 34px;
  background-image: url(../images/icon_triangle_01_pc.webp);
  position: absolute;
  right: -34px;
  top: 50%;
  background-repeat: no-repeat;
  background-size: contain;
}
@media screen and (max-width: 1550px) {
  .page-service-flow__wrapper .service-flow__wrapper .service-flow__inner .service-flow__container:not(:last-child)::after {
    width: 1.8vw;
    height: 2.19vw;
    right: -2.19vw;
  }
}
@media screen and (max-width: 768px) {
  .page-service-flow__wrapper .service-flow__wrapper .service-flow__inner .service-flow__container:not(:last-child)::after {
    background-image: url(../images/icon_triangle_02_sp.webp);
    width: 6.93vw;
    height: 4vw;
    left: 48%;
    bottom: -6vw;
    top: unset;
  }
}
.page-service-flow__wrapper .service-flow__wrapper .service-aircon-flow__inner .service-flow__container {
  height: 620px;
}
@media screen and (max-width: 1550px) {
  .page-service-flow__wrapper .service-flow__wrapper .service-aircon-flow__inner .service-flow__container {
    height: 40vw;
  }
}
@media screen and (max-width: 1250px) {
  .page-service-flow__wrapper .service-flow__wrapper .service-aircon-flow__inner .service-flow__container {
    width: 38vw;
    height: 60vw;
  }
}
@media screen and (max-width: 768px) {
  .page-service-flow__wrapper .service-flow__wrapper .service-aircon-flow__inner .service-flow__container {
    height: 128vw;
    width: 100%;
  }
}
@media screen and (max-width: 1250px) {
  .page-service-flow__wrapper .service-flow__wrapper .service-aircon-flow__inner .service-flow__container .service-flow__img {
    width: 35vw;
  }
}
@media screen and (max-width: 768px) {
  .page-service-flow__wrapper .service-flow__wrapper .service-aircon-flow__inner .service-flow__container .service-flow__img {
    margin-top: 2.93vw;
    width: 80vw;
  }
}
@media screen and (max-width: 1250px) {
  .page-service-flow__wrapper .service-flow__wrapper .service-aircon-flow__inner .service-flow__container .service-flow__text {
    width: 35vw;
    font-size: clamp(14px, 1.5vw, 18px);
  }
}
@media screen and (max-width: 768px) {
  .page-service-flow__wrapper .service-flow__wrapper .service-aircon-flow__inner .service-flow__container .service-flow__text {
    width: 80.8vw;
    margin-top: 2.13vw;
    font-size: 3.73vw;
  }
}

.page-single-case__aircon .heading {
  background-image: url(../images/mv_case-aircon_01_pc.webp);
}
@media screen and (max-width: 768px) {
  .page-single-case__aircon .heading {
    background-image: url(../images/mv_case-aircon_02_sp.webp);
  }
}

.page-single-case__cleaning .heading {
  background-image: url(../images/mv_case-cleaning_01_pc.webp);
}
@media screen and (max-width: 768px) {
  .page-single-case__cleaning .heading {
    background-image: url(../images/mv_case-cleaning_02_sp.webp);
  }
}

.page-single-case__wrapper {
  max-width: 1200px;
  margin: 0 auto;
  margin-top: 50px;
}
@media screen and (max-width: 1250px) {
  .page-single-case__wrapper {
    padding-left: 5%;
    padding-right: 5%;
    margin-top: 5rem;
  }
}
@media screen and (max-width: 768px) {
  .page-single-case__wrapper {
    padding: 8vw 5.33vw 16vw 5.33vw;
    margin-top: 0;
  }
}
.page-single-case__wrapper .single-case__container {
  margin-bottom: 90px;
}
@media screen and (max-width: 1250px) {
  .page-single-case__wrapper .single-case__container {
    margin-bottom: 9rem;
  }
}
@media screen and (max-width: 768px) {
  .page-single-case__wrapper .single-case__container {
    margin-bottom: 4.8vw;
  }
}
.page-single-case__wrapper .single-case__container .single-case__heading {
  background-color: #295486;
  color: #ffffff;
  font-size: 28px;
  font-weight: 500;
  padding: 20px 25px;
  margin-top: 50px;
  line-height: 1.5em;
}
@media screen and (max-width: 1250px) {
  .page-single-case__wrapper .single-case__container .single-case__heading {
    font-size: clamp(20px, 2.24vw, 28px);
  }
}
@media screen and (max-width: 768px) {
  .page-single-case__wrapper .single-case__container .single-case__heading {
    font-size: 4.8vw;
    padding: 1.867vw 2.4vw;
    margin-top: 4.267vw;
    font-weight: 500;
  }
}
.page-single-case__wrapper .single-case__container .single-case__inner {
  display: flex;
  margin-top: 20px;
  justify-content: space-between;
}
@media screen and (max-width: 768px) {
  .page-single-case__wrapper .single-case__container .single-case__inner {
    flex-direction: column;
    margin-top: 2.67vw;
    justify-content: center;
  }
}
.page-single-case__wrapper .single-case__container .single-case__inner .single-case__img {
  width: 600px;
  height: 450px;
}
@media screen and (max-width: 1250px) {
  .page-single-case__wrapper .single-case__container .single-case__inner .single-case__img {
    width: 44vw;
    height: 33vw;
  }
}
@media screen and (max-width: 768px) {
  .page-single-case__wrapper .single-case__container .single-case__inner .single-case__img {
    width: 100%;
    height: 66.67vw;
  }
}
.page-single-case__wrapper .single-case__container .single-case__inner .single-case__img img {
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.page-single-case__wrapper .single-case__container .single-case__inner .single-case__details {
  width: 579px;
}
@media screen and (max-width: 1250px) {
  .page-single-case__wrapper .single-case__container .single-case__inner .single-case__details {
    width: 43vw;
  }
}
@media screen and (max-width: 768px) {
  .page-single-case__wrapper .single-case__container .single-case__inner .single-case__details {
    width: 100%;
  }
}
.page-single-case__wrapper .single-case__container .single-case__inner .single-case__details .single-case__cat {
  background-color: #295486;
  color: #ffffff;
  font-size: 16px;
  width: 90px;
  height: 26px;
  display: flex;
  align-items: center;
  letter-spacing: 0.64em;
  justify-content: center;
}
@media screen and (max-width: 768px) {
  .page-single-case__wrapper .single-case__container .single-case__inner .single-case__details .single-case__cat {
    font-size: 3.73vw;
    width: 21.33vw;
    height: 6.4vw;
    margin-top: 2.67vw;
  }
}
.page-single-case__wrapper .single-case__container .single-case__inner .single-case__details .single-case__cat::before {
  content: "";
  margin-left: 0.64em;
}
.page-single-case__wrapper .single-case__container .single-case__inner .single-case__details .single-case__text {
  font-size: 18px;
  line-height: 1.5em;
  margin-top: 25px;
}
@media screen and (max-width: 1250px) {
  .page-single-case__wrapper .single-case__container .single-case__inner .single-case__details .single-case__text {
    margin-top: 2vw;
  }
}
@media screen and (max-width: 768px) {
  .page-single-case__wrapper .single-case__container .single-case__inner .single-case__details .single-case__text {
    font-size: 3.73vw;
    margin-top: 1.6vw;
    min-height: 37.33vw;
  }
}

.single-case__before-after {
  padding: 5.21vw;
  background-image: url(../images/bg_single-case_01_pc.webp);
  background-repeat: no-repeat;
  background-size: cover;
  margin-top: 80px;
}
@media screen and (max-width: 1250px) {
  .single-case__before-after {
    padding: 10rem;
    margin-top: 8rem;
  }
}
@media screen and (max-width: 768px) {
  .single-case__before-after {
    padding: 6.4vw 5.33vw 17.86vw 5.33vw;
    margin-top: 0;
    background-image: url(../images/bg_single-case_02_sp.webp);
  }
}
.single-case__before-after .single-case__before-after-title {
  text-align: center;
  color: #ffffff;
  font-weight: 500;
  margin-bottom: 5.867vw;
  font-size: 4.8vw;
}
@media screen and (max-width: 768px) {
  .single-case__before-after .single-case__before-after-title::after {
    bottom: -10px;
  }
}
.single-case__before-after .before-after__outer {
  text-align: center;
  padding: 3.43vw 0 3.85vw 0;
  background-color: #ffffff;
}
@media screen and (max-width: 1250px) {
  .single-case__before-after .before-after__outer {
    padding: 1.25vw 3vw 2.76vw 3vw;
  }
}
@media screen and (max-width: 768px) {
  .single-case__before-after .before-after__outer {
    padding: 8.8vw 2.4vw 2.4vw 2.4vw;
  }
}
.single-case__before-after .before-after__outer .before-after__title {
  font-size: 36px;
  color: #295486;
  font-weight: 700;
  line-height: 1.5em;
}
@media screen and (max-width: 768px) {
  .single-case__before-after .before-after__outer .before-after__title {
    font-size: 4.267vw;
  }
}
.single-case__before-after .before-after__outer .before-after__inner {
  display: flex;
  gap: 10.31vw;
  max-width: 1200px;
  margin: 20px auto 0 auto;
  justify-content: center;
}
@media screen and (max-width: 1250px) {
  .single-case__before-after .before-after__outer .before-after__inner {
    gap: 0;
    justify-content: space-between;
  }
}
@media screen and (max-width: 768px) {
  .single-case__before-after .before-after__outer .before-after__inner {
    justify-content: center;
    align-items: center;
    margin-top: 0;
    gap: 3.467vw;
  }
}
.single-case__before-after .before-after__outer .before-after__inner .before-after__container {
  width: clamp(400px, 26.04vw, 500px);
  text-align: left;
  display: flex;
  flex-direction: column;
}
@media screen and (max-width: 1250px) {
  .single-case__before-after .before-after__outer .before-after__inner .before-after__container {
    width: 35vw;
  }
}
@media screen and (max-width: 768px) {
  .single-case__before-after .before-after__outer .before-after__inner .before-after__container {
    width: 40vw;
  }
}
.single-case__before-after .before-after__outer .before-after__inner .before-after__container .before-after__text-wrapper {
  min-height: clamp(58px, 3.65vw, 72px);
  display: flex;
  align-items: flex-end;
}
@media screen and (max-width: 768px) {
  .single-case__before-after .before-after__outer .before-after__inner .before-after__container .before-after__text-wrapper {
    min-height: auto;
  }
}
.single-case__before-after .before-after__outer .before-after__inner .before-after__container .before-after__text-wrapper .before__text {
  font-size: 26px;
  font-weight: 700;
  margin-top: 20px;
  line-height: 1.5em;
}
@media screen and (max-width: 1250px) {
  .single-case__before-after .before-after__outer .before-after__inner .before-after__container .before-after__text-wrapper .before__text {
    font-size: clamp(16px, 2.08vw, 26px);
    margin-top: clamp(6px, 1vw, 20px);
  }
}
@media screen and (max-width: 768px) {
  .single-case__before-after .before-after__outer .before-after__inner .before-after__container .before-after__text-wrapper .before__text {
    font-size: 5.33vw;
    font-weight: 500;
    margin-top: 0;
  }
}
.single-case__before-after .before-after__outer .before-after__inner .before-after__container .before-after__text-wrapper .after__text {
  font-size: 48px;
  font-weight: 700;
  color: #FD7E00;
  margin-top: -12px;
  position: relative;
  line-height: 1.5em;
}
@media screen and (max-width: 1250px) {
  .single-case__before-after .before-after__outer .before-after__inner .before-after__container .before-after__text-wrapper .after__text {
    font-size: clamp(30px, 3.84vw, 48px);
  }
}
@media screen and (max-width: 768px) {
  .single-case__before-after .before-after__outer .before-after__inner .before-after__container .before-after__text-wrapper .after__text {
    font-size: 5.33vw;
    margin-top: 0;
  }
}
.single-case__before-after .before-after__outer .before-after__inner .before-after__container .before-after__text-wrapper .after__text::before {
  content: "";
  position: absolute;
  background-image: url(../images/icon_focus_01_pc.webp);
  width: 54px;
  height: 38px;
  background-repeat: no-repeat;
  background-size: contain;
  left: 90px;
  top: -7px;
}
@media screen and (max-width: 1250px) {
  .single-case__before-after .before-after__outer .before-after__inner .before-after__container .before-after__text-wrapper .after__text::before {
    left: 7vw;
  }
}
@media screen and (max-width: 768px) {
  .single-case__before-after .before-after__outer .before-after__inner .before-after__container .before-after__text-wrapper .after__text::before {
    width: 6.67vw;
    height: 6.4vw;
    left: 10vw;
    top: -1vw;
  }
}
.single-case__before-after .before-after__outer .before-after__inner .before-after__container .before-after__img {
  width: 100%;
  height: auto;
}
.single-case__before-after .before-after__outer .before-after__inner .before-after__container .before-after__description {
  font-size: 18px;
  line-height: 1.5em;
}
@media screen and (max-width: 1250px) {
  .single-case__before-after .before-after__outer .before-after__inner .before-after__container .before-after__description {
    font-size: clamp(16px, 1.44vw, 18px);
  }
}
@media screen and (max-width: 768px) {
  .single-case__before-after .before-after__outer .before-after__inner .before-after__container .before-after__description {
    font-size: 3.73vw;
    min-height: 26vw;
    line-height: 1.4em;
  }
}
.single-case__before-after .before-after__outer .before-after__inner .after__container {
  position: relative;
}
.single-case__before-after .before-after__outer .before-after__inner .after__container::before {
  content: "";
  position: absolute;
  background-image: url(../images/icon_arrow_13_pc.webp);
  width: 11.4vw;
  height: 6.71vw;
  background-repeat: no-repeat;
  background-size: contain;
  left: clamp(-100px, -20%, -70px);
  transform: translateX(-50%);
  top: 40%;
}
@media screen and (max-width: 1250px) {
  .single-case__before-after .before-after__outer .before-after__inner .after__container::before {
    left: -20%;
  }
}
@media screen and (max-width: 768px) {
  .single-case__before-after .before-after__outer .before-after__inner .after__container::before {
    top: 1.3vw;
    width: 9.6vw;
    height: 5.6vw;
    left: -5vw;
  }
}

.page-404 .breadcrumb {
  margin-top: 60px;
}
@media screen and (max-width: 768px) {
  .page-404 .breadcrumb {
    margin-top: 10vw;
  }
}

.page-404__wrapper {
  padding: 30px 0 80px 0;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .page-404__wrapper {
    padding: 1.3vw 4vw 16vw 4vw;
  }
}
.page-404__wrapper .page-404__img {
  width: 653px;
  margin: 0 auto;
}
@media screen and (max-width: 768px) {
  .page-404__wrapper .page-404__img {
    width: 78.4vw;
  }
}
.page-404__wrapper .page-404__text-large {
  font-size: 36px;
  font-weight: 700;
  color: #295486;
  margin-top: -27px;
}
@media screen and (max-width: 768px) {
  .page-404__wrapper .page-404__text-large {
    font-size: 4.8vw;
    margin-top: 1.44vw;
  }
}
.page-404__wrapper .page-404__text-small {
  font-size: 18px;
  margin-top: 23px;
  line-height: 1.5em;
  margin-bottom: 74px;
}
@media screen and (max-width: 768px) {
  .page-404__wrapper .page-404__text-small {
    font-size: 3.73vw;
    margin-top: 5.33vw;
    margin-bottom: 15.2vw;
  }
}

.section-title__type1 {
  font-size: 36px;
  color: #295486;
  font-weight: 700;
  position: relative;
  z-index: 5;
}
@media screen and (max-width: 768px) {
  .section-title__type1 {
    font-size: clamp(20px, 2rem, 30px);
  }
}
.section-title__type1::after {
  content: "";
  position: absolute;
  bottom: -15px;
  left: 50%;
  transform: translateX(-50%);
  width: 90px;
  height: 2px;
  background-color: #F7931E;
}
@media screen and (max-width: 768px) {
  .section-title__type1::after {
    width: 16vw;
  }
}

.section-title__type2 {
  font-size: 36px;
  color: #295486;
  font-weight: 700;
  position: relative;
  z-index: 5;
  margin-left: 25px;
}
@media screen and (max-width: 768px) {
  .section-title__type2 {
    font-size: 5.3vw;
    margin-left: 2.67vw;
  }
}
.section-title__type2::before {
  content: "";
  position: absolute;
  bottom: 0;
  left: -24px;
  width: 2px;
  height: 39px;
  background-color: #FF6200;
}
@media screen and (max-width: 768px) {
  .section-title__type2::before {
    height: 6.4vw;
    width: 1px;
    left: -2.4vw;
  }
}

.heading {
  aspect-ratio: 1920/627;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}
@media screen and (max-width: 768px) {
  .heading {
    aspect-ratio: 375/250;
  }
}
.heading .page__sub-title {
  font-size: 30px;
  color: #ffffff;
}
@media screen and (max-width: 1250px) {
  .heading .page__sub-title {
    font-size: clamp(24px, 3rem, 30px);
  }
}
@media screen and (max-width: 768px) {
  .heading .page__sub-title {
    font-size: 3.73vw;
  }
}
.heading .page__title {
  font-size: 60px;
  color: #ffffff;
}
@media screen and (max-width: 1250px) {
  .heading .page__title {
    font-size: clamp(50px, 6rem, 60px);
  }
}
@media screen and (max-width: 768px) {
  .heading .page__title {
    font-size: 4.8vw;
    margin-bottom: -14.67vw;
  }
}

.blue-button {
  font-size: 22px;
  color: #ffffff;
  background: linear-gradient(to bottom, #7E8FC7 0%, #384980 100%);
  border: 1px solid #295486;
  box-sizing: border-box;
  border-radius: 40px;
  cursor: pointer;
  width: 300px;
  height: 60px;
  display: flex;
  align-items: center;
  margin: 0 auto;
  justify-content: center;
  position: relative;
}
@media screen and (max-width: 768px) {
  .blue-button {
    font-size: clamp(16px, 1.6rem, 18px);
    width: 66.7vw;
    height: 13.33vw;
  }
}
.blue-button::after {
  content: "";
  background-image: url(../images/icon_arrow_03_pc.webp);
  background-size: contain;
  background-repeat: no-repeat;
  width: 40px;
  height: 13px;
  right: 19px;
  position: absolute;
}
@media screen and (max-width: 768px) {
  .blue-button::after {
    width: clamp(24px, 2.4rem, 28px);
    height: clamp(8px, 0.8rem, 12px);
  }
}
.blue-button:hover::after {
  background-image: url(../images/icon_arrow_03_pc.webp);
}
.blue-button:hover {
  background: linear-gradient(to bottom, #BAC3E0 0%, #7E8FC7 100%);
  color: #ffffff;
}

.white-button {
  font-size: 22px;
  color: #295486;
  border: 1px solid #295486;
  box-sizing: border-box;
  border-radius: 40px;
  cursor: pointer;
  width: 300px;
  height: 60px;
  display: flex;
  align-items: center;
  margin: 0 auto;
  justify-content: center;
  position: relative;
}
@media screen and (max-width: 768px) {
  .white-button {
    font-size: 4.267vw;
    width: 66.7vw;
    height: 13.33vw;
    border-radius: 90px;
  }
}
.white-button::after {
  content: "";
  background-image: url(../images/icon_arrow_04_pc.webp);
  background-size: contain;
  background-repeat: no-repeat;
  width: 40px;
  height: 13px;
  right: 19px;
  position: absolute;
}
@media screen and (max-width: 768px) {
  .white-button::after {
    width: 6.4vw;
    height: 2.13vw;
    right: 2.4vw;
  }
}
.white-button:hover::after {
  background-image: url(../images/icon_arrow_03_pc.webp);
}
.white-button:hover {
  background: linear-gradient(to bottom, #BAC3E0 0%, #7E8FC7 100%);
  color: #ffffff;
}

.mv__cta {
  text-align: center;
  margin-top: 14.13vw;
}
@media screen and (max-width: 768px) {
  .mv__cta .mv__cta-copy {
    font-size: 4.267vw;
    color: #295486;
    text-shadow: 1px 1px 1px #fff;
    margin-bottom: 5px;
    font-weight: 700;
  }
}
.mv__cta .mv__cta-button {
  background-color: #FD7E00;
  font-size: 36px;
  color: #ffffff;
  width: 720px;
  height: 120px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 auto;
  font-weight: 700;
  border-radius: 5px;
}
.mv__cta .mv__cta-button:hover {
  background-color: #FFC489;
}
@media screen and (max-width: 768px) {
  .mv__cta .mv__cta-button {
    width: 89.33vw;
    height: 19.47vw;
    font-size: 5.3vw;
  }
}
.mv__cta .mv__cta-button::before {
  content: "";
  background-image: url(../images/icon_email_02_pc.webp);
  background-size: contain;
  background-repeat: no-repeat;
  width: 59px;
  height: 37px;
  display: inline-block;
  margin-top: 5px;
}
@media screen and (max-width: 768px) {
  .mv__cta .mv__cta-button::before {
    width: 8.2vw;
    height: 5vw;
  }
}

.hamburger__cta-copy {
  color: #ffffff;
  font-size: 4.267vw;
  margin-bottom: 5px;
  font-weight: 700;
}

.cta-button__wrapper {
  text-align: center;
}
.cta-button__wrapper .cta-copy {
  color: #295486;
  font-size: 26px;
  margin-bottom: 12px;
  font-weight: 700;
}
@media screen and (max-width: 768px) {
  .cta-button__wrapper .cta-copy {
    font-size: 4.267vw;
    margin-bottom: 1.86vw;
  }
}

.cta-button {
  background-color: #FD7E00;
  font-size: 36px;
  color: #ffffff;
  width: 720px;
  height: 120px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 auto;
  border-radius: 5px;
  font-weight: bold;
}
@media screen and (max-width: 768px) {
  .cta-button {
    width: 89.33vw;
    height: 19.47vw;
    font-size: 5.3vw;
  }
}
.cta-button::before {
  content: "";
  background-image: url(../images/icon_email_02_pc.webp);
  background-size: contain;
  background-repeat: no-repeat;
  width: 59px;
  height: 37px;
  display: inline-block;
  margin-top: 5px;
}
@media screen and (max-width: 768px) {
  .cta-button::before {
    width: 8.2vw;
    height: 5vw;
  }
}
.cta-button:hover {
  background-color: #FFC489;
}

.page-404__top-button {
  font-size: 22px;
  color: #ffffff;
  background-color: #295486;
  box-sizing: border-box;
  border-radius: 40px;
  cursor: pointer;
  width: 300px;
  height: 60px;
  display: flex;
  align-items: center;
  margin: 0 auto;
  justify-content: center;
  position: relative;
}
.page-404__top-button:hover {
  background: linear-gradient(to bottom, #BAC3E0 0%, #7E8FC7 100%);
  color: #ffffff;
  border: 1px solid #295486;
}
@media screen and (max-width: 768px) {
  .page-404__top-button {
    font-size: 4.8vw;
    width: 66.67vw;
    height: 13.3vw;
  }
}

.pagination {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 52px;
}
@media screen and (max-width: 768px) {
  .pagination {
    gap: 5.33vw;
  }
}
.pagination .pagination__item {
  flex-wrap: wrap;
  font-size: 36px;
  color: rgba(41, 84, 134, 0.3);
  font-family: "Noto Sans JP", sans-serif;
}
@media screen and (max-width: 768px) {
  .pagination .pagination__item {
    font-size: 4.2vw;
  }
}
.pagination .pagination__item .pagination__link {
  display: flex;
  justify-content: center;
  align-items: center;
}
.pagination .pagination__item .pagination__link img {
  width: 29px;
  opacity: 0.3;
  margin-top: 2px;
}
@media screen and (max-width: 768px) {
  .pagination .pagination__item .pagination__link img {
    width: 4vw;
  }
}
.pagination .pagination__item .pagination__link img:hover {
  opacity: 1;
}
.pagination .pagination__item.active {
  pointer-events: none;
  color: #295486;
  border-bottom: 1px solid #295486;
}
.pagination .pagination__item.current {
  border-bottom: 1px solid #295486;
  color: #295486;
}/*# sourceMappingURL=style.css.map */