@charset "UTF-8";
/*! destyle.css v4.0.0 | MIT License | https://github.com/nicolas-cusan/destyle.css */
/* Reset box-model and set borders */
/* ============================================ */
*,
::before,
::after {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  border-style: solid;
  border-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 {
  -webkit-box-sizing: content-box;
          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;
}

body .color-key-1 {
  color: #60A5D7;
}
body .color-key-2 {
  color: #4c8ebe;
}

body {
  color: #373737;
  background: #ffffff;
  font-family: "A1 Mincho R JIS2004 AP", serif;
  font-size: 1rem;
  font-weight: 400;
}

a {
  text-decoration: none;
  -webkit-transition: all 0.2s cubic-bezier(0.25, 0.25, 0.75, 0.75);
  transition: all 0.2s cubic-bezier(0.25, 0.25, 0.75, 0.75);
  cursor: pointer;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  tap-highlight-color: rgba(0, 0, 0, 0);
}

strong {
  font-weight: 700;
}

sup {
  font-size: 77%;
  line-height: 0.8;
}

body > .page {
  position: relative;
  height: 100%;
}

img.image-fit {
  display: block;
  width: 100%;
  height: auto;
}

.ornament-image img {
  max-width: 100%;
}

span.registered-trademark {
  font-size: 66%;
  vertical-align: top;
}

.mobile-hidden {
  display: none;
}
@media screen and (min-width: 780px) {
  .mobile-hidden {
    display: block;
  }
}

@media screen and (min-width: 960px) {
  .fluid-columns {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
  .fluid-columns.flex {
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .fluid-columns.flex-center {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .fluid-columns.flex-row-reverse {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse;
  }
  .fluid-columns .column.align-flex-start {
    -ms-flex-item-align: start;
        align-self: flex-start;
  }
  .fluid-columns .column.align-flex-end {
    -ms-flex-item-align: end;
        align-self: flex-end;
  }
}
.fluid-columns .column-circle {
  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;
  max-width: 264px;
  min-width: 264px;
  overflow: hidden;
  aspect-ratio: 1/1;
  border: 1px solid #808080;
  border-radius: 100%;
  background: rgba(255, 255, 255, 0.3);
}
@media screen and (min-width: 960px) {
  .fluid-columns .column-circle {
    max-width: none;
    min-width: 336px;
  }
}

.content-std {
  margin-left: auto;
  margin-right: auto;
  padding-left: 30px;
  padding-right: 30px;
}
@media screen and (min-width: 780px) {
  .content-std {
    padding-left: clamp(30px, 10.1041666667%, 97px);
    padding-right: clamp(30px, 10.1041666667%, 97px);
  }
}
@media screen and (min-width: 960px) {
  .content-std {
    padding-left: clamp(97px, 13.6243386243%, 206px);
    padding-right: clamp(97px, 13.6243386243%, 206px);
  }
}

.content-large {
  margin-left: auto;
  margin-right: auto;
  padding-left: 30px;
  padding-right: 30px;
}
@media screen and (min-width: 780px) {
  .content-large {
    padding-left: clamp(30px, 5.7291666667%, 55px);
    padding-right: clamp(30px, 5.7291666667%, 55px);
  }
}
@media screen and (min-width: 960px) {
  .content-large {
    padding-left: clamp(55px, 7.0105820106%, 106px);
    padding-right: clamp(55px, 7.0105820106%, 106px);
  }
}

.content-xlarge {
  margin-left: auto;
  margin-right: auto;
  padding-left: 30px;
  padding-right: 30px;
}
@media screen and (min-width: 780px) {
  .content-xlarge {
    padding-left: clamp(30px, 5.7291666667%, 55px);
    padding-right: clamp(30px, 5.7291666667%, 55px);
  }
}
@media screen and (min-width: 960px) {
  .content-xlarge {
    padding-left: 5px;
    padding-right: 5px;
  }
}

div.separator hr {
  display: none;
}

span.text-row {
  display: block;
}
@media screen and (min-width: 780px) {
  span.text-row {
    display: inline;
  }
}
span.text-row br {
  display: none;
}
@media screen and (min-width: 780px) {
  span.text-row br {
    display: block;
  }
}

span.text-space {
  display: inline-block;
  content: "";
  margin-left: 0.5em;
  margin-right: 0.5em;
}
@media screen and (min-width: 960px) {
  span.text-space {
    margin-left: 0;
    margin-right: 0;
  }
}

.behavior-style:hover img {
  opacity: 0.8;
  cursor: pointer;
}

.behavior-text {
  -webkit-transition: all 0.3s ease-out;
  transition: all 0.3s ease-out;
  cursor: pointer;
}
.behavior-text:hover {
  opacity: 0.285;
  z-index: 2;
}

svg {
  fill: currentColor;
}

.text-mid,
.text-std {
  font-weight: 400;
}

.text-mid {
  font-size: 0.875rem;
  line-height: 1.7;
}
@media screen and (min-width: 780px) {
  .text-mid {
    font-size: 1.125rem;
  }
}

.text-std {
  -webkit-font-feature-settings: "palt" on;
          font-feature-settings: "palt" on;
  font-size: 0.9375rem;
  letter-spacing: 0.1em;
  line-height: 2;
}
@media screen and (min-width: 780px) {
  .text-std {
    font-size: 0.9375rem;
  }
}

.caption,
.tag-line,
.heading,
.heading-small,
.heading-medium,
.heading-large {
  font-weight: 400;
  font-family: "A1 Mincho R JIS2004 AP", serif;
  -webkit-font-feature-settings: "palt" on;
          font-feature-settings: "palt" on;
  letter-spacing: 0.1em;
}

.heading {
  color: #333333;
  font-size: 1.25rem;
  line-height: 1.6;
}

.heading-medium {
  font-size: 1.25rem;
  letter-spacing: 0.12em;
  line-height: 1.5;
}
@media screen and (min-width: 780px) {
  .heading-medium {
    font-size: 1.625rem;
    letter-spacing: 0.15em;
  }
}

.heading-bordered {
  display: inline-block;
  padding-bottom: 0.2em;
  border-bottom: 1px solid #808080;
}

.hgroup-hc {
  text-align: center;
}
.hgroup-hc .heading-hc {
  font-size: 1.5625rem;
  letter-spacing: 0.1em;
  line-height: 1.6;
}
@media screen and (min-width: 780px) {
  .hgroup-hc .heading-hc {
    font-size: 1.875rem;
    letter-spacing: 0.18em;
  }
}
.hgroup-hc .caption-hc {
  margin-top: 18px;
  font-size: 0.8125rem;
  font-family: "Yu Gothic Pr6N M", "ヒラギノ角ゴシック", "Hiragino Kaku Gothic", メイリオ, Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  letter-spacing: 0.1em;
  line-height: 1.8;
}
@media screen and (min-width: 960px) {
  .hgroup-hc .caption-hc {
    margin-top: 36px;
    font-size: 0.9375rem;
    letter-spacing: 0.1em;
  }
}
.hgroup-hc .caption-hc.font-en {
  font-family: "Helvetica Neue", Arial, Helvetica, Geneva, sans-serif;
}

.text-center {
  text-align: center;
}

.text-right {
  text-align: right;
}

.text-justify {
  text-align: justify;
  text-justify: inter-character;
  word-break: break-word;
  overflow-wrap: break-word;
}

@media screen and (min-width: 780px) {
  .text-alt-left {
    text-align: left;
  }
}

@media screen and (min-width: 780px) {
  .text-alt-justify {
    text-align: justify;
  }
}

.uppercase {
  text-transform: uppercase;
}

.bullet {
  font-family: "Lucida Grande", Lucida, Verdana, sans-serif;
}

.lang-en {
  font-family: "Helvetica Neue", Arial, Helvetica, Geneva, sans-serif;
  font-weight: 400;
  font-style: normal;
  -webkit-font-smoothing: antialiased;
}

.lang-cn {
  font-family: "Hei Regular", "SimHei", sans-serif;
}

.font-serif {
  font-family: serif;
}

.font-sans-serif {
  font-family: "Yu Gothic Pr6N M", "ヒラギノ角ゴシック", "Hiragino Kaku Gothic", メイリオ, Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}

.font-en {
  font-family: "Helvetica Neue", Arial, Helvetica, Geneva, sans-serif;
  -webkit-font-feature-settings: "palt" on;
          font-feature-settings: "palt" on;
}

ol.list-std {
  padding: 0 0 0 1.6em;
}
ol.list-std li {
  list-style: decimal;
  margin: 0 0 0.4em;
}

ul.list-std {
  list-style: disc;
  /*
  .text { // # このブロックはテストコードで実際には使っていない
  	$fsm: 12;
  	$fsd: 12;

  	font-size: rem($fsm);
  	letter-spacing: lsp($fsm, 1.8);
  	line-height: 1.4;
  	@include mq(md) {
  		font-size: rem($fsd);
  		letter-spacing: lsp($fsd, 1.8);
  	}
  }*/
}
ul.list-std li {
  line-height: 1.75;
  letter-spacing: 0.05em;
  -webkit-font-feature-settings: "palt" on;
          font-feature-settings: "palt" on;
}
ul.list-std li + li {
  margin-top: 0.2em;
}

ul.list-solid li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 14px;
  border-radius: 8px;
  background: #ffffff;
  line-height: 1.75;
  letter-spacing: 0.05em;
}
ul.list-solid li + li {
  margin-top: 12px;
}
ul.list-solid li .prefix.number {
  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;
  width: 28px;
  height: 28px;
  padding: 10px;
  margin-right: 10px;
  color: #ffffff;
  border-radius: 100%;
  background: #60A5D7;
  font-size: 1rem;
  font-weight: 700;
  line-height: 1;
}
ul.list-solid li .text {
  display: block;
  font-size: 1rem;
  line-height: 1.6;
}
ul.list-solid.color-orange-1 li {
  color: #ffffff;
  background: #60A5D7;
}
ul.list-solid.color-orange-1 li .text {
  font-weight: 700;
}
ul.list-solid.text-center li {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

table span.table-text {
  display: block;
}
table span.table-text + span.table-text {
  margin-top: 0.4em;
}
table span.table-text br {
  display: none;
}
table span.table-text br.inline {
  display: inline;
}

table.table-std {
  line-height: 1.57;
}
table.table-std tr + tr th, table.table-std tr + tr td {
  padding-top: 0.625rem;
}
table.table-std th {
  padding-right: 2em;
  font-weight: 700;
}
table.table-std td {
  font-weight: 700;
}

.code-sample-block {
  padding: 100px 0;
}
.code-sample-block .button {
  display: inline-block;
  margin-top: 20px;
}

/**
 * Swiper 8.2.4
 * Most modern mobile touch slider and framework with hardware accelerated transitions
 * https://swiperjs.com
 *
 * Copyright 2014-2022 Vladimir Kharlampidi
 *
 * Released under the MIT License
 *
 * Released on: June 13, 2022
 */
@font-face {
  font-family: swiper-icons;
  src: url("data:application/font-woff;charset=utf-8;base64, d09GRgABAAAAAAZgABAAAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABGRlRNAAAGRAAAABoAAAAci6qHkUdERUYAAAWgAAAAIwAAACQAYABXR1BPUwAABhQAAAAuAAAANuAY7+xHU1VCAAAFxAAAAFAAAABm2fPczU9TLzIAAAHcAAAASgAAAGBP9V5RY21hcAAAAkQAAACIAAABYt6F0cBjdnQgAAACzAAAAAQAAAAEABEBRGdhc3AAAAWYAAAACAAAAAj//wADZ2x5ZgAAAywAAADMAAAD2MHtryVoZWFkAAABbAAAADAAAAA2E2+eoWhoZWEAAAGcAAAAHwAAACQC9gDzaG10eAAAAigAAAAZAAAArgJkABFsb2NhAAAC0AAAAFoAAABaFQAUGG1heHAAAAG8AAAAHwAAACAAcABAbmFtZQAAA/gAAAE5AAACXvFdBwlwb3N0AAAFNAAAAGIAAACE5s74hXjaY2BkYGAAYpf5Hu/j+W2+MnAzMYDAzaX6QjD6/4//Bxj5GA8AuRwMYGkAPywL13jaY2BkYGA88P8Agx4j+/8fQDYfA1AEBWgDAIB2BOoAeNpjYGRgYNBh4GdgYgABEMnIABJzYNADCQAACWgAsQB42mNgYfzCOIGBlYGB0YcxjYGBwR1Kf2WQZGhhYGBiYGVmgAFGBiQQkOaawtDAoMBQxXjg/wEGPcYDDA4wNUA2CCgwsAAAO4EL6gAAeNpj2M0gyAACqxgGNWBkZ2D4/wMA+xkDdgAAAHjaY2BgYGaAYBkGRgYQiAHyGMF8FgYHIM3DwMHABGQrMOgyWDLEM1T9/w8UBfEMgLzE////P/5//f/V/xv+r4eaAAeMbAxwIUYmIMHEgKYAYjUcsDAwsLKxc3BycfPw8jEQA/gZBASFhEVExcQlJKWkZWTl5BUUlZRVVNXUNTQZBgMAAMR+E+gAEQFEAAAAKgAqACoANAA+AEgAUgBcAGYAcAB6AIQAjgCYAKIArAC2AMAAygDUAN4A6ADyAPwBBgEQARoBJAEuATgBQgFMAVYBYAFqAXQBfgGIAZIBnAGmAbIBzgHsAAB42u2NMQ6CUAyGW568x9AneYYgm4MJbhKFaExIOAVX8ApewSt4Bic4AfeAid3VOBixDxfPYEza5O+Xfi04YADggiUIULCuEJK8VhO4bSvpdnktHI5QCYtdi2sl8ZnXaHlqUrNKzdKcT8cjlq+rwZSvIVczNiezsfnP/uznmfPFBNODM2K7MTQ45YEAZqGP81AmGGcF3iPqOop0r1SPTaTbVkfUe4HXj97wYE+yNwWYxwWu4v1ugWHgo3S1XdZEVqWM7ET0cfnLGxWfkgR42o2PvWrDMBSFj/IHLaF0zKjRgdiVMwScNRAoWUoH78Y2icB/yIY09An6AH2Bdu/UB+yxopYshQiEvnvu0dURgDt8QeC8PDw7Fpji3fEA4z/PEJ6YOB5hKh4dj3EvXhxPqH/SKUY3rJ7srZ4FZnh1PMAtPhwP6fl2PMJMPDgeQ4rY8YT6Gzao0eAEA409DuggmTnFnOcSCiEiLMgxCiTI6Cq5DZUd3Qmp10vO0LaLTd2cjN4fOumlc7lUYbSQcZFkutRG7g6JKZKy0RmdLY680CDnEJ+UMkpFFe1RN7nxdVpXrC4aTtnaurOnYercZg2YVmLN/d/gczfEimrE/fs/bOuq29Zmn8tloORaXgZgGa78yO9/cnXm2BpaGvq25Dv9S4E9+5SIc9PqupJKhYFSSl47+Qcr1mYNAAAAeNptw0cKwkAAAMDZJA8Q7OUJvkLsPfZ6zFVERPy8qHh2YER+3i/BP83vIBLLySsoKimrqKqpa2hp6+jq6RsYGhmbmJqZSy0sraxtbO3sHRydnEMU4uR6yx7JJXveP7WrDycAAAAAAAH//wACeNpjYGRgYOABYhkgZgJCZgZNBkYGLQZtIJsFLMYAAAw3ALgAeNolizEKgDAQBCchRbC2sFER0YD6qVQiBCv/H9ezGI6Z5XBAw8CBK/m5iQQVauVbXLnOrMZv2oLdKFa8Pjuru2hJzGabmOSLzNMzvutpB3N42mNgZGBg4GKQYzBhYMxJLMlj4GBgAYow/P/PAJJhLM6sSoWKfWCAAwDAjgbRAAB42mNgYGBkAIIbCZo5IPrmUn0hGA0AO8EFTQAA");
  font-weight: 400;
  font-style: normal;
}
:root {
  --swiper-theme-color:#007aff;
}

.swiper {
  margin-left: auto;
  margin-right: auto;
  position: relative;
  overflow: hidden;
  list-style: none;
  padding: 0;
  z-index: 1;
}

.swiper-vertical > .swiper-wrapper {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}

.swiper-wrapper {
  position: relative;
  width: 100%;
  height: 100%;
  z-index: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-transition-property: -webkit-transform;
  transition-property: -webkit-transform;
  transition-property: transform;
  transition-property: transform, -webkit-transform;
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
}

.swiper-android .swiper-slide, .swiper-wrapper {
  -webkit-transform: translate3d(0px, 0, 0);
          transform: translate3d(0px, 0, 0);
}

.swiper-pointer-events {
  -ms-touch-action: pan-y;
      touch-action: pan-y;
}

.swiper-pointer-events.swiper-vertical {
  -ms-touch-action: pan-x;
      touch-action: pan-x;
}

.swiper-slide {
  -ms-flex-negative: 0;
      flex-shrink: 0;
  width: 100%;
  height: 100%;
  position: relative;
  -webkit-transition-property: -webkit-transform;
  transition-property: -webkit-transform;
  transition-property: transform;
  transition-property: transform, -webkit-transform;
}

.swiper-slide-invisible-blank {
  visibility: hidden;
}

.swiper-autoheight, .swiper-autoheight .swiper-slide {
  height: auto;
}

.swiper-autoheight .swiper-wrapper {
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-transition-property: height, -webkit-transform;
  transition-property: height, -webkit-transform;
  transition-property: transform, height;
  transition-property: transform, height, -webkit-transform;
}

.swiper-backface-hidden .swiper-slide {
  -webkit-transform: translateZ(0);
          transform: translateZ(0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}

.swiper-3d, .swiper-3d.swiper-css-mode .swiper-wrapper {
  -webkit-perspective: 1200px;
          perspective: 1200px;
}

.swiper-3d .swiper-cube-shadow, .swiper-3d .swiper-slide, .swiper-3d .swiper-slide-shadow, .swiper-3d .swiper-slide-shadow-bottom, .swiper-3d .swiper-slide-shadow-left, .swiper-3d .swiper-slide-shadow-right, .swiper-3d .swiper-slide-shadow-top, .swiper-3d .swiper-wrapper {
  -webkit-transform-style: preserve-3d;
          transform-style: preserve-3d;
}

.swiper-3d .swiper-slide-shadow, .swiper-3d .swiper-slide-shadow-bottom, .swiper-3d .swiper-slide-shadow-left, .swiper-3d .swiper-slide-shadow-right, .swiper-3d .swiper-slide-shadow-top {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  z-index: 10;
}

.swiper-3d .swiper-slide-shadow {
  background: rgba(0, 0, 0, 0.15);
}

.swiper-3d .swiper-slide-shadow-left {
  background-image: -webkit-gradient(linear, right top, left top, from(rgba(0, 0, 0, 0.5)), to(rgba(0, 0, 0, 0)));
  background-image: linear-gradient(to left, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}

.swiper-3d .swiper-slide-shadow-right {
  background-image: -webkit-gradient(linear, left top, right top, from(rgba(0, 0, 0, 0.5)), to(rgba(0, 0, 0, 0)));
  background-image: linear-gradient(to right, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}

.swiper-3d .swiper-slide-shadow-top {
  background-image: -webkit-gradient(linear, left bottom, left top, from(rgba(0, 0, 0, 0.5)), to(rgba(0, 0, 0, 0)));
  background-image: linear-gradient(to top, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}

.swiper-3d .swiper-slide-shadow-bottom {
  background-image: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0.5)), to(rgba(0, 0, 0, 0)));
  background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}

.swiper-css-mode > .swiper-wrapper {
  overflow: auto;
  scrollbar-width: none;
  -ms-overflow-style: none;
}

.swiper-css-mode > .swiper-wrapper::-webkit-scrollbar {
  display: none;
}

.swiper-css-mode > .swiper-wrapper > .swiper-slide {
  scroll-snap-align: start start;
}

.swiper-horizontal.swiper-css-mode > .swiper-wrapper {
  -ms-scroll-snap-type: x mandatory;
      scroll-snap-type: x mandatory;
}

.swiper-vertical.swiper-css-mode > .swiper-wrapper {
  -ms-scroll-snap-type: y mandatory;
      scroll-snap-type: y mandatory;
}

.swiper-centered > .swiper-wrapper::before {
  content: "";
  -ms-flex-negative: 0;
      flex-shrink: 0;
  -webkit-box-ordinal-group: 10000;
      -ms-flex-order: 9999;
          order: 9999;
}

.swiper-centered.swiper-horizontal > .swiper-wrapper > .swiper-slide:first-child {
  -webkit-margin-start: var(--swiper-centered-offset-before);
          margin-inline-start: var(--swiper-centered-offset-before);
}

.swiper-centered.swiper-horizontal > .swiper-wrapper::before {
  height: 100%;
  min-height: 1px;
  width: var(--swiper-centered-offset-after);
}

.swiper-centered.swiper-vertical > .swiper-wrapper > .swiper-slide:first-child {
  -webkit-margin-before: var(--swiper-centered-offset-before);
          margin-block-start: var(--swiper-centered-offset-before);
}

.swiper-centered.swiper-vertical > .swiper-wrapper::before {
  width: 100%;
  min-width: 1px;
  height: var(--swiper-centered-offset-after);
}

.swiper-centered > .swiper-wrapper > .swiper-slide {
  scroll-snap-align: center center;
}

.swiper-virtual .swiper-slide {
  -webkit-backface-visibility: hidden;
  -webkit-transform: translateZ(0);
          transform: translateZ(0);
}

.swiper-virtual.swiper-css-mode .swiper-wrapper::after {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  pointer-events: none;
}

.swiper-virtual.swiper-css-mode.swiper-horizontal .swiper-wrapper::after {
  height: 1px;
  width: var(--swiper-virtual-size);
}

.swiper-virtual.swiper-css-mode.swiper-vertical .swiper-wrapper::after {
  width: 1px;
  height: var(--swiper-virtual-size);
}

:root {
  --swiper-navigation-size:44px;
}

.swiper-button-next, .swiper-button-prev {
  position: absolute;
  top: 50%;
  width: calc(var(--swiper-navigation-size) / 44 * 27);
  height: var(--swiper-navigation-size);
  margin-top: calc(0px - var(--swiper-navigation-size) / 2);
  z-index: 10;
  cursor: pointer;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  color: var(--swiper-navigation-color, var(--swiper-theme-color));
}

.swiper-button-next.swiper-button-disabled, .swiper-button-prev.swiper-button-disabled {
  opacity: 0.35;
  cursor: auto;
  pointer-events: none;
}

.swiper-button-next.swiper-button-hidden, .swiper-button-prev.swiper-button-hidden {
  opacity: 0;
  cursor: auto;
  pointer-events: none;
}

.swiper-navigation-disabled .swiper-button-next, .swiper-navigation-disabled .swiper-button-prev {
  display: none !important;
}

.swiper-button-next:after, .swiper-button-prev:after {
  font-family: swiper-icons;
  font-size: var(--swiper-navigation-size);
  text-transform: none !important;
  letter-spacing: 0;
  font-variant: initial;
  line-height: 1;
}

.swiper-button-prev, .swiper-rtl .swiper-button-next {
  left: 10px;
  right: auto;
}

.swiper-button-prev:after, .swiper-rtl .swiper-button-next:after {
  content: "prev";
}

.swiper-button-next, .swiper-rtl .swiper-button-prev {
  right: 10px;
  left: auto;
}

.swiper-button-next:after, .swiper-rtl .swiper-button-prev:after {
  content: "next";
}

.swiper-button-lock {
  display: none;
}

.swiper-pagination {
  position: absolute;
  text-align: center;
  -webkit-transition: 0.3s opacity;
  transition: 0.3s opacity;
  -webkit-transform: translate3d(0, 0, 0);
          transform: translate3d(0, 0, 0);
  z-index: 10;
}

.swiper-pagination.swiper-pagination-hidden {
  opacity: 0;
}

.swiper-pagination-disabled > .swiper-pagination, .swiper-pagination.swiper-pagination-disabled {
  display: none !important;
}

.swiper-horizontal > .swiper-pagination-bullets, .swiper-pagination-bullets.swiper-pagination-horizontal, .swiper-pagination-custom, .swiper-pagination-fraction {
  bottom: 10px;
  left: 0;
  width: 100%;
}

.swiper-pagination-bullets-dynamic {
  overflow: hidden;
  font-size: 0;
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  -webkit-transform: scale(0.33);
          transform: scale(0.33);
  position: relative;
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active {
  -webkit-transform: scale(1);
          transform: scale(1);
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-main {
  -webkit-transform: scale(1);
          transform: scale(1);
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev {
  -webkit-transform: scale(0.66);
          transform: scale(0.66);
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev-prev {
  -webkit-transform: scale(0.33);
          transform: scale(0.33);
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next {
  -webkit-transform: scale(0.66);
          transform: scale(0.66);
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next-next {
  -webkit-transform: scale(0.33);
          transform: scale(0.33);
}

.swiper-pagination-bullet {
  width: var(--swiper-pagination-bullet-width, var(--swiper-pagination-bullet-size, 8px));
  height: var(--swiper-pagination-bullet-height, var(--swiper-pagination-bullet-size, 8px));
  display: inline-block;
  border-radius: 50%;
  background: var(--swiper-pagination-bullet-inactive-color, #000);
  opacity: var(--swiper-pagination-bullet-inactive-opacity, 0.2);
}

button.swiper-pagination-bullet {
  border: none;
  margin: 0;
  padding: 0;
  -webkit-box-shadow: none;
          box-shadow: none;
  -webkit-appearance: none;
  -moz-appearance: none;
       appearance: none;
}

.swiper-pagination-clickable .swiper-pagination-bullet {
  cursor: pointer;
}

.swiper-pagination-bullet:only-child {
  display: none !important;
}

.swiper-pagination-bullet-active {
  opacity: var(--swiper-pagination-bullet-opacity, 1);
  background: var(--swiper-pagination-color, var(--swiper-theme-color));
}

.swiper-pagination-vertical.swiper-pagination-bullets, .swiper-vertical > .swiper-pagination-bullets {
  right: 10px;
  top: 50%;
  -webkit-transform: translate3d(0px, -50%, 0);
          transform: translate3d(0px, -50%, 0);
}

.swiper-pagination-vertical.swiper-pagination-bullets .swiper-pagination-bullet, .swiper-vertical > .swiper-pagination-bullets .swiper-pagination-bullet {
  margin: var(--swiper-pagination-bullet-vertical-gap, 6px) 0;
  display: block;
}

.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic, .swiper-vertical > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 8px;
}

.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet, .swiper-vertical > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  display: inline-block;
  -webkit-transition: 0.2s top, 0.2s -webkit-transform;
  transition: 0.2s top, 0.2s -webkit-transform;
  transition: 0.2s transform, 0.2s top;
  transition: 0.2s transform, 0.2s top, 0.2s -webkit-transform;
}

.swiper-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet, .swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet {
  margin: 0 var(--swiper-pagination-bullet-horizontal-gap, 4px);
}

.swiper-horizontal > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic, .swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  white-space: nowrap;
}

.swiper-horizontal > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet, .swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  -webkit-transition: 0.2s left, 0.2s -webkit-transform;
  transition: 0.2s left, 0.2s -webkit-transform;
  transition: 0.2s transform, 0.2s left;
  transition: 0.2s transform, 0.2s left, 0.2s -webkit-transform;
}

.swiper-horizontal.swiper-rtl > .swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  -webkit-transition: 0.2s right, 0.2s -webkit-transform;
  transition: 0.2s right, 0.2s -webkit-transform;
  transition: 0.2s transform, 0.2s right;
  transition: 0.2s transform, 0.2s right, 0.2s -webkit-transform;
}

.swiper-pagination-progressbar {
  background: rgba(0, 0, 0, 0.25);
  position: absolute;
}

.swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
  background: var(--swiper-pagination-color, var(--swiper-theme-color));
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  -webkit-transform: scale(0);
          transform: scale(0);
  -webkit-transform-origin: left top;
          transform-origin: left top;
}

.swiper-rtl .swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
  -webkit-transform-origin: right top;
          transform-origin: right top;
}

.swiper-horizontal > .swiper-pagination-progressbar, .swiper-pagination-progressbar.swiper-pagination-horizontal, .swiper-pagination-progressbar.swiper-pagination-vertical.swiper-pagination-progressbar-opposite, .swiper-vertical > .swiper-pagination-progressbar.swiper-pagination-progressbar-opposite {
  width: 100%;
  height: 4px;
  left: 0;
  top: 0;
}

.swiper-horizontal > .swiper-pagination-progressbar.swiper-pagination-progressbar-opposite, .swiper-pagination-progressbar.swiper-pagination-horizontal.swiper-pagination-progressbar-opposite, .swiper-pagination-progressbar.swiper-pagination-vertical, .swiper-vertical > .swiper-pagination-progressbar {
  width: 4px;
  height: 100%;
  left: 0;
  top: 0;
}

.swiper-pagination-lock {
  display: none;
}

.swiper-scrollbar {
  border-radius: 10px;
  position: relative;
  -ms-touch-action: none;
  background: rgba(0, 0, 0, 0.1);
}

.swiper-scrollbar-disabled > .swiper-scrollbar, .swiper-scrollbar.swiper-scrollbar-disabled {
  display: none !important;
}

.swiper-horizontal > .swiper-scrollbar, .swiper-scrollbar.swiper-scrollbar-horizontal {
  position: absolute;
  left: 1%;
  bottom: 3px;
  z-index: 50;
  height: 5px;
  width: 98%;
}

.swiper-scrollbar.swiper-scrollbar-vertical, .swiper-vertical > .swiper-scrollbar {
  position: absolute;
  right: 3px;
  top: 1%;
  z-index: 50;
  width: 5px;
  height: 98%;
}

.swiper-scrollbar-drag {
  height: 100%;
  width: 100%;
  position: relative;
  background: rgba(0, 0, 0, 0.5);
  border-radius: 10px;
  left: 0;
  top: 0;
}

.swiper-scrollbar-cursor-drag {
  cursor: move;
}

.swiper-scrollbar-lock {
  display: none;
}

.swiper-zoom-container {
  width: 100%;
  height: 100%;
  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;
  text-align: center;
}

.swiper-zoom-container > canvas, .swiper-zoom-container > img, .swiper-zoom-container > svg {
  max-width: 100%;
  max-height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}

.swiper-slide-zoomed {
  cursor: move;
}

.swiper-lazy-preloader {
  width: 42px;
  height: 42px;
  position: absolute;
  left: 50%;
  top: 50%;
  margin-left: -21px;
  margin-top: -21px;
  z-index: 10;
  -webkit-transform-origin: 50%;
          transform-origin: 50%;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  border: 4px solid var(--swiper-preloader-color, var(--swiper-theme-color));
  border-radius: 50%;
  border-top-color: transparent;
}

.swiper-watch-progress .swiper-slide-visible .swiper-lazy-preloader, .swiper:not(.swiper-watch-progress) .swiper-lazy-preloader {
  -webkit-animation: swiper-preloader-spin 1s infinite linear;
          animation: swiper-preloader-spin 1s infinite linear;
}

.swiper-lazy-preloader-white {
  --swiper-preloader-color:#fff;
}

.swiper-lazy-preloader-black {
  --swiper-preloader-color:#000;
}

@-webkit-keyframes swiper-preloader-spin {
  0% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg);
  }
}

@keyframes swiper-preloader-spin {
  0% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg);
  }
}
.swiper .swiper-notification {
  position: absolute;
  left: 0;
  top: 0;
  pointer-events: none;
  opacity: 0;
  z-index: -1000;
}

.swiper-free-mode > .swiper-wrapper {
  -webkit-transition-timing-function: ease-out;
          transition-timing-function: ease-out;
  margin: 0 auto;
}

.swiper-grid > .swiper-wrapper {
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

.swiper-grid-column > .swiper-wrapper {
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}

.swiper-fade.swiper-free-mode .swiper-slide {
  -webkit-transition-timing-function: ease-out;
          transition-timing-function: ease-out;
}

.swiper-fade .swiper-slide {
  pointer-events: none;
  -webkit-transition-property: opacity;
  transition-property: opacity;
}

.swiper-fade .swiper-slide .swiper-slide {
  pointer-events: none;
}

.swiper-fade .swiper-slide-active, .swiper-fade .swiper-slide-active .swiper-slide-active {
  pointer-events: auto;
}

.swiper-cube {
  overflow: visible;
}

.swiper-cube .swiper-slide {
  pointer-events: none;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  z-index: 1;
  visibility: hidden;
  -webkit-transform-origin: 0 0;
          transform-origin: 0 0;
  width: 100%;
  height: 100%;
}

.swiper-cube .swiper-slide .swiper-slide {
  pointer-events: none;
}

.swiper-cube.swiper-rtl .swiper-slide {
  -webkit-transform-origin: 100% 0;
          transform-origin: 100% 0;
}

.swiper-cube .swiper-slide-active, .swiper-cube .swiper-slide-active .swiper-slide-active {
  pointer-events: auto;
}

.swiper-cube .swiper-slide-active, .swiper-cube .swiper-slide-next, .swiper-cube .swiper-slide-next + .swiper-slide, .swiper-cube .swiper-slide-prev {
  pointer-events: auto;
  visibility: visible;
}

.swiper-cube .swiper-slide-shadow-bottom, .swiper-cube .swiper-slide-shadow-left, .swiper-cube .swiper-slide-shadow-right, .swiper-cube .swiper-slide-shadow-top {
  z-index: 0;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}

.swiper-cube .swiper-cube-shadow {
  position: absolute;
  left: 0;
  bottom: 0px;
  width: 100%;
  height: 100%;
  opacity: 0.6;
  z-index: 0;
}

.swiper-cube .swiper-cube-shadow:before {
  content: "";
  background: #000;
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  right: 0;
  -webkit-filter: blur(50px);
          filter: blur(50px);
}

.swiper-flip {
  overflow: visible;
}

.swiper-flip .swiper-slide {
  pointer-events: none;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  z-index: 1;
}

.swiper-flip .swiper-slide .swiper-slide {
  pointer-events: none;
}

.swiper-flip .swiper-slide-active, .swiper-flip .swiper-slide-active .swiper-slide-active {
  pointer-events: auto;
}

.swiper-flip .swiper-slide-shadow-bottom, .swiper-flip .swiper-slide-shadow-left, .swiper-flip .swiper-slide-shadow-right, .swiper-flip .swiper-slide-shadow-top {
  z-index: 0;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}

.swiper-creative .swiper-slide {
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  overflow: hidden;
  -webkit-transition-property: opacity, height, -webkit-transform;
  transition-property: opacity, height, -webkit-transform;
  transition-property: transform, opacity, height;
  transition-property: transform, opacity, height, -webkit-transform;
}

.swiper-cards {
  overflow: visible;
}

.swiper-cards .swiper-slide {
  -webkit-transform-origin: center bottom;
          transform-origin: center bottom;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  overflow: hidden;
}

._formrun_gotcha {
  overflow: hidden;
  position: absolute !important;
  width: 1px;
  height: 1px;
}

* [data-formrun-show-if-error] {
  display: none;
}

* [data-formrun-show-if-error].formrun-system-show {
  display: block;
}

body.formrun-system-confirm [data-formrun-hide-if-confirm],
body:not(.formrun-system-confirm) [data-formrun-show-if-confirm] {
  display: none;
}

[data-formrun-back-button]:not(.formrun-system-show),
[data-formrun-show-if-error]:not(.formrun-system-show),
[data-formrun-show-if-success]:not(.formrun-system-show) {
  display: none;
}

body:not(.formrun-system-confirm) .btn-submit {
  display: none;
}

.page-header {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 91px;
  background: #ffffff;
  z-index: 99;
}
@media screen and (min-width: 780px) {
  .page-header {
    height: 91px;
  }
}
@media screen and (min-width: 960px) {
  .page-header {
    height: 130px;
  }
}
.page-header .container {
  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;
  height: 100%;
  padding-left: 30px;
  padding-right: 30px;
}
@media screen and (min-width: 780px) {
  .page-header .container {
    padding-left: 30px;
    padding-right: 30px;
  }
}
@media screen and (min-width: 960px) {
  .page-header .container {
    padding-left: 97px;
    padding-right: 97px;
  }
}
.page-header .logo {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  height: 100%;
}
.page-header .logo img {
  height: 100%;
  width: auto;
}
.page-header .navigation {
  display: none;
}
@media screen and (min-width: 1024px) {
  .page-header .navigation {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
}

.page-body {
  width: 100%;
  padding-top: 130px;
}
.drawer-open .page-body {
  display: none;
}
.page-body > .container {
  width: auto;
  margin: 0 auto;
}
.page-footer.bg-green {
  background: url(../images/format/footer_bg_2.webp) no-repeat top center;
}
@media screen and (min-width: 780px) {
  .page-footer.bg-green .container {
    background: url(../images/format/footer_bg_2.webp) no-repeat top center;
    background-size: cover;
  }
}
.page-footer.bg-green .fluid-columns .column-sitemap {
  background: url(../images/format/footer_bg_2.webp) no-repeat top center;
  background-size: cover;
}
@media screen and (min-width: 780px) {
  .page-footer.bg-green .fluid-columns .column-sitemap {
    background: none;
  }
}
.page-footer.bg-water .container {
  background: url(../images/format/footer_bg_3.webp) no-repeat top center;
}
@media screen and (min-width: 780px) {
  .page-footer.bg-water .container {
    background: url(../images/format/footer_bg_3.webp) no-repeat top center;
    background-size: cover;
  }
}
.page-footer.bg-water .fluid-columns .column-sitemap {
  background: url(../images/format/footer_bg_3.webp) no-repeat top center;
  background-size: cover;
}
@media screen and (min-width: 780px) {
  .page-footer.bg-water .fluid-columns .column-sitemap {
    background: none;
  }
}
.drawer-open .page-footer {
  display: none;
}
.page-footer .container {
  position: relative;
}
@media screen and (min-width: 780px) {
  .page-footer .container {
    padding-left: clamp(30px, 10.1041666667%, 97px);
    padding-right: clamp(30px, 10.1041666667%, 97px);
    background: url(../images/format/footer_bg.webp) no-repeat top center;
    background-size: cover;
  }
}
@media screen and (min-width: 960px) {
  .page-footer .container {
    padding-left: clamp(97px, 13.6243386243%, 206px);
    padding-right: clamp(97px, 13.6243386243%, 206px);
  }
}
@media screen and (min-width: 780px) {
  .page-footer .container::after {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 44.1798941799%;
    height: 100%;
    background: #f8f8f8;
  }
}
.page-footer .fluid-columns {
  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: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  position: relative;
  z-index: 1;
}
@media screen and (min-width: 780px) {
  .page-footer .fluid-columns {
    -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;
    max-width: 1100px;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
  }
}
.page-footer .fluid-columns .column-contact {
  width: 100%;
  padding-top: 68px;
  padding-bottom: 78px;
  background: #f8f8f8;
}
@media screen and (min-width: 780px) {
  .page-footer .fluid-columns .column-contact {
    -ms-flex-preferred-size: 42%;
        flex-basis: 42%;
    width: auto;
    padding-top: 80px;
    padding-bottom: 80px;
    background: none;
  }
}
.page-footer .fluid-columns .column-sitemap {
  width: 100%;
  padding-top: 76px;
  padding-bottom: 100px;
  background: url(../images/format/footer_bg.webp) no-repeat top center;
  background-size: cover;
}
@media screen and (min-width: 780px) {
  .page-footer .fluid-columns .column-sitemap {
    -ms-flex-preferred-size: 58%;
        flex-basis: 58%;
    width: auto;
    padding-top: 80px;
    padding-bottom: 80px;
    background: none;
  }
}
@media screen and (min-width: 780px) {
  .page-footer section.contact {
    max-width: 350px;
    margin-right: 21.645021645%;
  }
}
.page-footer section.contact .header {
  max-width: 114px;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (min-width: 780px) {
  .page-footer section.contact .header {
    max-width: 133px;
    margin-left: 0;
  }
}
.page-footer section.contact .text-group {
  max-width: 330px;
  margin-top: 48px;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (min-width: 780px) {
  .page-footer section.contact .text-group {
    margin-top: 44px;
    margin-left: 0;
    margin-right: 0;
  }
}
.page-footer section.contact .heading-medium {
  text-align: center;
}
@media screen and (min-width: 780px) {
  .page-footer section.contact .heading-medium {
    text-align: left;
  }
}
.page-footer section.contact .text-std {
  margin-top: 9px;
}
@media screen and (min-width: 780px) {
  .page-footer section.contact .text-std {
    margin-top: 12px;
  }
}
.page-footer section.contact .button {
  max-width: 170px;
  margin-top: 26px;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (min-width: 780px) {
  .page-footer section.contact .button {
    max-width: 180px;
    margin-top: 21px;
    margin-left: 0;
  }
}
.page-footer .categories {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  gap: 40px 60px;
  max-width: 285px;
  max-height: 210px;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (min-width: 780px) {
  .page-footer .categories {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    gap: 46px 60px;
    max-width: 340px;
    width: auto;
    max-height: 350px;
    margin-right: auto;
    margin-left: 15.6739811912%;
    margin-right: 0;
  }
}
.page-footer .categories .category {
  max-width: 146px;
}
@media screen and (min-width: 780px) {
  .page-footer .categories .category {
    max-width: 170px;
  }
}
.page-footer .categories .category.philosophy .category-header .text, .page-footer .categories .category.service .category-header .text, .page-footer .categories .category.shalom-lab .category-header .text {
  font-size: 1.4375rem;
  letter-spacing: 0.1em;
  line-height: 1.2;
  padding-bottom: 0;
}
.page-footer .categories .contact .category-item {
  text-transform: capitalize;
}
.page-footer .categories .category-header a {
  display: inline-block;
  overflow: hidden;
  position: relative;
  text-decoration: none;
  text-align: center;
}
@media screen and (min-width: 780px) {
  .page-footer .categories .category-header a {
    text-align: left;
  }
}
.page-footer .categories .category-header a::before, .page-footer .categories .category-header a::after {
  content: "";
  display: block;
  position: absolute;
  bottom: 0;
  width: 100%;
  height: 1px;
  margin-top: 0;
  background: #808080;
}
.page-footer .categories .category-header a::before {
  opacity: 0;
  -webkit-transition: all 0.15s ease-out 0.15s;
  transition: all 0.15s ease-out 0.15s;
  z-index: 1;
}
.page-footer .categories .category-header a::after {
  -webkit-transition: all 0.3s cubic-bezier(0.34, 0.19, 0.27, 1.55);
  transition: all 0.3s cubic-bezier(0.34, 0.19, 0.27, 1.55);
  z-index: 2;
}
.page-footer .categories .category-header a:hover::before {
  opacity: 1;
}
.page-footer .categories .category-header a:hover::after {
  -webkit-transform: translate(200%, 0);
          transform: translate(200%, 0);
}
.page-footer .categories .category-header .text {
  display: inline-block;
  padding-bottom: 0.5em;
  -webkit-font-feature-settings: "palt" on;
          font-feature-settings: "palt" on;
  font-size: 1.0625rem;
  letter-spacing: 0.1em;
  line-height: 1.2;
}
@media screen and (min-width: 780px) {
  .page-footer .categories .category-header .text {
    font-size: 1.0625rem;
    letter-spacing: 0.1em;
  }
}
.page-footer .categories ul {
  display: none;
}
@media screen and (min-width: 780px) {
  .page-footer .categories ul {
    display: block;
    margin-top: 15px;
  }
}
.page-footer .categories li {
  font-size: 0.8125rem;
  line-height: 1.2;
  letter-spacing: 0.05em;
  letter-spacing: 1.3px;
  text-transform: uppercase;
}
.page-footer .categories li + li {
  margin-top: 0.6em;
}
.page-footer .categories li a {
  display: inline-block;
  padding: 0.3em 0;
}
.page-footer #copyright {
  max-width: 265px;
  max-height: 210px;
  margin-top: 56px;
  margin-left: auto;
  margin-right: auto;
  font-size: 0.6875rem;
  letter-spacing: 0.1em;
  text-align: left;
}
@media screen and (min-width: 780px) {
  .page-footer #copyright {
    position: absolute;
    right: 50px;
    bottom: 50px;
    margin-top: 0;
    margin-left: 0;
    margin-right: 0;
    font-size: 0.625rem;
    letter-spacing: 0.2em;
    text-align: right;
  }
}

.drawer-control {
  display: block;
  position: fixed;
  width: 100%;
  top: 0;
  left: 0;
  z-index: 110;
}
@media screen and (min-width: 1024px) {
  .drawer-control {
    display: none;
  }
}
.drawer-control .drawer-hamburger {
  display: block;
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  position: absolute;
  width: 40px;
  height: 40px;
  top: 45px;
  right: 26px;
  padding: 0;
  outline: 0;
  -webkit-transition: all 0.6s cubic-bezier(0.19, 1, 0.22, 1);
  transition: all 0.6s cubic-bezier(0.19, 1, 0.22, 1);
  -webkit-transform: translateZ(0);
          transform: translateZ(0);
  cursor: pointer;
}
.drawer-control .drawer-hamburger:hover {
  cursor: pointer;
}
@media screen and (min-width: 780px) {
  .drawer-control .drawer-hamburger {
    right: 52px;
  }
}
.drawer-control .drawer-hamburger .drawer-hamburger-icon {
  position: relative;
  display: block;
  width: 31px;
  left: 50%;
  height: 1px;
  margin: 0 0 0 -15.5px;
  background-color: transparent;
}
.drawer-control .drawer-hamburger .drawer-hamburger-icon:after, .drawer-control .drawer-hamburger .drawer-hamburger-icon:before {
  content: "";
  position: absolute;
  top: -3.365px;
  left: 0;
  width: 31px;
  height: 1px;
  -webkit-transition: all 0.6s cubic-bezier(0.19, 1, 0.22, 1);
  transition: all 0.6s cubic-bezier(0.19, 1, 0.22, 1);
  background-color: #808080;
}
.drawer-control .drawer-hamburger .drawer-hamburger-icon:after {
  top: 3.365px;
}
.drawer-control .drawer-hamburger .sr-only {
  position: absolute;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  border: 0;
}
.drawer-control .drawer-hamburger .sr-only-focusable:active, .drawer-control .drawer-hamburger .sr-only-focusable:focus {
  position: static;
  overflow: visible;
  clip: auto;
  width: auto;
  height: auto;
  margin: 0;
}

body.drawer-open .drawer-control .drawer-hamburger .drawer-hamburger-icon {
  background: transparent;
}
body.drawer-open .drawer-control .drawer-hamburger .drawer-hamburger-icon:after, body.drawer-open .drawer-control .drawer-hamburger .drawer-hamburger-icon:before {
  top: 0;
}
body.drawer-open .drawer-control .drawer-hamburger .drawer-hamburger-icon:before {
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}
body.drawer-open .drawer-control .drawer-hamburger .drawer-hamburger-icon:after {
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
}

.navigation {
  display: none;
  position: absolute;
  overflow: hidden;
  top: 130px;
  left: 0;
  width: 100%;
  height: 0;
  background-color: #ffffff;
  -webkit-transition-property: display, opacity;
  transition-property: display, opacity;
  transition-behavior: allow-discrete;
  -webkit-transition-duration: 0.5s;
          transition-duration: 0.5s;
  opacity: 0;
  z-index: 100;
}
@starting-style {
  .navigation {
    opacity: 0;
  }
}
@media screen and (min-width: 780px) {
  .navigation {
    position: fixed;
    top: 130px;
    left: 0;
    width: 100%;
  }
}
@media screen and (min-width: 1024px) {
  .navigation {
    top: 0;
  }
}
.drawer-open .navigation {
  display: block;
  overflow: visible;
  height: 100%;
  opacity: 1;
}
@starting-style {
  .drawer-open .navigation {
    opacity: 0;
  }
}
.navigation .categories {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  gap: 40px 37px;
  max-width: 315px;
  max-height: 480px;
  margin-left: auto;
  margin-right: auto;
  padding-top: 15px;
}
@media screen and (min-width: 780px) {
  .navigation .categories {
    gap: 46px 48px;
    max-width: 340px;
    width: auto;
    max-height: 490px;
    padding-top: 65px;
  }
}
.navigation .categories .category {
  max-width: 153px;
}
@media screen and (min-width: 780px) {
  .navigation .categories .category {
    max-width: 170px;
  }
}
.navigation .categories .contact .category-item {
  text-transform: capitalize;
}
.navigation .categories .category-header a {
  display: inline-block;
  overflow: hidden;
  position: relative;
  text-decoration: none;
  text-align: center;
}
@media screen and (min-width: 780px) {
  .navigation .categories .category-header a {
    text-align: left;
  }
}
.navigation .categories .category-header a::before, .navigation .categories .category-header a::after {
  content: "";
  display: block;
  position: absolute;
  bottom: 0;
  width: 100%;
  height: 1px;
  margin-top: 0;
  background: #808080;
}
.navigation .categories .category-header a::before {
  opacity: 0;
  -webkit-transition: all 0.15s ease-out 0.15s;
  transition: all 0.15s ease-out 0.15s;
  z-index: 1;
}
.navigation .categories .category-header a::after {
  -webkit-transition: all 0.3s cubic-bezier(0.34, 0.19, 0.27, 1.55);
  transition: all 0.3s cubic-bezier(0.34, 0.19, 0.27, 1.55);
  z-index: 2;
}
.navigation .categories .category-header a:hover::before {
  opacity: 1;
}
.navigation .categories .category-header a:hover::after {
  -webkit-transform: translate(200%, 0);
          transform: translate(200%, 0);
}
.navigation .categories .category-header .text {
  display: inline-block;
  padding-bottom: 0.5em;
  font-size: 1.4375rem;
  letter-spacing: 0.1em;
  line-height: 1.2;
}
@media screen and (min-width: 780px) {
  .navigation .categories .category-header .text {
    font-size: 1.125rem;
    letter-spacing: 0.1em;
  }
}
.navigation .categories ul {
  display: block;
  margin-top: 30px;
}
.navigation .categories li {
  font-size: 0.6875rem;
  letter-spacing: 0.1em;
  line-height: 1.2;
  text-transform: uppercase;
}
@media screen and (min-width: 780px) {
  .navigation .categories li {
    font-size: 0.6875rem;
    letter-spacing: 0.1em;
  }
}
.navigation .categories li + li {
  margin-top: 1.5em;
}
.navigation .categories li a {
  display: inline-block;
  padding: 0.3em 0;
}
@media screen and (min-width: 1024px) {
  .navigation {
    display: block;
    position: fixed;
    overflow: visible;
    width: 100%;
    height: 1px;
    background-color: transparent;
    opacity: 1;
  }
  .navigation .container {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    height: 1px;
    padding-left: clamp(55px, 7.0105820106%, 106px);
    padding-right: clamp(55px, 7.0105820106%, 106px);
  }
  .navigation .categories {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    gap: 40px;
    max-width: 754px;
    max-height: none;
    height: 1px;
    margin-left: 0;
    margin-right: 0;
    padding-top: 0;
  }
  .navigation .category {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    height: 130px;
    -webkit-animation: none;
            animation: none;
  }
  .navigation .category.philosophy .category-header .text, .navigation .category.service .category-header .text, .navigation .category.shalom-lab .category-header .text {
    font-size: 1rem;
    letter-spacing: 0.1em;
    line-height: 1.2;
    padding-bottom: 0;
  }
}
@media screen and (min-width: 1024px) and (min-width: 1024px) {
  .navigation .category.shalom-lab::after {
    content: "";
    display: block;
    width: 1px;
    height: 20px;
    margin-left: 54.5px;
    margin-right: 13px;
    background: #000000;
  }
}
@media screen and (min-width: 1024px) {
  .navigation .category .category-header:hover {
    -webkit-transition: all 0.3s ease-out;
    transition: all 0.3s ease-out;
    opacity: 0.285;
  }
  .navigation .category .category-header a::before, .navigation .category .category-header a::after {
    display: none;
  }
  .navigation .category .category-header .text {
    font-size: 0.9375rem;
    letter-spacing: 0.1em;
    line-height: 1.2;
    padding-bottom: 0;
  }
  .navigation .category ul {
    display: none;
  }
  .navigation .category.has-drop-down {
    position: relative;
  }
  .navigation .category.has-drop-down .category-header .text::after {
    content: "";
    display: inline-block;
    width: 9.547px;
    height: 4.7735px;
    margin-left: 7px;
    background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNSIgaGVpZ2h0PSI5IiB2aWV3Qm94PSIwIDAgMTUgOSIgZmlsbD0ibm9uZSI+IDxwYXRoIGQ9Ik0xNC41MDE4IDAuOTc3NDMyTDcuNzUwOTggNy43MjgzTDEuMDAwMTEgMC45Nzc0MzIiIHN0cm9rZT0iIzM3MzczNyIvPjwvc3ZnPg==");
    background-repeat: no-repeat;
    background-position: 50% 50%;
    background-size: 100% auto;
  }
  .navigation .category.has-drop-down:hover ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    opacity: 1;
  }
  @starting-style {
    .navigation .category.has-drop-down:hover ul {
      opacity: 0;
    }
  }
  .navigation .category.has-drop-down ul {
    display: none;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    position: absolute;
    top: 102px;
    width: 205px;
    margin-top: 0;
    padding-top: 10px;
    padding-left: 20px;
    padding-right: 20px;
    padding-bottom: 18px;
    background: #ffffff;
    gap: 5px;
    -webkit-transition-property: display, opacity;
    transition-property: display, opacity;
    transition-behavior: allow-discrete;
    -webkit-transition-duration: 0.5s;
            transition-duration: 0.5s;
    opacity: 0;
    z-index: 100;
  }
  @starting-style {
    .navigation .category.has-drop-down ul {
      opacity: 0;
    }
  }
  .navigation .category.has-drop-down li {
    display: block;
    font-size: 0.8125rem;
    letter-spacing: 0.1em;
    line-height: 2.3;
  }
  .navigation .category.has-drop-down li + li {
    margin-top: 0;
  }
  .navigation .category.has-drop-down li a {
    display: inline-block;
    padding: 0;
    text-transform: uppercase;
  }
  .navigation .category.has-drop-down li a:hover {
    -webkit-transition: all 0.3s ease-out;
    transition: all 0.3s ease-out;
    opacity: 0.285;
  }
}

.button + .button {
  margin-top: 10px;
}

.button-module .caption-top {
  margin-bottom: 20px;
  color: #333333;
  font-size: 0.875rem;
  line-height: 2;
}
@media screen and (min-width: 780px) {
  .button-module .caption-top {
    font-size: 1rem;
  }
}

.behavior-button {
  cursor: pointer;
}

.button-bordered-radius {
  display: inline-block;
  overflow: hidden;
  position: relative;
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  padding-top: 31px;
  padding-left: 28px;
  padding-right: 28px;
  padding-bottom: 30px;
  border: 1px solid #808080;
  border-radius: 80px;
  background: #ffffff;
  text-decoration: none;
}
@media screen and (min-width: 780px) {
  .button-bordered-radius {
    padding-top: 27px;
  }
}
.button-bordered-radius .button-row {
  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: 16px;
  position: relative;
  width: auto;
  height: 100%;
  margin-left: auto;
  margin-right: auto;
  z-index: 2;
}
.button-bordered-radius .text {
  font-size: 0.9375rem;
  letter-spacing: 0.12em;
  line-height: 1.2;
  -webkit-transform: translate(-4px, 0);
          transform: translate(-4px, 0);
  -webkit-transition: all 0.3s cubic-bezier(0.34, 0.19, 0.27, 1.55);
  transition: all 0.3s cubic-bezier(0.34, 0.19, 0.27, 1.55);
}
@media screen and (min-width: 960px) {
  .button-bordered-radius .text {
    font-size: 1.125rem;
    letter-spacing: 0.12em;
  }
}
.button-bordered-radius .icon-arrow-right {
  display: block;
  overflow: hidden;
  position: relative;
  width: 22px;
  height: 18px;
  margin-left: 0;
}
.button-bordered-radius .icon-arrow-right svg {
  display: block;
  position: absolute;
  -webkit-transform: translate(0, 0);
          transform: translate(0, 0);
  -webkit-transition: all 0.3s ease-in;
  transition: all 0.3s ease-in;
}
.button-bordered-radius .icon-arrow-right svg[data-name=icon_arrow_right]:nth-of-type(2) {
  -webkit-transform: translate(-64px, 0);
          transform: translate(-64px, 0);
}
.button-bordered-radius .icon-arrow-right svg[data-name=icon_arrow_right]:nth-of-type(2) .object-arrow-right-line {
  stroke: #4c8ebe;
}
.button-bordered-radius .icon-arrow-right svg[data-name=icon_arrow_right]:nth-of-type(2) .object-arrow-right-rightwards {
  stroke: #4c8ebe;
}
.button-bordered-radius:hover {
  border: 1px solid #4c8ebe;
}
.button-bordered-radius:hover .text {
  color: #4c8ebe;
  -webkit-transform: translate(0, 0);
          transform: translate(0, 0);
}
.button-bordered-radius:hover svg[data-name=icon_arrow_right]:nth-of-type(1) {
  -webkit-transform: translate(60px, 0);
          transform: translate(60px, 0);
}
.button-bordered-radius:hover svg[data-name=icon_arrow_right]:nth-of-type(2) {
  -webkit-transform: translate(4px, 0);
          transform: translate(4px, 0);
}

.button-more-detail {
  display: inline-block;
  overflow: hidden;
  position: relative;
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  padding-top: 31px;
  padding-bottom: 30px;
  text-decoration: none;
}
.button-more-detail .button-row {
  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: 16px;
  position: relative;
  width: auto;
  height: 100%;
  margin-left: auto;
  margin-right: auto;
  z-index: 2;
}
.button-more-detail .text {
  font-size: 0.9375rem;
  letter-spacing: 0.12em;
  line-height: 1.2;
}
@media screen and (min-width: 960px) {
  .button-more-detail .text {
    font-size: 1.125rem;
    letter-spacing: 0.12em;
  }
}
.button-more-detail .icon-arrow-right {
  display: block;
  overflow: hidden;
  position: relative;
  width: 22px;
  height: 18px;
  margin-left: 0;
}
.button-more-detail .icon-arrow-right svg {
  display: block;
  position: absolute;
  -webkit-transform: translate(0, 0);
          transform: translate(0, 0);
  -webkit-transition: all 0.3s ease-in;
  transition: all 0.3s ease-in;
}
.button-more-detail .icon-arrow-right svg[data-name=icon_arrow_right]:nth-of-type(2) {
  -webkit-transform: translate(-64px, 0);
          transform: translate(-64px, 0);
}
.button-more-detail .icon-arrow-right svg[data-name=icon_arrow_right]:nth-of-type(2) .object-line {
  stroke: #4c8ebe;
}
.button-more-detail .icon-arrow-right svg[data-name=icon_arrow_right]:nth-of-type(2) .object-rightwards {
  stroke: #4c8ebe;
}
.button-more-detail:hover .text {
  color: #4c8ebe;
}
.button-more-detail:hover svg[data-name=icon_arrow_right]:nth-of-type(1) {
  -webkit-transform: translate(60px, 0);
          transform: translate(60px, 0);
}
.button-more-detail:hover svg[data-name=icon_arrow_right]:nth-of-type(2) {
  -webkit-transform: translate(4px, 0);
          transform: translate(4px, 0);
}

.button-text-arrow {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 12px;
  cursor: pointer;
  /*
  .icon-arrow-right-select {
  	display: flex;
  	align-items: center;
  	width: 9px;
  	height: 15px;
  }
  */
}
.button-text-arrow .text {
  display: block;
  color: #a3a3a3;
  font-size: 11px;
  letter-spacing: 2.4px;
  line-height: 1;
  -webkit-transition: all 0.3s ease-in;
  transition: all 0.3s ease-in;
  -webkit-transform: translate(-3px, 0);
          transform: translate(-3px, 0);
}
.button-text-arrow .arrow {
  display: block;
  position: relative;
  overflow: hidden;
  width: 9px;
  height: 15px;
}
.button-text-arrow .arrow .icon-arrow-right-select {
  display: block;
  position: absolute;
  width: 9px;
  height: 15px;
  margin-top: 0;
  -webkit-transition: all 0.3s ease-in;
  transition: all 0.3s ease-in;
}
.button-text-arrow .arrow .icon-arrow-right-select svg[data-name=icon_arrow_right_select] {
  display: block;
}
.button-text-arrow .arrow .icon-arrow-right-select:nth-of-type(2) {
  -webkit-transform: translate(-24px, 0);
          transform: translate(-24px, 0);
}
.button-text-arrow:hover .text {
  -webkit-transform: translate(0, 0);
          transform: translate(0, 0);
}
.button-text-arrow:hover .arrow .icon-arrow-right-select:nth-of-type(1) {
  -webkit-transform: translate(13px, 0);
          transform: translate(13px, 0);
}
.button-text-arrow:hover .arrow .icon-arrow-right-select:nth-of-type(2) {
  -webkit-transform: translate(0, 0);
          transform: translate(0, 0);
}

.button-text-icon {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 12px;
  cursor: pointer;
}
.button-text-icon .text {
  display: block;
  color: #a3a3a3;
  font-size: 11px;
  letter-spacing: 2.4px;
  line-height: 1;
}
.button-text-icon .icon {
  display: block;
  position: relative;
  overflow: hidden;
  width: 11px;
  height: 11px;
}
.button-text-icon .icon .icon-external {
  display: block;
  position: absolute;
  width: 11px;
  height: 11px;
  margin-top: 0;
}
.button-text-icon .icon .icon-external svg[data-name=icon_external] {
  display: block;
}
.block-link > *:not(.button) {
  -webkit-transition: opacity 0.3s ease-in;
  transition: opacity 0.3s ease-in;
}
.block-link:hover {
  cursor: pointer;
}
.block-link:hover > *:not(.button) {
  opacity: 0.5 !important;
}
.block-link:hover .button-text-arrow .text {
  -webkit-transform: translate(0, 0);
          transform: translate(0, 0);
}
.block-link:hover .button-text-arrow .arrow .icon-arrow-right-select:nth-of-type(1) {
  -webkit-transform: translate(13px, 0);
          transform: translate(13px, 0);
}
.block-link:hover .button-text-arrow .arrow .icon-arrow-right-select:nth-of-type(2) {
  -webkit-transform: translate(0, 0);
          transform: translate(0, 0);
}
.block-link:hover .button-bordered-radius {
  border: 1px solid #4c8ebe;
}
.block-link:hover .button-bordered-radius .text {
  color: #4c8ebe;
  -webkit-transform: translate(0, 0);
          transform: translate(0, 0);
}
.block-link:hover .button-bordered-radius svg[data-name=icon_arrow_right]:nth-of-type(1) {
  -webkit-transform: translate(60px, 0);
          transform: translate(60px, 0);
}
.block-link:hover .button-bordered-radius svg[data-name=icon_arrow_right]:nth-of-type(2) {
  -webkit-transform: translate(4px, 0);
          transform: translate(4px, 0);
}

.block-link.block-link-zoom > *:not(.button, .image) {
  -webkit-transition: none;
  transition: none;
}
.block-link.block-link-zoom .image {
  overflow: hidden;
  -webkit-transition: opacity 0.3s linear;
  transition: opacity 0.3s linear;
}
.block-link.block-link-zoom .image img {
  -webkit-transition: -webkit-transform 0.3s ease-in;
  transition: -webkit-transform 0.3s ease-in;
  transition: transform 0.3s ease-in;
  transition: transform 0.3s ease-in, -webkit-transform 0.3s ease-in;
  -webkit-transform: scale(1);
          transform: scale(1);
  -webkit-transform-origin: 50%;
          transform-origin: 50%;
}
.block-link.block-link-zoom:hover {
  cursor: pointer;
}
.block-link.block-link-zoom:hover > *:not(.button, .image) {
  opacity: 1 !important;
}
.block-link.block-link-zoom:hover .image {
  opacity: 1 !important;
}
.block-link.block-link-zoom:hover .image img {
  -webkit-transform: scale(1.1);
          transform: scale(1.1);
  opacity: 1;
}
.block-link.block-link-zoom:hover .button-text-arrow .text {
  -webkit-transform: translate(0, 0);
          transform: translate(0, 0);
}
.block-link.block-link-zoom:hover .button-text-arrow .arrow .icon-arrow-right-select:nth-of-type(1) {
  -webkit-transform: translate(13px, 0);
          transform: translate(13px, 0);
}
.block-link.block-link-zoom:hover .button-text-arrow .arrow .icon-arrow-right-select:nth-of-type(2) {
  -webkit-transform: translate(0, 0);
          transform: translate(0, 0);
}
.block-link.block-link-zoom:hover .button-bordered-radius {
  border: 1px solid #4c8ebe;
}
.block-link.block-link-zoom:hover .button-bordered-radius .text {
  color: #4c8ebe;
  -webkit-transform: translate(0, 0);
          transform: translate(0, 0);
}
.block-link.block-link-zoom:hover .button-bordered-radius svg[data-name=icon_arrow_right]:nth-of-type(1) {
  -webkit-transform: translate(60px, 0);
          transform: translate(60px, 0);
}
.block-link.block-link-zoom:hover .button-bordered-radius svg[data-name=icon_arrow_right]:nth-of-type(2) {
  -webkit-transform: translate(4px, 0);
          transform: translate(4px, 0);
}

.banner.block-link > *:not(.button) {
  -webkit-transition: none;
  transition: none;
}
.banner.block-link:hover {
  cursor: pointer;
}
.banner.block-link:hover > *:not(.button) {
  opacity: 1 !important;
}

svg[data-name=icon_arrow_right] {
  width: 18px;
  height: 18px;
}
svg[data-name=icon_arrow_right] .object-arrow-right-line {
  --path-arrow-right-line: path("M0.153809 9L11.995 9");
  fill: none;
  stroke: #808080;
}
@supports (d: path("M0,0")) {
  svg[data-name=icon_arrow_right] .object-arrow-right-line {
    d: var(--path-arrow-right-line);
  }
}
svg[data-name=icon_arrow_right] .object-arrow-right-rightwards {
  --path-arrow-right-rightwards: path("M9.13992 16.7068L16.8467 9L9.13992 1.29324");
  fill: none;
  stroke: #808080;
}
@supports (d: path("M0,0")) {
  svg[data-name=icon_arrow_right] .object-arrow-right-rightwards {
    d: var(--path-arrow-right-rightwards);
  }
}

svg[data-name=icon_arrow_right_select] {
  width: 9px;
  height: 15px;
}
svg[data-name=icon_arrow_right_select] .object-arrow-right-select {
  --path-arrow-right-select: path("M0.750869 1.00011L7.50174 7.75098L0.750869 14.5018");
  fill: none;
  stroke: #a3a3a3;
}
@supports (d: path("M0,0")) {
  svg[data-name=icon_arrow_right_select] .object-arrow-right-select {
    d: var(--path-arrow-right-select);
  }
}

svg[data-name=icon_arrow_right_large_select] {
  width: 28px;
  height: 66px;
}
svg[data-name=icon_arrow_right_large_select] .object-arrow-right-large-select {
  --path-arrow-right-large-select: path("M4.6897 16.6897L21.5 33.5L4.6897 50.3103");
  fill: none;
  stroke: #a3a3a3;
}
@supports (d: path("M0,0")) {
  svg[data-name=icon_arrow_right_large_select] .object-arrow-right-large-select {
    d: var(--path-arrow-right-large-select);
  }
}

svg[data-name=icon_arrow_down] {
  width: 18px;
  height: 18px;
}
svg[data-name=icon_arrow_down] .object-arrow-down-line {
  --path-arrow-down-line: path("M10 0L10 13.6954");
  fill: none;
  stroke: #808080;
}
@supports (d: path("M0,0")) {
  svg[data-name=icon_arrow_down] .object-arrow-down-line {
    d: var(--path-arrow-down-line);
  }
}
svg[data-name=icon_arrow_down] .object-arrow-down-downwards {
  --path-arrow-down-downwards: path("M1.08643 10.3936L10 19.3071L18.9136 10.3936");
  fill: none;
  stroke: #808080;
}
@supports (d: path("M0,0")) {
  svg[data-name=icon_arrow_down] .object-arrow-down-downwards {
    d: var(--path-arrow-down-downwards);
  }
}

svg[data-name=icon_arrow_down_select] {
  width: 15px;
  height: 9px;
}
svg[data-name=icon_arrow_down_select] .object-arrow-down-select {
  --path-arrow-down-select: path("M14.3.9l-6.8,6.8L.7.9");
  fill: none;
  stroke: #a3a3a3;
}
@supports (d: path("M0,0")) {
  svg[data-name=icon_arrow_down_select] .object-arrow-down-select {
    d: var(--path-arrow-down-select);
  }
}

svg[data-name=icon_external] {
  width: 11px;
  height: 11px;
  fill: #a3a3a3;
}

.color-key-2 svg .object-line,
.color-key-2 svg .object-rightwards,
.color-key-2 svg .object-downwards {
  stroke: #4c8ebe;
}

.icon-circle {
  width: 37px;
  height: 37px;
}
@media screen and (min-width: 780px) {
  .icon-circle {
    width: 48px;
    height: 48px;
  }
}
.icon-circle .object-base {
  --cx: 26.5;
  --cy: 26.5;
  --r: 26;
  fill: #60A5D7;
  stroke: #60A5D7;
  stroke-width: 1px;
}
@supports (cx: 26.5) {
  .icon-circle .object-base {
    cx: var(--cx);
    cy: var(--cy);
    r: var(--r);
  }
}
.icon-circle .object-arrow {
  --path-arrow: path("M21.7 34.9 31.3 26.5 21.7 18.1");
  fill: none;
  stroke: #ffffff;
  stroke-miterlimit: 10;
  stroke-width: 2.2px;
}
@supports (d: path("M0,0")) {
  .icon-circle .object-arrow {
    d: var(--path-arrow);
  }
}
.icon-circle .object-arrow-pulldown {
  --path-arrow-pulldown: path("M18.1 21.7 26.5 31.3 34.9 21.7");
  fill: none;
  stroke: #ffffff;
  stroke-miterlimit: 10;
  stroke-width: 2.2px;
}
@supports (d: path("M0,0")) {
  .icon-circle .object-arrow-pulldown {
    d: var(--path-arrow-pulldown);
  }
}
.icon-circle .object-arrow-down {
  --path-arrow-down: path("M24.785,31.877l-6.37-6.99c-.776-.851-.949-1.825-.519-2.922.428-1.099,1.193-1.648,2.295-1.648h12.617c1.102,0,1.868.549,2.295,1.648.43,1.097.256,2.071-.519,2.922l-6.369,6.99c-.245.269-.51.471-.796.605-.286.134-.592.202-.919.202s-.633-.067-.919-.202c-.286-.134-.551-.336-.796-.605Z");
  fill: #ffffff;
}
@supports (d: path("M0,0")) {
  .icon-circle .object-arrow-down {
    d: var(--path-arrow-down);
  }
}
.icon-circle .object-external-symbol {
  --path-external-symbol: path("M18.722,36.5c-.611,0-1.134-.218-1.569-.653-.435-.435-.653-.958-.653-1.569v-15.556c0-.611.218-1.134.653-1.569.435-.435.958-.653,1.569-.653h7.778v2.222h-7.778v15.556h15.556v-7.778h2.222v7.778c0,.611-.218,1.134-.653,1.569-.435.435-.958.653-1.569.653h-15.556ZM23.944,30.611l-1.556-1.556,10.333-10.333h-4v-2.222h7.778v7.778h-2.222v-4l-10.333,10.333Z");
  fill: #ffffff;
}
@supports (d: path("M0,0")) {
  .icon-circle .object-external-symbol {
    d: var(--path-external-symbol);
  }
}
.icon-circle.style-white .object-base {
  fill: #ffffff;
  stroke: #ffffff;
  stroke-width: 0;
}
.icon-circle.style-white .object-arrow {
  stroke: #333333;
}
.icon-circle.style-black-bordered .object-base {
  stroke: #ffffff;
}

.icon-pdf {
  width: 20px;
  height: 20px;
}
.icon-pdf .object-pdf-symbol {
  --path-pdf-symbol: path("M8 8.5H9C9.28333 8.5 9.521 8.404 9.713 8.212C9.90433 8.02067 10 7.78333 10 7.5V6.5C10 6.21667 9.90433 5.979 9.713 5.787C9.521 5.59567 9.28333 5.5 9 5.5H7.5C7.36667 5.5 7.25 5.55 7.15 5.65C7.05 5.75 7 5.86667 7 6V10C7 10.1333 7.05 10.25 7.15 10.35C7.25 10.45 7.36667 10.5 7.5 10.5C7.63333 10.5 7.75 10.45 7.85 10.35C7.95 10.25 8 10.1333 8 10V8.5ZM8 7.5V6.5H9V7.5H8ZM13 10.5C13.2833 10.5 13.521 10.404 13.713 10.212C13.9043 10.0207 14 9.78333 14 9.5V6.5C14 6.21667 13.9043 5.979 13.713 5.787C13.521 5.59567 13.2833 5.5 13 5.5H11.5C11.3667 5.5 11.25 5.55 11.15 5.65C11.05 5.75 11 5.86667 11 6V10C11 10.1333 11.05 10.25 11.15 10.35C11.25 10.45 11.3667 10.5 11.5 10.5H13ZM12 9.5V6.5H13V9.5H12ZM16 8.5H16.5C16.6333 8.5 16.75 8.45 16.85 8.35C16.95 8.25 17 8.13333 17 8C17 7.86667 16.95 7.75 16.85 7.65C16.75 7.55 16.6333 7.5 16.5 7.5H16V6.5H16.5C16.6333 6.5 16.75 6.45 16.85 6.35C16.95 6.25 17 6.13333 17 6C17 5.86667 16.95 5.75 16.85 5.65C16.75 5.55 16.6333 5.5 16.5 5.5H15.5C15.3667 5.5 15.25 5.55 15.15 5.65C15.05 5.75 15 5.86667 15 6V10C15 10.1333 15.05 10.25 15.15 10.35C15.25 10.45 15.3667 10.5 15.5 10.5C15.6333 10.5 15.75 10.45 15.85 10.35C15.95 10.25 16 10.1333 16 10V8.5ZM6 16C5.45 16 4.97933 15.8043 4.588 15.413C4.196 15.021 4 14.55 4 14V2C4 1.45 4.196 0.979 4.588 0.587C4.97933 0.195667 5.45 0 6 0H18C18.55 0 19.021 0.195667 19.413 0.587C19.8043 0.979 20 1.45 20 2V14C20 14.55 19.8043 15.021 19.413 15.413C19.021 15.8043 18.55 16 18 16H6ZM2 20C1.45 20 0.979333 19.8043 0.588 19.413C0.196 19.021 0 18.55 0 18V5C0 4.71667 0.0960001 4.479 0.288 4.287C0.479333 4.09567 0.716667 4 1 4C1.28333 4 1.521 4.09567 1.713 4.287C1.90433 4.479 2 4.71667 2 5V18H15C15.2833 18 15.5207 18.096 15.712 18.288C15.904 18.4793 16 18.7167 16 19C16 19.2833 15.904 19.5207 15.712 19.712C15.5207 19.904 15.2833 20 15 20H2Z");
  fill: #ffffff;
}
@supports (d: path("M0,0")) {
  .icon-pdf .object-pdf-symbol {
    d: var(--path-pdf-symbol);
  }
}

.carousel {
  position: relative;
}
.carousel .swiper-wrapper {
  position: relative;
}

.accordion-list {
  margin-top: 360px;
}
@media screen and (min-width: 960px) {
  .accordion-list {
    margin-top: 20px;
  }
}
.section-accordion {
  position: relative;
  border-bottom: 1px solid #d9d9d9;
  /*
  &::after {
  	content: '';
  	display: block;
  	position: absolute;
  	bottom: 15px;
  	right: 0;
  	width: 14.21px;
  	height: 7.81px;
  	// margin-top: -3px;
  	background: url(../images/format/icon_arrow_down_select.svg) no-repeat 0 0;
  	background-size: 100% auto;
  	transition: transform 0.1s ease-in;
  	@include mq(lg) {
  		display: none;
  	}
  }*/
}
@media screen and (min-width: 960px) {
  .section-accordion {
    padding-top: 80px;
    padding-bottom: 80px;
  }
}
.section-accordion.is-open {
  /*
  &::after {
  	transform: rotate(180deg);
  }
  */
}
.section-accordion.is-open .accordion-content {
  margin-top: -24px;
  block-size: auto;
  block-size: calc-size(auto, size);
}
@starting-style {
  .section-accordion.is-open .accordion-content {
    block-size: 0;
  }
}
@media screen and (min-width: 960px) {
  .section-accordion.is-open .accordion-content {
    margin-top: 0;
  }
}
.section-accordion.is-open .accordion-button .icon-arrow-down-select svg {
  -webkit-transform: rotate(180deg);
          transform: rotate(180deg);
}
.section-accordion.item-image {
  border-bottom: none;
}
@media screen and (min-width: 960px) {
  .section-accordion.item-image {
    border-bottom: 1px solid #d9d9d9;
  }
}
.section-accordion.item-image .accordion-header {
  cursor: default;
}
.section-accordion.item-image::after {
  display: none;
}
.section-accordion .accordion-header {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  position: relative;
  padding-top: 40px;
  padding-bottom: 40px;
  z-index: 1;
  cursor: pointer;
}
@media screen and (min-width: 960px) {
  .section-accordion .accordion-header {
    padding-top: 0;
    padding-bottom: 20px;
    cursor: default;
  }
}
.section-accordion .accordion-header .hgroup {
  position: relative;
}
.section-accordion .accordion-header .hgroup .heading {
  font-size: 1.25rem;
  letter-spacing: 0.1em;
  line-height: 1.5;
}
@media screen and (min-width: 960px) {
  .section-accordion .accordion-header .hgroup .heading {
    font-size: 1.625rem;
    letter-spacing: 0.0769230769em;
  }
}
.section-accordion .accordion-content {
  position: relative;
  block-size: 0;
  overflow-y: hidden;
  margin-top: 0;
  z-index: 2;
  -webkit-transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1) allow-discrete;
  transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1) allow-discrete;
  will-change: block-size;
}
@media screen and (min-width: 960px) {
  .section-accordion .accordion-content {
    block-size: auto;
    -webkit-transition: none;
    transition: none;
  }
}
.section-accordion .accordion-content .accordion-body {
  padding-bottom: 48px;
}
@media screen and (min-width: 960px) {
  .section-accordion .accordion-content .accordion-body {
    padding-bottom: 0;
  }
}
.section-accordion .accordion-content .text-group + .text-group {
  margin-top: 1.2em;
}
@media screen and (min-width: 960px) {
  .section-accordion .accordion-content .text-group + .text-group {
    margin-top: 1.4em;
  }
}
.section-accordion .accordion-content .text-group .heading {
  font-size: 1.25rem;
  letter-spacing: 0.1em;
  line-height: 1.5;
}
@media screen and (min-width: 960px) {
  .section-accordion .accordion-content .text-group .heading {
    font-size: 1.25rem;
    letter-spacing: 0.15em;
  }
}
.section-accordion .accordion-content .text-group .heading + .text-std {
  margin-top: 0.4em;
}
.section-accordion .accordion-content .text-group .text-std {
  font-size: 0.9375rem;
  letter-spacing: 0.1em;
  line-height: 2;
}
@media screen and (min-width: 960px) {
  .section-accordion .accordion-content .text-group .text-std {
    font-size: 0.9375rem;
    letter-spacing: 0.1em;
  }
}
.section-accordion .accordion-content .text-group .text-std + .note {
  margin-top: 1.2em;
}
.section-accordion .accordion-content .text-group .note {
  font-size: 0.6875rem;
  font-family: "Yu Gothic Pr6N M", "ヒラギノ角ゴシック", "Hiragino Kaku Gothic", メイリオ, Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  letter-spacing: 0.1em;
  line-height: 1.8;
}
@media screen and (min-width: 780px) {
  .section-accordion .accordion-content .text-group .note {
    font-size: 0.8125rem;
    letter-spacing: 0.1em;
  }
}
.section-accordion .accordion-button {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  position: absolute;
  bottom: 0;
  width: 100%;
  height: 40px;
  z-index: 2;
  cursor: pointer;
}
@media screen and (min-width: 960px) {
  .section-accordion .accordion-button {
    display: none;
  }
}
.section-accordion .accordion-button .icon-arrow-down-select {
  position: absolute;
  right: 0;
  bottom: 24px;
  width: 15px;
  height: 9px;
}
.section-accordion .accordion-button .icon-arrow-down-select svg {
  width: 100%;
  -webkit-transition: -webkit-transform 0.1s ease-in;
  transition: -webkit-transform 0.1s ease-in;
  transition: transform 0.1s ease-in;
  transition: transform 0.1s ease-in, -webkit-transform 0.1s ease-in;
}

.features-grid {
  position: relative;
  max-width: 520px;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (min-width: 780px) {
  .features-grid {
    display: block;
  }
}
@media screen and (min-width: 960px) {
  .features-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-auto-rows: minmax(100px, auto);
    max-width: 1100px;
  }
  .features-grid::after {
    content: "";
    display: block;
    position: absolute;
    top: 80px;
    left: 50%;
    width: 1px;
    height: calc(100% - 80px);
    background: #d9d9d9;
  }
}
.features-grid .section-accordion {
  margin-left: 30px;
  margin-right: 30px;
}
@media screen and (min-width: 960px) {
  .features-grid .section-accordion {
    margin-left: 0;
    margin-right: 0;
    padding-left: 50px;
    padding-right: 98px;
  }
}
@media screen and (min-width: 960px) {
  .features-grid .section-accordion:nth-of-type(2n) {
    padding-left: 98px;
    padding-right: 50px;
  }
}
@media screen and (min-width: 960px) {
  .features-grid .section-accordion:nth-last-of-type(2), .features-grid .section-accordion:nth-last-of-type(1) {
    border-bottom: none;
  }
}
.features-grid .section-accordion.item-image {
  position: relative;
  max-width: 100%;
  margin-left: 0;
  margin-right: 0;
}
.features-grid .section-accordion.item-image .accordion-header {
  position: relative;
  width: 100%;
  height: 100%;
}
@media screen and (min-width: 960px) {
  .features-grid .section-accordion.item-image .accordion-header .image {
    position: absolute;
    bottom: 0;
    right: 0;
  }
}
@media screen and (min-width: 780px) {
  .features-grid .section-accordion.item-image .accordion-header .image img {
    max-width: 100%;
    height: auto;
  }
}
@media screen and (min-width: 960px) {
  .features-grid .section-accordion.item-image .accordion-header .image img {
    max-width: 718px;
    width: auto;
  }
}
.features-grid .section-accordion.item-text {
  border-bottom: none;
}
.features-grid .section-accordion.item-text .accordion-header .hgroup {
  margin-left: auto;
  margin-right: auto;
}
@media screen and (min-width: 960px) {
  .features-grid .section-accordion.item-text .accordion-header .hgroup .text-std {
    font-size: 1.125rem;
    letter-spacing: 0.12em;
  }
}

.hero-std {
  width: 100%;
  background: #fffef2;
}
.hero-std .content-std {
  padding-top: 96px;
  padding-bottom: 60px;
}
@media screen and (min-width: 780px) {
  .hero-std .content-std {
    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-top: 80px;
    padding-bottom: 80px;
  }
}
@media screen and (min-width: 780px) {
  .hero-std .hgroup {
    max-width: 340px;
  }
}
.hero-std .image {
  max-width: 270px;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (min-width: 780px) {
  .hero-std .image {
    max-width: 350px;
    margin: 0;
  }
}

body.modal-enabled {
  overflow: hidden;
}
body.modal-enabled .page-modal {
  opacity: 1;
  visibility: visible;
  /* // display: none を使わなくなったので不要
  @starting-style {
  	opacity: 0;
  }
  */
}

.page-modal {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  visibility: hidden;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  position: fixed;
  overflow: hidden;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  -webkit-transition-property: visibility, opacity;
  transition-property: visibility, opacity;
  -webkit-transition-duration: 0.5s;
          transition-duration: 0.5s;
  -webkit-transition-timing-function: ease-out;
          transition-timing-function: ease-out;
  opacity: 0;
  z-index: 200;
}
.page-modal .modal-background {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.25);
  cursor: pointer;
}
.page-modal .content-modal {
  width: 100%;
  margin-left: 25px;
  margin-right: 25px;
}
@media screen and (min-width: 780px) {
  .page-modal .content-modal {
    margin-left: clamp(25px, 5.7291666667%, 55px);
    margin-right: clamp(25px, 5.7291666667%, 55px);
  }
}
@media screen and (min-width: 960px) {
  .page-modal .content-modal {
    margin-left: clamp(55px, 7.0105820106%, 106px);
    margin-right: clamp(55px, 7.0105820106%, 106px);
  }
}
.page-modal .modal-interview {
  overflow: scroll;
  position: relative;
  width: 100%;
  max-height: 800px;
  height: calc(100vh - 182px);
  margin-left: auto;
  margin-right: auto;
  background: url(../images/format/modal_bg_2.webp) lightgray 0%/cover no-repeat;
  background-size: cover;
}
@media screen and (min-width: 780px) {
  .page-modal .modal-interview {
    max-width: 850px;
  }
}
@media screen and (min-width: 960px) {
  .page-modal .modal-interview {
    max-width: 1300px;
    background: url(../images/format/modal_bg_1.webp) lightgray 50%/cover no-repeat;
    background-size: cover;
  }
}
.page-modal .modal-header {
  position: fixed;
  max-width: calc(100vw - 50px);
  width: 100%;
  height: 1px;
}
@media screen and (min-width: 780px) {
  .page-modal .modal-header {
    max-width: 850px;
    width: calc(100% - clamp(25px, 5.7291666667%, 55px) * 2);
  }
}
@media screen and (min-width: 960px) {
  .page-modal .modal-header {
    max-width: 1300px;
    width: calc(100% - clamp(55px, 7.0105820106%, 106px) * 2);
  }
}
.page-modal .modal-header .button-close {
  position: absolute;
  top: 22px;
  right: 20px;
  width: 31px;
  height: 31px;
  opacity: 1;
  cursor: pointer;
  -webkit-transition-property: opacity;
  transition-property: opacity;
  -webkit-transition-duration: 0.3s;
          transition-duration: 0.3s;
  -webkit-transition-timing-function: ease-out;
          transition-timing-function: ease-out;
}
.page-modal .modal-header .button-close:hover {
  opacity: 0.5;
}
@media screen and (min-width: 780px) {
  .page-modal .modal-header .button-close {
    top: 40px;
    right: 35px;
  }
}
@media screen and (min-width: 960px) {
  .page-modal .modal-header .button-close {
    top: 37px;
    right: 37px;
  }
}
.page-modal .modal-body {
  overflow-x: hidden;
  padding-top: 77px;
  padding-left: 20px;
  padding-right: 20px;
  padding-bottom: 35px;
}
@media screen and (min-width: 780px) {
  .page-modal .modal-body {
    padding-top: 79px;
    padding-left: 50px;
    padding-right: 50px;
    padding-bottom: 50px;
  }
}
@media screen and (min-width: 960px) {
  .page-modal .modal-body {
    padding-top: 135px;
    padding-left: 50px;
    padding-right: 50px;
    padding-bottom: 50px;
  }
}
.page-modal .modal-body .section-interview {
  max-width: 300px;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (min-width: 780px) {
  .page-modal .modal-body .section-interview {
    max-width: 350px;
  }
}
@media screen and (min-width: 960px) {
  .page-modal .modal-body .section-interview {
    max-width: 858px;
  }
}
.page-modal .modal-body .section-interview .heading {
  font-size: 1.25rem;
  letter-spacing: 0.12em;
  line-height: 1.6;
}
@media screen and (min-width: 780px) {
  .page-modal .modal-body .section-interview .heading {
    font-size: 1.625rem;
    letter-spacing: 0.15em;
  }
}
.page-modal .modal-body .section-interview .heading .small {
  font-size: 57.69%;
}
.page-modal .modal-body .section-interview .text-std {
  margin-top: 14px;
}
@media screen and (min-width: 960px) {
  .page-modal .modal-body .section-interview .text-std {
    margin-top: 12px;
  }
}
@media screen and (min-width: 960px) {
  .page-modal .modal-body .section-interview .interview-header {
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end;
  }
}
.page-modal .modal-body .section-interview .interview-body {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 50px;
  margin-top: 50px;
}
@media screen and (min-width: 780px) {
  .page-modal .modal-body .section-interview .interview-body {
    margin-top: 50px;
  }
}
@media screen and (min-width: 960px) {
  .page-modal .modal-body .section-interview .interview-body {
    margin-top: 50px;
  }
}
.page-modal .modal-body .section-interview .interview-body .text-group {
  margin-left: auto;
  margin-right: auto;
}
@media screen and (min-width: 960px) {
  .page-modal .modal-body .section-interview .interview-body .text-group {
    max-width: 463px;
  }
}
.page-modal .modal-body .section-interview .interview-body .text-group .text-std + .text-std {
  margin-top: 1.2em;
}

form .color-require {
  color: #ce1f00;
}
form .control-group-row {
  max-width: 340px;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (min-width: 780px) {
  form .control-group-row {
    max-width: 100%;
    margin-left: 0;
    margin-right: 0;
  }
}
form .control-group-row + .control-group-row {
  margin-top: 40px;
}
form .control-group-row.has-rule::after {
  content: "";
  display: block;
  max-width: 352px;
  width: 100%;
  height: 2px;
  margin-top: 44px;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 54px;
  background: #e60012;
}
@media screen and (min-width: 780px) {
  form .control-group-row.user-name {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 40px;
  }
}
form .control-group-row.user-name .control-group + .control-group {
  margin-top: 40px;
}
@media screen and (min-width: 780px) {
  form .control-group-row.user-name .control-group + .control-group {
    margin-top: 0;
  }
}
form .control-group-row.user-name input[type=text] {
  max-width: 340px;
  width: 100%;
}
form .input-group {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  margin-top: 24px;
}
@media screen and (min-width: 960px) {
  form .input-group {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    gap: 28px;
    margin-top: 44px;
  }
}
form .input-group + .input-group {
  margin-top: 40px;
}
form .input-group.is-single {
  margin-top: 20px;
}
@media screen and (min-width: 780px) {
  form .input-group.is-single {
    margin-top: 30px;
  }
}
form .input-group.is-textarea {
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
}
form .input-group label {
  -ms-flex-preferred-size: 2;
      flex-basis: 2;
  font-size: 0.9375rem;
  letter-spacing: 0.1em;
  line-height: 2;
  -webkit-font-feature-settings: "palt" on;
          font-feature-settings: "palt" on;
  /*
  &:has(+ [data-formrun-required])::after { // 直前の要素を指定する方法
  	content: ' *';
  	color: $color-require;
  }*/
}
@media screen and (min-width: 960px) {
  form .input-group label {
    width: 160px;
    margin-top: 0.8em;
    font-size: 0.9375rem;
    letter-spacing: 0.1em;
  }
}
form .input-group [data-formrun-confirm-value] {
  font-size: 0.9375rem;
  letter-spacing: 0.1em;
  line-height: 2;
  -webkit-font-feature-settings: "palt" on;
          font-feature-settings: "palt" on;
}
@media screen and (min-width: 960px) {
  form .input-group [data-formrun-confirm-value] {
    font-size: 0.9375rem;
    letter-spacing: 0.1em;
  }
}
form .input-group .input-group-row {
  max-width: 582px;
  width: 100%;
}
form .input-group input[type=text] {
  width: 100%;
  padding: 9px 21px;
  border: 1px solid #BFC2C3;
  background: #F7F9FB;
  outline: none;
  font-size: 0.9375rem;
  font-family: "Yu Gothic Pr6N M", "ヒラギノ角ゴシック", "Hiragino Kaku Gothic", メイリオ, Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif !important;
  line-height: 1.8;
  letter-spacing: 0.05em;
}
form .input-group textarea {
  width: 100%;
  min-height: 140px;
  padding: 9px 21px;
  border: 1px solid #BFC2C3;
  background: #F7F9FB;
  outline: none;
  font-size: 0.9375rem;
  font-family: "Yu Gothic Pr6N M", "ヒラギノ角ゴシック", "Hiragino Kaku Gothic", メイリオ, Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif !important;
  line-height: 1.8;
}
@media screen and (min-width: 960px) {
  form .input-group textarea {
    margin-top: 0;
  }
}
form .input-group ::-webkit-input-placeholder {
  color: #b4b4b4;
}
form .input-group ::-moz-placeholder {
  color: #b4b4b4;
}
form .input-group :-ms-input-placeholder {
  color: #b4b4b4;
}
form .input-group ::-ms-input-placeholder {
  color: #b4b4b4;
}
form .input-group ::placeholder {
  color: #b4b4b4;
}
form .input-group .required-text {
  color: #ce1f00;
}
form .input-group [data-formrun-show-if-error] {
  margin-top: 0.5em;
  color: #ce1f00;
  font-size: 0.6875rem;
  letter-spacing: 0.1em;
  line-height: 1.8;
}
@media screen and (min-width: 780px) {
  form .input-group [data-formrun-show-if-error] {
    font-size: 0.8125rem;
    letter-spacing: 0.1em;
  }
}
form .submit-group {
  margin-top: 56px;
}
@media screen and (min-width: 780px) {
  form .submit-group {
    margin-top: 70px;
  }
}
form .submit-group .text-std {
  margin-top: 2em;
}
form .submit-group .text-std.privacy {
  margin-top: 0;
  font-size: 0.6875rem;
  letter-spacing: 0.1em;
  line-height: 1.8;
}
@media screen and (min-width: 780px) {
  form .submit-group .text-std.privacy {
    font-size: 0.8125rem;
    letter-spacing: 0.1em;
  }
}
form .submit-group .text-std a {
  text-decoration: underline;
}
form .button-group {
  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: 20px;
  margin-top: 30px;
}
form .btn {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  padding: 29px 32px;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  min-width: 150px;
  border-radius: 80px;
  border: 1px solid #808080;
  background: #FFF;
  color: #373737;
  leading-trim: both;
  text-edge: cap;
  -webkit-font-feature-settings: "palt" on;
          font-feature-settings: "palt" on;
  font-size: 21px;
  font-style: normal;
  font-weight: 400;
  line-height: 1; /* 261.905% */
  letter-spacing: 2.52px;
}
body.formrun-system-confirm form [data-formrun-show-if-confirm] .btn-submit,
body:not(.formrun-system-confirm) form [data-formrun-show-if-confirm] .btn-submit {
  display: none;
}
@media screen and (min-width: 960px) {
  body.formrun-system-confirm form .input-group label,
  body:not(.formrun-system-confirm) form .input-group label {
    margin-top: 0;
  }
}

body.formrun-system-confirm form .input-group .required-text {
  display: none;
}

[data-formrun-back-button]:not(.formrun-system-show),
[data-formrun-show-if-error]:not(.formrun-system-show),
[data-formrun-show-if-success]:not(.formrun-system-show) {
  display: none;
}

.style-home {
  overflow-x: hidden;
}
.style-home #ornament-1 {
  position: absolute;
  top: -100px;
  left: 150px;
  z-index: 1;
}
@media screen and (min-width: 780px) {
  .style-home #ornament-1 {
    top: -104px;
    left: -102px;
  }
}
@media screen and (min-width: 960px) {
  .style-home #ornament-1 {
    top: -156px;
    left: -144px;
  }
}
.style-home #ornament-1 .ornament-image {
  -webkit-transform: translateX(0);
          transform: translateX(0);
}
@media screen and (min-width: 780px) {
  .style-home #ornament-1 .ornament-image {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
}
@media screen and (min-width: 960px) {
  .style-home #ornament-1 .ornament-image {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
}
.style-home #ornament-1 .ornament-image img {
  width: 232px;
}
@media screen and (min-width: 780px) {
  .style-home #ornament-1 .ornament-image img {
    width: 273.319px;
  }
}
@media screen and (min-width: 960px) {
  .style-home #ornament-1 .ornament-image img {
    width: 405px;
  }
}
.style-home #ornament-2 {
  position: absolute;
  z-index: 1;
  top: -46px;
  right: -52px;
}
@media screen and (min-width: 780px) {
  .style-home #ornament-2 {
    top: -73px;
    right: -145px;
  }
}
@media screen and (min-width: 960px) {
  .style-home #ornament-2 {
    top: -95px;
    right: -159px;
  }
}
.style-home #ornament-2 .ornament-image {
  -webkit-transform: translateX(0);
          transform: translateX(0);
}
@media screen and (min-width: 780px) {
  .style-home #ornament-2 .ornament-image {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
}
@media screen and (min-width: 960px) {
  .style-home #ornament-2 .ornament-image {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
}
.style-home #ornament-2 .ornament-image img {
  width: 158px;
}
@media screen and (min-width: 780px) {
  .style-home #ornament-2 .ornament-image img {
    width: 251px;
  }
}
@media screen and (min-width: 960px) {
  .style-home #ornament-2 .ornament-image img {
    width: 328px;
  }
}
.style-home #ornament-3 {
  position: absolute;
  top: -59px;
  left: -16px;
  z-index: 1;
}
@media screen and (min-width: 780px) {
  .style-home #ornament-3 {
    top: -49px;
    left: -41px;
  }
}
@media screen and (min-width: 960px) {
  .style-home #ornament-3 {
    top: -85px;
    left: -133px;
  }
}
.style-home #ornament-3 .ornament-image {
  -webkit-transform: translateX(0);
          transform: translateX(0);
}
@media screen and (min-width: 780px) {
  .style-home #ornament-3 .ornament-image {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
}
@media screen and (min-width: 960px) {
  .style-home #ornament-3 .ornament-image {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
}
.style-home #ornament-3 .ornament-image img {
  width: 233px;
}
@media screen and (min-width: 780px) {
  .style-home #ornament-3 .ornament-image img {
    width: 259px;
  }
}
@media screen and (min-width: 960px) {
  .style-home #ornament-3 .ornament-image img {
    width: 385px;
  }
}
.style-home #ornament-4 {
  position: absolute;
  top: -60px;
  left: 26px;
  z-index: 1;
}
@media screen and (min-width: 780px) {
  .style-home #ornament-4 {
    top: -64px;
    left: -57px;
  }
}
@media screen and (min-width: 960px) {
  .style-home #ornament-4 {
    top: -91px;
    left: -105px;
  }
}
.style-home #ornament-4 .ornament-image {
  -webkit-transform: translateX(0);
          transform: translateX(0);
}
@media screen and (min-width: 780px) {
  .style-home #ornament-4 .ornament-image {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
}
@media screen and (min-width: 960px) {
  .style-home #ornament-4 .ornament-image {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
}
.style-home #ornament-4 .ornament-image img {
  width: 204px;
}
@media screen and (min-width: 780px) {
  .style-home #ornament-4 .ornament-image img {
    width: 197px;
  }
}
@media screen and (min-width: 960px) {
  .style-home #ornament-4 .ornament-image img {
    width: 357px;
  }
}
.style-home #ornament-5 {
  position: absolute;
  right: 215px;
  bottom: -37px;
  z-index: 1;
}
@media screen and (min-width: 780px) {
  .style-home #ornament-5 {
    right: 275px;
    bottom: -37px;
  }
}
@media screen and (min-width: 960px) {
  .style-home #ornament-5 {
    right: 130px;
    bottom: -87px;
  }
}
.style-home #ornament-5 .ornament-image {
  -webkit-transform: translateX(0);
          transform: translateX(0);
}
@media screen and (min-width: 780px) {
  .style-home #ornament-5 .ornament-image {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
}
@media screen and (min-width: 960px) {
  .style-home #ornament-5 .ornament-image {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
}
.style-home #ornament-5 .ornament-image img {
  width: 102px;
}
@media screen and (min-width: 780px) {
  .style-home #ornament-5 .ornament-image img {
    width: 104px;
  }
}
@media screen and (min-width: 960px) {
  .style-home #ornament-5 .ornament-image img {
    width: 171px;
  }
}

@-webkit-keyframes zoomUp {
  0% {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
  100% {
    -webkit-transform: scale(1.1);
            transform: scale(1.1);
  }
}

@keyframes zoomUp {
  0% {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
  100% {
    -webkit-transform: scale(1.1);
            transform: scale(1.1);
  }
}
.hero-home {
  position: relative;
}
.hero-home .carousel {
  position: relative;
}
.hero-home .swiper-slide-active .hero-image .image-fit,
.hero-home .swiper-slide-duplicate-active .hero-image .image-fit,
.hero-home .swiper-slide-prev .hero-image .image-fit {
  -webkit-animation: zoomUp 7s linear 0s normal both;
          animation: zoomUp 7s linear 0s normal both;
}
.hero-home .swiper-slide {
  background: #ffffff;
  position: relative;
}
@media screen and (min-width: 960px) {
  .hero-home .swiper-slide.slide-2 .content-large {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
  }
}
.hero-home .swiper-slide.slide-2 .hgroup {
  padding-top: 50px;
}
@media screen and (min-width: 780px) {
  .hero-home .swiper-slide.slide-2 .hgroup {
    padding-top: 167px;
  }
}
@media screen and (min-width: 960px) {
  .hero-home .swiper-slide.slide-2 .hgroup {
    width: auto;
    text-align: center;
    margin-left: auto;
    margin-right: 0;
    padding-top: 125px;
  }
}
.hero-home .swiper-slide.slide-2 .heading-large {
  font-size: 2.1875rem;
  letter-spacing: 0.15em;
  line-height: 1.77;
}
@media screen and (min-width: 960px) {
  .hero-home .swiper-slide.slide-2 .heading-large {
    font-size: 3.0625rem;
    letter-spacing: 0.15em;
    line-height: 1.2;
  }
}
.hero-home .swiper-slide.slide-2 .button {
  margin-left: 0;
  margin-right: auto;
}
@media screen and (min-width: 780px) {
  .hero-home .swiper-slide.slide-2 .button {
    margin-left: auto;
    margin-right: auto;
  }
}
.hero-home .swiper-slide.slide-2 .button .button-more-detail {
  margin-left: 0;
  margin-right: auto;
}
@media screen and (min-width: 780px) {
  .hero-home .swiper-slide.slide-2 .button .button-more-detail {
    margin-left: auto;
    margin-right: auto;
  }
}
.hero-home .swiper-slide.slide-2 .button .button-more-detail .button-row {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
@media screen and (min-width: 780px) {
  .hero-home .swiper-slide.slide-2 .button .button-more-detail .button-row {
    margin-left: auto;
    margin-right: auto;
  }
}
@media screen and (min-width: 780px) {
  .hero-home .swiper-slide.slide-3 .content-large {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end;
  }
}
.hero-home .swiper-slide.slide-3 .hgroup {
  padding-top: 50px;
}
@media screen and (min-width: 780px) {
  .hero-home .swiper-slide.slide-3 .hgroup {
    padding-top: 0;
    padding-bottom: 148px;
  }
}
@media screen and (min-width: 960px) {
  .hero-home .swiper-slide.slide-3 .hgroup {
    padding-top: 0;
    padding-bottom: 113px;
  }
}
.hero-home .swiper-slide.slide-3 .heading-large {
  font-size: 2.375rem;
  letter-spacing: 0.15em;
  line-height: 1.77;
}
@media screen and (min-width: 960px) {
  .hero-home .swiper-slide.slide-3 .heading-large {
    font-size: 3.375rem;
    letter-spacing: 0.15em;
    line-height: 1.2;
  }
}
.hero-home .swiper-slide.slide-3 .button {
  margin-left: 0;
  margin-right: auto;
}
.hero-home .swiper-slide.slide-3 .button .button-more-detail {
  margin-left: 0;
  margin-right: auto;
}
.hero-home .swiper-slide.slide-3 .button .button-more-detail .button-row {
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
}
.hero-home .hero-image {
  width: 100%;
  overflow: hidden;
}
@media screen and (min-width: 780px) {
  .hero-home .hero-image {
    min-height: 776px;
  }
}
@media screen and (min-width: 780px) {
  .hero-home .hero-image .image-fit {
    -o-object-fit: cover;
       object-fit: cover;
    -o-object-fit: 50%;
       object-fit: 50%;
    width: 100%;
    height: 776px;
    min-height: 100%;
  }
}
.hero-home .content-large {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  z-index: 2;
}
.hero-home .hgroup {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  max-width: 306px;
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  padding-top: 42px;
}
@media screen and (min-width: 780px) {
  .hero-home .hgroup {
    max-width: 810px;
    padding-top: 58px;
  }
}
@media screen and (min-width: 960px) {
  .hero-home .hgroup {
    max-width: none;
    padding-top: 93px;
  }
}
.hero-home .heading-large {
  font-size: 1.75rem;
  letter-spacing: 0.29em;
  line-height: 1.67;
}
@media screen and (min-width: 960px) {
  .hero-home .heading-large {
    font-size: 2.375rem;
    letter-spacing: 0.4em;
    line-height: 2;
  }
}
.hero-home .text-group {
  margin-top: 8px;
}
@media screen and (min-width: 960px) {
  .hero-home .text-group {
    margin-top: 62px;
  }
}
.hero-home .text-group .caption {
  font-size: 0.8125rem;
  letter-spacing: 0.1em;
  line-height: 1.7;
}
@media screen and (min-width: 960px) {
  .hero-home .text-group .caption {
    font-size: 1.25rem;
    letter-spacing: 0.15em;
  }
}
.hero-home .text-group .tag-line {
  margin-top: 10px;
  font-size: 1.5625rem;
  letter-spacing: 0.04em;
  line-height: 1.6;
}
@media screen and (min-width: 960px) {
  .hero-home .text-group .tag-line {
    margin-top: 12px;
    font-size: 1.875rem;
    letter-spacing: 0.18em;
  }
}
.hero-home .content-large.single-copy .hgroup {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  max-width: 306px;
  width: 100%;
  margin-left: 0;
  margin-right: auto;
  padding-top: 42px;
}
@media screen and (min-width: 780px) {
  .hero-home .content-large.single-copy .hgroup {
    max-width: none;
    padding-top: 58px;
  }
}
@media screen and (min-width: 960px) {
  .hero-home .content-large.single-copy .hgroup {
    max-width: none;
    padding-top: 93px;
  }
}
.hero-home .nav {
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 1px;
}
.hero-home .nav .content-large {
  position: relative;
}
.hero-home .nav .swiper-pagination {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -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: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 11px;
  position: relative;
  left: 50%;
  bottom: 53px;
  max-width: 306px;
  width: 100%;
  margin-left: -153px;
}
@media screen and (min-width: 780px) {
  .hero-home .nav .swiper-pagination {
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
    max-width: 810px;
    left: auto;
    bottom: 71px;
    margin-left: 0;
    text-align: center;
  }
}
@media screen and (min-width: 960px) {
  .hero-home .nav .swiper-pagination {
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
    bottom: 49px;
    max-width: 1300px;
    text-align: right;
  }
}
@media screen and (min-width: 960px) {
  .hero-home .nav .swiper-pagination.flex-start {
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
  }
}
.hero-home .nav .swiper-pagination-bullet {
  display: block;
  width: 7px;
  height: 7px;
  margin: 0;
  border-radius: 100%;
  background: #d9d9d9;
  opacity: 1;
}
.hero-home .nav .swiper-pagination-bullet-active {
  background: var(--swiper-pagination-color, #60A5D7);
}
.hero-home .nav .swiper-pagination-vertical.swiper-pagination-bullets .swiper-pagination-bullet,
.hero-home .nav .swiper-vertical > .swiper-pagination-bullets .swiper-pagination-bullet {
  margin: var(--swiper-pagination-bullet-vertical-gap, 0) 0;
}

.home-description {
  position: relative;
  margin-top: 70px;
  z-index: 3;
}
@media screen and (min-width: 780px) {
  .home-description {
    margin-top: 52px;
  }
}
@media screen and (min-width: 960px) {
  .home-description {
    margin-top: 120px;
  }
}
.home-description .column {
  width: 100%;
}
@media screen and (min-width: 780px) {
  .home-description .column {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
    max-width: 1100px;
    margin-left: auto;
    margin-right: auto;
  }
}
.home-description .text-group {
  max-width: 330px;
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  text-align: center;
}
@media screen and (min-width: 780px) {
  .home-description .text-group {
    max-width: 480px;
  }
}
@media screen and (min-width: 960px) {
  .home-description .text-group {
    max-width: 783px;
  }
}
.home-description .text-group .caption {
  font-size: 0.875rem;
  letter-spacing: 0.05em;
  line-height: 2.5;
}
@media screen and (min-width: 780px) {
  .home-description .text-group .caption {
    font-size: 0.875rem;
    letter-spacing: 0.05em;
  }
}
.home-description .text-group .heading {
  font-size: 1.5625rem;
  letter-spacing: 0.1em;
  line-height: 1.6;
}
@media screen and (min-width: 960px) {
  .home-description .text-group .heading {
    font-size: 1.875rem;
    letter-spacing: 0.18em;
  }
}
.home-description .text-group .heading sup {
  font-size: 40%;
  vertical-align: middle;
}
.home-description .text-group .text-std {
  margin-top: 17px;
  text-align: center;
  font-size: 1.0625rem;
  letter-spacing: 0.1em;
  line-height: 2;
}
@media screen and (min-width: 960px) {
  .home-description .text-group .text-std {
    margin-top: 11px;
    font-size: 1.25rem;
    letter-spacing: 0.15em;
  }
}
.home-description .text-group .footnote {
  margin-top: 17px;
  font-size: 0.6875rem;
  letter-spacing: 0.1363636364em;
  line-height: 1.5;
}
@media screen and (min-width: 780px) {
  .home-description .text-group .footnote {
    margin-top: 11px;
    font-size: 0.9375rem;
    letter-spacing: 0.1em;
  }
}

.home-recommend {
  margin-top: 135px;
}
@media screen and (min-width: 960px) {
  .home-recommend {
    margin-top: 177px;
  }
}
.home-recommend .recommend-banners {
  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;
  gap: 86px;
  max-width: 330px;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (min-width: 780px) {
  .home-recommend .recommend-banners {
    gap: 43px;
  }
}
@media screen and (min-width: 960px) {
  .home-recommend .recommend-banners {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    gap: 50px;
    max-width: 1100px;
  }
}
.home-recommend .banner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  width: 330px;
  height: 220px;
  background-color: rgba(255, 255, 255, 0);
  background-repeat: no-repeat;
  background-size: cover;
  background-blend-mode: lighten;
  -webkit-transition: background-color 0.3s cubic-bezier(0.34, 0.19, 0.27, 1.55);
  transition: background-color 0.3s cubic-bezier(0.34, 0.19, 0.27, 1.55);
}
@media screen and (min-width: 960px) {
  .home-recommend .banner {
    width: 525px;
    height: 286px;
  }
}
.home-recommend .banner:hover {
  background-color: rgba(255, 255, 255, 0.2);
  cursor: pointer;
}
.home-recommend .banner.banner-1 {
  background-image: url(../images/home/recommend_1_mobile.webp);
}
@media screen and (min-width: 960px) {
  .home-recommend .banner.banner-1 {
    background-image: url(../images/home/recommend_1_desktop.webp);
  }
}
.home-recommend .banner.banner-2 {
  background-image: url(../images/home/recommend_2_mobile.webp);
}
@media screen and (min-width: 960px) {
  .home-recommend .banner.banner-2 {
    background-image: url(../images/home/recommend_2_desktop.webp);
  }
}
.home-recommend .banner .text-group {
  padding-left: 26px;
  padding-bottom: 38px;
}
@media screen and (min-width: 960px) {
  .home-recommend .banner .text-group {
    padding-left: 36px;
    padding-bottom: 32px;
  }
}
.home-recommend .banner .caption {
  font-size: 0.8125rem;
  letter-spacing: 0.1em;
  line-height: 1.5;
}
@media screen and (min-width: 960px) {
  .home-recommend .banner .caption {
    font-size: 0.9375rem;
    letter-spacing: 0.1em;
    line-height: 2;
  }
}
.home-recommend .banner .heading {
  margin-top: 0;
  font-size: 1.0625rem;
  letter-spacing: 0.1764705882em;
  line-height: 1.6;
}
@media screen and (min-width: 960px) {
  .home-recommend .banner .heading {
    margin-top: 12px;
    font-size: 1.25rem;
    letter-spacing: 0.18em;
  }
}
.home-recommend .banner .heading span.text-row {
  display: block;
}
@media screen and (min-width: 960px) {
  .home-recommend .banner .heading span.text-row {
    display: inline;
  }
}
.home-recommend .banner .heading span.text-row br {
  display: none;
}
@media screen and (min-width: 960px) {
  .home-recommend .banner .heading span.text-row br {
    display: block;
  }
}
.home-recommend .banner .button {
  max-width: 138px;
  margin-top: 16px;
}
.home-recommend .banner .button .button-bordered-radius {
  padding-top: 10px;
  padding-left: 18px;
  padding-right: 10px;
  padding-bottom: 13px;
}
.home-recommend .banner .button .button-bordered-radius .button-row {
  gap: 3px;
}
.home-recommend .banner .button .button-bordered-radius .text {
  font-size: 0.8125rem;
  letter-spacing: 0.12em;
  line-height: 1.2;
  -webkit-transform: translate(-4px, 0);
          transform: translate(-4px, 0);
  -webkit-transition: all 0.3s cubic-bezier(0.34, 0.19, 0.27, 1.55);
  transition: all 0.3s cubic-bezier(0.34, 0.19, 0.27, 1.55);
}

.home-service {
  margin-top: 254px;
}
@media screen and (min-width: 960px) {
  .home-service {
    margin-top: 406px;
  }
}
@media screen and (min-width: 960px) {
  .home-service .columns-std.columns-std-1 {
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    gap: 74px;
  }
}
.home-service .columns-std.columns-std-1 .column-image {
  position: relative;
}
@media screen and (min-width: 960px) {
  .home-service .columns-std.columns-std-1 .column-image {
    max-width: 630px;
    -ms-flex-preferred-size: 1;
        flex-basis: 1;
  }
}
.home-service .columns-std.columns-std-1 .column-text {
  text-align: center;
}
@media screen and (min-width: 960px) {
  .home-service .columns-std.columns-std-1 .column-text {
    max-width: 396px;
    min-width: 350px;
    -ms-flex-negative: 1;
        flex-shrink: 1;
    text-align: left;
  }
}
.home-service .columns-std.columns-std-1 .column-text .caption {
  font-size: 0.8125rem;
  letter-spacing: 0.1em;
  line-height: 1.5;
}
@media screen and (min-width: 960px) {
  .home-service .columns-std.columns-std-1 .column-text .caption {
    font-size: 1.25rem;
    letter-spacing: 0.15em;
  }
}
.home-service .columns-std.columns-std-1 .column-text .tag-line {
  margin-top: 6px;
  font-size: 1.5625rem;
  letter-spacing: 0.1em;
  line-height: 1.6;
}
@media screen and (min-width: 960px) {
  .home-service .columns-std.columns-std-1 .column-text .tag-line {
    margin-top: 12px;
    font-size: 1.875rem;
    letter-spacing: 0.1em;
  }
}
@media screen and (min-width: 960px) {
  .home-service .columns-std.columns-std-1 .column-text .text-std {
    max-width: 350px;
  }
}
.home-service .columns-std.columns-std-1 .column-text .button {
  max-width: 200px;
  margin-top: 27px;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (min-width: 960px) {
  .home-service .columns-std.columns-std-1 .column-text .button {
    max-width: 184px;
    margin-top: 25px;
    margin-left: 0;
  }
}
.home-service .columns-std.columns-std-2 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 70px;
  margin-top: 254px;
}
@media screen and (min-width: 780px) {
  .home-service .columns-std.columns-std-2 {
    gap: 90px;
  }
}
@media screen and (min-width: 960px) {
  .home-service .columns-std.columns-std-2 {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    margin-top: 210px;
    max-width: 1000px;
    gap: 10.4%;
    margin-left: auto;
    margin-right: auto;
  }
}
.home-service .columns-std.columns-std-2 .column-category {
  position: relative;
}
@media screen and (min-width: 960px) {
  .home-service .columns-std.columns-std-2 .column-category {
    max-width: 448px;
    -ms-flex-negative: 1;
        flex-shrink: 1;
  }
}
.home-service .columns-std.columns-std-2 .column-category .hgroup {
  margin-top: 15px;
}
@media screen and (min-width: 960px) {
  .home-service .columns-std.columns-std-2 .column-category .hgroup {
    margin-top: 16px;
  }
}
.home-service .columns-std.columns-std-2 .column-category .caption {
  font-size: 0.875rem;
  letter-spacing: 0.05em;
  line-height: 1.5;
}
@media screen and (min-width: 960px) {
  .home-service .columns-std.columns-std-2 .column-category .caption {
    font-size: 1rem;
    letter-spacing: 0.05em;
  }
}
.home-service .columns-std.columns-std-2 .column-category .heading {
  margin-top: 6px;
  font-size: 1.25rem;
  letter-spacing: 0.12em;
  line-height: 1.6;
}
.home-service .columns-std.columns-std-2 .column-category .text-std {
  margin-top: 16px;
}
.home-service .columns-std.columns-std-2 .column-category .button {
  margin-top: 9px;
}
@media screen and (min-width: 960px) {
  .home-service .columns-std.columns-std-2 .column-category .button {
    margin-top: 13px;
  }
}

.home-equipment {
  margin-top: 254px;
  padding-top: 80px;
  padding-bottom: 116px;
  background: url(../images/format/bg_gradation_7.webp) white 0%/cover no-repeat;
  background-size: cover;
}
@media screen and (min-width: 780px) {
  .home-equipment {
    margin-top: 406px;
    padding-top: 138px;
    padding-bottom: 138px;
    background-size: cover;
  }
}
@media screen and (min-width: 960px) {
  .home-equipment {
    margin-top: 406px;
    padding-top: 205px;
    padding-bottom: 205px;
    background: url(../images/format/bg_gradation_8.webp) white 0%/cover no-repeat;
    background-size: cover;
  }
}
@media screen and (min-width: 960px) {
  .home-equipment .columns-std {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    max-width: 1050px;
    gap: 9.14%;
  }
}
.home-equipment .columns-std .column-image {
  margin-left: 0;
  margin-right: 0;
}
@media screen and (min-width: 960px) {
  .home-equipment .columns-std .column-image {
    max-width: 490px;
  }
}
@media screen and (min-width: 960px) {
  .home-equipment .columns-std .column-text {
    max-width: 463px;
  }
}
.home-equipment .columns-std .column-text .button {
  max-width: 193px;
  margin-top: 30px;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (min-width: 960px) {
  .home-equipment .columns-std .column-text .button {
    max-width: 226px;
    margin-top: 30px;
    margin-left: 0;
  }
}

.home-shalom-lab {
  margin-top: 230px;
}
@media screen and (min-width: 960px) {
  .home-shalom-lab {
    margin-top: 320px;
  }
}
@media screen and (min-width: 960px) {
  .home-shalom-lab .columns-std.columns-std-1 {
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    gap: 74px;
  }
}
.home-shalom-lab .columns-std.columns-std-1 .column-image {
  position: relative;
}
@media screen and (min-width: 960px) {
  .home-shalom-lab .columns-std.columns-std-1 .column-image {
    max-width: 630px;
    -ms-flex-preferred-size: 1;
        flex-basis: 1;
  }
}
@media screen and (min-width: 960px) {
  .home-shalom-lab .columns-std.columns-std-1 .column-text {
    max-width: 396px;
    min-width: 350px;
    -ms-flex-negative: 1;
        flex-shrink: 1;
  }
}
.home-shalom-lab .columns-std.columns-std-1 .column-text .hgroup {
  text-align: center;
}
@media screen and (min-width: 960px) {
  .home-shalom-lab .columns-std.columns-std-1 .column-text .hgroup {
    text-align: left;
  }
}
.home-shalom-lab .columns-std.columns-std-1 .column-text .caption {
  font-size: 0.8125rem;
  letter-spacing: 0.1em;
  line-height: 1.5;
}
@media screen and (min-width: 960px) {
  .home-shalom-lab .columns-std.columns-std-1 .column-text .caption {
    font-size: 1.25rem;
    letter-spacing: 0.15em;
  }
}
.home-shalom-lab .columns-std.columns-std-1 .column-text .tag-line {
  margin-top: 6px;
  font-size: 1.5625rem;
  letter-spacing: 0.1em;
  line-height: 1.6;
}
@media screen and (min-width: 960px) {
  .home-shalom-lab .columns-std.columns-std-1 .column-text .tag-line {
    margin-top: 12px;
    font-size: 1.875rem;
    letter-spacing: 0.1em;
  }
}
@media screen and (min-width: 960px) {
  .home-shalom-lab .columns-std.columns-std-1 .column-text .text-std {
    max-width: 350px;
  }
}
.home-shalom-lab .columns-std.columns-std-1 .column-text .button {
  max-width: 202px;
  margin-top: 27px;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (min-width: 960px) {
  .home-shalom-lab .columns-std.columns-std-1 .column-text .button {
    max-width: 240px;
    margin-top: 25px;
    margin-left: 0;
  }
}

.home-philosophy {
  margin-top: 300px;
}
@media screen and (min-width: 960px) {
  .home-philosophy {
    margin-top: 373px;
  }
}
@media screen and (min-width: 960px) {
  .home-philosophy .columns-std.columns-std-1 {
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    gap: 74px;
  }
}
.home-philosophy .columns-std.columns-std-1 .column-image {
  position: relative;
}
@media screen and (min-width: 960px) {
  .home-philosophy .columns-std.columns-std-1 .column-image {
    max-width: 630px;
    -ms-flex-preferred-size: 1;
        flex-basis: 1;
  }
}
.home-philosophy .columns-std.columns-std-1 .column-image .image-1 {
  max-width: 326px;
}
@media screen and (min-width: 960px) {
  .home-philosophy .columns-std.columns-std-1 .column-image .image-1 {
    max-width: 100%;
  }
}
.home-philosophy .columns-std.columns-std-1 .column-image .image-2 {
  position: relative;
  max-width: 200px;
  margin-top: 33px;
}
@media screen and (min-width: 960px) {
  .home-philosophy .columns-std.columns-std-1 .column-image .image-2 {
    max-width: 350px;
    margin-top: 95px;
    margin-left: 87px;
  }
}
.home-philosophy .columns-std.columns-std-1 .column-text {
  position: relative;
  margin-top: -85px;
  z-index: 2;
}
@media screen and (min-width: 960px) {
  .home-philosophy .columns-std.columns-std-1 .column-text {
    -ms-flex-negative: 1;
        flex-shrink: 1;
    max-width: 396px;
    min-width: 350px;
    margin-top: 65px;
  }
}
.home-philosophy .columns-std.columns-std-1 .column-text .image-3 {
  max-width: 207px;
  margin-left: auto;
  margin-right: -30px;
}
@media screen and (min-width: 960px) {
  .home-philosophy .columns-std.columns-std-1 .column-text .image-3 {
    max-width: 335px;
    margin-left: 0;
    margin-right: 0;
  }
}
.home-philosophy .columns-std.columns-std-1 .column-text .hgroup {
  margin-top: 41px;
  text-align: center;
}
@media screen and (min-width: 960px) {
  .home-philosophy .columns-std.columns-std-1 .column-text .hgroup {
    margin-top: 124px;
    text-align: left;
  }
}
.home-philosophy .columns-std.columns-std-1 .column-text .caption {
  font-size: 0.8125rem;
  letter-spacing: 0.1em;
  line-height: 1.5;
}
@media screen and (min-width: 960px) {
  .home-philosophy .columns-std.columns-std-1 .column-text .caption {
    font-size: 1.25rem;
    letter-spacing: 0.15em;
  }
}
.home-philosophy .columns-std.columns-std-1 .column-text .tag-line {
  margin-top: 6px;
  font-size: 1.5625rem;
  letter-spacing: 0.1em;
  line-height: 1.6;
}
@media screen and (min-width: 960px) {
  .home-philosophy .columns-std.columns-std-1 .column-text .tag-line {
    margin-top: 12px;
    font-size: 1.875rem;
    letter-spacing: 0.1em;
  }
}
@media screen and (min-width: 960px) {
  .home-philosophy .columns-std.columns-std-1 .column-text .text-std {
    max-width: 350px;
  }
}
.home-philosophy .columns-std.columns-std-1 .column-text .button {
  max-width: 202px;
  margin-top: 15px;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (min-width: 960px) {
  .home-philosophy .columns-std.columns-std-1 .column-text .button {
    max-width: 240px;
    margin-top: 25px;
    margin-left: 0;
  }
}

.home-about-us {
  margin-top: 253px;
}
@media screen and (min-width: 960px) {
  .home-about-us {
    margin-top: 378px;
  }
}
@media screen and (min-width: 960px) {
  .home-about-us .columns-std.columns-std-1 {
    max-width: 1000px;
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    gap: 11.1%;
  }
}
@media screen and (min-width: 960px) {
  .home-about-us .columns-std.columns-std-1 .column-image {
    position: relative;
    max-width: 490px;
    -ms-flex-preferred-size: 1;
        flex-basis: 1;
  }
}
.home-about-us .columns-std.columns-std-1 .column-image .image-1 {
  max-width: 290px;
}
@media screen and (min-width: 960px) {
  .home-about-us .columns-std.columns-std-1 .column-image .image-1 {
    max-width: 100%;
  }
}
.home-about-us .columns-std.columns-std-1 .column-text {
  -ms-flex-item-align: start;
      align-self: flex-start;
  position: relative;
}
@media screen and (min-width: 960px) {
  .home-about-us .columns-std.columns-std-1 .column-text {
    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;
    max-width: 350px;
    min-width: 350px;
    margin-top: 63px;
    -ms-flex-negative: 1;
        flex-shrink: 1;
  }
}
.home-about-us .columns-std.columns-std-1 .column-text .image-2 {
  max-width: 127px;
  margin-top: 26px;
  margin-left: auto;
}
@media screen and (min-width: 960px) {
  .home-about-us .columns-std.columns-std-1 .column-text .image-2 {
    max-width: 295px;
    margin-top: 113px;
    margin-left: auto;
  }
}
.home-about-us .columns-std.columns-std-1 .column-text .image-3 {
  display: none;
}
@media screen and (min-width: 960px) {
  .home-about-us .columns-std.columns-std-1 .column-text .image-3 {
    display: block;
    position: absolute;
    max-width: 295px;
    width: 84.28%;
    left: -338px;
    bottom: -78px;
  }
}
.home-about-us .columns-std.columns-std-1 .column-text .text-group {
  margin-top: -30px;
}
@media screen and (min-width: 960px) {
  .home-about-us .columns-std.columns-std-1 .column-text .text-group {
    margin-top: 0;
  }
}
.home-about-us .columns-std.columns-std-1 .column-text .hgroup {
  text-align: left;
}
.home-about-us .columns-std.columns-std-1 .column-text .tag-line {
  font-size: 1.5625rem;
  letter-spacing: 0.1em;
  line-height: 1.6;
}
@media screen and (min-width: 960px) {
  .home-about-us .columns-std.columns-std-1 .column-text .tag-line {
    font-size: 1.875rem;
    letter-spacing: 0.1em;
  }
}
.home-about-us .columns-std.columns-std-1 .column-text .text-std {
  margin-top: 9px;
}
@media screen and (min-width: 960px) {
  .home-about-us .columns-std.columns-std-1 .column-text .text-std {
    max-width: 350px;
  }
}
.home-about-us .columns-std.columns-std-1 .column-text .button {
  margin-top: 9px;
  margin-left: auto;
}
@media screen and (min-width: 960px) {
  .home-about-us .columns-std.columns-std-1 .column-text .button {
    margin-top: 9px;
  }
}

.home-special {
  margin-top: 267px;
  padding-bottom: 247px;
}
@media screen and (min-width: 960px) {
  .home-special {
    margin-top: 372px;
    padding-bottom: 372px;
  }
}
.home-special .special-expo {
  max-width: 330px;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (min-width: 780px) {
  .home-special .special-expo {
    max-width: 520px;
  }
}
@media screen and (min-width: 960px) {
  .home-special .special-expo {
    max-width: 1000px;
  }
}
.home-special .special-expo .special-header .hgroup {
  text-align: center;
}
@media screen and (min-width: 960px) {
  .home-special .special-expo .special-header .hgroup {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    text-align: left;
    gap: 36px;
  }
}
.home-special .special-expo .special-header .heading {
  font-size: 1.25rem;
  letter-spacing: 0.12em;
  line-height: 1.5;
}
@media screen and (min-width: 780px) {
  .home-special .special-expo .special-header .heading {
    font-size: 1.625rem;
    letter-spacing: 0.15em;
    line-height: 1.2;
  }
}
.home-special .special-expo .special-header .caption {
  font-size: 0.6875rem;
  letter-spacing: 0.1em;
  line-height: 1.2;
  margin-top: 10px;
}
@media screen and (min-width: 960px) {
  .home-special .special-expo .special-header .caption {
    margin-top: 0;
    font-size: 0.9375rem;
    letter-spacing: 0.1em;
  }
}
.home-special .special-expo .columns-std {
  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;
  gap: 44px;
  margin-top: 50px;
}
@media screen and (min-width: 780px) {
  .home-special .special-expo .columns-std {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -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: 56px;
    margin-top: 46px;
  }
}
@media screen and (min-width: 960px) {
  .home-special .special-expo .columns-std {
    margin-top: 60px;
  }
}
.home-special .special-expo .columns-std .column-category {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 15px;
}
@media screen and (min-width: 780px) {
  .home-special .special-expo .columns-std .column-category {
    max-width: 232px;
    gap: 15px;
  }
}
@media screen and (min-width: 960px) {
  .home-special .special-expo .columns-std .column-category {
    -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: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 20px;
    max-width: 480px;
  }
}
.home-special .special-expo .columns-std .column-category .image {
  max-width: 196px;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (min-width: 780px) {
  .home-special .special-expo .columns-std .column-category .image {
    max-width: 232px;
    margin-left: 0;
    margin-right: 0;
  }
}
@media screen and (min-width: 960px) {
  .home-special .special-expo .columns-std .column-category .image {
    max-width: 196px;
  }
}
.home-special .special-expo .columns-std .column-category .text-group .text-std {
  letter-spacing: 0;
  text-align: center;
}
@media screen and (min-width: 780px) {
  .home-special .special-expo .columns-std .column-category .text-group .text-std {
    margin-top: 0;
    letter-spacing: 0;
    text-align: left;
  }
}
.home-special .special-expo .columns-std .column-category .text-group .button-text-icon {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-top: 8px;
}
@media screen and (min-width: 780px) {
  .home-special .special-expo .columns-std .column-category .text-group .button-text-icon {
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    margin-top: 12px;
    margin-left: 0.3em;
  }
}

.main .columns-std {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  max-width: 390px;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (min-width: 780px) {
  .main .columns-std {
    max-width: 520px;
  }
}
@media screen and (min-width: 960px) {
  .main .columns-std {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    max-width: 1100px;
    gap: 8.33%;
  }
}
.main .columns-std.flex-row-reverse {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
}
.main .columns-std .column-image,
.main .columns-std .column-list {
  margin-left: -30px;
  margin-right: -30px;
}
@media screen and (min-width: 780px) {
  .main .columns-std .column-image,
  .main .columns-std .column-list {
    margin-left: 0;
    margin-right: 0;
  }
}
@media screen and (min-width: 960px) {
  .main .columns-std .column-image,
  .main .columns-std .column-list {
    max-width: 630px;
    margin-left: 0;
    margin-right: 0;
  }
}
.main .columns-std .column-text {
  max-width: 330px;
  margin-top: 38px;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (min-width: 780px) {
  .main .columns-std .column-text {
    max-width: 450px;
    margin-top: 33px;
  }
}
@media screen and (min-width: 960px) {
  .main .columns-std .column-text {
    max-width: 350px;
    margin-top: 0;
    margin-left: 0;
    margin-right: 0;
  }
}
.main .columns-std .hgroup {
  margin-top: 10px;
}
@media screen and (min-width: 780px) {
  .main .columns-std .hgroup {
    margin-top: 6px;
  }
}
.main .columns-std .heading {
  font-size: 1.5625rem;
  letter-spacing: 0.1em;
  line-height: 1.6;
}
@media screen and (min-width: 780px) {
  .main .columns-std .heading {
    font-size: 1.875rem;
    letter-spacing: 0.18em;
  }
}
.main .columns-std .text-std {
  margin-top: 14px;
}
@media screen and (min-width: 960px) {
  .main .columns-std .text-std {
    margin-top: 12px;
  }
}
.main .columns-std .list-std {
  margin-top: 14px;
  padding-left: 1.2em;
}
@media screen and (min-width: 960px) {
  .main .columns-std .list-std {
    margin-top: 12px;
    padding-left: 1em;
  }
}
.main .section-std {
  margin-left: auto;
  margin-right: auto;
}
@media screen and (min-width: 780px) {
  .main .section-std {
    max-width: 463px;
  }
}
.main .section-std .hgroup .heading {
  font-size: 1.5625rem;
  letter-spacing: 0.1em;
  line-height: 1.5;
}
@media screen and (min-width: 780px) {
  .main .section-std .hgroup .heading {
    font-size: 1.625rem;
    letter-spacing: 0.15em;
  }
}
.main .section-std .text-group .text-std {
  margin-top: 14px;
}
@media screen and (min-width: 960px) {
  .main .section-std .text-group .text-std {
    margin-top: 12px;
  }
}

@-webkit-keyframes fade-in {
  to {
    opacity: 1;
  }
}

@keyframes fade-in {
  to {
    opacity: 1;
  }
}
.style-service.index #ornament-1 {
  position: absolute;
  width: 100%;
  top: 468px;
  z-index: 1;
}
@media screen and (min-width: 780px) {
  .style-service.index #ornament-1 {
    top: 455px;
  }
}
@media screen and (min-width: 960px) {
  .style-service.index #ornament-1 {
    top: 527px;
    height: 1px;
  }
}
.style-service.index #ornament-1 .content-std {
  position: relative;
}
@media screen and (min-width: 960px) {
  .style-service.index #ornament-1 .content-std {
    height: 1px;
  }
}
.style-service.index #ornament-1 .ornament-image {
  -webkit-transform: translateX(225px);
          transform: translateX(225px);
}
@media screen and (min-width: 780px) {
  .style-service.index #ornament-1 .ornament-image {
    -webkit-transform: translateX(413px);
            transform: translateX(413px);
  }
}
@media screen and (min-width: 960px) {
  .style-service.index #ornament-1 .ornament-image {
    -webkit-transform: translateX(192px);
            transform: translateX(192px);
    height: 1px;
  }
}
.style-service.index #ornament-1 .ornament-image img {
  width: 210px;
}
@media screen and (min-width: 780px) {
  .style-service.index #ornament-1 .ornament-image img {
    width: 286px;
  }
}
@media screen and (min-width: 960px) {
  .style-service.index #ornament-1 .ornament-image img {
    width: 434px;
  }
}
.style-service.index #ornament-2 {
  position: absolute;
  top: -110px;
  z-index: 1;
}
@media screen and (min-width: 780px) {
  .style-service.index #ornament-2 {
    top: -60px;
  }
}
@media screen and (min-width: 960px) {
  .style-service.index #ornament-2 {
    top: -220px;
  }
}
.style-service.index #ornament-2 .ornament-image {
  -webkit-transform: translateX(110px);
          transform: translateX(110px);
}
@media screen and (min-width: 780px) {
  .style-service.index #ornament-2 .ornament-image {
    -webkit-transform: translateX(220px);
            transform: translateX(220px);
  }
}
@media screen and (min-width: 960px) {
  .style-service.index #ornament-2 .ornament-image {
    -webkit-transform: translateX(700px);
            transform: translateX(700px);
  }
}
.style-service.index #ornament-2 .ornament-image img {
  width: 267px;
}
@media screen and (min-width: 780px) {
  .style-service.index #ornament-2 .ornament-image img {
    width: 267px;
  }
}
@media screen and (min-width: 960px) {
  .style-service.index #ornament-2 .ornament-image img {
    width: 443px;
  }
}
.style-service.index #ornament-3 {
  display: none;
}
@media screen and (min-width: 960px) {
  .style-service.index #ornament-3 {
    display: block;
    position: absolute;
    top: 50%;
    z-index: 1;
  }
}
@media screen and (min-width: 960px) {
  .style-service.index #ornament-3 .ornament-image {
    max-width: 288px;
    -webkit-transform: translateX(-230px);
            transform: translateX(-230px);
  }
}
.style-service.index #ornament-4 {
  position: absolute;
  top: -36px;
  z-index: 1;
}
@media screen and (min-width: 780px) {
  .style-service.index #ornament-4 {
    top: -36px;
  }
}
@media screen and (min-width: 960px) {
  .style-service.index #ornament-4 {
    top: -105px;
  }
}
.style-service.index #ornament-4 .ornament-image {
  -webkit-transform: translateX(110px);
          transform: translateX(110px);
}
@media screen and (min-width: 780px) {
  .style-service.index #ornament-4 .ornament-image {
    -webkit-transform: translateX(220px);
            transform: translateX(220px);
  }
}
@media screen and (min-width: 960px) {
  .style-service.index #ornament-4 .ornament-image {
    -webkit-transform: translateX(500px);
            transform: translateX(500px);
  }
}
.style-service.index #ornament-4 .ornament-image img {
  width: 217px;
}
@media screen and (min-width: 780px) {
  .style-service.index #ornament-4 .ornament-image img {
    width: 217px;
  }
}
@media screen and (min-width: 960px) {
  .style-service.index #ornament-4 .ornament-image img {
    width: 430px;
  }
}
.style-service.index #ornament-5 {
  display: none;
}
@media screen and (min-width: 960px) {
  .style-service.index #ornament-5 {
    display: block;
    position: absolute;
    top: 0;
    z-index: 1;
  }
}
@media screen and (min-width: 960px) {
  .style-service.index #ornament-5 .ornament-image {
    width: 405.5px;
  }
}
.style-service.index #ornament-6 {
  display: none;
}
@media screen and (min-width: 960px) {
  .style-service.index #ornament-6 {
    display: block;
    position: absolute;
    bottom: -100px;
    right: 0;
    z-index: 1;
  }
}
@media screen and (min-width: 960px) {
  .style-service.index #ornament-6 .ornament-image {
    width: 143.5px;
    -webkit-transform: translateX(-200px);
            transform: translateX(-200px);
  }
}

.hero-service {
  position: relative;
}
@media screen and (min-width: 960px) {
  .hero-service {
    max-height: 608px;
  }
}
.hero-service .hero-image {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  margin-left: 42px;
}
@media screen and (min-width: 780px) {
  .hero-service .hero-image {
    max-width: 1512px;
    margin-left: auto;
    margin-right: auto;
  }
}
.hero-service .hero-image img {
  max-width: 100%;
}
@media screen and (min-width: 780px) {
  .hero-service .hero-image img {
    max-width: 1110px;
    margin-left: 122px;
  }
}
@media screen and (min-width: 960px) {
  .hero-service > .content-std {
    position: relative;
    -webkit-transform: translateY(clamp(-430px, -430 * (100vw - 960px) / 552, 0px));
            transform: translateY(clamp(-430px, -430 * (100vw - 960px) / 552, 0px));
  }
}
.hero-service .hgroup {
  position: relative;
  max-width: 1100px;
  margin-top: -34px;
  margin-left: auto;
  margin-right: auto;
  z-index: 2;
}
@media screen and (min-width: 780px) {
  .hero-service .hgroup {
    margin-top: -50px;
  }
}
.hero-service .heading-large {
  font-size: 2.375rem;
  letter-spacing: 0.15em;
  line-height: 1.6;
}
@media screen and (min-width: 780px) {
  .hero-service .heading-large {
    font-size: 3.75rem;
    letter-spacing: 0.15em;
  }
}
.hero-service .text-group {
  margin-top: 12px;
}
@media screen and (min-width: 960px) {
  .hero-service .text-group {
    margin-top: 32px;
  }
}
.hero-service .text-group .caption {
  font-size: 0.8125rem;
  letter-spacing: 0.1em;
  line-height: 1.7;
}
@media screen and (min-width: 780px) {
  .hero-service .text-group .caption {
    font-size: 1.25rem;
    letter-spacing: 0.15em;
  }
}
.hero-service .text-group .tag-line {
  font-size: 1.5625rem;
  letter-spacing: 0.04em;
  line-height: 1.6;
}
@media screen and (min-width: 780px) {
  .hero-service .text-group .tag-line {
    font-size: 1.875rem;
    letter-spacing: 0.18em;
  }
}

.service-description {
  position: relative;
  margin-top: 65px;
  z-index: 3;
}
@media screen and (min-width: 780px) {
  .service-description {
    margin-top: 105px;
  }
}
.service-description .column {
  max-width: 450px;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (min-width: 780px) {
  .service-description .column {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
    max-width: 1100px;
  }
}
@media screen and (min-width: 780px) {
  .service-description .text-group {
    max-width: 450px;
    margin-left: auto;
    margin-right: auto;
  }
}
@media screen and (min-width: 960px) {
  .service-description .text-group {
    margin-left: auto;
    margin-right: 0;
  }
}
.service-description .text-group .caption {
  font-size: 0.875rem;
  letter-spacing: 0.05em;
  line-height: 2.5;
}
@media screen and (min-width: 780px) {
  .service-description .text-group .caption {
    font-size: 0.875rem;
    letter-spacing: 0.05em;
  }
}
.service-description .text-group .heading {
  font-size: 1.5625rem;
  letter-spacing: 0.1em;
  line-height: 1.6;
}
@media screen and (min-width: 780px) {
  .service-description .text-group .heading {
    font-size: 1.875rem;
    letter-spacing: 0.18em;
  }
}
.service-description .text-group .text-std {
  margin-top: 12px;
  font-size: 0.9375rem;
  letter-spacing: 0.1em;
  line-height: 2;
}
@media screen and (min-width: 780px) {
  .service-description .text-group .text-std {
    font-size: 0.9375rem;
    letter-spacing: 0.1em;
  }
}

.service-features {
  margin-top: 368px;
}
@media screen and (min-width: 780px) {
  .service-features {
    margin-top: 460px;
  }
}

.service-flow {
  position: relative;
  margin-top: 390px;
}
.service-flow .heading {
  position: relative;
  font-size: 1.5625rem;
  letter-spacing: 0.096em;
  line-height: 1.6;
  text-align: center;
  z-index: 2;
}
@media screen and (min-width: 780px) {
  .service-flow .heading {
    font-size: 1.875rem;
    letter-spacing: 0.18em;
  }
}
.service-flow .heading .text-row {
  position: relative;
  z-index: 2;
}
.service-flow .content-std {
  position: relative;
  z-index: 2;
}
.service-flow .service-flow-list {
  position: relative;
  margin-left: auto;
  margin-right: auto;
  border-top: 1px solid #d9d9d9;
  max-width: 310px;
  margin-top: 55px;
  z-index: 2;
}
@media screen and (min-width: 780px) {
  .service-flow .service-flow-list {
    max-width: 400px;
    margin-top: 73px;
  }
}
@media screen and (min-width: 960px) {
  .service-flow .service-flow-list {
    max-width: 540px;
    margin-top: 104px;
  }
}
.service-flow .service-flow-list .item {
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  border-bottom: 1px solid #d9d9d9;
}

.service-products {
  margin-top: 242px;
  margin-bottom: 240px;
}
@media screen and (min-width: 780px) {
  .service-products {
    margin-bottom: 250px;
  }
}
@media screen and (min-width: 960px) {
  .service-products {
    margin-top: 395px;
    margin-bottom: 230px;
  }
}
.service-products .linkage-block {
  max-width: 330px;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (min-width: 780px) {
  .service-products .linkage-block {
    max-width: 450px;
  }
}
@media screen and (min-width: 960px) {
  .service-products .linkage-block {
    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: 84px;
    max-width: 1000px;
  }
}
.service-products .linkage-block .image {
  max-width: 100%;
}
@media screen and (min-width: 960px) {
  .service-products .linkage-block .image {
    max-width: 490px;
  }
}
.service-products .linkage-block .button-group {
  margin-top: 26px;
}
@media screen and (min-width: 960px) {
  .service-products .linkage-block .button-group {
    margin-top: 0;
  }
}
.service-products .linkage-block .text-std {
  font-size: 0.9375rem;
  letter-spacing: 0.1em;
  line-height: 2;
}
@media screen and (min-width: 780px) {
  .service-products .linkage-block .text-std {
    font-size: 0.9375rem;
    letter-spacing: 0.1em;
  }
}
.service-products .linkage-block .button {
  max-width: 241px;
  margin-top: 29px;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (min-width: 960px) {
  .service-products .linkage-block .button {
    max-width: 294px;
    margin-top: 29px;
    margin-left: 0;
  }
}

.service-vietnam {
  padding-top: 80px;
  padding-bottom: 80px;
  background: url(../images/format/bg_gradation_2.webp) lightgray 0%/cover no-repeat;
  background-size: cover;
}
@media screen and (min-width: 780px) {
  .service-vietnam {
    padding-top: 113px;
    padding-bottom: 113px;
    background-size: cover;
  }
}
@media screen and (min-width: 960px) {
  .service-vietnam {
    padding-top: 205px;
    padding-bottom: 205px;
    background: url(../images/format/bg_gradation_1.webp) lightgray 50%/cover no-repeat;
    background-size: cover;
  }
}
.service-vietnam .section-folding.is-open .folding-content {
  display: block;
}
.service-vietnam .section-folding.is-open .button {
  display: none;
}
.service-vietnam .folding-header {
  max-width: 390px;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (min-width: 780px) {
  .service-vietnam .folding-header {
    max-width: 520px;
  }
}
@media screen and (min-width: 960px) {
  .service-vietnam .folding-header {
    max-width: 1000px;
  }
}
.service-vietnam .folding-header .header-content {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
@media screen and (min-width: 960px) {
  .service-vietnam .folding-header .header-content {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 8.33%;
  }
}
.service-vietnam .folding-header .header-content .image {
  margin-left: -30px;
  margin-right: -30px;
}
@media screen and (min-width: 780px) {
  .service-vietnam .folding-header .header-content .image {
    margin-left: 0;
    margin-right: 0;
  }
}
@media screen and (min-width: 960px) {
  .service-vietnam .folding-header .header-content .image {
    max-width: 630px;
    margin-left: 0;
    margin-right: 0;
  }
}
.service-vietnam .folding-header .header-content .text-group {
  max-width: 330px;
  margin-top: 28px;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (min-width: 780px) {
  .service-vietnam .folding-header .header-content .text-group {
    max-width: 450px;
    margin-top: 33px;
  }
}
@media screen and (min-width: 960px) {
  .service-vietnam .folding-header .header-content .text-group {
    max-width: 350px;
    margin-top: 0;
  }
}
.service-vietnam .folding-header .header-content .caption {
  font-size: 0.875rem;
  letter-spacing: 0.05em;
  line-height: 2;
}
@media screen and (min-width: 780px) {
  .service-vietnam .folding-header .header-content .caption {
    font-size: 1rem;
    letter-spacing: 0.05em;
  }
}
.service-vietnam .folding-header .header-content .heading {
  font-size: 1.5625rem;
  letter-spacing: 0.1em;
  line-height: 1.6;
}
@media screen and (min-width: 780px) {
  .service-vietnam .folding-header .header-content .heading {
    font-size: 1.875rem;
    letter-spacing: 0.18em;
  }
}
.service-vietnam .folding-header .header-content .text-std {
  margin-top: 14px;
}
@media screen and (min-width: 960px) {
  .service-vietnam .folding-header .header-content .text-std {
    margin-top: 12px;
  }
}
.service-vietnam .folding-header .button {
  margin-top: 50px;
  text-align: center;
  cursor: pointer;
}
@media screen and (min-width: 960px) {
  .service-vietnam .folding-header .button {
    display: none;
  }
}
.service-vietnam .folding-header .button .view-more {
  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;
  color: #a3a3a3;
  font-size: 14px;
  letter-spacing: 2.4px;
  text-align: center;
}
.service-vietnam .folding-header .button .view-more::after {
  content: "";
  display: block;
  width: 16px;
  height: 8px;
  margin-left: 5px;
  background: url(../images/format/icon_arrow_down_select.svg) no-repeat 0 0;
  background-size: 100% auto;
}
.service-vietnam .folding-content {
  display: none;
}
@media screen and (min-width: 960px) {
  .service-vietnam .folding-content {
    display: block;
  }
}
.service-vietnam .folding-content .fluid-columns {
  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;
  margin-top: 120px;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (min-width: 780px) {
  .service-vietnam .folding-content .fluid-columns {
    max-width: 264px;
    margin-left: auto;
    margin-right: auto;
  }
}
@media screen and (min-width: 960px) {
  .service-vietnam .folding-content .fluid-columns {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    margin-top: 75px;
  }
}
.service-vietnam .folding-content .column-circle {
  margin-top: -24px;
  margin-bottom: -24px;
}
@media screen and (min-width: 960px) {
  .service-vietnam .folding-content .column-circle {
    margin-top: 0;
    margin-bottom: 0;
    margin-left: -22.5px;
    margin-right: -22.5px;
  }
}
.service-vietnam .folding-content .column-circle .text-std {
  font-size: 1.25rem;
  letter-spacing: 0.025em;
  line-height: 1.5;
}
@media screen and (min-width: 780px) {
  .service-vietnam .folding-content .column-circle .text-std {
    font-size: 1.25rem;
    letter-spacing: 0.075em;
  }
}
.service-vietnam .folding-content .column-circle .text-std .small {
  font-size: 75%;
}
.service-vietnam .folding-content section {
  margin-top: 80px;
}
@media screen and (min-width: 960px) {
  .service-vietnam .folding-content section {
    margin-top: 50px;
  }
}
.service-vietnam .folding-content section .heading {
  font-size: 1.25rem;
  letter-spacing: 0.12em;
  line-height: 1.5;
}
@media screen and (min-width: 780px) {
  .service-vietnam .folding-content section .heading {
    max-width: 260px;
    margin-left: auto;
    margin-right: auto;
  }
}
@media screen and (min-width: 960px) {
  .service-vietnam .folding-content section .heading {
    max-width: none;
    font-size: 1.625rem;
    letter-spacing: 0.15em;
  }
}
@media screen and (min-width: 780px) {
  .service-vietnam .folding-content section .heading span.text-row {
    display: block;
  }
}
@media screen and (min-width: 960px) {
  .service-vietnam .folding-content section .heading span.text-row {
    display: inline;
  }
}
.service-vietnam .folding-content section .list-std {
  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: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  gap: 37px;
  margin-top: 63px;
}
@media screen and (min-width: 780px) {
  .service-vietnam .folding-content section .list-std {
    max-width: 450px;
    margin-left: auto;
    margin-right: auto;
  }
}
@media screen and (min-width: 960px) {
  .service-vietnam .folding-content section .list-std {
    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;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    gap: 50px 12%;
    max-width: 1000px;
    margin-top: 58px;
    margin-left: auto;
    margin-right: auto;
  }
}
.service-vietnam .folding-content section .list-std li {
  list-style: circle;
  font-size: 0.9375rem;
  letter-spacing: 0.1em;
  line-height: 2;
  text-align: justify;
}
@media screen and (min-width: 960px) {
  .service-vietnam .folding-content section .list-std li {
    width: 44%;
    font-size: 1.125rem;
    letter-spacing: 0.12em;
    line-height: 1.6;
  }
}
@media screen and (min-width: 960px) {
  .service-vietnam .folding-content section .list-std li + li {
    margin-top: 0;
  }
}

.service-step-label {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  border: 1px solid #808080;
  padding-top: 7.5px;
  padding-bottom: 7.5px;
  padding-left: 15px;
  padding-right: 15px;
  border-radius: 70px;
}
.service-step-label .text {
  font-size: 0.875rem;
  line-height: 1;
  letter-spacing: 0.05em;
}
@media screen and (min-width: 780px) {
  .service-step-label .text {
    font-size: 1rem;
    letter-spacing: 0.05em;
  }
}

.style-service {
  overflow-x: hidden;
}

.hero-service-std {
  padding-top: 15px;
}
@media screen and (min-width: 960px) {
  .hero-service-std {
    padding-top: 142px;
  }
}
.hero-service-std .header {
  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;
  max-width: 330px;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (min-width: 960px) {
  .hero-service-std .header {
    display: block;
    max-width: 870px;
    margin-top: 0;
    margin-left: auto;
    margin-right: auto;
    padding-left: 0;
    padding-right: 0;
    position: relative;
    z-index: 2;
  }
}
.hero-service-std .header .caption {
  margin-bottom: 4px;
  font-size: 0.8125rem;
  line-height: 1.54;
  letter-spacing: 0.1em;
}
@media screen and (min-width: 780px) {
  .hero-service-std .header .caption {
    margin-bottom: 18px;
  }
}
@media screen and (min-width: 960px) {
  .hero-service-std .header .caption {
    margin-bottom: 8px;
    font-size: 1.125rem;
    line-height: 2;
    letter-spacing: 0.12em;
  }
}
.hero-service-std .header .hgroup {
  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: 10px;
}
@media screen and (min-width: 780px) {
  .hero-service-std .header .hgroup {
    -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: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 12px;
  }
}
@media screen and (min-width: 960px) {
  .hero-service-std .header .hgroup {
    width: 100%;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 36px;
  }
}
.hero-service-std .header .hgroup .prefix {
  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: 6px;
  margin-top: 8px;
}
@media screen and (min-width: 780px) {
  .hero-service-std .header .hgroup .prefix {
    margin-top: 0;
  }
}
@media screen and (min-width: 960px) {
  .hero-service-std .header .hgroup .prefix {
    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;
    margin-top: 0;
  }
}
.hero-service-std .header .hgroup .prefix .text {
  font-size: 0.8125rem;
  line-height: 1.2;
  letter-spacing: 0.1em;
}
@media screen and (min-width: 960px) {
  .hero-service-std .header .hgroup .prefix .text {
    font-size: 0.9375rem;
    line-height: 1.2;
    letter-spacing: 0.1em;
  }
}
.hero-service-std .header .hgroup .prefix .number {
  font-size: 2.5625rem;
  line-height: 1;
  letter-spacing: 0.05em;
}
@media screen and (min-width: 960px) {
  .hero-service-std .header .hgroup .prefix .number {
    font-size: 3.125rem;
    line-height: 1;
    letter-spacing: 0.05em;
  }
}
.hero-service-std .header .hgroup .heading-large {
  margin-top: 8px;
  font-size: 1.9375rem;
  line-height: 1.23;
  letter-spacing: 0.1em;
  text-align: center;
}
@media screen and (min-width: 780px) {
  .hero-service-std .header .hgroup .heading-large {
    margin-top: 0;
    font-size: 1.9375rem;
    line-height: 1;
    letter-spacing: 0.1em;
    text-align: left;
  }
}
@media screen and (min-width: 960px) {
  .hero-service-std .header .hgroup .heading-large {
    margin-top: 16px;
    font-size: 3.75rem;
    line-height: 1;
    letter-spacing: 0.1333333333em;
    text-align: left;
  }
}
.hero-service-std .text-group {
  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-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  gap: 0;
  max-width: 330px;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (min-width: 780px) {
  .hero-service-std .text-group {
    max-width: 450px;
  }
}
@media screen and (min-width: 960px) {
  .hero-service-std .text-group {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    gap: 32px;
    max-width: 870px;
    margin-top: 0;
    margin-left: auto;
    margin-right: auto;
  }
}
.hero-service-std .text-group .text-std {
  font-size: 0.9375rem;
  line-height: 2;
  letter-spacing: 0.1em;
  text-align: justify;
}
@media screen and (min-width: 960px) {
  .hero-service-std .text-group .text-std {
    max-width: 463px;
    margin-top: 40px;
    font-size: 0.9375rem;
    letter-spacing: 0.1em;
  }
}
.hero-service-std .text-group .hero-image {
  max-width: 209px;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (min-width: 780px) {
  .hero-service-std .text-group .hero-image {
    max-width: 250px;
  }
}
@media screen and (min-width: 960px) {
  .hero-service-std .text-group .hero-image {
    max-width: 250px;
    margin-left: 0;
    margin-right: 32px;
  }
}

.service-interview {
  margin-top: 256px;
  padding-top: 80px;
  padding-bottom: 80px;
  background: url(../images/format/bg_gradation_2.webp) lightgray 0%/cover no-repeat;
  background-size: cover;
}
@media screen and (min-width: 780px) {
  .service-interview {
    margin-top: 260px;
    padding-top: 113px;
    padding-bottom: 113px;
    background-size: cover;
  }
}
@media screen and (min-width: 960px) {
  .service-interview {
    padding-top: 205px;
    padding-bottom: 205px;
    background: url(../images/format/bg_gradation_1.webp) lightgray 50%/cover no-repeat;
    background-size: cover;
  }
}

.section-interview .interview-header {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  max-width: 390px;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (min-width: 780px) {
  .section-interview .interview-header {
    max-width: 520px;
  }
}
@media screen and (min-width: 960px) {
  .section-interview .interview-header {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 8.33%;
    max-width: 1000px;
  }
}
.section-interview .image {
  margin-left: -30px;
  margin-right: -30px;
}
@media screen and (min-width: 780px) {
  .section-interview .image {
    margin-left: 0;
    margin-right: 0;
  }
}
@media screen and (min-width: 960px) {
  .section-interview .image {
    max-width: 630px;
    margin-left: 0;
    margin-right: 0;
  }
}
.section-interview .text-group {
  max-width: 330px;
  margin-top: 28px;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (min-width: 780px) {
  .section-interview .text-group {
    max-width: 450px;
    margin-top: 33px;
  }
}
@media screen and (min-width: 960px) {
  .section-interview .text-group {
    max-width: 350px;
    margin-top: 0;
  }
}
.section-interview .caption {
  font-size: 0.875rem;
  letter-spacing: 0.05em;
  line-height: 2;
}
@media screen and (min-width: 780px) {
  .section-interview .caption {
    font-size: 1rem;
    letter-spacing: 0.05em;
  }
}
.section-interview .hgroup {
  margin-top: 10px;
}
@media screen and (min-width: 780px) {
  .section-interview .hgroup {
    margin-top: 6px;
  }
}
.section-interview .attr {
  font-size: 0.9375rem;
  font-family: "Yu Gothic Pr6N M", "ヒラギノ角ゴシック", "Hiragino Kaku Gothic", メイリオ, Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  letter-spacing: 0.1em;
  line-height: 2;
}
@media screen and (min-width: 780px) {
  .section-interview .attr {
    font-size: 0.9375rem;
    letter-spacing: 0.1em;
  }
}
.section-interview .heading {
  font-size: 1.5625rem;
  letter-spacing: 0.1em;
  line-height: 1.6;
}
@media screen and (min-width: 780px) {
  .section-interview .heading {
    font-size: 1.875rem;
    letter-spacing: 0.18em;
  }
}
.section-interview .text-std {
  margin-top: 14px;
}
@media screen and (min-width: 960px) {
  .section-interview .text-std {
    margin-top: 12px;
  }
}
.section-interview .button {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  margin-top: 12px;
}

.service-step-list {
  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: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  gap: 20px;
}
@media screen and (min-width: 960px) {
  .service-step-list {
    gap: 25px;
  }
}
.service-step-list .section-step {
  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;
  width: 100%;
  max-width: 330px;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (min-width: 780px) {
  .service-step-list .section-step {
    max-width: 460px;
  }
}
@media screen and (min-width: 960px) {
  .service-step-list .section-step {
    max-width: 516px;
  }
}
.service-step-list .step-header {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 13px;
  width: 100%;
}
.service-step-list .heading {
  font-size: 1.25rem;
  letter-spacing: 0.12em;
  line-height: 1.5;
}
@media screen and (min-width: 960px) {
  .service-step-list .heading {
    font-size: 1.5625rem;
    letter-spacing: 0.13em;
  }
}
.service-step-list .step-body {
  margin-top: 9px;
  width: 100%;
}
.service-step-list .step-body .text-std {
  font-family: "Yu Gothic Pr6N M", "ヒラギノ角ゴシック", "Hiragino Kaku Gothic", メイリオ, Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-size: 0.9375rem;
  line-height: 2;
  letter-spacing: 0.1em;
}
@media screen and (min-width: 780px) {
  .service-step-list .step-body .text-std {
    font-size: 0.9375rem;
    letter-spacing: 0.1em;
  }
}
.service-step-list .arrow {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 100%;
  margin-top: 16px;
  margin-bottom: 0;
}
@media screen and (min-width: 960px) {
  .service-step-list .arrow {
    margin-top: 20px;
  }
}
.service-step-list .arrow svg {
  display: block;
  width: 20px;
  height: 21px;
}
.service-step-list .arrow svg path {
  stroke: #4c8ebe;
}

.service-flow-link {
  max-width: 312px;
  margin-left: auto;
  margin-right: auto;
  padding-bottom: 250px;
}
@media screen and (min-width: 780px) {
  .service-flow-link {
    max-width: 586px;
    padding-bottom: 230px;
  }
}
.service-flow-link .item {
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  border-top: 1px solid transparent;
  border-bottom: 1px solid #808080;
}

.style-service.product-planning #ornament-1 {
  display: none;
  position: absolute;
  top: 0;
  right: 0;
  z-index: 1;
}
@media screen and (min-width: 780px) {
  .style-service.product-planning #ornament-1 {
    display: block;
    top: -125px;
  }
}
@media screen and (min-width: 960px) {
  .style-service.product-planning #ornament-1 {
    top: -125px;
  }
}
@media screen and (min-width: 780px) {
  .style-service.product-planning #ornament-1 .ornament-image {
    -webkit-transform: translateX(-80px);
            transform: translateX(-80px);
  }
}
@media screen and (min-width: 960px) {
  .style-service.product-planning #ornament-1 .ornament-image {
    -webkit-transform: translateX(-200px);
            transform: translateX(-200px);
  }
}
@media screen and (min-width: 780px) {
  .style-service.product-planning #ornament-1 .ornament-image img {
    width: 159px;
  }
}
@media screen and (min-width: 960px) {
  .style-service.product-planning #ornament-1 .ornament-image img {
    width: 257px;
  }
}
.style-service.product-planning #ornament-2 {
  position: absolute;
  top: 107px;
  right: 0;
  z-index: 2;
}
@media screen and (min-width: 780px) {
  .style-service.product-planning #ornament-2 {
    top: 157px;
  }
}
@media screen and (min-width: 960px) {
  .style-service.product-planning #ornament-2 {
    top: 157px;
  }
}
.style-service.product-planning #ornament-2 .ornament-image {
  -webkit-transform: translateX(0px);
          transform: translateX(0px);
}
@media screen and (min-width: 780px) {
  .style-service.product-planning #ornament-2 .ornament-image {
    -webkit-transform: translateX(0px);
            transform: translateX(0px);
  }
}
@media screen and (min-width: 960px) {
  .style-service.product-planning #ornament-2 .ornament-image {
    -webkit-transform: translateX(94px);
            transform: translateX(94px);
  }
}
.style-service.product-planning #ornament-2 .ornament-image img {
  width: 120px;
}
@media screen and (min-width: 780px) {
  .style-service.product-planning #ornament-2 .ornament-image img {
    width: 156px;
  }
}
@media screen and (min-width: 960px) {
  .style-service.product-planning #ornament-2 .ornament-image img {
    width: 216px;
  }
}
.style-service.product-planning #ornament-3 {
  position: absolute;
  bottom: -180px;
  left: 0;
  z-index: 2;
}
@media screen and (min-width: 780px) {
  .style-service.product-planning #ornament-3 {
    bottom: -310px;
  }
}
@media screen and (min-width: 960px) {
  .style-service.product-planning #ornament-3 {
    bottom: -380px;
  }
}
.style-service.product-planning #ornament-3 .ornament-image {
  -webkit-transform: translateX(0px);
          transform: translateX(0px);
}
@media screen and (min-width: 780px) {
  .style-service.product-planning #ornament-3 .ornament-image {
    -webkit-transform: translateX(-50px);
            transform: translateX(-50px);
  }
}
@media screen and (min-width: 960px) {
  .style-service.product-planning #ornament-3 .ornament-image {
    -webkit-transform: translateX(-100px);
            transform: translateX(-100px);
  }
}
.style-service.product-planning #ornament-3 .ornament-image img {
  width: 121px;
}
@media screen and (min-width: 780px) {
  .style-service.product-planning #ornament-3 .ornament-image img {
    width: 171px;
  }
}
@media screen and (min-width: 960px) {
  .style-service.product-planning #ornament-3 .ornament-image img {
    width: 323px;
  }
}

.service-product-planning {
  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;
  gap: 45px;
  position: relative;
  margin-top: 250px;
  z-index: 2;
}
@media screen and (min-width: 960px) {
  .service-product-planning {
    gap: 60px;
    margin-top: 200px;
  }
}
.service-product-planning .section-step {
  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;
  width: 100%;
  max-width: 330px;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (min-width: 780px) {
  .service-product-planning .section-step {
    max-width: 460px;
  }
}
.service-product-planning .step-header {
  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;
  width: 100%;
}
.service-product-planning .heading {
  margin-top: 8px;
  font-size: 1.5625rem;
  letter-spacing: 0.1em;
  line-height: 1.6;
  text-align: center;
}
@media screen and (min-width: 960px) {
  .service-product-planning .heading {
    margin-top: 10px;
    font-size: 1.875rem;
    letter-spacing: 0.18em;
  }
}
.service-product-planning .step-body {
  margin-top: 20px;
  padding-bottom: 20px;
  border-bottom: 1px solid #808080;
}
.service-product-planning .step-body .text-std {
  font-size: 0.9375rem;
  line-height: 2;
  letter-spacing: 0.1em;
}
@media screen and (min-width: 780px) {
  .service-product-planning .step-body .text-std {
    font-size: 0.9375rem;
    letter-spacing: 0.1em;
  }
}
.service-product-planning .arrow {
  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;
  width: 100%;
  margin-top: 25px;
  margin-bottom: 0;
}
.service-product-planning .arrow svg {
  display: block;
  width: 20px;
  height: 21px;
}

.service-planning-steps {
  margin-top: 256px;
}
@media screen and (min-width: 780px) {
  .service-planning-steps {
    margin-top: 230px;
  }
}
.service-planning-steps .section-header {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  position: relative;
  max-width: 390px;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (min-width: 780px) {
  .service-planning-steps .section-header {
    max-width: 520px;
  }
}
@media screen and (min-width: 960px) {
  .service-planning-steps .section-header {
    -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: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 8.33%;
    max-width: 1000px;
  }
}
.service-planning-steps .section-header .image {
  position: relative;
  margin-left: -30px;
  margin-right: -30px;
}
@media screen and (min-width: 780px) {
  .service-planning-steps .section-header .image {
    margin-left: 0;
    margin-right: 0;
  }
}
@media screen and (min-width: 960px) {
  .service-planning-steps .section-header .image {
    max-width: 630px;
    margin-left: 0;
    margin-right: 0;
  }
}
.service-planning-steps .section-header .text-group {
  max-width: 330px;
  margin-top: 28px;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (min-width: 780px) {
  .service-planning-steps .section-header .text-group {
    max-width: 450px;
    margin-top: 33px;
  }
}
@media screen and (min-width: 960px) {
  .service-planning-steps .section-header .text-group {
    max-width: 350px;
    margin-top: 0;
  }
}
.service-planning-steps .section-header .hgroup {
  margin-top: 10px;
}
@media screen and (min-width: 780px) {
  .service-planning-steps .section-header .hgroup {
    margin-top: 6px;
  }
}
.service-planning-steps .section-header .heading {
  font-size: 1.5625rem;
  letter-spacing: 0.1em;
  line-height: 1.6;
}
@media screen and (min-width: 780px) {
  .service-planning-steps .section-header .heading {
    font-size: 1.875rem;
    letter-spacing: 0.18em;
  }
}
.service-planning-steps .section-header .text-std {
  margin-top: 14px;
}
@media screen and (min-width: 960px) {
  .service-planning-steps .section-header .text-std {
    margin-top: 12px;
  }
}
.service-planning-steps .service-step-list {
  gap: 20px;
  position: relative;
  margin-top: 80px;
}
@media screen and (min-width: 960px) {
  .service-planning-steps .service-step-list {
    gap: 25px;
    margin-top: 150px;
  }
}

.service-flow-link {
  margin-top: 267px;
  padding-bottom: 250px;
}
@media screen and (min-width: 780px) {
  .service-flow-link {
    margin-top: 380px;
    padding-bottom: 230px;
  }
}

.style-service.material #ornament-1 {
  position: absolute;
  top: -153px;
  left: 0;
  z-index: 1;
}
@media screen and (min-width: 780px) {
  .style-service.material #ornament-1 {
    top: -153px;
  }
}
@media screen and (min-width: 960px) {
  .style-service.material #ornament-1 {
    top: -231px;
    left: 50%;
    margin-left: -212px;
  }
}
.style-service.material #ornament-1 .ornament-image {
  -webkit-transform: translateX(-68px);
          transform: translateX(-68px);
}
@media screen and (min-width: 780px) {
  .style-service.material #ornament-1 .ornament-image {
    -webkit-transform: translateX(-68px);
            transform: translateX(-68px);
  }
}
@media screen and (min-width: 960px) {
  .style-service.material #ornament-1 .ornament-image {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
}
.style-service.material #ornament-1 .ornament-image img {
  width: 267px;
}
@media screen and (min-width: 780px) {
  .style-service.material #ornament-1 .ornament-image img {
    width: 267px;
  }
}
@media screen and (min-width: 960px) {
  .style-service.material #ornament-1 .ornament-image img {
    width: 424px;
  }
}
.style-service.material #ornament-2 {
  position: absolute;
  bottom: -323px;
  left: 0;
  z-index: 2;
}
@media screen and (min-width: 780px) {
  .style-service.material #ornament-2 {
    bottom: -353px;
  }
}
@media screen and (min-width: 960px) {
  .style-service.material #ornament-2 {
    bottom: -53px;
  }
}
.style-service.material #ornament-2 .ornament-image {
  -webkit-transform: translateX(0);
          transform: translateX(0);
}
@media screen and (min-width: 780px) {
  .style-service.material #ornament-2 .ornament-image {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
}
@media screen and (min-width: 960px) {
  .style-service.material #ornament-2 .ornament-image {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
}
.style-service.material #ornament-2 .ornament-image img {
  width: 289.411px;
}
@media screen and (min-width: 780px) {
  .style-service.material #ornament-2 .ornament-image img {
    width: 289.411px;
  }
}
@media screen and (min-width: 960px) {
  .style-service.material #ornament-2 .ornament-image img {
    width: 434px;
  }
}

@media screen and (min-width: 960px) {
  .hero-service-std.material .header {
    max-width: 748px;
  }
}
@media screen and (min-width: 960px) {
  .hero-service-std.material .text-group {
    max-width: 748px;
  }
}
@media screen and (min-width: 960px) {
  .hero-service-std.material .text-group .hero-image {
    max-width: 250px;
    margin-right: 0;
  }
}

.service-material-description {
  position: relative;
  margin-top: 280px;
}
@media screen and (min-width: 960px) {
  .service-material-description {
    margin-top: 290px;
  }
}

.service-material-features {
  margin-top: 368px;
}
@media screen and (min-width: 780px) {
  .service-material-features {
    margin-top: 460px;
  }
}
.service-material-features .features-grid {
  margin-top: 30px;
}
@media screen and (min-width: 960px) {
  .service-material-features .features-grid {
    margin-top: 22px;
  }
}

.service-material-steps {
  margin-top: 268px;
}
@media screen and (min-width: 780px) {
  .service-material-steps {
    margin-top: 316px;
  }
}
.service-material-steps .content-std {
  position: relative;
}
.service-material-steps .service-step-list {
  gap: 20px;
  margin-top: 80px;
}
@media screen and (min-width: 960px) {
  .service-material-steps .service-step-list {
    gap: 25px;
    margin-top: 192px;
  }
}
.service-material-steps .service-step-list .section-step .step-header {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
}
@media screen and (min-width: 960px) {
  .service-material-steps .service-step-list .section-step .step-header {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    margin-bottom: 10px;
  }
}
.service-material-steps .service-step-list .section-step .step-header .heading-medium {
  margin-top: 0.2em;
  font-size: 0.9375rem;
  letter-spacing: 0.1em;
  line-height: 1.5;
}
@media screen and (min-width: 960px) {
  .service-material-steps .service-step-list .section-step .step-header .heading-medium {
    font-size: 1.125rem;
    letter-spacing: 0.12em;
  }
}
.service-material-steps .service-step-list .section-step .arrow {
  margin-top: 16px;
}
@media screen and (min-width: 960px) {
  .service-material-steps .service-step-list .section-step .arrow {
    margin-top: 0;
  }
}

.service-material-patent {
  margin-top: 150px;
}
@media screen and (min-width: 960px) {
  .service-material-patent {
    margin-top: 460px;
  }
}
.service-material-patent ul.list-std {
  max-width: 308px;
  margin-top: 115px;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (min-width: 960px) {
  .service-material-patent ul.list-std {
    max-width: 593px;
    margin-top: 156px;
  }
}
.service-material-patent ul.list-std li {
  list-style: circle;
  font-size: 0.9375rem;
  font-family: "Yu Gothic Pr6N M", "ヒラギノ角ゴシック", "Hiragino Kaku Gothic", メイリオ, Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  letter-spacing: 0.1em;
  line-height: 2;
  text-align: justify;
}
@media screen and (min-width: 960px) {
  .service-material-patent ul.list-std li {
    font-size: 0.9375rem;
    letter-spacing: 0.1em;
    line-height: 1.6;
  }
}
.service-material-patent ul.list-std li + li {
  margin-top: 37px;
}

.service-material-original {
  margin-top: 274px;
}
@media screen and (min-width: 960px) {
  .service-material-original {
    margin-top: 322px;
  }
}
@media screen and (min-width: 960px) {
  .service-material-original .columns-std {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    max-width: 1050px;
    gap: 9.14%;
  }
}
.service-material-original .columns-std .column-image {
  margin-left: 0;
  margin-right: 0;
}
@media screen and (min-width: 960px) {
  .service-material-original .columns-std .column-image {
    max-width: 490px;
  }
}
@media screen and (min-width: 960px) {
  .service-material-original .columns-std .column-text {
    max-width: 463px;
  }
}
.service-material-original .columns-std .column-text .button {
  max-width: 300px;
  margin-top: 30px;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (min-width: 960px) {
  .service-material-original .columns-std .column-text .button {
    max-width: 346px;
    margin-top: 30px;
    margin-left: 0;
  }
}

.service-flow-link {
  margin-top: 267px;
  padding-bottom: 250px;
}
@media screen and (min-width: 780px) {
  .service-flow-link {
    margin-top: 230px;
    padding-bottom: 230px;
  }
}

.style-service.formulation #ornament-1 {
  position: absolute;
  top: -94px;
  left: 0;
  z-index: 1;
}
@media screen and (min-width: 780px) {
  .style-service.formulation #ornament-1 {
    top: -94px;
  }
}
@media screen and (min-width: 960px) {
  .style-service.formulation #ornament-1 {
    width: 466px;
    top: -94px;
    left: 50%;
  }
}
.style-service.formulation #ornament-1 .ornament-image {
  -webkit-transform: translateX(-38px);
          transform: translateX(-38px);
}
@media screen and (min-width: 780px) {
  .style-service.formulation #ornament-1 .ornament-image {
    -webkit-transform: translateX(-38px);
            transform: translateX(-38px);
  }
}
@media screen and (min-width: 960px) {
  .style-service.formulation #ornament-1 .ornament-image {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
}
.style-service.formulation #ornament-1 .ornament-image img {
  width: 269px;
}
@media screen and (min-width: 780px) {
  .style-service.formulation #ornament-1 .ornament-image img {
    width: 269px;
  }
}
@media screen and (min-width: 960px) {
  .style-service.formulation #ornament-1 .ornament-image img {
    width: 466px;
  }
}
.style-service.formulation #ornament-2 {
  position: absolute;
  bottom: -103px;
  right: -98px;
  z-index: 1;
}
@media screen and (min-width: 780px) {
  .style-service.formulation #ornament-2 {
    right: -98px;
    bottom: -103px;
  }
}
@media screen and (min-width: 960px) {
  .style-service.formulation #ornament-2 {
    bottom: -203px;
    right: -243px;
  }
}
.style-service.formulation #ornament-2 .ornament-image {
  -webkit-transform: translateX(0);
          transform: translateX(0);
}
@media screen and (min-width: 780px) {
  .style-service.formulation #ornament-2 .ornament-image {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
}
@media screen and (min-width: 960px) {
  .style-service.formulation #ornament-2 .ornament-image {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
}
.style-service.formulation #ornament-2 .ornament-image img {
  width: 239.351px;
}
@media screen and (min-width: 780px) {
  .style-service.formulation #ornament-2 .ornament-image img {
    width: 239.351px;
  }
}
@media screen and (min-width: 960px) {
  .style-service.formulation #ornament-2 .ornament-image img {
    width: 415.86px;
  }
}

@media screen and (min-width: 960px) {
  .hero-service-std.formulation .header {
    max-width: 776px;
  }
}
@media screen and (min-width: 960px) {
  .hero-service-std.formulation .text-group {
    max-width: 776px;
  }
}
@media screen and (min-width: 960px) {
  .hero-service-std.formulation .text-group .hero-image {
    max-width: 250px;
    margin-right: 0;
  }
}

.service-formulation-research {
  position: relative;
  margin-top: 285px;
}
@media screen and (min-width: 960px) {
  .service-formulation-research {
    margin-top: 220px;
  }
}
.service-formulation-research .column-image {
  position: relative;
}

.service-formulation-develop {
  margin-top: 272px;
}
@media screen and (min-width: 960px) {
  .service-formulation-develop {
    margin-top: 383px;
  }
}
.service-formulation-develop .column-image {
  position: relative;
}

.service-formulation-interview {
  margin-top: 272px;
}
@media screen and (min-width: 960px) {
  .service-formulation-interview {
    margin-top: 220px;
  }
}

.service-formulation-developer {
  margin-top: 250px;
}
@media screen and (min-width: 960px) {
  .service-formulation-developer {
    margin-top: 220px;
  }
}

.style-service.measurement #ornament-1 {
  position: absolute;
  top: -150px;
  left: 0;
  z-index: 1;
}
@media screen and (min-width: 780px) {
  .style-service.measurement #ornament-1 {
    top: -170px;
  }
}
@media screen and (min-width: 960px) {
  .style-service.measurement #ornament-1 {
    width: 466px;
    top: -150px;
    left: 0;
  }
}
.style-service.measurement #ornament-1 .ornament-image {
  -webkit-transform: translateX(0);
          transform: translateX(0);
}
@media screen and (min-width: 780px) {
  .style-service.measurement #ornament-1 .ornament-image {
    -webkit-transform: translateX(-38px);
            transform: translateX(-38px);
  }
}
@media screen and (min-width: 960px) {
  .style-service.measurement #ornament-1 .ornament-image {
    -webkit-transform: translateX(-191px);
            transform: translateX(-191px);
  }
}
.style-service.measurement #ornament-1 .ornament-image img {
  width: 213px;
}
@media screen and (min-width: 780px) {
  .style-service.measurement #ornament-1 .ornament-image img {
    width: 213px;
  }
}
@media screen and (min-width: 960px) {
  .style-service.measurement #ornament-1 .ornament-image img {
    width: 389px;
  }
}
.style-service.measurement #ornament-2 {
  position: absolute;
  top: -117px;
  right: 19px;
  z-index: 1;
}
@media screen and (min-width: 780px) {
  .style-service.measurement #ornament-2 {
    top: -117px;
    right: 19px;
  }
}
@media screen and (min-width: 960px) {
  .style-service.measurement #ornament-2 {
    top: auto;
    left: -108px;
    right: auto;
    bottom: -200px;
  }
}
.style-service.measurement #ornament-2 .ornament-image {
  -webkit-transform: translateX(0);
          transform: translateX(0);
}
@media screen and (min-width: 780px) {
  .style-service.measurement #ornament-2 .ornament-image {
    -webkit-transform: translateX(-38px);
            transform: translateX(-38px);
  }
}
@media screen and (min-width: 960px) {
  .style-service.measurement #ornament-2 .ornament-image {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
}
.style-service.measurement #ornament-2 .ornament-image img {
  width: 156px;
}
@media screen and (min-width: 780px) {
  .style-service.measurement #ornament-2 .ornament-image img {
    width: 156px;
  }
}
@media screen and (min-width: 960px) {
  .style-service.measurement #ornament-2 .ornament-image img {
    width: 216px;
  }
}
.style-service.measurement #ornament-3 {
  position: absolute;
  bottom: -103px;
  right: -8px;
  z-index: 1;
}
@media screen and (min-width: 780px) {
  .style-service.measurement #ornament-3 {
    bottom: -103px;
    right: -6px;
  }
}
@media screen and (min-width: 960px) {
  .style-service.measurement #ornament-3 {
    bottom: -203px;
    right: -243px;
  }
}
.style-service.measurement #ornament-3 .ornament-image {
  -webkit-transform: translateX(0);
          transform: translateX(0);
}
@media screen and (min-width: 780px) {
  .style-service.measurement #ornament-3 .ornament-image {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
}
@media screen and (min-width: 960px) {
  .style-service.measurement #ornament-3 .ornament-image {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
}
.style-service.measurement #ornament-3 .ornament-image img {
  width: 239.351px;
}
@media screen and (min-width: 780px) {
  .style-service.measurement #ornament-3 .ornament-image img {
    width: 239.351px;
  }
}
@media screen and (min-width: 960px) {
  .style-service.measurement #ornament-3 .ornament-image img {
    width: 415.86px;
  }
}

@media screen and (min-width: 960px) {
  .hero-service-std.measurement .header {
    max-width: 753px;
  }
}
@media screen and (min-width: 960px) {
  .hero-service-std.measurement .text-group {
    max-width: 753px;
  }
}

.service-measurement-visia {
  margin-top: 290px;
}
@media screen and (min-width: 960px) {
  .service-measurement-visia {
    margin-top: 250px;
  }
}
.service-measurement-visia .column-image {
  position: relative;
}

.service-measurement-cutometer {
  margin-top: 272px;
}
@media screen and (min-width: 960px) {
  .service-measurement-cutometer {
    margin-top: 400px;
  }
}

.service-measurement-spectrocolorimeter {
  margin-top: 272px;
}
@media screen and (min-width: 960px) {
  .service-measurement-spectrocolorimeter {
    margin-top: 397px;
  }
}
.service-measurement-spectrocolorimeter .column-image {
  position: relative;
}

.service-measurement-hapina {
  margin-top: 263px;
}
@media screen and (min-width: 960px) {
  .service-measurement-hapina {
    margin-top: 385px;
  }
}
.service-measurement-hapina .section-std {
  position: relative;
}
.service-measurement-hapina .section-std .text-group {
  position: relative;
  z-index: 2;
}

.style-service.manufacturing #ornament-1 {
  position: absolute;
  top: -106px;
  right: 24px;
  z-index: 1;
}
@media screen and (min-width: 780px) {
  .style-service.manufacturing #ornament-1 {
    top: -106px;
    right: 24px;
  }
}
@media screen and (min-width: 960px) {
  .style-service.manufacturing #ornament-1 {
    top: -192px;
    right: -85px;
  }
}
.style-service.manufacturing #ornament-1 .ornament-image {
  -webkit-transform: translateX(0);
          transform: translateX(0);
}
@media screen and (min-width: 780px) {
  .style-service.manufacturing #ornament-1 .ornament-image {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
}
@media screen and (min-width: 960px) {
  .style-service.manufacturing #ornament-1 .ornament-image {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
}
.style-service.manufacturing #ornament-1 .ornament-image img {
  width: 131px;
}
@media screen and (min-width: 780px) {
  .style-service.manufacturing #ornament-1 .ornament-image img {
    width: 131px;
  }
}
@media screen and (min-width: 960px) {
  .style-service.manufacturing #ornament-1 .ornament-image img {
    width: 262px;
  }
}
.style-service.manufacturing #ornament-2 {
  position: absolute;
  top: -107px;
  left: -25px;
  z-index: 1;
}
@media screen and (min-width: 780px) {
  .style-service.manufacturing #ornament-2 {
    top: -107px;
    left: -25px;
  }
}
@media screen and (min-width: 960px) {
  .style-service.manufacturing #ornament-2 {
    top: -217px;
    left: 0;
  }
}
.style-service.manufacturing #ornament-2 .ornament-image {
  -webkit-transform: translateX(0);
          transform: translateX(0);
}
@media screen and (min-width: 780px) {
  .style-service.manufacturing #ornament-2 .ornament-image {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
}
@media screen and (min-width: 960px) {
  .style-service.manufacturing #ornament-2 .ornament-image {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
}
.style-service.manufacturing #ornament-2 .ornament-image img {
  width: 156px;
}
@media screen and (min-width: 780px) {
  .style-service.manufacturing #ornament-2 .ornament-image img {
    width: 156px;
  }
}
@media screen and (min-width: 960px) {
  .style-service.manufacturing #ornament-2 .ornament-image img {
    width: 239px;
  }
}

.style-service.manufacturing .service-interview {
  margin-top: 210px;
}
@media screen and (min-width: 960px) {
  .style-service.manufacturing .service-interview {
    margin-top: 238px;
  }
}
@media screen and (min-width: 960px) {
  .style-service.manufacturing .service-interview .hgroup .heading {
    letter-spacing: 0.1em;
  }
}
@media screen and (min-width: 960px) {
  .hero-service-std.manufacturing .header {
    max-width: 780px;
  }
}
@media screen and (min-width: 960px) {
  .hero-service-std.manufacturing .text-group {
    max-width: 780px;
  }
}

.service-manufacturing-manufacture {
  margin-top: 280px;
}
@media screen and (min-width: 960px) {
  .service-manufacturing-manufacture {
    margin-top: 275px;
  }
}
.service-manufacturing-manufacture .fluid-columns {
  position: relative;
}
.service-manufacturing-manufacture .fluid-columns .column {
  position: relative;
}
@media screen and (min-width: 960px) {
  .service-manufacturing-manufacture .fluid-columns .column {
    z-index: 2;
  }
}

.service-manufacturing-package {
  margin-top: 240px;
}
@media screen and (min-width: 960px) {
  .service-manufacturing-package {
    margin-top: 388px;
  }
}

.service-manufacturing-selection {
  margin-top: 210px;
}
@media screen and (min-width: 960px) {
  .service-manufacturing-selection {
    margin-top: 414px;
  }
}
.service-manufacturing-selection .fluid-columns {
  position: relative;
}

.service-flow-link {
  margin-top: 253px;
  padding-bottom: 240px;
}
@media screen and (min-width: 780px) {
  .service-flow-link {
    margin-top: 230px;
    padding-bottom: 230px;
  }
}

.style-service.quality-control #ornament-1 {
  position: absolute;
  top: -106px;
  right: -47px;
  z-index: 1;
}
@media screen and (min-width: 780px) {
  .style-service.quality-control #ornament-1 {
    top: -106px;
    right: -47px;
  }
}
@media screen and (min-width: 960px) {
  .style-service.quality-control #ornament-1 {
    top: -200px;
    right: -180px;
  }
}
.style-service.quality-control #ornament-1 .ornament-image {
  -webkit-transform: translateX(0);
          transform: translateX(0);
}
@media screen and (min-width: 780px) {
  .style-service.quality-control #ornament-1 .ornament-image {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
}
@media screen and (min-width: 960px) {
  .style-service.quality-control #ornament-1 .ornament-image {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
}
.style-service.quality-control #ornament-1 .ornament-image img {
  width: 144px;
}
@media screen and (min-width: 780px) {
  .style-service.quality-control #ornament-1 .ornament-image img {
    width: 144px;
  }
}
@media screen and (min-width: 960px) {
  .style-service.quality-control #ornament-1 .ornament-image img {
    width: 239px;
  }
}
.style-service.quality-control #ornament-2 {
  position: absolute;
  bottom: -157px;
  left: -75px;
  z-index: 1;
}
@media screen and (min-width: 780px) {
  .style-service.quality-control #ornament-2 {
    bottom: -157px;
    left: -75px;
  }
}
@media screen and (min-width: 960px) {
  .style-service.quality-control #ornament-2 {
    bottom: 134px;
    left: -172px;
  }
}
.style-service.quality-control #ornament-2 .ornament-image {
  -webkit-transform: translateX(0);
          transform: translateX(0);
}
@media screen and (min-width: 780px) {
  .style-service.quality-control #ornament-2 .ornament-image {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
}
@media screen and (min-width: 960px) {
  .style-service.quality-control #ornament-2 .ornament-image {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
}
.style-service.quality-control #ornament-2 .ornament-image img {
  width: 207.087px;
}
@media screen and (min-width: 780px) {
  .style-service.quality-control #ornament-2 .ornament-image img {
    width: 207.087px;
  }
}
@media screen and (min-width: 960px) {
  .style-service.quality-control #ornament-2 .ornament-image img {
    width: 350.422px;
  }
}
.style-service.quality-control #ornament-3 {
  position: absolute;
  top: -106px;
  right: -17px;
  z-index: 1;
}
@media screen and (min-width: 780px) {
  .style-service.quality-control #ornament-3 {
    top: -106px;
    right: -57px;
  }
}
@media screen and (min-width: 960px) {
  .style-service.quality-control #ornament-3 {
    top: -140px;
    right: -140px;
  }
}
.style-service.quality-control #ornament-3 .ornament-image {
  -webkit-transform: translateX(0);
          transform: translateX(0);
}
@media screen and (min-width: 780px) {
  .style-service.quality-control #ornament-3 .ornament-image {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
}
@media screen and (min-width: 960px) {
  .style-service.quality-control #ornament-3 .ornament-image {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
}
.style-service.quality-control #ornament-3 .ornament-image img {
  width: 237px;
}
@media screen and (min-width: 780px) {
  .style-service.quality-control #ornament-3 .ornament-image img {
    width: 237px;
  }
}
@media screen and (min-width: 960px) {
  .style-service.quality-control #ornament-3 .ornament-image img {
    width: 424px;
  }
}

.style-service.quality-control .service-interview {
  margin-top: 290px;
}
@media screen and (min-width: 960px) {
  .style-service.quality-control .service-interview {
    margin-top: 238px;
  }
}
@media screen and (min-width: 960px) {
  .hero-service-std.quality-control .header {
    max-width: 812px;
  }
}
@media screen and (min-width: 960px) {
  .hero-service-std.quality-control .text-group {
    max-width: 812px;
  }
}

.service-quality-control-section-1 {
  margin-top: 275px;
}
@media screen and (min-width: 960px) {
  .service-quality-control-section-1 {
    margin-top: 215px;
  }
}
.service-quality-control-section-1 .section-accordion {
  position: relative;
  z-index: 2;
}

.service-quality-control-div {
  margin-top: 300px;
}
@media screen and (min-width: 960px) {
  .service-quality-control-div {
    margin-top: 450px;
  }
}

.service-quality-control-section-2 {
  margin-top: 64px;
}
@media screen and (min-width: 960px) {
  .service-quality-control-section-2 {
    margin-top: 120px;
  }
}
.service-quality-control-section-2 .features-grid {
  position: relative;
  margin-top: auto;
  z-index: 2;
}

.style-service.products-handled #ornament-1 {
  position: absolute;
  bottom: -106px;
  right: -74px;
  z-index: 1;
}
@media screen and (min-width: 780px) {
  .style-service.products-handled #ornament-1 {
    bottom: -221px;
    right: -128px;
  }
}
@media screen and (min-width: 960px) {
  .style-service.products-handled #ornament-1 {
    bottom: -276px;
    right: -360px;
  }
}
.style-service.products-handled #ornament-1 .ornament-image {
  -webkit-transform: translateX(0);
          transform: translateX(0);
}
@media screen and (min-width: 780px) {
  .style-service.products-handled #ornament-1 .ornament-image {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
}
@media screen and (min-width: 960px) {
  .style-service.products-handled #ornament-1 .ornament-image {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
}
.style-service.products-handled #ornament-1 .ornament-image img {
  width: 209.133px;
}
@media screen and (min-width: 780px) {
  .style-service.products-handled #ornament-1 .ornament-image img {
    width: 309.952px;
  }
}
@media screen and (min-width: 960px) {
  .style-service.products-handled #ornament-1 .ornament-image img {
    width: 475.912px;
  }
}
.style-service.products-handled #ornament-2 {
  position: absolute;
  bottom: -157px;
  left: 0;
  z-index: 2;
}
@media screen and (min-width: 780px) {
  .style-service.products-handled #ornament-2 {
    left: -25px;
    bottom: -127px;
  }
}
@media screen and (min-width: 960px) {
  .style-service.products-handled #ornament-2 {
    left: -69px;
    bottom: -183px;
  }
}
.style-service.products-handled #ornament-2 .ornament-image {
  -webkit-transform: translateX(0);
          transform: translateX(0);
}
@media screen and (min-width: 780px) {
  .style-service.products-handled #ornament-2 .ornament-image {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
}
@media screen and (min-width: 960px) {
  .style-service.products-handled #ornament-2 .ornament-image {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
}
.style-service.products-handled #ornament-2 .ornament-image img {
  width: 213px;
}
@media screen and (min-width: 780px) {
  .style-service.products-handled #ornament-2 .ornament-image img {
    width: 263px;
  }
}
@media screen and (min-width: 960px) {
  .style-service.products-handled #ornament-2 .ornament-image img {
    width: 396px;
  }
}

.hero-products-handled {
  position: relative;
}
.hero-products-handled > .content-std {
  position: relative;
  padding-top: 73px;
}
@media screen and (min-width: 780px) {
  .hero-products-handled > .content-std {
    padding-top: 32px;
  }
}
@media screen and (min-width: 960px) {
  .hero-products-handled > .content-std {
    padding-top: 132px;
  }
}
.hero-products-handled .header {
  position: relative;
  margin-left: auto;
  margin-right: auto;
  max-width: 100%;
}
@media screen and (min-width: 780px) {
  .hero-products-handled .header {
    max-width: 656px;
  }
}
@media screen and (min-width: 960px) {
  .hero-products-handled .header {
    max-width: 942px;
  }
}
.hero-products-handled .hgroup {
  position: relative;
  z-index: 2;
}
@media screen and (min-width: 780px) {
  .hero-products-handled .hgroup {
    max-width: 450px;
    margin-left: auto;
    margin-right: auto;
  }
}
@media screen and (min-width: 960px) {
  .hero-products-handled .hgroup {
    margin-left: 0;
    margin-right: 0;
  }
}
.hero-products-handled .hgroup .heading-large {
  font-size: 2.375rem;
  letter-spacing: 0.15em;
  line-height: 1.2;
}
@media screen and (min-width: 960px) {
  .hero-products-handled .hgroup .heading-large {
    font-size: 3.75rem;
    letter-spacing: 0.15em;
  }
}
.hero-products-handled .hero-image {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  position: relative;
  margin-top: -20px;
  margin-left: -30px;
  margin-right: -30px;
}
@media screen and (min-width: 780px) {
  .hero-products-handled .hero-image {
    max-width: 480px;
    margin-top: -28px;
    margin-left: 0;
    margin-right: 0;
  }
}
@media screen and (min-width: 960px) {
  .hero-products-handled .hero-image {
    position: absolute;
    right: 0;
    bottom: 0;
    max-width: 512px;
    margin-top: 0;
  }
}
.hero-products-handled .hero-image img.image-fit {
  position: relative;
  z-index: 1;
}
.hero-products-handled .text-group {
  position: relative;
  margin-top: 35px;
  margin-left: auto;
  margin-right: auto;
  z-index: 2;
}
@media screen and (min-width: 780px) {
  .hero-products-handled .text-group {
    max-width: 450px;
    margin-top: 72px;
  }
}
@media screen and (min-width: 960px) {
  .hero-products-handled .text-group {
    max-width: 463px;
    margin-top: 38px;
    margin-left: 0;
    margin-right: 0;
    padding-bottom: 40px;
  }
}
.hero-products-handled .text-group .heading {
  font-size: 1.5625rem;
  letter-spacing: 0.04em;
  line-height: 1.6;
}
@media screen and (min-width: 780px) {
  .hero-products-handled .text-group .heading {
    font-size: 1.875rem;
    letter-spacing: 0.18em;
  }
}
.hero-products-handled .text-group .text-std {
  margin-top: 14px;
}
@media screen and (min-width: 960px) {
  .hero-products-handled .text-group .text-std {
    margin-top: 12px;
  }
}

.service-products-handled-cosmetics {
  margin-top: 238px;
}
@media screen and (min-width: 780px) {
  .service-products-handled-cosmetics {
    margin-top: 238px;
  }
}
@media screen and (min-width: 960px) {
  .service-products-handled-cosmetics {
    margin-top: 253px;
  }
}
.service-products-handled-cosmetics .list-cosmetics {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 24px;
  max-width: 272px;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (min-width: 780px) {
  .service-products-handled-cosmetics .list-cosmetics {
    gap: 32px;
    max-width: 450px;
    margin-top: 122px;
    padding-left: 32px;
    padding-right: 32px;
  }
}
@media screen and (min-width: 960px) {
  .service-products-handled-cosmetics .list-cosmetics {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 40px;
    max-width: 1000px;
    margin-top: 122px;
  }
}
.service-products-handled-cosmetics .list-cosmetics .list-group {
  width: 100%;
  padding-top: 24px;
  padding-bottom: 24px;
}
@media screen and (min-width: 780px) {
  .service-products-handled-cosmetics .list-cosmetics .list-group {
    padding-top: 32px;
    padding-bottom: 32px;
  }
}
@media screen and (min-width: 960px) {
  .service-products-handled-cosmetics .list-cosmetics .list-group {
    max-width: 285px;
    margin-left: auto;
    margin-right: auto;
    padding-left: 0;
    padding-right: 0;
  }
}
.service-products-handled-cosmetics .list-cosmetics .list-header {
  margin-bottom: 12px;
}
.service-products-handled-cosmetics .list-cosmetics .list-header .heading {
  padding-bottom: 0.4em;
  border-bottom: 1px solid #808080;
  font-size: 1.125rem;
  font-weight: 700;
  letter-spacing: 0.0666666667em;
  line-height: 1.4;
}
@media screen and (min-width: 960px) {
  .service-products-handled-cosmetics .list-cosmetics .list-header .heading {
    font-size: 1.375rem;
    letter-spacing: 0.0681818182em;
  }
}
.service-products-handled-cosmetics .list-cosmetics .list-body ul.list-std {
  margin-bottom: 8px;
  padding-left: 1em;
}
.service-products-handled-cosmetics .list-cosmetics .list-body ul.list-std:last-child {
  margin-bottom: 0;
}
.service-products-handled-cosmetics .list-cosmetics .list-body ul.list-std li {
  list-style: circle;
  font-size: 0.9375rem;
  font-family: "Yu Gothic Pr6N M", "ヒラギノ角ゴシック", "Hiragino Kaku Gothic", メイリオ, Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  letter-spacing: 0.0333333333em;
  line-height: 1.7;
}
@media screen and (min-width: 960px) {
  .service-products-handled-cosmetics .list-cosmetics .list-body ul.list-std li {
    font-size: 1.0625rem;
    letter-spacing: 0.0411764706em;
  }
}

.service-products-handled-quasi-drug {
  margin-top: 238px;
}
@media screen and (min-width: 780px) {
  .service-products-handled-quasi-drug {
    margin-top: 238px;
  }
}
@media screen and (min-width: 960px) {
  .service-products-handled-quasi-drug {
    margin-top: 253px;
  }
}
.service-products-handled-quasi-drug .content-std {
  position: relative;
}
.service-products-handled-quasi-drug .list-quasi-drug {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 24px;
  position: relative;
  max-width: 300px;
  margin-top: 40px;
  margin-left: auto;
  margin-right: auto;
  z-index: 2;
}
@media screen and (min-width: 780px) {
  .service-products-handled-quasi-drug .list-quasi-drug {
    gap: 32px;
    max-width: 350px;
    margin-top: 40px;
  }
}
@media screen and (min-width: 960px) {
  .service-products-handled-quasi-drug .list-quasi-drug {
    gap: 40px;
    max-width: 504px;
    margin-top: 122px;
  }
}
.service-products-handled-quasi-drug .list-quasi-drug .list-group {
  width: 100%;
}
.service-products-handled-quasi-drug .list-quasi-drug .list-header .text-std {
  color: #373737;
  font-size: 0.9375rem;
  font-weight: 700;
  letter-spacing: 0.0333333333em;
  line-height: 1.5;
  text-align: center;
}
@media screen and (min-width: 960px) {
  .service-products-handled-quasi-drug .list-quasi-drug .list-header .text-std {
    font-size: 1.0625rem;
  }
}
.service-products-handled-quasi-drug .list-quasi-drug .list-body {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  margin-top: 12px;
}
@media screen and (min-width: 780px) {
  .service-products-handled-quasi-drug .list-quasi-drug .list-body {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    gap: 2em;
  }
}
.service-products-handled-quasi-drug .list-quasi-drug .list-body ul.list-std {
  padding-left: 1em;
  margin-bottom: 0;
}
.service-products-handled-quasi-drug .list-quasi-drug .list-body ul.list-std li {
  list-style: circle;
  font-size: 0.9375rem;
  font-family: "Yu Gothic Pr6N M", "ヒラギノ角ゴシック", "Hiragino Kaku Gothic", メイリオ, Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  letter-spacing: 0.0333333333em;
  line-height: 1.7;
}
@media screen and (min-width: 960px) {
  .service-products-handled-quasi-drug .list-quasi-drug .list-body ul.list-std li {
    min-width: 188px;
    font-size: 1.0625rem;
  }
}
.service-products-handled-quasi-drug .list-quasi-drug .note {
  margin-top: 12px;
  font-size: 0.8125rem;
  letter-spacing: 0.0153846154em;
  line-height: 1.5;
  text-align: center;
}
@media screen and (min-width: 780px) {
  .service-products-handled-quasi-drug .list-quasi-drug .note {
    margin-top: 25px;
  }
}
@media screen and (min-width: 960px) {
  .service-products-handled-quasi-drug .list-quasi-drug .note {
    margin-top: 53px;
    font-size: 0.9375rem;
  }
}

.service-products-handled-health-food {
  margin-top: 234px;
  padding-bottom: 237px;
}
@media screen and (min-width: 780px) {
  .service-products-handled-health-food {
    margin-top: 243px;
    padding-bottom: 237px;
  }
}
@media screen and (min-width: 960px) {
  .service-products-handled-health-food {
    margin-top: 250px;
    padding-bottom: 238px;
  }
}
.service-products-handled-health-food .section-std {
  margin-top: 38px;
}
@media screen and (min-width: 780px) {
  .service-products-handled-health-food .section-std {
    margin-top: 38px;
  }
}
@media screen and (min-width: 960px) {
  .service-products-handled-health-food .section-std {
    margin-top: 115px;
  }
}

.service-flow-button {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding-top: 28.5px;
  padding-left: 16px;
  padding-bottom: 28.5px;
  /*
  &::after {
  	content: '';
  	display: block;
  	width: 28px;
  	height: 65px;
  	background: url(../images/format/icon_arrow_right_select.svg) no-repeat 0 0;
  	background-size: auto 100%;
  	margin-left: auto;
  	@include mq(md) {
  		width: 28px;
  		height: 65px;							
  	}
  	@include mq(lg) {
  		width: 36px;
  		height: 57px;							
  	}
  }*/
}
@media screen and (min-width: 780px) {
  .service-flow-button {
    padding-top: 28.5px;
    padding-left: 34px;
    padding-right: 6px;
    padding-bottom: 28.5px;
  }
}
@media screen and (min-width: 960px) {
  .service-flow-button {
    padding-top: 43px;
    padding-left: 54px;
    padding-right: 12px;
    padding-bottom: 43px;
  }
}
.service-flow-button:hover {
  background-color: #f7f9fb;
}
.service-flow-button:hover .arrow .icon-arrow-right-large-select:nth-of-type(1) {
  -webkit-transform: translate(60px, 0);
          transform: translate(60px, 0);
}
.service-flow-button:hover .arrow .icon-arrow-right-large-select:nth-of-type(2) {
  -webkit-transform: translate(4px, 0);
          transform: translate(4px, 0);
}
.service-flow-button .prefix {
  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;
}
.service-flow-button .prefix .text {
  font-size: 0.6875rem;
  letter-spacing: 0.1em;
  line-height: 1;
}
@media screen and (min-width: 780px) {
  .service-flow-button .prefix .text {
    font-size: 0.9375rem;
    letter-spacing: 0.1em;
  }
}
.service-flow-button .prefix .number {
  margin-top: 0.2em;
  font-size: 2.1875rem;
  letter-spacing: 0.0285714286em;
  line-height: 1;
}
@media screen and (min-width: 780px) {
  .service-flow-button .prefix .number {
    font-size: 3.125rem;
    letter-spacing: 0.05em;
  }
}
.service-flow-button .hgroup {
  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: start;
      -ms-flex-align: start;
          align-items: flex-start;
  margin-left: 16px;
}
@media screen and (min-width: 780px) {
  .service-flow-button .hgroup {
    margin-left: 33px;
  }
}
@media screen and (min-width: 960px) {
  .service-flow-button .hgroup {
    margin-left: 36px;
  }
}
.service-flow-button .heading {
  font-size: 1.25rem;
  letter-spacing: 0.12em;
  line-height: 1.5;
  text-align: left;
}
@media screen and (min-width: 960px) {
  .service-flow-button .heading {
    font-size: 1.625rem;
    letter-spacing: 0.13em;
  }
}
.service-flow-button .caption {
  color: #373737;
  font-size: 0.9375rem;
  font-family: "Yu Gothic Pr6N M", "ヒラギノ角ゴシック", "Hiragino Kaku Gothic", メイリオ, Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  letter-spacing: 0.1em;
  line-height: 1.3;
}
@media screen and (min-width: 780px) {
  .service-flow-button .caption {
    font-size: 0.9375rem;
    letter-spacing: 0.1em;
  }
}
.service-flow-button .arrow {
  display: block;
  position: relative;
  overflow: hidden;
  width: 28px;
  height: 66px;
  margin-top: 0;
  margin-left: auto;
}
.service-flow-button .arrow .icon-arrow-right-large-select {
  position: absolute;
  width: 28px;
  height: 66px;
  margin-top: 0;
  -webkit-transition: all 0.3s ease-in;
  transition: all 0.3s ease-in;
}
.service-flow-button .arrow .icon-arrow-right-large-select svg[data-name=icon_arrow_right_large_select] {
  width: 28px;
  height: 66px;
}
.service-flow-button .arrow .icon-arrow-right-large-select:nth-of-type(2) {
  -webkit-transform: translate(-64px, 0);
          transform: translate(-64px, 0);
}
.service-flow-button .arrow .icon-arrow-right-large-select:nth-of-type(2) .object-line {
  stroke: #4c8ebe;
}
.service-flow-button .arrow .icon-arrow-right-large-select:nth-of-type(2) .object-rightwards {
  stroke: #4c8ebe;
}

.service-flow-button-single {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  position: relative;
  padding-top: 28.5px;
  padding-left: 16px;
  padding-bottom: 28.5px;
}
@media screen and (min-width: 780px) {
  .service-flow-button-single {
    padding-top: 28.5px;
    padding-left: 34px;
    padding-right: 6px;
    padding-bottom: 28.5px;
  }
}
@media screen and (min-width: 960px) {
  .service-flow-button-single {
    padding-top: 43px;
    padding-left: 27px;
    padding-right: 12px;
    padding-bottom: 43px;
  }
}
.service-flow-button-single::before {
  content: "";
  position: absolute;
  top: -1px;
  right: 0;
  width: calc(100% - 90px);
  height: 1px;
  background: #808080;
  z-index: 2;
}
@media screen and (min-width: 960px) {
  .service-flow-button-single::before {
    width: 100%;
  }
}
.service-flow-button-single:hover {
  background-color: #f7f9fb;
}
.service-flow-button-single:hover .arrow .icon-arrow-right-large-select:nth-of-type(1) {
  -webkit-transform: translate(60px, 0);
          transform: translate(60px, 0);
}
.service-flow-button-single:hover .arrow .icon-arrow-right-large-select:nth-of-type(2) {
  -webkit-transform: translate(4px, 0);
          transform: translate(4px, 0);
}
.service-flow-button-single .icon {
  position: absolute;
  top: -12px;
  left: 0;
}
.service-flow-button-single .icon .image-fit {
  width: 64.5px;
  height: 39.5px;
}
@media screen and (min-width: 960px) {
  .service-flow-button-single .icon {
    position: relative;
    top: auto;
    left: auto;
    margin-right: 28px;
  }
}
.service-flow-button-single .prefix {
  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;
}
.service-flow-button-single .prefix .text {
  font-size: 0.6875rem;
  letter-spacing: 0.1em;
  line-height: 1;
}
@media screen and (min-width: 780px) {
  .service-flow-button-single .prefix .text {
    font-size: 0.9375rem;
    letter-spacing: 0.1em;
  }
}
.service-flow-button-single .prefix .number {
  margin-top: 0.2em;
  font-size: 2.1875rem;
  letter-spacing: 0.0285714286em;
  line-height: 1;
}
@media screen and (min-width: 780px) {
  .service-flow-button-single .prefix .number {
    font-size: 3.125rem;
    letter-spacing: 0.05em;
  }
}
.service-flow-button-single .hgroup {
  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: start;
      -ms-flex-align: start;
          align-items: flex-start;
  margin-left: 16px;
}
@media screen and (min-width: 780px) {
  .service-flow-button-single .hgroup {
    margin-left: 33px;
  }
}
@media screen and (min-width: 960px) {
  .service-flow-button-single .hgroup {
    margin-left: 36px;
  }
}
.service-flow-button-single .heading {
  font-size: 1.125rem;
  letter-spacing: 0.12em;
  line-height: 1.5;
  text-align: left;
}
@media screen and (min-width: 960px) {
  .service-flow-button-single .heading {
    font-size: 1.625rem;
    letter-spacing: 0.1444444444em;
  }
}
.service-flow-button-single .caption {
  color: #373737;
  font-size: 0.9375rem;
  font-family: "Yu Gothic Pr6N M", "ヒラギノ角ゴシック", "Hiragino Kaku Gothic", メイリオ, Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  letter-spacing: 0.1em;
  line-height: 1.3;
}
@media screen and (min-width: 780px) {
  .service-flow-button-single .caption {
    font-size: 0.9375rem;
    letter-spacing: 0.1em;
  }
}
.service-flow-button-single .arrow {
  display: block;
  position: relative;
  overflow: hidden;
  width: 28px;
  height: 66px;
  margin-top: 0;
  margin-left: auto;
}
.service-flow-button-single .arrow .icon-arrow-right-large-select {
  position: absolute;
  width: 28px;
  height: 66px;
  margin-top: 0;
  -webkit-transition: all 0.3s ease-in;
  transition: all 0.3s ease-in;
}
.service-flow-button-single .arrow .icon-arrow-right-large-select svg[data-name=icon_arrow_right_large_select] {
  width: 28px;
  height: 66px;
}
.service-flow-button-single .arrow .icon-arrow-right-large-select:nth-of-type(2) {
  -webkit-transform: translate(-64px, 0);
          transform: translate(-64px, 0);
}
.service-flow-button-single .arrow .icon-arrow-right-large-select:nth-of-type(2) .object-line {
  stroke: #4c8ebe;
}
.service-flow-button-single .arrow .icon-arrow-right-large-select:nth-of-type(2) .object-rightwards {
  stroke: #4c8ebe;
}

.style-philosophy {
  overflow-x: hidden;
}
.style-philosophy #ornament-1 {
  position: absolute;
  z-index: 1;
  right: -78px;
  bottom: -40px;
}
@media screen and (min-width: 780px) {
  .style-philosophy #ornament-1 {
    right: -97px;
    bottom: -79px;
  }
}
@media screen and (min-width: 960px) {
  .style-philosophy #ornament-1 {
    right: -195px;
    bottom: -102px;
  }
}
.style-philosophy #ornament-1 .ornament-image {
  -webkit-transform: translateX(0);
          transform: translateX(0);
}
@media screen and (min-width: 780px) {
  .style-philosophy #ornament-1 .ornament-image {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
}
@media screen and (min-width: 960px) {
  .style-philosophy #ornament-1 .ornament-image {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
}
.style-philosophy #ornament-1 .ornament-image img {
  width: 210px;
}
@media screen and (min-width: 780px) {
  .style-philosophy #ornament-1 .ornament-image img {
    width: 309px;
  }
}
@media screen and (min-width: 960px) {
  .style-philosophy #ornament-1 .ornament-image img {
    width: 426px;
  }
}
.style-philosophy #ornament-2 {
  position: absolute;
  top: -120px;
  left: 36px;
  z-index: 1;
}
@media screen and (min-width: 780px) {
  .style-philosophy #ornament-2 {
    top: -90px;
    left: 36px;
  }
}
@media screen and (min-width: 960px) {
  .style-philosophy #ornament-2 {
    top: -267px;
    left: 27px;
  }
}
.style-philosophy #ornament-2 .ornament-image {
  -webkit-transform: translateX(0);
          transform: translateX(0);
}
@media screen and (min-width: 780px) {
  .style-philosophy #ornament-2 .ornament-image {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
}
@media screen and (min-width: 960px) {
  .style-philosophy #ornament-2 .ornament-image {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
}
.style-philosophy #ornament-2 .ornament-image img {
  width: 139px;
}
@media screen and (min-width: 780px) {
  .style-philosophy #ornament-2 .ornament-image img {
    width: 139px;
  }
}
@media screen and (min-width: 960px) {
  .style-philosophy #ornament-2 .ornament-image img {
    width: 288px;
  }
}
.style-philosophy #ornament-3 {
  position: absolute;
  top: -152px;
  right: 0;
  z-index: 1;
}
@media screen and (min-width: 780px) {
  .style-philosophy #ornament-3 {
    top: -152px;
    right: 0;
  }
}
@media screen and (min-width: 960px) {
  .style-philosophy #ornament-3 {
    top: -329px;
    right: -90px;
  }
}
.style-philosophy #ornament-3 .ornament-image {
  -webkit-transform: translateX(0);
          transform: translateX(0);
}
@media screen and (min-width: 780px) {
  .style-philosophy #ornament-3 .ornament-image {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
}
@media screen and (min-width: 960px) {
  .style-philosophy #ornament-3 .ornament-image {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
}
.style-philosophy #ornament-3 .ornament-image img {
  width: 195px;
}
@media screen and (min-width: 780px) {
  .style-philosophy #ornament-3 .ornament-image img {
    width: 195px;
  }
}
@media screen and (min-width: 960px) {
  .style-philosophy #ornament-3 .ornament-image img {
    width: 379px;
  }
}
.style-philosophy #ornament-4 {
  position: absolute;
  bottom: -202px;
  left: -48px;
  z-index: 1;
}
@media screen and (min-width: 780px) {
  .style-philosophy #ornament-4 {
    bottom: -232px;
    left: -48px;
  }
}
@media screen and (min-width: 960px) {
  .style-philosophy #ornament-4 {
    bottom: -405px;
    left: -120px;
  }
}
.style-philosophy #ornament-4 .ornament-image {
  -webkit-transform: translateX(0);
          transform: translateX(0);
}
@media screen and (min-width: 780px) {
  .style-philosophy #ornament-4 .ornament-image {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
}
@media screen and (min-width: 960px) {
  .style-philosophy #ornament-4 .ornament-image {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
}
.style-philosophy #ornament-4 .ornament-image img {
  width: 264.899px;
}
@media screen and (min-width: 780px) {
  .style-philosophy #ornament-4 .ornament-image img {
    width: 397.384px;
  }
}
@media screen and (min-width: 960px) {
  .style-philosophy #ornament-4 .ornament-image img {
    width: 593.181px;
  }
}
.style-philosophy #ornament-5 {
  position: absolute;
  bottom: -150px;
  left: 47px;
  z-index: 1;
}
@media screen and (min-width: 780px) {
  .style-philosophy #ornament-5 {
    bottom: -100px;
    left: 87px;
  }
}
@media screen and (min-width: 960px) {
  .style-philosophy #ornament-5 {
    bottom: -150px;
    left: 162px;
  }
}
.style-philosophy #ornament-5 .ornament-image {
  -webkit-transform: translateX(0);
          transform: translateX(0);
}
@media screen and (min-width: 780px) {
  .style-philosophy #ornament-5 .ornament-image {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
}
@media screen and (min-width: 960px) {
  .style-philosophy #ornament-5 .ornament-image {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
}
.style-philosophy #ornament-5 .ornament-image img {
  width: 141px;
}
@media screen and (min-width: 780px) {
  .style-philosophy #ornament-5 .ornament-image img {
    width: 167px;
  }
}
@media screen and (min-width: 960px) {
  .style-philosophy #ornament-5 .ornament-image img {
    width: 194px;
  }
}

.hero-philosophy {
  position: relative;
}
.hero-philosophy .hero-image {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  position: relative;
  margin-right: 42px;
}
@media screen and (min-width: 780px) {
  .hero-philosophy .hero-image {
    max-width: 1110px;
    margin-right: 122px;
  }
}
.hero-philosophy .hero-image img {
  max-width: 100%;
}
@media screen and (min-width: 780px) {
  .hero-philosophy .hero-image img {
    max-width: 1110px;
  }
}
@media screen and (min-width: 960px) {
  .hero-philosophy > .content-std {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    position: absolute;
    top: 147px;
    max-width: 1512px;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    padding-left: clamp(55px, 7.0105820106%, 106px);
    padding-right: clamp(55px, 7.0105820106%, 106px);
  }
}
.hero-philosophy .hgroup {
  position: relative;
  margin-top: -32px;
  z-index: 2;
}
@media screen and (min-width: 960px) {
  .hero-philosophy .hgroup {
    max-width: 404px;
    margin-right: 12px;
  }
}
.hero-philosophy .heading-large {
  font-size: 2.375rem;
  letter-spacing: 0.15em;
  line-height: 1.6;
}
@media screen and (min-width: 960px) {
  .hero-philosophy .heading-large {
    font-size: 3.75rem;
    letter-spacing: 0.15em;
  }
}
.hero-philosophy .text-group {
  margin-top: 12px;
}
@media screen and (min-width: 960px) {
  .hero-philosophy .text-group {
    margin-top: 32px;
  }
}
.hero-philosophy .text-group .caption {
  font-size: 0.8125rem;
  letter-spacing: 0.1em;
  line-height: 1.7;
}
@media screen and (min-width: 960px) {
  .hero-philosophy .text-group .caption {
    font-size: 1.25rem;
    letter-spacing: 0.15em;
  }
}
.hero-philosophy .text-group .tag-line {
  font-size: 1.5625rem;
  letter-spacing: 0.04em;
  line-height: 1.6;
}
@media screen and (min-width: 960px) {
  .hero-philosophy .text-group .tag-line {
    font-size: 1.875rem;
    letter-spacing: 0.18em;
  }
}

.philosophy-description {
  position: relative;
  margin-top: 145px;
  z-index: 1;
}
@media screen and (min-width: 780px) {
  .philosophy-description {
    margin-top: 145px;
  }
}
@media screen and (min-width: 960px) {
  .philosophy-description {
    margin-top: 211px;
  }
}
.philosophy-description .philosophy-3-mission .heading-medium {
  font-size: 1.25rem;
  letter-spacing: 0.12em;
  line-height: 1.5;
}
@media screen and (min-width: 960px) {
  .philosophy-description .philosophy-3-mission .heading-medium {
    font-size: 1.625rem;
    letter-spacing: 0.15em;
  }
}
.philosophy-description .philosophy-3-mission .fluid-columns {
  max-width: 100%;
  margin-top: 54px;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (min-width: 780px) {
  .philosophy-description .philosophy-3-mission .fluid-columns {
    max-width: 300px;
    margin-top: 85px;
  }
}
@media screen and (min-width: 960px) {
  .philosophy-description .philosophy-3-mission .fluid-columns {
    max-width: 920px;
    margin-top: 37px;
  }
}
.philosophy-description .philosophy-3-mission .column-circle {
  max-width: 214px;
  min-width: 214px;
  margin-top: -33px;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: -33px;
}
@media screen and (min-width: 780px) {
  .philosophy-description .philosophy-3-mission .column-circle {
    max-width: 300px;
    min-width: 300px;
    margin-top: -48px;
    margin-bottom: -48px;
  }
}
@media screen and (min-width: 960px) {
  .philosophy-description .philosophy-3-mission .column-circle {
    max-width: none;
    min-width: 336px;
    margin-top: 0;
    margin-bottom: 0;
    margin-left: -22.5px;
    margin-right: -22.5px;
  }
}
.philosophy-description .philosophy-3-mission .column-circle .prefix {
  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: 6px;
}
@media screen and (min-width: 780px) {
  .philosophy-description .philosophy-3-mission .column-circle .prefix {
    margin-top: 0;
  }
}
@media screen and (min-width: 960px) {
  .philosophy-description .philosophy-3-mission .column-circle .prefix {
    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;
    margin-top: 0;
  }
}
.philosophy-description .philosophy-3-mission .column-circle .prefix .text {
  font-size: 0.6875rem;
  line-height: 1.2;
  letter-spacing: 0.1em;
}
@media screen and (min-width: 960px) {
  .philosophy-description .philosophy-3-mission .column-circle .prefix .text {
    font-size: 0.9375rem;
    line-height: 1.2;
    letter-spacing: 0.1em;
  }
}
.philosophy-description .philosophy-3-mission .column-circle .prefix .number {
  font-size: 2.1875rem;
  line-height: 1;
  letter-spacing: 0.03em;
}
@media screen and (min-width: 960px) {
  .philosophy-description .philosophy-3-mission .column-circle .prefix .number {
    font-size: 3.125rem;
    line-height: 1;
    letter-spacing: 0.05em;
  }
}
.philosophy-description .philosophy-3-mission .column-circle .heading {
  margin-top: 5px;
  font-size: 0.8125rem;
  letter-spacing: 0.1em;
  line-height: 1.5;
  text-align: center;
}
@media screen and (min-width: 780px) {
  .philosophy-description .philosophy-3-mission .column-circle .heading {
    margin-top: 13px;
    font-size: 1.25rem;
    letter-spacing: 0.1em;
  }
}
@media screen and (min-width: 960px) {
  .philosophy-description .philosophy-3-mission .column-circle .heading {
    margin-top: 26px;
  }
}
.philosophy-description .philosophy-3-mission .text-std {
  margin-top: 55px;
}
@media screen and (min-width: 780px) {
  .philosophy-description .philosophy-3-mission .text-std {
    margin-top: 92px;
  }
}
@media screen and (min-width: 960px) {
  .philosophy-description .philosophy-3-mission .text-std {
    margin-top: 44px;
    font-size: 1.125rem;
    letter-spacing: 0.12em;
  }
}

.philosophy-mission-detail {
  margin-top: 245px;
}
@media screen and (min-width: 780px) {
  .philosophy-mission-detail {
    margin-top: 248px;
  }
}
@media screen and (min-width: 960px) {
  .philosophy-mission-detail {
    margin-top: 458px;
  }
}
.philosophy-mission-detail .section-folding.is-open .folding-content {
  display: block;
}
.philosophy-mission-detail .section-folding.is-open .button {
  display: none;
}
.philosophy-mission-detail .folding-header {
  max-width: 390px;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (min-width: 780px) {
  .philosophy-mission-detail .folding-header {
    max-width: 520px;
  }
}
@media screen and (min-width: 960px) {
  .philosophy-mission-detail .folding-header {
    max-width: 1100px;
  }
}
.philosophy-mission-detail .folding-header .header-content {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
@media screen and (min-width: 960px) {
  .philosophy-mission-detail .folding-header .header-content {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 9.63%;
  }
}
.philosophy-mission-detail .folding-header .header-content .image {
  position: relative;
  margin-left: -30px;
  margin-right: -30px;
  /*
  img {
  	@include mq(lg) {
  		// コンテナ要素ではなく img をずらす
  		transform: translateX(100px);		
  	}
  }*/
}
@media screen and (min-width: 780px) {
  .philosophy-mission-detail .folding-header .header-content .image {
    margin-left: 0;
    margin-right: 0;
  }
}
@media screen and (min-width: 960px) {
  .philosophy-mission-detail .folding-header .header-content .image {
    max-width: 630px;
    margin-left: 0;
    margin-right: 0;
    margin-right: -100px;
    -ms-flex-negative: 1;
        flex-shrink: 1;
  }
}
.philosophy-mission-detail .folding-header .header-content .text-group {
  max-width: 330px;
  margin-top: 28px;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (min-width: 780px) {
  .philosophy-mission-detail .folding-header .header-content .text-group {
    max-width: 450px;
    margin-top: 33px;
  }
}
@media screen and (min-width: 960px) {
  .philosophy-mission-detail .folding-header .header-content .text-group {
    max-width: 463px;
    margin-top: 0;
    margin-left: 0;
    margin-right: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
  }
}
.philosophy-mission-detail .folding-header .header-content .caption {
  font-size: 0.875rem;
  letter-spacing: 0.05em;
  line-height: 2;
}
@media screen and (min-width: 780px) {
  .philosophy-mission-detail .folding-header .header-content .caption {
    font-size: 1rem;
    letter-spacing: 0.05em;
  }
}
.philosophy-mission-detail .folding-header .header-content .tag-line {
  font-size: 0.8125rem;
  letter-spacing: 0.1em;
  line-height: 1.5;
}
@media screen and (min-width: 960px) {
  .philosophy-mission-detail .folding-header .header-content .tag-line {
    font-size: 1.25rem;
    letter-spacing: 0.15em;
  }
}
.philosophy-mission-detail .folding-header .header-content .heading {
  margin-top: 6px;
  font-size: 1.5625rem;
  letter-spacing: 0.1em;
  line-height: 1.6;
}
@media screen and (min-width: 960px) {
  .philosophy-mission-detail .folding-header .header-content .heading {
    margin-top: 12px;
    font-size: 1.875rem;
    letter-spacing: 0.18em;
  }
}
.philosophy-mission-detail .folding-header .header-content .text-std {
  margin-top: 14px;
}
@media screen and (min-width: 960px) {
  .philosophy-mission-detail .folding-header .header-content .text-std {
    max-width: 350px;
    margin-top: 12px;
  }
}
.philosophy-mission-detail .folding-header .button {
  margin-top: 50px;
  text-align: center;
  cursor: pointer;
}
@media screen and (min-width: 960px) {
  .philosophy-mission-detail .folding-header .button {
    display: none;
  }
}
.philosophy-mission-detail .folding-header .button .view-more {
  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;
  color: #a3a3a3;
  font-size: 14px;
  letter-spacing: 2.4px;
  text-align: center;
}
.philosophy-mission-detail .folding-header .button .view-more::after {
  content: "";
  display: block;
  width: 16px;
  height: 8px;
  margin-left: 5px;
  background: url(../images/format/icon_arrow_down_select.svg) no-repeat 0 0;
  background-size: 100% auto;
}
.philosophy-mission-detail .folding-content {
  display: none;
}
@media screen and (min-width: 960px) {
  .philosophy-mission-detail .folding-content {
    display: block;
  }
}
.philosophy-mission-detail .folding-content .columns-std {
  margin-top: 123px;
}
@media screen and (min-width: 960px) {
  .philosophy-mission-detail .folding-content .columns-std {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end;
    margin-top: 155px;
  }
}
.philosophy-mission-detail .folding-content .columns-std .column-list {
  max-width: 330px;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (min-width: 960px) {
  .philosophy-mission-detail .folding-content .columns-std .column-list {
    max-width: 515px;
    margin-left: 0;
    margin-right: 0;
  }
}
.philosophy-mission-detail .folding-content .columns-std .column-list .text-std {
  font-size: 0.9375rem;
  letter-spacing: 0.1em;
  line-height: 2;
}
@media screen and (min-width: 960px) {
  .philosophy-mission-detail .folding-content .columns-std .column-list .text-std {
    margin-top: 40px;
    font-size: 1.125rem;
    letter-spacing: 0.12em;
  }
}
.philosophy-mission-detail .folding-content .columns-std .column-text {
  margin-top: 77px;
}
@media screen and (min-width: 960px) {
  .philosophy-mission-detail .folding-content .columns-std .column-text {
    max-width: 463px;
    margin-top: 0;
  }
}
.philosophy-mission-detail .folding-content .columns-std .column-text .text-std + .text-std {
  margin-top: 2em;
}
@media screen and (min-width: 960px) {
  .philosophy-mission-detail .folding-content .columns-std .column-text .text-std + .text-std {
    margin-top: 64px;
  }
}
.philosophy-mission-detail .folding-content .heading-small {
  font-size: 0.9375rem;
  letter-spacing: 0.1em;
  line-height: 2;
}
@media screen and (min-width: 960px) {
  .philosophy-mission-detail .folding-content .heading-small {
    font-size: 1.125rem;
    letter-spacing: 0.12em;
  }
}
.philosophy-mission-detail .folding-content .list-std {
  margin-top: 24px;
  padding-left: 1.2em;
}
@media screen and (min-width: 960px) {
  .philosophy-mission-detail .folding-content .list-std {
    margin-top: 40px;
  }
}
.philosophy-mission-detail .folding-content .list-std li {
  list-style: circle;
  font-size: 0.9375rem;
  letter-spacing: 0.1em;
  line-height: 1.6;
  text-align: justify;
}
@media screen and (min-width: 960px) {
  .philosophy-mission-detail .folding-content .list-std li {
    font-size: 1.25rem;
    letter-spacing: 0.12em;
    line-height: 1.6;
  }
}
.philosophy-mission-detail .folding-content .list-std li + li {
  margin-top: 0.4em;
}
@media screen and (min-width: 960px) {
  .philosophy-mission-detail .folding-content .list-std li + li {
    margin-top: 20px;
  }
}

.philosophy-research-development {
  margin-top: 260px;
}
@media screen and (min-width: 960px) {
  .philosophy-research-development {
    margin-top: 410px;
  }
}
.philosophy-research-development .content-large {
  position: relative;
}
.philosophy-research-development .columns-std {
  position: relative;
}
@media screen and (min-width: 780px) {
  .philosophy-research-development .columns-std {
    max-width: 520px;
  }
}
@media screen and (min-width: 960px) {
  .philosophy-research-development .columns-std {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    max-width: 1100px;
    gap: 11.36%;
  }
}
.philosophy-research-development .columns-std .column {
  position: relative;
  z-index: 2;
}
.philosophy-research-development .columns-std .column .heading {
  margin-top: 6px;
  font-size: 1.5625rem;
  letter-spacing: 0.1em;
  line-height: 1.6;
}
@media screen and (min-width: 960px) {
  .philosophy-research-development .columns-std .column .heading {
    margin-top: 12px;
    font-size: 1.875rem;
    letter-spacing: 0.1666666667em;
  }
}
@media screen and (min-width: 960px) {
  .philosophy-research-development .columns-std .column-image {
    max-width: 630px;
  }
}
.philosophy-research-development .columns-std .column-image .image {
  margin-left: -30px;
  margin-right: -30px;
}
@media screen and (min-width: 780px) {
  .philosophy-research-development .columns-std .column-image .image {
    margin-left: 0;
    margin-right: 0;
  }
}
@media screen and (min-width: 960px) {
  .philosophy-research-development .columns-std .column-image .image {
    margin-left: -52px;
    margin-right: 0;
  }
}
@media screen and (min-width: 960px) {
  .philosophy-research-development .columns-std .column-text {
    max-width: 400px;
    -ms-flex-negative: 0;
        flex-shrink: 0;
  }
}
.philosophy-research-development .columns-std .column-text .caption {
  font-size: 0.9375rem;
  letter-spacing: 0.1em;
  line-height: 2;
}
@media screen and (min-width: 780px) {
  .philosophy-research-development .columns-std .column-text .caption {
    font-size: 0.9375rem;
    letter-spacing: 0.1em;
  }
}
.philosophy-research-development .columns-std .column-text .caption.font-en {
  font-size: 0.875rem;
  letter-spacing: 0.05em;
  line-height: 2;
}
@media screen and (min-width: 780px) {
  .philosophy-research-development .columns-std .column-text .caption.font-en {
    font-size: 1rem;
    letter-spacing: 0.05em;
  }
}
@media screen and (min-width: 960px) {
  .philosophy-research-development .columns-std .column-text .text-std {
    max-width: 350px;
  }
}
.philosophy-research-development .columns-std.columns-second {
  margin-top: 106px;
}
@media screen and (min-width: 780px) {
  .philosophy-research-development .columns-std.columns-second {
    margin-top: 76px;
  }
}
@media screen and (min-width: 960px) {
  .philosophy-research-development .columns-std.columns-second {
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
    gap: 136px;
    margin-top: 88px;
  }
}
.philosophy-research-development .columns-std.columns-second .column-text {
  max-width: 330px;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (min-width: 780px) {
  .philosophy-research-development .columns-std.columns-second .column-text {
    max-width: 450px;
  }
}
@media screen and (min-width: 960px) {
  .philosophy-research-development .columns-std.columns-second .column-text {
    max-width: 356px;
    margin-left: 0;
    margin-right: 0;
  }
}
@media screen and (min-width: 960px) {
  .philosophy-research-development .columns-std.columns-second .column-text .text-std {
    max-width: 356px;
  }
}
.philosophy-research-development .columns-std.columns-second .column-callout {
  background: #f8f8f8;
  padding-top: 18px;
  padding-left: 22px;
  padding-right: 12px;
  padding-bottom: 24px;
}
@media screen and (min-width: 780px) {
  .philosophy-research-development .columns-std.columns-second .column-callout {
    max-width: 394px;
    margin-left: auto;
    margin-right: auto;
    padding-top: 35px;
    padding-left: 50px;
    padding-right: 50px;
    padding-bottom: 35px;
  }
}
@media screen and (min-width: 960px) {
  .philosophy-research-development .columns-std.columns-second .column-callout {
    max-width: 410px;
    background: none;
    margin-left: 0;
    margin-right: 50px;
    padding: 0;
  }
}
.philosophy-research-development .columns-std.columns-second .column-callout .heading-small {
  font-size: 1.25rem;
  letter-spacing: 0.12em;
  line-height: 1.5;
}
.philosophy-research-development .columns-std.columns-second .column-callout .callout {
  margin-top: 20px;
  background: #f8f8f8;
  font-family: "Yu Gothic Pr6N M", "ヒラギノ角ゴシック", "Hiragino Kaku Gothic", メイリオ, Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
@media screen and (min-width: 960px) {
  .philosophy-research-development .columns-std.columns-second .column-callout .callout {
    max-width: none;
    padding-top: 30px;
    padding-left: 40px;
    padding-right: 40px;
    padding-bottom: 30px;
  }
}
.philosophy-research-development .columns-std.columns-second .column-callout .callout .heading {
  font-family: "Yu Gothic Pr6N M", "ヒラギノ角ゴシック", "Hiragino Kaku Gothic", メイリオ, Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-size: 0.9375rem;
  letter-spacing: 0.1em;
  line-height: 1.2;
}
@media screen and (min-width: 780px) {
  .philosophy-research-development .columns-std.columns-second .column-callout .callout .heading {
    font-size: 1.125rem;
    letter-spacing: 0.1em;
  }
}
.philosophy-research-development .columns-std.columns-second .column-callout .list-std {
  margin-top: 12px;
  padding-left: 1em;
}
@media screen and (min-width: 960px) {
  .philosophy-research-development .columns-std.columns-second .column-callout .list-std {
    margin-top: 15px;
  }
}
.philosophy-research-development .columns-std.columns-second .column-callout .list-std li {
  list-style: circle;
  font-size: 0.8125rem;
  letter-spacing: 0.0769230769em;
  line-height: 1.4;
  text-align: left;
}
@media screen and (min-width: 960px) {
  .philosophy-research-development .columns-std.columns-second .column-callout .list-std li {
    font-size: 0.9375rem;
    letter-spacing: 0.1em;
  }
}
.philosophy-research-development .columns-std.columns-second .column-callout .list-std li + li {
  margin-top: 0.4em;
}

.philosophy-quality-first {
  margin-top: 274px;
}
@media screen and (min-width: 960px) {
  .philosophy-quality-first {
    margin-top: 322px;
  }
}
.philosophy-quality-first .content-large {
  position: relative;
}
.philosophy-quality-first .columns-std {
  position: relative;
}
@media screen and (min-width: 780px) {
  .philosophy-quality-first .columns-std {
    max-width: 520px;
  }
}
@media screen and (min-width: 960px) {
  .philosophy-quality-first .columns-std {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    max-width: 1100px;
    gap: 11.36%;
  }
}
.philosophy-quality-first .columns-std .column {
  position: relative;
  z-index: 2;
}
.philosophy-quality-first .columns-std .column .heading {
  margin-top: 6px;
  font-size: 1.5625rem;
  letter-spacing: 0.1em;
  line-height: 1.6;
}
@media screen and (min-width: 960px) {
  .philosophy-quality-first .columns-std .column .heading {
    margin-top: 12px;
    font-size: 1.875rem;
    letter-spacing: 0.1666666667em;
  }
}
@media screen and (min-width: 960px) {
  .philosophy-quality-first .columns-std .column-image {
    max-width: 630px;
  }
}
.philosophy-quality-first .columns-std .column-image .image {
  margin-left: -30px;
  margin-right: -30px;
}
@media screen and (min-width: 780px) {
  .philosophy-quality-first .columns-std .column-image .image {
    margin-left: 0;
    margin-right: 0;
  }
}
@media screen and (min-width: 960px) {
  .philosophy-quality-first .columns-std .column-image .image {
    margin-left: -52px;
    margin-right: 0;
  }
}
@media screen and (min-width: 960px) {
  .philosophy-quality-first .columns-std .column-text {
    max-width: 410px;
    -ms-flex-negative: 0;
        flex-shrink: 0;
  }
}
.philosophy-quality-first .columns-std .column-text .caption {
  font-size: 0.9375rem;
  letter-spacing: 0.1em;
  line-height: 2;
}
@media screen and (min-width: 780px) {
  .philosophy-quality-first .columns-std .column-text .caption {
    font-size: 0.9375rem;
    letter-spacing: 0.1em;
  }
}
.philosophy-quality-first .columns-std .column-text .caption.font-en {
  font-size: 0.875rem;
  letter-spacing: 0.05em;
  line-height: 2;
}
@media screen and (min-width: 780px) {
  .philosophy-quality-first .columns-std .column-text .caption.font-en {
    font-size: 1rem;
    letter-spacing: 0.05em;
  }
}
@media screen and (min-width: 960px) {
  .philosophy-quality-first .columns-std .column-text .text-std {
    max-width: 360px;
  }
}
.philosophy-quality-first .columns-std.columns-second {
  margin-top: 106px;
}
@media screen and (min-width: 780px) {
  .philosophy-quality-first .columns-std.columns-second {
    margin-top: 76px;
  }
}
@media screen and (min-width: 960px) {
  .philosophy-quality-first .columns-std.columns-second {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    gap: 167px;
    margin-top: 130px;
  }
}
.philosophy-quality-first .columns-std.columns-second .column-text {
  max-width: 330px;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (min-width: 780px) {
  .philosophy-quality-first .columns-std.columns-second .column-text {
    max-width: 450px;
  }
}
@media screen and (min-width: 960px) {
  .philosophy-quality-first .columns-std.columns-second .column-text {
    max-width: 356px;
    margin-top: 46px;
    margin-left: 0;
    margin-right: 0;
  }
}
@media screen and (min-width: 960px) {
  .philosophy-quality-first .columns-std.columns-second .column-text .text-std {
    max-width: 356px;
    margin-top: 0;
  }
}
.philosophy-quality-first .columns-std.columns-second .column-image {
  max-width: 291px;
}
@media screen and (min-width: 780px) {
  .philosophy-quality-first .columns-std.columns-second .column-image {
    max-width: 400px;
    margin-left: auto;
    margin-right: auto;
  }
}
@media screen and (min-width: 960px) {
  .philosophy-quality-first .columns-std.columns-second .column-image {
    max-width: 450px;
    margin-left: 0;
    margin-right: 130px;
  }
}
.philosophy-quality-first .columns-carousel {
  position: relative;
  max-width: 330px;
  margin-top: 35px;
  margin-left: auto;
  margin-right: auto;
  z-index: 2;
}
@media screen and (min-width: 780px) {
  .philosophy-quality-first .columns-carousel {
    max-width: 400px;
    margin-top: 44px;
  }
}
@media screen and (min-width: 960px) {
  .philosophy-quality-first .columns-carousel {
    max-width: 1100px;
    margin-top: 103px;
  }
}
.philosophy-quality-first .columns-carousel .carousel {
  overflow: hidden;
}
@media screen and (min-width: 960px) {
  .philosophy-quality-first .columns-carousel .carousel {
    overflow: visible;
  }
}
@media screen and (min-width: 960px) {
  .philosophy-quality-first .columns-carousel .carousel .swiper-wrapper {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 86px;
    width: auto;
    padding-right: 154px;
  }
}
@media screen and (min-width: 960px) {
  .philosophy-quality-first .columns-carousel .carousel .swiper-slide {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    gap: 53px;
  }
}
.philosophy-quality-first .columns-carousel .carousel .heading-hc {
  font-size: 1.25rem;
  letter-spacing: 0.12em;
  line-height: 1.5;
}
@media screen and (min-width: 780px) {
  .philosophy-quality-first .columns-carousel .carousel .heading-hc {
    -ms-flex-negative: 0;
        flex-shrink: 0;
    font-size: 1.625rem;
    letter-spacing: 0.15em;
    text-align: right;
  }
}
.philosophy-quality-first .columns-carousel .carousel .text-group {
  max-width: 250px;
  margin-top: 18px;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (min-width: 780px) {
  .philosophy-quality-first .columns-carousel .carousel .text-group {
    max-width: 303px;
    margin-top: 18px;
  }
}
@media screen and (min-width: 960px) {
  .philosophy-quality-first .columns-carousel .carousel .text-group {
    max-width: 445px;
    margin-top: 0;
    margin-left: 0;
    margin-right: 0;
  }
}
.philosophy-quality-first .columns-carousel .carousel-controler {
  position: absolute;
  width: 100%;
  top: 50%;
  z-index: 2;
}
@media screen and (min-width: 960px) {
  .philosophy-quality-first .columns-carousel .carousel-controler {
    display: none;
  }
}
.philosophy-quality-first .columns-carousel .carousel-controler .swiper-button {
  width: 17.871px;
  width: 20px;
  height: var(--swiper-navigation-size);
  height: 34.328px;
  outline: none;
  color: #363636;
}
.philosophy-quality-first .columns-carousel .carousel-controler .swiper-button-prev,
.philosophy-quality-first .columns-carousel .carousel-controler .swiper-button-next {
  background-image: url(../images/format/arrow_next.svg);
  background-position: 0 0;
  background-repeat: no-repeat;
  background-size: auto 100%;
}
.philosophy-quality-first .columns-carousel .carousel-controler .swiper-button-next {
  right: 0;
}
.philosophy-quality-first .columns-carousel .carousel-controler .swiper-button-prev {
  left: 0;
  -webkit-transform: scale(-1, 1);
          transform: scale(-1, 1); /* 左右反転 */
}
.philosophy-quality-first .columns-carousel .carousel-controler .swiper-button-prev:after,
.philosophy-quality-first .columns-carousel .carousel-controler .swiper-button-next:after {
  content: "";
}

.philosophy-fmc {
  margin-top: 240px;
  padding-top: 80px;
  padding-bottom: 116px;
  background: url(../images/format/bg_gradation_6.webp) lightgray 0%/cover no-repeat;
  background-size: cover;
}
@media screen and (min-width: 780px) {
  .philosophy-fmc {
    padding-top: 138px;
    padding-bottom: 138px;
    background-size: cover;
  }
}
@media screen and (min-width: 960px) {
  .philosophy-fmc {
    margin-top: 220px;
    padding-top: 205px;
    padding-bottom: 205px;
    background: url(../images/format/bg_gradation_5.webp) lightgray 50%/cover no-repeat;
    background-size: cover;
  }
}
.philosophy-fmc .columns-std {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 27px;
  max-width: 330px;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (min-width: 780px) {
  .philosophy-fmc .columns-std {
    gap: 33px;
    max-width: 450px;
  }
}
@media screen and (min-width: 960px) {
  .philosophy-fmc .columns-std {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    gap: 10.9%;
    max-width: 1100px;
  }
}
.philosophy-fmc .columns-std .column-image {
  max-width: 330px;
  margin-left: 0;
  margin-right: 0;
}
@media screen and (min-width: 780px) {
  .philosophy-fmc .columns-std .column-image {
    max-width: 450px;
  }
}
@media screen and (min-width: 960px) {
  .philosophy-fmc .columns-std .column-image {
    max-width: 630px;
  }
}
.philosophy-fmc .columns-std .column-text {
  width: 100%;
}
@media screen and (min-width: 960px) {
  .philosophy-fmc .columns-std .column-text {
    max-width: 350px;
  }
}
.philosophy-fmc .columns-std .column-text .heading {
  font-size: 1.5625rem;
  letter-spacing: 0.1em;
  line-height: 1.6;
  text-align: center;
}
@media screen and (min-width: 960px) {
  .philosophy-fmc .columns-std .column-text .heading {
    font-size: 1.875rem;
    letter-spacing: 0.18em;
    text-align: left;
  }
}
.philosophy-fmc .columns-std .column-text .text-std {
  margin-top: 15px;
}
@media screen and (min-width: 960px) {
  .philosophy-fmc .columns-std .column-text .text-std {
    margin-top: 9px;
  }
}

.philosophy-service {
  margin-top: 247px;
  padding-bottom: 252px;
}
@media screen and (min-width: 960px) {
  .philosophy-service {
    margin-top: 414px;
    padding-bottom: 230px;
  }
}
.philosophy-service .linkage-block {
  max-width: 330px;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (min-width: 780px) {
  .philosophy-service .linkage-block {
    max-width: 450px;
  }
}
@media screen and (min-width: 960px) {
  .philosophy-service .linkage-block {
    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: 84px;
    max-width: 1000px;
  }
}
.philosophy-service .linkage-block .image {
  max-width: 100%;
}
@media screen and (min-width: 960px) {
  .philosophy-service .linkage-block .image {
    max-width: 490px;
  }
}
.philosophy-service .linkage-block .button-group {
  margin-top: 26px;
}
@media screen and (min-width: 960px) {
  .philosophy-service .linkage-block .button-group {
    margin-top: 0;
  }
}
.philosophy-service .linkage-block .caption-group {
  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: 7px;
}
@media screen and (min-width: 960px) {
  .philosophy-service .linkage-block .caption-group {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    gap: 0;
  }
}
.philosophy-service .linkage-block .icon {
  width: 69.5px;
  height: 25.5px;
}
@media screen and (min-width: 960px) {
  .philosophy-service .linkage-block .icon {
    width: 64.5px;
    height: 39.5px;
  }
}
.philosophy-service .linkage-block .caption {
  font-size: 0.8125rem;
  letter-spacing: 0.1em;
  line-height: 1.5;
}
@media screen and (min-width: 780px) {
  .philosophy-service .linkage-block .caption {
    font-size: 1.25rem;
    letter-spacing: 0.15em;
    line-height: 1.75;
  }
}
.philosophy-service .linkage-block .heading {
  margin-top: 0;
  font-size: 1.5625rem;
  letter-spacing: 0.1em;
  line-height: 1.6;
  text-align: center;
}
@media screen and (min-width: 780px) {
  .philosophy-service .linkage-block .heading {
    margin-top: 12px;
  }
}
@media screen and (min-width: 960px) {
  .philosophy-service .linkage-block .heading {
    margin-top: 12px;
    font-size: 1.625rem;
    letter-spacing: 0.1153846154em;
    text-align: left;
  }
}
.philosophy-service .linkage-block .button {
  max-width: 200px;
  margin-top: 15px;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (min-width: 960px) {
  .philosophy-service .linkage-block .button {
    max-width: 230px;
    margin-top: 25px;
    margin-left: 0;
  }
}

.style-shalom-lab {
  overflow-x: hidden;
}
.style-shalom-lab #ornament-1 {
  position: absolute;
  z-index: 1;
  right: -87px;
  bottom: -120px;
}
@media screen and (min-width: 780px) {
  .style-shalom-lab #ornament-1 {
    right: -136px;
    bottom: -163px;
  }
}
@media screen and (min-width: 960px) {
  .style-shalom-lab #ornament-1 {
    right: -212px;
    bottom: -243px;
  }
}
.style-shalom-lab #ornament-1 .ornament-image {
  -webkit-transform: translateX(0);
          transform: translateX(0);
}
@media screen and (min-width: 780px) {
  .style-shalom-lab #ornament-1 .ornament-image {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
}
@media screen and (min-width: 960px) {
  .style-shalom-lab #ornament-1 .ornament-image {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
}
.style-shalom-lab #ornament-1 .ornament-image img {
  width: 207px;
}
@media screen and (min-width: 780px) {
  .style-shalom-lab #ornament-1 .ornament-image img {
    width: 324px;
  }
}
@media screen and (min-width: 960px) {
  .style-shalom-lab #ornament-1 .ornament-image img {
    width: 443px;
  }
}
.style-shalom-lab #ornament-2 {
  position: absolute;
  bottom: -227px;
  left: -60px;
  z-index: 1;
}
@media screen and (min-width: 780px) {
  .style-shalom-lab #ornament-2 {
    left: -125px;
    bottom: -327px;
  }
}
@media screen and (min-width: 960px) {
  .style-shalom-lab #ornament-2 {
    left: -422px;
    bottom: -497px;
  }
}
.style-shalom-lab #ornament-2 .ornament-image {
  -webkit-transform: translateX(0);
          transform: translateX(0);
}
@media screen and (min-width: 780px) {
  .style-shalom-lab #ornament-2 .ornament-image {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
}
@media screen and (min-width: 960px) {
  .style-shalom-lab #ornament-2 .ornament-image {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
}
.style-shalom-lab #ornament-2 .ornament-image img {
  width: 245.388px;
}
@media screen and (min-width: 780px) {
  .style-shalom-lab #ornament-2 .ornament-image img {
    width: 320.852px;
  }
}
@media screen and (min-width: 960px) {
  .style-shalom-lab #ornament-2 .ornament-image img {
    width: 508.859px;
  }
}

.hero-shalom-lab {
  position: relative;
}
.hero-shalom-lab .hero-image {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  position: relative;
  margin-right: 42px;
}
@media screen and (min-width: 780px) {
  .hero-shalom-lab .hero-image {
    max-width: 1110px;
    margin-right: 122px;
  }
}
.hero-shalom-lab .hero-image img {
  max-width: 100%;
}
@media screen and (min-width: 780px) {
  .hero-shalom-lab .hero-image img {
    max-width: 1110px;
  }
}
@media screen and (min-width: 960px) {
  .hero-shalom-lab > .content-std {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    position: absolute;
    top: 147px;
    max-width: 1512px;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    padding-left: clamp(55px, 7.0105820106%, 106px);
    padding-right: clamp(55px, 7.0105820106%, 106px);
  }
}
.hero-shalom-lab .hgroup {
  position: relative;
  margin-top: -32px;
  z-index: 2;
}
@media screen and (min-width: 960px) {
  .hero-shalom-lab .hgroup {
    max-width: 404px;
    margin-right: 12px;
  }
}
.hero-shalom-lab .heading-large {
  font-size: 2.375rem;
  letter-spacing: 0.15em;
  line-height: 1.6;
}
@media screen and (min-width: 960px) {
  .hero-shalom-lab .heading-large {
    font-size: 3.75rem;
    letter-spacing: 0.15em;
  }
}
.hero-shalom-lab .text-group {
  margin-top: 12px;
}
@media screen and (min-width: 960px) {
  .hero-shalom-lab .text-group {
    margin-top: 32px;
  }
}
.hero-shalom-lab .text-group .caption {
  font-size: 0.8125rem;
  letter-spacing: 0.1em;
  line-height: 1.7;
}
@media screen and (min-width: 960px) {
  .hero-shalom-lab .text-group .caption {
    font-size: 1.25rem;
    letter-spacing: 0.15em;
  }
}
.hero-shalom-lab .text-group .tag-line {
  font-size: 1.5625rem;
  letter-spacing: 0.04em;
  line-height: 1.6;
}
@media screen and (min-width: 960px) {
  .hero-shalom-lab .text-group .tag-line {
    font-size: 1.875rem;
    letter-spacing: 0.18em;
  }
}

.shalom-lab-description {
  position: relative;
  margin-top: 98px;
  z-index: 3;
}
@media screen and (min-width: 780px) {
  .shalom-lab-description {
    margin-top: 100px;
  }
}
@media screen and (min-width: 960px) {
  .shalom-lab-description {
    margin-top: 100px;
  }
}
.shalom-lab-description .column {
  max-width: 450px;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (min-width: 780px) {
  .shalom-lab-description .column {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    max-width: 1100px;
  }
}
@media screen and (min-width: 780px) {
  .shalom-lab-description .text-group {
    max-width: 450px;
    margin-left: auto;
    margin-right: auto;
  }
}
@media screen and (min-width: 960px) {
  .shalom-lab-description .text-group {
    margin-left: 0;
    margin-right: auto;
  }
}
.shalom-lab-description .text-group .text-std {
  margin-top: 12px;
  font-size: 0.9375rem;
  letter-spacing: 0.1em;
  line-height: 2;
}
@media screen and (min-width: 780px) {
  .shalom-lab-description .text-group .text-std {
    font-size: 0.9375rem;
    letter-spacing: 0.1em;
  }
}

.shalom-lab-material-original {
  padding-top: 274px;
}
@media screen and (min-width: 960px) {
  .shalom-lab-material-original {
    padding-top: 322px;
  }
}
.shalom-lab-material-original .columns-std {
  position: relative;
}
@media screen and (min-width: 780px) {
  .shalom-lab-material-original .columns-std {
    max-width: 520px;
  }
}
@media screen and (min-width: 960px) {
  .shalom-lab-material-original .columns-std {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    max-width: 928px;
    gap: 0;
  }
}
.shalom-lab-material-original .columns-std .column {
  position: relative;
  z-index: 2;
}
.shalom-lab-material-original .columns-std .column-image {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 38px;
  margin-left: 0;
  margin-right: 0;
}
@media screen and (min-width: 960px) {
  .shalom-lab-material-original .columns-std .column-image {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
    gap: 65px;
    max-width: 512px;
  }
}
.shalom-lab-material-original .columns-std .column-image .image {
  margin-left: -30px;
  margin-right: -30px;
}
@media screen and (min-width: 780px) {
  .shalom-lab-material-original .columns-std .column-image .image {
    margin-left: 0;
    margin-right: 0;
  }
}
.shalom-lab-material-original .columns-std .column-image .hgroup {
  width: 100%;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (min-width: 780px) {
  .shalom-lab-material-original .columns-std .column-image .hgroup {
    max-width: 450px;
  }
}
@media screen and (min-width: 960px) {
  .shalom-lab-material-original .columns-std .column-image .hgroup {
    max-width: none;
    margin-left: 0;
    margin-right: 0;
  }
}
.shalom-lab-material-original .columns-std .column-image .hgroup .caption {
  font-size: 0.8125rem;
  letter-spacing: 0.1em;
  line-height: 1.6;
}
@media screen and (min-width: 960px) {
  .shalom-lab-material-original .columns-std .column-image .hgroup .caption {
    font-size: 1.125rem;
    letter-spacing: 0.12em;
  }
}
.shalom-lab-material-original .columns-std .column-image .hgroup .heading-large {
  font-size: 2.375rem;
  letter-spacing: 0.15em;
  line-height: 1.2;
}
@media screen and (min-width: 960px) {
  .shalom-lab-material-original .columns-std .column-image .hgroup .heading-large {
    font-size: 3.75rem;
    letter-spacing: 0.15em;
  }
}
@media screen and (min-width: 960px) {
  .shalom-lab-material-original .columns-std .column-text {
    max-width: 463px;
    margin-top: 22px;
    margin-left: -48px;
  }
}

.material-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: 242px;
  margin-top: 270px;
}
@media screen and (min-width: 960px) {
  .material-list {
    gap: 288px;
    margin-top: 306px;
  }
}
.material-list .material-category .hgroup-hc .heading-hc .text-row {
  display: block;
}
@media screen and (min-width: 960px) {
  .material-list .material-category .hgroup-hc .heading-hc .text-row {
    display: inline;
  }
}
.material-list .material-category .hgroup-hc .heading-hc.heading-underline-offset {
  display: block;
  border-bottom: none;
  padding-bottom: 0;
  text-decoration-line: underline;
  text-decoration-style: solid;
  text-decoration-color: #808080;
  text-underline-offset: 0.4em;
  text-decoration-thickness: 1px;
  line-height: 2;
}
@media screen and (min-width: 960px) {
  .material-list .material-category .hgroup-hc .heading-hc.heading-underline-offset {
    line-height: 2.2;
  }
}
.material-list .category-content {
  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: 156px;
  margin-top: 120px;
}
@media screen and (min-width: 780px) {
  .material-list .category-content {
    gap: 120px;
    margin-top: 120px;
  }
}
.material-list .list-item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 20px;
}
@media screen and (min-width: 780px) {
  .material-list .list-item {
    max-width: 450px;
    margin-left: auto;
    margin-right: auto;
  }
}
@media screen and (min-width: 960px) {
  .material-list .list-item {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    gap: 38px;
    max-width: 860px;
  }
}
.material-list .item-image {
  overflow: hidden;
  max-width: 167px;
  max-height: 167px;
  margin-left: auto;
  margin-right: auto;
  border-radius: 167px;
}
.material-list .item-image.item-image-bordered {
  border: 1px solid #d9d9d9;
}
@media screen and (min-width: 960px) {
  .material-list .item-image {
    max-width: 149px;
    max-height: 149px;
    margin-left: 0;
    margin-right: 0;
    border-radius: 149px;
  }
}
.material-list .item-data {
  position: relative;
}
@media screen and (min-width: 960px) {
  .material-list .item-data {
    max-width: 660px;
  }
}
.material-list .item-data .hgroup {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.material-list .item-data .hgroup .heading {
  font-size: 1.125rem;
  letter-spacing: 0.0666666667em;
  line-height: 1.3;
}
@media screen and (min-width: 960px) {
  .material-list .item-data .hgroup .heading {
    font-size: 1.375rem;
    letter-spacing: 0.0681818182em;
  }
}
.material-list .item-data .hgroup .patent {
  font-size: 0.8125rem;
  letter-spacing: 0.0153846154em;
  line-height: 1.2;
}
.material-list .item-data .hgroup .patent::before {
  content: "/";
  display: inline-block;
  margin-left: 0.5em;
  margin-right: 0.5em;
}
@media screen and (min-width: 960px) {
  .material-list .item-data .hgroup .patent {
    font-size: 0.9375rem;
  }
}
.material-list .item-data .data-properties {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 7px;
  margin-top: 13px;
}
@media screen and (min-width: 960px) {
  .material-list .item-data .data-properties {
    gap: 10px;
    margin-top: 15px;
  }
}
.material-list .item-data .data-properties .data-property {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 7px;
}
@media screen and (min-width: 960px) {
  .material-list .item-data .data-properties .data-property {
    gap: 15px;
  }
}
.material-list .item-data .data-properties .data-property.property-effect .property-label {
  -ms-flex-item-align: start;
      align-self: flex-start;
  min-width: 106px;
}
.material-list .item-data .data-properties .data-property.property-effect .list-data {
  gap: 7px;
}
@media screen and (min-width: 960px) {
  .material-list .item-data .data-properties .data-property.property-effect .list-data {
    gap: 14px;
  }
}
.material-list .item-data .data-properties .data-property.property-effect li {
  display: block;
  padding-top: 4px;
  padding-left: 10px;
  padding-right: 10px;
  padding-bottom: 4px;
  border-radius: 4px;
  background: #d9d9d9;
  word-break: keep-all;
}
.material-list .item-data .data-properties .data-property .property-label {
  font-size: 0.8125rem;
  font-family: "Yu Gothic Pr6N M", "ヒラギノ角ゴシック", "Hiragino Kaku Gothic", メイリオ, Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  color: #808080;
  letter-spacing: 0.0153846154em;
  line-height: 1.6;
}
.material-list .item-data .data-properties .data-property .property-label::after {
  content: "/";
  display: inline-block;
  margin-left: 0.5em;
}
@media screen and (min-width: 960px) {
  .material-list .item-data .data-properties .data-property .property-label {
    font-size: 0.9375rem;
  }
}
.material-list .item-data .data-properties .data-property ul.list-data {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 10px;
}
@media screen and (min-width: 960px) {
  .material-list .item-data .data-properties .data-property ul.list-data {
    gap: 20px;
  }
}
.material-list .item-data .data-properties .data-property ul.list-data li {
  font-size: 0.6875rem;
  font-family: "Yu Gothic Pr6N M", "ヒラギノ角ゴシック", "Hiragino Kaku Gothic", メイリオ, Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  letter-spacing: 0.1em;
  line-height: 1.2;
  -webkit-font-feature-settings: "palt" on;
          font-feature-settings: "palt" on;
}
@media screen and (min-width: 960px) {
  .material-list .item-data .data-properties .data-property ul.list-data li {
    font-size: 0.9375rem;
    letter-spacing: 0.1em;
  }
}
.material-list .item-data .data-description {
  margin-top: 18px;
}
.material-list .item-data .data-description .text-std {
  font-size: 0.9375rem;
  letter-spacing: 0.1em;
  line-height: 2;
}
@media screen and (min-width: 960px) {
  .material-list .item-data .data-description .text-std {
    font-size: 0.9375rem;
    letter-spacing: 0.1em;
  }
}
.material-list .item-data .data-description .figure-group {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  gap: 20px;
  margin-top: 20px;
}
.material-list .item-data .data-description .figure-group .figure .image-fit {
  width: auto;
  height: 120px;
}
@media screen and (min-width: 960px) {
  .material-list .item-data .data-description .figure-group .figure .image-fit.image-fit-large {
    height: 143px;
  }
}
.material-list .item-data .data-description .figure-group .caption {
  max-width: 167px;
  font-size: 0.6875rem;
  font-family: "Yu Gothic Pr6N M", "ヒラギノ角ゴシック", "Hiragino Kaku Gothic", メイリオ, Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  letter-spacing: 0.1em;
  line-height: 1.5;
  text-align: justify;
}
@media screen and (min-width: 780px) {
  .material-list .item-data .data-description .figure-group .caption {
    font-size: 0.8125rem;
    letter-spacing: 0.1em;
  }
}

.shalom-lab-material-contact {
  margin-top: 242px;
}
@media screen and (min-width: 960px) {
  .shalom-lab-material-contact {
    margin-top: 292px;
  }
}
.shalom-lab-material-contact .button-group {
  max-width: 330px;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (min-width: 780px) {
  .shalom-lab-material-contact .button-group {
    max-width: 480px;
  }
}
@media screen and (min-width: 960px) {
  .shalom-lab-material-contact .button-group {
    max-width: 640px;
  }
}
.shalom-lab-material-contact .heading {
  font-size: 1.25rem;
  letter-spacing: 0.12em;
  line-height: 1.5;
}
@media screen and (min-width: 960px) {
  .shalom-lab-material-contact .heading {
    font-size: 1.625rem;
    letter-spacing: 0.15em;
    line-height: 1.8;
  }
}
.shalom-lab-material-contact .button {
  max-width: 170px;
  margin-top: 25px;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (min-width: 960px) {
  .shalom-lab-material-contact .button {
    max-width: 193px;
    margin-top: 22px;
  }
}

.shalom-lab-sphingomyelin {
  margin-top: 242px;
  padding-top: 80px;
  padding-bottom: 80px;
  background: url(../images/format/bg_gradation_4.webp) lightgray 0%/cover no-repeat;
  background-size: cover;
}
@media screen and (min-width: 780px) {
  .shalom-lab-sphingomyelin {
    padding-top: 113px;
    padding-bottom: 113px;
    background-size: cover;
  }
}
@media screen and (min-width: 960px) {
  .shalom-lab-sphingomyelin {
    margin-top: 242px;
    padding-top: 205px;
    padding-bottom: 205px;
    background: url(../images/format/bg_gradation_3.webp) lightgray 50%/cover no-repeat;
    background-size: cover;
  }
}
@media screen and (min-width: 960px) {
  .shalom-lab-sphingomyelin .columns-std {
    gap: 12.72%;
  }
}
@media screen and (min-width: 960px) {
  .shalom-lab-sphingomyelin .columns-std .column-text {
    max-width: 463px;
  }
}
.shalom-lab-sphingomyelin .columns-std .column-text .hgroup .heading-large {
  font-size: 1.5625rem;
  letter-spacing: 0.1em;
  line-height: 1.6;
}
@media screen and (min-width: 960px) {
  .shalom-lab-sphingomyelin .columns-std .column-text .hgroup .heading-large {
    font-size: 1.875rem;
    letter-spacing: 0.18em;
  }
}
.shalom-lab-sphingomyelin .columns-std .column-text .hgroup .heading {
  margin-top: 15px;
  font-size: 1.25rem;
  letter-spacing: 0.12em;
  line-height: 1.5;
}
@media screen and (min-width: 780px) {
  .shalom-lab-sphingomyelin .columns-std .column-text .hgroup .heading {
    margin-top: 15px;
    font-size: 1.25rem;
    letter-spacing: 0.12em;
  }
}
.shalom-lab-sphingomyelin .columns-std .column-text .hgroup .text-std {
  margin-top: 0.1em;
}
.shalom-lab-sphingomyelin .columns-std .column-text .text-group {
  margin-top: 125px;
}
@media screen and (min-width: 960px) {
  .shalom-lab-sphingomyelin .columns-std .column-text .text-group {
    margin-top: 130px;
  }
}
.shalom-lab-sphingomyelin .columns-std .column-text .text-group .heading {
  font-size: 1.25rem;
  letter-spacing: 0.12em;
  line-height: 1.5;
}
@media screen and (min-width: 960px) {
  .shalom-lab-sphingomyelin .columns-std .column-text .text-group .heading {
    margin-top: 15px;
  }
}
@media screen and (min-width: 780px) {
  .shalom-lab-sphingomyelin .columns-std .column-text .text-group .heading {
    margin-top: 15px;
    font-size: 1.25rem;
    letter-spacing: 0.12em;
  }
}
.shalom-lab-sphingomyelin .columns-std .column-text .text-group .text-std {
  margin-top: 1.2em;
  font-size: 0.6875rem;
  letter-spacing: 0.1em;
  line-height: 2.13;
}
@media screen and (min-width: 780px) {
  .shalom-lab-sphingomyelin .columns-std .column-text .text-group .text-std {
    font-size: 0.9375rem;
    letter-spacing: 0.1em;
  }
}
.shalom-lab-sphingomyelin .columns-std .column-image {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 47px;
  max-width: 450px;
  margin-top: 82px;
  margin-left: auto;
  margin-right: auto;
  padding-bottom: 100px;
}
@media screen and (min-width: 960px) {
  .shalom-lab-sphingomyelin .columns-std .column-image {
    gap: 90px;
    max-width: 500px;
    margin-top: 0;
    margin-left: 0;
    margin-right: 0;
    padding-bottom: 0;
  }
}
.shalom-lab-sphingomyelin .columns-std .column-image .figure-group .figure {
  max-width: 100%;
}
.shalom-lab-sphingomyelin .columns-std .column-image .figure-group .caption {
  margin-top: 22px;
  font-size: 0.6875rem;
  font-family: "Yu Gothic Pr6N M", "ヒラギノ角ゴシック", "Hiragino Kaku Gothic", メイリオ, Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  letter-spacing: 0.1em;
  line-height: 1.5;
}
@media screen and (min-width: 780px) {
  .shalom-lab-sphingomyelin .columns-std .column-image .figure-group .caption {
    margin-top: 15px;
    font-size: 0.8125rem;
    letter-spacing: 0.1em;
  }
}

.style-equipment {
  overflow-x: hidden;
}
.style-equipment #ornament-1 {
  position: absolute;
  bottom: -227px;
  left: -60px;
  z-index: 1;
}
@media screen and (min-width: 780px) {
  .style-equipment #ornament-1 {
    left: -125px;
    bottom: -327px;
  }
}
@media screen and (min-width: 960px) {
  .style-equipment #ornament-1 {
    left: -208px;
    bottom: -206px;
  }
}
.style-equipment #ornament-1 .ornament-image {
  -webkit-transform: translateX(0);
          transform: translateX(0);
}
@media screen and (min-width: 780px) {
  .style-equipment #ornament-1 .ornament-image {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
}
@media screen and (min-width: 960px) {
  .style-equipment #ornament-1 .ornament-image {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
}
.style-equipment #ornament-1 .ornament-image img {
  width: 221.968px;
}
@media screen and (min-width: 780px) {
  .style-equipment #ornament-1 .ornament-image img {
    width: 363.538px;
  }
}
@media screen and (min-width: 960px) {
  .style-equipment #ornament-1 .ornament-image img {
    width: 405px;
  }
}
.style-equipment #ornament-2 {
  position: absolute;
  z-index: 1;
  right: 0;
  bottom: -220px;
}
@media screen and (min-width: 780px) {
  .style-equipment #ornament-2 {
    right: -16px;
    bottom: -303px;
  }
}
@media screen and (min-width: 960px) {
  .style-equipment #ornament-2 {
    right: -12px;
    bottom: -443px;
  }
}
.style-equipment #ornament-2 .ornament-image {
  -webkit-transform: translateX(0);
          transform: translateX(0);
}
@media screen and (min-width: 780px) {
  .style-equipment #ornament-2 .ornament-image {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
}
@media screen and (min-width: 960px) {
  .style-equipment #ornament-2 .ornament-image {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
}
.style-equipment #ornament-2 .ornament-image img {
  width: 271px;
}
@media screen and (min-width: 780px) {
  .style-equipment #ornament-2 .ornament-image img {
    width: 315px;
  }
}
@media screen and (min-width: 960px) {
  .style-equipment #ornament-2 .ornament-image img {
    width: 462px;
  }
}
.style-equipment #ornament-3 {
  display: none;
  position: absolute;
  z-index: 3;
}
@media screen and (min-width: 960px) {
  .style-equipment #ornament-3 {
    display: block;
    top: -350px;
    left: -185px;
  }
}
.style-equipment #ornament-3 .ornament-image {
  -webkit-transform: translateX(0);
          transform: translateX(0);
}
@media screen and (min-width: 780px) {
  .style-equipment #ornament-3 .ornament-image {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
}
@media screen and (min-width: 960px) {
  .style-equipment #ornament-3 .ornament-image {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
}
.style-equipment #ornament-3 .ornament-image img {
  width: 221.968px;
}
@media screen and (min-width: 780px) {
  .style-equipment #ornament-3 .ornament-image img {
    width: 363.538px;
  }
}
@media screen and (min-width: 960px) {
  .style-equipment #ornament-3 .ornament-image img {
    width: 499.509px;
  }
}
.style-equipment #ornament-4 {
  position: absolute;
  z-index: 13;
  right: -88px;
  bottom: 204px;
}
@media screen and (min-width: 780px) {
  .style-equipment #ornament-4 {
    right: -124px;
    bottom: 284px;
  }
}
@media screen and (min-width: 960px) {
  .style-equipment #ornament-4 {
    right: -295px;
    bottom: -191px;
  }
}
.style-equipment #ornament-4 .ornament-image {
  -webkit-transform: translateX(0);
          transform: translateX(0);
}
@media screen and (min-width: 780px) {
  .style-equipment #ornament-4 .ornament-image {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
}
@media screen and (min-width: 960px) {
  .style-equipment #ornament-4 .ornament-image {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
}
.style-equipment #ornament-4 .ornament-image img {
  width: 241px;
}
@media screen and (min-width: 780px) {
  .style-equipment #ornament-4 .ornament-image img {
    width: 281px;
  }
}
@media screen and (min-width: 960px) {
  .style-equipment #ornament-4 .ornament-image img {
    width: 576px;
  }
}
.style-equipment #ornament-5 {
  position: absolute;
  top: -128px;
  left: -19px;
  z-index: 3;
}
@media screen and (min-width: 780px) {
  .style-equipment #ornament-5 {
    top: -115px;
    left: 55px;
  }
}
@media screen and (min-width: 960px) {
  .style-equipment #ornament-5 {
    left: 22px;
    top: -204px;
  }
}
.style-equipment #ornament-5 .ornament-image {
  -webkit-transform: translateX(0);
          transform: translateX(0);
}
@media screen and (min-width: 780px) {
  .style-equipment #ornament-5 .ornament-image {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
}
@media screen and (min-width: 960px) {
  .style-equipment #ornament-5 .ornament-image {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
}
.style-equipment #ornament-5 .ornament-image img {
  width: 134px;
}
@media screen and (min-width: 780px) {
  .style-equipment #ornament-5 .ornament-image img {
    width: 121px;
  }
}
@media screen and (min-width: 960px) {
  .style-equipment #ornament-5 .ornament-image img {
    width: 153px;
  }
}
.style-equipment #ornament-6 {
  position: absolute;
  left: -30px;
  bottom: -168px;
  z-index: 3;
}
@media screen and (min-width: 780px) {
  .style-equipment #ornament-6 {
    left: -251px;
    bottom: -315px;
  }
}
@media screen and (min-width: 960px) {
  .style-equipment #ornament-6 {
    left: -246px;
    bottom: -246px;
  }
}
.style-equipment #ornament-6 .ornament-image {
  -webkit-transform: translateX(0);
          transform: translateX(0);
}
@media screen and (min-width: 780px) {
  .style-equipment #ornament-6 .ornament-image {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
}
@media screen and (min-width: 960px) {
  .style-equipment #ornament-6 .ornament-image {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
}
.style-equipment #ornament-6 .ornament-image img {
  width: 208px;
}
@media screen and (min-width: 780px) {
  .style-equipment #ornament-6 .ornament-image img {
    width: 311px;
  }
}
@media screen and (min-width: 960px) {
  .style-equipment #ornament-6 .ornament-image img {
    width: 405px;
  }
}

.hero-equipment {
  position: relative;
}
.hero-equipment .hero-image {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  position: relative;
  margin-left: 42px;
}
@media screen and (min-width: 780px) {
  .hero-equipment .hero-image {
    max-width: 1110px;
    margin-left: 122px;
  }
}
@media screen and (min-width: 960px) {
  .hero-equipment .hero-image {
    margin-left: auto;
  }
}
.hero-equipment .hero-image img {
  max-width: 100%;
}
@media screen and (min-width: 780px) {
  .hero-equipment .hero-image img {
    max-width: 1110px;
  }
}
@media screen and (min-width: 960px) {
  .hero-equipment > .content-std {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    position: absolute;
    top: 147px;
    max-width: 1512px;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    padding-left: clamp(55px, 7.0105820106%, 106px);
    padding-right: clamp(55px, 7.0105820106%, 106px);
  }
}
.hero-equipment .hgroup {
  position: relative;
  margin-top: -32px;
  z-index: 2;
}
@media screen and (min-width: 780px) {
  .hero-equipment .hgroup {
    max-width: 656px;
    margin-left: auto;
    margin-right: auto;
  }
}
@media screen and (min-width: 960px) {
  .hero-equipment .hgroup {
    max-width: 404px;
    margin-left: 0;
    margin-right: 0;
  }
}
.hero-equipment .heading-large {
  font-size: 2.375rem;
  letter-spacing: 0.15em;
  line-height: 1.6;
}
@media screen and (min-width: 960px) {
  .hero-equipment .heading-large {
    font-size: 3.75rem;
    letter-spacing: 0.15em;
  }
}
.hero-equipment .text-group {
  margin-top: 12px;
}
@media screen and (min-width: 960px) {
  .hero-equipment .text-group {
    margin-top: 32px;
  }
}
.hero-equipment .text-group .tag-line {
  font-size: 1.5625rem;
  letter-spacing: 0.04em;
  line-height: 1.6;
}
@media screen and (min-width: 960px) {
  .hero-equipment .text-group .tag-line {
    font-size: 1.875rem;
    letter-spacing: 0.18em;
  }
}
@media screen and (min-width: 780px) {
  .hero-equipment .text-group .tag-line .text-row br {
    display: none;
  }
}
@media screen and (min-width: 960px) {
  .hero-equipment .text-group .tag-line .text-row br {
    display: block;
  }
}

.equipment-description {
  margin-top: 148px;
}
@media screen and (min-width: 780px) {
  .equipment-description {
    margin-top: 244px;
  }
}
@media screen and (min-width: 960px) {
  .equipment-description {
    margin-top: 200px;
  }
}
.equipment-description .equipment-description-top .columns-std {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  max-width: 390px;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (min-width: 780px) {
  .equipment-description .equipment-description-top .columns-std {
    max-width: 450px;
  }
}
@media screen and (min-width: 960px) {
  .equipment-description .equipment-description-top .columns-std {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    max-width: 840px;
    gap: 70px;
  }
}
.equipment-description .equipment-description-top .column-image {
  max-width: 290px;
  margin-left: -30px;
  margin-right: -30px;
}
@media screen and (min-width: 780px) {
  .equipment-description .equipment-description-top .column-image {
    max-width: 450px;
    margin-left: 0;
    margin-right: 0;
  }
}
@media screen and (min-width: 960px) {
  .equipment-description .equipment-description-top .column-image {
    max-width: 420px;
    margin-left: 0;
    margin-right: 0;
  }
}
.equipment-description .equipment-description-top .column-text {
  max-width: 330px;
  margin-top: 38px;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (min-width: 780px) {
  .equipment-description .equipment-description-top .column-text {
    max-width: 450px;
    margin-top: 33px;
  }
}
@media screen and (min-width: 960px) {
  .equipment-description .equipment-description-top .column-text {
    max-width: 350px;
    margin-top: 0;
    margin-left: 0;
    margin-right: 0;
  }
}
.equipment-description .equipment-description-top .hgroup {
  margin-top: 10px;
}
@media screen and (min-width: 780px) {
  .equipment-description .equipment-description-top .hgroup {
    margin-top: 6px;
  }
}
@media screen and (min-width: 960px) {
  .equipment-description .equipment-description-top .hgroup {
    margin-top: 0;
  }
}
.equipment-description .equipment-description-top .caption {
  font-size: 0.8125rem;
  letter-spacing: 0.1em;
  line-height: 1.5;
}
@media screen and (min-width: 780px) {
  .equipment-description .equipment-description-top .caption {
    font-size: 1.25rem;
    letter-spacing: 0.15em;
  }
}
.equipment-description .equipment-description-top .heading {
  margin-top: 0.2em;
  font-size: 1.5625rem;
  letter-spacing: 0.1em;
  line-height: 1.6;
}
@media screen and (min-width: 780px) {
  .equipment-description .equipment-description-top .heading {
    font-size: 1.875rem;
    letter-spacing: 0.18em;
  }
}
.equipment-description .equipment-description-top .text-std {
  margin-top: 14px;
}
@media screen and (min-width: 960px) {
  .equipment-description .equipment-description-top .text-std {
    margin-top: 12px;
  }
}
.equipment-description .equipment-description-bottom {
  margin-top: 68px;
}
@media screen and (min-width: 780px) {
  .equipment-description .equipment-description-bottom {
    margin-top: 80px;
  }
}
@media screen and (min-width: 960px) {
  .equipment-description .equipment-description-bottom {
    margin-top: 133px;
  }
}
.equipment-description .equipment-description-bottom .content-std {
  position: relative;
}
.equipment-description .equipment-description-bottom .columns-std {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  max-width: 390px;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (min-width: 780px) {
  .equipment-description .equipment-description-bottom .columns-std {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    max-width: 520px;
  }
}
@media screen and (min-width: 960px) {
  .equipment-description .equipment-description-bottom .columns-std {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    max-width: 840px;
    gap: 70px;
  }
}
.equipment-description .equipment-description-bottom .column {
  max-width: 450px;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (min-width: 780px) {
  .equipment-description .equipment-description-bottom .column {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
    max-width: 450px;
    margin-top: 48px;
    margin-left: auto;
    margin-right: auto;
  }
}
@media screen and (min-width: 960px) {
  .equipment-description .equipment-description-bottom .column {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    max-width: 350px;
    margin-top: 0;
    margin-left: 0;
    margin-right: 0;
  }
}
@media screen and (min-width: 780px) {
  .equipment-description .equipment-description-bottom .column.column-logo {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    gap: 40px;
    max-width: 450px;
    margin-left: auto;
    margin-right: auto;
  }
}
@media screen and (min-width: 960px) {
  .equipment-description .equipment-description-bottom .column.column-logo {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    gap: 40px;
    max-width: 420px;
    margin-left: 0;
    margin-right: 0;
  }
}
.equipment-description .equipment-description-bottom .column.column-logo .image {
  max-width: 94px;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (min-width: 780px) {
  .equipment-description .equipment-description-bottom .column.column-logo .image {
    margin-left: 0;
    margin-right: 0;
  }
}
.equipment-description .equipment-description-bottom .column.column-logo .text-std {
  margin-top: 48px;
}
@media screen and (min-width: 780px) {
  .equipment-description .equipment-description-bottom .column.column-logo .text-std {
    max-width: 317px;
    margin-top: 0;
  }
}
@media screen and (min-width: 960px) {
  .equipment-description .equipment-description-bottom .column.column-logo .text-std {
    max-width: 286px;
    margin-top: 0;
  }
}
@media screen and (min-width: 780px) {
  .equipment-description .equipment-description-bottom .text-group {
    max-width: 317px;
    margin-left: 0;
    margin-right: 0;
  }
}
@media screen and (min-width: 960px) {
  .equipment-description .equipment-description-bottom .text-group {
    max-width: none;
    margin-left: 0;
    margin-right: auto;
  }
}
.equipment-description .equipment-description-bottom .text-group .text-std {
  margin-top: 48px;
  font-size: 0.9375rem;
  letter-spacing: 0.1em;
  line-height: 2;
}
@media screen and (min-width: 780px) {
  .equipment-description .equipment-description-bottom .text-group .text-std {
    margin-top: 0;
    font-size: 0.9375rem;
    letter-spacing: 0.1em;
  }
}
.equipment-description .equipment-description-bottom .text-group .text-std.font-sans-serif {
  font-size: 0.8125rem;
  letter-spacing: 0.1em;
  line-height: 2;
}
@media screen and (min-width: 780px) {
  .equipment-description .equipment-description-bottom .text-group .text-std.font-sans-serif {
    font-size: 0.8125rem;
    letter-spacing: 0.1em;
    line-height: 1.9;
  }
}

.equipment-section-group {
  margin-top: 270px;
}
@media screen and (min-width: 780px) {
  .equipment-section-group {
    margin-top: 240px;
  }
}
@media screen and (min-width: 960px) {
  .equipment-section-group {
    margin-top: 350px;
  }
}
.equipment-section-group + .equipment-section-group {
  margin-top: 182px;
}
@media screen and (min-width: 960px) {
  .equipment-section-group + .equipment-section-group {
    margin-top: 493px;
  }
}
.equipment-section-group .hgroup-hc {
  margin-bottom: 80px;
}
@media screen and (min-width: 960px) {
  .equipment-section-group .hgroup-hc {
    margin-bottom: 182px;
  }
}
.equipment-section-group .section-group {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 170px;
}
@media screen and (min-width: 960px) {
  .equipment-section-group .section-group {
    gap: 400px;
  }
}

.equipment-section .columns-std {
  position: relative;
}
@media screen and (min-width: 960px) {
  .equipment-section .columns-std {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 33px;
    margin-left: auto;
    margin-right: auto;
  }
}
@media screen and (min-width: 1300px) {
  .equipment-section .columns-std {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    gap: 8.33%;
  }
}
@media screen and (min-width: 960px) {
  .equipment-section .columns-std.flex-row-reverse {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}
@media screen and (min-width: 1300px) {
  .equipment-section .columns-std.flex-row-reverse {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse;
  }
}
.equipment-section .columns-std .column-image {
  position: relative;
}
.equipment-section .columns-std .column-image .carousel {
  position: relative;
  overflow: hidden;
}
.equipment-section .columns-std .column-image .carousel .swiper-wrapper {
  width: 100%;
}
.equipment-section .columns-std .column-image .nav {
  display: block;
  position: absolute;
  top: auto;
  left: 0;
  right: auto;
  bottom: -15px;
  width: 100%;
  height: 1px;
  padding: 0;
  padding-left: 30px;
  padding-right: 30px;
  z-index: 10;
}
@media screen and (min-width: 780px) {
  .equipment-section .columns-std .column-image .nav {
    padding-left: 0;
    padding-right: 0;
  }
}
.equipment-section .columns-std .column-image .swiper-pagination {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 11px;
  position: static;
  bottom: 0;
  text-align: right;
}
@media screen and (min-width: 960px) {
  .equipment-section .columns-std .column-image .swiper-pagination.flex-start {
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
  }
}
.equipment-section .columns-std .column-image .swiper-pagination-bullet {
  display: block;
  width: 7px;
  height: 7px;
  margin: 0;
  border-radius: 100%;
  background: #d9d9d9;
  opacity: 1;
}
.equipment-section .columns-std .column-image .swiper-pagination-bullet-active {
  background: var(--swiper-pagination-color, #60A5D7);
}
.equipment-section .columns-std .column-image .swiper-pagination-vertical.swiper-pagination-bullets .swiper-pagination-bullet,
.equipment-section .columns-std .column-image .swiper-vertical > .swiper-pagination-bullets .swiper-pagination-bullet {
  margin: var(--swiper-pagination-bullet-vertical-gap, 0) 0;
}
@media screen and (min-width: 960px) {
  .equipment-section .columns-std .column-text {
    max-width: 450px;
    margin-left: auto;
    margin-right: auto;
  }
}
@media screen and (min-width: 1300px) {
  .equipment-section .columns-std .column-text {
    max-width: 350px;
    margin-left: 0;
    margin-right: 0;
  }
}

.equipment-list {
  margin-top: 300px;
  padding-bottom: 245px;
}
@media screen and (min-width: 780px) {
  .equipment-list {
    margin-top: 235px;
    padding-bottom: 250px;
  }
}
@media screen and (min-width: 960px) {
  .equipment-list {
    margin-top: 387px;
    padding-bottom: 240px;
  }
}
.equipment-list .hgroup-hc {
  text-align: left;
}
@media screen and (min-width: 780px) {
  .equipment-list .hgroup-hc {
    text-align: center;
  }
}
.equipment-list .section-folding .folding-content {
  display: none;
}
@media screen and (min-width: 960px) {
  .equipment-list .section-folding .folding-content {
    display: block;
  }
}
.equipment-list .section-folding.is-open .folding-content {
  display: block;
}
.equipment-list .section-folding.is-open .button {
  display: none;
}

.equipment-list-table {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  margin-top: 17px;
  max-width: 350px;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (min-width: 780px) {
  .equipment-list-table {
    max-width: 450px;
    margin-top: 17px;
  }
}
@media screen and (min-width: 960px) {
  .equipment-list-table {
    -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: 9.09%;
    max-width: 1100px;
    width: 100%;
    margin-top: 140px;
  }
}
@media screen and (min-width: 960px) {
  .equipment-list-table .table-column {
    max-width: 100%;
    width: 45.45%;
  }
}
.equipment-list-table .table-column .button {
  margin-top: 15px;
  text-align: center;
  cursor: pointer;
}
@media screen and (min-width: 960px) {
  .equipment-list-table .table-column .button {
    display: none;
  }
}
.equipment-list-table .table-column .button .view-more {
  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;
  color: #a3a3a3;
  font-size: 14px;
  letter-spacing: 2.4px;
  text-align: center;
}
.equipment-list-table .table-column .button .view-more::after {
  content: "";
  display: block;
  width: 16px;
  height: 8px;
  margin-left: 5px;
  background: url(../images/format/icon_arrow_down_select.svg) no-repeat 0 0;
  background-size: 100% auto;
}
.equipment-list-table .table-equipment {
  width: 100%;
  border-collapse: collapse;
  background: #ffffff;
  -webkit-font-feature-settings: "palt" on;
          font-feature-settings: "palt" on;
}
.equipment-list-table .table-equipment.is-hidden thead {
  display: block;
  overflow: hidden;
  height: 0;
}
.equipment-list-table .table-equipment.is-hidden tbody tr {
  background: #ffffff;
}
.equipment-list-table .table-equipment.is-hidden tbody tr:nth-child(even) {
  background: #dfeffa;
}
.equipment-list-table .table-equipment.is-head-hidden thead {
  display: none;
}
@media screen and (min-width: 960px) {
  .equipment-list-table .table-equipment.is-head-hidden thead {
    display: table-header-group;
  }
}
.equipment-list-table .table-equipment thead th {
  padding: 0;
  padding-top: 0;
  padding-left: 0;
  padding-right: 0;
  padding-bottom: 0.4em;
  border: none;
  font-size: 0.9375rem;
  font-family: "Yu Gothic Pr6N M", "ヒラギノ角ゴシック", "Hiragino Kaku Gothic", メイリオ, Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-weight: 400;
  letter-spacing: 0.1em;
  line-height: 2;
  text-align: left;
}
@media screen and (min-width: 780px) {
  .equipment-list-table .table-equipment thead th {
    font-size: 0.9375rem;
    letter-spacing: 0.1em;
  }
}
@media screen and (min-width: 960px) {
  .equipment-list-table .table-equipment thead th {
    font-size: 0.9375rem;
    letter-spacing: 0.1em;
  }
}
.equipment-list-table .table-equipment thead th:first-child {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  width: 100%;
  padding-left: 28px;
  text-align: left;
}
@media screen and (min-width: 960px) {
  .equipment-list-table .table-equipment thead th:first-child {
    padding-left: 24px;
  }
}
.equipment-list-table .table-equipment thead th:last-child {
  min-width: 51px;
  width: 11%;
  text-align: center;
}
.equipment-list-table .table-equipment tbody tr {
  background: #dfeffa;
}
.equipment-list-table .table-equipment tbody tr:nth-child(even) {
  background: #ffffff;
}
.equipment-list-table .table-equipment tbody tr th, .equipment-list-table .table-equipment tbody tr td {
  padding-top: 10.5px;
  padding-bottom: 10.5px;
  font-size: 0.9375rem;
  font-family: "Yu Gothic Pr6N M", "ヒラギノ角ゴシック", "Hiragino Kaku Gothic", メイリオ, Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-weight: 400;
  letter-spacing: 0.1em;
  line-height: 1.3;
  text-align: left;
  vertical-align: middle;
  border: none;
}
@media screen and (min-width: 960px) {
  .equipment-list-table .table-equipment tbody tr th, .equipment-list-table .table-equipment tbody tr td {
    padding-top: 16px;
    padding-bottom: 16px;
    font-size: 1.125rem;
    letter-spacing: 0.1em;
  }
}
.equipment-list-table .table-equipment tbody tr th {
  padding-left: 28px;
}
@media screen and (min-width: 960px) {
  .equipment-list-table .table-equipment tbody tr th {
    width: 100%;
    padding-left: 24px;
  }
}
.equipment-list-table .table-equipment tbody tr td {
  min-width: 51px;
  width: 11%;
  text-align: center;
}
.equipment-list-table .table-equipment tbody tr td .text-row {
  display: block;
}
@media screen and (min-width: 960px) {
  .equipment-list-table .table-equipment tbody tr td .text-row {
    display: inline;
  }
}

.style-about-us {
  overflow-x: hidden;
}
.style-about-us #ornament-1 {
  position: absolute;
  bottom: -88px;
  right: -120px;
  z-index: 1;
}
@media screen and (min-width: 780px) {
  .style-about-us #ornament-1 {
    left: -105px;
    right: auto;
    bottom: -140px;
  }
}
@media screen and (min-width: 960px) {
  .style-about-us #ornament-1 {
    left: -111px;
    bottom: -140px;
  }
}
.style-about-us #ornament-1 .ornament-image {
  -webkit-transform: translateX(0);
          transform: translateX(0);
}
@media screen and (min-width: 780px) {
  .style-about-us #ornament-1 .ornament-image {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
}
@media screen and (min-width: 960px) {
  .style-about-us #ornament-1 .ornament-image {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
}
.style-about-us #ornament-1 .ornament-image img {
  width: 225px;
}
@media screen and (min-width: 780px) {
  .style-about-us #ornament-1 .ornament-image img {
    width: 403px;
  }
}
@media screen and (min-width: 960px) {
  .style-about-us #ornament-1 .ornament-image img {
    width: 483px;
  }
}
.style-about-us #ornament-2 {
  position: absolute;
  z-index: 1;
  right: 0;
  top: -210px;
}
@media screen and (min-width: 960px) {
  .style-about-us #ornament-2 {
    right: 50px;
    top: -364px;
  }
}
.style-about-us #ornament-2 .ornament-image {
  -webkit-transform: translateX(0);
          transform: translateX(0);
}
@media screen and (min-width: 780px) {
  .style-about-us #ornament-2 .ornament-image {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
}
@media screen and (min-width: 960px) {
  .style-about-us #ornament-2 .ornament-image {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
}
.style-about-us #ornament-2 .ornament-image img {
  width: 234px;
}
@media screen and (min-width: 960px) {
  .style-about-us #ornament-2 .ornament-image img {
    width: 462px;
  }
}

.hero-about-us {
  position: relative;
}
.hero-about-us .hero-image {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  position: relative;
  margin-right: 42px;
}
@media screen and (min-width: 780px) {
  .hero-about-us .hero-image {
    max-width: 1110px;
    margin-left: 122px;
    margin-right: 0;
  }
}
@media screen and (min-width: 960px) {
  .hero-about-us .hero-image {
    margin-left: auto;
  }
}
.hero-about-us .hero-image img {
  max-width: 100%;
}
@media screen and (min-width: 780px) {
  .hero-about-us .hero-image img {
    max-width: 1110px;
  }
}
@media screen and (min-width: 960px) {
  .hero-about-us > .content-std {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    position: absolute;
    top: 147px;
    max-width: 1512px;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    padding-left: clamp(55px, 7.0105820106%, 106px);
    padding-right: clamp(55px, 7.0105820106%, 106px);
  }
}
.hero-about-us .hgroup {
  position: relative;
  margin-top: -32px;
  z-index: 2;
}
@media screen and (min-width: 780px) {
  .hero-about-us .hgroup {
    max-width: 656px;
    margin-left: auto;
    margin-right: auto;
  }
}
@media screen and (min-width: 960px) {
  .hero-about-us .hgroup {
    max-width: 404px;
    margin-left: 0;
    margin-right: 0;
  }
}
.hero-about-us .heading-large {
  font-size: 2.375rem;
  letter-spacing: 0.15em;
  line-height: 1.6;
}
@media screen and (min-width: 960px) {
  .hero-about-us .heading-large {
    font-size: 3.75rem;
    letter-spacing: 0.15em;
  }
}
.hero-about-us .text-group {
  margin-top: 12px;
}
@media screen and (min-width: 960px) {
  .hero-about-us .text-group {
    margin-top: 32px;
  }
}
.hero-about-us .text-group .tag-line {
  font-size: 1.5625rem;
  letter-spacing: 0.04em;
  line-height: 1.6;
}
@media screen and (min-width: 960px) {
  .hero-about-us .text-group .tag-line {
    font-size: 1.875rem;
    letter-spacing: 0.18em;
  }
}
@media screen and (min-width: 780px) {
  .hero-about-us .text-group .tag-line .text-row br {
    display: none;
  }
}
@media screen and (min-width: 960px) {
  .hero-about-us .text-group .tag-line .text-row br {
    display: block;
  }
}

.columns-definition {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  width: 100%;
  padding-top: 22px;
  padding-bottom: 22px;
  border-bottom: 1px solid #d9d9d9;
}
@media screen and (min-width: 960px) {
  .columns-definition {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    max-width: 626px;
    padding-top: 40px;
    padding-bottom: 40px;
  }
}
@media screen and (min-width: 960px) {
  .columns-definition .column-term {
    min-width: 10em;
  }
}
.columns-definition .column-term .heading-small {
  -webkit-font-feature-settings: "palt" on;
          font-feature-settings: "palt" on;
  font-size: 0.9375rem;
  letter-spacing: 0.1em;
  line-height: 1.5;
}
@media screen and (min-width: 780px) {
  .columns-definition .column-term .heading-small {
    font-size: 0.9375rem;
  }
}
.columns-definition .column-term .heading-small .text-row br {
  display: none;
}
@media screen and (min-width: 960px) {
  .columns-definition .column-term .heading-small .text-row br {
    display: block;
  }
}
@media screen and (min-width: 960px) {
  .columns-definition .column-description {
    min-width: calc(100% - 10em);
  }
}
.columns-definition .column-description .text-std {
  line-height: 2;
}
@media screen and (min-width: 960px) {
  .columns-definition .column-description .text-std {
    line-height: 1.5;
  }
}
.columns-definition .column-description .text-std span.text-row {
  display: block;
}
@media screen and (min-width: 960px) {
  .columns-definition .column-description .text-std span.text-row {
    display: inline;
  }
}

.about-us-outline {
  margin-top: 148px;
}
@media screen and (min-width: 960px) {
  .about-us-outline {
    margin-top: 200px;
  }
}
.about-us-outline .hgroup-hc .image {
  max-width: 193px;
  margin-top: 66px;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (min-width: 960px) {
  .about-us-outline .hgroup-hc .image {
    max-width: 256px;
    margin-top: 63px;
  }
}
.about-us-outline .columns-definition-list {
  max-width: 330px;
  margin-top: 94px;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (min-width: 960px) {
  .about-us-outline .columns-definition-list {
    max-width: 626px;
    margin-top: 135px;
    border-top: none;
  }
}
.about-us-outline .columns-definition-list .columns-definition .column-description {
  margin-left: 29px;
}
@media screen and (min-width: 960px) {
  .about-us-outline .columns-definition-list .columns-definition .column-description {
    margin-left: 0;
  }
}

.about-us-base-information {
  margin-top: 182px;
}
@media screen and (min-width: 960px) {
  .about-us-base-information {
    margin-top: 350px;
  }
}
.about-us-base-information .content-std {
  position: relative;
}
.about-us-base-information .hgroup-hc .image {
  max-width: 290px;
  margin-top: 40px;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (min-width: 960px) {
  .about-us-base-information .hgroup-hc .image {
    max-width: 417px;
    margin-top: 28px;
  }
}
.about-us-base-information .columns-definition-list {
  max-width: 330px;
  margin-top: 40px;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (min-width: 960px) {
  .about-us-base-information .columns-definition-list {
    max-width: 626px;
    margin-top: 70px;
  }
}
@media screen and (min-width: 960px) {
  .about-us-base-information .columns-definition-list .columns-definition {
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    gap: 22px;
  }
}
.about-us-base-information .columns-definition-list .text-group + .text-group {
  margin-top: 10px;
}
.about-us-base-information .columns-definition-list .text-std.font-en {
  font-size: 0.8125rem;
  letter-spacing: 0.0769230769em;
  line-height: 2;
}
@media screen and (min-width: 780px) {
  .about-us-base-information .columns-definition-list .text-std.font-en {
    font-size: 0.8125rem;
    letter-spacing: 0.0769230769em;
  }
}
.about-us-base-information .columns-definition-list .button {
  margin-top: 5px;
}
.about-us-base-information .columns-definition-list .button a {
  margin-left: 4px;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
}
.about-us-base-information .columns-definition-list .column-term .text-std.font-en {
  line-height: 2;
}
.about-us-base-information .columns-definition-list .column-description {
  margin-top: 10px;
}
@media screen and (min-width: 960px) {
  .about-us-base-information .columns-definition-list .column-description {
    min-width: 444px;
    max-width: 444px;
    margin-top: 0;
  }
}
.about-us-base-information .columns-definition-list .column-description .text-std.font-en {
  line-height: 1.8;
}
.about-us-base-information .columns-definition-list .column-description .button + .text-std.tel {
  margin-top: 10px;
}

.about-us-surroundings {
  margin-top: 217px;
}
@media screen and (min-width: 960px) {
  .about-us-surroundings {
    margin-top: 420px;
  }
}
.about-us-surroundings .columns-std {
  max-width: 330px;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (min-width: 960px) {
  .about-us-surroundings .columns-std {
    max-width: 1000px;
  }
}
.about-us-surroundings .columns-std .column {
  position: relative;
}
.about-us-surroundings .columns-std .column-image {
  position: relative;
}
@media screen and (min-width: 960px) {
  .about-us-surroundings .columns-std .column-text {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    gap: 85px;
    max-width: 708px;
    margin-top: 65px;
    margin-left: auto;
    margin-right: auto;
  }
}
.about-us-surroundings .image-2 {
  max-width: 326px;
  margin-left: auto;
  margin-right: -1px;
}
@media screen and (min-width: 960px) {
  .about-us-surroundings .image-2 {
    max-width: 630px;
  }
}
.about-us-surroundings .image-3 {
  max-width: 200px;
  margin-top: 47px;
  margin-left: -30px;
}
@media screen and (min-width: 960px) {
  .about-us-surroundings .image-3 {
    max-width: 273px;
    margin-top: 0;
    margin-left: 0;
  }
}
.about-us-surroundings .image-4 {
  max-width: 207px;
  margin-top: -68px;
  margin-left: auto;
}
@media screen and (min-width: 960px) {
  .about-us-surroundings .image-4 {
    position: absolute;
    top: 0;
    left: 0;
    max-width: 298px;
    margin-top: 0;
    margin-left: 0;
    -webkit-transform: translate(613px, -235px);
            transform: translate(613px, -235px);
  }
}
.about-us-surroundings .image-5 {
  display: none;
}
@media screen and (min-width: 960px) {
  .about-us-surroundings .image-5 {
    display: block;
    max-width: 154px;
    position: absolute;
    top: -56px;
    left: 0;
    -webkit-transform: translateX(703px);
            transform: translateX(703px);
  }
}
.about-us-surroundings .text-group {
  margin-top: 28px;
}
@media screen and (min-width: 960px) {
  .about-us-surroundings .text-group {
    max-width: 350px;
    margin-top: 0;
  }
}
.about-us-surroundings .text-group .hgroup-hc {
  text-align: left;
}
@media screen and (min-width: 960px) {
  .about-us-surroundings .text-group .hgroup-hc {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    margin-top: 38px;
  }
}
@media screen and (min-width: 960px) {
  .about-us-surroundings .text-group .hgroup-hc .heading-hc {
    margin-left: 1em;
  }
}
.about-us-surroundings .text-group .hgroup-hc .caption {
  font-size: 0.9375rem;
  letter-spacing: 0.1em;
  line-height: 2;
}
@media screen and (min-width: 960px) {
  .about-us-surroundings .text-group .hgroup-hc .caption {
    font-size: 1.25rem;
    letter-spacing: 0.15em;
    line-height: 1.75;
  }
}
.about-us-surroundings .text-group .text-std {
  margin-top: 14px;
}
@media screen and (min-width: 960px) {
  .about-us-surroundings .text-group .text-std {
    margin-top: 12px;
  }
}

.about-us-philosophy {
  margin-top: 247px;
  padding-bottom: 252px;
}
@media screen and (min-width: 960px) {
  .about-us-philosophy {
    margin-top: 414px;
    padding-bottom: 230px;
  }
}
.about-us-philosophy .linkage-block {
  max-width: 330px;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (min-width: 780px) {
  .about-us-philosophy .linkage-block {
    max-width: 450px;
  }
}
@media screen and (min-width: 960px) {
  .about-us-philosophy .linkage-block {
    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: 84px;
    max-width: 1000px;
  }
}
.about-us-philosophy .linkage-block .image {
  max-width: 100%;
}
@media screen and (min-width: 960px) {
  .about-us-philosophy .linkage-block .image {
    max-width: 490px;
  }
}
.about-us-philosophy .linkage-block .button-group {
  margin-top: 26px;
}
@media screen and (min-width: 960px) {
  .about-us-philosophy .linkage-block .button-group {
    margin-top: 0;
  }
}
.about-us-philosophy .linkage-block .caption-group {
  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: 7px;
}
@media screen and (min-width: 960px) {
  .about-us-philosophy .linkage-block .caption-group {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    gap: 0;
  }
}
.about-us-philosophy .linkage-block .icon {
  width: 69.5px;
  height: 25.5px;
}
@media screen and (min-width: 960px) {
  .about-us-philosophy .linkage-block .icon {
    width: 64.5px;
    height: 39.5px;
  }
}
.about-us-philosophy .linkage-block .caption {
  font-size: 0.8125rem;
  letter-spacing: 0.1em;
  line-height: 1.5;
}
@media screen and (min-width: 780px) {
  .about-us-philosophy .linkage-block .caption {
    font-size: 1.25rem;
    letter-spacing: 0.15em;
    line-height: 1.75;
  }
}
.about-us-philosophy .linkage-block .heading {
  margin-top: 0;
  font-size: 1.5625rem;
  letter-spacing: 0.1em;
  line-height: 1.6;
  text-align: center;
}
@media screen and (min-width: 780px) {
  .about-us-philosophy .linkage-block .heading {
    margin-top: 12px;
  }
}
@media screen and (min-width: 960px) {
  .about-us-philosophy .linkage-block .heading {
    margin-top: 12px;
    font-size: 1.625rem;
    letter-spacing: 0.1153846154em;
    text-align: left;
  }
}
.about-us-philosophy .linkage-block .button {
  max-width: 200px;
  margin-top: 15px;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (min-width: 960px) {
  .about-us-philosophy .linkage-block .button {
    max-width: 230px;
    margin-top: 25px;
    margin-left: 0;
  }
}

body.contact .page-footer .column-contact {
  display: none;
}
@media screen and (min-width: 780px) {
  body.contact .page-footer .column-contact {
    display: block;
  }
}

.style-contact {
  overflow-x: hidden;
}
.style-contact #ornament-1 {
  position: absolute;
  top: -82px;
  left: 48px;
  z-index: 1;
}
@media screen and (min-width: 960px) {
  .style-contact #ornament-1 {
    top: -53px;
    left: 365px;
  }
}
.style-contact #ornament-1 .ornament-image {
  -webkit-transform: translateX(0);
          transform: translateX(0);
}
@media screen and (min-width: 780px) {
  .style-contact #ornament-1 .ornament-image {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
}
@media screen and (min-width: 960px) {
  .style-contact #ornament-1 .ornament-image {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
}
.style-contact #ornament-1 .ornament-image img {
  width: 309px;
}
@media screen and (min-width: 960px) {
  .style-contact #ornament-1 .ornament-image img {
    width: 405px;
  }
}

.hero-contact {
  padding-top: 82px;
}
@media screen and (min-width: 960px) {
  .hero-contact {
    padding-top: 140px;
  }
}
.hero-contact > .content-std {
  position: relative;
}
.hero-contact .header {
  position: relative;
  max-width: 330px;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (min-width: 780px) {
  .hero-contact .header {
    max-width: 450px;
  }
}
@media screen and (min-width: 960px) {
  .hero-contact .header {
    display: block;
    max-width: 770px;
    margin-left: auto;
    margin-right: auto;
    z-index: 2;
  }
}
.hero-contact .header .caption {
  position: relative;
  margin-bottom: 4px;
  font-size: 0.8125rem;
  line-height: 1.54;
  letter-spacing: 0.1em;
  z-index: 2;
}
@media screen and (min-width: 960px) {
  .hero-contact .header .caption {
    margin-bottom: 8px;
    font-size: 1.125rem;
    line-height: 2;
    letter-spacing: 0.12em;
  }
}
.hero-contact .header .heading-large {
  position: relative;
  margin-top: 8px;
  font-size: 2.375rem;
  line-height: 1.23;
  letter-spacing: 0.0815789474em;
  z-index: 2;
}
@media screen and (min-width: 960px) {
  .hero-contact .header .heading-large {
    margin-top: 16px;
    font-size: 3.75rem;
    line-height: 1;
    letter-spacing: 0.1333333333em;
  }
}
.hero-contact .text-group {
  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-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  gap: 0;
  max-width: 330px;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (min-width: 780px) {
  .hero-contact .text-group {
    max-width: 450px;
  }
}
@media screen and (min-width: 960px) {
  .hero-contact .text-group {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    gap: 32px;
    max-width: 770px;
    margin-top: 0;
    margin-left: auto;
    margin-right: auto;
  }
}
.hero-contact .text-group .text-std {
  margin-top: 32px;
  font-size: 0.9375rem;
  line-height: 2;
  letter-spacing: 0.1em;
  text-align: justify;
}
@media screen and (min-width: 960px) {
  .hero-contact .text-group .text-std {
    margin-top: 36px;
    font-size: 1.125rem;
    letter-spacing: 0.12em;
  }
}

.contact-form {
  margin-top: 80px;
  padding-bottom: 240px;
}
@media screen and (min-width: 780px) {
  .contact-form {
    margin-top: 70px;
    padding-bottom: 240px;
  }
}
.contact-form form {
  max-width: 330px;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (min-width: 780px) {
  .contact-form form {
    max-width: 450px;
  }
}
@media screen and (min-width: 960px) {
  .contact-form form {
    max-width: 770px;
  }
}

.style-privacy-policy {
  overflow-x: hidden;
}
.style-privacy-policy .privacy-policy-section {
  margin-top: 80px;
  padding-bottom: 240px;
}
@media screen and (min-width: 780px) {
  .style-privacy-policy .privacy-policy-section {
    margin-top: 80px;
    padding-bottom: 240px;
  }
}
.style-privacy-policy .privacy-policy-section > .content-std {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 90px;
}
@media screen and (min-width: 960px) {
  .style-privacy-policy .privacy-policy-section > .content-std {
    gap: 84px;
  }
}
.style-privacy-policy .privacy-policy-section .section-std {
  max-width: 330px;
  width: 100%;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (min-width: 780px) {
  .style-privacy-policy .privacy-policy-section .section-std {
    max-width: 450px;
  }
}
@media screen and (min-width: 960px) {
  .style-privacy-policy .privacy-policy-section .section-std {
    max-width: 628px;
  }
}
.style-privacy-policy .privacy-policy-section .section-std .heading {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  padding-bottom: 6px;
  border-bottom: 1px solid #d9d9d9;
  font-size: 1.25rem;
  letter-spacing: 0.12em;
  line-height: 1.5;
}
@media screen and (min-width: 960px) {
  .style-privacy-policy .privacy-policy-section .section-std .heading {
    display: block;
    font-size: 1.25rem;
    letter-spacing: 0.12em;
    padding-bottom: 16px;
  }
}
.style-privacy-policy .privacy-policy-section .section-std .heading .prefix,
.style-privacy-policy .privacy-policy-section .section-std .heading .text {
  display: block;
}
@media screen and (min-width: 960px) {
  .style-privacy-policy .privacy-policy-section .section-std .heading .prefix,
  .style-privacy-policy .privacy-policy-section .section-std .heading .text {
    display: inline;
  }
}
.style-privacy-policy .privacy-policy-section .section-std .list-std {
  margin-top: 18px;
  padding-left: 1.2em;
}
@media screen and (min-width: 960px) {
  .style-privacy-policy .privacy-policy-section .section-std .list-std {
    margin-top: 22px;
  }
}
.style-privacy-policy .privacy-policy-section .section-std .list-std li {
  list-style: circle;
  font-size: 0.9375rem;
  letter-spacing: 0.1em;
  line-height: 1.6;
  text-align: justify;
}
@media screen and (min-width: 960px) {
  .style-privacy-policy .privacy-policy-section .section-std .list-std li {
    font-size: 0.9375rem;
    letter-spacing: 0.1em;
    line-height: 1.6;
  }
}
.style-privacy-policy .privacy-policy-section .section-std .list-std li + li {
  margin-top: 0.4em;
}
.style-privacy-policy .privacy-policy-section .section-std .text-std {
  margin-top: 18px;
}
@media screen and (min-width: 960px) {
  .style-privacy-policy .privacy-policy-section .section-std .text-std {
    margin-top: 22px;
    letter-spacing: 0.05em;
  }
}

.hero-privacy-policy {
  padding-top: 82px;
}
@media screen and (min-width: 960px) {
  .hero-privacy-policy {
    padding-top: 140px;
  }
}
.hero-privacy-policy > .content-std {
  position: relative;
}
.hero-privacy-policy .header {
  position: relative;
  max-width: 330px;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (min-width: 780px) {
  .hero-privacy-policy .header {
    max-width: 450px;
  }
}
@media screen and (min-width: 960px) {
  .hero-privacy-policy .header {
    display: block;
    max-width: 628px;
    margin-left: auto;
    margin-right: auto;
    z-index: 2;
  }
}
.hero-privacy-policy .header .caption {
  position: relative;
  margin-bottom: 4px;
  font-size: 0.8125rem;
  line-height: 1.54;
  letter-spacing: 0.1em;
  z-index: 2;
}
@media screen and (min-width: 960px) {
  .hero-privacy-policy .header .caption {
    margin-bottom: 8px;
    font-size: 1.125rem;
    line-height: 2;
    letter-spacing: 0.12em;
  }
}
.hero-privacy-policy .header .heading-large {
  position: relative;
  margin-top: 8px;
  font-size: 2.375rem;
  line-height: 1.23;
  letter-spacing: 0.0815789474em;
  z-index: 2;
}
@media screen and (min-width: 960px) {
  .hero-privacy-policy .header .heading-large {
    margin-top: 16px;
    font-size: 3.75rem;
    line-height: 1;
    letter-spacing: 0.1333333333em;
  }
}
.hero-privacy-policy .text-group {
  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-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  gap: 0;
  max-width: 330px;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (min-width: 780px) {
  .hero-privacy-policy .text-group {
    max-width: 450px;
  }
}
@media screen and (min-width: 960px) {
  .hero-privacy-policy .text-group {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    gap: 32px;
    max-width: 628px;
    margin-top: 0;
    margin-left: auto;
    margin-right: auto;
  }
}
.hero-privacy-policy .text-group .text-std {
  margin-top: 32px;
  font-size: 0.9375rem;
  line-height: 2;
  letter-spacing: 0.1em;
  text-align: justify;
}
@media screen and (min-width: 960px) {
  .hero-privacy-policy .text-group .text-std {
    margin-top: 36px;
    font-size: 1.125rem;
    letter-spacing: 0.12em;
  }
}/*# sourceMappingURL=style.css.map */