@charset "UTF-8";
/* resset.dev • v5.0.2 */
/* # =================================================================
   # Global selectors
   # ================================================================= */
html {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  -webkit-text-size-adjust: 100%;
  /* Prevent adjustments of font size after orientation changes in iOS */
  word-break: normal;
  -moz-tab-size: 4;
  -o-tab-size: 4;
     tab-size: 4;
}

*,
::before,
::after {
  background-repeat: no-repeat;
  /* Set `background-repeat: no-repeat` to all elements and pseudo elements */
  -webkit-box-sizing: inherit;
          box-sizing: inherit;
}

::before,
::after {
  text-decoration: inherit;
  /* Inherit text-decoration and vertical align to ::before and ::after pseudo elements */
  vertical-align: inherit;
}

* {
  padding: 0;
  /* Reset `padding` and `margin` of all elements */
  margin: 0;
}

/* # =================================================================
   # General elements
   # ================================================================= */
hr {
  overflow: visible;
  /* Show the overflow in Edge and IE */
  height: 0;
  /* Add the correct box sizing in Firefox */
  color: inherit;
  /* Correct border color in Firefox. */
}

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

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

small {
  font-size: 80%;
  /* Set font-size to 80% in `small` elements */
}

[hidden] {
  display: none;
  /* Add the correct display in IE */
}

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

a {
  background-color: transparent;
  /* Remove the gray background on active links in IE 10 */
}

a:active,
a:hover {
  outline-width: 0;
  /* Remove the outline when hovering in all browsers */
}

code,
kbd,
pre,
samp {
  font-family: monospace, monospace;
  /* Specify the font family of code elements */
}

pre {
  font-size: 1em;
  /* Correct the odd `em` font sizing in all browsers */
}

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

/* https://gist.github.com/unruthless/413930 */
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

table {
  border-color: inherit;
  /* Correct border color in all Chrome, Edge, and Safari. */
  text-indent: 0;
  /* Remove text indentation in Chrome, Edge, and Safari */
}

iframe {
  border-style: none;
}

/* # =================================================================
   # Forms
   # ================================================================= */
input {
  border-radius: 0;
}

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

[type=search] {
  -webkit-appearance: textfield;
  /* Correct the odd appearance in Chrome and Safari */
  outline-offset: -2px;
  /* Correct the outline style in Safari */
}

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

textarea {
  overflow: auto;
  /* Internet Explorer 11+ */
  resize: vertical;
  /* Specify textarea resizability */
}

button,
input,
optgroup,
select,
textarea {
  font: inherit;
  /* Specify font inheritance of form elements */
}

optgroup {
  font-weight: bold;
  /* Restore the font weight unset by the previous rule */
}

button {
  overflow: visible;
  /* Address `overflow` set to `hidden` in IE 8/9/10/11 */
}

button,
select {
  text-transform: none;
  /* Firefox 40+, Internet Explorer 11- */
}

/* Apply cursor pointer to button elements */
button,
[type=button],
[type=reset],
[type=submit],
[role=button] {
  cursor: pointer;
}

/* Remove inner padding and border in Firefox 4+ */
button::-moz-focus-inner,
[type=button]::-moz-focus-inner,
[type=reset]::-moz-focus-inner,
[type=submit]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

/* Replace focus style removed in the border reset above */
button:-moz-focusring,
[type=button]::-moz-focus-inner,
[type=reset]::-moz-focus-inner,
[type=submit]::-moz-focus-inner {
  outline: 1px dotted ButtonText;
}

button,
html [type=button],
[type=reset],
[type=submit] {
  -webkit-appearance: button;
  /* Correct the inability to style clickable types in iOS */
}

/* Remove the default button styling in all browsers */
button,
input,
select,
textarea {
  background-color: transparent;
  border-style: none;
}

a:focus,
button:focus,
input:focus,
select:focus,
textarea:focus {
  outline-width: 0;
}

/* Style select like a standard input */
select {
  -moz-appearance: none;
  /* Firefox 36+ */
  -webkit-appearance: none;
  /* Chrome 41+ */
}

select::-ms-expand {
  display: none;
  /* Internet Explorer 11+ */
}

select::-ms-value {
  color: currentColor;
  /* Internet Explorer 11+ */
}

legend {
  border: 0;
  /* Correct `color` not being inherited in IE 8/9/10/11 */
  color: inherit;
  /* Correct the color inheritance from `fieldset` elements in IE */
  display: table;
  /* Correct the text wrapping in Edge and IE */
  max-width: 100%;
  /* Correct the text wrapping in Edge and IE */
  white-space: normal;
  /* Correct the text wrapping in Edge and IE */
  max-width: 100%;
  /* Correct the text wrapping in Edge 18- and IE */
}

::-webkit-file-upload-button {
  /* Correct the inability to style clickable types in iOS and Safari */
  -webkit-appearance: button;
  color: inherit;
  font: inherit;
  /* Change font properties to `inherit` in Chrome and Safari */
}

/* Replace pointer cursor in disabled elements */
[disabled] {
  cursor: default;
}

/* # =================================================================
   # Specify media element style
   # ================================================================= */
img {
  border-style: none;
  /* Remove border when inside `a` element in IE 8/9/10 */
}

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

/* # =================================================================
   # Accessibility
   # ================================================================= */
/* Specify the progress cursor of updating elements */
[aria-busy=true] {
  cursor: progress;
}

/* Specify the pointer cursor of trigger elements */
[aria-controls] {
  cursor: pointer;
}

/* Specify the unstyled cursor of disabled, not-editable, or otherwise inoperable elements */
[aria-disabled=true] {
  cursor: default;
}

* {
  color: #1a1a1a;
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-size: 1.6rem;
  font-weight: 400;
  text-align: justify;
  text-box: trim-both cap alphabetic;
  line-height: 1.5;
  letter-spacing: 0.02em;
}

html {
  font-size: 56.5%;
  line-height: 1.5;
  overflow-x: hidden;
  scroll-behavior: smooth;
}
@media print, screen and (min-width: 1024px) {
  html {
    font-size: 62.5%;
  }
}

body {
  font-size: 1.6rem;
  overflow-x: hidden;
}

li {
  list-style: none;
}

a {
  display: block;
  width: 100%;
  color: inherit;
  font-size: inherit;
  font-weight: inherit;
  text-decoration: none;
  -webkit-transition: 0.5s;
  transition: 0.5s;
}
a *, a::before, a::after {
  -webkit-transition: 0.5s;
  transition: 0.5s;
}
@media print, screen and (min-width: 768px) {
  a[href^="tel:"] {
    pointer-events: none;
  }
}
a.notLink {
  pointer-events: none;
}

address {
  font-style: normal;
}

span {
  color: inherit;
  font-size: inherit;
  font-weight: inherit;
  text-align: inherit;
  line-height: inherit;
}

img,
iframe {
  display: block;
  width: 100%;
  max-width: -webkit-max-content;
  max-width: -moz-max-content;
  max-width: max-content;
  height: auto;
}

@media print, screen and (min-width: 480px) {
  br.under480 {
    display: none;
  }
}
@media print, screen and (min-width: 768px) {
  br.under768 {
    display: none;
  }
}
br.over768 {
  display: none;
}
@media print, screen and (min-width: 768px) {
  br.over768 {
    display: block;
  }
}
br.over1280 {
  display: none;
}
@media print, screen and (min-width: 1280px) {
  br.over1280 {
    display: block;
  }
}

.container {
  width: 100%;
  max-width: 1920px;
  margin: auto;
  overflow-x: hidden;
  -webkit-animation: fade 0.5s forwards;
          animation: fade 0.5s forwards;
}

.inner {
  width: 90%;
  margin: auto;
}
.inner.max1000 {
  max-width: 1000px;
}
.inner.max1200 {
  max-width: 1200px;
}
.inner.max1400 {
  max-width: 1400px;
}

@media print, screen and (min-width: 1024px) {
  .bold {
    font-weight: bold;
  }
}

.section_title {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0 min(3vw, 1.5rem);
}
.section_title::before {
  content: "";
  display: block;
  width: min(12vw, 6rem);
  aspect-ratio: 1/1;
  -webkit-mask: url(../img/icon_section_title.svg) center/contain no-repeat;
          mask: url(../img/icon_section_title.svg) center/contain no-repeat;
}
.section_title header {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: min(3vw, 1.5rem) 0;
}
.section_title header h2,
.section_title header span {
  color: inherit;
}
.section_title header span {
  font-family: "acumin-variable", sans-serif;
  font-size: min(7vw, 3.5rem);
}
.section_title.reverse header {
  -webkit-box-orient: vertical;
  -webkit-box-direction: reverse;
      -ms-flex-direction: column-reverse;
          flex-direction: column-reverse;
}
.section_title.reverse header h2 {
  font-size: min(7vw, 3.5rem);
  font-weight: bold;
}
.section_title.reverse header span {
  font-size: 1.5rem;
  font-weight: 300;
  -webkit-transform: scaleX(1.15);
          transform: scaleX(1.15);
  -webkit-transform-origin: left;
          transform-origin: left;
}
.section_title.black::before {
  background-color: #1a2884;
}
.section_title.black header {
  color: #1a1a1a;
}
.section_title.white::before {
  background-color: #fff;
}
.section_title.white header {
  color: #fff;
}

p.section_info {
  margin: clamp(3rem, 4vw, 6.4rem) auto 0;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  font-size: 1.8rem;
}
@media print, screen and (min-width: 1024px) {
  p.section_info {
    text-align: center;
  }
}

section.page_top {
  position: relative;
  padding-top: clamp(4rem, 5vw, 8rem);
}
section.page_top::after {
  content: "";
  width: 66vw;
  aspect-ratio: 1267/889;
  background: url(../img/ripple_bg.webp) center/contain no-repeat;
  position: absolute;
  top: calc(100% - 1.5em);
  left: -7vw;
  z-index: -1;
}
section.page_top header.page_title {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 1.5rem 0;
}
section.page_top header.page_title h1 {
  font-weight: 500;
}
section.page_top header.page_title span {
  color: #666;
  font-size: min(8vw, 4.3rem);
  font-weight: bold;
}
section.page_top nav.breadcrumb {
  display: none;
}
@media print, screen and (min-width: 768px) {
  section.page_top nav.breadcrumb {
    margin-top: 5rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
}
section.page_top nav.breadcrumb ol {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0 1em;
}
section.page_top nav.breadcrumb ol li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0 1em;
}
section.page_top nav.breadcrumb ol li:not(:last-of-type)::after {
  content: ">";
  position: relative;
  top: -0.1em;
}
section.page_top nav.breadcrumb ol li a {
  display: inline-block;
}
section.page_top nav.breadcrumb ol li a[href*="#"] {
  pointer-events: none;
}
section.page_top nav.breadcrumb ol li a:hover {
  opacity: 0.5;
}

.anchor_list ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 2rem 0;
}
.anchor_list ul li {
  border-left: 0.1rem solid #1a1a1a;
}
.anchor_list ul li:last-of-type {
  border-right: 0.1rem solid #1a1a1a !important;
}
.anchor_list ul li a {
  position: relative;
  color: #1a1a1a;
  font-weight: bold;
  text-align: center;
}
.anchor_list ul li a::after {
  content: "";
  width: 0.5em;
  aspect-ratio: 1/1;
  border-right: 2px solid #1a1a1a;
  border-bottom: 2px solid #1a1a1a;
  position: absolute;
  top: 50%;
  right: 8%;
  -webkit-transform: translate(0, -50%) rotate(45deg);
          transform: translate(0, -50%) rotate(45deg);
}
@media print, screen and (min-width: 1024px) {
  .anchor_list ul li a::after {
    content: none;
  }
}
.anchor_list ul li a:hover {
  color: #fe654f;
}
.anchor_list.company ul li {
  width: 50%;
}
@media print, screen and (min-width: 768px) {
  .anchor_list.company ul li {
    width: 25%;
  }
}
.anchor_list.company ul li:nth-of-type(even) {
  border-right: 0.1rem solid #1a1a1a;
}
@media print, screen and (min-width: 768px) {
  .anchor_list.company ul li:nth-of-type(even) {
    border-right: none;
  }
}

header.page_section_title {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 1rem 0;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin: auto;
  padding: 0 1em 1.5em;
}
header.page_section_title::after {
  content: "";
  width: 100%;
  height: 0.15rem;
  background: -webkit-gradient(linear, left top, right top, color-stop(85%, #1a2884), to(#de1616));
  background: linear-gradient(to right, #1a2884 85%, #de1616);
  position: absolute;
  left: 0;
  bottom: 0;
}
header.page_section_title h2 {
  font-size: 2.2rem;
  font-weight: bold;
}
header.page_section_title span {
  color: #1a2884;
  font-family: "acumin-variable", sans-serif;
  font-size: 1.5rem;
  font-weight: 300;
  -webkit-transform: scaleX(1.15);
          transform: scaleX(1.15);
}

.btn {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin: 0 auto;
}
.btn a {
  position: relative;
  width: 26.2rem;
  aspect-ratio: 262/50;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  border-radius: 0.6rem;
  border: 0.1rem solid #1a1a1a;
  background-color: #1a1a1a;
}
.btn a::after {
  content: "→";
  width: 5.5rem;
  height: 100%;
  color: #fff;
  display: grid;
  place-items: center;
  border-left: 0.1rem solid #fff;
}
.btn a span {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  color: #fff;
  text-align: center;
}
.btn a:hover {
  color: #1a1a1a;
  background-color: #fff;
}
.btn a:hover::after {
  color: #1a1a1a;
  border-color: #1a1a1a;
}
.btn a:hover span {
  color: #1a1a1a;
}

#header {
  position: fixed;
  top: 0;
  left: 50%;
  -webkit-transform: translate(-50%, 0);
          transform: translate(-50%, 0);
  z-index: 9999999999;
  width: 100%;
  max-width: 1920px;
  background-color: #fff;
}
#header .header_inner {
  height: 8.5rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 0 1.5rem;
}
#header h1.logo,
#header p.logo {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}
#header h1.logo a,
#header p.logo a {
  display: grid;
  place-items: center;
}
#header h1.logo a:hover,
#header p.logo a:hover {
  opacity: 0.5;
}
#header h1.logo a img,
#header p.logo a img {
  width: 25rem;
  max-width: none;
}
@media print, screen and (min-width: 1024px) {
  #header h1.logo a img,
  #header p.logo a img {
    width: min(20vw, 25rem);
  }
}
#header .area_right {
  -ms-flex-item-align: stretch;
      align-self: stretch;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
#header nav.pc_menu {
  display: none;
}
@media print, screen and (min-width: 1024px) {
  #header nav.pc_menu {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 0 2rem;
  }
}
#header nav.pc_menu ul li * {
  font-size: min(1.2vw, 1.6rem);
  text-box: unset;
}
@media print, screen and (min-width: 1400px) {
  #header nav.pc_menu ul li * {
    font-size: min(0.85vw, 1.6rem);
  }
}
#header nav.pc_menu ul li a:hover {
  opacity: 0.5;
}
#header nav.pc_menu ul.main_link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
#header nav.pc_menu ul.main_link li:not(:last-of-type) {
  border-right: 0.1rem solid #1a1a1a;
}
#header nav.pc_menu ul.main_link li a {
  font-weight: bold;
  text-align: center;
  padding: 0 2rem;
}
#header nav.pc_menu ul.main_link li a span {
  display: block;
  font-weight: 500;
}
@media print, screen and (min-width: 1400px) {
  #header nav.pc_menu ul.main_link li a span {
    display: inline-block;
    margin-right: 0.5em;
  }
}
#header nav.pc_menu ul.external_link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0 2rem;
}
#header nav.pc_menu ul.external_link li {
  -ms-flex-item-align: stretch;
      align-self: stretch;
}
#header nav.pc_menu ul.external_link li a {
  height: 100%;
  border: 0.1rem solid;
  border-radius: 1rem;
  padding: 0.5em;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 1rem;
}
@media print, screen and (min-width: 1400px) {
  #header nav.pc_menu ul.external_link li a {
    padding: 0.5em min(1.25vw, 2.5rem);
  }
}
#header nav.pc_menu ul.external_link li a::before, #header nav.pc_menu ul.external_link li a::after {
  content: "";
  -webkit-mask: center/contain no-repeat;
          mask: center/contain no-repeat;
}
#header nav.pc_menu ul.external_link li a::after {
  width: 0.8em;
  aspect-ratio: 1/1;
  -webkit-mask-image: url(../img/icon_window.svg);
          mask-image: url(../img/icon_window.svg);
  background-color: #1a1a1a;
  position: relative;
  top: -0.1em;
}
#header nav.pc_menu ul.external_link li a div {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media print, screen and (min-width: 1400px) {
  #header nav.pc_menu ul.external_link li a div {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    gap: 0 1em;
  }
}
#header nav.pc_menu ul.external_link li a span {
  font-weight: bold;
}
#header nav.pc_menu ul.external_link li a.link01 {
  border-color: #42dcd1;
}
#header nav.pc_menu ul.external_link li a.link01::before {
  width: 2.8rem;
  aspect-ratio: 28/29;
  -webkit-mask-image: url(../img/icon_building.svg);
          mask-image: url(../img/icon_building.svg);
  background-color: #42dcd1;
}
#header nav.pc_menu ul.external_link li a.link01 span {
  color: #42dcd1;
}
#header nav.pc_menu ul.external_link li a.link02 {
  border-color: #ebe176;
}
#header nav.pc_menu ul.external_link li a.link02::before {
  width: 2.4rem;
  aspect-ratio: 1/1;
  -webkit-mask-image: url(../img/icon_persona.svg);
          mask-image: url(../img/icon_persona.svg);
  background-color: #ebe176;
}
#header nav.pc_menu ul.external_link li a.link02 span {
  color: #ebe176;
}
#header nav.pc_menu ul.contact_link {
  -ms-flex-item-align: stretch;
      align-self: stretch;
}
#header nav.pc_menu ul.contact_link li {
  height: 100%;
}
#header nav.pc_menu ul.contact_link li a {
  height: 100%;
  color: #fff;
  text-align: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  background-color: #de1616;
  border: 0.1rem solid #de1616;
  border-radius: 1rem;
  padding: 0.5em;
}
@media print, screen and (min-width: 1600px) {
  #header nav.pc_menu ul.contact_link li a {
    padding: 0.5em min(3vw, 6rem);
  }
}
@media print, screen and (min-width: 1400px) {
  #header nav.pc_menu ul.contact_link li a br {
    display: none;
  }
}
#header .menu_toggle {
  position: relative;
  margin-left: min(4vw, 2rem);
  width: 4rem;
  height: 100%;
  padding: 0 min(3vw, 2rem);
}
@media print, screen and (min-width: 1024px) {
  #header .menu_toggle {
    display: none;
  }
}
#header .menu_toggle span {
  display: inline-block;
  width: 4rem;
  height: 2px;
  background-color: #1a2884;
  border-radius: 9999px;
  position: absolute;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  -webkit-transition: 0.5s;
  transition: 0.5s;
}
#header .menu_toggle span:nth-of-type(1) {
  top: 50%;
}
#header .menu_toggle span:nth-of-type(2) {
  top: calc(50% - 1rem);
}
#header .menu_toggle span:nth-of-type(3) {
  top: calc(50% + 1rem);
}
#header .menu_toggle.active span:nth-of-type(1) {
  opacity: 0;
}
#header .menu_toggle.active span:nth-of-type(2) {
  top: 50%;
  -webkit-transform: translate(-50%, -50%) rotate(45deg);
          transform: translate(-50%, -50%) rotate(45deg);
}
#header .menu_toggle.active span:nth-of-type(3) {
  top: 50%;
  -webkit-transform: translate(-50%, -50%) rotate(-45deg);
          transform: translate(-50%, -50%) rotate(-45deg);
}
#header .overlay {
  position: absolute;
  left: 0;
  width: 100%;
  background-color: #1a2884;
  -webkit-transform: translateX(100vw);
          transform: translateX(100vw);
  opacity: 0;
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
  overflow-y: scroll;
}
#header .overlay.active {
  -webkit-transform: translateX(0);
          transform: translateX(0);
  opacity: 1;
}
#header nav.sp_menu {
  padding: clamp(4rem, 8vw, 8rem);
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin: auto;
}
#header nav.sp_menu * {
  color: #fff;
  text-box: unset;
}
#header nav.sp_menu ul.main_link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 2rem;
}
#header nav.sp_menu ul.main_link > li > a {
  display: inline-block;
  font-size: 1.8rem;
  font-weight: bold;
}
#header nav.sp_menu ul.main_link > li > a[target=_blank] {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0 0.5rem;
}
#header nav.sp_menu ul.main_link > li > a[target=_blank]::after {
  content: "";
  width: 0.8em;
  aspect-ratio: 1/1;
  -webkit-mask: url(../img/icon_window.svg) center/contain no-repeat;
          mask: url(../img/icon_window.svg) center/contain no-repeat;
  background-color: #fff;
  position: relative;
  top: -0.1rem;
}
#header nav.sp_menu ul.main_link > li > a.link01 span {
  color: #42dcd1;
}
#header nav.sp_menu ul.main_link > li > a.link02 span {
  color: #ebe176;
}
#header nav.sp_menu ul.sub_link:not(:first-of-type) {
  margin-top: 2rem;
}
#header nav.sp_menu ul.sub_link > li {
  margin-top: 0.5em;
}
#header nav.sp_menu ul.sub_link > li > a {
  display: inline-block;
}
#header nav.sp_menu ul.sub_link > li > a::before {
  content: "-";
  margin-right: 1rem;
}
#header nav.sp_menu ul.anchor_link {
  margin-left: 1em;
}
#header nav.sp_menu ul.anchor_link li {
  margin-top: 0.5em;
}
#header nav.sp_menu ul.anchor_link li a {
  display: inline-block;
}
#header nav.sp_menu ul.anchor_link li a::before {
  content: "・";
}

#footer section.contact {
  background-color: #1a2884;
  padding: clamp(4rem, 5vw, 8rem) 0;
}
#footer section.contact * {
  color: #fff;
}
#footer section.contact .upper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 4rem 0;
}
@media print, screen and (min-width: 768px) {
  #footer section.contact .upper {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 4rem;
  }
}
@media print, screen and (min-width: 1280px) {
  #footer section.contact .upper {
    gap: 0 clamp(3rem, 4vw, 6rem);
  }
}
#footer section.contact .upper > p {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin: 0 auto;
}
@media print, screen and (min-width: 768px) {
  #footer section.contact .upper > p {
    width: calc(100% - 40rem);
    margin: 0;
  }
}
@media print, screen and (min-width: 1280px) {
  #footer section.contact .upper > p {
    width: 33rem;
  }
}
#footer section.contact .upper .contact_way {
  width: 100%;
  margin: 0 auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media print, screen and (min-width: 1280px) {
  #footer section.contact .upper .contact_way {
    width: 37rem;
    margin: 0;
  }
}
#footer section.contact .upper .contact_way div a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0 min(3vw, 1.5rem);
}
#footer section.contact .upper .contact_way div a::before {
  content: "";
  -webkit-mask: center/contain no-repeat;
          mask: center/contain no-repeat;
  background-color: #fff;
}
#footer section.contact .upper .contact_way div a:hover {
  opacity: 0.5;
}
#footer section.contact .upper .contact_way div.mail {
  padding-right: min(5vw, 5rem);
}
#footer section.contact .upper .contact_way div.mail a::before {
  width: 4rem;
  aspect-ratio: 4/3;
  -webkit-mask-image: url(../img/icon_mail.svg);
          mask-image: url(../img/icon_mail.svg);
}
#footer section.contact .upper .contact_way div.tel {
  padding-left: min(5vw, 5rem);
  border-left: 0.1rem solid #fff;
}
#footer section.contact .upper .contact_way div.tel a::before {
  width: 3.7rem;
  aspect-ratio: 1/1;
  -webkit-mask-image: url(../img/icon_tel.svg);
          mask-image: url(../img/icon_tel.svg);
}
#footer section.contact .upper .contact_way div.tel a p {
  font-size: 2.6rem;
  font-weight: 500;
}
#footer section.contact .upper .contact_way div.tel a p small {
  display: block;
  font-size: 1.6rem;
}
#footer section.contact .lower {
  margin-top: clamp(6rem, 7vw, 12rem);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 2rem 0;
}
@media print, screen and (min-width: 768px) {
  #footer section.contact .lower {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    gap: 0 2rem;
  }
}
#footer section.contact .lower .link {
  width: 100%;
  max-width: 32rem;
}
#footer section.contact .lower .link a {
  aspect-ratio: 32/5;
  border: 0.1rem solid;
  border-radius: 1rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 1rem;
}
#footer section.contact .lower .link a::before, #footer section.contact .lower .link a::after {
  content: "";
  -webkit-mask: center/contain no-repeat;
          mask: center/contain no-repeat;
}
#footer section.contact .lower .link a::after {
  width: 0.8em;
  aspect-ratio: 1/1;
  -webkit-mask-image: url(../img/icon_window.svg);
          mask-image: url(../img/icon_window.svg);
  background-color: #fff;
  position: relative;
  top: -0.05em;
}
#footer section.contact .lower .link a:hover {
  opacity: 0.5;
}
#footer section.contact .lower .link a span {
  display: inline-block;
  font-weight: bold;
  text-box: unset;
  margin-right: 1em;
}
#footer section.contact .lower .link a.link01 {
  border-color: #42dcd1;
}
#footer section.contact .lower .link a.link01::before {
  width: 2.8rem;
  aspect-ratio: 28/29;
  -webkit-mask-image: url(../img/icon_building.svg);
          mask-image: url(../img/icon_building.svg);
  background-color: #42dcd1;
}
#footer section.contact .lower .link a.link01 span {
  color: #42dcd1;
}
#footer section.contact .lower .link a.link02 {
  border-color: #ebe176;
}
#footer section.contact .lower .link a.link02::before {
  width: 2.4rem;
  aspect-ratio: 1/1;
  -webkit-mask-image: url(../img/icon_persona.svg);
          mask-image: url(../img/icon_persona.svg);
  background-color: #ebe176;
}
#footer section.contact .lower .link a.link02 span {
  color: #ebe176;
}
#footer section.footer_bottom {
  padding: clamp(5rem, 6vw, 10rem) 0;
  background-color: #fafafa;
}
@media print, screen and (min-width: 1024px) {
  #footer section.footer_bottom .inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    gap: 5%;
  }
}
#footer section.footer_bottom p.logo {
  width: 100%;
  max-width: 39rem;
  margin: 0 auto;
}
@media print, screen and (min-width: 1024px) {
  #footer section.footer_bottom p.logo {
    width: 33%;
    margin: 0;
  }
}
#footer section.footer_bottom p.logo a:hover {
  opacity: 0.5;
}
#footer section.footer_bottom p.logo img {
  max-width: none;
}
#footer section.footer_bottom nav.footer_nav {
  display: none;
}
@media print, screen and (min-width: 1024px) {
  #footer section.footer_bottom nav.footer_nav {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    max-width: 68.5rem;
    margin-top: min(1.25vw, 2rem);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
}
#footer section.footer_bottom nav.footer_nav ul.main_link > li > a {
  font-size: 1.8rem;
  font-weight: bold;
}
#footer section.footer_bottom nav.footer_nav ul.main_link > li > a:hover {
  opacity: 0.5;
}
#footer section.footer_bottom nav.footer_nav ul.sub_link:not(:first-of-type) {
  margin-top: 4em;
}
#footer section.footer_bottom nav.footer_nav ul.sub_link > li {
  margin-top: 1.5em;
}
#footer section.footer_bottom nav.footer_nav ul.sub_link > li > a span {
  display: inline-block;
  text-decoration: underline;
  margin-left: 0.5em;
}
#footer section.footer_bottom nav.footer_nav ul.sub_link > li > a:hover {
  opacity: 0.5;
}
#footer section.footer_bottom nav.footer_nav ul.anchor_link li {
  margin-top: 1.5em;
}
#footer section.footer_bottom nav.footer_nav ul.anchor_link li a::before {
  content: "ー";
}
#footer section.footer_bottom nav.footer_nav ul.anchor_link li a:hover {
  opacity: 0.5;
}
#footer .to_top {
  position: fixed;
  right: min(4vw, 2.5rem);
  bottom: min(4vw, 2.5rem);
  z-index: 10000;
  opacity: 0;
  visibility: hidden;
  -webkit-transform: translateY(20rem);
          transform: translateY(20rem);
  -webkit-transition: 1s;
  transition: 1s;
}
#footer .to_top.active {
  opacity: 1;
  visibility: visible;
  -webkit-transform: translateY(0);
          transform: translateY(0);
}
#footer .to_top a {
  position: relative;
  width: 6rem;
  aspect-ratio: 1/1;
  border: 0.1rem solid #fff;
  background-color: #1a2884;
  border-radius: 50%;
}
#footer .to_top a::before {
  content: "";
  width: 0.8em;
  aspect-ratio: 1/1;
  border-top: 0.2rem solid #fff;
  border-right: 0.2rem solid #fff;
  position: absolute;
  left: 50%;
  -webkit-transform: translate(-50%, -50%) rotate(-45deg);
          transform: translate(-50%, -50%) rotate(-45deg);
  -webkit-animation: float 1.5s infinite linear;
          animation: float 1.5s infinite linear;
  opacity: 0;
}
#footer .to_top a:hover {
  border-radius: 0;
}
#footer .to_top a:hover::before {
  opacity: 1;
  top: 55%;
  -webkit-animation: none;
          animation: none;
}
#footer p.copyright {
  font-size: 1.4rem;
  text-align: center;
  padding: 1.75em 0;
  background-color: #fff;
}
@media print, screen and (min-width: 400px) {
  #footer p.copyright {
    padding-bottom: 1.75em;
  }
}

@-webkit-keyframes fade {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

@keyframes fade {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@-webkit-keyframes float {
  0% {
    opacity: 0;
    top: 80%;
  }
  50% {
    opacity: 1;
  }
  100% {
    opacity: 0;
    top: 40%;
  }
}
@keyframes float {
  0% {
    opacity: 0;
    top: 80%;
  }
  50% {
    opacity: 1;
  }
  100% {
    opacity: 0;
    top: 40%;
  }
}
#top section.fv {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: -1;
}
#top section.fv .swiper_container .swiper-slide {
  position: relative;
  width: 100%;
  height: 100vh;
}
@media print, screen and (min-width: 768px) {
  #top section.fv .swiper_container .swiper-slide {
    aspect-ratio: 1920/900;
    height: auto;
  }
}
#top section.fv .swiper_container .swiper-slide img {
  max-width: none;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
#top section.fv .swiper_container .swiper-slide img.slide01 {
  -o-object-position: 60%;
     object-position: 60%;
}
#top section.fv .swiper_container .swiper-slide img.slide02 {
  -o-object-position: 37%;
     object-position: 37%;
}
#top section.fv .swiper_container .swiper-slide img.slide03 {
  -o-object-position: 15%;
     object-position: 15%;
}
#top section.fv .swiper_container .catch_area {
  position: absolute;
  top: 15%;
  left: 50%;
  -webkit-transform: translate(-50%, 0);
          transform: translate(-50%, 0);
  width: 90%;
  max-width: 62.5rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: clamp(1.6rem, 3.2vw, 3.2rem) 0;
}
@media print, screen and (min-width: 768px) {
  #top section.fv .swiper_container .catch_area {
    top: 15vw;
    -webkit-transform: translate(0);
            transform: translate(0);
    width: 45%;
  }
}
@media print, screen and (min-width: 1400px) {
  #top section.fv .swiper_container .catch_area {
    top: min(16.5vw, 32rem);
    left: min(60vw, 115rem);
  }
}
#top section.fv .swiper_container .catch_area h2 {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  color: #fff;
  font-size: min(3.8vw, 1.7rem);
  font-weight: bold;
  text-align: center;
  background-color: #1a2884;
  border-radius: 1rem;
  padding: 1em min(6vw, 6rem);
}
@media print, screen and (min-width: 768px) {
  #top section.fv .swiper_container .catch_area h2 {
    font-size: min(1.7vw, 1.7rem);
    padding: 1em min(3vw, 6rem);
  }
}
#top section.fv .swiper_container .catch_area h3 {
  font-size: min(8.5vw, 6.1rem);
  font-weight: bold;
}
@media print, screen and (min-width: 768px) {
  #top section.fv .swiper_container .catch_area h3 {
    font-size: min(4vw, 6.1rem);
  }
}
#top section.fv .swiper_container .catch_area p {
  font-size: min(4.2vw, 1.8rem);
  font-weight: bold;
  text-align: left;
}
@media print, screen and (min-width: 768px) {
  #top section.fv .swiper_container .catch_area p {
    font-size: min(2vw, 1.8rem);
  }
}
#top section.fv .swiper_container .catch_area p span {
  display: inline-block;
}
#top section.fv .swiper_container .catch_area.black h3,
#top section.fv .swiper_container .catch_area.black p {
  color: #333;
  text-shadow: 0.2rem 0.2rem 0.3rem #e6e6e6;
}
@media print, screen and (min-width: 768px) {
  #top section.fv .swiper_container .catch_area.black h3,
  #top section.fv .swiper_container .catch_area.black p {
    text-shadow: none;
  }
}
#top section.fv .swiper_container .catch_area.white h3,
#top section.fv .swiper_container .catch_area.white p {
  color: #fff;
  text-shadow: 0.2rem 0.2rem 0.3rem #757575;
}
@media print, screen and (min-width: 768px) {
  #top section.fv .swiper_container .catch_area.white h3,
  #top section.fv .swiper_container .catch_area.white p {
    text-shadow: none;
  }
}
#top .triple_section {
  position: relative;
  z-index: 10;
  margin-top: calc(100vh - 3rem);
  background: url(../img/top/triple_sec_bg.webp) left top/cover no-repeat;
  padding: clamp(6rem, 10vw, 18rem) 0 clamp(6rem, 8vw, 15rem);
}
@media print, screen and (min-width: 768px) {
  #top .triple_section {
    margin-top: 35vw;
  }
}
@media print, screen and (min-width: 1400px) {
  #top .triple_section {
    margin-top: min(40vw, 81.5rem);
  }
}
#top .triple_section h2 {
  width: 100%;
  max-width: 57.5rem;
  margin: 0 auto;
  font-size: clamp(1.6rem, 4vw, 2.2rem);
  font-weight: bold;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0 1rem;
}
#top .triple_section h2 span {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  height: 0.1rem;
  background-color: #b3b3b3;
}
#top section.problem p.lead {
  margin-top: clamp(3rem, 4vw, 6rem);
  font-size: clamp(1.8rem, 2.3vw, 2.6rem);
  font-weight: 500;
}
@media print, screen and (min-width: 768px) {
  #top section.problem p.lead {
    text-align: center;
  }
}
#top section.problem ul {
  margin-top: clamp(4rem, 5vw, 8rem);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 2rem;
}
@media print, screen and (min-width: 1024px) {
  #top section.problem ul {
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
}
#top section.problem ul li {
  width: calc((100% - 2rem) / 2);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media print, screen and (min-width: 480px) {
  #top section.problem ul li {
    width: calc((100% - 6rem) / 4);
  }
}
@media print, screen and (min-width: 768px) {
  #top section.problem ul li {
    width: calc((100% - 8rem) / 5);
  }
}
@media print, screen and (min-width: 1024px) {
  #top section.problem ul li {
    width: auto;
  }
}
#top section.problem ul li .icon {
  width: 6rem;
  aspect-ratio: 60/52;
  background: center no-repeat;
}
#top section.problem ul li .icon.icon01 {
  background-image: url(../img/top/icon_problem01.svg);
  background-size: 4.6rem;
}
#top section.problem ul li .icon.icon02 {
  background-image: url(../img/top/icon_problem02.svg);
  background-size: 4.2rem;
}
#top section.problem ul li .icon.icon03 {
  background-image: url(../img/top/icon_problem03.svg);
  background-size: 4.8rem;
}
#top section.problem ul li .icon.icon04 {
  background-image: url(../img/top/icon_problem04.svg);
  background-size: 3.5rem;
}
#top section.problem ul li .icon.icon05 {
  background-image: url(../img/top/icon_problem05.svg);
  background-size: 3.7rem;
}
#top section.problem ul li .icon.icon06 {
  background-image: url(../img/top/icon_problem06.svg);
  background-size: 4.7rem;
}
#top section.problem ul li .icon.icon07 {
  background-image: url(../img/top/icon_problem07.svg);
  background-size: 4.3rem;
}
#top section.problem ul li .icon.icon08 {
  background-image: url(../img/top/icon_problem08.svg);
  background-size: 4.5rem;
}
#top section.problem ul li .icon.icon09 {
  background-image: url(../img/top/icon_problem09.svg);
  background-size: 5.7rem;
}
#top section.problem ul li .icon.icon10 {
  background-image: url(../img/top/icon_problem10.svg);
  background-size: 6rem;
}
#top section.problem ul li p {
  height: 2.85em;
  display: grid;
  place-items: center;
  text-align: center;
}
@media print, screen and (min-width: 480px) {
  #top section.problem ul li p {
    font-size: min(2.7vw, 1.6rem);
  }
}
@media print, screen and (min-width: 1024px) {
  #top section.problem ul li p {
    font-size: min(1.25vw, 1.6rem);
  }
}
#top section.problem .interior_img {
  margin-top: clamp(4rem, 5vw, 8rem);
  border-radius: 3rem;
  overflow: hidden;
}
#top section.service {
  position: relative;
  margin-top: clamp(6rem, 8vw, 15rem);
}
#top section.service::before {
  content: "";
  width: 66vw;
  aspect-ratio: 1267/889;
  background: url(../img/ripple_bg.webp) center/contain no-repeat;
  position: absolute;
  top: -9vw;
  left: -7vw;
  z-index: -1;
}
#top section.service h3 {
  margin-top: clamp(3rem, 4vw, 6rem);
  font-size: clamp(1.8rem, 2.5vw, 3.5rem);
  font-weight: 500;
}
@media print, screen and (min-width: 768px) {
  #top section.service h3 {
    text-align: center;
  }
}
#top section.service p {
  width: 100%;
  max-width: 98.5rem;
  margin: clamp(3rem, 4vw, 6.4rem) auto 0;
}
@media print, screen and (min-width: 768px) {
  #top section.service p {
    font-size: 1.8rem;
  }
}
#top section.reason {
  margin-top: clamp(6rem, 8vw, 15rem);
}
#top section.reason ul {
  margin-top: clamp(3rem, 4vw, 6rem);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media print, screen and (min-width: 768px) {
  #top section.reason ul {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-align: normal;
        -ms-flex-align: normal;
            align-items: normal;
  }
}
#top section.reason ul li {
  width: 100%;
  max-width: 37.5rem;
  padding: 1.5rem 0;
  border-top: 0.1rem solid #666;
}
@media print, screen and (min-width: 768px) {
  #top section.reason ul li {
    width: 33.3333333333%;
    padding: 1.5rem clamp(2rem, 4vw, 4rem);
    border-top: none;
    border-left: 0.1rem solid #666;
  }
}
#top section.reason ul li:last-of-type {
  border-bottom: 0.1rem solid #666;
}
@media print, screen and (min-width: 768px) {
  #top section.reason ul li:last-of-type {
    border-bottom: none;
    border-right: 0.1rem solid #666;
  }
}
#top section.reason ul li dl dt span {
  color: #1a2884;
  font-size: 1.8rem;
  font-weight: bold;
}
#top section.reason ul li dl dt span.number {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0 1rem;
}
#top section.reason ul li dl dt span.number::after {
  content: "";
  width: 2.5rem;
  aspect-ratio: 1/1;
  background: center/contain no-repeat;
  position: relative;
  top: -0.1em;
}
#top section.reason ul li dl dt span.number.number01::after {
  background-image: url(../img/top/point_number01.svg);
}
#top section.reason ul li dl dt span.number.number02::after {
  background-image: url(../img/top/point_number02.svg);
}
#top section.reason ul li dl dt span.number.number03::after {
  background-image: url(../img/top/point_number03.svg);
}
#top section.reason ul li dl dt span.title {
  display: block;
  margin-top: 2rem;
  font-size: 1.6rem;
}
@media print, screen and (min-width: 768px) {
  #top section.reason ul li dl dt span.title {
    min-height: max(7rem, 12rem - 4vw);
  }
}
#top section.reason ul li dl dd {
  margin-top: clamp(2rem, 4vw, 4rem);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: clamp(2rem, 4vw, 4rem) 0;
}
@media print, screen and (min-width: 768px) {
  #top section.reason ul li dl dd {
    margin-top: 0;
  }
}
#top section.reason ul li dl dd .icon {
  width: 6rem;
  aspect-ratio: 1/1;
  background: center/contain no-repeat;
}
#top section.reason ul li dl dd .icon.icon01 {
  background-image: url(../img/top/icon_reason01.svg);
}
#top section.reason ul li dl dd .icon.icon02 {
  background-image: url(../img/top/icon_reason02.svg);
}
#top section.reason ul li dl dd .icon.icon03 {
  background-image: url(../img/top/icon_reason03.svg);
}
#top section.business {
  padding: clamp(3rem, 4vw, 6.4rem) 0 clamp(6rem, 8vw, 15rem);
  background-color: #f2f2f2;
}
@media print, screen and (min-width: 1280px) {
  #top section.business .inner.max1400 {
    width: clamp(1216px, 86.5vw, 1660px);
    max-width: none;
    margin: 0 0 0 auto;
  }
}
#top section.business .swiper_container {
  margin-top: clamp(4rem, 5vw, 8rem);
}
#top section.business .swiper_container h3 {
  position: relative;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  font-size: 2.2rem;
  font-weight: bold;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 0.5rem 0;
  padding-bottom: clamp(1.6rem, 3.2vw, 3.2rem);
}
#top section.business .swiper_container h3::after {
  content: "";
  width: 100%;
  height: 0.1rem;
  background: -webkit-gradient(linear, left top, right top, color-stop(85%, #1a2884), to(#de1616));
  background: linear-gradient(to right, #1a2884 85%, #de1616);
  position: absolute;
  left: 0;
  bottom: 0;
}
#top section.business .swiper_container h3 span {
  color: #1a2884;
  font-size: 1.5rem;
  font-weight: 100;
}
#top section.business .swiper_container .swiper {
  margin-top: 2.5rem;
}
@media print, screen and (min-width: 1280px) {
  #top section.business .swiper_container .swiper {
    position: relative;
    left: 15.8rem;
  }
}
#top section.business .swiper_container .swiper-slide {
  height: auto;
  -ms-flex-item-align: stretch;
      align-self: stretch;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  background-color: #000;
}
#top section.business .swiper_container .swiper-slide a:hover {
  opacity: 0.5;
}
#top section.business .swiper_container .swiper-slide dl dt {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: reverse;
      -ms-flex-direction: column-reverse;
          flex-direction: column-reverse;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  gap: 1rem;
  color: #fff;
  aspect-ratio: 36/48;
  background: center/cover no-repeat;
  padding: 2rem 1rem;
}
#top section.business .swiper_container .swiper-slide dl dt span {
  display: block;
  font-family: "acumin-variable", sans-serif;
  font-size: 3rem;
  font-weight: 100;
  line-height: 1.2;
}
#top section.business .swiper_container .swiper-slide dl dd {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  color: #fff;
  display: grid;
  place-items: center;
  padding: 1em;
}
#top section.business .swiper_container #management-slide .swiper-slide.slide01 dt {
  background-image: url(../img/top/business_management01.webp);
}
#top section.business .swiper_container #management-slide .swiper-slide.slide02 dt {
  background-image: url(../img/top/business_management02.webp);
}
#top section.business .swiper_container #management-slide .swiper-slide.slide03 dt {
  background-image: url(../img/top/business_management03.webp);
}
#top section.business .swiper_container #management-slide .swiper-slide.slide04 dt {
  background-image: url(../img/top/business_management04.webp);
}
#top section.business .swiper_container #mediation-slide .swiper-slide.slide01 dt {
  background-image: url(../img/top/business_mediation01.webp);
}
#top section.business .swiper_container #mediation-slide .swiper-slide.slide02 dt {
  background-image: url(../img/top/business_mediation02.webp);
}
#top section.business .btn_area {
  margin-top: clamp(3rem, 4vw, 6.4rem);
}
#top section.company {
  padding: clamp(6rem, 8vw, 15rem) 0;
  background: url(../img/top/company_bg.webp) center/cover no-repeat;
}
#top section.company .swiper_container {
  margin-top: clamp(3rem, 4vw, 6.4rem);
}
#top section.company .swiper_container .swiper-wrapper {
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
}
#top section.company .btn_area {
  margin-top: clamp(3rem, 4vw, 6rem);
}

#page-business ul.anchor_list {
  margin-top: clamp(4rem, 5vw, 8rem);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 2rem 0;
}
#page-business ul.anchor_list li {
  width: 50%;
  max-width: 30rem;
}
@media print, screen and (min-width: 768px) {
  #page-business ul.anchor_list li {
    width: 25%;
    max-width: none;
  }
}
@media print, screen and (min-width: 1024px) {
  #page-business ul.anchor_list li {
    width: 12rem;
  }
}
#page-business ul.anchor_list li:nth-of-type(odd) {
  border-left: 0.1rem solid #1a1a1a;
}
#page-business ul.anchor_list li:nth-of-type(even) {
  border-left: 0.1rem solid #1a1a1a;
  border-right: 0.1rem solid #1a1a1a;
}
@media print, screen and (min-width: 768px) {
  #page-business ul.anchor_list li:nth-of-type(3) {
    border-left: none;
  }
}
#page-business ul.anchor_list li a {
  position: relative;
  font-weight: bold;
  text-align: center;
}
#page-business ul.anchor_list li a:hover {
  opacity: 0.5;
}
#page-business ul.anchor_list li a::after {
  content: "";
  width: 0.4em;
  aspect-ratio: 1/1;
  border-right: 0.2rem solid #1a1a1a;
  border-bottom: 0.2rem solid #1a1a1a;
  position: absolute;
  top: 50%;
  right: 2.5vw;
  -webkit-transform: translate(0, -50%) rotate(45deg);
          transform: translate(0, -50%) rotate(45deg);
}
@media print, screen and (min-width: 1024px) {
  #page-business ul.anchor_list li a::after {
    content: none;
  }
}
#page-business ul.category_desc > li {
  margin-top: clamp(6rem, 8vw, 15rem);
}
#page-business ul.category_desc > li .catch_area {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 2rem 0;
}
@media print, screen and (min-width: 768px) {
  #page-business ul.category_desc > li .catch_area {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 0 clamp(5rem, 6vw, 10rem);
  }
}
#page-business ul.category_desc > li .area_bg {
  width: 100vw;
  aspect-ratio: 76/48;
  margin-left: calc(50% - min(50vw, 96rem));
  background: center/cover no-repeat;
}
@media print, screen and (min-width: 768px) {
  #page-business ul.category_desc > li .area_bg {
    -ms-flex-item-align: stretch;
        align-self: stretch;
    width: min(45vw, 76rem);
    border-radius: 0 2rem 2rem 0;
  }
}
#page-business ul.category_desc > li .area_bg.category01 {
  background-image: url(../img/business/category_bg01.webp);
}
#page-business ul.category_desc > li .area_bg.category02 {
  background-image: url(../img/business/category_bg02.webp);
}
#page-business ul.category_desc > li .area_bg.category03 {
  background-image: url(../img/business/category_bg03.webp);
}
#page-business ul.category_desc > li .area_bg.category04 {
  background-image: url(../img/business/category_bg04.webp);
}
#page-business ul.category_desc > li .area_bg.category05 {
  background-image: url(../img/business/category_bg05.webp);
}
#page-business ul.category_desc > li .area_bg.category06 {
  background-image: url(../img/business/category_bg06.webp);
}
@media print, screen and (min-width: 768px) {
  #page-business ul.category_desc > li .area_txt {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
  }
}
#page-business ul.category_desc > li .area_txt h3 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: reverse;
      -ms-flex-direction: column-reverse;
          flex-direction: column-reverse;
  gap: 1rem 0;
  font-size: 3rem;
  font-weight: bold;
}
#page-business ul.category_desc > li .area_txt h3 span {
  font-family: "acumin-variable", sans-serif;
  font-size: 1.8rem;
  font-weight: 300;
  -webkit-transform: scaleX(1.1);
          transform: scaleX(1.1);
  -webkit-transform-origin: left;
          transform-origin: left;
}
#page-business ul.category_desc > li .area_txt p {
  margin-top: clamp(2rem, 4vw, 4rem);
}
#page-business ul.category_desc > li .area_txt p strong {
  display: block;
  font-size: 1.8rem;
  font-weight: bold;
  margin-bottom: 1em;
}
#page-business ul.category_desc > li .service_list {
  margin-top: clamp(3rem, 4vw, 6rem);
}
#page-business ul.category_desc > li .service_list > dl {
  padding: clamp(2rem, 4vw, 4rem) 0;
  border-top: 0.5rem solid #e6e6e6;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 2rem 0;
}
@media print, screen and (min-width: 768px) {
  #page-business ul.category_desc > li .service_list > dl {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    gap: 0;
  }
}
#page-business ul.category_desc > li .service_list > dl:last-of-type {
  border-bottom: 0.5rem solid #e6e6e6;
}
#page-business ul.category_desc > li .service_list > dl > dt {
  color: #1a2884;
  font-size: 1.8rem;
  font-weight: bold;
}
@media print, screen and (min-width: 768px) {
  #page-business ul.category_desc > li .service_list > dl > dt {
    width: 10em;
    position: relative;
    top: -0.1em;
  }
}
#page-business ul.category_desc > li .service_list > dl > dt::before {
  content: "";
  display: inline-block;
  width: 1em;
  aspect-ratio: 1/1;
  -webkit-mask: url(../img/icon_section_title.svg) center/contain no-repeat;
          mask: url(../img/icon_section_title.svg) center/contain no-repeat;
  background-color: #1a2884;
  margin-right: 1em;
}
#page-business ul.category_desc > li .service_list > dl dd.lead {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 0 1rem;
  font-weight: 500;
  margin-bottom: clamp(2rem, 4vw, 4rem);
}
@media print, screen and (min-width: 768px) {
  #page-business ul.category_desc > li .service_list > dl dd.lead {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
  }
}
#page-business ul.category_desc > li .service_list > dl dd.lead::before {
  content: "";
  width: 1em;
  height: 0.1rem;
  background-color: #666;
  position: relative;
  top: 0.5rem;
}
@media print, screen and (min-width: 768px) {
  #page-business ul.category_desc > li .service_list > dl dd.lead::before {
    width: 2em;
  }
}
#page-business ul.category_desc > li .service_list > dl dd.lead p {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
#page-business ul.category_desc > li .service_list > dl dd.desc {
  width: 100%;
}
@media print, screen and (min-width: 1024px) {
  #page-business ul.category_desc > li .service_list > dl dd.desc {
    margin-left: 14em;
  }
}
#page-business ul.category_desc > li .service_list > dl dd.desc dl dt {
  color: #fff;
  background-color: #666;
  padding: 0.5em 1em;
  margin-bottom: 2rem;
}
#page-business ul.category_desc > li .service_list > dl dd.desc dl dt:not(:first-of-type) {
  margin-top: clamp(2rem, 4vw, 4rem);
}
#page-business ul.category_desc > li .service_list > dl dd.desc dl dd figure.illust {
  margin: clamp(2rem, 4vw, 4rem) auto;
  width: 100%;
  overflow-x: scroll;
}
#page-business ul.category_desc > li .service_list > dl dd.desc dl dd figure.illust.illust01 {
  max-width: 66rem;
}
@media print, screen and (min-width: 768px) {
  #page-business ul.category_desc > li .service_list > dl dd.desc dl dd figure.illust.illust01 {
    overflow-x: hidden;
  }
}
#page-business ul.category_desc > li .service_list > dl dd.desc dl dd figure.illust.illust01 img {
  width: 66rem;
}
@media print, screen and (min-width: 768px) {
  #page-business ul.category_desc > li .service_list > dl dd.desc dl dd figure.illust.illust01 img {
    width: 100%;
  }
}
#page-business ul.category_desc > li .service_list > dl dd.desc dl dd figure.illust.illust02, #page-business ul.category_desc > li .service_list > dl dd.desc dl dd figure.illust.illust03 {
  max-width: 97.5rem;
}
@media print, screen and (min-width: 768px) {
  #page-business ul.category_desc > li .service_list > dl dd.desc dl dd figure.illust.illust02, #page-business ul.category_desc > li .service_list > dl dd.desc dl dd figure.illust.illust03 {
    overflow: hidden;
  }
}
#page-business ul.category_desc > li .service_list > dl dd.desc dl dd figure.illust.illust02 img, #page-business ul.category_desc > li .service_list > dl dd.desc dl dd figure.illust.illust03 img {
  width: 97.5rem;
}
@media print, screen and (min-width: 768px) {
  #page-business ul.category_desc > li .service_list > dl dd.desc dl dd figure.illust.illust02 img, #page-business ul.category_desc > li .service_list > dl dd.desc dl dd figure.illust.illust03 img {
    width: 100%;
  }
}
#page-business ul.category_desc > li .service_list > dl dd.desc dl dd figure.illust.illust04, #page-business ul.category_desc > li .service_list > dl dd.desc dl dd figure.illust.illust05 {
  max-width: 31.5rem;
  overflow: hidden;
}
@media print, screen and (min-width: 768px) {
  #page-business ul.category_desc > li .service_list > dl dd.desc dl dd figure.illust.illust04, #page-business ul.category_desc > li .service_list > dl dd.desc dl dd figure.illust.illust05 {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
  }
}
#page-business ul.category_desc > li .service_list > dl dd.desc dl dd figure.illust.illust04 img, #page-business ul.category_desc > li .service_list > dl dd.desc dl dd figure.illust.illust05 img {
  width: 100%;
  height: 13.5rem;
  -o-object-fit: contain;
     object-fit: contain;
}
#page-business ul.category_desc > li .service_list > dl dd.desc dl dd figure.illust.illust04 figcaption, #page-business ul.category_desc > li .service_list > dl dd.desc dl dd figure.illust.illust05 figcaption {
  margin-top: 1em;
}
#page-business ul.category_desc > li .service_list > dl dd.desc dl dd figure.illust.illust04 figcaption dl dt, #page-business ul.category_desc > li .service_list > dl dd.desc dl dd figure.illust.illust05 figcaption dl dt {
  color: #58595b;
  font-size: 1.4rem;
  font-weight: bold;
  background-color: transparent;
  margin-bottom: 0;
}
#page-business ul.category_desc > li .service_list > dl dd.desc dl dd figure.illust.illust04 figcaption dl dt::before, #page-business ul.category_desc > li .service_list > dl dd.desc dl dd figure.illust.illust05 figcaption dl dt::before {
  content: "【";
}
#page-business ul.category_desc > li .service_list > dl dd.desc dl dd figure.illust.illust04 figcaption dl dt::after, #page-business ul.category_desc > li .service_list > dl dd.desc dl dd figure.illust.illust05 figcaption dl dt::after {
  content: "】";
}
#page-business ul.category_desc > li .service_list > dl dd.desc dl dd figure.illust.illust04 figcaption dl dt:not(:first-of-type), #page-business ul.category_desc > li .service_list > dl dd.desc dl dd figure.illust.illust05 figcaption dl dt:not(:first-of-type) {
  margin-top: 1em;
}
#page-business ul.category_desc > li .service_list > dl dd.desc dl dd figure.illust.illust04 figcaption dl dd, #page-business ul.category_desc > li .service_list > dl dd.desc dl dd figure.illust.illust05 figcaption dl dd {
  margin-top: 1rem;
  color: #58595b;
}
#page-business ul.category_desc > li .service_list > dl dd.desc dl dd figure.illust.illust04 figcaption dl dd::before, #page-business ul.category_desc > li .service_list > dl dd.desc dl dd figure.illust.illust05 figcaption dl dd::before {
  content: "●";
}
#page-business ul.category_desc > li .service_list > dl dd.desc dl dd figure.illust.illust06, #page-business ul.category_desc > li .service_list > dl dd.desc dl dd figure.illust.illust07 {
  max-width: 25rem;
  overflow: hidden;
}
#page-business ul.category_desc > li .service_list > dl dd.desc dl dd figure.illust.illust06 img, #page-business ul.category_desc > li .service_list > dl dd.desc dl dd figure.illust.illust07 img {
  width: 100%;
}
#page-business ul.category_desc > li .service_list > dl dd.desc dl dd figure.illust.illust08, #page-business ul.category_desc > li .service_list > dl dd.desc dl dd figure.illust.illust09 {
  max-width: 97.5rem;
}
@media print, screen and (min-width: 768px) {
  #page-business ul.category_desc > li .service_list > dl dd.desc dl dd figure.illust.illust08, #page-business ul.category_desc > li .service_list > dl dd.desc dl dd figure.illust.illust09 {
    overflow: hidden;
  }
}
#page-business ul.category_desc > li .service_list > dl dd.desc dl dd figure.illust.illust08 img, #page-business ul.category_desc > li .service_list > dl dd.desc dl dd figure.illust.illust09 img {
  width: 97.5rem;
}
@media print, screen and (min-width: 768px) {
  #page-business ul.category_desc > li .service_list > dl dd.desc dl dd figure.illust.illust08 img, #page-business ul.category_desc > li .service_list > dl dd.desc dl dd figure.illust.illust09 img {
    width: 100%;
  }
}
#page-business ul.category_desc > li .service_list > dl dd.desc dl dd .arrow {
  position: relative;
  margin: clamp(2rem, 4vw, 4rem) auto 0;
  width: min(20vw, 16rem);
  aspect-ratio: 16/6;
  background-color: #1a1a1a;
  clip-path: polygon(20% 0, 80% 0, 80% 40%, 100% 40%, 50% 100%, 0 40%, 20% 40%);
}
#page-business ul.category_desc > li .service_list > dl dd.desc dl dd.flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 2rem 0;
}
@media print, screen and (min-width: 768px) {
  #page-business ul.category_desc > li .service_list > dl dd.desc dl dd.flex {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -ms-flex-pack: distribute;
        justify-content: space-around;
  }
}
#page-business ul.category_desc > li .service_list > dl dd.desc p.dot {
  margin-left: 1em;
  -webkit-font-feature-settings: normal;
          font-feature-settings: normal;
  padding-left: 1em;
  text-indent: -1em;
}
#page-business ul.category_desc > li .service_list > dl dd.desc p.dot:not(:first-of-type) {
  margin-top: 2rem;
}
#page-business ul.category_desc > li .service_list > dl dd.desc p.dot::before {
  content: "・";
}
#page-business .slider_container {
  margin-top: clamp(4rem, 5vw, 8rem);
}
#page-business .slider_container .slider {
  position: relative;
  width: 100%;
  aspect-ratio: 320/180;
}
@media print, screen and (min-width: 768px) {
  #page-business .slider_container .slider {
    aspect-ratio: 1920/620;
  }
}
#page-business .slider_container .slider_wrapper {
  position: absolute;
  left: -78vw;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 10px;
}
@media print, screen and (min-width: 768px) {
  #page-business .slider_container .slider_wrapper {
    left: auto;
    inset: 0;
  }
}
#page-business .slider_container .over768 {
  display: none;
}
@media print, screen and (min-width: 768px) {
  #page-business .slider_container .over768 {
    display: none;
  }
}
#page-business .slider_container .slider_slide {
  position: relative;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  aspect-ratio: 650/620;
}
#page-business .slider_container .slider_slide.scale100 {
  width: 60vw;
}
@media print, screen and (min-width: 768px) {
  #page-business .slider_container .slider_slide.scale100 {
    width: 33.3vw;
  }
}
#page-business .slider_container .slider_slide.scale85 {
  width: 51vw;
}
@media print, screen and (min-width: 768px) {
  #page-business .slider_container .slider_slide.scale85 {
    width: 28.305vw;
  }
}
#page-business .slider_container .slider_slide.scale70 {
  width: 42vw;
}
@media print, screen and (min-width: 768px) {
  #page-business .slider_container .slider_slide.scale70 {
    width: 23.31vw;
  }
}
#page-business .slider_container .slider_slide.buffer {
  position: absolute;
  left: calc(-1 * (23.31vw - 10px));
  pointer-events: none;
  opacity: 0;
}
#page-business .slider_container .slide_img {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}
#page-business .business_catch {
  margin-top: clamp(6rem, 8vw, 15rem);
}
@media print, screen and (min-width: 1024px) {
  #page-business .business_catch {
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
  }
}
#page-business .business_catch h3.catch {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin: 0 auto;
  font-size: clamp(2rem, 3vw, 3rem);
}
#page-business .business_catch p.lead {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin: 5rem auto 0;
  font-weight: bold;
}
@media print, screen and (min-width: 1024px) {
  #page-business .business_catch p.lead {
    margin: 5rem 0 0;
  }
}
#page-business section.category {
  margin-top: clamp(4rem, 5vw, 8rem);
}
#page-business section.category p {
  margin: clamp(4rem, 5vw, 8rem) auto 0;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  font-size: 1.8rem;
  font-weight: 500;
}
@media print, screen and (min-width: 1024px) {
  #page-business section.category p {
    text-align: center;
  }
}
#page-business section.category .category_list {
  width: 100%;
  max-width: 52.5rem;
  margin: clamp(4rem, 5vw, 8rem) auto 0;
}
#page-business section.category .category_list svg {
  display: block;
  width: 100%;
  height: auto;
}
#page-business section.category .category_list svg a {
  fill: transparent;
}
#page-business section.category .category_list svg a:hover {
  fill: rgba(0, 0, 0, 0.1);
}
#page-business section.business {
  position: relative;
  margin-top: clamp(6rem, 8vw, 15rem);
  padding: clamp(4rem, 5vw, 8rem) 0;
}
#page-business section.business::before {
  content: "";
  width: 100%;
  height: 100%;
  background-color: #005bab;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -99999;
}
#page-business section.business header.page_section_title::after {
  background: #fff;
}
#page-business section.business header.page_section_title h2,
#page-business section.business header.page_section_title span {
  color: #fff;
}
#page-business section.business ul.business_list {
  margin-top: clamp(4rem, 5vw, 8rem);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: clamp(2rem, 4vw, 4rem) 0;
}
@media print, screen and (min-width: 768px) {
  #page-business section.business ul.business_list {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    gap: 0 clamp(4rem, 5vw, 8rem);
  }
}
#page-business section.business ul.business_list li {
  width: 100%;
  max-width: 50rem;
  border: 0.1rem solid #fff;
  border-radius: 2rem;
}
@media print, screen and (min-width: 768px) {
  #page-business section.business ul.business_list li {
    width: calc((100% - clamp(4rem, 5vw, 8rem)) / 2);
    -ms-flex-item-align: stretch;
        align-self: stretch;
  }
}
#page-business section.business ul.business_list li * {
  color: #fff;
}
#page-business section.business ul.business_list li a {
  padding: 2rem clamp(2rem, 4vw, 4rem);
}
@media print, screen and (min-width: 768px) {
  #page-business section.business ul.business_list li a {
    height: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    padding: clamp(1.6rem, 3.2vw, 3.2rem) clamp(2rem, 4vw, 4rem) 2rem clamp(4rem, 5vw, 8rem);
  }
}
#page-business section.business ul.business_list li .flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
#page-business section.business ul.business_list li .flex h3 {
  font-size: 2.7rem;
  font-weight: bold;
}
#page-business section.business ul.business_list li .flex h3 span {
  display: block;
  font-family: "acumin-variable", sans-serif;
  font-size: 1.5rem;
  font-weight: 300;
  -webkit-transform: scaleX(1.15);
          transform: scaleX(1.15);
  -webkit-transform-origin: left;
          transform-origin: left;
}
#page-business section.business ul.business_list li .flex .icon {
  position: relative;
  width: 4.3rem;
  aspect-ratio: 43/70;
  background: url(../img/business/arrow.svg) center bottom/8px no-repeat;
}
#page-business section.business ul.business_list li .flex .icon::after {
  content: "";
  width: 100%;
  aspect-ratio: 1/1;
  -webkit-mask: url(../img/icon_section_title.svg) top/contain no-repeat;
          mask: url(../img/icon_section_title.svg) top/contain no-repeat;
  position: absolute;
  top: 0;
  left: 50%;
  z-index: -1;
  -webkit-transform: translate(-50%, 0);
          transform: translate(-50%, 0);
  background-color: #1a2884;
}
#page-business section.business ul.business_list li .flex .icon.icon01::after {
  background-color: #1a2884;
}
#page-business section.business ul.business_list li .flex .icon.icon02::after {
  background-color: #e54545;
}
#page-business section.business ul.business_list li dl.service {
  margin-top: clamp(4rem, 5vw, 8rem);
}
#page-business section.business ul.business_list li dl.service dt {
  font-weight: bold;
  padding-bottom: 1em;
  border-bottom: 0.1rem solid #fff;
}
#page-business section.business ul.business_list li dl.service dd {
  margin-top: 1em;
}
#page-business section.management {
  margin-top: clamp(6rem, 8vw, 15rem);
}
#page-business section.management .section_title header h2 {
  color: #1a2884;
}
#page-business section.management .proprietary_service {
  margin-top: clamp(2rem, 4vw, 4rem);
  background-color: #c4e6f5;
  padding: 2rem;
}
#page-business section.management .proprietary_service dl dt {
  font-size: clamp(1.8rem, 1.2vw, 2.4rem);
  font-weight: bold;
}
#page-business section.management .proprietary_service dl dt::before {
  content: "●";
  color: #1a2884;
  margin-right: 0.5em;
}
#page-business section.management .proprietary_service dl dd {
  margin-top: 1em;
  font-size: clamp(1.8rem, 1.2vw, 2.4rem);
  padding-left: 1.5em;
}
#page-business section.mediation {
  position: relative;
  margin-top: clamp(6rem, 8vw, 15rem);
  padding: clamp(6rem, 8vw, 15rem) 0;
}
#page-business section.mediation::before {
  content: "";
  width: 100%;
  height: 100%;
  background: url(../img/business/mediation_bg.webp) left top/cover no-repeat;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -99999;
}
#page-business section.mediation .section_title::before {
  background-color: #e54545;
}
#page-business section.mediation .section_title header h2 {
  color: #e54545;
}
#page-business section.mediation .support_list {
  margin-top: 2rem;
  background-color: #c4e6f5;
  padding: 2rem 0;
}
#page-business section.mediation .support_list ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 2rem clamp(3rem, 4vw, 6rem);
}
#page-business section.mediation .support_list ul li {
  width: calc((100% - clamp(3rem, 4vw, 6rem)) / 2);
  font-size: clamp(1.6rem, 1.2vw, 1.8rem);
}
@media print, screen and (min-width: 768px) {
  #page-business section.mediation .support_list ul li {
    width: calc((100% - clamp(3rem, 4vw, 6rem) * 3) / 4);
  }
}
#page-business section.mediation .support_list ul li::before {
  content: "●";
  color: #1a2884;
  margin-right: 0.5em;
}

#page-company .r20 {
  margin: clamp(4rem, 5vw, 8rem) 0 clamp(6rem, 8vw, 15rem);
}
#page-company .r20 img {
  border-radius: 20px;
}
#page-company .inner.max1000 article {
  margin-bottom: clamp(6rem, 8vw, 15rem);
}
#page-company .inner.max1000 article h3 {
  font-size: clamp(2rem, 3vw, 3rem);
  text-align: center;
  margin: clamp(4rem, 5vw, 8rem) 0;
}
#page-company .inner.max1000 article p {
  margin: clamp(1.6rem, 3.2vw, 3.2rem) 0;
  font-size: 1.8rem;
}
#page-company .inner.max1000 article figure {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  -webkit-box-pack: right;
      -ms-flex-pack: right;
          justify-content: right;
}
#page-company .inner.max1000 article figure figcaption {
  margin-right: 1rem;
  font-size: 1.8rem;
  padding-bottom: 5px;
}
#page-company .inner.max1000 .profile_list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 0.5rem;
}
@media print, screen and (min-width: 768px) {
  #page-company .inner.max1000 .profile_list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
}
#page-company .inner.max1000 dt {
  background-color: #ddd;
  padding: 0.8rem 0;
  display: grid;
  place-items: center;
  font-size: 1.8rem;
  padding: 2rem;
}
@media print, screen and (min-width: 768px) {
  #page-company .inner.max1000 dt {
    width: 20rem;
    background-color: #efefef;
  }
}
#page-company .inner.max1000 dt span {
  display: block;
}
#page-company .inner.max1000 dd {
  background-color: #efefef;
  padding: 0.8em min(4vw, 2em);
  font-size: 1.8rem;
  padding: 2rem;
}
@media print, screen and (min-width: 768px) {
  #page-company .inner.max1000 dd {
    width: calc(100% - 20.5rem);
  }
}
@media print, screen and (min-width: 1024px) {
  #page-company .inner.max1000 dd {
    padding: 3rem;
  }
}
@media print, screen and (min-width: 1280px) {
  #page-company .inner.max1000 dd {
    padding: 4rem;
  }
}
#page-company h5 {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  font-size: 1.8rem;
  margin: 0 auto clamp(3rem, 4vw, 6rem);
}
@media print, screen and (min-width: 480px) {
  #page-company h5 {
    text-align: center;
  }
}
#page-company .mgn80100 {
  margin: clamp(4rem, 5vw, 8rem) 0 clamp(5rem, 6vw, 10rem);
}
#page-company .build_image {
  margin-bottom: clamp(6rem, 8vw, 15rem);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 2rem;
}
#page-company .build_image figure {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
#page-company .company {
  background-image: url(../../../_assets/img/company/bg_company.webp);
  margin-bottom: clamp(6rem, 8vw, 15rem);
  width: 100vw;
  margin: 0 calc(50% - 50vw);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
#page-company .company .page_section_title h2 {
  margin-top: clamp(6rem, 8vw, 15rem);
}
#page-company .company .guarantee5 {
  margin-top: clamp(4rem, 5vw, 8rem);
  padding-bottom: clamp(6rem, 8vw, 15rem);
  width: 100%;
}
#page-company .company .guarantee5 .company3 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-bottom: 10px;
}
#page-company .company .guarantee5 .company3 li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 30%;
  padding: 0;
}
@media print, screen and (min-width: 1024px) {
  #page-company .company .guarantee5 .company3 li {
    width: auto;
  }
}
#page-company .company .guarantee5 .company3 li:not(:last-child) {
  margin-right: 1rem;
}
#page-company .company .guarantee5 .company2 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
#page-company .company .guarantee5 .company2 li {
  width: 30%;
  padding: 0;
}
@media print, screen and (min-width: 1024px) {
  #page-company .company .guarantee5 .company2 li {
    width: auto;
  }
}
#page-company .company .guarantee5 .company2 li:not(:last-child) {
  margin-right: 10px;
}

#page-contact section.contact {
  margin: clamp(6rem, 8vw, 15rem) 0;
}
#page-contact section.contact p.section_info {
  margin: clamp(4rem, 5vw, 8rem) auto 0;
  width: 100%;
  max-width: -webkit-fit-content;
  max-width: -moz-fit-content;
  max-width: fit-content;
}
@media print, screen and (min-width: 768px) {
  #page-contact section.contact p.section_info {
    text-align: center;
  }
}
#page-contact section.contact p.section_info a {
  display: inline-block;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  text-decoration: underline;
}
@media print, screen and (min-width: 1024px) {
  #page-contact section.contact p.section_info a {
    text-decoration: none;
  }
}
#page-contact section.contact .btn_area {
  margin-top: clamp(4rem, 5vw, 8rem);
}
#page-contact section.contact h3 {
  font-size: 1.8rem;
  font-weight: 500;
  text-align: center;
  background-color: #efefef;
  padding: 1em 0;
}
#page-contact section.contact .tel_contact {
  margin-top: clamp(4rem, 5vw, 8rem);
}
#page-contact section.contact .tel_contact a {
  position: relative;
  margin: clamp(4rem, 5vw, 8rem) auto 0;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  font-size: min(8vw, 4.8rem);
  font-weight: bold;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: clamp(1.6rem, 3.2vw, 3.2rem);
}
#page-contact section.contact .tel_contact a::before {
  content: "";
  width: min(12vw, 6.5rem);
  aspect-ratio: 1/1;
  background: url(../img/contact/icon_tel.svg) center/contain no-repeat;
}
#page-contact section.contact .tel_contact a small {
  display: block;
  font-size: 1.8rem;
  font-weight: 400;
  position: absolute;
  top: 100%;
  left: calc(min(12vw, 6.5rem) + clamp(1.6rem, 3.2vw, 3.2rem));
}
#page-contact section.contact .mail_contact {
  margin-top: clamp(5rem, 6vw, 10rem);
}
#page-contact section.contact .mail_contact p.note {
  margin: clamp(2rem, 4vw, 4rem) auto 0;
  font-weight: 500;
}
#page-contact section.contact .mail_contact p.note span {
  color: #ff0000;
}
#page-contact section.contact .mail_contact form {
  margin-top: clamp(4rem, 5vw, 8rem);
}
#page-contact section.contact .mail_contact form * {
  font-weight: 500;
}
#page-contact section.contact .mail_contact form .input_list dl + dl {
  margin-top: 5rem;
}
#page-contact section.contact .mail_contact form .input_list dl dt {
  font-size: 1.8rem;
}
#page-contact section.contact .mail_contact form .input_list dl dt.required::after {
  content: "＊";
  color: #ff0000;
  font-size: 1.2rem;
  vertical-align: super;
}
#page-contact section.contact .mail_contact form .input_list dl dd {
  margin-top: 1.5rem;
}
#page-contact section.contact .mail_contact form .input_list dl dd:not(.no_border) {
  border: 0.1rem solid #1a1a1a;
}
#page-contact section.contact .mail_contact form .input_list dl dd input:not([type=radio]),
#page-contact section.contact .mail_contact form .input_list dl dd input:not([type=checkbox]),
#page-contact section.contact .mail_contact form .input_list dl dd textarea {
  display: block;
  width: 100%;
  font-size: 2rem;
  text-box: auto;
  padding: 0.6em 1em;
  -webkit-transition: 0.5s;
  transition: 0.5s;
  cursor: pointer;
}
#page-contact section.contact .mail_contact form .input_list dl dd input:not([type=radio]):hover,
#page-contact section.contact .mail_contact form .input_list dl dd input:not([type=checkbox]):hover,
#page-contact section.contact .mail_contact form .input_list dl dd textarea:hover {
  background-color: rgba(26, 40, 132, 0.1);
}
#page-contact section.contact .mail_contact form .input_list dl dd textarea {
  min-height: 20rem;
  field-sizing: content;
}
#page-contact section.contact .mail_contact form .input_list dl dd .flex {
  margin-top: 2rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 1em clamp(2rem, 4vw, 4rem);
}
#page-contact section.contact .mail_contact form .input_list dl dd .flex + .flex {
  margin-top: 1.5rem;
}
@media print, screen and (min-width: 480px) {
  #page-contact section.contact .mail_contact form .input_list dl dd .flex {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
}
#page-contact section.contact .mail_contact form .input_list dl dd .flex label {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0 0.5rem;
  font-size: 1.8rem;
  -webkit-transition: 0.5s;
  transition: 0.5s;
  cursor: pointer;
}
@media print, screen and (min-width: 480px) {
  #page-contact section.contact .mail_contact form .input_list dl dd .flex label {
    width: calc((100% - clamp(2rem, 4vw, 4rem)) / 2);
  }
}
@media print, screen and (min-width: 768px) {
  #page-contact section.contact .mail_contact form .input_list dl dd .flex label {
    width: calc((100% - clamp(2rem, 4vw, 4rem) * 3) / 4);
    font-size: min(1.75vw, 1.8rem);
  }
}
#page-contact section.contact .mail_contact form .input_list dl dd .flex label:hover {
  opacity: 0.5;
}
#page-contact section.contact .mail_contact form .input_list dl dd .flex label input {
  width: 1.2em;
  aspect-ratio: 1/1;
  accent-color: #1a2884;
  position: relative;
  top: -0.1em;
}
#page-contact section.contact .mail_contact form .privacy_check {
  margin-top: 5rem;
  background-color: #efefef;
  padding: 2.5rem clamp(2rem, 4vw, 4rem);
}
@media print, screen and (min-width: 768px) {
  #page-contact section.contact .mail_contact form .privacy_check p {
    text-align: center;
  }
}
#page-contact section.contact .mail_contact form .privacy_check p a {
  display: inline;
  color: #1a2884;
  font-weight: bold;
  text-decoration: underline;
}
#page-contact section.contact .mail_contact form .privacy_check label {
  margin-top: 2rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0 1rem;
  background-color: #fff;
  padding: 1em 2rem;
  cursor: pointer;
}
#page-contact section.contact .mail_contact form .privacy_check label:hover {
  text-decoration: underline;
}
#page-contact section.contact .mail_contact form .privacy_check label input {
  width: 1.5em;
  aspect-ratio: 1/1;
  border-radius: 1rem;
  accent-color: #1a2884;
}
#page-contact section.contact .mail_contact form .btn_area {
  margin-top: 5rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 0 5%;
}
#page-contact section.contact .mail_contact form .btn_area button {
  width: 47.5%;
  max-width: 35rem;
  color: #fff;
  font-size: 1.8rem;
  font-weight: bold;
  text-align: center;
  border: 0.1rem solid;
  padding: 1.5em 0;
  -webkit-transition: 0.5s;
  transition: 0.5s;
}
#page-contact section.contact .mail_contact form .btn_area button[type=reset], #page-contact section.contact .mail_contact form .btn_area button[type=button] {
  border-color: #1a1a1a;
  background-color: #1a1a1a;
}
#page-contact section.contact .mail_contact form .btn_area button[type=reset]:hover, #page-contact section.contact .mail_contact form .btn_area button[type=button]:hover {
  color: #1a1a1a;
  background-color: #fff;
}
#page-contact section.contact .mail_contact form .btn_area button[type=submit] {
  border-color: #1a2884;
  background-color: #1a2884;
}
#page-contact section.contact .mail_contact form .btn_area button[type=submit]:hover {
  color: #1a2884;
  background-color: #fff;
}
#page-contact section.contact.confirm label,
#page-contact section.contact.confirm input,
#page-contact section.contact.confirm textarea {
  pointer-events: none;
}

#page-privacy {
  font-size: 1.6rem;
}
#page-privacy section.privacy_policy {
  margin-top: clamp(6rem, 8vw, 15rem);
}
#page-privacy .inner.max1000 {
  margin-top: clamp(4rem, 4vw, 4rem);
  max-width: 1000px;
  margin-bottom: clamp(6rem, 10vw, 15rem);
}
#page-privacy .inner.max1000 p {
  margin-top: clamp(4rem, 5vw, 8rem);
}
#page-privacy .inner.max1000 .list {
  margin: clamp(2rem, 4vw, 4rem) 0;
}
#page-privacy .inner.max1000 .list .bg1000 {
  background-color: #efefef;
  padding: clamp(2rem, 2vw, 2rem);
  margin: clamp(2rem, 4vw, 4rem) 0;
}
#page-privacy .inner.max1000 .list .bg1000 h3 {
  font-weight: bold;
}
#page-privacy .inner.max1000 .list ul {
  margin-bottom: clamp(4rem, 8vw, 8rem);
}
#page-privacy .inner.max1000 .list .flex.pl {
  padding-left: 1.6rem;
}
#page-privacy .inner.max1000 .list .flex.mb {
  margin-bottom: clamp(4rem, 8vw, 8rem);
}
#page-privacy .inner.max1000 .list .flex.mgn {
  margin: clamp(2rem, 4vw, 4rem) 0;
}
#page-privacy .inner.max1000 .list .flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin: clamp(2rem, 4vw, 4rem) 0;
}
#page-privacy .inner.max1000 .list .flex .number {
  white-space: nowrap;
}
#page-privacy .inner.max1000 .list .flex .mgn {
  margin: clamp(2rem, 4vw, 4rem) 0;
}

#page404 section.page404 {
  margin: clamp(6rem, 8vw, 15rem) 0;
}
#page404 section.page404 .btn_area {
  margin-top: clamp(4rem, 5vw, 8rem);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 2rem clamp(4rem, 5vw, 8rem);
}
#page404 section.page404 .btn_area .btn {
  margin: 0;
}/*# sourceMappingURL=style.css.map */