@charset "UTF-8";
/*
Theme Name: FFC_JAPAN_THEME
Theme URI: https://www.ffc-japan.co.jp/
Description: 株式会社エフエフシー・ジャパン コーポレートサイト.
Author: ECCOM Creation Co.,Ltd.
Author URI: 
Version: 1.0.0
.
株式会社エフエフシー・ジャパン コーポレートサイト
.
*/
/* 変数
------------------------------------*/
:root {
  --color-main: #4FA0C5;
  --color-sub: #dcf4ff;
  --color-font: #000;
  --TEXT-Black: #000;
  --contents-width: 1040px;
  --gothic: "Noto Sans JP", sans-serif;
  --mincho: "Noto Serif JP", serif;
  --jost: "Jost", sans-serif;
}

/* 外部CSS
------------------------------------*/
/*!
 * ress.css • v2.0.4
 * MIT License
 * github.com/filipelinhares/ress
 */
/* # =================================================================
   # Global selectors
   # ================================================================= */
html {
  box-sizing: border-box;
  -webkit-text-size-adjust: 100%; /* Prevent adjustments of font size after orientation changes in iOS */
  word-break: normal;
  -moz-tab-size: 4;
  -o-tab-size: 4;
     tab-size: 4;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

svg:not([fill]) {
  fill: currentColor;
}

/* # =================================================================
   # Accessibility
   # ================================================================= */
/* Hide content from screens but not screenreaders */
@media screen {
  [hidden~=screen] {
    display: inherit;
  }
  [hidden~=screen]:not(:active):not(:focus):not(:target) {
    position: absolute !important;
    clip: rect(0 0 0 0) !important;
  }
}
/* Specify the progress cursor of updating elements */
[aria-busy=true] {
  cursor: progress;
}

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

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

/* 共通パーツ
------------------------------------*/
::-moz-selection {
  background-color: var(--color-main);
  color: #fff;
}
::selection {
  background-color: var(--color-main);
  color: #fff;
}

html {
  height: 100%;
  width: 100%;
  scroll-padding-top: 120px;
}
@media screen and (max-width: 650px) {
  html {
    scroll-padding-top: 100px;
  }
}

body {
  background: #fff;
  color: var(--color-font);
  font-family: var(--gothic);
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  font-feature-settings: "palt" 1;
  -webkit-font-smoothing: antialiased;
  height: 100%;
  line-height: 180%;
  letter-spacing: 0;
  overflow-x: hidden;
  overflow-y: auto;
  overflow-wrap: break-word;
  padding: 0;
  position: relative;
  width: 100%;
}
body.is-noscroll {
  overflow-y: hidden;
  position: fixed;
}

img {
  border: 0;
  height: auto;
  max-width: 100%;
}

p {
  line-height: 180%;
  margin: 0;
  padding: 0;
}
p strong {
  font-weight: 600;
}

input {
  border-radius: 0;
}

ul,
ol {
  margin: 0;
  padding: 0;
}

a {
  color: inherit;
  text-decoration: none;
}

a:where(:not(.wp-element-button)) {
  text-decoration: underline;
}
a:where(:not(.wp-element-button)):hover {
  text-decoration: none;
}

button,
input[type=submit],
a {
  transition: opacity 0.15s ease, transform 0.15s ease, color 0.15s ease;
}

/* iOSでのデフォルトスタイルをリセット */
input[type=submit],
button,
input[type=button] {
  border-radius: 0;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  border: none;
  box-sizing: border-box;
}
input[type=submit]::-webkit-search-decoration,
button::-webkit-search-decoration,
input[type=button]::-webkit-search-decoration {
  display: none;
}
input[type=submit]:focus,
button:focus,
input[type=button]:focus {
  outline-offset: -2px;
}

.c-preload * {
  animation: none !important;
  transition: none !important;
}

.c-header-default {
  position: fixed;
  inset: 0 0 auto;
  transform: translateY(0);
  transition: transform 0.3s ease;
  width: 100%;
  z-index: 50;
}
.c-header-default.is-active {
  transform: translateY(-36px);
}
@media screen and (max-width: 1200px) {
  .c-header-default.is-active.is-home {
    pointer-events: auto;
  }
  .c-header-default.is-active.is-home .c-header-default__inner {
    transform: translateY(0);
  }
}
.c-header-default.is-no-fixed {
  position: relative;
}
.c-header-default .c-header-default__inner {
  align-items: center;
  background: #fff;
  display: flex;
  justify-content: flex-end;
  min-height: 64px;
  padding: 15px 40px 12px 40px;
  position: relative;
  transition: transform 0.3s ease;
  width: 100%;
}
@media screen and (max-width: 1200px) {
  .c-header-default .c-header-default__inner {
    padding: 8px 25px;
  }
}
.c-header-default .c-header-default__logo {
  display: block;
  margin: 6px 48px 0 0;
  min-width: 300px;
  width: 300px;
}
@media screen and (max-width: 1200px) {
  .c-header-default .c-header-default__logo {
    margin: 0;
    min-width: 0;
    width: 240px;
  }
}
@media screen and (max-width: 365px) {
  .c-header-default .c-header-default__logo {
    width: 230px;
  }
}
.c-header-default .c-header-default__logo a {
  display: block;
  line-height: 0;
}
@media screen and (max-width: 1200px) {
  .c-header-default .c-header-default__logo img {
    height: auto;
    width: inherit;
  }
}
.c-header-default .c-header-default__navigation {
  display: flex;
  flex-direction: column;
  gap: 8px;
  justify-content: center;
  margin: 0 0 0 auto;
  position: relative;
  z-index: 1;
}
.c-header-default .c-header-default__menu {
  align-items: flex-start;
  display: flex;
  flex-wrap: wrap;
  gap: 0 8px;
  justify-content: flex-end;
  list-style: none;
  margin: 0 -8px 0 auto;
  padding: 0;
}
@media screen and (max-width: 1200px) {
  .c-header-default .c-header-default__menu {
    display: none;
  }
}
.c-header-default .c-header-default__menu > li {
  position: relative;
}
.c-header-default .c-header-default__menu > li.is-current > a {
  color: #279AF2;
}
.c-header-default .c-header-default__menu > li:has(ul):hover > a::after {
  rotate: 90deg;
}
.c-header-default .c-header-default__menu > li:has(ul):hover > ul {
  opacity: 1;
  pointer-events: auto;
}
.c-header-default .c-header-default__menu > li:has(ul) > a::after {
  background: url('data:image/svg+xml, <svg xmlns="http://www.w3.org/2000/svg" width="13" height="13" viewBox="0 0 13 13" fill="none"><path d="M4.875 3.25L8.125 6.5L4.875 9.75" stroke="%234FA0C5" stroke-width="1.08333" stroke-linecap="round" stroke-linejoin="round"/></svg>') no-repeat center center/contain;
  content: "";
  display: block;
  margin: 0 0 0 8px;
  height: 13px;
  transition: rotate 0.3s ease;
  width: 13px;
}
.c-header-default .c-header-default__menu > li > a {
  align-items: center;
  color: #666666;
  display: flex;
  font-size: 16px;
  font-style: normal;
  font-weight: 500;
  letter-spacing: 0;
  justify-content: flex-start;
  line-height: 150%;
  padding: 8px;
  position: relative;
  text-decoration: none;
  text-transform: uppercase;
  white-space: nowrap;
}
.c-header-default .c-header-default__menu > li > a:hover {
  color: #279AF2;
}
.c-header-default .c-header-default__menu > li ul {
  background: rgba(255, 255, 255, 0.85);
  border-left: solid 1px #4FA0C5;
  display: block;
  list-style: none;
  margin: 0 0 0 8px;
  opacity: 0;
  pointer-events: none;
  position: absolute;
  inset: 40px 0 auto 0;
  transition: opacity 0.3s ease;
  width: -moz-max-content;
  width: max-content;
}
.c-header-default .c-header-default__menu > li ul > li {
  line-height: 100%;
}
.c-header-default .c-header-default__menu > li ul > li > a {
  color: #666666;
  display: block;
  font-size: 12px;
  font-weight: 500;
  padding: 4px 8px;
  text-decoration: none;
}
.c-header-default .c-header-default__menu > li ul > li > a:hover {
  color: #279AF2;
}
.c-header-default .c-header-default__button {
  align-items: center;
  display: flex;
  gap: 15px;
  justify-content: center;
  margin: 0 0 0 auto;
  position: relative;
  z-index: 1;
}
@media screen and (max-width: 1200px) {
  .c-header-default .c-header-default__button {
    display: none;
  }
}

.c-header-corporate {
  align-items: center;
  background: #FAF7F2;
  display: flex;
  height: 40px;
  justify-content: center;
  position: relative;
  z-index: 100;
}
@media screen and (max-width: 650px) {
  .c-header-corporate {
    height: 64px;
  }
}
.c-header-corporate .c-header-corporate__logo {
  align-items: center;
  color: #000;
  display: flex;
  font-family: "Noto Sans JP";
  font-size: 10px;
  font-style: normal;
  font-weight: 400;
  gap: 12px;
  justify-content: center;
  line-height: 0;
  margin: 0 auto;
  text-decoration: none;
  width: -moz-fit-content;
  width: fit-content;
}
@media screen and (max-width: 650px) {
  .c-header-corporate .c-header-corporate__logo {
    flex-direction: column;
  }
}
.c-header-corporate .c-header-corporate__logo:hover {
  opacity: 0.7;
}

.c-header-image {
  display: block;
  margin: 0 -25px !important;
  max-width: none !important;
  position: relative;
  width: calc(100% + 50px) !important;
}
@media screen and (max-width: 650px) {
  .c-header-image {
    height: 316px;
  }
}
.c-header-image::after {
  background: url("images/bg-header@2x.png") no-repeat center bottom/contain;
  content: "";
  display: block;
  height: 100%;
  margin: auto;
  position: absolute;
  inset: 0;
  width: 100%;
}
.c-header-image img {
  display: block;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  width: 100%;
}

.c-header-image2 {
  display: block;
  height: 480px;
  margin: 0 -25px !important;
  max-width: none !important;
  position: relative;
  width: calc(100% + 50px) !important;
}
@media screen and (max-width: 650px) {
  .c-header-image2 {
    height: 316px;
  }
}
.c-header-image2 .c-header-image2__background {
  display: block;
  height: 100%;
  width: 100%;
}
.c-header-image2 .c-header-image2__background::after {
  background: url("images/bg-header@2x.png") no-repeat center bottom/contain;
  content: "";
  display: block;
  height: 100%;
  margin: auto;
  position: absolute;
  inset: 0 0 -2px 0;
  width: 100%;
}
@media screen and (max-width: 650px) {
  .c-header-image2 .c-header-image2__background::after {
    background-size: 100% 80px;
  }
}
.c-header-image2 .c-header-image2__background img {
  display: block;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center bottom;
     object-position: center bottom;
  width: 100%;
}
.c-header-image2 .c-header-image2__image {
  display: block;
  height: 410px;
  margin: 0 auto;
  max-height: 30vw;
  position: absolute;
  inset: 50px 0 0;
  max-width: 960px;
  padding: 0 25px;
  width: 100%;
  z-index: 2;
}
@media screen and (max-width: 1200px) {
  .c-header-image2 .c-header-image2__image {
    inset: auto 0 0;
  }
}
@media screen and (max-width: 650px) {
  .c-header-image2 .c-header-image2__image {
    height: 202px;
    max-height: 60vw;
  }
}
.c-header-image2 .c-header-image2__image img {
  display: block;
  height: 100%;
  margin: 0 0 0 auto;
  -o-object-fit: contain;
     object-fit: contain;
  -o-object-position: bottom right;
     object-position: bottom right;
  width: 100%;
}
.c-header-image2 .c-header-image2__tags {
  display: grid;
  gap: 8px;
  justify-content: start;
  margin: auto;
  max-width: 1010px;
  padding: 0 25px;
  position: absolute;
  inset: auto 0 145px 0;
  width: 100%;
  z-index: 3;
}
@media screen and (max-width: 1200px) {
  .c-header-image2 .c-header-image2__tags {
    z-index: 1;
  }
}
.c-header-image2 .c-header-image2__tags ul {
  align-items: center;
  background: rgba(237, 151, 151, 0.8);
  border-radius: 2px;
  color: #fff;
  display: flex;
  flex-wrap: wrap;
  font-size: 18px;
  font-style: normal;
  font-weight: 600;
  gap: 12px;
  justify-content: flex-start;
  letter-spacing: 1.8px;
  line-height: 180%; /* 32.4px */
  list-style: none;
  padding: 8px 24px;
  width: -moz-fit-content;
  width: fit-content;
}
@media screen and (max-width: 650px) {
  .c-header-image2 .c-header-image2__tags ul {
    font-size: 14px;
    padding: 8px 12px;
  }
}

.c-header-subpage {
  align-items: center;
  background: linear-gradient(90deg, #DCF4FF 0%, #279AF2 100%);
  display: flex;
  height: 300px;
  justify-content: center;
  margin: 0 -25px !important;
  max-width: none !important;
  overflow: hidden;
  position: relative;
  width: calc(100% + 50px) !important;
}
@media screen and (max-width: 650px) {
  .c-header-subpage {
    height: 200px;
  }
}
.c-header-subpage figure {
  display: block;
  height: 100%;
  inset: 0;
  margin: 0;
  opacity: 0.7;
  position: absolute !important;
  width: 100%;
}
.c-header-subpage figure img {
  display: block;
  height: 100% !important;
  -o-object-fit: cover;
     object-fit: cover;
  width: 100%;
}
.c-header-subpage .c-header-subpage__title {
  color: #fff;
  font-size: 32px;
  font-weight: 700;
  line-height: normal;
  margin: 0;
  position: relative;
  text-align: center;
  z-index: 1;
}

.c-header-products {
  align-items: flex-start;
  display: flex;
  gap: 40px;
  justify-content: space-between;
}
@media screen and (max-width: 650px) {
  .c-header-products {
    align-items: center;
    flex-direction: column;
  }
}
.c-header-products .c-header-product__content {
  max-width: 495px;
  width: 100%;
}
.c-header-products .c-header-product__title {
  border-bottom: 1px solid #ED9797;
  color: var(--pink, #ED9797);
  font-size: 32px;
  font-style: normal;
  font-weight: 600;
  line-height: 160%; /* 51.2px */
  letter-spacing: 1.6px;
  position: relative;
  width: -moz-fit-content;
  width: fit-content;
}
@media screen and (max-width: 650px) {
  .c-header-products .c-header-product__title {
    font-size: 28px;
    letter-spacing: 1.4px;
    line-height: 170%;
  }
}
.c-header-products .c-header-product__title::after {
  border-bottom: 1px solid #ED9797;
  content: "";
  display: block;
  height: 1px;
  position: absolute;
  bottom: -1px;
  left: -50vw;
  width: 50vw;
}
.c-header-products .c-header-product__title em {
  font-style: normal;
  display: inline-block;
}
.c-header-products .c-header-product__subtitle {
  color: var(--deepbrown, #625F55);
  font-size: 24px;
  font-style: normal;
  font-weight: 500;
  line-height: 160%; /* 38.4px */
  letter-spacing: 1.2px;
}
@media screen and (max-width: 650px) {
  .c-header-products .c-header-product__subtitle {
    font-size: 20px;
    letter-spacing: 1px;
    line-height: 160%;
  }
}
.c-header-products .c-header-product__text {
  color: var(--text-black, #1E1E1E);
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 180%; /* 28.8px */
  letter-spacing: 0.8px;
}
.c-header-products .c-header-product__image {
  max-width: 360px;
  width: 100%;
}
.c-header-products .c-header-product__image img {
  display: block;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
  width: 100%;
}

.c-footer-default {
  background-color: #D9D9D9;
  position: relative;
  z-index: 1;
}
.c-footer-default .c-footer-default__inner {
  display: grid;
  gap: 40px;
  grid-template-areas: "logo navigation" "contact navigation";
  margin: 0 auto;
  max-width: 1250px;
  padding: 32px 25px;
}
@media screen and (max-width: 1200px) {
  .c-footer-default .c-footer-default__inner {
    grid-template-areas: "logo" "navigation" "contact";
  }
}
.c-footer-default .c-footer-default__logo {
  display: block;
  grid-area: logo;
  margin: 0;
  width: 300px;
}
@media screen and (max-width: 1200px) {
  .c-footer-default .c-footer-default__logo {
    margin: 0 auto;
    width: 270px;
  }
}
.c-footer-default .c-footer-default__logo a {
  display: block;
}
.c-footer-default .c-footer-default__logo img {
  display: block;
}
.c-footer-default .c-footer-default__navigation {
  grid-area: navigation;
  padding: 24px 40px;
}
@media screen and (max-width: 1200px) {
  .c-footer-default .c-footer-default__navigation {
    padding: 4px 16px;
  }
}
.c-footer-default .c-footer-default__menu {
  align-items: flex-start;
  display: flex;
  flex-wrap: wrap;
  gap: 8px 14px;
  justify-content: flex-end;
  list-style: none;
  margin: -8px -8px 0 auto;
  padding: 0;
}
@media screen and (max-width: 1200px) {
  .c-footer-default .c-footer-default__menu {
    justify-content: center;
  }
}
@media screen and (max-width: 650px) {
  .c-footer-default .c-footer-default__menu {
    align-items: center;
    flex-direction: column;
  }
}
@media screen and (max-width: 650px) {
  .c-footer-default .c-footer-default__menu > li {
    align-items: center;
    display: flex;
  }
}
.c-footer-default .c-footer-default__menu > li > a {
  color: #666;
  display: block;
  font-size: 14px;
  font-style: normal;
  font-weight: 500;
  line-height: 150%;
  padding: 4px 8px;
  position: relative;
  text-decoration: none;
}
.c-footer-default .c-footer-default__menu > li > a:hover {
  color: var(--color-main);
}
.c-footer-default .c-footer-default__menu > li ul {
  list-style: none;
  padding: 0;
  margin: 0 4px;
}
@media screen and (max-width: 650px) {
  .c-footer-default .c-footer-default__menu > li ul {
    display: flex;
  }
}
.c-footer-default .c-footer-default__menu > li ul > li {
  line-height: 1;
}
.c-footer-default .c-footer-default__menu > li ul > li > a {
  color: #666;
  font-size: 10px;
  font-style: normal;
  font-weight: 500;
  line-height: 150%; /* 15px */
  padding: 2px 4px;
  text-decoration: none;
}
.c-footer-default .c-footer-default__menu > li ul > li > a:hover {
  color: var(--color-main);
}
.c-footer-default .c-footer-default__button {
  align-items: center;
  display: flex;
  gap: 20px;
  justify-content: flex-end;
  margin: 24px 0 0;
}
@media screen and (max-width: 1200px) {
  .c-footer-default .c-footer-default__button {
    justify-content: center;
    margin: 32px 0 0;
  }
}

.c-footer-scrolltop {
  position: absolute;
  inset: 56px 32px auto auto;
  width: 15px;
  z-index: 2;
}
@media screen and (max-width: 1200px) {
  .c-footer-scrolltop {
    inset: 40px 25px auto auto;
  }
}
.c-footer-scrolltop a {
  color: #000;
  display: block;
  font-size: 14px;
  font-style: normal;
  font-weight: 700;
  letter-spacing: 0;
  line-height: 1;
  padding: 8px 4px;
  text-decoration: none;
  white-space: nowrap;
  width: 23px;
  writing-mode: vertical-rl;
}
.c-footer-scrolltop a:hover {
  opacity: 0.7;
}
.c-footer-scrolltop a::before {
  background: url("images/arrow-scrolltop.svg") no-repeat center/contain;
  content: "";
  display: inline-block;
  height: 15px;
  margin-inline-end: 6px;
  width: 14px;
}

.c-footer-contact {
  align-self: end;
  align-content: start;
  display: grid;
  gap: 8px;
  grid-area: contact;
  width: -moz-fit-content;
  width: fit-content;
}
.c-footer-contact .c-footer-contact__title {
  color: #666;
  font-size: 14px;
  font-style: normal;
  font-weight: 500;
  line-height: 150%; /* 21px */
}
.c-footer-contact .c-footer-contact__tel {
  align-items: center;
  background-color: #000;
  color: #fff;
  display: flex;
  font-size: 16px;
  font-style: normal;
  font-weight: 500;
  gap: 8px;
  line-height: 150%; /* 24px */
  letter-spacing: 0.64px;
  padding: 6px 10px;
}
.c-footer-contact .c-footer-contact__tel em {
  color: #fff;
  font-size: 10px;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
}

.c-footer-banners {
  align-items: center;
  background: var(--Linear, linear-gradient(180deg, #8DE8FD 0%, #5DB9FF 100%));
  display: flex;
  flex-wrap: wrap;
  gap: 16px 40px;
  justify-content: center;
  padding: 48px 25px;
  width: 100%;
}
@media screen and (max-width: 1200px) {
  .c-footer-banners {
    padding: 32px 25px;
  }
}
@media screen and (max-width: 650px) {
  .c-footer-banners {
    flex-direction: column;
    justify-self: center;
  }
}
.c-footer-banners figure {
  display: block;
  margin: 0;
  height: 80px;
  width: 250px;
}
.c-footer-banners a {
  border-radius: 5px;
  display: block;
  position: relative;
  width: 250px;
}
.c-footer-banners a:hover {
  opacity: 0.7;
}
.c-footer-banners a img {
  display: block;
}

.c-drawer-default {
  background: rgba(220, 244, 255, 0.8);
  opacity: 0;
  pointer-events: none;
  position: absolute;
  transition: opacity 0.4s ease;
  width: 100%;
  z-index: 10;
}
.c-drawer-default.is-active {
  opacity: 1;
  pointer-events: auto;
}
.c-drawer-default .c-drawer-default__inner {
  display: flex;
  flex-direction: column;
  container-type: inline-size;
  margin: 0 auto;
  max-width: 450px;
  padding: 40px 25px 80px;
}
.c-drawer-default .c-drawer-default__menu {
  display: grid;
  list-style: none;
  width: 100%;
}
.c-drawer-default .c-drawer-default__menu > li > ul {
  list-style: none;
  padding: 0 0 12px;
}
.c-drawer-default .c-drawer-default__menu > li > ul > li a {
  gap: 11px;
}
.c-drawer-default .c-drawer-default__menu > li > ul > li a::before {
  background: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="9" height="1" viewBox="0 0 9 1" fill="none"><path d="M0.5 0.5H8.5" stroke="%23625F55" stroke-linecap="round"/></svg>') no-repeat center center/contain;
  content: "";
  display: inline-block;
  height: 8px;
  width: 8px;
}
.c-drawer-default .c-drawer-default__menu > li a {
  align-items: center;
  border-bottom: solid 0.5px #625F55;
  color: var(--deepbrown, #625F55);
  display: flex;
  font-size: 15px;
  font-style: normal;
  font-weight: 500;
  line-height: 120%; /* 18px */
  padding: 12px 0;
  text-decoration: none;
}
.c-drawer-default .c-drawer-default__menu > li a[href="#"] {
  border-bottom: none;
  padding: 24px 0 8px;
  pointer-events: none;
}
.c-drawer-default .c-drawer-default__menu > li a[target=_blank]::after {
  background: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="15" height="15" viewBox="0 0 15 15" fill="none"><rect x="3.5" y="1.5" width="11" height="10" rx="0.5" stroke="%23625F55" /><path d="M1 3V13C1 13.5523 1.44772 14 2 14H13" stroke="%23625F55" stroke-linecap="round" /></svg>') no-repeat center center/contain;
  content: "";
  display: inline-block;
  height: 15px;
  margin-left: 4px;
  width: 15px;
}
.c-drawer-default .c-drawer-default__button {
  align-items: center;
  display: flex;
  gap: 15px;
  justify-content: flex-end;
  margin: 40px 0 0;
}

.c-headline-page {
  color: #666;
  font-family: "Noto Sans JP";
  font-size: 32px;
  font-style: normal;
  font-weight: 700;
  line-height: normal;
  text-align: center;
}
.c-headline-page.is-medium {
  font-size: 24px;
}
.c-headline-page.is-white {
  color: #fff;
}

.c-headline-gradient {
  background: linear-gradient(180deg, #8DE8FD 0%, #5DB9FF 100%);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
  font-family: var(--jost, "Jost", sans-serif);
  font-size: 48px;
  font-style: normal;
  font-weight: 500;
  line-height: 150%;
  margin: 0;
  text-align: center;
  text-transform: uppercase;
  -webkit-text-fill-color: transparent;
}
@media screen and (max-width: 650px) {
  .c-headline-gradient {
    font-size: 36px;
  }
}

.c-headline-line {
  border-bottom: 1px solid var(--color-main, #4FA0C5);
  box-sizing: border-box;
  color: var(--color-main, #4FA0C5);
  font-size: 20px;
  font-style: normal;
  font-weight: 700;
  line-height: normal;
  margin: 0;
  padding: 10px 0;
  width: 100%;
}

.c-headline-band {
  border-bottom: 1px solid var(--color-main, #4FA0C5);
  border-top: 1px solid var(--color-main, #4FA0C5);
  box-sizing: border-box;
  color: var(--color-main, #4FA0C5);
  font-size: 24px;
  font-style: normal;
  font-weight: 700;
  line-height: normal;
  margin: 0;
  padding: 10px 0;
  text-align: center;
  width: 100%;
}
.c-headline-band.is-black {
  border-bottom-color: #666;
  border-top-color: #666;
  color: #666;
}
.c-headline-band.is-soil {
  border-bottom-color: #a57e6b;
  border-top-color: #a57e6b;
  color: #a57e6b;
}

.c-headline-simple {
  color: #279af2;
  font-size: 24px;
  font-style: normal;
  font-weight: 700;
}
.c-headline-simple.is-black {
  color: #666;
}
.c-headline-simple.is-lightblue {
  color: #4FA0C5;
}
.c-headline-simple.is-green {
  color: #239f89;
}
.c-headline-simple.is-medium {
  font-size: 36px;
}
.c-headline-simple em {
  display: inline-block;
  font-style: normal;
}
.c-headline-simple strong {
  color: var(--deepbrown, #625F55);
  font-size: 24px;
  font-style: normal;
  font-weight: 500;
  line-height: 120%; /* 28.8px */
  letter-spacing: 1.2px;
  margin: 0 0 0 20px;
}
@media screen and (max-width: 650px) {
  .c-headline-simple strong {
    display: block;
    margin: 8px 0 0;
  }
}

.c-headline-underline {
  border-bottom: 1px dashed var(--pink, #ED9797);
  color: var(--color-main, #ED9797);
  font-size: 20px;
  font-style: normal;
  font-weight: 600;
  line-height: 120%;
  letter-spacing: 2px;
  padding: 0 0 4px;
  width: -moz-fit-content;
  width: fit-content;
}
@media screen and (max-width: 1200px) {
  .c-headline-underline {
    font-size: 28px;
  }
}
.c-headline-underline.is-large {
  font-size: 24px;
  font-weight: 600;
  gap: 16px;
  letter-spacing: 2.4px;
}
@media screen and (max-width: 1200px) {
  .c-headline-underline.is-large {
    font-size: 20px;
    letter-spacing: 2px;
  }
}
.c-headline-underline.is-small {
  font-size: 18px;
  font-weight: 500;
  letter-spacing: 0.9px;
  line-height: 140%;
}
.c-headline-underline.is-black {
  border-bottom-color: var(--deepbrown, #625F55);
  color: var(--deepbrown, #625F55);
}
.c-headline-underline.is-navy {
  border-bottom-color: #121233;
  color: #121233;
}
.c-headline-underline em {
  display: inline-block;
  font-style: normal;
}

.c-headline-section {
  align-items: center;
  display: flex;
  flex-direction: column;
  gap: 10px;
  margin: 0;
  text-align: center;
  width: -moz-fit-content;
  width: fit-content;
}
.c-headline-section.is-left {
  align-items: flex-start;
  text-align: left;
}
.c-headline-section .c-headline-section__en {
  color: var(--color-main, #4FA0C5);
  font-family: var(--jost, "Jost", sans-serif);
  font-size: 36px;
  font-weight: 500;
  letter-spacing: 0;
  line-height: 1.5;
  text-transform: uppercase;
}
.c-headline-section .c-headline-section__en:after {
  background: var(--color-main, #4FA0C5);
  content: "";
  display: block;
  height: 3px;
  margin: 8px auto 0;
  width: 100px;
}
.c-headline-section .c-headline-section__ja {
  color: var(--color-main, #4FA0C5);
  font-size: 20px;
  font-weight: 700;
  line-height: normal;
}

.c-wrap {
  margin: 0;
  padding: 0 25px 0;
  position: relative;
  z-index: 0;
}
.c-wrap.is-no-navigation {
  padding-top: 0;
}
@media screen and (max-width: 1200px) {
  .c-wrap.is-home {
    padding-top: 36px;
  }
}
.c-wrap.is-gradient {
  background: linear-gradient(180deg, #F9F5F5 0%, #FFF 25%, #FFF 75%, #F9F5F5 100%);
}

.c-contents {
  container-type: inline-size;
  margin: 0 auto;
  z-index: 1;
}
.c-contents > * {
  max-width: var(--contents-width);
  margin: 0 auto;
}

.wp-block-list {
  padding: 0 0 0 1.5em;
}

hr.c-hr-default {
  border: none;
  border-top: solid 1px var(--color-main);
  margin: 0 -20px;
  max-width: none;
  width: calc(100% + 40px);
}

hr.c-hr-dashed {
  border: none;
  border-top: dashed 1px var(--color-main);
}

.c-hr-photos {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  margin: 0 -25px !important;
  max-width: none !important;
  width: calc(100% + 50px);
}
@media screen and (max-width: 650px) {
  .c-hr-photos {
    grid-template-columns: repeat(2, 1fr);
  }
}
.c-hr-photos figure {
  margin: 0;
  width: 100%;
}
.c-hr-photos figure img {
  display: block;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  width: 100%;
}

.c-background-gray {
  background: #f3f3f3;
  box-sizing: border-box;
  margin: 0 -25px !important;
  max-width: none !important;
  padding: 64px 25px;
  width: calc(100% + 50px) !important;
}
@media screen and (max-width: 650px) {
  .c-background-gray {
    padding: 40px 25px;
  }
}
.c-background-gray > * {
  margin: 0 auto;
  max-width: var(--contents-width);
}

.c-button-primary.is-back a {
  flex-direction: row-reverse;
}
.c-button-primary.is-back a::after {
  transform: rotate(180deg);
}
.c-button-primary.is-water a {
  background: #279af2;
}
.c-button-primary.is-water a:hover {
  border-color: #279af2;
  color: #279af2;
}
.c-button-primary.is-water a:hover::after {
  background: url('data:image/svg+xml;utf8, <svg xmlns="http://www.w3.org/2000/svg" width="13" height="13" viewBox="0 0 13 13" fill="none"><path d="M4.875 3.25L8.125 6.5L4.875 9.75" stroke="%23279af2" stroke-width="1.08333" stroke-linecap="round" stroke-linejoin="round"/></svg>') no-repeat center center/contain;
}
.c-button-primary.is-soil a {
  background: #a57e6b;
}
.c-button-primary.is-soil a:hover {
  border-color: #a57e6b;
  color: #a57e6b;
}
.c-button-primary.is-soil a:hover::after {
  background: url('data:image/svg+xml;utf8, <svg xmlns="http://www.w3.org/2000/svg" width="13" height="13" viewBox="0 0 13 13" fill="none"><path d="M4.875 3.25L8.125 6.5L4.875 9.75" stroke="%23a57e6b" stroke-width="1.08333" stroke-linecap="round" stroke-linejoin="round"/></svg>') no-repeat center center/contain;
}
.c-button-primary a {
  align-items: center;
  background: var(--color-main, #4FA0C5);
  border: 1px solid #fff;
  border-radius: 20px;
  box-sizing: border-box;
  color: #fff;
  display: inline-flex;
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  gap: 10px;
  justify-content: center;
  letter-spacing: 0;
  line-height: normal;
  padding: 8px 22px;
  position: relative;
  text-align: center;
  text-decoration: none;
  width: -moz-fit-content;
  width: fit-content;
}
.c-button-primary a em {
  display: inline-block;
  font-style: normal;
}
.c-button-primary a:hover {
  background: #fff;
  border-color: var(--color-main, #4FA0C5);
  color: var(--color-main, #4FA0C5);
}
.c-button-primary a:hover::after {
  background-image: url("images/icon-chevron-right-hover.svg");
}
.c-button-primary a::after {
  background: url("images/icon-chevron-right.svg") no-repeat center center/contain;
  content: "";
  display: block;
  flex-shrink: 0;
  height: 13px;
  width: 13px;
}
.c-button-primary a[target=_blank]::after {
  background: currentColor;
  height: 16px;
  mask: url("images/icon-external-link.svg") no-repeat center/contain;
  -webkit-mask: url("images/icon-external-link.svg") no-repeat center/contain;
  width: 16px;
}
.c-button-primary a[target=_blank]:hover::after {
  background: currentColor;
  background-image: none;
}

.c-button-secondary.is-full a {
  width: 100%;
}
.c-button-secondary a {
  align-items: center;
  background: linear-gradient(90deg, #29D8FF 0%, #0090FF 100%);
  border: none;
  border-radius: 5px;
  box-sizing: border-box;
  color: #fff;
  display: inline-flex;
  font-size: 12px;
  font-style: normal;
  font-weight: 500;
  gap: 9px;
  height: 28px;
  justify-content: center;
  letter-spacing: 0;
  line-height: 1.5;
  padding: 1px 13px 1px 16px;
  position: relative;
  text-align: center;
  text-decoration: none;
  white-space: nowrap;
  width: -moz-fit-content;
  width: fit-content;
}
.c-button-secondary a em {
  display: inline-block;
  font-style: normal;
}
.c-button-secondary a:hover {
  background: #fff;
  border: solid 1px #0090FF;
  color: #0090FF;
  padding: 0 12px 0 15px;
}
.c-button-secondary a:hover::after {
  background-image: url("images/icon-external-link-hover.svg");
}
.c-button-secondary a::after {
  background: url("images/icon-external-link.svg") no-repeat center center/contain;
  content: "";
  display: block;
  flex-shrink: 0;
  height: 16px;
  width: 16px;
}

.c-button-tertiary.is-full a {
  width: 100%;
}
.c-button-tertiary.is-center a {
  text-align: center;
}
.c-button-tertiary.is-left a {
  padding: 2px 26px 10px 0;
  text-align: left;
}
.c-button-tertiary.is-right a {
  padding: 2px 16px 10px 0;
  text-align: right;
}
.c-button-tertiary.is-right a::after {
  inset: 0 2px 7px auto;
}
.c-button-tertiary.is-lightblue a {
  color: #4FA0C5;
}
.c-button-tertiary.is-lightblue a::after {
  background: url('data:image/svg+xml;utf8, <svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 18 18" fill="none"><path d="M6.75 4.5L11.25 9L6.75 13.5" stroke="%234FA0C5" stroke-width="1.08333" stroke-linecap="round" stroke-linejoin="round"/></svg>') no-repeat center center/contain;
}
.c-button-tertiary.is-small a {
  font-size: 12px;
}
.c-button-tertiary a {
  display: inline-block;
  color: #279af2;
  font-size: 14px;
  font-style: normal;
  font-weight: 500;
  padding: 0 50px 0 0;
  position: relative;
  text-align: center;
  text-decoration: none;
}
.c-button-tertiary a::after {
  background: url('data:image/svg+xml;utf8, <svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 18 18" fill="none"><path d="M6.75 4.5L11.25 9L6.75 13.5" stroke="%23279af2" stroke-width="1.08333" stroke-linecap="round" stroke-linejoin="round"/></svg>') no-repeat center center/contain;
  content: "";
  display: block;
  height: 18px;
  margin: auto;
  position: absolute;
  inset: 0 0 0 auto;
  width: 18px;
}
.c-button-tertiary a:hover {
  opacity: 0.65;
}

.c-button-square.is-navy a {
  background: var(--blue-back, #E2E9EE);
  border-color: var(--blue-back, #E2E9EE);
  color: var(--navy, #121233);
}
.c-button-square.is-navy a[target=_blank]::after {
  background: url('data:image/svg+xml;utf8, <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 16 16" fill="none"><path d="M12.4048 7.35667V12.6427C12.4062 12.844 12.3675 13.0436 12.2908 13.2297C12.2141 13.4159 12.1011 13.5849 11.9583 13.7268C11.8155 13.8687 11.6458 13.9808 11.4592 14.0563C11.2726 14.1318 11.0728 14.1693 10.8715 14.1667H3.36679C3.16474 14.1693 2.96421 14.1314 2.77704 14.0552C2.58987 13.9791 2.41985 13.8662 2.277 13.7233C2.13415 13.5804 2.02136 13.4103 1.9453 13.2231C1.86923 13.0359 1.83143 12.8354 1.83412 12.6333V5.12867C1.8317 4.92664 1.86972 4.72617 1.94592 4.53904C2.02212 4.35192 2.13497 4.18193 2.27784 4.03906C2.42071 3.89619 2.5907 3.78334 2.77783 3.70714C2.96495 3.63093 3.16542 3.59292 3.36745 3.59534H8.65279M14.1668 1.83334L7.11945 8.88067M14.1668 5.35734V1.83334H10.6428" stroke="%23121233" stroke-linecap="round" stroke-linejoin="round"/></svg>') no-repeat center center/contain;
}
.c-button-square.is-navy a[href$=".pdf"]::after {
  background: url('data:image/svg+xml;utf8, <svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M7.702 11.195C7.61133 11.1597 7.52233 11.0983 7.435 11.011L4.815 8.39201C4.71767 8.29467 4.667 8.18001 4.663 8.04801C4.659 7.91601 4.70967 7.79501 4.815 7.68501C4.92567 7.57434 5.04467 7.51801 5.172 7.51601C5.3 7.51401 5.419 7.56834 5.529 7.67901L7.5 9.65001V1.50001C7.5 1.35801 7.54767 1.23901 7.643 1.14301C7.73833 1.04701 7.85733 0.99934 8 1.00001C8.14267 1.00067 8.26167 1.04834 8.357 1.14301C8.45233 1.23767 8.5 1.35667 8.5 1.50001V9.65001L10.471 7.67901C10.5683 7.58167 10.684 7.53067 10.818 7.52601C10.952 7.52134 11.074 7.57434 11.184 7.68501C11.2907 7.79501 11.345 7.91301 11.347 8.03901C11.349 8.16501 11.295 8.28267 11.185 8.39201L8.565 11.012C8.47833 11.0987 8.38933 11.1597 8.298 11.195C8.20733 11.2303 8.108 11.248 8 11.248C7.892 11.248 7.79267 11.2303 7.702 11.195ZM2.616 15C2.15533 15 1.771 14.846 1.463 14.538C1.155 14.23 1.00067 13.8453 1 13.384V11.461C1 11.319 1.04767 11.2003 1.143 11.105C1.23833 11.0097 1.35733 10.9617 1.5 10.961C1.64267 10.9603 1.76167 11.0083 1.857 11.105C1.95233 11.2017 2 11.3203 2 11.461V13.384C2 13.538 2.064 13.6793 2.192 13.808C2.32 13.9367 2.461 14.0007 2.615 14H13.385C13.5383 14 13.6793 13.936 13.808 13.808C13.9367 13.68 14.0007 13.5387 14 13.384V11.461C14 11.319 14.0477 11.2003 14.143 11.105C14.2383 11.0097 14.3573 10.9617 14.5 10.961C14.6427 10.9603 14.7617 11.0083 14.857 11.105C14.9523 11.2017 15 11.3203 15 11.461V13.384C15 13.8447 14.846 14.229 14.538 14.537C14.23 14.845 13.8453 14.9993 13.384 15H2.616Z" fill="%23121233"/></svg>') no-repeat center center/contain;
}
.c-button-square a {
  align-items: center;
  background: var(--white, #FFF);
  border: 1px solid var(--pink, #ED9797);
  border-radius: 2px;
  color: var(--pink, #ED9797);
  display: inline-flex;
  flex-wrap: wrap;
  font-size: 16px;
  font-style: normal;
  font-weight: 500;
  letter-spacing: 0.8px;
  line-height: 140%;
  min-height: 66px;
  min-width: 380px;
  padding: 10px 44px 10px 20px;
  position: relative;
  text-decoration: none !important;
  width: -moz-fit-content;
  width: fit-content;
}
@media screen and (max-width: 650px) {
  .c-button-square a {
    min-width: 0;
    width: 100%;
  }
}
.c-button-square a em {
  display: inline-block;
  font-style: normal;
}
.c-button-square a:hover {
  opacity: 0.7;
}
.c-button-square a::after {
  background: url('data:image/svg+xml;utf8, <svg xmlns="http://www.w3.org/2000/svg" width="6" height="10" viewBox="0 0 6 10" fill="none"><path d="M0.541016 0.541748L4.54102 4.54175L0.541016 8.54175" stroke="%23ED9797" stroke-width="1.08333" stroke-linecap="round" stroke-linejoin="round"/></svg>') no-repeat center center/contain;
  content: "";
  display: block;
  height: 10px;
  margin: auto;
  min-width: 5px;
  position: absolute;
  inset: 0 20px 0 auto;
}
.c-button-square a[target=_blank]::after {
  background: url('data:image/svg+xml;utf8, <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 16 16" fill="none"><path d="M12.4048 7.35667V12.6427C12.4062 12.844 12.3675 13.0436 12.2908 13.2297C12.2141 13.4159 12.1011 13.5849 11.9583 13.7268C11.8155 13.8687 11.6458 13.9808 11.4592 14.0563C11.2726 14.1318 11.0728 14.1693 10.8715 14.1667H3.36679C3.16474 14.1693 2.96421 14.1314 2.77704 14.0552C2.58987 13.9791 2.41985 13.8662 2.277 13.7233C2.13415 13.5804 2.02136 13.4103 1.9453 13.2231C1.86923 13.0359 1.83143 12.8354 1.83412 12.6333V5.12867C1.8317 4.92664 1.86972 4.72617 1.94592 4.53904C2.02212 4.35192 2.13497 4.18193 2.27784 4.03906C2.42071 3.89619 2.5907 3.78334 2.77783 3.70714C2.96495 3.63093 3.16542 3.59292 3.36745 3.59534H8.65279M14.1668 1.83334L7.11945 8.88067M14.1668 5.35734V1.83334H10.6428" stroke="%23ED9797" stroke-linecap="round" stroke-linejoin="round"/></svg>') no-repeat center center/contain;
  height: 16px;
  width: 16px;
}
.c-button-square a[href$=".pdf"]::after {
  background: url('data:image/svg+xml;utf8, <svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M7.702 11.195C7.61133 11.1597 7.52233 11.0983 7.435 11.011L4.815 8.39201C4.71767 8.29467 4.667 8.18001 4.663 8.04801C4.659 7.91601 4.70967 7.79501 4.815 7.68501C4.92567 7.57434 5.04467 7.51801 5.172 7.51601C5.3 7.51401 5.419 7.56834 5.529 7.67901L7.5 9.65001V1.50001C7.5 1.35801 7.54767 1.23901 7.643 1.14301C7.73833 1.04701 7.85733 0.99934 8 1.00001C8.14267 1.00067 8.26167 1.04834 8.357 1.14301C8.45233 1.23767 8.5 1.35667 8.5 1.50001V9.65001L10.471 7.67901C10.5683 7.58167 10.684 7.53067 10.818 7.52601C10.952 7.52134 11.074 7.57434 11.184 7.68501C11.2907 7.79501 11.345 7.91301 11.347 8.03901C11.349 8.16501 11.295 8.28267 11.185 8.39201L8.565 11.012C8.47833 11.0987 8.38933 11.1597 8.298 11.195C8.20733 11.2303 8.108 11.248 8 11.248C7.892 11.248 7.79267 11.2303 7.702 11.195ZM2.616 15C2.15533 15 1.771 14.846 1.463 14.538C1.155 14.23 1.00067 13.8453 1 13.384V11.461C1 11.319 1.04767 11.2003 1.143 11.105C1.23833 11.0097 1.35733 10.9617 1.5 10.961C1.64267 10.9603 1.76167 11.0083 1.857 11.105C1.95233 11.2017 2 11.3203 2 11.461V13.384C2 13.538 2.064 13.6793 2.192 13.808C2.32 13.9367 2.461 14.0007 2.615 14H13.385C13.5383 14 13.6793 13.936 13.808 13.808C13.9367 13.68 14.0007 13.5387 14 13.384V11.461C14 11.319 14.0477 11.2003 14.143 11.105C14.2383 11.0097 14.3573 10.9617 14.5 10.961C14.6427 10.9603 14.7617 11.0083 14.857 11.105C14.9523 11.2017 15 11.3203 15 11.461V13.384C15 13.8447 14.846 14.229 14.538 14.537C14.23 14.845 13.8453 14.9993 13.384 15H2.616Z" fill="%23ED9797"/></svg>') no-repeat center center/contain;
  height: 16px;
  width: 16px;
}

.c-button-link {
  text-align: right;
  width: 100%;
}
.c-button-link a,
.c-button-link span {
  border-bottom: 0.5px solid #625F55;
  display: inline-block;
  color: #625F55;
  font-size: 14px;
  font-style: normal;
  font-weight: 500;
  line-height: 100%;
  padding: 5px 20px 5px 0;
  position: relative;
  text-decoration: none;
}
.c-button-link a::after,
.c-button-link span::after {
  background: url('data:image/svg+xml;utf8, <svg xmlns="http://www.w3.org/2000/svg" width="6" height="10" viewBox="0 0 6 10" fill="none"><path d="M0.542969 0.541504L4.54297 4.5415L0.542969 8.5415" stroke="%23625F55" stroke-width="1.08333" stroke-linecap="round" stroke-linejoin="round"/></svg>') no-repeat center center/contain;
  content: "";
  display: block;
  height: 9px;
  margin: auto;
  position: absolute;
  inset: 2px 0 0 auto;
  width: 5px;
}
.c-button-link a:hover,
.c-button-link span:hover {
  opacity: 0.65;
}

.c-button-more.is-full {
  display: block;
  width: 100%;
}
.c-button-more.is-full a,
.c-button-more.is-full span {
  width: 100%;
}
.c-button-more.is-soil a,
.c-button-more.is-soil span {
  border-color: #fff !important;
  color: #a57e6b !important;
}
.c-button-more.is-soil a:hover,
.c-button-more.is-soil span:hover {
  background: #a57e6b !important;
  border-color: #a57e6b !important;
  color: #fff !important;
}
.c-button-more.is-soil a:hover::after,
.c-button-more.is-soil span:hover::after {
  background: url('data:image/svg+xml;utf8, <svg xmlns="http://www.w3.org/2000/svg" width="13" height="13" viewBox="0 0 13 13" fill="none"><path d="M4.875 3.25L8.125 6.5L4.875 9.75" stroke="white" stroke-width="1.08333" stroke-linecap="round" stroke-linejoin="round"/></svg>') no-repeat center center/contain !important;
}
.c-button-more.is-soil a::after,
.c-button-more.is-soil span::after {
  background: url('data:image/svg+xml;utf8, <svg xmlns="http://www.w3.org/2000/svg" width="13" height="13" viewBox="0 0 13 13" fill="none"><path d="M4.875 3.25L8.125 6.5L4.875 9.75" stroke="%23a57e6b" stroke-width="1.08333" stroke-linecap="round" stroke-linejoin="round"/></svg>') no-repeat center center/contain !important;
}
.c-button-more.is-arrow a,
.c-button-more.is-arrow span {
  border-color: #fff;
  color: #0090ff;
  font-weight: 400;
}
.c-button-more.is-arrow a:hover,
.c-button-more.is-arrow span:hover {
  background: #0090ff;
  border-color: #0090ff;
}
.c-button-more.is-arrow a:hover::after,
.c-button-more.is-arrow span:hover::after {
  background: url('data:image/svg+xml;utf8, <svg xmlns="http://www.w3.org/2000/svg" width="13" height="13" viewBox="0 0 13 13" fill="none"><path d="M4.875 3.25L8.125 6.5L4.875 9.75" stroke="white" stroke-width="1.08333" stroke-linecap="round" stroke-linejoin="round"/></svg>') no-repeat center center/contain;
}
.c-button-more.is-arrow a::after,
.c-button-more.is-arrow span::after {
  background: url('data:image/svg+xml;utf8, <svg xmlns="http://www.w3.org/2000/svg" width="13" height="13" viewBox="0 0 13 13" fill="none"><path d="M4.875 3.25L8.125 6.5L4.875 9.75" stroke="%230090ff" stroke-width="1.08333" stroke-linecap="round" stroke-linejoin="round"/></svg>') no-repeat center center/contain;
  height: 13px;
  width: 13px;
}
.c-button-more a,
.c-button-more span {
  align-items: center;
  background: #fff;
  border: 1px solid var(--color-main, #4FA0C5);
  border-radius: 20px;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.25);
  box-sizing: border-box;
  color: var(--color-main, #4FA0C5);
  display: inline-flex;
  font-size: 16px;
  font-style: normal;
  font-weight: 700;
  gap: 10px;
  height: 42px;
  justify-content: center;
  letter-spacing: 0;
  line-height: normal;
  max-width: 100%;
  padding: 0 22px;
  position: relative;
  text-align: center;
  text-decoration: none;
  white-space: nowrap;
  width: 470px;
}
.c-button-more a:hover,
.c-button-more span:hover {
  background: var(--color-main, #4FA0C5);
  box-shadow: 0 2px 2px rgba(0, 0, 0, 0.25);
  color: #fff;
}
.c-button-more a:hover::after,
.c-button-more span:hover::after {
  background-image: url("images/icon-external-link-more-hover.svg");
}
.c-button-more a::after,
.c-button-more span::after {
  background: url("images/icon-external-link-more.svg") no-repeat center center/contain;
  content: "";
  display: block;
  flex-shrink: 0;
  height: 13.83px;
  width: 13.83px;
}

.c-button-social {
  height: 30px;
  width: -moz-fit-content;
  width: fit-content;
}
.c-button-social.is-black a img {
  filter: brightness(0) invert(0.1);
}
.c-button-social a {
  display: inline-block;
  height: -moz-fit-content;
  height: fit-content;
}
.c-button-social a:hover {
  opacity: 0.7;
}
.c-button-social a img {
  display: block;
  height: 100%;
  width: 100%;
}

.c-button-download a,
.wp-block-file:not(.wp-element-button) {
  align-items: flex-start;
  border: 1px solid var(--color-main, #4FA0C5);
  border-radius: 20px;
  box-sizing: border-box;
  color: var(--color-main, #4FA0C5) !important;
  display: inline-flex;
  flex-direction: column;
  font-size: 16px;
  gap: 10px;
  margin: 0;
  padding: 10px 20px;
  text-decoration: none;
  width: -moz-fit-content;
  width: fit-content;
}

.wp-block-file__content-wrapper a,
.c-button-download a em,
.wp-block-file > a:not(.wp-block-file__button) {
  color: inherit;
  display: block;
  font-size: 20px;
  font-style: normal;
  font-weight: 700;
  line-height: normal;
  text-decoration: underline;
}
.wp-block-file__content-wrapper a:hover,
.c-button-download a em:hover,
.wp-block-file > a:not(.wp-block-file__button):hover {
  opacity: 0.7;
  text-decoration: none;
}

.c-button-download a strong,
.wp-block-file .wp-block-file__button,
.wp-block-file * + .wp-block-file__button {
  align-items: center;
  background: none;
  border: none;
  border-radius: 0;
  box-shadow: none;
  color: inherit !important;
  display: inline-flex;
  font-size: 16px;
  font-weight: 500;
  gap: 10px;
  line-height: normal;
  margin: 0;
  padding: 0;
  text-decoration: underline;
}
.c-button-download a strong:hover,
.wp-block-file .wp-block-file__button:hover,
.wp-block-file * + .wp-block-file__button:hover {
  opacity: 0.7;
  text-decoration: none;
}
.c-button-download a strong::after,
.wp-block-file .wp-block-file__button::after,
.wp-block-file * + .wp-block-file__button::after {
  background: url("images/icon-download.svg") center/38px 38px no-repeat;
  content: "";
  display: block;
  flex-shrink: 0;
  height: 20px;
  width: 20px;
}

.c-button-contact a {
  align-items: center;
  background: linear-gradient(90deg, #00B961 0%, #A9DC43 100%);
  border-radius: 100px;
  color: var(--LPIXEL-White, #fff);
  display: inline-flex;
  font-family: "din-2014", var(--gothic);
  font-size: 24px;
  font-style: normal;
  font-weight: 600;
  letter-spacing: 1.2px;
  line-height: 100%;
  max-width: 100%;
  height: 64px;
  justify-content: center;
  letter-spacing: 0;
  transition: opacity 0.2s ease;
  text-decoration: none;
  width: 426px;
}
@media screen and (max-width: 650px) {
  .c-button-contact a {
    font-size: 18px;
    height: 56px;
    width: 320px;
  }
}
.c-button-contact a:hover {
  opacity: 0.5;
}

.c-button-hamburger {
  display: none;
  height: 44px;
  margin: auto;
  position: absolute;
  inset: 6px 25px 0 auto;
  width: 44px;
  z-index: 100;
}
@media screen and (max-width: 1200px) {
  .c-button-hamburger {
    display: block;
  }
}
.c-button-hamburger.is-active i:nth-of-type(1) {
  display: none;
}
.c-button-hamburger.is-active i:nth-of-type(2) {
  display: block;
}
.c-button-hamburger i {
  color: var(--deepbrown, #625F55);
  font-size: 10px;
  font-style: normal;
  font-weight: 700;
  line-height: 150%; /* 15px */
  position: absolute;
  inset: 12px 0 auto 0;
  text-align: center;
  text-transform: uppercase;
  width: 100%;
}
.c-button-hamburger i:nth-of-type(2) {
  display: none;
}
.c-button-hamburger img {
  position: absolute;
  inset: auto 0 0 0;
}

.c-button-tooltip {
  align-items: center;
  background: transparent;
  border: none;
  cursor: pointer;
  display: inline-flex;
  flex-shrink: 0;
  height: 24px;
  justify-content: center;
  margin: 0;
  padding: 0;
  position: relative;
  width: 24px;
}
.c-button-tooltip img {
  display: block;
  height: 20px;
  transition: opacity 0.2s;
  width: 20px;
}
.c-button-tooltip:hover img {
  opacity: 0.7;
}
.c-button-tooltip.is-open .c-button-tooltip__tooltip, .c-button-tooltip:focus-visible .c-button-tooltip__tooltip {
  opacity: 1;
  pointer-events: auto;
  visibility: visible;
}
@media (hover: hover) and (pointer: fine) {
  .c-button-tooltip:hover .c-button-tooltip__tooltip {
    opacity: 1;
    pointer-events: auto;
    visibility: visible;
  }
}
.c-button-tooltip .c-button-tooltip__tooltip {
  background: #333;
  border-radius: 8px;
  box-sizing: border-box;
  color: #fff;
  font-size: 13px;
  font-weight: 400;
  left: 50%;
  line-height: 1.5;
  max-width: min(280px, 100vw - 32px);
  opacity: 0;
  padding: 10px 12px;
  pointer-events: none;
  position: absolute;
  text-align: left;
  top: calc(100% + 10px);
  transform: translateX(-50%);
  transition: opacity 0.2s, visibility 0.2s;
  visibility: hidden;
  width: -moz-max-content;
  width: max-content;
  z-index: 10;
}
.c-button-tooltip .c-button-tooltip__tooltip::before {
  border: 6px solid transparent;
  border-bottom-color: #333;
  bottom: 100%;
  content: "";
  left: 50%;
  position: absolute;
  transform: translateX(-50%);
}
@media screen and (max-width: 650px) {
  .c-button-tooltip .c-button-tooltip__tooltip {
    left: auto;
    right: 0;
    transform: none;
  }
  .c-button-tooltip .c-button-tooltip__tooltip::before {
    left: auto;
    right: 6px;
    transform: none;
  }
}

.c-banner-default {
  display: block;
  margin: 0 auto;
  max-width: 680px;
}
.c-banner-default img {
  display: block;
}
.c-banner-default figcaption {
  color: #231815;
  font-size: 12px;
  font-style: normal;
  font-weight: 500;
  line-height: 160%; /* 19.2px */
  letter-spacing: 0.6px;
  margin: 16px 0 0;
  text-align: center;
}
@media screen and (max-width: 650px) {
  .c-banner-default figcaption {
    text-align: left;
  }
}
.c-banner-default a {
  display: block;
  transition: opacity 0.3s;
}
.c-banner-default a:hover {
  opacity: 0.7;
}

.c-banner-product {
  background: var(--color-main, #4FA0C5);
  border-radius: 10px;
  box-sizing: border-box;
  color: #fff;
  display: flex;
  flex-direction: column;
  justify-content: center;
  max-width: 100%;
  padding: 15px;
  position: relative;
  text-decoration: none;
  width: 450px;
}
.c-banner-product.is-green {
  background: #2BB9BB;
}
.c-banner-product.is-green .c-banner-product__button span {
  background: #2BB9BB;
}
.c-banner-product.is-green:hover .c-banner-product__button span {
  background: #fff;
  color: #2BB9BB;
}
.c-banner-product.is-green:hover .c-banner-product__button span::after {
  background: url('data:image/svg+xml;utf8, <svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" viewBox="0 0 13.8328 13.8335" fill="none"><path d="M11.3208 6.27333V11.5593C11.3222 11.7607 11.2835 11.9602 11.2068 12.1464C11.1302 12.3326 11.0171 12.5016 10.8743 12.6435C10.7315 12.7854 10.5618 12.8974 10.3752 12.9729C10.1886 13.0485 9.98878 13.086 9.78747 13.0833H2.2828C2.08075 13.0859 1.88023 13.048 1.69306 12.9719C1.50589 12.8958 1.33586 12.7829 1.19301 12.64C1.05016 12.4971 0.937378 12.327 0.861314 12.1398C0.78525 11.9526 0.747447 11.752 0.750134 11.55V4.04533C0.747719 3.8433 0.785731 3.64283 0.861934 3.45571C0.938136 3.26858 1.05099 3.09859 1.19386 2.95572C1.33672 2.81286 1.50672 2.7 1.69384 2.6238C1.88096 2.5476 2.08144 2.50959 2.28347 2.512H7.5688M13.0828 0.75L6.03547 7.79733M13.0828 4.274V0.75H9.5588" stroke="%232BB9BB" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/></svg>') no-repeat center center/contain;
}
.c-banner-product:hover .c-banner-product__button span {
  background: #fff;
  box-shadow: 0 2px 2px rgba(0, 0, 0, 0.25);
  color: var(--color-main, #4FA0C5);
}
.c-banner-product:hover .c-banner-product__button span::after {
  background: url('data:image/svg+xml;utf8, <svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" viewBox="0 0 13.8328 13.8335" fill="none"><path d="M11.3208 6.27333V11.5593C11.3222 11.7607 11.2835 11.9602 11.2068 12.1464C11.1302 12.3326 11.0171 12.5016 10.8743 12.6435C10.7315 12.7854 10.5618 12.8974 10.3752 12.9729C10.1886 13.0485 9.98878 13.086 9.78747 13.0833H2.2828C2.08075 13.0859 1.88023 13.048 1.69306 12.9719C1.50589 12.8958 1.33586 12.7829 1.19301 12.64C1.05016 12.4971 0.937378 12.327 0.861314 12.1398C0.78525 11.9526 0.747447 11.752 0.750134 11.55V4.04533C0.747719 3.8433 0.785731 3.64283 0.861934 3.45571C0.938136 3.26858 1.05099 3.09859 1.19386 2.95572C1.33672 2.81286 1.50672 2.7 1.69384 2.6238C1.88096 2.5476 2.08144 2.50959 2.28347 2.512H7.5688M13.0828 0.75L6.03547 7.79733M13.0828 4.274V0.75H9.5588" stroke="%234FA0C5" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/></svg>') no-repeat center center/contain;
}
.c-banner-product .c-banner-product__images {
  border-radius: 10px;
  display: block;
  margin: 0 0 4px;
  overflow: hidden;
  width: 100%;
}
.c-banner-product .c-banner-product__images img {
  display: block;
  height: auto;
  width: 100%;
}
.c-banner-product .c-banner-product__body {
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  gap: 12px;
  justify-content: center;
  padding: 0 20px;
  width: 100%;
}
.c-banner-product .c-banner-product__title {
  color: #fff;
  font-size: 24px;
  font-style: normal;
  font-weight: 700;
  line-height: normal;
  margin: 0;
  white-space: nowrap;
}
.c-banner-product .c-banner-product__button {
  display: block;
  margin: 0 auto;
  width: 100%;
}
.c-banner-product .c-banner-product__button span {
  align-items: center;
  background: var(--color-main, #4FA0C5);
  border: 1px solid var(--color-white, #FFF);
  border-radius: 10px;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.25);
  box-sizing: border-box;
  color: #fff;
  display: flex;
  font-size: 16px;
  font-style: normal;
  font-weight: 700;
  gap: 10px;
  height: 42px;
  justify-content: center;
  letter-spacing: 0;
  line-height: normal;
  max-width: 100%;
  padding: 0 22px;
  position: relative;
  text-align: center;
  text-decoration: none;
  transition: background-color 0.3s;
}
.c-banner-product .c-banner-product__button span:hover {
  background: #fff;
  box-shadow: 0 2px 2px rgba(0, 0, 0, 0.25);
  color: var(--color-main, #4FA0C5);
}
.c-banner-product .c-banner-product__button span:hover::after {
  background: url('data:image/svg+xml;utf8, <svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" viewBox="0 0 13.8328 13.8335" fill="none"><path d="M11.3208 6.27333V11.5593C11.3222 11.7607 11.2835 11.9602 11.2068 12.1464C11.1302 12.3326 11.0171 12.5016 10.8743 12.6435C10.7315 12.7854 10.5618 12.8974 10.3752 12.9729C10.1886 13.0485 9.98878 13.086 9.78747 13.0833H2.2828C2.08075 13.0859 1.88023 13.048 1.69306 12.9719C1.50589 12.8958 1.33586 12.7829 1.19301 12.64C1.05016 12.4971 0.937378 12.327 0.861314 12.1398C0.78525 11.9526 0.747447 11.752 0.750134 11.55V4.04533C0.747719 3.8433 0.785731 3.64283 0.861934 3.45571C0.938136 3.26858 1.05099 3.09859 1.19386 2.95572C1.33672 2.81286 1.50672 2.7 1.69384 2.6238C1.88096 2.5476 2.08144 2.50959 2.28347 2.512H7.5688M13.0828 0.75L6.03547 7.79733M13.0828 4.274V0.75H9.5588" stroke="%234FA0C5" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/></svg>') no-repeat center center/contain;
}
.c-banner-product .c-banner-product__button span::after {
  background: url('data:image/svg+xml;utf8, <svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" viewBox="0 0 13.8328 13.8335" fill="none"><path d="M11.3208 6.27333V11.5593C11.3222 11.7607 11.2835 11.9602 11.2068 12.1464C11.1302 12.3326 11.0171 12.5016 10.8743 12.6435C10.7315 12.7854 10.5618 12.8974 10.3752 12.9729C10.1886 13.0485 9.98878 13.086 9.78747 13.0833H2.2828C2.08075 13.0859 1.88023 13.048 1.69306 12.9719C1.50589 12.8958 1.33586 12.7829 1.19301 12.64C1.05016 12.4971 0.937378 12.327 0.861314 12.1398C0.78525 11.9526 0.747447 11.752 0.750134 11.55V4.04533C0.747719 3.8433 0.785731 3.64283 0.861934 3.45571C0.938136 3.26858 1.05099 3.09859 1.19386 2.95572C1.33672 2.81286 1.50672 2.7 1.69384 2.6238C1.88096 2.5476 2.08144 2.50959 2.28347 2.512H7.5688M13.0828 0.75L6.03547 7.79733M13.0828 4.274V0.75H9.5588" stroke="white" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/></svg>') no-repeat center center/contain;
  content: "";
  display: block;
  flex-shrink: 0;
  height: 14px;
  width: 14px;
}

.c-banner-download {
  background: #0090ff;
  border-radius: 10px;
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  gap: 15px;
  align-items: center;
  justify-content: center;
  margin: 0 auto;
  max-width: 100%;
  min-height: 122px;
  overflow: hidden;
  padding: 15px;
  text-decoration: none;
  transition: opacity 0.3s;
  width: 325px;
}
.c-banner-download:hover {
  opacity: 0.85;
}
.c-banner-download.is-green {
  background: #2bb9bb;
}
.c-banner-download.is-green .c-banner-download__button {
  color: #2bb9bb;
}
.c-banner-download.is-green .c-banner-download__button::after {
  background: url('data:image/svg+xml;utf8, <svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" viewBox="0 0 13.8328 13.8335" fill="none"><path d="M11.3208 6.27333V11.5593C11.3222 11.7607 11.2835 11.9602 11.2068 12.1464C11.1302 12.3326 11.0171 12.5016 10.8743 12.6435C10.7315 12.7854 10.5618 12.8974 10.3752 12.9729C10.1886 13.0485 9.98878 13.086 9.78747 13.0833H2.2828C2.08075 13.0859 1.88023 13.048 1.69306 12.9719C1.50589 12.8958 1.33586 12.7829 1.19301 12.64C1.05016 12.4971 0.937378 12.327 0.861314 12.1398C0.78525 11.9526 0.747447 11.752 0.750134 11.55V4.04533C0.747719 3.8433 0.785731 3.64283 0.861934 3.45571C0.938136 3.26858 1.05099 3.09859 1.19386 2.95572C1.33672 2.81286 1.50672 2.7 1.69384 2.6238C1.88096 2.5476 2.08144 2.50959 2.28347 2.512H7.5688M13.0828 0.75L6.03547 7.79733M13.0828 4.274V0.75H9.5588" stroke="%232BB9BB" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/></svg>') no-repeat center center/contain;
  height: 14px;
  width: 14px;
}
.c-banner-download.is-soil {
  background: linear-gradient(-90deg, #d9bd96 0%, #905f2e 100%);
  border: 2px solid #fff;
}
.c-banner-download.is-soil .c-banner-download__button {
  color: #a57e6b;
}
.c-banner-download.is-soil .c-banner-download__button::after {
  background: url('data:image/svg+xml;utf8, <svg xmlns="http://www.w3.org/2000/svg" width="8" height="13" viewBox="0 0 8 13" fill="none"><path d="M1.5 1.5L6.5 6.5L1.5 11.5" stroke="%23a57e6b" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/></svg>') no-repeat center center/contain;
}
.c-banner-download .c-banner-download__title {
  color: #fff;
  font-size: 24px;
  font-weight: 700;
  line-height: 1;
  margin: 0;
  text-align: center;
}
.c-banner-download .c-banner-download__button {
  align-items: center;
  background: #fff;
  border-radius: 20px;
  box-sizing: border-box;
  color: var(--color-main, #4FA0C5);
  display: inline-flex;
  font-size: 16px;
  font-weight: 500;
  gap: 15px;
  height: 42px;
  justify-content: center;
  line-height: normal;
  padding: 8px 10px 8px 14px;
  white-space: nowrap;
}
.c-banner-download .c-banner-download__button::after {
  background: url('data:image/svg+xml;utf8, <svg xmlns="http://www.w3.org/2000/svg" width="8" height="13" viewBox="0 0 8 13" fill="none"><path d="M1.5 1.5L6.5 6.5L1.5 11.5" stroke="%234FA0C5" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/></svg>') no-repeat center center/contain;
  content: "";
  display: block;
  flex-shrink: 0;
  height: 13px;
  width: 8px;
}

.c-banner-water {
  background: center 35%/cover no-repeat url("images/water/banner-water-bg.jpg");
  border-radius: 10px;
  box-sizing: border-box;
  display: flex;
  flex-wrap: wrap;
  gap: 40px;
  align-items: center;
  isolation: isolate;
  margin: 0 auto;
  max-width: 100%;
  overflow: hidden;
  padding: 15px;
  position: relative;
  text-decoration: none;
  width: 680px;
}
.c-banner-water .c-banner-water__image {
  border-radius: 10px;
  flex-shrink: 0;
  height: 183px;
  margin: 0;
  overflow: hidden;
  position: relative;
  width: 295px;
  z-index: 1;
}
@media screen and (max-width: 650px) {
  .c-banner-water .c-banner-water__image {
    height: auto;
    width: 100%;
  }
}
.c-banner-water .c-banner-water__image img {
  display: block;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: bottom;
     object-position: bottom;
  width: 100%;
}
.c-banner-water .c-banner-water__body {
  display: flex;
  flex: 1 1 0;
  flex-direction: column;
  gap: 32px;
  justify-content: center;
  min-width: 0;
  position: relative;
  z-index: 1;
}
.c-banner-water .c-banner-water__list {
  display: flex;
  flex-direction: column;
  gap: 12px;
  margin: 0;
  padding: 0;
}
.c-banner-water .c-banner-water__item {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  list-style: none;
  margin: 0;
}
.c-banner-water .c-banner-water__name {
  color: #279af2;
  font-size: 24px;
  font-weight: 700;
  line-height: normal;
  margin: 0;
}
.c-banner-water .c-banner-water__button {
  margin: 0;
  width: 100%;
}
.c-banner-water .c-banner-water__button a,
.c-banner-water .c-banner-water__button span {
  max-width: 315px;
}

.c-banner-soil {
  background: center/cover no-repeat url("images/soil/banner-soil-bg.jpg");
  border-radius: 10px;
  box-sizing: border-box;
  display: flex;
  flex-wrap: wrap;
  gap: 40px;
  align-items: center;
  isolation: isolate;
  margin: 0 auto;
  max-width: 100%;
  overflow: hidden;
  padding: 15px;
  position: relative;
  text-decoration: none;
  width: 680px;
}
.c-banner-soil .c-banner-soil__image {
  border-radius: 10px;
  flex-shrink: 0;
  height: 183px;
  margin: 0;
  overflow: hidden;
  position: relative;
  width: 295px;
  z-index: 1;
}
@media screen and (max-width: 650px) {
  .c-banner-soil .c-banner-soil__image {
    height: auto;
    width: 100%;
  }
}
.c-banner-soil .c-banner-soil__image img {
  display: block;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  width: 100%;
}
.c-banner-soil .c-banner-soil__body {
  display: flex;
  flex: 1 1 0;
  flex-direction: column;
  gap: 32px;
  justify-content: center;
  min-width: 0;
  position: relative;
  z-index: 1;
}
.c-banner-soil .c-banner-soil__list {
  display: flex;
  flex-direction: column;
  gap: 12px;
  margin: 0;
  padding: 0;
}
.c-banner-soil .c-banner-soil__item {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  list-style: none;
  margin: 0;
}
.c-banner-soil .c-banner-soil__name {
  color: #fff;
  font-size: 24px;
  font-weight: 700;
  line-height: normal;
  margin: 0;
}
.c-banner-soil .c-banner-soil__button {
  margin: 0;
  width: 100%;
}
.c-banner-soil .c-banner-soil__button a,
.c-banner-soil .c-banner-soil__button span {
  max-width: 315px;
}

.c-banner-case {
  border: 2px solid #fff;
  border-radius: 10px;
  box-sizing: border-box;
  display: block;
  height: 238px;
  isolation: isolate;
  margin: 0 auto;
  max-width: 100%;
  overflow: hidden;
  position: relative;
  text-decoration: none;
  width: 800px;
}
@media screen and (max-width: 650px) {
  .c-banner-case {
    height: auto;
    min-height: 238px;
    padding: 212px 24px 80px;
  }
}
.c-banner-case:hover .c-banner-case__button a,
.c-banner-case:hover .c-banner-case__button span {
  background: #279af2;
  color: #fff;
}
.c-banner-case:hover .c-banner-case__button a::after,
.c-banner-case:hover .c-banner-case__button span::after {
  background: url('data:image/svg+xml;utf8, <svg xmlns="http://www.w3.org/2000/svg" width="13" height="13" viewBox="0 0 13 13" fill="none"><path d="M4.875 3.25L8.125 6.5L4.875 9.75" stroke="white" stroke-width="1.08333" stroke-linecap="round" stroke-linejoin="round"/></svg>') no-repeat center center/contain;
}
.c-banner-case::before {
  background: url("images/home/banner-case-shape.svg") center/contain no-repeat;
  content: "";
  height: 456px;
  pointer-events: none;
  position: absolute;
  top: -80px;
  left: -180px;
  transform: rotate(45deg);
  width: 471px;
  z-index: 0;
}
@media screen and (max-width: 650px) {
  .c-banner-case::before {
    top: -272px;
    left: -140px;
    transform: rotate(135deg);
  }
}
.c-banner-case .c-banner-case__image {
  height: 100%;
  margin: auto;
  position: absolute;
  inset: 0;
  width: 100%;
  z-index: -1;
}
.c-banner-case .c-banner-case__image img {
  display: block;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  width: 100%;
}
.c-banner-case .c-banner-case__title {
  color: #fff;
  font-size: 32px;
  font-weight: 700;
  height: -moz-fit-content;
  height: fit-content;
  line-height: 1.25;
  margin: auto;
  position: absolute;
  inset: 0 auto 0 42px;
  z-index: 1;
}
@media screen and (max-width: 650px) {
  .c-banner-case .c-banner-case__title {
    inset: 32px auto auto 40px;
  }
}
.c-banner-case .c-banner-case__text {
  color: #fff;
  font-size: 16px;
  font-weight: 500;
  height: -moz-fit-content;
  height: fit-content;
  line-height: 150%;
  margin: auto;
  padding-right: 24px;
  position: absolute;
  inset: 0 auto 0 320px;
  z-index: 1;
}
@media screen and (max-width: 650px) {
  .c-banner-case .c-banner-case__text {
    position: static;
  }
}
.c-banner-case .c-banner-case__button {
  margin: auto;
  position: absolute;
  inset: auto 0 10px auto;
  width: auto;
  z-index: 1;
}
.c-banner-case .c-banner-case__button a,
.c-banner-case .c-banner-case__button span {
  background: #fff;
  border-color: #fff;
  border-radius: 30px 0 0 30px;
  color: #279af2;
  display: block;
  font-size: 16px;
  font-weight: 700;
  line-height: 1.6;
  max-width: none;
  padding: 8px 18px 8px 20px;
  transition: background-color 0.3s ease, color 0.3s ease;
  width: 186px;
}
.c-banner-case .c-banner-case__button a::after,
.c-banner-case .c-banner-case__button span::after {
  background: url('data:image/svg+xml;utf8, <svg xmlns="http://www.w3.org/2000/svg" width="13" height="13" viewBox="0 0 13 13" fill="none"><path d="M4.875 3.25L8.125 6.5L4.875 9.75" stroke="%23279af2" stroke-width="1.08333" stroke-linecap="round" stroke-linejoin="round"/></svg>') no-repeat center center/contain;
  content: "";
  display: block;
  height: 18px;
  margin: auto;
  position: absolute;
  inset: 0 8px 0 auto;
  width: 18px;
}

table th,
table td {
  min-width: 80px;
}
table strong {
  font-weight: 600;
}

.c-table-spec table {
  margin: 0 auto;
  max-width: 696px;
  width: 100%;
}
.c-table-spec table tr {
  border-bottom: solid 1px var(--color-main, #00B961);
}
.c-table-spec table tr:first-child {
  border-top: solid 1px var(--color-main, #00B961);
}
.c-table-spec table td {
  border: none;
  color: var(--TEXT-Black, #222);
  font-size: 16px;
  padding: 24px 0;
  vertical-align: top;
}
.c-table-spec table td:first-child {
  color: var(--color-main, #00B961);
  font-weight: 600;
  padding-right: 16px;
  text-align: left;
}
.c-table-spec table a {
  text-decoration: underline;
}
.c-table-spec table a:hover {
  text-decoration: none;
}
.c-table-spec table em {
  font-style: normal;
}
@media screen and (max-width: 650px) {
  .c-table-spec table em br {
    display: none;
  }
}

.c-table-default.is-border-beige table th,
.c-table-default.is-border-beige table td {
  border-color: #EFE6E6;
}
.c-table-default table {
  border-collapse: collapse;
  margin: 0 auto;
  width: 100%;
}
.c-table-default table th,
.c-table-default table td {
  border: none;
  border-bottom: 1px solid #A3B0BA;
  color: var(--text-black, #1E1E1E);
  font-size: 14px;
  font-style: normal;
  font-weight: 400;
  line-height: 140%; /* 19.6px */
  letter-spacing: 0.7px;
  padding: 16px 0;
}
.c-table-default table th:first-child,
.c-table-default table td:first-child {
  padding: 16px 80px 16px 0;
  width: 280px;
}
@media screen and (max-width: 650px) {
  .c-table-default table th:first-child,
  .c-table-default table td:first-child {
    padding: 16px 24px 16px 0;
    width: auto;
  }
}
.c-table-default table a {
  color: #ED9797;
}
.c-table-default table a:hover {
  text-decoration: none;
}

.c-table-overview table {
  border-collapse: collapse;
  margin: 0 auto;
  width: 100%;
}
.c-table-overview table tr {
  border-top: 1px solid #D9D9D9;
}
.c-table-overview table tr:last-child {
  border-bottom: 1px solid #D9D9D9;
}
.c-table-overview table th,
.c-table-overview table td {
  border: none;
  color: #000;
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  letter-spacing: 0;
  line-height: 180%;
  padding: 18px 0;
  text-align: left;
  vertical-align: top;
}
@media screen and (max-width: 650px) {
  .c-table-overview table th,
  .c-table-overview table td {
    display: block;
    padding: 0 0 16px;
    width: 100%;
  }
}
.c-table-overview table th {
  color: var(--color-main, #4FA0C5);
  font-weight: 700;
  padding-right: 60px;
  white-space: nowrap;
  width: 149px;
}
@media screen and (max-width: 650px) {
  .c-table-overview table th {
    border-bottom: none;
    padding: 16px 0 8px;
    white-space: normal;
    width: 100%;
  }
}
.c-table-overview table td {
  min-width: 0;
  width: auto;
}
.c-table-overview table a {
  align-items: center;
  color: #000;
  display: inline-flex;
  gap: 15px;
  text-decoration: none;
}
.c-table-overview table a:hover {
  opacity: 0.7;
  text-decoration: underline;
}
.c-table-overview table a[target=_blank]::after {
  background: currentColor;
  content: "";
  display: block;
  flex-shrink: 0;
  height: 12px;
  mask: url("images/icon-external-link.svg") no-repeat center/contain;
  -webkit-mask: url("images/icon-external-link.svg") no-repeat center/contain;
  width: 12px;
}

.c-list-breadcrumb {
  margin: 16px auto;
  max-width: none;
  min-width: 0;
  overflow: hidden;
  padding: 0 25px;
}
@media screen and (max-width: 1200px) {
  .c-list-breadcrumb {
    padding: 0;
  }
}
.c-list-breadcrumb ol {
  display: flex;
  flex-wrap: nowrap;
  list-style: none;
  margin: 0;
  min-width: 0;
  overflow: hidden;
  padding: 0;
}
.c-list-breadcrumb ol li {
  align-items: center;
  color: #666666;
  display: flex;
  flex-shrink: 0;
  font-size: 14px;
  font-style: normal;
  font-weight: 500;
  line-height: 150%; /* 15px */
  min-width: 0;
  white-space: nowrap;
}
.c-list-breadcrumb ol li:first-child::before {
  display: none;
}
.c-list-breadcrumb ol li:last-child {
  display: block;
  flex-shrink: 1;
  overflow: hidden;
  text-overflow: ellipsis;
}
.c-list-breadcrumb ol li:last-child a,
.c-list-breadcrumb ol li:last-child span {
  display: inline;
}
.c-list-breadcrumb ol li::before {
  content: "/";
  display: inline-block;
  margin: 0 16px;
}
.c-list-breadcrumb ol li a {
  text-decoration: none;
}
.c-list-breadcrumb ol li a:hover {
  opacity: 0.5;
}

.c-list-anchor {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 32px;
  list-style: none;
  padding: 0 0 14px;
  position: relative;
}
@media screen and (max-width: 650px) {
  .c-list-anchor {
    border-top: 1px solid var(--Text-green-200, #8C957F);
    flex-direction: column;
    gap: 6px;
    padding: 24px 0 18px;
  }
}
.c-list-anchor::after {
  background: var(--Text-green-200, #8C957F);
  content: "";
  display: block;
  height: 1px;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
}
.c-list-anchor li a {
  color: var(--Bgc-green-900, #161807);
  font-family: "Zen Old Mincho";
  font-size: 15px;
  line-height: 180%; /* 27px */
  letter-spacing: 0.75px;
}
.c-list-anchor li a:hover {
  opacity: 0.5;
}
.c-list-anchor li a::after {
  background: url("images/icon-arrow-anchor.svg") no-repeat center center/contain;
  content: "";
  display: inline-block;
  height: 6px;
  margin: 0 0 2px 10px;
  width: 11px;
}

.c-list-default {
  display: grid;
  gap: 16px;
  list-style: none;
  padding: 0;
  margin: 0;
}
.c-list-default li {
  color: #625F55;
  font-size: 16px;
  font-style: normal;
  font-weight: 600;
  letter-spacing: 1.6px;
  line-height: 140%;
  padding: 0 0 0 18px;
  position: relative;
}
.c-list-default li::before {
  background: #ED9797;
  border-radius: 50%;
  content: "";
  display: block;
  height: 10px;
  margin: auto;
  position: absolute;
  inset: 8px auto auto -2px;
  width: 10px;
}
.c-list-default li a {
  text-decoration-thickness: 1px;
  text-underline-offset: 2px;
}

.c-list-simple {
  display: grid;
  gap: 4px;
  padding: 0 0 0 1.5em;
  margin: 0;
}

.c-list-numeric {
  counter-reset: item;
  display: grid;
  gap: 16px;
  list-style: none;
  padding: 0 0 0 1.5em;
}
.c-list-numeric li {
  counter-increment: item;
  position: relative;
}
.c-list-numeric li::before {
  content: counter(item);
  display: inline-block;
  margin: 0 0 0 -1.25em;
  white-space: nowrap;
  width: 1em;
}

.c-list-faq-wrapper {
  display: flex;
  flex-direction: column;
  gap: 48px;
  margin: 0 auto;
  max-width: 772px;
  width: 100%;
}

.c-list-faq {
  display: flex;
  flex-direction: column;
  gap: 18px;
  margin: 0;
  width: 100%;
}
.c-list-faq .c-list-faq__question {
  align-items: center;
  background: #e5e7eb;
  border-radius: 20px;
  box-sizing: border-box;
  display: flex;
  gap: 20px;
  padding: 10px 30px;
  width: 100%;
}
@media screen and (max-width: 650px) {
  .c-list-faq .c-list-faq__question {
    gap: 12px;
    padding: 10px 16px;
  }
}
.c-list-faq .c-list-faq__question::before {
  color: #666;
  content: "Q";
  display: block;
  flex-shrink: 0;
  font-size: 20px;
  font-weight: 700;
  line-height: normal;
}
@media screen and (max-width: 650px) {
  .c-list-faq .c-list-faq__question::before {
    font-size: 18px;
  }
}
.c-list-faq .c-list-faq__question h5,
.c-list-faq .c-list-faq__question h4,
.c-list-faq .c-list-faq__question h3,
.c-list-faq .c-list-faq__question h2,
.c-list-faq .c-list-faq__question p {
  color: #666;
  font-size: 20px;
  font-weight: 500;
  line-height: normal;
  margin: 0;
}
@media screen and (max-width: 650px) {
  .c-list-faq .c-list-faq__question h5,
  .c-list-faq .c-list-faq__question h4,
  .c-list-faq .c-list-faq__question h3,
  .c-list-faq .c-list-faq__question h2,
  .c-list-faq .c-list-faq__question p {
    font-size: 16px;
  }
}
.c-list-faq .c-list-faq__answer {
  box-sizing: border-box;
  display: flex;
  gap: 20px;
  padding: 0 30px;
  width: 100%;
}
@media screen and (max-width: 650px) {
  .c-list-faq .c-list-faq__answer {
    gap: 12px;
    padding: 0 16px;
  }
}
.c-list-faq .c-list-faq__answer::before {
  color: #666;
  content: "A";
  display: block;
  flex-shrink: 0;
  font-size: 20px;
  font-weight: 700;
  line-height: normal;
}
@media screen and (max-width: 650px) {
  .c-list-faq .c-list-faq__answer::before {
    font-size: 18px;
  }
}
.c-list-faq .c-list-faq__answer p {
  color: #000;
  flex: 1 1 0;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.5;
  margin: 0;
  min-width: 0;
}
@media screen and (max-width: 650px) {
  .c-list-faq .c-list-faq__answer p {
    font-size: 14px;
  }
}
.c-list-faq .c-list-faq__answer a {
  color: #279af2;
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 2px;
}
.c-list-faq .c-list-faq__answer a:hover {
  text-decoration: none;
}

.c-list-youtube {
  display: flex;
  flex-wrap: wrap;
  gap: 40px;
  justify-content: center;
}
.c-list-youtube figure {
  display: block;
  max-width: 380px;
  width: 100%;
}
.c-list-youtube iframe {
  aspect-ratio: 16/9;
  display: block;
  height: auto;
  width: 100%;
}

.c-list-check {
  display: grid;
  gap: 8px;
  list-style: none;
  padding: 0 0 0 28px;
  margin: 0;
}
.c-list-check li {
  position: relative;
}
.c-list-check li::before {
  background: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 20 20" fill="none"><rect width="20" height="20" rx="10" fill="%23ED8181"/><path d="M7.95807 14.4234L3.81641 10.2817L4.41141 9.68758L7.95807 13.2342L15.5881 5.60425L16.1822 6.19925L7.95807 14.4234Z" fill="white"/></svg>') no-repeat center center/contain;
  content: "";
  display: block;
  height: 20px;
  margin: 0 0 0 -28px;
  position: absolute;
  inset: 0.28em auto auto 0;
  width: 20px;
}

.c-list-accent {
  display: grid;
  gap: 8px;
  list-style: none;
  padding: 0 0 0 20px;
  margin: 0;
}
.c-list-accent li {
  position: relative;
}
.c-list-accent li::before {
  background-color: #ED9797;
  border-radius: 50%;
  content: "";
  display: block;
  height: 12px;
  margin: 0 0 0 -20px;
  position: absolute;
  inset: 0.5em auto auto 0;
  width: 12px;
}
.c-list-accent li strong {
  background: linear-gradient(180deg, transparent 50%, #F7D6D6 51%, #F7D6D6 100%);
}

.c-list-news {
  display: flex;
  flex-direction: column;
  gap: 26px;
  list-style: none;
  margin: 0 auto;
  padding: 0;
  width: 100%;
}
.c-list-news li {
  margin: 0;
  padding: 0;
}
.c-list-news a,
.c-list-news li > div {
  align-items: flex-end;
  border-bottom: 1px solid #d9d9d9;
  color: #000;
  display: flex;
  flex-direction: column;
  gap: 13px;
  justify-content: flex-end;
  padding: 0 0 10px;
  text-decoration: none;
  transition: opacity 0.3s;
  width: 100%;
}
.c-list-news a:hover,
.c-list-news li > div:hover {
  opacity: 0.7;
}
.c-list-news a::after,
.c-list-news li > div::after {
  background: url("images/icon-arrow-filled.svg") no-repeat center/contain;
  content: "";
  display: block;
  flex-shrink: 0;
  height: 20px;
  width: 10px;
}

.c-list-news__meta {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 13px;
  padding: 0 0 15px;
  width: 100%;
}
.c-list-news__meta time {
  color: #000;
  font-size: 14px;
  font-weight: 700;
  line-height: normal;
  white-space: nowrap;
}

.c-list-news__title {
  color: #000;
  font-size: 14px;
  font-weight: 400;
  line-height: 28px;
  margin: 0;
  width: 100%;
}

.c-list-filter {
  display: flex;
  flex-direction: column;
  gap: 40px;
  margin: 0 auto;
  width: 100%;
}
.c-list-filter .c-list-filter__head {
  align-items: center;
  display: flex;
  gap: 8px;
  justify-content: center;
}
.c-list-filter .c-list-filter__title {
  border-bottom: 3px solid var(--color-main, #4FA0C5);
  color: var(--color-main, #4FA0C5);
  font-size: 36px;
  font-weight: 500;
  line-height: 1.5;
  margin: 0;
  padding: 0 0 10px;
  text-align: center;
  width: -moz-fit-content;
  width: fit-content;
}
@media screen and (max-width: 650px) {
  .c-list-filter .c-list-filter__title {
    font-size: 28px;
  }
}
.c-list-filter .c-list-filter__groups {
  display: flex;
  flex-direction: column;
  gap: 18px;
  margin: 0 auto;
  max-width: 1040px;
  width: 100%;
}
.c-list-filter .c-list-filter__group {
  display: flex;
  flex-direction: column;
  gap: 18px;
  width: 100%;
}
.c-list-filter .c-list-filter__pills {
  display: grid;
  gap: 16px 12px;
  grid-template-columns: repeat(3, 1fr);
  list-style: none;
  margin: 0 auto;
  max-width: 768px;
  padding: 0;
  width: 100%;
}
@media screen and (max-width: 650px) {
  .c-list-filter .c-list-filter__pills {
    grid-template-columns: repeat(2, 1fr);
  }
}
.c-list-filter .c-list-filter__pills li {
  margin: 0;
  padding: 0;
}
.c-list-filter .c-list-filter__pills button {
  align-items: center;
  background: #fff;
  border: 1px solid #279af2;
  border-radius: 30px;
  box-sizing: border-box;
  color: #279af2;
  cursor: pointer;
  display: flex;
  font-size: 16px;
  font-weight: 500;
  height: 40px;
  justify-content: center;
  line-height: normal;
  padding: 0 12px;
  text-align: center;
  transition: background-color 0.2s, opacity 0.2s;
  width: 100%;
}
.c-list-filter .c-list-filter__pills button:hover {
  opacity: 0.8;
}
.c-list-filter .c-list-filter__pills button.is-current {
  background: #dcf4ff;
}

.c-list-need {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  justify-content: center;
  width: 100%;
}
.c-list-need .c-list-need__item {
  align-items: center;
  background: rgba(255, 255, 255, 0.8);
  border-bottom: 1px solid var(--color-main, #4FA0C5);
  box-sizing: border-box;
  display: flex;
  gap: 30px;
  height: 70px;
  padding: 10px 20px;
  width: 300px;
}
.c-list-need .c-list-need__icon {
  display: block;
  flex-shrink: 0;
  height: 50px;
  margin: 0;
  width: 50px;
}
.c-list-need .c-list-need__icon img {
  display: block;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
  width: 100%;
}
.c-list-need .c-list-need__text {
  color: var(--color-main, #4FA0C5);
  flex: 1 1 0;
  font-size: 14px;
  font-weight: 700;
  line-height: normal;
  margin: 0;
  min-width: 0;
}

.c-list-dosage {
  background: #fff;
  border: 1px solid #e5e7eb;
  border-radius: 10px;
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  gap: 16px;
  list-style: none;
  margin: 0;
  padding: 25px;
  width: 100%;
}
.c-list-dosage .c-list-dosage__title {
  color: #1e2939;
  font-size: 18px;
  font-weight: 700;
  line-height: 28px;
  margin: 0;
}
.c-list-dosage .c-list-dosage__items {
  display: flex;
  flex-direction: column;
  gap: 12px;
  list-style: none;
  margin: 0;
  padding: 0;
  width: 100%;
}
.c-list-dosage .c-list-dosage__item {
  align-items: center;
  background: #f9fafb;
  border-radius: 10px;
  box-sizing: border-box;
  display: flex;
  gap: 12px;
  justify-content: space-between;
  min-height: 60px;
  padding: 6px 12px;
  width: 100%;
}
.c-list-dosage .c-list-dosage__label {
  align-items: center;
  display: flex;
  flex: 1 1 0;
  gap: 12px;
  min-width: 0;
}
.c-list-dosage .c-list-dosage__badge {
  align-items: center;
  background: linear-gradient(270deg, #d9bd96 0%, #905f2e 100%);
  border-radius: 50%;
  box-sizing: border-box;
  color: #fff;
  display: flex;
  flex-shrink: 0;
  font-size: 16px;
  font-weight: 700;
  height: 48px;
  justify-content: center;
  line-height: 24px;
  width: 48px;
}
.c-list-dosage .c-list-dosage__unit {
  color: #4a5565;
  font-size: 14px;
  font-weight: 400;
  line-height: 20px;
  margin: 0;
}
.c-list-dosage .c-list-dosage__value {
  color: #1e2939;
  flex-shrink: 0;
  font-size: 18px;
  font-weight: 700;
  line-height: 28px;
  margin: 0;
  white-space: nowrap;
}
.c-list-dosage .c-list-dosage__note {
  color: #1e2939;
  font-size: 16px;
  font-weight: 400;
  line-height: 28px;
  margin: 0;
  text-align: center;
  width: 100%;
}

.p-contact-form {
  margin: 0 auto;
  max-width: 700px;
  width: 100%;
}
.p-contact-form .wpforms-container,
.p-contact-form .wpforms-container-full {
  margin: 0 auto;
}
.p-contact-form .wpforms-container .wpforms-form .wpforms-field-container,
.p-contact-form .wpforms-container-full .wpforms-form .wpforms-field-container {
  display: grid;
  gap: 40px;
}
.p-contact-form .wpforms-container .wpforms-form .wpforms-field,
.p-contact-form .wpforms-container-full .wpforms-form .wpforms-field {
  overflow: hidden;
  padding: 0;
  position: relative;
}
.p-contact-form .wpforms-container .wpforms-form .wpforms-field fieldset,
.p-contact-form .wpforms-container-full .wpforms-form .wpforms-field fieldset {
  display: contents;
}
.p-contact-form .wpforms-container .wpforms-form .wpforms-field.wpforms-field-checkbox ul,
.p-contact-form .wpforms-container-full .wpforms-form .wpforms-field.wpforms-field-checkbox ul {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 16px 40px;
  list-style: none;
  margin: 0 !important;
  padding: 0;
}
@media screen and (max-width: 650px) {
  .p-contact-form .wpforms-container .wpforms-form .wpforms-field.wpforms-field-checkbox ul,
  .p-contact-form .wpforms-container-full .wpforms-form .wpforms-field.wpforms-field-checkbox ul {
    flex-direction: column;
    align-items: flex-start;
  }
}
.p-contact-form .wpforms-container .wpforms-form .wpforms-field.wpforms-field-checkbox ul li,
.p-contact-form .wpforms-container-full .wpforms-form .wpforms-field.wpforms-field-checkbox ul li {
  margin: 0 !important;
}
.p-contact-form .wpforms-container .wpforms-form .wpforms-field.wpforms-field-checkbox ul li input[type=checkbox],
.p-contact-form .wpforms-container .wpforms-form .wpforms-field.wpforms-field-checkbox ul li input[type=radio],
.p-contact-form .wpforms-container-full .wpforms-form .wpforms-field.wpforms-field-checkbox ul li input[type=checkbox],
.p-contact-form .wpforms-container-full .wpforms-form .wpforms-field.wpforms-field-checkbox ul li input[type=radio] {
  display: none !important;
}
.p-contact-form .wpforms-container .wpforms-form .wpforms-field.wpforms-field-checkbox ul li input[type=checkbox] + label,
.p-contact-form .wpforms-container .wpforms-form .wpforms-field.wpforms-field-checkbox ul li input[type=radio] + label,
.p-contact-form .wpforms-container-full .wpforms-form .wpforms-field.wpforms-field-checkbox ul li input[type=checkbox] + label,
.p-contact-form .wpforms-container-full .wpforms-form .wpforms-field.wpforms-field-checkbox ul li input[type=radio] + label {
  box-sizing: border-box;
  cursor: pointer;
  display: inline-block;
  line-height: 1.8;
  padding: 0 0 0 35px;
  position: relative;
  text-align: left;
  width: auto;
}
.p-contact-form .wpforms-container .wpforms-form .wpforms-field.wpforms-field-checkbox ul li input[type=checkbox] + label::before,
.p-contact-form .wpforms-container .wpforms-form .wpforms-field.wpforms-field-checkbox ul li input[type=radio] + label::before,
.p-contact-form .wpforms-container-full .wpforms-form .wpforms-field.wpforms-field-checkbox ul li input[type=checkbox] + label::before,
.p-contact-form .wpforms-container-full .wpforms-form .wpforms-field.wpforms-field-checkbox ul li input[type=radio] + label::before {
  background: #fff;
  border: 1px solid var(--color-main);
  border-radius: 4px;
  content: "";
  display: block;
  height: 27px;
  position: absolute;
  left: 0;
  top: calc(50% - 13.5px);
  width: 27px;
}
.p-contact-form .wpforms-container .wpforms-form .wpforms-field.wpforms-field-checkbox ul li input[type=checkbox] + label::after,
.p-contact-form .wpforms-container .wpforms-form .wpforms-field.wpforms-field-checkbox ul li input[type=radio] + label::after,
.p-contact-form .wpforms-container-full .wpforms-form .wpforms-field.wpforms-field-checkbox ul li input[type=checkbox] + label::after,
.p-contact-form .wpforms-container-full .wpforms-form .wpforms-field.wpforms-field-checkbox ul li input[type=radio] + label::after {
  background: url("images/icon-check.svg") no-repeat center center/contain;
  content: "";
  display: block;
  height: 15px;
  opacity: 0;
  position: absolute;
  top: calc(50% - 7.5px);
  left: 6px;
  transition: transform 0.1s ease-in-out, opacity 0.1s ease-in-out;
  width: 17px;
}
.p-contact-form .wpforms-container .wpforms-form .wpforms-field.wpforms-field-checkbox ul li input[type=checkbox]:checked + label,
.p-contact-form .wpforms-container .wpforms-form .wpforms-field.wpforms-field-checkbox ul li input[type=radio]:checked + label,
.p-contact-form .wpforms-container-full .wpforms-form .wpforms-field.wpforms-field-checkbox ul li input[type=checkbox]:checked + label,
.p-contact-form .wpforms-container-full .wpforms-form .wpforms-field.wpforms-field-checkbox ul li input[type=radio]:checked + label {
  color: var(--color-font, #000);
}
.p-contact-form .wpforms-container .wpforms-form .wpforms-field.wpforms-field-checkbox ul li input[type=checkbox]:checked + label::after,
.p-contact-form .wpforms-container .wpforms-form .wpforms-field.wpforms-field-checkbox ul li input[type=radio]:checked + label::after,
.p-contact-form .wpforms-container-full .wpforms-form .wpforms-field.wpforms-field-checkbox ul li input[type=checkbox]:checked + label::after,
.p-contact-form .wpforms-container-full .wpforms-form .wpforms-field.wpforms-field-checkbox ul li input[type=radio]:checked + label::after {
  opacity: 1;
}
.p-contact-form .wpforms-container .wpforms-form .wpforms-field.wpforms-field-checkbox ul li label,
.p-contact-form .wpforms-container-full .wpforms-form .wpforms-field.wpforms-field-checkbox ul li label {
  letter-spacing: 0;
  line-height: 1.8;
  margin: 0;
}
.p-contact-form .wpforms-container .wpforms-form .wpforms-field.wpforms-field-checkbox.agree-checkbox,
.p-contact-form .wpforms-container-full .wpforms-form .wpforms-field.wpforms-field-checkbox.agree-checkbox {
  display: block;
  margin: 0 auto;
  max-width: 520px;
  width: 100%;
}
.p-contact-form .wpforms-container .wpforms-form .wpforms-field.wpforms-field-checkbox.agree-checkbox label,
.p-contact-form .wpforms-container-full .wpforms-form .wpforms-field.wpforms-field-checkbox.agree-checkbox label {
  display: none;
}
.p-contact-form .wpforms-container .wpforms-form .wpforms-field.wpforms-field-checkbox.agree-checkbox .wpforms-field-label-inline,
.p-contact-form .wpforms-container-full .wpforms-form .wpforms-field.wpforms-field-checkbox.agree-checkbox .wpforms-field-label-inline {
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 180%;
  margin: 0 auto;
  padding: 0 0 0 35px;
  width: -moz-fit-content;
  width: fit-content;
}
.p-contact-form .wpforms-container .wpforms-form .wpforms-field.wpforms-field-checkbox.agree-checkbox .wpforms-field-label-inline a,
.p-contact-form .wpforms-container-full .wpforms-form .wpforms-field.wpforms-field-checkbox.agree-checkbox .wpforms-field-label-inline a {
  text-decoration: underline;
  text-decoration-thickness: 0.5px;
  text-underline-offset: 3px;
}
.p-contact-form .wpforms-container .wpforms-form .wpforms-field.wpforms-field-checkbox.agree-checkbox .wpforms-field-label-inline a:hover,
.p-contact-form .wpforms-container-full .wpforms-form .wpforms-field.wpforms-field-checkbox.agree-checkbox .wpforms-field-label-inline a:hover {
  text-decoration: none;
}
.p-contact-form .wpforms-container .wpforms-form .wpforms-field.wpforms-field-checkbox.agree-checkbox ul,
.p-contact-form .wpforms-container-full .wpforms-form .wpforms-field.wpforms-field-checkbox.agree-checkbox ul {
  display: flex;
  justify-content: center;
  margin: 0 !important;
}
.p-contact-form .wpforms-container .wpforms-form .wpforms-field.wpforms-field-checkbox.agree-checkbox ul li,
.p-contact-form .wpforms-container-full .wpforms-form .wpforms-field.wpforms-field-checkbox.agree-checkbox ul li {
  margin: 0 !important;
}
.p-contact-form .wpforms-container .wpforms-form .wpforms-field.wpforms-field-textarea,
.p-contact-form .wpforms-container-full .wpforms-form .wpforms-field.wpforms-field-textarea {
  padding: 0;
}
.p-contact-form .wpforms-container .wpforms-form .wpforms-field .wpforms-field-label,
.p-contact-form .wpforms-container-full .wpforms-form .wpforms-field .wpforms-field-label {
  align-items: center;
  color: #000;
  display: flex;
  font-size: 18px;
  font-weight: 500;
  gap: 12px;
  line-height: 150%;
  letter-spacing: 0;
  margin: 0 0 16px;
}
.p-contact-form .wpforms-container .wpforms-form .wpforms-field .wpforms-field-label-inline,
.p-contact-form .wpforms-container-full .wpforms-form .wpforms-field .wpforms-field-label-inline {
  color: #000;
  font-size: 16px;
  font-weight: 400;
  line-height: 180%;
  letter-spacing: 0;
}
.p-contact-form .wpforms-container .wpforms-form .wpforms-field .wpforms-required-label,
.p-contact-form .wpforms-container-full .wpforms-form .wpforms-field .wpforms-required-label {
  background: #EE5B5D;
  border-radius: 4px;
  color: #FFF;
  font-size: 14px;
  font-style: normal;
  font-weight: 400;
  line-height: 150%;
  order: -1;
  padding: 2px 8px;
}
.p-contact-form .wpforms-container .wpforms-form .wpforms-field .wpforms-optional-label,
.p-contact-form .wpforms-container-full .wpforms-form .wpforms-field .wpforms-optional-label {
  background: #777;
  border-radius: 4px;
  color: #FFF;
  font-size: 14px;
  font-style: normal;
  font-weight: 400;
  line-height: 150%;
  order: -1;
  padding: 2px 8px;
}
.p-contact-form .wpforms-container .wpforms-form .wpforms-field.wpforms-field-html,
.p-contact-form .wpforms-container-full .wpforms-form .wpforms-field.wpforms-field-html {
  padding: 0 !important;
}
.p-contact-form .wpforms-container .wpforms-form .wpforms-field .wpforms-container-full,
.p-contact-form .wpforms-container .wpforms-form .wpforms-field input[type=tel],
.p-contact-form .wpforms-container .wpforms-form .wpforms-field input[type=text],
.p-contact-form .wpforms-container .wpforms-form .wpforms-field input[type=email],
.p-contact-form .wpforms-container .wpforms-form .wpforms-field input[type=password],
.p-contact-form .wpforms-container .wpforms-form .wpforms-field textarea,
.p-contact-form .wpforms-container-full .wpforms-form .wpforms-field .wpforms-container-full,
.p-contact-form .wpforms-container-full .wpforms-form .wpforms-field input[type=tel],
.p-contact-form .wpforms-container-full .wpforms-form .wpforms-field input[type=text],
.p-contact-form .wpforms-container-full .wpforms-form .wpforms-field input[type=email],
.p-contact-form .wpforms-container-full .wpforms-form .wpforms-field input[type=password],
.p-contact-form .wpforms-container-full .wpforms-form .wpforms-field textarea {
  background: #FFF;
  border-radius: 4px;
  border: 1px solid #D2D2D2;
  box-sizing: border-box;
  color: #000;
  font-size: 16px;
  height: auto;
  line-height: 180%;
  letter-spacing: 0;
  outline: none !important;
  padding: 12px 16px;
  width: 100%;
}
.p-contact-form .wpforms-container .wpforms-form .wpforms-field .wpforms-container-full::-moz-placeholder, .p-contact-form .wpforms-container .wpforms-form .wpforms-field input[type=tel]::-moz-placeholder, .p-contact-form .wpforms-container .wpforms-form .wpforms-field input[type=text]::-moz-placeholder, .p-contact-form .wpforms-container .wpforms-form .wpforms-field input[type=email]::-moz-placeholder, .p-contact-form .wpforms-container .wpforms-form .wpforms-field input[type=password]::-moz-placeholder, .p-contact-form .wpforms-container .wpforms-form .wpforms-field textarea::-moz-placeholder, .p-contact-form .wpforms-container-full .wpforms-form .wpforms-field .wpforms-container-full::-moz-placeholder, .p-contact-form .wpforms-container-full .wpforms-form .wpforms-field input[type=tel]::-moz-placeholder, .p-contact-form .wpforms-container-full .wpforms-form .wpforms-field input[type=text]::-moz-placeholder, .p-contact-form .wpforms-container-full .wpforms-form .wpforms-field input[type=email]::-moz-placeholder, .p-contact-form .wpforms-container-full .wpforms-form .wpforms-field input[type=password]::-moz-placeholder, .p-contact-form .wpforms-container-full .wpforms-form .wpforms-field textarea::-moz-placeholder {
  color: #AAA;
}
.p-contact-form .wpforms-container .wpforms-form .wpforms-field .wpforms-container-full::placeholder,
.p-contact-form .wpforms-container .wpforms-form .wpforms-field input[type=tel]::placeholder,
.p-contact-form .wpforms-container .wpforms-form .wpforms-field input[type=text]::placeholder,
.p-contact-form .wpforms-container .wpforms-form .wpforms-field input[type=email]::placeholder,
.p-contact-form .wpforms-container .wpforms-form .wpforms-field input[type=password]::placeholder,
.p-contact-form .wpforms-container .wpforms-form .wpforms-field textarea::placeholder,
.p-contact-form .wpforms-container-full .wpforms-form .wpforms-field .wpforms-container-full::placeholder,
.p-contact-form .wpforms-container-full .wpforms-form .wpforms-field input[type=tel]::placeholder,
.p-contact-form .wpforms-container-full .wpforms-form .wpforms-field input[type=text]::placeholder,
.p-contact-form .wpforms-container-full .wpforms-form .wpforms-field input[type=email]::placeholder,
.p-contact-form .wpforms-container-full .wpforms-form .wpforms-field input[type=password]::placeholder,
.p-contact-form .wpforms-container-full .wpforms-form .wpforms-field textarea::placeholder {
  color: #AAA;
}
.p-contact-form .wpforms-container .wpforms-form .wpforms-field .wpforms-container-full:hover, .p-contact-form .wpforms-container .wpforms-form .wpforms-field .wpforms-container-full:focus,
.p-contact-form .wpforms-container .wpforms-form .wpforms-field input[type=tel]:hover,
.p-contact-form .wpforms-container .wpforms-form .wpforms-field input[type=tel]:focus,
.p-contact-form .wpforms-container .wpforms-form .wpforms-field input[type=text]:hover,
.p-contact-form .wpforms-container .wpforms-form .wpforms-field input[type=text]:focus,
.p-contact-form .wpforms-container .wpforms-form .wpforms-field input[type=email]:hover,
.p-contact-form .wpforms-container .wpforms-form .wpforms-field input[type=email]:focus,
.p-contact-form .wpforms-container .wpforms-form .wpforms-field input[type=password]:hover,
.p-contact-form .wpforms-container .wpforms-form .wpforms-field input[type=password]:focus,
.p-contact-form .wpforms-container .wpforms-form .wpforms-field textarea:hover,
.p-contact-form .wpforms-container .wpforms-form .wpforms-field textarea:focus,
.p-contact-form .wpforms-container-full .wpforms-form .wpforms-field .wpforms-container-full:hover,
.p-contact-form .wpforms-container-full .wpforms-form .wpforms-field .wpforms-container-full:focus,
.p-contact-form .wpforms-container-full .wpforms-form .wpforms-field input[type=tel]:hover,
.p-contact-form .wpforms-container-full .wpforms-form .wpforms-field input[type=tel]:focus,
.p-contact-form .wpforms-container-full .wpforms-form .wpforms-field input[type=text]:hover,
.p-contact-form .wpforms-container-full .wpforms-form .wpforms-field input[type=text]:focus,
.p-contact-form .wpforms-container-full .wpforms-form .wpforms-field input[type=email]:hover,
.p-contact-form .wpforms-container-full .wpforms-form .wpforms-field input[type=email]:focus,
.p-contact-form .wpforms-container-full .wpforms-form .wpforms-field input[type=password]:hover,
.p-contact-form .wpforms-container-full .wpforms-form .wpforms-field input[type=password]:focus,
.p-contact-form .wpforms-container-full .wpforms-form .wpforms-field textarea:hover,
.p-contact-form .wpforms-container-full .wpforms-form .wpforms-field textarea:focus {
  box-shadow: none !important;
  border-color: var(--color-main, #4FA0C5) !important;
  outline: none !important;
}
.p-contact-form .wpforms-container .wpforms-form .wpforms-field .wpforms-container-full.wpforms-error,
.p-contact-form .wpforms-container .wpforms-form .wpforms-field input[type=tel].wpforms-error,
.p-contact-form .wpforms-container .wpforms-form .wpforms-field input[type=text].wpforms-error,
.p-contact-form .wpforms-container .wpforms-form .wpforms-field input[type=email].wpforms-error,
.p-contact-form .wpforms-container .wpforms-form .wpforms-field input[type=password].wpforms-error,
.p-contact-form .wpforms-container .wpforms-form .wpforms-field textarea.wpforms-error,
.p-contact-form .wpforms-container-full .wpforms-form .wpforms-field .wpforms-container-full.wpforms-error,
.p-contact-form .wpforms-container-full .wpforms-form .wpforms-field input[type=tel].wpforms-error,
.p-contact-form .wpforms-container-full .wpforms-form .wpforms-field input[type=text].wpforms-error,
.p-contact-form .wpforms-container-full .wpforms-form .wpforms-field input[type=email].wpforms-error,
.p-contact-form .wpforms-container-full .wpforms-form .wpforms-field input[type=password].wpforms-error,
.p-contact-form .wpforms-container-full .wpforms-form .wpforms-field textarea.wpforms-error {
  border-color: rgb(199, 0, 0);
}
.p-contact-form .wpforms-container .wpforms-form .wpforms-field textarea.wpforms-field-medium,
.p-contact-form .wpforms-container-full .wpforms-form .wpforms-field textarea.wpforms-field-medium {
  height: 243px;
  min-height: 180px;
}
.p-contact-form .wpforms-container .wpforms-form .wpforms-field textarea.wpforms-error,
.p-contact-form .wpforms-container-full .wpforms-form .wpforms-field textarea.wpforms-error {
  border-color: rgb(199, 0, 0);
}
.p-contact-form .wpforms-container .wpforms-form .wpforms-field .wpforms-error[role=alert],
.p-contact-form .wpforms-container-full .wpforms-form .wpforms-field .wpforms-error[role=alert] {
  color: rgb(199, 0, 0);
}
.p-contact-form .wpforms-container .wpforms-form .wpforms-submit-container,
.p-contact-form .wpforms-container-full .wpforms-form .wpforms-submit-container {
  max-width: 283px;
  margin: 40px auto 0;
  text-align: center;
}
.p-contact-form .wpforms-container .wpforms-form .wpforms-submit,
.p-contact-form .wpforms-container-full .wpforms-form .wpforms-submit {
  align-items: center;
  background: var(--color-main, #4FA0C5) !important;
  border: none !important;
  border-radius: 10px;
  color: #FFF !important;
  cursor: pointer;
  display: inline-flex !important;
  font-family: "Noto Sans JP", sans-serif !important;
  font-size: 16px;
  font-style: normal;
  font-weight: 700;
  gap: 60px;
  height: auto !important;
  justify-content: center;
  letter-spacing: 0;
  line-height: normal;
  max-width: 100%;
  padding: 16px 16px 16px 4px !important;
  position: relative;
  width: 283px !important;
}
.p-contact-form .wpforms-container .wpforms-form .wpforms-submit::after,
.p-contact-form .wpforms-container-full .wpforms-form .wpforms-submit::after {
  background: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="27" height="27" viewBox="0 0 27 27" fill="none"><circle cx="13.5" cy="13.5" r="13.5" fill="white"/><path d="M11.25 8.4375L16.3125 13.5L11.25 18.5625" stroke="%234FA0C5" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/></svg>') no-repeat center center/contain;
  content: "";
  display: block;
  height: 27px;
  margin: auto;
  position: absolute;
  inset: 0 20px 0 auto;
  width: 27px;
}
.p-contact-form .wpforms-container .wpforms-form .wpforms-submit:hover,
.p-contact-form .wpforms-container-full .wpforms-form .wpforms-submit:hover {
  opacity: 0.7;
}

.post-type-case .is-root-container,
.post-type-news .is-root-container,
.c-article-contents {
  display: flex;
  flex-direction: column;
  gap: 16px;
  width: 100%;
}
.post-type-case .is-root-container h2,
.post-type-news .is-root-container h2,
.c-article-contents h2 {
  border-bottom: 0.5px solid #000;
  box-sizing: border-box;
  color: #000;
  font-size: 16px;
  font-weight: 700;
  line-height: 1.5;
  margin: 0;
  padding: 10px 0;
}
.post-type-case .is-root-container h3,
.post-type-news .is-root-container h3,
.c-article-contents h3 {
  color: #666;
  font-size: 18px;
  font-weight: 700;
  line-height: 28px;
  margin: 0;
}
.post-type-case .is-root-container p,
.post-type-news .is-root-container p,
.c-article-contents p {
  color: #000;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.5;
  margin: 0;
}
.post-type-case .is-root-container p a,
.post-type-news .is-root-container p a,
.c-article-contents p a {
  color: #07d2d9;
  font-size: 16px;
  line-height: 28px;
  text-decoration: underline;
  text-underline-position: from-font;
}
.post-type-case .is-root-container p a:hover,
.post-type-news .is-root-container p a:hover,
.c-article-contents p a:hover {
  text-decoration: none;
}
.post-type-case .is-root-container ul,
.post-type-case .is-root-container ol,
.post-type-news .is-root-container ul,
.post-type-news .is-root-container ol,
.c-article-contents ul,
.c-article-contents ol {
  color: #000;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.5;
  margin: 0;
  padding: 0 0 0 24px;
}
.post-type-case .is-root-container ul,
.post-type-news .is-root-container ul,
.c-article-contents ul {
  list-style: disc;
}
.post-type-case .is-root-container ol,
.post-type-news .is-root-container ol,
.c-article-contents ol {
  counter-reset: article-ol;
  line-height: 28px;
  list-style: none;
  padding: 0;
}
.post-type-case .is-root-container ol li,
.post-type-news .is-root-container ol li,
.c-article-contents ol li {
  counter-increment: article-ol;
}
.post-type-case .is-root-container ol li::before,
.post-type-news .is-root-container ol li::before,
.c-article-contents ol li::before {
  content: counter(article-ol) ".";
}
.post-type-case .is-root-container .wp-block-quote,
.post-type-news .is-root-container .wp-block-quote,
.c-article-contents .wp-block-quote {
  border: 0.5px solid #666;
  box-sizing: border-box;
  margin: 0;
  padding: 10px 20px;
}
.post-type-case .is-root-container .wp-block-quote p,
.post-type-news .is-root-container .wp-block-quote p,
.c-article-contents .wp-block-quote p {
  color: #666;
  font-size: 14px;
  font-weight: 500;
  line-height: 28px;
}
.post-type-case .is-root-container .wp-block-quote cite,
.post-type-news .is-root-container .wp-block-quote cite,
.c-article-contents .wp-block-quote cite {
  color: #666;
  display: block;
  font-size: 12px;
  font-style: normal;
  font-weight: 400;
  line-height: 1.5;
  margin: 4px 0 0;
}

.c-article-download {
  display: flex;
  flex-direction: column;
  gap: 20px;
  width: 100%;
}
.c-article-download .c-article-download__list {
  display: grid;
  gap: 0 32px;
  grid-template-columns: repeat(3, 1fr);
}
@media screen and (max-width: 1200px) {
  .c-article-download .c-article-download__list {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media screen and (max-width: 650px) {
  .c-article-download .c-article-download__list {
    grid-template-columns: 1fr;
  }
}

.c-article-pager {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  justify-content: center;
}
.c-article-pager .page-numbers {
  align-items: center;
  background: #d9d9d9;
  border-radius: 30px;
  color: #000;
  display: flex;
  font-size: 14px;
  font-weight: 500;
  height: 44px;
  justify-content: center;
  line-height: normal;
  text-decoration: none;
  transition: opacity 0.3s;
  width: 44px;
}
@media screen and (max-width: 650px) {
  .c-article-pager .page-numbers {
    height: 32px;
    width: 32px;
  }
}
.c-article-pager .page-numbers:hover {
  opacity: 0.7;
}
.c-article-pager .page-numbers.current {
  background: var(--color-main);
  color: #fff;
  pointer-events: none;
}
.c-article-pager .page-numbers.prev, .c-article-pager .page-numbers.next {
  background: transparent;
  height: 24px;
  margin: 0 6px;
  width: 12px;
}
.c-article-pager .page-numbers.prev:hover, .c-article-pager .page-numbers.next:hover {
  background: transparent;
}
.c-article-pager .page-numbers.prev::before, .c-article-pager .page-numbers.next::before {
  background: url("images/icon-arrow-filled.svg") no-repeat center/contain;
  content: "";
  display: block;
  height: 24px;
  width: 12px;
}
.c-article-pager .page-numbers.prev::before {
  transform: rotate(180deg);
}
.c-article-pager .page-numbers.dots {
  background: transparent;
  color: #000;
}
.c-article-pager .page-numbers.dots:hover {
  background: transparent;
  opacity: 1;
}

.c-badge-tag {
  background: var(--back-beige, #F7F7ED);
  border-radius: 80px;
  color: var(--deepbrown, #625F55);
  font-size: 16px;
  font-style: normal;
  font-weight: 500;
  line-height: 180%; /* 28.8px */
  letter-spacing: 0.8px;
  padding: 8px 40px;
  width: -moz-fit-content;
  width: fit-content;
}
.c-badge-tag.is-small {
  font-size: 14px;
  line-height: 120%; /* 16.8px */
  padding: 12px 20px;
}
.c-badge-tag.is-lightgreen {
  background: #F7F7ED;
}
.c-badge-tag.is-lightpink {
  background: #F9F5F5;
}
.c-badge-tag.is-navy {
  background: #121233;
  color: #fff;
}

.c-badge-label {
  align-items: center;
  background: #999;
  border-radius: 10px;
  color: #fff;
  display: inline-flex;
  font-size: 12px;
  font-weight: 700;
  justify-content: center;
  line-height: normal;
  margin: 0;
  padding: 3px 10px;
  width: -moz-fit-content;
  width: fit-content;
}

.c-badge-product {
  align-items: center;
  background: #279af2;
  border-radius: 10px;
  box-sizing: border-box;
  color: #fff;
  display: inline-flex;
  font-size: 20px;
  font-weight: 500;
  justify-content: center;
  line-height: normal;
  margin: 0;
  padding: 10px 20px;
  white-space: nowrap;
  width: -moz-fit-content;
  width: fit-content;
}
.c-badge-product.is-soil {
  background: #a57e6b;
}
.c-badge-product.is-gradient {
  background: linear-gradient(90deg, #29d8ff 0%, #0090ff 100%);
}
.c-badge-product.is-gradient.is-soil {
  background: linear-gradient(90deg, #d9bd96 0%, #905f2e 100%);
}

.c-badge-category {
  align-items: center;
  background: transparent;
  border: 1px solid #0090ff;
  border-radius: 20px;
  box-sizing: border-box;
  color: #0090ff;
  display: inline-flex;
  font-size: 16px;
  font-weight: 700;
  justify-content: center;
  letter-spacing: 11.2px;
  line-height: normal;
  margin: 0;
  padding: 5px 10px 5px 20px;
  text-align: center;
  white-space: nowrap;
  width: -moz-fit-content;
  width: fit-content;
}
.c-badge-category.is-soil {
  border-color: #a57e6b;
  color: #a57e6b;
}
.c-badge-category.is-white {
  border-color: #fff;
  color: #fff;
}

.c-card-brochure {
  align-items: center;
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  gap: 16px;
  justify-content: flex-end;
  padding: 20px 0;
  width: 100%;
}
.c-card-brochure .c-card-brochure__title {
  box-sizing: border-box;
  color: #666;
  font-size: 20px;
  font-style: normal;
  font-weight: 700;
  line-height: 1.5;
  margin: 0;
  padding: 10px;
  text-align: center;
  width: 100%;
}
.c-card-brochure .c-card-brochure__title span {
  display: block;
  font-size: 16px;
  font-weight: 500;
}
.c-card-brochure .c-card-brochure__title em {
  display: block;
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
}
.c-card-brochure .c-card-brochure__image {
  align-items: center;
  display: flex;
  height: 210px;
  justify-content: center;
  margin: 0;
  width: 100%;
}
.c-card-brochure .c-card-brochure__image img {
  display: block;
  height: 100% !important;
  -o-object-fit: contain;
     object-fit: contain;
  width: 100%;
}
.c-card-brochure .c-card-brochure__button {
  margin: 0;
}
.c-card-brochure .c-card-brochure__button a {
  align-items: center;
  border: 1px solid #666;
  border-radius: 20px;
  box-sizing: border-box;
  color: #666;
  display: inline-flex;
  font-size: 16px;
  font-weight: 500;
  gap: 10px;
  height: 50px;
  justify-content: center;
  line-height: normal;
  padding: 10px 20px;
  text-decoration: none;
  width: 267px;
}
@media screen and (max-width: 650px) {
  .c-card-brochure .c-card-brochure__button a {
    max-width: 100%;
    width: 100%;
  }
}
.c-card-brochure .c-card-brochure__button a:hover {
  opacity: 0.7;
}
.c-card-brochure .c-card-brochure__button a strong {
  font-weight: 700;
  text-decoration: underline;
}
.c-card-brochure .c-card-brochure__button a::after {
  background-color: currentColor;
  content: "";
  display: block;
  flex-shrink: 0;
  height: 20px;
  mask: url("images/icon-download.svg") center/37.5px 37.5px no-repeat;
  -webkit-mask: url("images/icon-download.svg") center/37.5px 37.5px no-repeat;
  width: 20px;
}

.c-card-case {
  background: #fff;
  border: 1px solid #d9d9d9;
  border-radius: 20px;
  box-shadow: 3px 3px 2px rgba(0, 0, 0, 0.3);
  box-sizing: border-box;
  color: #000;
  display: flex;
  flex-direction: column;
  gap: 10px;
  height: 100%;
  padding: 15px;
  text-decoration: none;
  transition: opacity 0.3s;
  width: 100%;
}
.c-card-case:hover {
  opacity: 0.85;
}
.c-card-case .c-card-case__images {
  display: flex;
  flex-direction: column;
  gap: 8px;
  width: 100%;
}
.c-card-case .c-card-case__image-main,
.c-card-case .c-card-case__image-sub {
  display: block;
  margin: 0;
  overflow: hidden;
  width: 100%;
}
.c-card-case .c-card-case__image-main img,
.c-card-case .c-card-case__image-sub img {
  display: block;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  width: 100%;
}
.c-card-case .c-card-case__image-main {
  aspect-ratio: 300/161;
}
.c-card-case .c-card-case__thumbs {
  display: grid;
  gap: 8px;
  grid-template-columns: 1fr 1fr;
  width: 100%;
}
.c-card-case .c-card-case__image-sub {
  aspect-ratio: 146/85;
}
.c-card-case .c-card-case__body {
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;
  gap: 5px;
  width: 100%;
}
.c-card-case .c-card-case__genre {
  border-bottom: 1px solid var(--color-main, #4FA0C5);
  color: #000;
  font-size: 14px;
  font-weight: 500;
  line-height: 1.5;
  margin: 0;
  padding: 0 0 5px;
  width: 100%;
}
.c-card-case .c-card-case__title {
  color: #000;
  font-size: 16px;
  font-weight: 700;
  line-height: 1.5;
  margin: 0;
}
.c-card-case .c-card-case__region {
  color: #000;
  font-size: 12px;
  font-weight: 500;
  line-height: 1.5;
  margin: 0;
}
.c-card-case .c-card-case__tags {
  display: flex;
  flex-wrap: wrap;
  gap: 5px;
  list-style: none;
  margin: 0;
  padding: 0;
}
.c-card-case .c-card-case__tags li {
  background: #fff;
  border: 1px solid #000;
  border-radius: 15px;
  box-sizing: border-box;
  color: #000;
  font-size: 12px;
  font-weight: 700;
  line-height: 1.5;
  padding: 2px 10px;
  text-align: center;
  white-space: nowrap;
}
.c-card-case .c-card-case__dates {
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
  margin-top: auto;
  padding-top: 5px;
}
.c-card-case .c-card-case__dates p {
  color: #000;
  font-size: 10px;
  font-weight: 300;
  line-height: 1.5;
  margin: 0;
}

.c-card-product {
  background: #fff;
  border-radius: 10px;
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  gap: 24px;
  align-items: center;
  max-width: 100%;
  padding: 30px;
  width: 768px;
}
.c-card-product.is-water .c-card-product__title {
  color: #279af2;
}
.c-card-product.is-soil .c-card-product__title {
  color: #a57e6b;
}
.c-card-product .c-card-product__header {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 13px;
  justify-content: flex-start;
  width: 100%;
}
.c-card-product .c-card-product__items {
  display: flex;
  flex-direction: column;
  gap: 32px;
  width: 100%;
}
.c-card-product .c-card-product__item {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 24px;
  width: 100%;
}
.c-card-product .c-card-product__image {
  border-radius: 10px;
  flex-shrink: 0;
  height: 183px;
  margin: 0;
  overflow: hidden;
  width: 280px;
}
@media screen and (max-width: 650px) {
  .c-card-product .c-card-product__image {
    height: auto;
    width: 100%;
  }
}
.c-card-product .c-card-product__image img {
  display: block;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  width: 100%;
}
@media screen and (max-width: 650px) {
  .c-card-product .c-card-product__image img {
    height: auto;
  }
}
.c-card-product .c-card-product__body {
  display: flex;
  flex: 1 1 0;
  flex-direction: column;
  gap: 16px;
  justify-content: center;
  min-width: 0;
}
.c-card-product .c-card-product__title {
  font-size: 20px;
  font-weight: 700;
  line-height: normal;
  margin: 0;
}
.c-card-product .c-card-product__text {
  color: #000;
  font-size: 16px;
  font-weight: 400;
  line-height: normal;
  margin: 0;
}
.c-card-product .c-card-product__text strong {
  display: block;
  font-weight: 700;
  margin: 0 0 8px;
}
.c-card-product .c-card-product__button {
  margin: 0;
}

.c-card-lineup {
  box-sizing: border-box;
  color: inherit;
  display: grid;
  gap: 24px;
  grid-template-rows: auto 1fr;
  height: 100%;
  max-width: 100%;
  text-decoration: none;
  width: 315px;
}
.c-card-lineup.is-soil .c-card-lineup__category {
  border-color: #a57e6b;
  color: #a57e6b;
}
.c-card-lineup .c-card-lineup__name {
  margin: 0;
}
.c-card-lineup .c-card-lineup__body {
  background: #fff;
  border-radius: 18px;
  box-sizing: border-box;
  display: grid;
  gap: 24px;
  grid-template-rows: auto 1fr;
  min-height: 0;
  padding: 15px;
  width: 100%;
}
.c-card-lineup .c-card-lineup__image {
  border-radius: 10px;
  display: block;
  height: 183px;
  margin: 0;
  overflow: hidden;
  width: 100%;
}
.c-card-lineup .c-card-lineup__image img {
  display: block;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  width: 100%;
}
.c-card-lineup .c-card-lineup__content {
  align-content: start;
  display: grid;
  gap: 20px;
  grid-template-rows: auto 1fr auto;
  min-height: 0;
  width: 100%;
}
.c-card-lineup .c-card-lineup__category {
  border: 1px solid #4fa0c5;
  border-radius: 20px;
  box-sizing: border-box;
  color: #4fa0c5;
  font-size: 16px;
  font-weight: 700;
  letter-spacing: 11.2px;
  line-height: normal;
  margin: 0;
  padding: 5px 10px;
  text-align: center;
  width: 100%;
}
.c-card-lineup .c-card-lineup__text {
  color: #000;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.5;
  margin: 0;
  width: 100%;
}
.c-card-lineup .c-card-lineup__text strong {
  display: block;
  font-weight: 700;
  line-height: normal;
  margin: 0 0 8px;
}
.c-card-lineup .c-card-lineup__button {
  justify-self: end;
  margin: 0;
}

.c-card-model {
  background: #fff;
  border: 2px solid #ddd;
  border-radius: 10px;
  box-sizing: border-box;
  display: flex;
  margin: 0;
  max-width: 100%;
  overflow: hidden;
  width: 480px;
}
@media screen and (max-width: 650px) {
  .c-card-model {
    flex-direction: column;
    width: 100%;
  }
}
.c-card-model .c-card-model__image {
  aspect-ratio: 1;
  align-items: center;
  display: flex;
  flex-shrink: 0;
  justify-content: center;
  margin: 0 auto;
  max-width: 240px;
  overflow: hidden;
  width: 100%;
}
.c-card-model .c-card-model__image img {
  display: block;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
  width: 100%;
}
.c-card-model .c-card-model__body {
  box-sizing: border-box;
  display: flex;
  flex: 1 1 0;
  flex-direction: column;
  gap: 8px;
  min-width: 0;
  padding: 20px;
  width: 239px;
}
@media screen and (max-width: 650px) {
  .c-card-model .c-card-model__body {
    width: 100%;
  }
}
.c-card-model .c-card-model__title {
  align-items: center;
  background: #279af2;
  color: #fff;
  display: flex;
  font-size: 20px;
  font-weight: 700;
  height: 35px;
  justify-content: center;
  line-height: 28px;
  margin: 0;
  text-align: center;
  width: 100%;
}
.c-card-model .c-card-model__row {
  border-bottom: 1px solid #e5e7eb;
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  gap: 4px;
  padding: 0 0 8px;
  width: 100%;
}
.c-card-model .c-card-model__row:last-child {
  border-bottom: 0;
  padding-bottom: 0;
}
.c-card-model .c-card-model__row.is-inline {
  align-items: flex-start;
  flex-direction: row;
  gap: 4px;
}
.c-card-model .c-card-model__row.is-inline .c-card-model__label {
  flex-shrink: 0;
  width: 71px;
}
.c-card-model .c-card-model__row.is-inline .c-card-model__value {
  flex: 1 1 0;
  min-width: 0;
}
.c-card-model .c-card-model__row.is-dims {
  align-items: flex-start;
  flex-direction: row;
  gap: 4px;
}
.c-card-model .c-card-model__row.is-dims .c-card-model__label,
.c-card-model .c-card-model__row.is-dims .c-card-model__value {
  flex: 1 1 0;
  min-width: 0;
}
.c-card-model .c-card-model__label {
  color: #6a7282;
  font-size: 12px;
  font-weight: 400;
  line-height: 16px;
  margin: 0;
}
.c-card-model .c-card-model__value {
  color: #0a0a0a;
  font-size: 12px;
  font-weight: 400;
  line-height: 16px;
  margin: 0;
}
.c-card-model .c-card-model__chips {
  display: flex;
  gap: 8px;
  width: 100%;
}
.c-card-model .c-card-model__chip {
  border-radius: 4px;
  box-sizing: border-box;
  color: #4a5565;
  font-size: 12px;
  font-weight: 400;
  flex: 1 1 0;
  line-height: 16px;
  min-width: 0;
  padding: 7px;
}
.c-card-model .c-card-model__chip.is-a {
  background: rgba(220, 244, 255, 0.8);
}
.c-card-model .c-card-model__chip.is-b {
  background: #fff7ed;
}
.c-card-model .c-card-model__chip strong {
  color: #0a0a0a;
  font-size: 12px;
  font-weight: 700;
  line-height: 16px;
}

.c-card-link {
  background: url("images/water/banner-water-bg.jpg") no-repeat center center/cover;
  border-radius: 10px;
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  gap: 24px;
  max-width: 100%;
  padding: 15px;
  position: relative;
  text-decoration: none;
  width: 450px;
}
.c-card-link.is-soil {
  background: url("images/soil/banner-soil-bg.jpg") no-repeat center center/cover;
}
.c-card-link.is-soil .c-card-link__title,
.c-card-link.is-soil .c-card-link__lead,
.c-card-link.is-soil .c-card-link__text {
  color: #fff;
}
.c-card-link .c-card-link__image {
  border-radius: 10px;
  display: block;
  margin: 0;
  overflow: hidden;
  width: 100%;
}
.c-card-link .c-card-link__image img {
  display: block;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  width: 100%;
}
.c-card-link .c-card-link__body {
  display: flex;
  flex-direction: column;
  gap: 12px;
  width: 100%;
}
.c-card-link .c-card-link__head {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}
.c-card-link .c-card-link__title {
  color: #0090ff;
  font-size: 24px;
  font-weight: 700;
  line-height: normal;
  margin: 0;
}
.c-card-link .c-card-link__lead {
  color: #666;
  font-size: 16px;
  font-weight: 700;
  line-height: normal;
  margin: 0;
}
.c-card-link .c-card-link__text {
  color: #666;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.5;
  margin: 0;
}

.c-card-item {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background: transparent;
  border: 0;
  box-sizing: border-box;
  color: inherit;
  cursor: pointer;
  display: flex;
  flex-direction: column;
  font: inherit;
  gap: 24px;
  margin: 0;
  padding: 0;
  text-align: left;
  width: 228px;
}
@media screen and (max-width: 650px) {
  .c-card-item {
    width: calc(50% - 8px);
  }
}
.c-card-item:hover, .c-card-item:focus-visible {
  opacity: 0.85;
}
.c-card-item .c-card-item__image {
  border-radius: 10px;
  display: block;
  height: 173px;
  margin: 0;
  overflow: hidden;
  width: 100%;
}
.c-card-item .c-card-item__image img {
  display: block;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  width: 100%;
}
.c-card-item .c-card-item__label {
  align-items: center;
  background: var(--color-main, #4FA0C5);
  border-radius: 10px;
  box-sizing: border-box;
  color: #fff;
  display: flex;
  font-size: 16px;
  font-weight: 700;
  justify-content: center;
  line-height: 1.5;
  margin: 0;
  padding: 10px;
  text-align: center;
  width: 100%;
}

.c-section-text {
  background: var(--white, #FFF);
  display: grid;
  gap: 16px;
  padding: 16px 24px 24px;
}
.c-section-text .c-section-text__title {
  color: var(--deepbrown, #625F55);
  font-size: 18px;
  font-style: normal;
  font-weight: 500;
  line-height: 180%; /* 32.4px */
  letter-spacing: 0.9px;
}
.c-section-text .c-section-text__title em {
  font-size: 14px;
  font-style: normal;
}
.c-section-text .c-section-text__text {
  color: var(--text-black, #1E1E1E);
  font-size: 14px;
  font-style: normal;
  font-weight: 400;
  line-height: 180%; /* 25.2px */
  letter-spacing: 0.7px;
}

.c-section-scroll {
  display: block;
  line-height: 0;
  margin: 0 auto;
  overflow-x: auto;
  width: 100%;
}
@media screen and (max-width: 1200px) {
  .c-section-scroll {
    margin: 0 -25px 0 0;
    width: calc(100% + 25px);
  }
}
.c-section-scroll > * {
  white-space: nowrap;
  width: 960px;
}
.c-section-scroll img {
  max-width: none;
}

.c-section-image-scrollable {
  display: block;
  line-height: 0;
  margin: 0 -24px;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  padding: 0 24px;
  width: calc(100% + 48px);
}
.c-section-image-scrollable img {
  display: block;
  height: auto;
  max-width: none;
  width: 960px;
}

.c-section-buttons {
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
  justify-content: center;
}

.c-section-banners {
  display: flex;
  flex-wrap: wrap;
  gap: 24px 40px;
  justify-content: center;
}
.c-section-banners figure {
  display: block;
  margin: 0;
}
.c-section-banners a:hover {
  opacity: 0.7;
}
.c-section-banners img {
  display: block;
}

.c-section-point {
  align-items: flex-start;
  display: flex;
  gap: 20px;
  flex-wrap: wrap;
  justify-content: center;
}
@media screen and (max-width: 650px) {
  .c-section-point {
    flex-direction: column;
    gap: 16px;
  }
}
.c-section-point .c-section-point__number {
  background: #FFF;
  border: 1px solid #ED9797;
  border-radius: 40px;
  color: #ED9797 !important;
  font-size: 18px;
  font-style: normal;
  font-weight: 600 !important;
  letter-spacing: 1.8px !important;
  line-height: 100% !important;
  padding: 8px 24px 10px 24px;
}
.c-section-point .c-section-point__content {
  flex: 1;
  display: grid;
  gap: 8px;
}
.c-section-point .c-section-point__title {
  color: var(--deepbrown, #625F55);
  font-size: 20px;
  font-style: normal;
  font-weight: 600;
  letter-spacing: 1px;
  line-height: 140%; /* 28px */
}
@media screen and (max-width: 650px) {
  .c-section-point .c-section-point__title {
    font-size: 16px;
  }
}
.c-section-point .c-section-point__text {
  color: var(--text-black, #1E1E1E);
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  letter-spacing: 0.8px;
  line-height: 180%; /* 28.8px */
}

.c-section-detail-wrapper {
  display: grid;
  grid-template-columns: 1fr;
  gap: 48px;
}
@media screen and (max-width: 650px) {
  .c-section-detail-wrapper {
    gap: 56px;
  }
}

.c-section-detail {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 20px 32px;
}
@media screen and (max-width: 650px) {
  .c-section-detail {
    grid-template-columns: 1fr;
  }
}
.c-section-detail .c-section-detail__image {
  display: block;
  margin: 0;
}
.c-section-detail .c-section-detail__image img {
  display: block;
}
.c-section-detail .c-section-detail__content {
  align-content: start;
  align-items: start;
  display: grid;
  gap: 16px;
}
.c-section-detail .c-section-detail__title {
  color: var(--deepbrown, #625F55);
  font-size: 24px;
  font-style: normal;
  font-weight: 700;
  line-height: 140%; /* 33.6px */
  letter-spacing: 2.4px;
}
.c-section-detail .c-section-detail__text {
  color: var(--text-black, #1E1E1E);
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  letter-spacing: 0.8px;
  line-height: 180%; /* 28.8px */
}
.c-section-detail .c-section-detail__button {
  align-items: flex-end;
  display: flex;
  gap: 16px;
  justify-content: flex-end;
  margin: 8px 0 0;
}
@media screen and (max-width: 650px) {
  .c-section-detail .c-section-detail__button {
    align-items: center;
    flex-direction: column;
    gap: 8px;
  }
}

.c-box-inquiry {
  border: 1px solid #666;
  border-radius: 10px;
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  gap: 30px;
  align-items: center;
  justify-content: center;
  margin: 0 auto;
  max-width: 1040px;
  padding: 30px 36px;
  text-align: center;
  width: 100%;
}
@media screen and (max-width: 650px) {
  .c-box-inquiry {
    padding: 24px 20px;
  }
}
.c-box-inquiry .c-box-inquiry__lead {
  color: #000;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.5;
  margin: 0;
}
.c-box-inquiry .c-box-inquiry__lead strong {
  display: inline-block;
  font-size: 24px;
  font-weight: 500;
}
.c-box-inquiry .c-box-inquiry__contact {
  color: #000;
  font-size: 16px;
  font-weight: 700;
  line-height: 1.5;
  margin: 0;
}
.c-box-inquiry .c-box-inquiry__contact em {
  font-size: 13px;
  font-style: normal;
  font-weight: 500;
}
.c-box-inquiry .c-box-inquiry__contact a {
  color: inherit;
  text-decoration: none;
}
.c-box-inquiry .c-box-inquiry__contact a:hover {
  text-decoration: underline;
}

.c-box-remarks {
  border: 1px solid #666;
  border-radius: 10px;
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  gap: 10px;
  margin: 0 auto;
  max-width: 1040px;
  padding: 30px 40px;
  width: 100%;
}
@media screen and (max-width: 650px) {
  .c-box-remarks {
    padding: 24px 20px;
  }
}
.c-box-remarks h3,
.c-box-remarks h2 {
  color: var(--color-main, #4FA0C5);
  font-size: 18px;
  font-weight: 500;
  line-height: 27px;
  margin: 0;
}
.c-box-remarks p {
  color: #4a5565;
  font-size: 16px;
  font-weight: 400;
  line-height: 24px;
  margin: 0;
}
.c-box-remarks .c-box-remarks__note {
  color: #6a7282;
  font-size: 14px;
  font-weight: 400;
  line-height: 20px;
  margin: 0;
}
.c-box-remarks .c-box-remarks__notes {
  border-left: 2px solid #d1d5dc;
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  gap: 4px;
  padding: 0 0 0 18px;
  width: 100%;
}
.c-box-remarks .c-box-remarks__notes p {
  color: #6a7282;
  font-size: 14px;
  font-weight: 400;
  line-height: 20px;
  margin: 0;
}

.c-section-googlemap {
  display: flex;
  flex-direction: column;
  gap: 16px;
  width: 100%;
}
.c-section-googlemap .c-section-googlemap__map {
  border: 0;
  display: block;
  height: 332px;
  overflow: hidden;
  width: 100%;
}
@media screen and (max-width: 650px) {
  .c-section-googlemap .c-section-googlemap__map {
    height: 240px;
  }
}
.c-section-googlemap .c-section-googlemap__link {
  display: flex;
  justify-content: flex-end;
  margin: 0;
}
.c-section-googlemap .c-section-googlemap__link a {
  align-items: center;
  border-bottom: 1px solid #0090FF;
  color: #279AF2;
  display: inline-flex;
  font-size: 14px;
  font-style: normal;
  font-weight: 400;
  gap: 1px;
  line-height: 150%;
  padding: 2px 0;
  text-decoration: none;
}
.c-section-googlemap .c-section-googlemap__link a:hover {
  border-bottom-color: transparent;
  opacity: 0.7;
}
.c-section-googlemap .c-section-googlemap__link a::after {
  background: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 18 18" fill="none"><path d="M6.75 4.5L11.25 9L6.75 13.5" stroke="%23279AF2" stroke-linecap="round" stroke-linejoin="round"/></svg>') no-repeat center center/contain;
  content: "";
  display: block;
  flex-shrink: 0;
  height: 18px;
  width: 18px;
}

.c-modal-default {
  align-items: center;
  box-sizing: border-box;
  display: flex;
  inset: 0;
  justify-content: center;
  opacity: 0;
  padding: 24px 16px;
  pointer-events: none;
  position: fixed;
  transition: opacity 0.3s ease;
  visibility: hidden;
  z-index: 1000;
}
.c-modal-default.is-active {
  opacity: 1;
  pointer-events: auto;
  visibility: visible;
}
.c-modal-default .c-modal-default__overlay {
  background: rgba(0, 0, 0, 0.55);
  inset: 0;
  position: absolute;
}
.c-modal-default .c-modal-default__dialog {
  background: #fff;
  border-radius: 10px;
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  max-height: calc(100vh - 48px);
  max-width: 640px;
  overflow: hidden;
  padding: 48px 24px 32px;
  position: relative;
  width: 100%;
  z-index: 1;
}
.c-modal-default .c-modal-default__close {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background: #fff;
  border: 0;
  cursor: pointer;
  flex-shrink: 0;
  height: 32px;
  padding: 0;
  position: absolute;
  right: 12px;
  top: 12px;
  width: 32px;
  z-index: 2;
}
.c-modal-default .c-modal-default__close::before, .c-modal-default .c-modal-default__close::after {
  background: #666;
  content: "";
  height: 2px;
  left: 50%;
  position: absolute;
  top: 50%;
  width: 18px;
}
.c-modal-default .c-modal-default__close::before {
  transform: translate(-50%, -50%) rotate(45deg);
}
.c-modal-default .c-modal-default__close::after {
  transform: translate(-50%, -50%) rotate(-45deg);
}
.c-modal-default .c-modal-default__close:hover, .c-modal-default .c-modal-default__close:focus-visible {
  opacity: 0.7;
}
.c-modal-default .c-modal-default__body {
  min-height: 0;
  overflow-y: auto;
  width: 100%;
  -webkit-overflow-scrolling: touch;
}
.c-modal-default .c-modal-default__content {
  display: flex;
  flex-direction: column;
  gap: 24px;
  margin: 0 auto;
  max-width: 608px;
  width: 100%;
}
.c-modal-default .c-modal-default__image {
  border-radius: 10px;
  display: block;
  height: 250px;
  margin: 0 auto;
  overflow: hidden;
  width: 300px;
}
@media screen and (max-width: 650px) {
  .c-modal-default .c-modal-default__image {
    height: auto;
    width: 100%;
  }
}
.c-modal-default .c-modal-default__image img {
  display: block;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  width: 100%;
}
@media screen and (max-width: 650px) {
  .c-modal-default .c-modal-default__image img {
    height: auto;
  }
}
.c-modal-default .c-modal-default__title {
  border-bottom: 1px solid var(--color-main, #4FA0C5);
  box-sizing: border-box;
  color: var(--color-main, #4FA0C5);
  font-size: 20px;
  font-weight: 700;
  line-height: 24px;
  margin: 0;
  padding: 13px 0;
  width: 100%;
}
.c-modal-default .c-modal-default__text {
  color: #000;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.5;
  margin: 0;
  width: 100%;
}

.a-fadein {
  opacity: 0;
}
.a-fadein.is-animated {
  animation: fadeIn 1s ease-in forwards;
}
.a-fadein.is-delay-1 {
  animation-delay: 0.5s;
}
.a-fadein.is-delay-2 {
  animation-delay: 1s;
}
.a-fadein.is-delay-3 {
  animation-delay: 1.5s;
}

@keyframes fadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@keyframes flow {
  0% {
    transform: translate3d(0, 0, 0);
  }
  100% {
    transform: translate3d(-100%, 0, 0);
  }
}
/* ユーティリティー
------------------------------------*/
.u-mt--20 {
  margin-top: -160px !important;
}

.u-mt--19 {
  margin-top: -152px !important;
}

.u-mt--18 {
  margin-top: -144px !important;
}

.u-mt--17 {
  margin-top: -136px !important;
}

.u-mt--16 {
  margin-top: -128px !important;
}

.u-mt--15 {
  margin-top: -120px !important;
}

.u-mt--14 {
  margin-top: -112px !important;
}

.u-mt--13 {
  margin-top: -104px !important;
}

.u-mt--12 {
  margin-top: -96px !important;
}

.u-mt--11 {
  margin-top: -88px !important;
}

.u-mt--10 {
  margin-top: -80px !important;
}

.u-mt--9 {
  margin-top: -72px !important;
}

.u-mt--8 {
  margin-top: -64px !important;
}

.u-mt--7 {
  margin-top: -56px !important;
}

.u-mt--6 {
  margin-top: -48px !important;
}

.u-mt--5 {
  margin-top: -40px !important;
}

.u-mt--4 {
  margin-top: -32px !important;
}

.u-mt--3 {
  margin-top: -24px !important;
}

.u-mt--2 {
  margin-top: -16px !important;
}

.u-mt--1 {
  margin-top: -8px !important;
}

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

.u-mt-1 {
  margin-top: 8px !important;
}

.u-mt-2 {
  margin-top: 16px !important;
}

.u-mt-3 {
  margin-top: 24px !important;
}

.u-mt-4 {
  margin-top: 32px !important;
}

.u-mt-5 {
  margin-top: 40px !important;
}

.u-mt-6 {
  margin-top: 48px !important;
}

.u-mt-7 {
  margin-top: 56px !important;
}

.u-mt-8 {
  margin-top: 64px !important;
}

.u-mt-9 {
  margin-top: 72px !important;
}

.u-mt-10 {
  margin-top: 80px !important;
}

.u-mt-11 {
  margin-top: 88px !important;
}

.u-mt-12 {
  margin-top: 96px !important;
}

.u-mt-13 {
  margin-top: 104px !important;
}

.u-mt-14 {
  margin-top: 112px !important;
}

.u-mt-15 {
  margin-top: 120px !important;
}

.u-mt-16 {
  margin-top: 128px !important;
}

.u-mt-17 {
  margin-top: 136px !important;
}

.u-mt-18 {
  margin-top: 144px !important;
}

.u-mt-19 {
  margin-top: 152px !important;
}

.u-mt-20 {
  margin-top: 160px !important;
}

.u-mt-21 {
  margin-top: 168px !important;
}

.u-mt-22 {
  margin-top: 176px !important;
}

.u-mt-23 {
  margin-top: 184px !important;
}

.u-mt-24 {
  margin-top: 192px !important;
}

.u-mt-25 {
  margin-top: 200px !important;
}

.u-mt-26 {
  margin-top: 208px !important;
}

.u-mt-27 {
  margin-top: 216px !important;
}

.u-mt-28 {
  margin-top: 224px !important;
}

.u-mt-29 {
  margin-top: 232px !important;
}

.u-mt-30 {
  margin-top: 240px !important;
}

.u-mt-31 {
  margin-top: 248px !important;
}

.u-mt-32 {
  margin-top: 256px !important;
}

.u-mt-33 {
  margin-top: 264px !important;
}

.u-mt-34 {
  margin-top: 272px !important;
}

.u-mt-35 {
  margin-top: 280px !important;
}

.u-mt-36 {
  margin-top: 288px !important;
}

.u-mt-37 {
  margin-top: 296px !important;
}

.u-mt-38 {
  margin-top: 304px !important;
}

.u-mt-39 {
  margin-top: 312px !important;
}

.u-mt-40 {
  margin-top: 320px !important;
}

.u-mt-41 {
  margin-top: 328px !important;
}

.u-mt-42 {
  margin-top: 336px !important;
}

.u-mt-43 {
  margin-top: 344px !important;
}

.u-mt-44 {
  margin-top: 352px !important;
}

.u-mt-45 {
  margin-top: 360px !important;
}

.u-mt-46 {
  margin-top: 368px !important;
}

.u-mt-47 {
  margin-top: 376px !important;
}

.u-mt-48 {
  margin-top: 384px !important;
}

.u-mt-49 {
  margin-top: 392px !important;
}

.u-mt-50 {
  margin-top: 400px !important;
}

@media screen and (max-width: 1200px) {
  .u-tab-mt--20 {
    margin-top: -160px !important;
  }
  .u-tab-mt--19 {
    margin-top: -152px !important;
  }
  .u-tab-mt--18 {
    margin-top: -144px !important;
  }
  .u-tab-mt--17 {
    margin-top: -136px !important;
  }
  .u-tab-mt--16 {
    margin-top: -128px !important;
  }
  .u-tab-mt--15 {
    margin-top: -120px !important;
  }
  .u-tab-mt--14 {
    margin-top: -112px !important;
  }
  .u-tab-mt--13 {
    margin-top: -104px !important;
  }
  .u-tab-mt--12 {
    margin-top: -96px !important;
  }
  .u-tab-mt--11 {
    margin-top: -88px !important;
  }
  .u-tab-mt--10 {
    margin-top: -80px !important;
  }
  .u-tab-mt--9 {
    margin-top: -72px !important;
  }
  .u-tab-mt--8 {
    margin-top: -64px !important;
  }
  .u-tab-mt--7 {
    margin-top: -56px !important;
  }
  .u-tab-mt--6 {
    margin-top: -48px !important;
  }
  .u-tab-mt--5 {
    margin-top: -40px !important;
  }
  .u-tab-mt--4 {
    margin-top: -32px !important;
  }
  .u-tab-mt--3 {
    margin-top: -24px !important;
  }
  .u-tab-mt--2 {
    margin-top: -16px !important;
  }
  .u-tab-mt--1 {
    margin-top: -8px !important;
  }
  .u-tab-mt-0 {
    margin-top: 0px !important;
  }
  .u-tab-mt-1 {
    margin-top: 8px !important;
  }
  .u-tab-mt-2 {
    margin-top: 16px !important;
  }
  .u-tab-mt-3 {
    margin-top: 24px !important;
  }
  .u-tab-mt-4 {
    margin-top: 32px !important;
  }
  .u-tab-mt-5 {
    margin-top: 40px !important;
  }
  .u-tab-mt-6 {
    margin-top: 48px !important;
  }
  .u-tab-mt-7 {
    margin-top: 56px !important;
  }
  .u-tab-mt-8 {
    margin-top: 64px !important;
  }
  .u-tab-mt-9 {
    margin-top: 72px !important;
  }
  .u-tab-mt-10 {
    margin-top: 80px !important;
  }
  .u-tab-mt-11 {
    margin-top: 88px !important;
  }
  .u-tab-mt-12 {
    margin-top: 96px !important;
  }
  .u-tab-mt-13 {
    margin-top: 104px !important;
  }
  .u-tab-mt-14 {
    margin-top: 112px !important;
  }
  .u-tab-mt-15 {
    margin-top: 120px !important;
  }
  .u-tab-mt-16 {
    margin-top: 128px !important;
  }
  .u-tab-mt-17 {
    margin-top: 136px !important;
  }
  .u-tab-mt-18 {
    margin-top: 144px !important;
  }
  .u-tab-mt-19 {
    margin-top: 152px !important;
  }
  .u-tab-mt-20 {
    margin-top: 160px !important;
  }
  .u-tab-mt-21 {
    margin-top: 168px !important;
  }
  .u-tab-mt-22 {
    margin-top: 176px !important;
  }
  .u-tab-mt-23 {
    margin-top: 184px !important;
  }
  .u-tab-mt-24 {
    margin-top: 192px !important;
  }
  .u-tab-mt-25 {
    margin-top: 200px !important;
  }
  .u-tab-mt-26 {
    margin-top: 208px !important;
  }
  .u-tab-mt-27 {
    margin-top: 216px !important;
  }
  .u-tab-mt-28 {
    margin-top: 224px !important;
  }
  .u-tab-mt-29 {
    margin-top: 232px !important;
  }
  .u-tab-mt-30 {
    margin-top: 240px !important;
  }
  .u-tab-mt-31 {
    margin-top: 248px !important;
  }
  .u-tab-mt-32 {
    margin-top: 256px !important;
  }
  .u-tab-mt-33 {
    margin-top: 264px !important;
  }
  .u-tab-mt-34 {
    margin-top: 272px !important;
  }
  .u-tab-mt-35 {
    margin-top: 280px !important;
  }
  .u-tab-mt-36 {
    margin-top: 288px !important;
  }
  .u-tab-mt-37 {
    margin-top: 296px !important;
  }
  .u-tab-mt-38 {
    margin-top: 304px !important;
  }
  .u-tab-mt-39 {
    margin-top: 312px !important;
  }
  .u-tab-mt-40 {
    margin-top: 320px !important;
  }
  .u-tab-mt-41 {
    margin-top: 328px !important;
  }
  .u-tab-mt-42 {
    margin-top: 336px !important;
  }
  .u-tab-mt-43 {
    margin-top: 344px !important;
  }
  .u-tab-mt-44 {
    margin-top: 352px !important;
  }
  .u-tab-mt-45 {
    margin-top: 360px !important;
  }
  .u-tab-mt-46 {
    margin-top: 368px !important;
  }
  .u-tab-mt-47 {
    margin-top: 376px !important;
  }
  .u-tab-mt-48 {
    margin-top: 384px !important;
  }
  .u-tab-mt-49 {
    margin-top: 392px !important;
  }
  .u-tab-mt-50 {
    margin-top: 400px !important;
  }
}
@media screen and (max-width: 650px) {
  .u-sp-mt--20 {
    margin-top: -160px !important;
  }
  .u-sp-mt--19 {
    margin-top: -152px !important;
  }
  .u-sp-mt--18 {
    margin-top: -144px !important;
  }
  .u-sp-mt--17 {
    margin-top: -136px !important;
  }
  .u-sp-mt--16 {
    margin-top: -128px !important;
  }
  .u-sp-mt--15 {
    margin-top: -120px !important;
  }
  .u-sp-mt--14 {
    margin-top: -112px !important;
  }
  .u-sp-mt--13 {
    margin-top: -104px !important;
  }
  .u-sp-mt--12 {
    margin-top: -96px !important;
  }
  .u-sp-mt--11 {
    margin-top: -88px !important;
  }
  .u-sp-mt--10 {
    margin-top: -80px !important;
  }
  .u-sp-mt--9 {
    margin-top: -72px !important;
  }
  .u-sp-mt--8 {
    margin-top: -64px !important;
  }
  .u-sp-mt--7 {
    margin-top: -56px !important;
  }
  .u-sp-mt--6 {
    margin-top: -48px !important;
  }
  .u-sp-mt--5 {
    margin-top: -40px !important;
  }
  .u-sp-mt--4 {
    margin-top: -32px !important;
  }
  .u-sp-mt--3 {
    margin-top: -24px !important;
  }
  .u-sp-mt--2 {
    margin-top: -16px !important;
  }
  .u-sp-mt--1 {
    margin-top: -8px !important;
  }
  .u-sp-mt-0 {
    margin-top: 0px !important;
  }
  .u-sp-mt-1 {
    margin-top: 8px !important;
  }
  .u-sp-mt-2 {
    margin-top: 16px !important;
  }
  .u-sp-mt-3 {
    margin-top: 24px !important;
  }
  .u-sp-mt-4 {
    margin-top: 32px !important;
  }
  .u-sp-mt-5 {
    margin-top: 40px !important;
  }
  .u-sp-mt-6 {
    margin-top: 48px !important;
  }
  .u-sp-mt-7 {
    margin-top: 56px !important;
  }
  .u-sp-mt-8 {
    margin-top: 64px !important;
  }
  .u-sp-mt-9 {
    margin-top: 72px !important;
  }
  .u-sp-mt-10 {
    margin-top: 80px !important;
  }
  .u-sp-mt-11 {
    margin-top: 88px !important;
  }
  .u-sp-mt-12 {
    margin-top: 96px !important;
  }
  .u-sp-mt-13 {
    margin-top: 104px !important;
  }
  .u-sp-mt-14 {
    margin-top: 112px !important;
  }
  .u-sp-mt-15 {
    margin-top: 120px !important;
  }
  .u-sp-mt-16 {
    margin-top: 128px !important;
  }
  .u-sp-mt-17 {
    margin-top: 136px !important;
  }
  .u-sp-mt-18 {
    margin-top: 144px !important;
  }
  .u-sp-mt-19 {
    margin-top: 152px !important;
  }
  .u-sp-mt-20 {
    margin-top: 160px !important;
  }
  .u-sp-mt-21 {
    margin-top: 168px !important;
  }
  .u-sp-mt-22 {
    margin-top: 176px !important;
  }
  .u-sp-mt-23 {
    margin-top: 184px !important;
  }
  .u-sp-mt-24 {
    margin-top: 192px !important;
  }
  .u-sp-mt-25 {
    margin-top: 200px !important;
  }
  .u-sp-mt-26 {
    margin-top: 208px !important;
  }
  .u-sp-mt-27 {
    margin-top: 216px !important;
  }
  .u-sp-mt-28 {
    margin-top: 224px !important;
  }
  .u-sp-mt-29 {
    margin-top: 232px !important;
  }
  .u-sp-mt-30 {
    margin-top: 240px !important;
  }
  .u-sp-mt-31 {
    margin-top: 248px !important;
  }
  .u-sp-mt-32 {
    margin-top: 256px !important;
  }
  .u-sp-mt-33 {
    margin-top: 264px !important;
  }
  .u-sp-mt-34 {
    margin-top: 272px !important;
  }
  .u-sp-mt-35 {
    margin-top: 280px !important;
  }
  .u-sp-mt-36 {
    margin-top: 288px !important;
  }
  .u-sp-mt-37 {
    margin-top: 296px !important;
  }
  .u-sp-mt-38 {
    margin-top: 304px !important;
  }
  .u-sp-mt-39 {
    margin-top: 312px !important;
  }
  .u-sp-mt-40 {
    margin-top: 320px !important;
  }
  .u-sp-mt-41 {
    margin-top: 328px !important;
  }
  .u-sp-mt-42 {
    margin-top: 336px !important;
  }
  .u-sp-mt-43 {
    margin-top: 344px !important;
  }
  .u-sp-mt-44 {
    margin-top: 352px !important;
  }
  .u-sp-mt-45 {
    margin-top: 360px !important;
  }
  .u-sp-mt-46 {
    margin-top: 368px !important;
  }
  .u-sp-mt-47 {
    margin-top: 376px !important;
  }
  .u-sp-mt-48 {
    margin-top: 384px !important;
  }
  .u-sp-mt-49 {
    margin-top: 392px !important;
  }
  .u-sp-mt-50 {
    margin-top: 400px !important;
  }
}
.u-mr--20 {
  margin-right: -160px !important;
}

.u-mr--19 {
  margin-right: -152px !important;
}

.u-mr--18 {
  margin-right: -144px !important;
}

.u-mr--17 {
  margin-right: -136px !important;
}

.u-mr--16 {
  margin-right: -128px !important;
}

.u-mr--15 {
  margin-right: -120px !important;
}

.u-mr--14 {
  margin-right: -112px !important;
}

.u-mr--13 {
  margin-right: -104px !important;
}

.u-mr--12 {
  margin-right: -96px !important;
}

.u-mr--11 {
  margin-right: -88px !important;
}

.u-mr--10 {
  margin-right: -80px !important;
}

.u-mr--9 {
  margin-right: -72px !important;
}

.u-mr--8 {
  margin-right: -64px !important;
}

.u-mr--7 {
  margin-right: -56px !important;
}

.u-mr--6 {
  margin-right: -48px !important;
}

.u-mr--5 {
  margin-right: -40px !important;
}

.u-mr--4 {
  margin-right: -32px !important;
}

.u-mr--3 {
  margin-right: -24px !important;
}

.u-mr--2 {
  margin-right: -16px !important;
}

.u-mr--1 {
  margin-right: -8px !important;
}

.u-mr-0 {
  margin-right: 0px !important;
}

.u-mr-1 {
  margin-right: 8px !important;
}

.u-mr-2 {
  margin-right: 16px !important;
}

.u-mr-3 {
  margin-right: 24px !important;
}

.u-mr-4 {
  margin-right: 32px !important;
}

.u-mr-5 {
  margin-right: 40px !important;
}

.u-mr-6 {
  margin-right: 48px !important;
}

.u-mr-7 {
  margin-right: 56px !important;
}

.u-mr-8 {
  margin-right: 64px !important;
}

.u-mr-9 {
  margin-right: 72px !important;
}

.u-mr-10 {
  margin-right: 80px !important;
}

.u-mr-11 {
  margin-right: 88px !important;
}

.u-mr-12 {
  margin-right: 96px !important;
}

.u-mr-13 {
  margin-right: 104px !important;
}

.u-mr-14 {
  margin-right: 112px !important;
}

.u-mr-15 {
  margin-right: 120px !important;
}

.u-mr-16 {
  margin-right: 128px !important;
}

.u-mr-17 {
  margin-right: 136px !important;
}

.u-mr-18 {
  margin-right: 144px !important;
}

.u-mr-19 {
  margin-right: 152px !important;
}

.u-mr-20 {
  margin-right: 160px !important;
}

.u-mr-21 {
  margin-right: 168px !important;
}

.u-mr-22 {
  margin-right: 176px !important;
}

.u-mr-23 {
  margin-right: 184px !important;
}

.u-mr-24 {
  margin-right: 192px !important;
}

.u-mr-25 {
  margin-right: 200px !important;
}

.u-mr-26 {
  margin-right: 208px !important;
}

.u-mr-27 {
  margin-right: 216px !important;
}

.u-mr-28 {
  margin-right: 224px !important;
}

.u-mr-29 {
  margin-right: 232px !important;
}

.u-mr-30 {
  margin-right: 240px !important;
}

.u-mr-31 {
  margin-right: 248px !important;
}

.u-mr-32 {
  margin-right: 256px !important;
}

.u-mr-33 {
  margin-right: 264px !important;
}

.u-mr-34 {
  margin-right: 272px !important;
}

.u-mr-35 {
  margin-right: 280px !important;
}

.u-mr-36 {
  margin-right: 288px !important;
}

.u-mr-37 {
  margin-right: 296px !important;
}

.u-mr-38 {
  margin-right: 304px !important;
}

.u-mr-39 {
  margin-right: 312px !important;
}

.u-mr-40 {
  margin-right: 320px !important;
}

.u-mr-41 {
  margin-right: 328px !important;
}

.u-mr-42 {
  margin-right: 336px !important;
}

.u-mr-43 {
  margin-right: 344px !important;
}

.u-mr-44 {
  margin-right: 352px !important;
}

.u-mr-45 {
  margin-right: 360px !important;
}

.u-mr-46 {
  margin-right: 368px !important;
}

.u-mr-47 {
  margin-right: 376px !important;
}

.u-mr-48 {
  margin-right: 384px !important;
}

.u-mr-49 {
  margin-right: 392px !important;
}

.u-mr-50 {
  margin-right: 400px !important;
}

@media screen and (max-width: 1200px) {
  .u-tab-mr--20 {
    margin-right: -160px !important;
  }
  .u-tab-mr--19 {
    margin-right: -152px !important;
  }
  .u-tab-mr--18 {
    margin-right: -144px !important;
  }
  .u-tab-mr--17 {
    margin-right: -136px !important;
  }
  .u-tab-mr--16 {
    margin-right: -128px !important;
  }
  .u-tab-mr--15 {
    margin-right: -120px !important;
  }
  .u-tab-mr--14 {
    margin-right: -112px !important;
  }
  .u-tab-mr--13 {
    margin-right: -104px !important;
  }
  .u-tab-mr--12 {
    margin-right: -96px !important;
  }
  .u-tab-mr--11 {
    margin-right: -88px !important;
  }
  .u-tab-mr--10 {
    margin-right: -80px !important;
  }
  .u-tab-mr--9 {
    margin-right: -72px !important;
  }
  .u-tab-mr--8 {
    margin-right: -64px !important;
  }
  .u-tab-mr--7 {
    margin-right: -56px !important;
  }
  .u-tab-mr--6 {
    margin-right: -48px !important;
  }
  .u-tab-mr--5 {
    margin-right: -40px !important;
  }
  .u-tab-mr--4 {
    margin-right: -32px !important;
  }
  .u-tab-mr--3 {
    margin-right: -24px !important;
  }
  .u-tab-mr--2 {
    margin-right: -16px !important;
  }
  .u-tab-mr--1 {
    margin-right: -8px !important;
  }
  .u-tab-mr-0 {
    margin-right: 0px !important;
  }
  .u-tab-mr-1 {
    margin-right: 8px !important;
  }
  .u-tab-mr-2 {
    margin-right: 16px !important;
  }
  .u-tab-mr-3 {
    margin-right: 24px !important;
  }
  .u-tab-mr-4 {
    margin-right: 32px !important;
  }
  .u-tab-mr-5 {
    margin-right: 40px !important;
  }
  .u-tab-mr-6 {
    margin-right: 48px !important;
  }
  .u-tab-mr-7 {
    margin-right: 56px !important;
  }
  .u-tab-mr-8 {
    margin-right: 64px !important;
  }
  .u-tab-mr-9 {
    margin-right: 72px !important;
  }
  .u-tab-mr-10 {
    margin-right: 80px !important;
  }
  .u-tab-mr-11 {
    margin-right: 88px !important;
  }
  .u-tab-mr-12 {
    margin-right: 96px !important;
  }
  .u-tab-mr-13 {
    margin-right: 104px !important;
  }
  .u-tab-mr-14 {
    margin-right: 112px !important;
  }
  .u-tab-mr-15 {
    margin-right: 120px !important;
  }
  .u-tab-mr-16 {
    margin-right: 128px !important;
  }
  .u-tab-mr-17 {
    margin-right: 136px !important;
  }
  .u-tab-mr-18 {
    margin-right: 144px !important;
  }
  .u-tab-mr-19 {
    margin-right: 152px !important;
  }
  .u-tab-mr-20 {
    margin-right: 160px !important;
  }
  .u-tab-mr-21 {
    margin-right: 168px !important;
  }
  .u-tab-mr-22 {
    margin-right: 176px !important;
  }
  .u-tab-mr-23 {
    margin-right: 184px !important;
  }
  .u-tab-mr-24 {
    margin-right: 192px !important;
  }
  .u-tab-mr-25 {
    margin-right: 200px !important;
  }
  .u-tab-mr-26 {
    margin-right: 208px !important;
  }
  .u-tab-mr-27 {
    margin-right: 216px !important;
  }
  .u-tab-mr-28 {
    margin-right: 224px !important;
  }
  .u-tab-mr-29 {
    margin-right: 232px !important;
  }
  .u-tab-mr-30 {
    margin-right: 240px !important;
  }
  .u-tab-mr-31 {
    margin-right: 248px !important;
  }
  .u-tab-mr-32 {
    margin-right: 256px !important;
  }
  .u-tab-mr-33 {
    margin-right: 264px !important;
  }
  .u-tab-mr-34 {
    margin-right: 272px !important;
  }
  .u-tab-mr-35 {
    margin-right: 280px !important;
  }
  .u-tab-mr-36 {
    margin-right: 288px !important;
  }
  .u-tab-mr-37 {
    margin-right: 296px !important;
  }
  .u-tab-mr-38 {
    margin-right: 304px !important;
  }
  .u-tab-mr-39 {
    margin-right: 312px !important;
  }
  .u-tab-mr-40 {
    margin-right: 320px !important;
  }
  .u-tab-mr-41 {
    margin-right: 328px !important;
  }
  .u-tab-mr-42 {
    margin-right: 336px !important;
  }
  .u-tab-mr-43 {
    margin-right: 344px !important;
  }
  .u-tab-mr-44 {
    margin-right: 352px !important;
  }
  .u-tab-mr-45 {
    margin-right: 360px !important;
  }
  .u-tab-mr-46 {
    margin-right: 368px !important;
  }
  .u-tab-mr-47 {
    margin-right: 376px !important;
  }
  .u-tab-mr-48 {
    margin-right: 384px !important;
  }
  .u-tab-mr-49 {
    margin-right: 392px !important;
  }
  .u-tab-mr-50 {
    margin-right: 400px !important;
  }
}
@media screen and (max-width: 650px) {
  .u-sp-mr--20 {
    margin-right: -160px !important;
  }
  .u-sp-mr--19 {
    margin-right: -152px !important;
  }
  .u-sp-mr--18 {
    margin-right: -144px !important;
  }
  .u-sp-mr--17 {
    margin-right: -136px !important;
  }
  .u-sp-mr--16 {
    margin-right: -128px !important;
  }
  .u-sp-mr--15 {
    margin-right: -120px !important;
  }
  .u-sp-mr--14 {
    margin-right: -112px !important;
  }
  .u-sp-mr--13 {
    margin-right: -104px !important;
  }
  .u-sp-mr--12 {
    margin-right: -96px !important;
  }
  .u-sp-mr--11 {
    margin-right: -88px !important;
  }
  .u-sp-mr--10 {
    margin-right: -80px !important;
  }
  .u-sp-mr--9 {
    margin-right: -72px !important;
  }
  .u-sp-mr--8 {
    margin-right: -64px !important;
  }
  .u-sp-mr--7 {
    margin-right: -56px !important;
  }
  .u-sp-mr--6 {
    margin-right: -48px !important;
  }
  .u-sp-mr--5 {
    margin-right: -40px !important;
  }
  .u-sp-mr--4 {
    margin-right: -32px !important;
  }
  .u-sp-mr--3 {
    margin-right: -24px !important;
  }
  .u-sp-mr--2 {
    margin-right: -16px !important;
  }
  .u-sp-mr--1 {
    margin-right: -8px !important;
  }
  .u-sp-mr-0 {
    margin-right: 0px !important;
  }
  .u-sp-mr-1 {
    margin-right: 8px !important;
  }
  .u-sp-mr-2 {
    margin-right: 16px !important;
  }
  .u-sp-mr-3 {
    margin-right: 24px !important;
  }
  .u-sp-mr-4 {
    margin-right: 32px !important;
  }
  .u-sp-mr-5 {
    margin-right: 40px !important;
  }
  .u-sp-mr-6 {
    margin-right: 48px !important;
  }
  .u-sp-mr-7 {
    margin-right: 56px !important;
  }
  .u-sp-mr-8 {
    margin-right: 64px !important;
  }
  .u-sp-mr-9 {
    margin-right: 72px !important;
  }
  .u-sp-mr-10 {
    margin-right: 80px !important;
  }
  .u-sp-mr-11 {
    margin-right: 88px !important;
  }
  .u-sp-mr-12 {
    margin-right: 96px !important;
  }
  .u-sp-mr-13 {
    margin-right: 104px !important;
  }
  .u-sp-mr-14 {
    margin-right: 112px !important;
  }
  .u-sp-mr-15 {
    margin-right: 120px !important;
  }
  .u-sp-mr-16 {
    margin-right: 128px !important;
  }
  .u-sp-mr-17 {
    margin-right: 136px !important;
  }
  .u-sp-mr-18 {
    margin-right: 144px !important;
  }
  .u-sp-mr-19 {
    margin-right: 152px !important;
  }
  .u-sp-mr-20 {
    margin-right: 160px !important;
  }
  .u-sp-mr-21 {
    margin-right: 168px !important;
  }
  .u-sp-mr-22 {
    margin-right: 176px !important;
  }
  .u-sp-mr-23 {
    margin-right: 184px !important;
  }
  .u-sp-mr-24 {
    margin-right: 192px !important;
  }
  .u-sp-mr-25 {
    margin-right: 200px !important;
  }
  .u-sp-mr-26 {
    margin-right: 208px !important;
  }
  .u-sp-mr-27 {
    margin-right: 216px !important;
  }
  .u-sp-mr-28 {
    margin-right: 224px !important;
  }
  .u-sp-mr-29 {
    margin-right: 232px !important;
  }
  .u-sp-mr-30 {
    margin-right: 240px !important;
  }
  .u-sp-mr-31 {
    margin-right: 248px !important;
  }
  .u-sp-mr-32 {
    margin-right: 256px !important;
  }
  .u-sp-mr-33 {
    margin-right: 264px !important;
  }
  .u-sp-mr-34 {
    margin-right: 272px !important;
  }
  .u-sp-mr-35 {
    margin-right: 280px !important;
  }
  .u-sp-mr-36 {
    margin-right: 288px !important;
  }
  .u-sp-mr-37 {
    margin-right: 296px !important;
  }
  .u-sp-mr-38 {
    margin-right: 304px !important;
  }
  .u-sp-mr-39 {
    margin-right: 312px !important;
  }
  .u-sp-mr-40 {
    margin-right: 320px !important;
  }
  .u-sp-mr-41 {
    margin-right: 328px !important;
  }
  .u-sp-mr-42 {
    margin-right: 336px !important;
  }
  .u-sp-mr-43 {
    margin-right: 344px !important;
  }
  .u-sp-mr-44 {
    margin-right: 352px !important;
  }
  .u-sp-mr-45 {
    margin-right: 360px !important;
  }
  .u-sp-mr-46 {
    margin-right: 368px !important;
  }
  .u-sp-mr-47 {
    margin-right: 376px !important;
  }
  .u-sp-mr-48 {
    margin-right: 384px !important;
  }
  .u-sp-mr-49 {
    margin-right: 392px !important;
  }
  .u-sp-mr-50 {
    margin-right: 400px !important;
  }
}
.u-mb--20 {
  margin-bottom: -160px !important;
}

.u-mb--19 {
  margin-bottom: -152px !important;
}

.u-mb--18 {
  margin-bottom: -144px !important;
}

.u-mb--17 {
  margin-bottom: -136px !important;
}

.u-mb--16 {
  margin-bottom: -128px !important;
}

.u-mb--15 {
  margin-bottom: -120px !important;
}

.u-mb--14 {
  margin-bottom: -112px !important;
}

.u-mb--13 {
  margin-bottom: -104px !important;
}

.u-mb--12 {
  margin-bottom: -96px !important;
}

.u-mb--11 {
  margin-bottom: -88px !important;
}

.u-mb--10 {
  margin-bottom: -80px !important;
}

.u-mb--9 {
  margin-bottom: -72px !important;
}

.u-mb--8 {
  margin-bottom: -64px !important;
}

.u-mb--7 {
  margin-bottom: -56px !important;
}

.u-mb--6 {
  margin-bottom: -48px !important;
}

.u-mb--5 {
  margin-bottom: -40px !important;
}

.u-mb--4 {
  margin-bottom: -32px !important;
}

.u-mb--3 {
  margin-bottom: -24px !important;
}

.u-mb--2 {
  margin-bottom: -16px !important;
}

.u-mb--1 {
  margin-bottom: -8px !important;
}

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

.u-mb-1 {
  margin-bottom: 8px !important;
}

.u-mb-2 {
  margin-bottom: 16px !important;
}

.u-mb-3 {
  margin-bottom: 24px !important;
}

.u-mb-4 {
  margin-bottom: 32px !important;
}

.u-mb-5 {
  margin-bottom: 40px !important;
}

.u-mb-6 {
  margin-bottom: 48px !important;
}

.u-mb-7 {
  margin-bottom: 56px !important;
}

.u-mb-8 {
  margin-bottom: 64px !important;
}

.u-mb-9 {
  margin-bottom: 72px !important;
}

.u-mb-10 {
  margin-bottom: 80px !important;
}

.u-mb-11 {
  margin-bottom: 88px !important;
}

.u-mb-12 {
  margin-bottom: 96px !important;
}

.u-mb-13 {
  margin-bottom: 104px !important;
}

.u-mb-14 {
  margin-bottom: 112px !important;
}

.u-mb-15 {
  margin-bottom: 120px !important;
}

.u-mb-16 {
  margin-bottom: 128px !important;
}

.u-mb-17 {
  margin-bottom: 136px !important;
}

.u-mb-18 {
  margin-bottom: 144px !important;
}

.u-mb-19 {
  margin-bottom: 152px !important;
}

.u-mb-20 {
  margin-bottom: 160px !important;
}

.u-mb-21 {
  margin-bottom: 168px !important;
}

.u-mb-22 {
  margin-bottom: 176px !important;
}

.u-mb-23 {
  margin-bottom: 184px !important;
}

.u-mb-24 {
  margin-bottom: 192px !important;
}

.u-mb-25 {
  margin-bottom: 200px !important;
}

.u-mb-26 {
  margin-bottom: 208px !important;
}

.u-mb-27 {
  margin-bottom: 216px !important;
}

.u-mb-28 {
  margin-bottom: 224px !important;
}

.u-mb-29 {
  margin-bottom: 232px !important;
}

.u-mb-30 {
  margin-bottom: 240px !important;
}

.u-mb-31 {
  margin-bottom: 248px !important;
}

.u-mb-32 {
  margin-bottom: 256px !important;
}

.u-mb-33 {
  margin-bottom: 264px !important;
}

.u-mb-34 {
  margin-bottom: 272px !important;
}

.u-mb-35 {
  margin-bottom: 280px !important;
}

.u-mb-36 {
  margin-bottom: 288px !important;
}

.u-mb-37 {
  margin-bottom: 296px !important;
}

.u-mb-38 {
  margin-bottom: 304px !important;
}

.u-mb-39 {
  margin-bottom: 312px !important;
}

.u-mb-40 {
  margin-bottom: 320px !important;
}

.u-mb-41 {
  margin-bottom: 328px !important;
}

.u-mb-42 {
  margin-bottom: 336px !important;
}

.u-mb-43 {
  margin-bottom: 344px !important;
}

.u-mb-44 {
  margin-bottom: 352px !important;
}

.u-mb-45 {
  margin-bottom: 360px !important;
}

.u-mb-46 {
  margin-bottom: 368px !important;
}

.u-mb-47 {
  margin-bottom: 376px !important;
}

.u-mb-48 {
  margin-bottom: 384px !important;
}

.u-mb-49 {
  margin-bottom: 392px !important;
}

.u-mb-50 {
  margin-bottom: 400px !important;
}

@media screen and (max-width: 1200px) {
  .u-tab-mb--20 {
    margin-bottom: -160px !important;
  }
  .u-tab-mb--19 {
    margin-bottom: -152px !important;
  }
  .u-tab-mb--18 {
    margin-bottom: -144px !important;
  }
  .u-tab-mb--17 {
    margin-bottom: -136px !important;
  }
  .u-tab-mb--16 {
    margin-bottom: -128px !important;
  }
  .u-tab-mb--15 {
    margin-bottom: -120px !important;
  }
  .u-tab-mb--14 {
    margin-bottom: -112px !important;
  }
  .u-tab-mb--13 {
    margin-bottom: -104px !important;
  }
  .u-tab-mb--12 {
    margin-bottom: -96px !important;
  }
  .u-tab-mb--11 {
    margin-bottom: -88px !important;
  }
  .u-tab-mb--10 {
    margin-bottom: -80px !important;
  }
  .u-tab-mb--9 {
    margin-bottom: -72px !important;
  }
  .u-tab-mb--8 {
    margin-bottom: -64px !important;
  }
  .u-tab-mb--7 {
    margin-bottom: -56px !important;
  }
  .u-tab-mb--6 {
    margin-bottom: -48px !important;
  }
  .u-tab-mb--5 {
    margin-bottom: -40px !important;
  }
  .u-tab-mb--4 {
    margin-bottom: -32px !important;
  }
  .u-tab-mb--3 {
    margin-bottom: -24px !important;
  }
  .u-tab-mb--2 {
    margin-bottom: -16px !important;
  }
  .u-tab-mb--1 {
    margin-bottom: -8px !important;
  }
  .u-tab-mb-0 {
    margin-bottom: 0px !important;
  }
  .u-tab-mb-1 {
    margin-bottom: 8px !important;
  }
  .u-tab-mb-2 {
    margin-bottom: 16px !important;
  }
  .u-tab-mb-3 {
    margin-bottom: 24px !important;
  }
  .u-tab-mb-4 {
    margin-bottom: 32px !important;
  }
  .u-tab-mb-5 {
    margin-bottom: 40px !important;
  }
  .u-tab-mb-6 {
    margin-bottom: 48px !important;
  }
  .u-tab-mb-7 {
    margin-bottom: 56px !important;
  }
  .u-tab-mb-8 {
    margin-bottom: 64px !important;
  }
  .u-tab-mb-9 {
    margin-bottom: 72px !important;
  }
  .u-tab-mb-10 {
    margin-bottom: 80px !important;
  }
  .u-tab-mb-11 {
    margin-bottom: 88px !important;
  }
  .u-tab-mb-12 {
    margin-bottom: 96px !important;
  }
  .u-tab-mb-13 {
    margin-bottom: 104px !important;
  }
  .u-tab-mb-14 {
    margin-bottom: 112px !important;
  }
  .u-tab-mb-15 {
    margin-bottom: 120px !important;
  }
  .u-tab-mb-16 {
    margin-bottom: 128px !important;
  }
  .u-tab-mb-17 {
    margin-bottom: 136px !important;
  }
  .u-tab-mb-18 {
    margin-bottom: 144px !important;
  }
  .u-tab-mb-19 {
    margin-bottom: 152px !important;
  }
  .u-tab-mb-20 {
    margin-bottom: 160px !important;
  }
  .u-tab-mb-21 {
    margin-bottom: 168px !important;
  }
  .u-tab-mb-22 {
    margin-bottom: 176px !important;
  }
  .u-tab-mb-23 {
    margin-bottom: 184px !important;
  }
  .u-tab-mb-24 {
    margin-bottom: 192px !important;
  }
  .u-tab-mb-25 {
    margin-bottom: 200px !important;
  }
  .u-tab-mb-26 {
    margin-bottom: 208px !important;
  }
  .u-tab-mb-27 {
    margin-bottom: 216px !important;
  }
  .u-tab-mb-28 {
    margin-bottom: 224px !important;
  }
  .u-tab-mb-29 {
    margin-bottom: 232px !important;
  }
  .u-tab-mb-30 {
    margin-bottom: 240px !important;
  }
  .u-tab-mb-31 {
    margin-bottom: 248px !important;
  }
  .u-tab-mb-32 {
    margin-bottom: 256px !important;
  }
  .u-tab-mb-33 {
    margin-bottom: 264px !important;
  }
  .u-tab-mb-34 {
    margin-bottom: 272px !important;
  }
  .u-tab-mb-35 {
    margin-bottom: 280px !important;
  }
  .u-tab-mb-36 {
    margin-bottom: 288px !important;
  }
  .u-tab-mb-37 {
    margin-bottom: 296px !important;
  }
  .u-tab-mb-38 {
    margin-bottom: 304px !important;
  }
  .u-tab-mb-39 {
    margin-bottom: 312px !important;
  }
  .u-tab-mb-40 {
    margin-bottom: 320px !important;
  }
  .u-tab-mb-41 {
    margin-bottom: 328px !important;
  }
  .u-tab-mb-42 {
    margin-bottom: 336px !important;
  }
  .u-tab-mb-43 {
    margin-bottom: 344px !important;
  }
  .u-tab-mb-44 {
    margin-bottom: 352px !important;
  }
  .u-tab-mb-45 {
    margin-bottom: 360px !important;
  }
  .u-tab-mb-46 {
    margin-bottom: 368px !important;
  }
  .u-tab-mb-47 {
    margin-bottom: 376px !important;
  }
  .u-tab-mb-48 {
    margin-bottom: 384px !important;
  }
  .u-tab-mb-49 {
    margin-bottom: 392px !important;
  }
  .u-tab-mb-50 {
    margin-bottom: 400px !important;
  }
}
@media screen and (max-width: 650px) {
  .u-sp-mb--20 {
    margin-bottom: -160px !important;
  }
  .u-sp-mb--19 {
    margin-bottom: -152px !important;
  }
  .u-sp-mb--18 {
    margin-bottom: -144px !important;
  }
  .u-sp-mb--17 {
    margin-bottom: -136px !important;
  }
  .u-sp-mb--16 {
    margin-bottom: -128px !important;
  }
  .u-sp-mb--15 {
    margin-bottom: -120px !important;
  }
  .u-sp-mb--14 {
    margin-bottom: -112px !important;
  }
  .u-sp-mb--13 {
    margin-bottom: -104px !important;
  }
  .u-sp-mb--12 {
    margin-bottom: -96px !important;
  }
  .u-sp-mb--11 {
    margin-bottom: -88px !important;
  }
  .u-sp-mb--10 {
    margin-bottom: -80px !important;
  }
  .u-sp-mb--9 {
    margin-bottom: -72px !important;
  }
  .u-sp-mb--8 {
    margin-bottom: -64px !important;
  }
  .u-sp-mb--7 {
    margin-bottom: -56px !important;
  }
  .u-sp-mb--6 {
    margin-bottom: -48px !important;
  }
  .u-sp-mb--5 {
    margin-bottom: -40px !important;
  }
  .u-sp-mb--4 {
    margin-bottom: -32px !important;
  }
  .u-sp-mb--3 {
    margin-bottom: -24px !important;
  }
  .u-sp-mb--2 {
    margin-bottom: -16px !important;
  }
  .u-sp-mb--1 {
    margin-bottom: -8px !important;
  }
  .u-sp-mb-0 {
    margin-bottom: 0px !important;
  }
  .u-sp-mb-1 {
    margin-bottom: 8px !important;
  }
  .u-sp-mb-2 {
    margin-bottom: 16px !important;
  }
  .u-sp-mb-3 {
    margin-bottom: 24px !important;
  }
  .u-sp-mb-4 {
    margin-bottom: 32px !important;
  }
  .u-sp-mb-5 {
    margin-bottom: 40px !important;
  }
  .u-sp-mb-6 {
    margin-bottom: 48px !important;
  }
  .u-sp-mb-7 {
    margin-bottom: 56px !important;
  }
  .u-sp-mb-8 {
    margin-bottom: 64px !important;
  }
  .u-sp-mb-9 {
    margin-bottom: 72px !important;
  }
  .u-sp-mb-10 {
    margin-bottom: 80px !important;
  }
  .u-sp-mb-11 {
    margin-bottom: 88px !important;
  }
  .u-sp-mb-12 {
    margin-bottom: 96px !important;
  }
  .u-sp-mb-13 {
    margin-bottom: 104px !important;
  }
  .u-sp-mb-14 {
    margin-bottom: 112px !important;
  }
  .u-sp-mb-15 {
    margin-bottom: 120px !important;
  }
  .u-sp-mb-16 {
    margin-bottom: 128px !important;
  }
  .u-sp-mb-17 {
    margin-bottom: 136px !important;
  }
  .u-sp-mb-18 {
    margin-bottom: 144px !important;
  }
  .u-sp-mb-19 {
    margin-bottom: 152px !important;
  }
  .u-sp-mb-20 {
    margin-bottom: 160px !important;
  }
  .u-sp-mb-21 {
    margin-bottom: 168px !important;
  }
  .u-sp-mb-22 {
    margin-bottom: 176px !important;
  }
  .u-sp-mb-23 {
    margin-bottom: 184px !important;
  }
  .u-sp-mb-24 {
    margin-bottom: 192px !important;
  }
  .u-sp-mb-25 {
    margin-bottom: 200px !important;
  }
  .u-sp-mb-26 {
    margin-bottom: 208px !important;
  }
  .u-sp-mb-27 {
    margin-bottom: 216px !important;
  }
  .u-sp-mb-28 {
    margin-bottom: 224px !important;
  }
  .u-sp-mb-29 {
    margin-bottom: 232px !important;
  }
  .u-sp-mb-30 {
    margin-bottom: 240px !important;
  }
  .u-sp-mb-31 {
    margin-bottom: 248px !important;
  }
  .u-sp-mb-32 {
    margin-bottom: 256px !important;
  }
  .u-sp-mb-33 {
    margin-bottom: 264px !important;
  }
  .u-sp-mb-34 {
    margin-bottom: 272px !important;
  }
  .u-sp-mb-35 {
    margin-bottom: 280px !important;
  }
  .u-sp-mb-36 {
    margin-bottom: 288px !important;
  }
  .u-sp-mb-37 {
    margin-bottom: 296px !important;
  }
  .u-sp-mb-38 {
    margin-bottom: 304px !important;
  }
  .u-sp-mb-39 {
    margin-bottom: 312px !important;
  }
  .u-sp-mb-40 {
    margin-bottom: 320px !important;
  }
  .u-sp-mb-41 {
    margin-bottom: 328px !important;
  }
  .u-sp-mb-42 {
    margin-bottom: 336px !important;
  }
  .u-sp-mb-43 {
    margin-bottom: 344px !important;
  }
  .u-sp-mb-44 {
    margin-bottom: 352px !important;
  }
  .u-sp-mb-45 {
    margin-bottom: 360px !important;
  }
  .u-sp-mb-46 {
    margin-bottom: 368px !important;
  }
  .u-sp-mb-47 {
    margin-bottom: 376px !important;
  }
  .u-sp-mb-48 {
    margin-bottom: 384px !important;
  }
  .u-sp-mb-49 {
    margin-bottom: 392px !important;
  }
  .u-sp-mb-50 {
    margin-bottom: 400px !important;
  }
}
.u-ml--20 {
  margin-left: -160px !important;
}

.u-ml--19 {
  margin-left: -152px !important;
}

.u-ml--18 {
  margin-left: -144px !important;
}

.u-ml--17 {
  margin-left: -136px !important;
}

.u-ml--16 {
  margin-left: -128px !important;
}

.u-ml--15 {
  margin-left: -120px !important;
}

.u-ml--14 {
  margin-left: -112px !important;
}

.u-ml--13 {
  margin-left: -104px !important;
}

.u-ml--12 {
  margin-left: -96px !important;
}

.u-ml--11 {
  margin-left: -88px !important;
}

.u-ml--10 {
  margin-left: -80px !important;
}

.u-ml--9 {
  margin-left: -72px !important;
}

.u-ml--8 {
  margin-left: -64px !important;
}

.u-ml--7 {
  margin-left: -56px !important;
}

.u-ml--6 {
  margin-left: -48px !important;
}

.u-ml--5 {
  margin-left: -40px !important;
}

.u-ml--4 {
  margin-left: -32px !important;
}

.u-ml--3 {
  margin-left: -24px !important;
}

.u-ml--2 {
  margin-left: -16px !important;
}

.u-ml--1 {
  margin-left: -8px !important;
}

.u-ml-0 {
  margin-left: 0px !important;
}

.u-ml-1 {
  margin-left: 8px !important;
}

.u-ml-2 {
  margin-left: 16px !important;
}

.u-ml-3 {
  margin-left: 24px !important;
}

.u-ml-4 {
  margin-left: 32px !important;
}

.u-ml-5 {
  margin-left: 40px !important;
}

.u-ml-6 {
  margin-left: 48px !important;
}

.u-ml-7 {
  margin-left: 56px !important;
}

.u-ml-8 {
  margin-left: 64px !important;
}

.u-ml-9 {
  margin-left: 72px !important;
}

.u-ml-10 {
  margin-left: 80px !important;
}

.u-ml-11 {
  margin-left: 88px !important;
}

.u-ml-12 {
  margin-left: 96px !important;
}

.u-ml-13 {
  margin-left: 104px !important;
}

.u-ml-14 {
  margin-left: 112px !important;
}

.u-ml-15 {
  margin-left: 120px !important;
}

.u-ml-16 {
  margin-left: 128px !important;
}

.u-ml-17 {
  margin-left: 136px !important;
}

.u-ml-18 {
  margin-left: 144px !important;
}

.u-ml-19 {
  margin-left: 152px !important;
}

.u-ml-20 {
  margin-left: 160px !important;
}

.u-ml-21 {
  margin-left: 168px !important;
}

.u-ml-22 {
  margin-left: 176px !important;
}

.u-ml-23 {
  margin-left: 184px !important;
}

.u-ml-24 {
  margin-left: 192px !important;
}

.u-ml-25 {
  margin-left: 200px !important;
}

.u-ml-26 {
  margin-left: 208px !important;
}

.u-ml-27 {
  margin-left: 216px !important;
}

.u-ml-28 {
  margin-left: 224px !important;
}

.u-ml-29 {
  margin-left: 232px !important;
}

.u-ml-30 {
  margin-left: 240px !important;
}

.u-ml-31 {
  margin-left: 248px !important;
}

.u-ml-32 {
  margin-left: 256px !important;
}

.u-ml-33 {
  margin-left: 264px !important;
}

.u-ml-34 {
  margin-left: 272px !important;
}

.u-ml-35 {
  margin-left: 280px !important;
}

.u-ml-36 {
  margin-left: 288px !important;
}

.u-ml-37 {
  margin-left: 296px !important;
}

.u-ml-38 {
  margin-left: 304px !important;
}

.u-ml-39 {
  margin-left: 312px !important;
}

.u-ml-40 {
  margin-left: 320px !important;
}

.u-ml-41 {
  margin-left: 328px !important;
}

.u-ml-42 {
  margin-left: 336px !important;
}

.u-ml-43 {
  margin-left: 344px !important;
}

.u-ml-44 {
  margin-left: 352px !important;
}

.u-ml-45 {
  margin-left: 360px !important;
}

.u-ml-46 {
  margin-left: 368px !important;
}

.u-ml-47 {
  margin-left: 376px !important;
}

.u-ml-48 {
  margin-left: 384px !important;
}

.u-ml-49 {
  margin-left: 392px !important;
}

.u-ml-50 {
  margin-left: 400px !important;
}

@media screen and (max-width: 1200px) {
  .u-tab-ml--20 {
    margin-left: -160px !important;
  }
  .u-tab-ml--19 {
    margin-left: -152px !important;
  }
  .u-tab-ml--18 {
    margin-left: -144px !important;
  }
  .u-tab-ml--17 {
    margin-left: -136px !important;
  }
  .u-tab-ml--16 {
    margin-left: -128px !important;
  }
  .u-tab-ml--15 {
    margin-left: -120px !important;
  }
  .u-tab-ml--14 {
    margin-left: -112px !important;
  }
  .u-tab-ml--13 {
    margin-left: -104px !important;
  }
  .u-tab-ml--12 {
    margin-left: -96px !important;
  }
  .u-tab-ml--11 {
    margin-left: -88px !important;
  }
  .u-tab-ml--10 {
    margin-left: -80px !important;
  }
  .u-tab-ml--9 {
    margin-left: -72px !important;
  }
  .u-tab-ml--8 {
    margin-left: -64px !important;
  }
  .u-tab-ml--7 {
    margin-left: -56px !important;
  }
  .u-tab-ml--6 {
    margin-left: -48px !important;
  }
  .u-tab-ml--5 {
    margin-left: -40px !important;
  }
  .u-tab-ml--4 {
    margin-left: -32px !important;
  }
  .u-tab-ml--3 {
    margin-left: -24px !important;
  }
  .u-tab-ml--2 {
    margin-left: -16px !important;
  }
  .u-tab-ml--1 {
    margin-left: -8px !important;
  }
  .u-tab-ml-0 {
    margin-left: 0px !important;
  }
  .u-tab-ml-1 {
    margin-left: 8px !important;
  }
  .u-tab-ml-2 {
    margin-left: 16px !important;
  }
  .u-tab-ml-3 {
    margin-left: 24px !important;
  }
  .u-tab-ml-4 {
    margin-left: 32px !important;
  }
  .u-tab-ml-5 {
    margin-left: 40px !important;
  }
  .u-tab-ml-6 {
    margin-left: 48px !important;
  }
  .u-tab-ml-7 {
    margin-left: 56px !important;
  }
  .u-tab-ml-8 {
    margin-left: 64px !important;
  }
  .u-tab-ml-9 {
    margin-left: 72px !important;
  }
  .u-tab-ml-10 {
    margin-left: 80px !important;
  }
  .u-tab-ml-11 {
    margin-left: 88px !important;
  }
  .u-tab-ml-12 {
    margin-left: 96px !important;
  }
  .u-tab-ml-13 {
    margin-left: 104px !important;
  }
  .u-tab-ml-14 {
    margin-left: 112px !important;
  }
  .u-tab-ml-15 {
    margin-left: 120px !important;
  }
  .u-tab-ml-16 {
    margin-left: 128px !important;
  }
  .u-tab-ml-17 {
    margin-left: 136px !important;
  }
  .u-tab-ml-18 {
    margin-left: 144px !important;
  }
  .u-tab-ml-19 {
    margin-left: 152px !important;
  }
  .u-tab-ml-20 {
    margin-left: 160px !important;
  }
  .u-tab-ml-21 {
    margin-left: 168px !important;
  }
  .u-tab-ml-22 {
    margin-left: 176px !important;
  }
  .u-tab-ml-23 {
    margin-left: 184px !important;
  }
  .u-tab-ml-24 {
    margin-left: 192px !important;
  }
  .u-tab-ml-25 {
    margin-left: 200px !important;
  }
  .u-tab-ml-26 {
    margin-left: 208px !important;
  }
  .u-tab-ml-27 {
    margin-left: 216px !important;
  }
  .u-tab-ml-28 {
    margin-left: 224px !important;
  }
  .u-tab-ml-29 {
    margin-left: 232px !important;
  }
  .u-tab-ml-30 {
    margin-left: 240px !important;
  }
  .u-tab-ml-31 {
    margin-left: 248px !important;
  }
  .u-tab-ml-32 {
    margin-left: 256px !important;
  }
  .u-tab-ml-33 {
    margin-left: 264px !important;
  }
  .u-tab-ml-34 {
    margin-left: 272px !important;
  }
  .u-tab-ml-35 {
    margin-left: 280px !important;
  }
  .u-tab-ml-36 {
    margin-left: 288px !important;
  }
  .u-tab-ml-37 {
    margin-left: 296px !important;
  }
  .u-tab-ml-38 {
    margin-left: 304px !important;
  }
  .u-tab-ml-39 {
    margin-left: 312px !important;
  }
  .u-tab-ml-40 {
    margin-left: 320px !important;
  }
  .u-tab-ml-41 {
    margin-left: 328px !important;
  }
  .u-tab-ml-42 {
    margin-left: 336px !important;
  }
  .u-tab-ml-43 {
    margin-left: 344px !important;
  }
  .u-tab-ml-44 {
    margin-left: 352px !important;
  }
  .u-tab-ml-45 {
    margin-left: 360px !important;
  }
  .u-tab-ml-46 {
    margin-left: 368px !important;
  }
  .u-tab-ml-47 {
    margin-left: 376px !important;
  }
  .u-tab-ml-48 {
    margin-left: 384px !important;
  }
  .u-tab-ml-49 {
    margin-left: 392px !important;
  }
  .u-tab-ml-50 {
    margin-left: 400px !important;
  }
}
@media screen and (max-width: 650px) {
  .u-sp-ml--20 {
    margin-left: -160px !important;
  }
  .u-sp-ml--19 {
    margin-left: -152px !important;
  }
  .u-sp-ml--18 {
    margin-left: -144px !important;
  }
  .u-sp-ml--17 {
    margin-left: -136px !important;
  }
  .u-sp-ml--16 {
    margin-left: -128px !important;
  }
  .u-sp-ml--15 {
    margin-left: -120px !important;
  }
  .u-sp-ml--14 {
    margin-left: -112px !important;
  }
  .u-sp-ml--13 {
    margin-left: -104px !important;
  }
  .u-sp-ml--12 {
    margin-left: -96px !important;
  }
  .u-sp-ml--11 {
    margin-left: -88px !important;
  }
  .u-sp-ml--10 {
    margin-left: -80px !important;
  }
  .u-sp-ml--9 {
    margin-left: -72px !important;
  }
  .u-sp-ml--8 {
    margin-left: -64px !important;
  }
  .u-sp-ml--7 {
    margin-left: -56px !important;
  }
  .u-sp-ml--6 {
    margin-left: -48px !important;
  }
  .u-sp-ml--5 {
    margin-left: -40px !important;
  }
  .u-sp-ml--4 {
    margin-left: -32px !important;
  }
  .u-sp-ml--3 {
    margin-left: -24px !important;
  }
  .u-sp-ml--2 {
    margin-left: -16px !important;
  }
  .u-sp-ml--1 {
    margin-left: -8px !important;
  }
  .u-sp-ml-0 {
    margin-left: 0px !important;
  }
  .u-sp-ml-1 {
    margin-left: 8px !important;
  }
  .u-sp-ml-2 {
    margin-left: 16px !important;
  }
  .u-sp-ml-3 {
    margin-left: 24px !important;
  }
  .u-sp-ml-4 {
    margin-left: 32px !important;
  }
  .u-sp-ml-5 {
    margin-left: 40px !important;
  }
  .u-sp-ml-6 {
    margin-left: 48px !important;
  }
  .u-sp-ml-7 {
    margin-left: 56px !important;
  }
  .u-sp-ml-8 {
    margin-left: 64px !important;
  }
  .u-sp-ml-9 {
    margin-left: 72px !important;
  }
  .u-sp-ml-10 {
    margin-left: 80px !important;
  }
  .u-sp-ml-11 {
    margin-left: 88px !important;
  }
  .u-sp-ml-12 {
    margin-left: 96px !important;
  }
  .u-sp-ml-13 {
    margin-left: 104px !important;
  }
  .u-sp-ml-14 {
    margin-left: 112px !important;
  }
  .u-sp-ml-15 {
    margin-left: 120px !important;
  }
  .u-sp-ml-16 {
    margin-left: 128px !important;
  }
  .u-sp-ml-17 {
    margin-left: 136px !important;
  }
  .u-sp-ml-18 {
    margin-left: 144px !important;
  }
  .u-sp-ml-19 {
    margin-left: 152px !important;
  }
  .u-sp-ml-20 {
    margin-left: 160px !important;
  }
  .u-sp-ml-21 {
    margin-left: 168px !important;
  }
  .u-sp-ml-22 {
    margin-left: 176px !important;
  }
  .u-sp-ml-23 {
    margin-left: 184px !important;
  }
  .u-sp-ml-24 {
    margin-left: 192px !important;
  }
  .u-sp-ml-25 {
    margin-left: 200px !important;
  }
  .u-sp-ml-26 {
    margin-left: 208px !important;
  }
  .u-sp-ml-27 {
    margin-left: 216px !important;
  }
  .u-sp-ml-28 {
    margin-left: 224px !important;
  }
  .u-sp-ml-29 {
    margin-left: 232px !important;
  }
  .u-sp-ml-30 {
    margin-left: 240px !important;
  }
  .u-sp-ml-31 {
    margin-left: 248px !important;
  }
  .u-sp-ml-32 {
    margin-left: 256px !important;
  }
  .u-sp-ml-33 {
    margin-left: 264px !important;
  }
  .u-sp-ml-34 {
    margin-left: 272px !important;
  }
  .u-sp-ml-35 {
    margin-left: 280px !important;
  }
  .u-sp-ml-36 {
    margin-left: 288px !important;
  }
  .u-sp-ml-37 {
    margin-left: 296px !important;
  }
  .u-sp-ml-38 {
    margin-left: 304px !important;
  }
  .u-sp-ml-39 {
    margin-left: 312px !important;
  }
  .u-sp-ml-40 {
    margin-left: 320px !important;
  }
  .u-sp-ml-41 {
    margin-left: 328px !important;
  }
  .u-sp-ml-42 {
    margin-left: 336px !important;
  }
  .u-sp-ml-43 {
    margin-left: 344px !important;
  }
  .u-sp-ml-44 {
    margin-left: 352px !important;
  }
  .u-sp-ml-45 {
    margin-left: 360px !important;
  }
  .u-sp-ml-46 {
    margin-left: 368px !important;
  }
  .u-sp-ml-47 {
    margin-left: 376px !important;
  }
  .u-sp-ml-48 {
    margin-left: 384px !important;
  }
  .u-sp-ml-49 {
    margin-left: 392px !important;
  }
  .u-sp-ml-50 {
    margin-left: 400px !important;
  }
}
.u-ml-auto {
  margin-left: auto !important;
}

.u-mr-auto {
  margin-right: auto !important;
}

.u-mt-auto {
  margin-top: auto !important;
}

.u-mb-auto {
  margin-bottom: auto !important;
}

/* 文字を操作する系ユーティリティ */
.u-gothic {
  font-family: var(--gothic);
}

.u-minchou {
  font-family: var(--minchou);
}

.u-font-ss {
  font-size: 12px !important;
}

.u-font-s {
  font-size: 14px !important;
}

.u-font-m {
  font-size: 16px !important;
}

.u-font-l {
  font-size: 18px !important;
}

.u-font-ll {
  font-size: 20px !important;
}

.u-font10 {
  font-size: 10px !important;
}

.u-font11 {
  font-size: 11px !important;
}

.u-font12 {
  font-size: 12px !important;
}

.u-font13 {
  font-size: 13px !important;
}

.u-font14 {
  font-size: 14px !important;
}

.u-font15 {
  font-size: 15px !important;
}

.u-font16 {
  font-size: 16px !important;
}

.u-font17 {
  font-size: 17px !important;
}

.u-font18 {
  font-size: 18px !important;
}

.u-font19 {
  font-size: 19px !important;
}

.u-font20 {
  font-size: 20px !important;
}

.u-font21 {
  font-size: 21px !important;
}

.u-font22 {
  font-size: 22px !important;
}

.u-font23 {
  font-size: 23px !important;
}

.u-font24 {
  font-size: 24px !important;
}

.u-font25 {
  font-size: 25px !important;
}

.u-font26 {
  font-size: 26px !important;
}

.u-font27 {
  font-size: 27px !important;
}

.u-font28 {
  font-size: 28px !important;
}

.u-font29 {
  font-size: 29px !important;
}

.u-font30 {
  font-size: 30px !important;
}

.u-font31 {
  font-size: 31px !important;
}

.u-font32 {
  font-size: 32px !important;
}

.u-font33 {
  font-size: 33px !important;
}

.u-font34 {
  font-size: 34px !important;
}

.u-font35 {
  font-size: 35px !important;
}

.u-font36 {
  font-size: 36px !important;
}

.u-font37 {
  font-size: 37px !important;
}

.u-font38 {
  font-size: 38px !important;
}

.u-font39 {
  font-size: 39px !important;
}

.u-font40 {
  font-size: 40px !important;
}

.u-font41 {
  font-size: 41px !important;
}

.u-font42 {
  font-size: 42px !important;
}

.u-font43 {
  font-size: 43px !important;
}

.u-font44 {
  font-size: 44px !important;
}

.u-font45 {
  font-size: 45px !important;
}

.u-font46 {
  font-size: 46px !important;
}

.u-font47 {
  font-size: 47px !important;
}

.u-font48 {
  font-size: 48px !important;
}

.u-font49 {
  font-size: 49px !important;
}

.u-font50 {
  font-size: 50px !important;
}

.u-font51 {
  font-size: 51px !important;
}

.u-font52 {
  font-size: 52px !important;
}

.u-font53 {
  font-size: 53px !important;
}

.u-font54 {
  font-size: 54px !important;
}

.u-font55 {
  font-size: 55px !important;
}

.u-font56 {
  font-size: 56px !important;
}

.u-font57 {
  font-size: 57px !important;
}

.u-font58 {
  font-size: 58px !important;
}

.u-font59 {
  font-size: 59px !important;
}

.u-font60 {
  font-size: 60px !important;
}

.u-font61 {
  font-size: 61px !important;
}

.u-font62 {
  font-size: 62px !important;
}

.u-font63 {
  font-size: 63px !important;
}

.u-font64 {
  font-size: 64px !important;
}

.u-font65 {
  font-size: 65px !important;
}

.u-font66 {
  font-size: 66px !important;
}

.u-font67 {
  font-size: 67px !important;
}

.u-font68 {
  font-size: 68px !important;
}

.u-font69 {
  font-size: 69px !important;
}

.u-font70 {
  font-size: 70px !important;
}

.u-font71 {
  font-size: 71px !important;
}

.u-font72 {
  font-size: 72px !important;
}

.u-font73 {
  font-size: 73px !important;
}

.u-font74 {
  font-size: 74px !important;
}

.u-font75 {
  font-size: 75px !important;
}

.u-font76 {
  font-size: 76px !important;
}

.u-font77 {
  font-size: 77px !important;
}

.u-font78 {
  font-size: 78px !important;
}

.u-font79 {
  font-size: 79px !important;
}

.u-font80 {
  font-size: 80px !important;
}

@media screen and (max-width: 1200px) {
  .u-tab-font0 {
    font-size: 0px !important;
  }
  .u-tab-font1 {
    font-size: 1px !important;
  }
  .u-tab-font2 {
    font-size: 2px !important;
  }
  .u-tab-font3 {
    font-size: 3px !important;
  }
  .u-tab-font4 {
    font-size: 4px !important;
  }
  .u-tab-font5 {
    font-size: 5px !important;
  }
  .u-tab-font6 {
    font-size: 6px !important;
  }
  .u-tab-font7 {
    font-size: 7px !important;
  }
  .u-tab-font8 {
    font-size: 8px !important;
  }
  .u-tab-font9 {
    font-size: 9px !important;
  }
  .u-tab-font10 {
    font-size: 10px !important;
  }
  .u-tab-font11 {
    font-size: 11px !important;
  }
  .u-tab-font12 {
    font-size: 12px !important;
  }
  .u-tab-font13 {
    font-size: 13px !important;
  }
  .u-tab-font14 {
    font-size: 14px !important;
  }
  .u-tab-font15 {
    font-size: 15px !important;
  }
  .u-tab-font16 {
    font-size: 16px !important;
  }
  .u-tab-font17 {
    font-size: 17px !important;
  }
  .u-tab-font18 {
    font-size: 18px !important;
  }
  .u-tab-font19 {
    font-size: 19px !important;
  }
  .u-tab-font20 {
    font-size: 20px !important;
  }
  .u-tab-font21 {
    font-size: 21px !important;
  }
  .u-tab-font22 {
    font-size: 22px !important;
  }
  .u-tab-font23 {
    font-size: 23px !important;
  }
  .u-tab-font24 {
    font-size: 24px !important;
  }
  .u-tab-font25 {
    font-size: 25px !important;
  }
  .u-tab-font26 {
    font-size: 26px !important;
  }
  .u-tab-font27 {
    font-size: 27px !important;
  }
  .u-tab-font28 {
    font-size: 28px !important;
  }
  .u-tab-font29 {
    font-size: 29px !important;
  }
  .u-tab-font30 {
    font-size: 30px !important;
  }
  .u-tab-font31 {
    font-size: 31px !important;
  }
  .u-tab-font32 {
    font-size: 32px !important;
  }
  .u-tab-font33 {
    font-size: 33px !important;
  }
  .u-tab-font34 {
    font-size: 34px !important;
  }
  .u-tab-font35 {
    font-size: 35px !important;
  }
  .u-tab-font36 {
    font-size: 36px !important;
  }
  .u-tab-font37 {
    font-size: 37px !important;
  }
  .u-tab-font38 {
    font-size: 38px !important;
  }
  .u-tab-font39 {
    font-size: 39px !important;
  }
  .u-tab-font40 {
    font-size: 40px !important;
  }
  .u-tab-font41 {
    font-size: 41px !important;
  }
  .u-tab-font42 {
    font-size: 42px !important;
  }
  .u-tab-font43 {
    font-size: 43px !important;
  }
  .u-tab-font44 {
    font-size: 44px !important;
  }
  .u-tab-font45 {
    font-size: 45px !important;
  }
  .u-tab-font46 {
    font-size: 46px !important;
  }
  .u-tab-font47 {
    font-size: 47px !important;
  }
  .u-tab-font48 {
    font-size: 48px !important;
  }
  .u-tab-font49 {
    font-size: 49px !important;
  }
  .u-tab-font50 {
    font-size: 50px !important;
  }
  .u-tab-font51 {
    font-size: 51px !important;
  }
  .u-tab-font52 {
    font-size: 52px !important;
  }
  .u-tab-font53 {
    font-size: 53px !important;
  }
  .u-tab-font54 {
    font-size: 54px !important;
  }
  .u-tab-font55 {
    font-size: 55px !important;
  }
  .u-tab-font56 {
    font-size: 56px !important;
  }
  .u-tab-font57 {
    font-size: 57px !important;
  }
  .u-tab-font58 {
    font-size: 58px !important;
  }
  .u-tab-font59 {
    font-size: 59px !important;
  }
  .u-tab-font60 {
    font-size: 60px !important;
  }
  .u-tab-font61 {
    font-size: 61px !important;
  }
  .u-tab-font62 {
    font-size: 62px !important;
  }
  .u-tab-font63 {
    font-size: 63px !important;
  }
  .u-tab-font64 {
    font-size: 64px !important;
  }
  .u-tab-font65 {
    font-size: 65px !important;
  }
  .u-tab-font66 {
    font-size: 66px !important;
  }
  .u-tab-font67 {
    font-size: 67px !important;
  }
  .u-tab-font68 {
    font-size: 68px !important;
  }
  .u-tab-font69 {
    font-size: 69px !important;
  }
  .u-tab-font70 {
    font-size: 70px !important;
  }
  .u-tab-font71 {
    font-size: 71px !important;
  }
  .u-tab-font72 {
    font-size: 72px !important;
  }
  .u-tab-font73 {
    font-size: 73px !important;
  }
  .u-tab-font74 {
    font-size: 74px !important;
  }
  .u-tab-font75 {
    font-size: 75px !important;
  }
  .u-tab-font76 {
    font-size: 76px !important;
  }
  .u-tab-font77 {
    font-size: 77px !important;
  }
  .u-tab-font78 {
    font-size: 78px !important;
  }
  .u-tab-font79 {
    font-size: 79px !important;
  }
  .u-tab-font80 {
    font-size: 80px !important;
  }
}
@media screen and (max-width: 650px) {
  .u-sp-font0 {
    font-size: 0px !important;
  }
  .u-sp-font1 {
    font-size: 1px !important;
  }
  .u-sp-font2 {
    font-size: 2px !important;
  }
  .u-sp-font3 {
    font-size: 3px !important;
  }
  .u-sp-font4 {
    font-size: 4px !important;
  }
  .u-sp-font5 {
    font-size: 5px !important;
  }
  .u-sp-font6 {
    font-size: 6px !important;
  }
  .u-sp-font7 {
    font-size: 7px !important;
  }
  .u-sp-font8 {
    font-size: 8px !important;
  }
  .u-sp-font9 {
    font-size: 9px !important;
  }
  .u-sp-font10 {
    font-size: 10px !important;
  }
  .u-sp-font11 {
    font-size: 11px !important;
  }
  .u-sp-font12 {
    font-size: 12px !important;
  }
  .u-sp-font13 {
    font-size: 13px !important;
  }
  .u-sp-font14 {
    font-size: 14px !important;
  }
  .u-sp-font15 {
    font-size: 15px !important;
  }
  .u-sp-font16 {
    font-size: 16px !important;
  }
  .u-sp-font17 {
    font-size: 17px !important;
  }
  .u-sp-font18 {
    font-size: 18px !important;
  }
  .u-sp-font19 {
    font-size: 19px !important;
  }
  .u-sp-font20 {
    font-size: 20px !important;
  }
  .u-sp-font21 {
    font-size: 21px !important;
  }
  .u-sp-font22 {
    font-size: 22px !important;
  }
  .u-sp-font23 {
    font-size: 23px !important;
  }
  .u-sp-font24 {
    font-size: 24px !important;
  }
  .u-sp-font25 {
    font-size: 25px !important;
  }
  .u-sp-font26 {
    font-size: 26px !important;
  }
  .u-sp-font27 {
    font-size: 27px !important;
  }
  .u-sp-font28 {
    font-size: 28px !important;
  }
  .u-sp-font29 {
    font-size: 29px !important;
  }
  .u-sp-font30 {
    font-size: 30px !important;
  }
  .u-sp-font31 {
    font-size: 31px !important;
  }
  .u-sp-font32 {
    font-size: 32px !important;
  }
  .u-sp-font33 {
    font-size: 33px !important;
  }
  .u-sp-font34 {
    font-size: 34px !important;
  }
  .u-sp-font35 {
    font-size: 35px !important;
  }
  .u-sp-font36 {
    font-size: 36px !important;
  }
  .u-sp-font37 {
    font-size: 37px !important;
  }
  .u-sp-font38 {
    font-size: 38px !important;
  }
  .u-sp-font39 {
    font-size: 39px !important;
  }
  .u-sp-font40 {
    font-size: 40px !important;
  }
  .u-sp-font41 {
    font-size: 41px !important;
  }
  .u-sp-font42 {
    font-size: 42px !important;
  }
  .u-sp-font43 {
    font-size: 43px !important;
  }
  .u-sp-font44 {
    font-size: 44px !important;
  }
  .u-sp-font45 {
    font-size: 45px !important;
  }
  .u-sp-font46 {
    font-size: 46px !important;
  }
  .u-sp-font47 {
    font-size: 47px !important;
  }
  .u-sp-font48 {
    font-size: 48px !important;
  }
  .u-sp-font49 {
    font-size: 49px !important;
  }
  .u-sp-font50 {
    font-size: 50px !important;
  }
  .u-sp-font51 {
    font-size: 51px !important;
  }
  .u-sp-font52 {
    font-size: 52px !important;
  }
  .u-sp-font53 {
    font-size: 53px !important;
  }
  .u-sp-font54 {
    font-size: 54px !important;
  }
  .u-sp-font55 {
    font-size: 55px !important;
  }
  .u-sp-font56 {
    font-size: 56px !important;
  }
  .u-sp-font57 {
    font-size: 57px !important;
  }
  .u-sp-font58 {
    font-size: 58px !important;
  }
  .u-sp-font59 {
    font-size: 59px !important;
  }
  .u-sp-font60 {
    font-size: 60px !important;
  }
  .u-sp-font61 {
    font-size: 61px !important;
  }
  .u-sp-font62 {
    font-size: 62px !important;
  }
  .u-sp-font63 {
    font-size: 63px !important;
  }
  .u-sp-font64 {
    font-size: 64px !important;
  }
  .u-sp-font65 {
    font-size: 65px !important;
  }
  .u-sp-font66 {
    font-size: 66px !important;
  }
  .u-sp-font67 {
    font-size: 67px !important;
  }
  .u-sp-font68 {
    font-size: 68px !important;
  }
  .u-sp-font69 {
    font-size: 69px !important;
  }
  .u-sp-font70 {
    font-size: 70px !important;
  }
  .u-sp-font71 {
    font-size: 71px !important;
  }
  .u-sp-font72 {
    font-size: 72px !important;
  }
  .u-sp-font73 {
    font-size: 73px !important;
  }
  .u-sp-font74 {
    font-size: 74px !important;
  }
  .u-sp-font75 {
    font-size: 75px !important;
  }
  .u-sp-font76 {
    font-size: 76px !important;
  }
  .u-sp-font77 {
    font-size: 77px !important;
  }
  .u-sp-font78 {
    font-size: 78px !important;
  }
  .u-sp-font79 {
    font-size: 79px !important;
  }
  .u-sp-font80 {
    font-size: 80px !important;
  }
}
.u-fontWhite {
  color: #fff;
}

.u-fontRed {
  color: #E36B38;
}

.u-kakko {
  text-indent: -0.5em;
}

.u-normal {
  font-weight: 400 !important;
}

.u-medium {
  font-weight: 500 !important;
}

.u-bold {
  font-weight: 700 !important;
}

.u-semibold {
  font-weight: 600 !important;
}

.u-ls-thin {
  letter-spacing: -0.05em;
}

.u-ls-wide {
  letter-spacing: 0.1em;
}

.u-ls-0\.8 {
  letter-spacing: 0.8px !important;
}

.u-lh1 {
  line-height: 1 !important;
}

.u-lh1\.5 {
  line-height: 1.5 !important;
}

.u-lh1\.8 {
  line-height: 1.8 !important;
}

.u-lh2 {
  line-height: 2 !important;
}

.u-lh3 {
  line-height: 3 !important;
}

.u-lh4 {
  line-height: 4 !important;
}

.u-textleft, .textleft, .alignleft {
  text-align: left !important;
}

.u-textcenter, .textcenter, .aligncenter {
  text-align: center !important;
}

.u-textright, .textright, .alignright {
  text-align: right !important;
}

.u-textjustify, .textjustify, .alignjustify {
  text-align: justify !important;
}

@media screen and (max-width: 1200px) {
  .u-tab-textcenter,
  .u-textcenter-tab {
    text-align: center !important;
  }
}

@media screen and (max-width: 1200px) {
  .u-tab-textright,
  .u-textright-tab {
    text-align: right !important;
  }
}

@media screen and (max-width: 1200px) {
  .u-tab-textleft,
  .u-textleft-tab {
    text-align: left !important;
  }
}

@media screen and (max-width: 650px) {
  .u-sp-textcenter,
  .u-textcenter-sp {
    text-align: center !important;
  }
}

@media screen and (max-width: 650px) {
  .u-sp-textleft,
  .u-textleft-sp {
    text-align: left !important;
  }
}

@media screen and (max-width: 650px) {
  .u-sp-textright,
  .u-textright-sp {
    text-align: right !important;
  }
}

.u-marker-green {
  background: linear-gradient(transparent 45%, #CCEAE2 45%);
}

.u-text-external::after {
  background: url("images/icon-target-blank.svg") no-repeat center center/contain;
  content: "";
  display: inline-block;
  height: 11px;
  margin: 0 0 0 6px;
  width: 11px;
}

/* 表示&非表示を操作する系ユーティリティ */
@media screen and (max-width: 650px) {
  .u-pc {
    display: none !important;
  }
}

.u-tab {
  display: none;
}
@media screen and (max-width: 1200px) {
  .u-tab {
    display: inline-block;
  }
}

@media screen and (max-width: 1200px) {
  .u-tab-none {
    display: none !important;
  }
}

.u-sp {
  display: none !important;
}
@media screen and (max-width: 650px) {
  .u-sp {
    display: block !important;
  }
}

.u-small {
  display: none;
}
@media screen and (max-width: 365px) {
  .u-small {
    display: inline-block;
  }
}

@media screen and (max-width: 365px) {
  .u-small-none {
    display: none;
  }
}

.u-hide {
  display: none !important;
}

/* 居場所がなかったのでここに */
.u-inlineblock {
  display: inline-block;
}

.u-padding0 {
  padding: 0 !important;
}

/* サブページ
------------------------------------*/
@keyframes p-home-kv-breathe-yellow {
  0%, 100% {
    transform: scale(1);
  }
  50% {
    transform: scale(0.95);
  }
}
@keyframes p-home-kv-breathe-blue {
  0%, 100% {
    transform: scale(1);
  }
  50% {
    transform: scale(1.06);
  }
}
.p-home-kv {
  isolation: isolate;
  margin: 0 -24px !important;
  max-width: none !important;
  padding: 40px 0 80px;
  position: relative;
  width: calc(100% + 48px);
  z-index: -1;
}
@media screen and (max-width: 650px) {
  .p-home-kv {
    padding: 24px 0 0;
  }
}
.p-home-kv .p-home-kv__bg {
  margin: auto;
  pointer-events: none;
  position: absolute;
  inset: 0;
}
.p-home-kv .p-home-kv__bg-item {
  display: block;
  max-width: none;
  pointer-events: none;
  position: absolute;
  will-change: transform;
}
.p-home-kv .p-home-kv__bg-item.is-yellow {
  animation: p-home-kv-breathe-yellow 12s ease infinite;
  height: auto;
  left: 0;
  top: -40px;
  transform-origin: top left;
  width: min(48vw, 520px);
}
@media screen and (max-width: 1200px) {
  .p-home-kv .p-home-kv__bg-item.is-yellow {
    top: 0;
    width: 270px;
  }
}
.p-home-kv .p-home-kv__bg-item.is-yellow img {
  display: block;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: bottom right;
     object-position: bottom right;
  width: 100%;
}
.p-home-kv .p-home-kv__bg-item.is-blue {
  animation: p-home-kv-breathe-blue 24s ease infinite;
  bottom: -600px;
  height: auto;
  overflow: hidden;
  right: 0;
  transform-origin: right center;
  width: min(78vw, 980px);
}
@media screen and (max-width: 1200px) {
  .p-home-kv .p-home-kv__bg-item.is-blue {
    bottom: -120px;
    width: min(100vw, 480px);
  }
}
.p-home-kv .p-home-kv__bg-item.is-blue img {
  display: block;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center left;
     object-position: center left;
  width: 100%;
}
@media screen and (max-width: 1200px) {
  .p-home-kv .p-home-kv__bg-item.is-blue img {
    position: relative;
    right: -15%;
  }
}
@media (prefers-reduced-motion: reduce) {
  .p-home-kv .p-home-kv__bg-item {
    animation: none;
  }
}
.p-home-kv .p-home-kv__inner {
  margin: 0 auto;
  max-width: 1200px;
  min-height: 720px;
  padding: 0 24px 40px;
  z-index: 1;
}
@media screen and (max-width: 1200px) {
  .p-home-kv .p-home-kv__inner {
    min-height: 0;
    padding-bottom: 0;
  }
}
.p-home-kv .p-home-kv__copy {
  padding-top: 48px;
  position: relative;
  z-index: 2;
}
@media screen and (max-width: 1200px) {
  .p-home-kv .p-home-kv__copy {
    max-width: 100%;
    padding-top: 16px;
  }
}
.p-home-kv .p-home-kv__title {
  display: block;
  max-width: 855px;
  width: 100%;
}
@media screen and (max-width: 1200px) {
  .p-home-kv .p-home-kv__title {
    max-width: 610px;
  }
}
.p-home-kv .p-home-kv__title img {
  display: block;
  height: auto;
}
.p-home-kv .p-home-kv__lead {
  color: #666;
  font-size: 20px;
  font-weight: 500;
  letter-spacing: 6px;
  line-height: 32px;
  margin: 0;
  max-width: 28em;
}
.p-home-kv .p-home-kv__lead em {
  display: inline-block;
  font-style: normal;
}
.p-home-kv .p-home-kv__stage {
  height: 640px;
  overflow: hidden;
  perspective: 1200px;
  pointer-events: none;
  position: absolute;
  right: 0;
  bottom: -80px;
  transform-style: preserve-3d;
  width: min(72%, 960px);
  z-index: 1;
}
@media screen and (max-width: 1200px) {
  .p-home-kv .p-home-kv__stage {
    height: min(78vw, 480px);
    max-width: none;
    position: static;
    right: auto;
    bottom: auto;
    width: calc(100% + 24px);
  }
}
@media screen and (max-width: 650px) {
  .p-home-kv .p-home-kv__stage {
    height: 360px;
  }
}
.p-home-kv .p-home-kv__photo {
  backface-visibility: hidden;
  height: auto;
  left: 0;
  margin: 0;
  opacity: 0;
  position: absolute;
  top: 0;
  transform-origin: center center;
  will-change: transform, opacity;
  width: clamp(110px, 18vw, 160px);
}
.p-home-kv .p-home-kv__photo img {
  display: block;
  height: auto;
  -o-object-fit: cover;
     object-fit: cover;
  width: 100%;
}
.p-home-kv .p-home-kv__photo:nth-child(3n) {
  width: clamp(140px, 22vw, 320px);
}
.p-home-kv .p-home-kv__photo:nth-child(5n) {
  width: clamp(100px, 14vw, 200px);
}
.p-home-kv.is-static .p-home-kv__photo {
  opacity: 1;
}

.p-home-pickup {
  margin: 0 -24px !important;
  max-width: none !important;
  overflow: hidden;
  position: relative;
  width: calc(100% + 48px);
}
.p-home-pickup .swiper {
  overflow: hidden;
  width: 100%;
}
.p-home-pickup .swiper-slide {
  box-sizing: border-box;
  height: auto;
  width: 290px;
}
.p-home-pickup .p-home-pickup__items {
  color: inherit;
  display: flex;
  flex-direction: column;
  gap: 10px;
  text-decoration: none;
  width: 290px;
}
.p-home-pickup .p-home-pickup-topic__image {
  border-radius: 10px;
  display: block;
  height: 197px;
  margin: 0;
  overflow: hidden;
  width: 100%;
}
.p-home-pickup .p-home-pickup-topic__image img {
  display: block;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  width: 100%;
}
.p-home-pickup .p-home-pickup-topic__content {
  background: #fff;
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  gap: 10px;
  padding: 10px;
  width: 100%;
}
.p-home-pickup .p-home-pickup-topic__category {
  align-items: center;
  background: #279af2;
  border-radius: 5px;
  color: #fff;
  display: inline-flex;
  font-size: 12px;
  font-weight: 500;
  justify-content: center;
  line-height: normal;
  margin: 0;
  padding: 5px 10px;
  width: -moz-fit-content;
  width: fit-content;
}
.p-home-pickup .p-home-pickup-topic__title {
  color: #000;
  font-size: 12px;
  font-weight: 400;
  line-height: normal;
  margin: 0;
}
.p-home-pickup .swiper-pagination {
  bottom: 0 !important;
  position: relative !important;
  margin-top: 24px;
}
.p-home-pickup .swiper-pagination-bullet {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background: #d9d9d9;
  border: 0;
  cursor: pointer;
  opacity: 1;
  margin: 0 4px;
}
.p-home-pickup .swiper-pagination-bullet-active {
  background: var(--color-main, #4FA0C5);
}

.p-home-intro-wrapper {
  background: linear-gradient(180deg, rgba(234, 255, 230, 0) 0%, #B4D3FF 25%, #FFFED9 75.48%, #D0E3E3 100%);
  margin: 0 -24px;
  max-width: none !important;
  padding: 80px 0;
  width: calc(100% + 48px);
}

.p-home-intro {
  align-items: flex-start;
  display: flex;
  flex-wrap: wrap;
  gap: 40px 100px;
  justify-content: center;
  margin: 0 auto;
  max-width: 1040px;
  width: 100%;
}
@media screen and (max-width: 650px) {
  .p-home-intro {
    gap: 32px;
  }
}
.p-home-intro .p-home-intro__image {
  border-radius: 10px;
  flex: 0 0 400px;
  margin: 0;
  max-width: 100%;
  overflow: hidden;
}
@media screen and (max-width: 1200px) {
  .p-home-intro .p-home-intro__image {
    flex: 0 0 610px;
  }
}
.p-home-intro .p-home-intro__image img {
  display: block;
  height: auto;
  width: 100%;
}
.p-home-intro .p-home-intro__body {
  display: flex;
  flex: 0 1 425px;
  flex-direction: column;
  gap: 21px;
  max-width: 100%;
  min-width: 0;
  width: 425px;
}
@media screen and (max-width: 1200px) {
  .p-home-intro .p-home-intro__body {
    flex: 0 0 610px;
  }
}
.p-home-intro .p-home-intro__copy {
  display: flex;
  flex-direction: column;
  gap: 40px;
  width: 100%;
}
.p-home-intro .p-home-intro__title {
  color: var(--color-main, #4FA0C5);
  font-size: 20px;
  font-weight: 500;
  line-height: 40px;
  margin: 0;
}
.p-home-intro .p-home-intro__text {
  color: #666;
  font-size: 16px;
  font-weight: 400;
  line-height: 28px;
  margin: 0;
}
.p-home-intro .p-home-intro__text strong {
  display: block;
  font-weight: 500;
  line-height: 28px;
  margin: 0 0 28px;
}
.p-home-intro .p-home-intro__button {
  margin: 0;
}
@media screen and (max-width: 1200px) {
  .p-home-intro .p-home-intro__button {
    margin: 0 auto;
  }
}

.p-home-industry {
  align-items: center;
  display: flex;
  flex-direction: column;
  gap: 40px;
  margin: 0 auto;
  max-width: 800px;
  padding: 0 24px;
  width: 100%;
}
.p-home-industry .p-home-industry__diagram {
  display: block;
  margin: 0 auto;
  max-width: 354px;
  width: 100%;
}
.p-home-industry .p-home-industry__diagram img {
  display: block;
  height: auto;
  width: 100%;
}
.p-home-industry .p-home-industry__head {
  display: flex;
  flex-direction: column;
  gap: 10px;
  text-align: center;
  width: 100%;
}
.p-home-industry .p-home-industry__title {
  color: var(--color-main, #4FA0C5);
  font-size: 20px;
  font-weight: 500;
  line-height: 40px;
  margin: 0;
}
.p-home-industry .p-home-industry__lead {
  color: #666;
  font-size: 16px;
  font-weight: 400;
  line-height: normal;
  margin: 0;
}
.p-home-industry .p-home-industry__note {
  color: #666;
  font-size: 16px;
  font-weight: 400;
  line-height: normal;
  margin: 0;
  text-align: center;
}

.p-home-lineup {
  align-items: center;
  display: flex;
  flex-direction: column;
  gap: 56px;
  margin: 0 auto;
  max-width: 1380px !important;
  padding: 0 24px;
  width: 100%;
}
.p-home-lineup .p-home-lineup__lead {
  color: #666;
  font-size: 16px;
  font-weight: 400;
  line-height: 20px;
  text-align: center;
}
.p-home-lineup .p-home-lineup__cards {
  align-items: stretch;
  display: grid;
  gap: 24px;
  grid-template-columns: repeat(4, minmax(0, 315px));
  justify-content: center;
  width: 100%;
}
@media screen and (max-width: 1200px) {
  .p-home-lineup .p-home-lineup__cards {
    grid-template-columns: repeat(2, minmax(0, 315px));
  }
}
@media screen and (max-width: 650px) {
  .p-home-lineup .p-home-lineup__cards {
    grid-template-columns: minmax(0, 315px);
  }
}
.p-home-lineup .p-home-lineup__cards .c-card-lineup {
  height: 100%;
  min-height: 100%;
  width: 100%;
}

.p-home-case {
  align-items: center;
  display: flex;
  flex-direction: column;
  gap: 56px;
  margin: 0 auto;
  max-width: 1040px;
  padding: 0 24px;
  width: 100%;
}
.p-home-case .p-home-case__text {
  color: #666;
  font-family: "Noto Sans JP";
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 28px; /* 175% */
  max-width: 800px;
}

.p-home-news {
  align-items: flex-start;
  display: flex;
  flex-wrap: wrap;
  gap: 100px;
  justify-content: center;
  margin: 0 auto;
  max-width: 940px;
  width: 100%;
}
.p-home-news .p-home-news__head {
  display: flex;
  flex-direction: column;
  gap: 16px;
  width: 210px;
}
@media screen and (max-width: 650px) {
  .p-home-news .p-home-news__head {
    width: 100%;
  }
}
.p-home-news .p-home-news__list {
  flex: 1 1 0;
  margin: 0;
  min-width: 0;
  max-width: 628px;
}

.p-contact-mail {
  background: rgba(220, 244, 255, 0.8);
  box-sizing: border-box;
  margin: 0 -25px !important;
  max-width: none !important;
  padding: 80px 25px;
  width: calc(100% + 50px) !important;
}
@media screen and (max-width: 650px) {
  .p-contact-mail {
    padding: 48px 25px;
  }
}
.p-contact-mail .p-contact-mail__inner {
  display: flex;
  flex-direction: column;
  gap: 64px;
  margin: 0 auto;
  max-width: 900px;
  width: 100%;
}
@media screen and (max-width: 650px) {
  .p-contact-mail .p-contact-mail__inner {
    gap: 40px;
  }
}
.p-contact-mail .p-contact-mail__head {
  display: flex;
  flex-direction: column;
  gap: 32px;
  width: 100%;
}
@media screen and (max-width: 650px) {
  .p-contact-mail .p-contact-mail__head {
    gap: 24px;
  }
}
.p-contact-mail .p-contact-mail__lead {
  color: #666;
  font-size: 16px;
  font-weight: 400;
  line-height: 180%;
  margin: 0;
  text-align: center;
}
@media screen and (max-width: 650px) {
  .p-contact-mail .p-contact-mail__lead {
    font-size: 14px;
    text-align: left;
  }
}
.p-contact-mail .c-headline-page {
  margin: 0;
}

.p-contact-phone {
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  gap: 40px;
  margin: 0 auto;
  max-width: none;
  padding: 80px 0;
  width: 100%;
}
@media screen and (max-width: 650px) {
  .p-contact-phone {
    gap: 32px;
    padding: 48px 0;
  }
}
.p-contact-phone .p-contact-phone__head {
  display: flex;
  flex-direction: column;
  gap: 32px;
  margin: 0 auto;
  max-width: 900px;
  width: 100%;
}
@media screen and (max-width: 650px) {
  .p-contact-phone .p-contact-phone__head {
    gap: 24px;
  }
}
.p-contact-phone .c-headline-page {
  margin: 0;
}
.p-contact-phone .c-headline-page.is-medium {
  font-size: 24px;
}
@media screen and (max-width: 650px) {
  .p-contact-phone .c-headline-page.is-medium {
    font-size: 20px;
  }
}
.p-contact-phone .p-contact-phone__lead {
  color: #666;
  font-size: 16px;
  font-weight: 400;
  line-height: 180%;
  margin: 0;
  text-align: center;
}
@media screen and (max-width: 650px) {
  .p-contact-phone .p-contact-phone__lead {
    font-size: 14px;
    text-align: left;
  }
}

.p-contact-info {
  align-items: center;
  background: var(--color-white, #FFF);
  border-radius: 20px;
  border: 3px solid var(--color-main, #4FA0C5);
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  margin: 0 auto;
  max-width: 325px;
  padding: 20px;
  text-align: center;
  width: 100%;
}
.p-contact-info .p-contact-info__headline {
  color: #000;
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 150%;
  letter-spacing: 0;
  margin: 0 0 8px;
  width: 100%;
}
.p-contact-info .p-contact-info__tel {
  color: var(--color-main, #4FA0C5);
  font-size: 24px;
  font-style: normal;
  font-weight: 700;
  line-height: 150%;
  letter-spacing: 0;
  width: 100%;
}
.p-contact-info .p-contact-info__tel strong {
  font-size: 32px;
  font-weight: 700;
  letter-spacing: 0;
}
.p-contact-info .p-contact-info__time {
  color: #000;
  font-size: 14px;
  font-style: normal;
  font-weight: 400;
  line-height: 150%;
  letter-spacing: 0;
  text-align: center;
  width: 100%;
}

.p-faq-categories {
  background: #FFF;
  border-radius: 20px;
  padding: 40px 48px;
}

.p-company-statement {
  border-left: 4px solid #B4D3FF;
  box-sizing: border-box;
  color: #666;
  font-size: 16px;
  font-weight: 500;
  line-height: 28px;
  margin: 0;
  padding: 0 0 0 20px;
  width: 100%;
}

.p-company-overview {
  background: rgba(220, 244, 255, 0.8);
  box-sizing: border-box;
  margin: 0 -25px !important;
  max-width: none !important;
  padding: 80px 25px 80px;
  width: calc(100% + 50px) !important;
}
@media screen and (max-width: 650px) {
  .p-company-overview {
    padding: 48px 25px;
  }
}

.p-ffc-lead {
  color: #666;
  font-size: 16px;
  font-weight: 400;
  line-height: 28px;
  max-width: 700px;
}

.p-ffc-feature {
  border-bottom: 1px solid var(--color-main, #4FA0C5);
  border-top: 1px solid var(--color-main, #4FA0C5);
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  gap: 40px;
  max-width: 1040px;
  padding: 30px 0;
}
@media screen and (max-width: 650px) {
  .p-ffc-feature {
    gap: 24px;
    padding: 24px 0;
  }
}
.p-ffc-feature .p-ffc-feature__body {
  align-items: flex-start;
  display: flex;
  flex-wrap: wrap;
  gap: 52px;
  width: 100%;
}
@media screen and (max-width: 650px) {
  .p-ffc-feature .p-ffc-feature__body {
    flex-direction: column;
    gap: 24px;
  }
}
.p-ffc-feature .p-ffc-feature__image {
  border-radius: 10px;
  flex-shrink: 0;
  margin: 0;
  max-width: 100%;
  overflow: hidden;
  width: 50%;
}
@media screen and (max-width: 650px) {
  .p-ffc-feature .p-ffc-feature__image {
    width: 100%;
  }
}
.p-ffc-feature .p-ffc-feature__image img {
  display: block;
  height: auto;
  width: 100%;
}
.p-ffc-feature .p-ffc-feature__text {
  color: #666;
  display: flex;
  flex: 1;
  flex-direction: column;
  font-size: 16px;
  font-weight: 400;
  gap: 28px;
  line-height: 175%;
}
.p-ffc-feature .p-ffc-feature__buttons {
  display: flex;
  flex-wrap: wrap;
  gap: 40px 100px;
  justify-content: space-between;
  width: 100%;
}
@media screen and (max-width: 1200px) {
  .p-ffc-feature .p-ffc-feature__buttons {
    justify-content: center;
  }
}

.p-ffc-products {
  display: flex;
  flex-wrap: wrap;
  gap: 40px 80px;
  justify-content: center;
}

.p-product-lead {
  color: #666;
  font-size: 16px;
  font-weight: 400;
  line-height: 28px;
  margin: 0 auto;
  max-width: 700px;
}

.p-product-business {
  background: linear-gradient(180deg, rgba(234, 255, 230, 0) 0%, #b4d3ff 27.4%, #fffed9 70.67%, #d0e3e3 100%);
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  gap: 80px;
  align-items: center;
  margin: 0 -25px !important;
  max-width: none !important;
  padding: 40px 25px;
  width: calc(100% + 50px) !important;
}
@media screen and (max-width: 650px) {
  .p-product-business {
    gap: 40px;
    padding: 32px 25px;
  }
}
.p-product-business .p-product-business__cards {
  display: flex;
  flex-direction: column;
  gap: 40px;
  max-width: 768px;
  width: 100%;
}

.p-product-title {
  margin: 30px auto 0;
  max-width: 1040px;
  width: 100%;
}

.p-product-stage {
  background: rgba(220, 244, 255, 0.8);
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  gap: 40px;
  align-items: center;
  margin-left: -25px !important;
  margin-right: -25px !important;
  max-width: none !important;
  padding: 40px 25px;
  width: calc(100% + 50px) !important;
}
@media screen and (max-width: 650px) {
  .p-product-stage {
    padding: 32px 20px;
  }
}
.p-product-stage.is-soil {
  background: #f2e8e4;
  padding: 80px 25px;
}
@media screen and (max-width: 650px) {
  .p-product-stage.is-soil {
    padding: 40px 20px;
  }
}
.p-product-stage .c-headline-band {
  max-width: 1040px;
}

.p-product-intro {
  align-items: center;
  display: flex;
  gap: 24px 40px;
  justify-content: center;
  max-width: 1040px;
  width: 100%;
}
@media screen and (max-width: 1200px) {
  .p-product-intro {
    flex-direction: column;
    max-width: 610px;
  }
}
.p-product-intro .p-product-intro__image {
  display: block;
  flex-shrink: 0;
  height: 349px;
  margin: 0;
  overflow: hidden;
  width: 299px;
}
.p-product-intro .p-product-intro__image img {
  display: block;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
  width: 100%;
}
.p-product-intro .p-product-intro__text {
  color: #666;
  flex: 1 1 280px;
  font-size: 16px;
  font-weight: 400;
  line-height: 28px;
  margin: 0;
  min-width: 0;
}
@media screen and (max-width: 1200px) {
  .p-product-intro .p-product-intro__text {
    flex: 1 1 0;
  }
}
.p-product-intro .p-product-intro__diagram {
  display: block;
  flex-shrink: 0;
  height: 282px;
  margin: 0;
  overflow: hidden;
  width: 400px;
}
.p-product-intro .p-product-intro__diagram img {
  display: block;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
  width: 100%;
}

.p-product-cert {
  display: block;
  margin: 0;
  max-width: 250px;
}
.p-product-cert img {
  display: block;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
  width: 100%;
}
.p-product-cert figcaption {
  color: #000;
  font-size: 14px;
  font-weight: 400;
  line-height: 24px;
  margin: 0;
  padding: 10px;
  text-align: center;
}

.p-product-install {
  background: #fff;
  border-radius: 10px;
  box-sizing: border-box;
  display: flex;
  flex-wrap: wrap;
  gap: 40px;
  justify-content: center;
  margin: 40px auto 0;
  max-width: 1040px;
  padding: 40px 0;
  width: 100%;
}
@media screen and (max-width: 650px) {
  .p-product-install {
    gap: 24px;
    padding: 24px 16px;
  }
}
.p-product-install .p-product-install__items {
  aspect-ratio: 400/353;
  border-bottom: 1px solid var(--color-main, #4FA0C5);
  box-sizing: border-box;
  display: block;
  margin: 0;
  padding: 0 0 10px;
  width: 400px;
}
@media screen and (max-width: 650px) {
  .p-product-install .p-product-install__items {
    width: 100%;
  }
}
@media screen and (max-width: 650px) {
  .p-product-install .p-product-install__items:last-child {
    border-bottom: none;
  }
}
.p-product-install .p-product-install__items img {
  display: block;
  height: 100% !important;
  -o-object-fit: contain;
     object-fit: contain;
  width: 100%;
}

.p-product-install-list {
  display: flex;
  flex-wrap: wrap;
  gap: 24px;
  justify-content: center;
  list-style: none;
  margin: 40px auto 0;
  max-width: none !important;
  padding: 0;
  width: 100%;
}
@media screen and (max-width: 650px) {
  .p-product-install-list {
    gap: 16px;
  }
}

.p-product-cases {
  display: flex;
  flex-direction: column;
  gap: 24px;
  margin: 0 auto;
  max-width: 608px;
  width: 100%;
}
.p-product-cases .p-product-cases__image {
  border-radius: 10px;
  display: block;
  height: 250px;
  margin: 0 auto;
  overflow: hidden;
  width: 300px;
}
@media screen and (max-width: 650px) {
  .p-product-cases .p-product-cases__image {
    height: auto;
    width: 100%;
  }
}
.p-product-cases .p-product-cases__image img {
  display: block;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  width: 100%;
}
@media screen and (max-width: 650px) {
  .p-product-cases .p-product-cases__image img {
    height: auto;
  }
}
.p-product-cases .p-product-cases__title {
  border-bottom: 1px solid var(--color-main, #4FA0C5);
  box-sizing: border-box;
  color: var(--color-main, #4FA0C5);
  font-size: 20px;
  font-weight: 700;
  line-height: 24px;
  margin: 0;
  padding: 13px 0;
  width: 100%;
}
.p-product-cases .p-product-cases__text {
  color: #000;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.5;
  margin: 0;
  width: 100%;
}

.p-product-lineup {
  display: flex;
  flex-direction: column;
  gap: 40px;
  margin: 0 auto;
  max-width: 1040px;
  width: 100%;
}
.p-product-lineup .p-product-lineup__lead {
  color: #000;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.5;
  margin: 0;
  text-align: center;
}
.p-product-lineup .p-product-lineup__cards {
  display: flex;
  flex-wrap: wrap;
  gap: 40px 40px;
  justify-content: center;
  width: 100%;
}
@media screen and (max-width: 650px) {
  .p-product-lineup .p-product-lineup__cards {
    gap: 24px;
  }
}

.p-product-notes {
  color: #666;
  font-size: 14px;
  font-weight: 400;
  line-height: 28px;
  margin: 0 auto;
  max-width: 1040px;
  width: 100%;
}
.p-product-notes p {
  margin: 0;
}

.p-product-faq {
  display: flex;
  flex-direction: column;
  gap: 46px;
  margin: 0 auto;
  max-width: 1040px;
  width: 100%;
}

.p-product-story {
  align-items: center;
  display: flex;
  flex-direction: column;
  gap: 40px;
  margin: 0 auto;
  max-width: 1040px;
  width: 100%;
}
.p-product-story .p-product-story__image {
  border-radius: 10px;
  display: block;
  height: auto;
  margin: 0;
  max-width: 325px;
  overflow: hidden;
  width: 100%;
}
.p-product-story .p-product-story__image img {
  display: block;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  width: 100%;
}
.p-product-story .p-product-story__body {
  display: flex;
  flex-direction: column;
  gap: 16px;
  max-width: 700px;
  width: 100%;
}
.p-product-story .p-product-story__title {
  color: #666;
  font-size: 20px;
  font-weight: 700;
  line-height: 24px;
  margin: 0;
  text-align: center;
}
.p-product-story .p-product-story__text {
  color: #666;
  font-size: 16px;
  font-weight: 400;
  line-height: 28px;
  margin: 0;
}

.p-product-spec {
  display: flex;
  flex-wrap: wrap;
  gap: 24px 32px;
  margin: 0 auto;
  max-width: 1040px;
  width: 100%;
}
.p-product-spec .p-product-spec__image {
  border-radius: 10px;
  display: block;
  flex: 1 1 300px;
  height: 400px;
  margin: 0;
  max-width: 488px;
  overflow: hidden;
  width: 100%;
}
@media screen and (max-width: 650px) {
  .p-product-spec .p-product-spec__image {
    height: auto;
    max-width: 100%;
  }
}
.p-product-spec .p-product-spec__image img {
  display: block;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  width: 100%;
}
.p-product-spec .p-product-spec__aside {
  display: flex;
  flex: 1 1 300px;
  flex-direction: column;
  gap: 24px;
  max-width: 488px;
  width: 100%;
}
@media screen and (max-width: 650px) {
  .p-product-spec .p-product-spec__aside {
    max-width: 100%;
  }
}
.p-product-spec .p-product-spec__volume {
  align-items: center;
  background: #fff;
  border: 1px solid #e5e7eb;
  border-radius: 10px;
  box-sizing: border-box;
  display: flex;
  gap: 8px;
  justify-content: center;
  padding: 25px;
  width: 100%;
}
.p-product-spec .p-product-spec__volume-label {
  color: #6a7282;
  flex: 1 1 0;
  font-size: 14px;
  font-weight: 500;
  line-height: 20px;
  margin: 0;
  min-width: 0;
}
.p-product-spec .p-product-spec__volume-value {
  color: #1e2939;
  flex-shrink: 0;
  font-size: 24px;
  font-weight: 700;
  line-height: 32px;
  margin: 0;
  white-space: nowrap;
}
@media screen and (max-width: 650px) {
  .p-product-spec .p-product-spec__volume-value {
    font-size: 20px;
  }
}
.p-product-spec .p-product-spec__note {
  color: #000;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.5;
  margin: 0;
  width: 100%;
}

.p-product-home {
  display: flex;
  flex-direction: column;
  gap: 28px;
  align-items: center;
  margin: 0 auto;
  max-width: 800px;
  width: 100%;
}
.p-product-home .p-product-home__banner {
  border-radius: 10px;
  display: block;
  margin: 0;
  overflow: hidden;
  transition: opacity 0.3s;
  width: 100%;
}
.p-product-home .p-product-home__banner a {
  display: block;
}
.p-product-home .p-product-home__banner a:hover {
  opacity: 0.85;
}
.p-product-home .p-product-home__banner img {
  display: block;
  height: auto;
  width: 100%;
}

.p-product-report {
  display: flex;
  flex-direction: column;
  gap: 22px;
  margin: 0 auto;
  max-width: 1040px;
  width: 100%;
}
.p-product-report .p-product-report__body {
  align-items: flex-end;
  display: flex;
  flex-wrap: wrap;
  gap: 80px;
  justify-content: center;
  margin: 0 auto;
  max-width: 786px;
  width: 100%;
}
@media screen and (max-width: 650px) {
  .p-product-report .p-product-report__body {
    align-items: center;
    flex-direction: column;
    gap: 32px;
  }
}
.p-product-report .p-product-report__image {
  display: block;
  flex-shrink: 0;
  margin: 0;
  max-width: 192px;
  width: 100%;
}
.p-product-report .p-product-report__image img {
  box-shadow: 0 4px 4px rgba(0, 0, 0, 0.25);
  display: block;
  height: auto;
  width: 100%;
}
.p-product-report .p-product-report__content {
  align-items: center;
  display: flex;
  flex: 1 1 280px;
  flex-direction: column;
  gap: 40px;
  justify-content: center;
  min-width: 0;
}
@media screen and (max-width: 650px) {
  .p-product-report .p-product-report__content {
    flex: 1 1 0;
    gap: 24px;
    width: 100%;
  }
}
.p-product-report .p-product-report__text {
  color: #666;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.5;
  margin: 0;
  width: 100%;
}

.p-product-casestudy {
  border: 1px solid #a57e6b;
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  gap: 40px;
  align-items: center;
  margin: 0 auto;
  max-width: 1040px;
  padding: 20px 0;
  width: 100%;
}
@media screen and (max-width: 650px) {
  .p-product-casestudy {
    gap: 24px;
    padding: 20px 16px;
  }
}
.p-product-casestudy .p-product-casestudy__images {
  display: flex;
  flex-wrap: wrap;
  gap: 40px;
  justify-content: center;
  width: 100%;
}
@media screen and (max-width: 650px) {
  .p-product-casestudy .p-product-casestudy__images {
    gap: 16px;
  }
}
.p-product-casestudy .p-product-casestudy__image {
  display: block;
  flex: 1 1 280px;
  margin: 0;
  max-width: 436px;
}
.p-product-casestudy .p-product-casestudy__image img {
  box-shadow: 3px 4px 4px rgba(0, 0, 0, 0.25);
  display: block;
  height: auto;
  width: 100%;
}
.p-product-casestudy .p-product-casestudy__link {
  align-items: center;
  color: #a57e6b;
  display: flex;
  flex-direction: column;
  gap: 10px;
  padding: 10px;
  text-decoration: none;
}
.p-product-casestudy .p-product-casestudy__title {
  font-size: 24px;
  font-weight: 700;
  line-height: 1.5;
  margin: 0;
  text-align: center;
}
@media screen and (max-width: 650px) {
  .p-product-casestudy .p-product-casestudy__title {
    font-size: 18px;
  }
}
.p-product-casestudy .p-product-casestudy__button a {
  align-items: center;
  background: #fff;
  border: 1px solid #a57e6b;
  border-radius: 20px;
  box-sizing: border-box;
  color: #a57e6b;
  display: inline-flex;
  font-size: 16px;
  font-weight: 500;
  gap: 15px;
  justify-content: center;
  line-height: normal;
  padding: 8px 20px;
  text-decoration: none;
  white-space: nowrap;
}
.p-product-casestudy .p-product-casestudy__button a:hover {
  opacity: 0.8;
}
.p-product-casestudy .p-product-casestudy__button a::after {
  background: url('data:image/svg+xml;utf8, <svg xmlns="http://www.w3.org/2000/svg" width="8" height="13" viewBox="0 0 8 13" fill="none"><path d="M1.5 1.5L6.5 6.5L1.5 11.5" stroke="%23a57e6b" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/></svg>') no-repeat center center/contain;
  content: "";
  display: block;
  flex-shrink: 0;
  height: 13px;
  width: 8px;
}

.p-product-related {
  display: flex;
  justify-content: center;
  margin: 0 auto;
  max-width: 450px;
  width: 100%;
}

.p-product-mechanism {
  display: flex;
  flex-direction: column;
  gap: 40px;
  align-items: center;
  margin: 0 auto;
  max-width: 1040px;
  width: 100%;
}
@media screen and (max-width: 650px) {
  .p-product-mechanism {
    gap: 24px;
  }
}
.p-product-mechanism .p-product-mechanism__image {
  max-width: 100%;
}
.p-product-mechanism .p-product-mechanism__image img {
  width: 660px;
}
.p-product-mechanism .p-product-mechanism__text {
  color: #666;
  font-size: 16px;
  font-weight: 400;
  line-height: 28px;
  margin: 0;
  text-align: center;
  width: 100%;
}

.p-water-video {
  aspect-ratio: 900/463;
  background: #ddd;
  border-radius: 10px;
  margin: 0 auto;
  max-width: 900px;
  overflow: hidden;
  position: relative;
  width: 100%;
}
.p-water-video iframe,
.p-water-video video {
  border: 0;
  display: block;
  height: 100%;
  width: 100%;
}

.p-water-feature {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 80px;
  justify-content: center;
  margin: 0 auto;
  max-width: 900px;
  width: 100%;
}
@media screen and (max-width: 650px) {
  .p-water-feature {
    gap: 32px;
  }
}
.p-water-feature .p-water-feature__image {
  flex: 0 1 500px;
  margin: 0;
  max-width: 100%;
}
.p-water-feature .p-water-feature__image img {
  display: block;
  height: auto;
  width: 100%;
}
.p-water-feature .p-water-feature__text {
  color: var(--color-main, #4FA0C5);
  flex: 1 1 280px;
  font-size: 16px;
  font-weight: 500;
  line-height: 28px;
  margin: 0;
  min-width: 0;
}

.p-water-note {
  background: rgba(220, 244, 255, 0.8);
  border-radius: 10px;
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  gap: 16px;
  margin: 0 auto;
  max-width: 900px;
  padding: 20px 30px;
  width: 100%;
}
.p-water-note .p-water-note__title {
  color: #666;
  font-size: 20px;
  font-weight: 700;
  line-height: 28px;
}
.p-water-note .p-water-note__text {
  color: var(--color-main, #4FA0C5);
  font-size: 16px;
  font-weight: 400;
  line-height: 28px;
}
.p-water-note .p-water-note__footnote {
  color: #666;
  font-size: 14px;
  font-weight: 400;
  line-height: 24px;
}

.p-water-downloads {
  display: flex;
  flex-direction: column;
  gap: 24px;
  margin: 0 auto;
  max-width: 1040px;
  width: 100%;
}
.p-water-downloads .c-headline-band {
  margin: 0;
}
.p-water-downloads .p-water-downloads__lead {
  color: #666;
  font-size: 16px;
  font-weight: 400;
  line-height: 20px;
  margin: 0;
  text-align: center;
}
.p-water-downloads .p-water-downloads__list {
  display: flex;
  flex-wrap: wrap;
  gap: 56px;
  justify-content: center;
  margin: 0;
  padding: 0;
}
@media screen and (max-width: 650px) {
  .p-water-downloads .p-water-downloads__list {
    gap: 24px;
  }
}
.p-water-downloads .p-water-downloads__list li {
  list-style: none;
}
@media screen and (max-width: 650px) {
  .p-water-downloads .p-water-downloads__list .wp-block-file {
    max-width: 325px;
    width: 100%;
  }
}

.p-water-products {
  align-items: center;
  display: flex;
  flex-direction: column;
  gap: 40px;
  margin: 0 auto;
  max-width: 1040px;
  width: 100%;
}
.p-water-products .p-water-products__cards {
  display: flex;
  flex-wrap: wrap;
  gap: 64px;
  justify-content: center;
  width: 100%;
}
@media screen and (max-width: 650px) {
  .p-water-products .p-water-products__cards {
    gap: 32px;
  }
}
@media screen and (max-width: 1200px) {
  .p-water-products .p-water-products__cards .c-card-link {
    width: 100%;
  }
}
.p-water-products .p-water-products__ctas {
  display: flex;
  flex-wrap: wrap;
  gap: 24px;
  justify-content: space-between;
  max-width: 680px;
  width: 100%;
}
@media screen and (max-width: 650px) {
  .p-water-products .p-water-products__ctas {
    gap: 24px;
  }
}

.p-soil-lead {
  color: #666;
  font-size: 16px;
  font-weight: 400;
  line-height: 28px;
  margin: 0 auto;
  max-width: 700px;
}

.p-soil-products {
  align-items: center;
  display: flex;
  flex-direction: column;
  gap: 40px;
  margin: 0 auto;
  max-width: 1040px;
  width: 100%;
}
.p-soil-products .p-soil-products__cards {
  display: flex;
  flex-wrap: wrap;
  gap: 48px;
  justify-content: center;
  width: 100%;
}
@media screen and (max-width: 650px) {
  .p-soil-products .p-soil-products__cards {
    gap: 32px;
  }
}
@media screen and (max-width: 1200px) {
  .p-soil-products .p-soil-products__cards .c-card-link {
    width: 100%;
  }
}
.p-soil-products .p-soil-products__ctas {
  display: flex;
  flex-wrap: wrap;
  gap: 24px;
  justify-content: space-between;
  max-width: 680px;
  width: 100%;
}
@media screen and (max-width: 650px) {
  .p-soil-products .p-soil-products__ctas {
    gap: 24px;
  }
}

.p-cases-lead {
  color: #666;
  font-size: 16px;
  font-weight: 400;
  line-height: 28px;
  margin: 0 auto;
  max-width: 700px;
  width: 100%;
}

.p-cases-list.is-loading {
  opacity: 0.5;
  pointer-events: none;
  transition: opacity 0.2s;
}
.p-cases-list .p-cases-list__grid {
  display: grid;
  gap: 36px 14px;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  margin: 0 auto;
  max-width: var(--contents-width);
  width: 100%;
}
@media screen and (max-width: 1200px) {
  .p-cases-list .p-cases-list__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media screen and (max-width: 650px) {
  .p-cases-list .p-cases-list__grid {
    grid-template-columns: 1fr;
  }
}
.p-cases-list .p-cases-list__empty {
  color: #666;
  grid-column: 1/-1;
  margin: 0;
  padding: 40px 0;
  text-align: center;
}
.p-cases-list .c-article-pager {
  margin-top: 50px;
}

.p-cases-detail {
  align-items: start;
  display: grid;
  grid-template-areas: "images body" "back back";
  grid-template-columns: 288px 1fr;
  gap: 80px 64px;
}
@media screen and (max-width: 650px) {
  .p-cases-detail {
    grid-template-areas: "images" "body" "back";
    grid-template-columns: 1fr;
    gap: 32px;
  }
}
.p-cases-detail .p-cases-detail__images {
  display: grid;
  gap: 8px;
  grid-area: images;
  grid-template-columns: 140px 140px;
  width: 288px;
}
@media screen and (max-width: 650px) {
  .p-cases-detail .p-cases-detail__images {
    grid-template-columns: 1fr 1fr;
    width: 100%;
  }
}
.p-cases-detail .p-cases-detail__images figure {
  display: block;
  margin: 0;
  overflow: hidden;
  width: 100%;
}
.p-cases-detail .p-cases-detail__images figure img {
  display: block;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  width: 100%;
}
.p-cases-detail .p-cases-detail__images figure:first-child {
  aspect-ratio: 3/2;
  grid-column: 1/-1;
}
.p-cases-detail .p-cases-detail__images figure:not(:first-child) {
  aspect-ratio: 3/2;
}
.p-cases-detail .p-cases-detail__body {
  grid-area: body;
  gap: 29px;
}
.p-cases-detail .p-cases-detail__head {
  display: flex;
  flex-direction: column;
  gap: 6px;
  width: 100%;
}
.p-cases-detail .p-cases-detail__date {
  display: flex;
  gap: 32px;
  justify-content: flex-end;
  width: 100%;
}
.p-cases-detail .p-cases-detail__date p {
  color: #000;
  font-size: 10px;
  font-weight: 300;
  line-height: 1.5;
}
.p-cases-detail .p-cases-detail__title {
  color: #000;
  font-size: 24px;
  font-weight: 700;
  line-height: 1.5;
  margin: 0;
  width: 100%;
}
.p-cases-detail .p-cases-detail__category {
  align-items: center;
  display: flex;
  gap: 24px;
  width: 100%;
}
.p-cases-detail .p-cases-detail__category ul {
  display: flex;
  flex-shrink: 0;
  flex-wrap: wrap;
  gap: 5px;
  list-style: none;
}
.p-cases-detail .p-cases-detail__category li {
  background: #fff;
  border: 1px solid #000;
  border-radius: 15px;
  box-sizing: border-box;
  color: #000;
  font-size: 12px;
  font-weight: 700;
  line-height: 1.5;
  padding: 2px 10px;
  text-align: center;
  white-space: nowrap;
}
.p-cases-detail .p-cases-detail__category p {
  color: #000;
  flex: 1 1 auto;
  font-size: 16px;
  font-weight: 500;
}
.p-cases-detail .p-cases-detail__info {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
.p-cases-detail .p-cases-detail__info p {
  color: #717182;
  font-size: 14px;
  font-weight: 400;
  letter-spacing: -0.15px;
  line-height: 20px;
}
.p-cases-detail .p-cases-detail__info p:first-child {
  min-width: 108px;
}
.p-cases-detail .p-cases-detail__back {
  grid-area: back;
  text-align: center;
  width: 100%;
}
.p-cases-detail .c-article-contents {
  margin: 32px 0 0;
}

.p-news-detail {
  display: flex;
  flex-direction: column;
  gap: 32px;
  margin: 0 auto;
  max-width: 700px;
  width: 100%;
}
@media screen and (max-width: 1200px) {
  .p-news-detail {
    gap: 48px;
  }
}
.p-news-detail .p-news-detail__head {
  display: flex;
  flex-direction: column;
  gap: 29px;
  width: 100%;
}
.p-news-detail .p-news-detail__title {
  color: #000;
  font-size: 24px;
  font-weight: 700;
  line-height: 1.5;
  margin: 0;
  width: 100%;
}
.p-news-detail .p-news-detail__meta {
  display: flex;
  flex-direction: column;
  gap: 4px;
  width: 100%;
}
.p-news-detail .p-news-detail__badges {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
.p-news-detail .p-news-detail__badge {
  align-items: center;
  background: #999;
  border-radius: 10px;
  color: #fff;
  display: inline-flex;
  font-size: 12px;
  font-weight: 700;
  justify-content: center;
  line-height: normal;
  margin: 0;
  padding: 3px 10px;
  width: -moz-fit-content;
  width: fit-content;
}
.p-news-detail .p-news-detail__date {
  color: #717182;
  font-size: 14px;
  font-weight: 400;
  letter-spacing: -0.15px;
  line-height: 20px;
  margin: 0;
}
.p-news-detail .p-news-detail__back {
  margin: 48px 0 0;
  text-align: center;
  width: 100%;
}
@media screen and (max-width: 1200px) {
  .p-news-detail .p-news-detail__back {
    margin: 24px 0 0;
  }
}