@charset "UTF-8";
/* ==================================================
[Style]
    1. setting
	2. foundation
	3. Layout
	4. object

================================================== */
/* --------------------------------------------------
	1. setting
-------------------------------------------------- */
/* --------------------------------------------------
	2. foundation
-------------------------------------------------- */
/* reset */
@import 'https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500;700;900&family=Barlow+Condensed:wght@400;500;600;700;900&&family=Syncopate:wght@400;700&display=swap';
@import 'https://use.typekit.net/tni4wzy.css';
/*! destyle.css v4.0.1 | MIT License | https://github.com/nicolas-cusan/destyle.css */
/* Reset box-model and set borders */
/* ============================================ */
*,
::before,
::after {
  box-sizing: border-box;
  min-width: 0;
  border-style: solid;
  border-width: 0;
}

/* Document */
/* ============================================ */
/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 * 3. Remove gray overlay on links for iOS.
 */
html {
  line-height: 1.15; /* 1 */
  -webkit-text-size-adjust: 100%;
     -moz-text-size-adjust: 100%;
          text-size-adjust: 100%; /* 2 */
  -webkit-tap-highlight-color: transparent; /* 3 */
}

/* Sections */
/* ============================================ */
/**
 * Remove the margin in all browsers.
 */
body {
  margin: 0;
}

/**
 * Render the `main` element consistently in IE.
 */
main {
  display: block;
}

/* Vertical rhythm */
/* ============================================ */
p,
table,
blockquote,
address,
pre,
iframe,
form,
figure,
dl {
  margin: 0;
}

/* Headings */
/* ============================================ */
h1,
h2,
h3,
h4,
h5,
h6 {
  margin: 0;
  font-size: inherit;
  font-weight: inherit;
}

/* Lists (enumeration) */
/* ============================================ */
ul,
ol {
  padding: 0;
  margin: 0;
  list-style: none;
}

/* Lists (definition) */
/* ============================================ */
dt {
  font-weight: bold;
}

dd {
  margin-left: 0;
}

/* Grouping content */
/* ============================================ */
/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */
hr {
  box-sizing: content-box; /* 1 */
  height: 0; /* 1 */
  margin: 0;
  overflow: visible; /* 2 */
  clear: both;
  color: inherit;
  border-top-width: 1px;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
pre {
  font-family: monospace; /* 1 */
  font-size: inherit; /* 2 */
}

address {
  font-style: inherit;
}

/* Text-level semantics */
/* ============================================ */
/**
 * Remove the gray background on active links in IE 10.
 */
a {
  color: inherit;
  text-decoration: none;
  background-color: transparent;
}

/**
 * 1. Remove the bottom border in Chrome 57-
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */
abbr[title] {
  -webkit-text-decoration: underline dotted;
          text-decoration: underline dotted; /* 2 */
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */
b,
strong {
  font-weight: bolder;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
code,
kbd,
samp {
  font-family: monospace; /* 1 */
  font-size: inherit; /* 2 */
}

/**
 * Add the correct font size in all browsers.
 */
small {
  font-size: 80%;
}

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */
sub,
sup {
  position: relative;
  font-size: 75%;
  line-height: 0;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/* Replaced content */
/* ============================================ */
/**
 * Prevent vertical alignment issues.
 */
svg,
img,
embed,
object,
iframe {
  vertical-align: bottom;
}

/* Forms */
/* ============================================ */
/**
 * Reset form fields to make them styleable.
 * 1. Make form elements stylable across systems iOS especially.
 * 2. Inherit text-transform from parent.
 */
button,
input,
optgroup,
select,
textarea {
  padding: 0;
  margin: 0;
  font: inherit;
  color: inherit;
  text-align: inherit;
  text-transform: inherit; /* 2 */
  vertical-align: middle;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background: transparent;
  border-radius: 0;
}

/**
 * Correct cursors for clickable elements.
 */
button,
[type=button],
[type=reset],
[type=submit] {
  cursor: pointer;
}

button:disabled,
[type=button]:disabled,
[type=reset]:disabled,
[type=submit]:disabled {
  cursor: default;
}

/**
 * Improve outlines for Firefox and unify style with input elements & buttons.
 */
:-moz-focusring {
  outline: auto;
}

select:disabled {
  opacity: inherit;
}

/**
 * Remove padding
 */
option {
  padding: 0;
}

/**
 * Reset to invisible
 */
fieldset {
  min-width: 0;
  padding: 0;
  margin: 0;
}

legend {
  padding: 0;
}

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */
progress {
  vertical-align: baseline;
}

/**
 * Remove the default vertical scrollbar in IE 10+.
 */
textarea {
  overflow: auto;
}

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */
[type=number]::-webkit-inner-spin-button,
[type=number]::-webkit-outer-spin-button {
  height: auto;
}

/**
 * Correct the outline style in Safari.
 */
[type=search] {
  outline-offset: -2px; /* 1 */
}

/**
 * Remove the inner padding in Chrome and Safari on macOS.
 */
[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
          appearance: none;
}

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Fix font inheritance.
 */
::-webkit-file-upload-button {
  font: inherit; /* 2 */
  -webkit-appearance: button;
          appearance: button; /* 1 */
}

/**
 * Fix appearance for Firefox
 */
[type=number] {
  -webkit-appearance: textfield;
     -moz-appearance: textfield;
          appearance: textfield;
}

/**
 * Clickable labels
 */
label[for] {
  cursor: pointer;
}

/* Interactive */
/* ============================================ */
/*
 * Add the correct display in Edge, IE 10+, and Firefox.
 */
details {
  display: block;
}

/*
 * Add the correct display in all browsers.
 */
summary {
  display: list-item;
}

/*
 * Remove outline for editable content.
 */
[contenteditable]:focus {
  outline: auto;
}

/* Tables */
/* ============================================ */
/**
1. Correct table border color inheritance in all Chrome and Safari.
*/
table {
  border-collapse: collapse;
  border-color: inherit; /* 1 */
}

caption {
  text-align: left;
}

td,
th {
  padding: 0;
  vertical-align: top;
}

th {
  font-weight: bold;
  text-align: left;
}

/* base */
*,
*::before,
*::after {
  box-sizing: border-box;
}

body {
  overflow-x: hidden;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 500;
  line-height: 1.5;
  color: #121212;
  word-break: normal;
  word-wrap: normal;
  overflow-wrap: normal;
  -webkit-text-size-adjust: 100%;
     -moz-text-size-adjust: 100%;
          text-size-adjust: 100%;
}

a {
  color: inherit;
  text-decoration: none;
  word-break: break-all;
  word-wrap: break-word;
  overflow-wrap: break-word;
}

ul,
ol {
  list-style: none;
}

img {
  max-width: 100%;
  height: auto;
  font-style: italic;
  vertical-align: middle;
}

iframe {
  max-width: 100%;
}

input,
button,
select,
textarea {
  font: inherit;
  font-size: 1rem;
  color: #121212;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background: transparent;
  border: none;
  border-radius: 0;
  outline: none;
}

textarea {
  resize: none;
}

input[type=checkbox],
input[type=radio] {
  display: none;
}

input[type=submit],
input[type=button],
button,
select {
  cursor: pointer;
}

select::-ms-expand {
  display: none;
}

/* font */
/* anime */
.stroke-animation-text {
  overflow: visible;
  --stroke-animation-text-duration: 1.6s;
  --stroke-animation-text-delay: 0s;
  --stroke-animation-text-exit-duration: 1s;
  --stroke-animation-text-exit-delay: 0s;
  --stroke-animation-text-animate-item-interval: 0.1s;
  --stroke-animation-stroke-dasharray: 31.25rem;
  --stroke-animation-stroke-width: 0.0625rem;
  --stroke-animation-text-stroke-color: currentcolor;
  --stroke-animation-text-fill-color: currentcolor;
}
.stroke-animation-text *[data-stroke-animation-text-item] {
  fill: transparent;
  stroke: var(--stroke-animation-text-stroke-color);
  stroke-dasharray: var(--stroke-animation-stroke-dasharray);
  stroke-dashoffset: var(--stroke-animation-stroke-dasharray);
  stroke-width: var(--stroke-animation-stroke-width);
  vector-effect: non-scaling-stroke;
  transition: stroke-dashoffset var(--stroke-animation-text-duration) cubic-bezier(0.39, 0.575, 0.565, 1) calc(var(--stroke-animation-text-delay) + var(--stroke-animation-text-item-index) * var(--stroke-animation-text-animate-item-interval)), fill 0.2s linear calc(var(--stroke-animation-text-delay) + var(--stroke-animation-text-item-index) * var(--stroke-animation-text-animate-item-interval) + var(--stroke-animation-text-duration) - 0.8s), stroke-width 0.4s linear calc(var(--stroke-animation-text-delay) + var(--stroke-animation-text-item-index) * var(--stroke-animation-text-animate-item-interval) + var(--stroke-animation-text-duration) - 0.8s);
}

.anime-child,
.anime {
  --delay: 0;
  --duration: 0.6;
}

.anime-fade-right {
  opacity: 0;
  animation-duration: calc(var(--duration) * 1s);
  animation-timing-function: ease-in-out;
  animation-delay: calc(var(--delay) * 1s);
  animation-fill-mode: forwards;
}

.anime-bar-slide-right {
  --duration: 0.3;
  animation-duration: calc(var(--duration) * 1s);
  animation-timing-function: cubic-bezier(0.75, 0, 0.25, 1);
  animation-delay: calc(var(--delay) * 1s);
  animation-fill-mode: forwards;
}
@media only screen and (max-width: 767px) {
  .anime-bar-slide-right {
    animation-delay: calc(var(--delay-sp, var(--delay)) * 1s);
  }
}

.anime-slide-text-color {
  animation-duration: calc(var(--duration) * 1s);
  animation-timing-function: linear;
  animation-delay: calc(var(--delay) * 1s);
  animation-fill-mode: forwards;
}
@media only screen and (max-width: 767px) {
  .anime-slide-text-color {
    animation-delay: calc(var(--delay-sp, var(--delay)) * 1s);
  }
}

.anime-header-show {
  --duration: 2;
  --delay: 1.2;
  opacity: 0;
  animation-duration: calc(var(--duration) * 1s);
  animation-timing-function: ease;
  animation-delay: calc(var(--delay) * 1s);
  animation-fill-mode: forwards;
}
@media only screen and (max-width: 767px) {
  .anime-header-show {
    --delay: -1.5;
  }
}

.anime-hum-btn-show {
  --duration: 2;
  --delay: 1.2;
  opacity: 0;
  animation-duration: calc(var(--duration) * 1s);
  animation-timing-function: ease;
  animation-delay: calc(var(--delay) * 1s);
  animation-fill-mode: forwards;
}
@media only screen and (max-width: 767px) {
  .anime-hum-btn-show {
    --delay: -1.5;
  }
}

.anime-mv {
  --duration: 1;
  --delay: 1.3;
  animation-duration: calc(var(--duration) * 1s);
  animation-timing-function: cubic-bezier(0.75, 0, 0.25, 1);
  animation-delay: calc(var(--delay) * 1s);
  animation-fill-mode: forwards;
}
@media only screen and (max-width: 767px) {
  .anime-mv {
    --delay: 1.8;
  }
}

body.is-loaded .stroke-animation-text *[data-stroke-animation-text-item] {
  fill: var(--stroke-animation-text-fill-color);
  stroke-dashoffset: 0;
  stroke-width: 0;
}
body.is-loaded .anime.is-active.anime-header-show {
  animation-name: homeHeader;
}
body.is-loaded .anime.is-active.anime-hum-btn-show {
  animation-name: humBtnShow;
}
body.is-loaded .anime.is-active.anime-mv {
  animation-name: mainvisual;
}
body.is-loaded .anime-child.is-active .anime-fade-right {
  animation-name: fadeRight;
}
body.is-loaded .anime-child.is-active .anime-bar-slide-right {
  animation-name: barSlideRight;
}
body.is-loaded .anime-child.is-active .anime-slide-text-color {
  animation-name: slideTextColor;
}

@keyframes fadeRight {
  0% {
    opacity: 0;
    transform: translateX(-30px);
  }
  100% {
    opacity: 1;
    transform: translateX(0);
  }
}
@keyframes barSlideRight {
  0% {
    transform: scaleX(1);
  }
  100% {
    transform: scaleX(0);
  }
}
@keyframes slideTextColor {
  0% {
    background-position: 100% 0%;
  }
  100% {
    background-position: 0% 0%;
  }
}
@keyframes homeHeader {
  0% {
    top: -100%;
    opacity: 1;
  }
  100% {
    top: 0;
    opacity: 1;
  }
}
@keyframes humBtnShow {
  0% {
    top: -100%;
    opacity: 1;
  }
  100% {
    top: 0;
    opacity: 1;
  }
}
@keyframes mainvisual {
  0% {
    height: 100dvh;
    padding-top: calc(50dvh - 57px);
  }
  100% {
    height: 392px;
    padding-top: 277px;
  }
}
@media only screen and (max-width: 767px) {
  @keyframes mainvisual {
    0% {
      height: 100dvh;
      padding-top: calc(50dvh - 23px);
    }
    100% {
      height: 182px;
      padding-top: 135px;
    }
  }
}
/* --------------------------------------------------
	3. Layout
-------------------------------------------------- */
/* header */
.l-header {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 100;
  width: 100%;
}
.l-header__inner {
  padding-top: 2.5rem;
  padding-right: calc(7.5rem + min(1.9791666667%, 2.375rem));
  padding-left: min(3.2291666667%, 3.875rem);
}
.l-header__container {
  display: flex;
  align-items: center;
}
.l-header__logo {
  margin-bottom: 0.75rem;
}
.l-header__logo-flex {
  display: flex;
  align-items: center;
  gap: 0.75rem;
}
.l-header__logo-img {
  display: block;
}
.l-header__logo-txt-en {
  display: block;
  font-family: "Barlow Condensed", sans-serif;
  font-size: 1.1875rem;
  font-weight: bold;
  color: #606060;
}
.l-header__logo-txt-jp {
  display: block;
  font-size: 1.25rem;
  font-weight: 900;
  letter-spacing: 0.04em;
}
.l-header__menu {
  margin-left: auto;
}
.l-header__nav-container {
  display: flex;
  align-items: center;
}
.l-header__nav {
  display: flex;
  align-items: center;
  margin-right: 0.75rem;
}
.l-header__nav-list {
  display: flex;
  gap: 1.875vw;
  align-items: center;
  margin-top: 0.125rem;
  margin-right: 2.5vw;
}
.l-header__nav-link {
  font-size: clamp(0.875rem, 1vw, 1.125rem);
  font-weight: bold;
}
@media (hover: hover) {
  .l-header__nav-link {
    transition: opacity 0.3s;
  }
  .l-header__nav-link:hover {
    opacity: 0.7;
  }
}
.l-header__nav-button-item {
  min-height: 5rem;
}
.l-header__nav-button-item:not(:last-child) {
  border-right: 0.125rem solid #fff;
}
.l-header__nav-button-wrap {
  display: flex;
  overflow: hidden;
  background: #f2f2f2;
  border-radius: 0.1875rem;
}
.l-header__nav-button {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 100%;
}
@media (hover: hover) {
  .l-header__nav-button {
    transition: opacity 0.3s;
  }
  .l-header__nav-button:hover {
    opacity: 0.7;
  }
}
.l-header__nav-tel {
  position: relative;
  display: block;
  padding-right: min(1.125rem, 0.9375vw);
  padding-left: min(2.6041666667vw, 3.125rem);
}
.l-header__nav-tel .com-icon {
  position: absolute;
  --wrap-size: 1.375rem;
  top: 0.5em;
  right: calc(100% + 0.25rem);
  transform: translateY(-50%);
}
.l-header__nav-tel .num {
  position: relative;
  display: block;
  padding-right: 1rem;
  font-family: "Barlow Condensed", sans-serif;
  font-size: 1.875rem;
  font-weight: 600;
  line-height: 1;
  letter-spacing: 0.05em;
}
.l-header__nav-tel .note {
  display: block;
  font-size: 0.6875rem;
  font-weight: bold;
}
.l-header__nav-tel .note em {
  font-family: "bahnschrift", sans-serif;
  font-size: 0.875rem;
  font-style: normal;
}
.l-header__nav-tel .note-text-01 {
  font-size: 0.9375rem;
}
.l-header__nav-inquiry {
  padding: 0.5rem min(1.6666666667vw, 2rem) 0.5rem min(3.25rem, 2.7083333333vw);
}
.l-header__nav-inquiry .com-icon {
  --wrap-size: 1.125rem;
  position: absolute;
  top: 0.75em;
  right: calc(100% + 0.5rem);
  transform: translateY(-50%);
}
.l-header__nav-inquiry .text {
  position: relative;
  display: block;
  font-size: 1.25rem;
  font-weight: bold;
}
.l-header__nav-inquiry .time {
  display: block;
  font-size: 0.6875rem;
  font-weight: 500;
}
.l-header__nav-inquiry .time em {
  margin-right: 0.1875rem;
  font-family: "bahnschrift", sans-serif;
  font-size: 0.875rem;
  font-style: normal;
  font-weight: 600;
}
.l-header__nav-inquiry .dot {
  font-size: 0.75rem;
  font-weight: 500;
}
.l-header__menu-popup {
  position: fixed;
  top: 1.25rem;
  right: 1.25rem;
  left: 1.25rem;
  z-index: 1000;
  display: none;
  max-height: calc(100vh - 2.5rem);
  padding: 11.0625rem 3.3854166667% 6.5625rem 6.875%;
  overflow: auto;
  background-color: #333;
  border-radius: 0.625rem;
  container-type: inline-size;
  container-name: menupopup;
  scrollbar-width: none;
  -ms-overflow-style: none;
}
.l-header__menu-popup::-webkit-scrollbar {
  display: none;
  width: 0.5rem;
  background: #f2f2f2;
}
.l-header__menu-popup::-webkit-scrollbar-thumb {
  background-color: transparent;
}
.l-header__nav-popup-container {
  display: flex;
  gap: 2.5rem;
  justify-content: flex-end;
  justify-content: space-between;
  margin: 0 auto;
}
.l-header__nav-popup-logo {
  display: block;
}
.l-header__nav-popup-logo .en {
  display: block;
  font-family: "Barlow Condensed", sans-serif;
  font-size: 1.985625rem;
  font-weight: 600;
  color: #999;
}
.l-header__nav-popup-logo .jp {
  display: block;
  margin-top: -0.125rem;
  font-size: 1.875rem;
  font-weight: 900;
  color: #fff;
  letter-spacing: 0.04em;
}
.l-header__nav-popup-sns {
  display: flex;
  gap: 0.5rem;
  align-items: center;
  margin-top: 5.9375rem;
}
@media (hover: hover) {
  .l-header__nav-popup-sns a {
    transition: opacity 0.3s;
  }
  .l-header__nav-popup-sns a:hover {
    opacity: 0.7;
  }
}
.l-header__nav-popup-sns .com-icon {
  --wrap-size: 3.25rem;
  --icon-color: #222;
}
.l-header__nav-popup-sns .com-icon::after {
  position: absolute;
  inset: 0;
  content: "";
  background-color: #eaeaea;
  border-radius: 50%;
}
.l-header__copyright {
  margin-top: 8.5rem;
  font-family: "Barlow Condensed", sans-serif;
  font-size: 0.75rem;
  color: #999;
  letter-spacing: 0.1em;
}
.l-header__nav-popup {
  display: flex;
  flex-grow: 1;
  justify-content: space-between;
  max-width: 59.625rem;
  margin-top: 2.9375rem;
}
.l-header__nav-popup-list {
  display: flex;
  flex-direction: column;
  gap: 2.4375rem;
}
.l-header__nav-popup-link {
  font-size: 1.125rem;
  font-weight: 900;
  color: #fff;
  text-decoration: underline;
  letter-spacing: 0.1em;
}
@media (hover: hover) {
  .l-header__nav-popup-link {
    transition: opacity 0.3s;
  }
  .l-header__nav-popup-link:hover {
    opacity: 0.7;
  }
}
.l-header__nav-popup-link .en {
  font-family: "Barlow Condensed", sans-serif;
  font-size: 0.9375rem;
  font-weight: 900;
  letter-spacing: 0.1em;
}
.l-header__nav-popup-link.--blank::after {
  --wrap-size: 2rem;
  --icon-size: contain;
  --icon-color: #000;
  display: inline-flex;
  width: var(--wrap-w, var(--wrap-size));
  height: var(--wrap-h, var(--wrap-size));
  background: var(--icon-color);
  -webkit-mask-image: var(--icon-url, none);
          mask-image: var(--icon-url, none);
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center;
          mask-position: center;
  -webkit-mask-size: var(--icon-size, contain);
          mask-size: var(--icon-size, contain);
  margin-left: 0.75rem;
  content: "";
  --icon-url: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg id='_ãƒ¡ãƒ‹ãƒ¥ãƒ¼ã‚ªãƒ¼ãƒ—ãƒ³' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 13.06 11.07'%3E%3Cdefs%3E%3Cstyle%3E.cls-1%7Bfill:%23fff;%7D%3C/style%3E%3C/defs%3E%3Cpath class='cls-1' d='M12.08,0H3.99c-.54,0-.98.44-.98.98v2.04H.98c-.54,0-.98.44-.98.98v6.1c0,.54.44.98.98.98h8.09c.54,0,.98-.44.98-.98v-2.03h2.04c.54,0,.98-.44.98-.98V.98c0-.54-.44-.98-.98-.98ZM9.05,10.07l-8.05.02-.02-6.08h2.03s0,3.06,0,3.06c0,.54.44.98.98.98h5.06v2.01ZM12.06,7.06l-8.05.02-.02-6.08,8.07-.02v6.08Z'/%3E%3C/svg%3E");
  --wrap-size: 0.8125rem;
  --icon-color: currentcolor;
}

.l-hum {
  position: fixed;
  top: 0;
  right: min(1.875%, 2.25rem);
  z-index: 1001;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  width: 7.5rem;
  height: 5rem;
  padding-top: 0.75rem;
  margin-top: 2.4375rem;
  background: #f2f2f2;
  border: 0.0625rem solid rgba(204, 204, 204, 0.5);
  border-radius: 0.1875rem;
}
@media (hover: hover) {
  .l-hum {
    transition: opacity 0.3s;
  }
  .l-hum:hover {
    opacity: 0.7;
  }
}
.l-hum__bar {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 3.625rem;
  height: 0.625rem;
}
.l-hum__bar span {
  position: absolute;
  left: 50%;
  display: block;
  width: 100%;
  height: 0.125rem;
  background-color: #121212;
  transition: 0.3s all;
  transform: translateX(-50%) translateY(-50%);
}
.l-hum__bar span:nth-child(1) {
  top: calc(50% - 0.25rem);
}
.l-hum__bar span:nth-child(2) {
  top: calc(50% + 0.25rem);
}
.l-hum__text {
  padding-left: 0;
  margin-top: 0.5rem;
  font-family: "Barlow Condensed", sans-serif;
  font-size: 0.75rem;
  font-weight: 500;
  text-align: center;
  letter-spacing: 0.47em;
}
.l-hum__text-close {
  display: none;
}
.l-hum__text-open {
  padding-left: 0.375rem;
}
.l-hum.is-close {
  background: none;
  border: none;
}
.l-hum.is-close .l-hum__text-open {
  display: none;
}
.l-hum.is-close .l-hum__text-close {
  position: relative;
  top: 0.375rem;
  display: block;
  font-size: 0.875rem;
  color: #fff;
  letter-spacing: 0.25em;
}
.l-hum.is-close .l-hum__bar {
  width: 4.375rem;
}
.l-hum.is-close .l-hum__bar span {
  background-color: #fff;
}
.l-hum.is-close .l-hum__bar span:nth-child(1) {
  top: 50%;
  transform: translateX(-50%) translateY(-50%) rotate(-20deg);
}
.l-hum.is-close .l-hum__bar span:nth-child(2) {
  top: 50%;
  transform: translateX(-50%) translateY(-50%) rotate(20deg);
}

@media all and (min-width: 768px), print {
  @container menupopup (max-width: 1200px) {
    .l-header__nav-popup-container {
      flex-wrap: wrap-reverse;
      margin-top: -3.75rem;
    }
    .l-header__nav-popup {
      width: 100%;
    }
    .l-header__nav-popup-left {
      width: 100%;
    }
    .l-header__nav-popup {
      max-width: unset;
    }
    .l-header__nav-popup-left {
      display: flex;
      flex-direction: column;
      align-items: center;
      margin-top: 5rem;
      text-align: center;
    }
    .l-header__nav-popup-sns {
      justify-content: center;
      order: -1;
      margin-top: 0;
    }
    .l-header__copyright {
      margin-top: 1.875rem;
    }
    .l-header__nav-popup-logo {
      margin-top: 3.75rem;
    }
  }
}
@media only screen and (min-width: 768px) and (max-width: 1280px) {
  .l-header__menu {
    display: none;
  }
  .l-header__nav-popup {
    flex-direction: column;
    gap: 1.875rem;
  }
  .l-header__nav-popup-list {
    gap: 1.875rem;
  }
}
@media only screen and (max-width: 767px) {
  .l-hum {
    right: 0.625rem;
    width: 3.9375rem;
    height: 2.625rem;
    margin-top: 0.8125rem;
    border-radius: 0.125rem;
  }
  .l-hum.is-close {
    padding-top: 0.25rem;
    background: transparent;
    border: none;
  }
  .l-hum.is-close .l-hum__bar {
    width: 2.25rem;
  }
  .l-hum.is-close .l-hum__text-close {
    top: 0;
    margin-top: 0.125rem;
    font-size: 0.5rem;
  }
  .l-hum__bar {
    width: 2.25rem;
    height: 0.5rem;
  }
  .l-hum__bar span {
    height: 0.0625rem;
  }
  .l-hum__bar span:nth-child(1) {
    top: calc(50% - 0.1875rem);
  }
  .l-hum__bar span:nth-child(2) {
    top: calc(50% + 0.1875rem);
  }
  .l-hum__text {
    padding-left: 0;
    margin-top: 0.25rem;
    font-size: 0.5rem;
  }
  .l-hum__text-open {
    padding-left: 0.25rem;
  }
  .l-header__inner {
    padding-top: 0.75rem;
    padding-right: 5rem;
  }
  .l-header__container {
    align-items: flex-start;
    height: 3.5rem;
  }
  .l-header__logo-flex {
    gap: 0.375rem;
  }
  .l-header__logo-img {
    width: 2.625rem;
  }
  .l-header__logo-txt-en {
    font-size: 0.75rem;
  }
  .l-header__logo-txt-jp {
    font-size: 0.75rem;
  }
  .l-header__nav {
    margin-right: 0;
  }
  .l-header__nav-list {
    display: none;
  }
  .l-header__nav-tel {
    display: none;
  }
  .l-header__nav-inquiry {
    display: none;
  }
  .l-header__nav-button-wrap {
    border-radius: 0.0625rem;
  }
  .l-header__nav-button-item {
    min-width: 2.25rem;
    min-height: 2.625rem;
  }
  .l-header__nav-button-item:not(:last-child) {
    border-right-width: 0.0625rem;
  }
  .l-header__nav-button-icon.com-icon {
    --wrap-size: 0.875rem;
  }
  .l-header__nav-button-icon.com-icon.--phone {
    --wrap-size: 1.0625rem;
    margin-left: 0.3125rem;
  }
  .l-header__nav-popup {
    display: block;
    margin-top: 0;
    margin-right: -0.125rem;
  }
  .l-header__nav-popup-list {
    gap: 1.125rem;
  }
  .l-header__nav-popup-list + .l-header__nav-popup-list {
    margin-top: 1.125rem;
  }
  .l-header__nav-popup-link {
    font-size: 0.875rem;
  }
  .l-header__nav-popup-link.--blank::after {
    margin-left: 0.5625rem;
    --wrap-size: 0.75rem;
  }
  .l-header__nav-popup-link .en {
    font-family: "Noto Sans JP", sans-serif;
    font-size: 0.75rem;
  }
  .l-header__nav-popup-container {
    flex-direction: column-reverse;
    gap: 0;
  }
  .l-header__menu-popup {
    inset: 0.3125rem;
    z-index: 1000;
    max-height: calc(100vh - 0.625rem);
    padding: 3.5625rem 2.3125rem 1.25rem;
  }
  .l-header__menu-popup::-webkit-scrollbar {
    display: none;
  }
  .l-header__nav-popup-left {
    display: flex;
    flex-direction: column;
    margin-top: 4.6875rem;
  }
  .l-header__nav-popup-sns {
    gap: 1.25rem;
    justify-content: center;
    order: -1;
    width: 100%;
    margin-top: 0;
  }
  .l-header__nav-popup-sns .com-icon {
    --wrap-size: 3.125rem;
  }
  .l-header__nav-popup-logo {
    margin-top: 2.125rem;
    text-align: center;
  }
  .l-header__nav-popup-logo .en {
    font-size: 0.855625rem;
  }
  .l-header__nav-popup-logo .jp {
    margin-top: 0;
    font-size: 1.0825rem;
  }
  .l-header__copyright {
    margin-top: 1.25rem;
    font-size: 0.6875rem;
    text-align: center;
  }
}
/* footer */
.l-footer {
  margin-top: 11.625rem;
}
.l-footer__inner {
  padding-left: 1.25rem;
}
.l-footer__container {
  display: flex;
  gap: 3.375rem;
  justify-content: flex-end;
}
.l-footer__content {
  flex-grow: 1;
  max-width: 56.25rem;
  padding-top: 3.75rem;
  padding-bottom: 2.1875rem;
  border-top: 0.0625rem solid rgba(18, 18, 18, 0.5);
}
.l-footer__img {
  flex-shrink: 0;
  align-self: stretch;
  width: calc(50% - 3.375rem);
  overflow: hidden;
  border-radius: 1.125rem 0 0;
}
.l-footer__img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
}
.l-footer__nav {
  display: flex;
  gap: 1.5rem;
}
.l-footer__list {
  display: flex;
  flex-direction: column;
  gap: 1.375rem;
  min-width: 35%;
}
.l-footer__list-link {
  font-size: 1rem;
  font-weight: 900;
  text-decoration: underline;
  letter-spacing: 0.1em;
}
@media (hover: hover) {
  .l-footer__list-link {
    transition: opacity 0.3s;
  }
  .l-footer__list-link:hover {
    opacity: 0.7;
  }
}
.l-footer__list-link small {
  font-size: 0.75rem;
}
.l-footer__list-link.--blank::after {
  margin-left: 0.625rem;
  vertical-align: middle;
  content: "";
  --wrap-size: 2rem;
  --icon-size: contain;
  --icon-color: #000;
  display: inline-flex;
  width: var(--wrap-w, var(--wrap-size));
  height: var(--wrap-h, var(--wrap-size));
  background: var(--icon-color);
  -webkit-mask-image: var(--icon-url, none);
          mask-image: var(--icon-url, none);
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center;
          mask-position: center;
  -webkit-mask-size: var(--icon-size, contain);
          mask-size: var(--icon-size, contain);
  --wrap-size: 0.8125rem;
  --icon-url: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg id='_ãƒ¡ãƒ‹ãƒ¥ãƒ¼ã‚ªãƒ¼ãƒ—ãƒ³' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 13.06 11.07'%3E%3Cdefs%3E%3Cstyle%3E.cls-1%7Bfill:%23fff;%7D%3C/style%3E%3C/defs%3E%3Cpath class='cls-1' d='M12.08,0H3.99c-.54,0-.98.44-.98.98v2.04H.98c-.54,0-.98.44-.98.98v6.1c0,.54.44.98.98.98h8.09c.54,0,.98-.44.98-.98v-2.03h2.04c.54,0,.98-.44.98-.98V.98c0-.54-.44-.98-.98-.98ZM9.05,10.07l-8.05.02-.02-6.08h2.03s0,3.06,0,3.06c0,.54.44.98.98.98h5.06v2.01ZM12.06,7.06l-8.05.02-.02-6.08,8.07-.02v6.08Z'/%3E%3C/svg%3E");
}
.l-footer__column-01 {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-end;
  justify-content: space-between;
  padding-bottom: 3rem;
  margin-top: min(15rem, 12.5vw);
  border-bottom: 0.0625rem solid rgba(18, 18, 18, 0.5);
}
.l-footer__column-01-left {
  padding-bottom: 0.875rem;
}
.l-footer__logo {
  display: flex;
  flex-direction: column;
  gap: 0.3125rem;
}
.l-footer__logo-en {
  font-family: "Barlow Condensed", sans-serif;
  font-size: 1.375rem;
  font-weight: 600;
  line-height: 1;
  color: #606060;
}
.l-footer__logo-jp {
  font-size: 1.3125rem;
  font-weight: 900;
  letter-spacing: 0.04em;
}
.l-footer__address {
  margin-top: 2.375rem;
  font-size: 0.75rem;
  line-height: 1.6666666667;
}
.l-footer__address p + p {
  margin-top: 0.75rem;
}
.l-footer__sns {
  display: flex;
  gap: 0.5rem;
  align-items: center;
  margin-right: 1.5rem;
}
.l-footer__sns .com-icon {
  --wrap-size: 3.25rem;
  background: #eaeaea;
  border: 0.0625rem solid rgba(153, 153, 153, 0.5);
  border-radius: 50%;
}
@media (hover: hover) {
  .l-footer__sns a {
    transition: opacity 0.3s;
  }
  .l-footer__sns a:hover {
    opacity: 0.7;
  }
}
.l-footer__copyright {
  margin-top: 1.5rem;
  font-family: "Barlow Condensed", sans-serif;
  font-size: 0.75rem;
  color: #606060;
  letter-spacing: 0.1em;
}

@media only screen and (min-width: 768px) and (max-width: 1280px) {
  .l-footer__nav {
    flex-wrap: wrap;
    gap: 1rem;
  }
  .l-footer__list {
    gap: 1rem;
  }
}
@media only screen and (max-width: 767px) {
  .l-footer {
    position: relative;
    padding-bottom: 0rem;
    margin-top: 3.4375rem;
  }
  .l-footer::before {
    position: absolute;
    top: 0;
    right: 0.625rem;
    left: 0.625rem;
    content: "";
    border-top: 0.0625rem solid rgba(18, 18, 18, 0.5);
  }
  .l-footer__container {
    display: block;
    padding-top: 2.875rem;
    border-top: none;
  }
  .l-footer__img {
    width: auto;
    margin-top: 2.5rem;
    margin-right: -1.25rem;
    margin-left: 1.625rem;
    overflow: hidden;
    border-radius: 1.25rem 0 0 1.25rem;
  }
  .l-footer__img picture {
    display: block;
    width: 100%;
    min-width: 32rem;
    max-width: unset;
  }
  .l-footer__img picture img {
    aspect-ratio: 1027/949;
  }
  .l-footer__inner {
    position: relative;
    padding-right: 1.25rem;
    padding-bottom: 3.875rem;
    padding-left: 1.25rem;
  }
  .l-footer__copyright {
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;
    width: auto;
    padding: 0.875rem 1.25rem 0.5rem 1.5rem;
    font-size: 0.6875rem;
    text-align: center;
  }
  .l-footer__copyright::before {
    position: absolute;
    top: 0;
    right: 0.625rem;
    left: 0.625rem;
    content: "";
    border-top: 0.0625rem solid;
  }
  .l-footer__column-01 {
    display: block;
    padding-bottom: 0;
    margin-top: 3.625rem;
    border-bottom: none;
  }
  .l-footer__column-01-left {
    position: relative;
    padding: 2.625rem 0.9375rem 0;
  }
  .l-footer__column-01-left::before {
    position: absolute;
    top: 0;
    right: -0.625rem;
    left: -0.625rem;
    content: "";
    border-top: 0.0625rem solid rgba(18, 18, 18, 0.5);
  }
  .l-footer__sns {
    gap: 1.25rem;
    justify-content: center;
    margin-top: 2.125rem;
    margin-right: 0;
    font-size: 0;
  }
  .l-footer__sns .com-icon {
    --wrap-size: 3.125rem;
  }
  .l-footer__logo-en {
    font-size: 1.375rem;
  }
  .l-footer__logo-jp {
    font-size: 1.3025rem;
  }
  .l-footer__nav {
    flex-direction: column;
    gap: 0.8125rem;
    margin-left: 1.375rem;
  }
  .l-footer__list {
    gap: 0.625rem;
    min-width: unset;
  }
  .l-footer__list-link {
    font-size: 0.875rem;
  }
  .l-footer__list-link.--blank::after {
    --wrap-size: 0.75rem;
    margin-bottom: 0.25rem;
  }
  .l-footer__address {
    margin-top: 2.0625rem;
  }
  .l-footer__content {
    padding-top: 0;
    padding-bottom: 0;
    border-top: none;
  }
}
/* main */
.l-inner {
  width: 115rem;
  max-width: 100%;
  height: inherit;
  padding: 0 1.25rem;
  margin: 0 auto;
}
.l-inner.--wide {
  width: 90rem;
}
.l-inner.--md {
  width: 90rem;
}
.l-inner.--narrow {
  width: 77.5rem;
}

.l-section-first {
  margin-top: 7.5rem;
}

body:not(.index) {
  padding-top: 10.625rem;
}

@media only screen and (max-width: 767px) {
  body:not(.index) {
    padding-top: 4.375rem;
  }
}
/* margin */
.l-margin p {
  margin-top: 1rem;
}
.l-margin p:first-child {
  margin-top: 0;
}
.l-margin ul,
.l-margin ol,
.l-margin dl {
  margin-top: 1.5rem;
}
.l-margin ul:first-child,
.l-margin ol:first-child,
.l-margin dl:first-child {
  margin-top: 0;
}
.l-margin .p-table-conteiner,
.l-margin table {
  margin-top: 2rem;
}
.l-margin .p-table-conteiner:first-child,
.l-margin table:first-child {
  margin-top: 0;
}
.l-margin img {
  margin-top: 1.5rem;
}
.l-margin img:first-child {
  margin-top: 0;
}
.l-margin blockquote {
  margin-top: 1.5rem;
}
.l-margin blockquote:first-child {
  margin-top: 0;
}
.l-margin .c-button,
.l-margin .e-button {
  margin-top: 1.5rem;
}
.l-margin .c-button:first-child,
.l-margin .e-button:first-child {
  margin-top: 0;
}
.l-margin .p-box,
.l-margin .e-box {
  margin-top: 1.5rem;
}
.l-margin .p-box:first-child,
.l-margin .e-box:first-child {
  margin-top: 0;
}
.l-margin .p-grid,
.l-margin .e-grid {
  margin-top: 5rem;
}
.l-margin .p-grid:first-child,
.l-margin .e-grid:first-child {
  margin-top: 0;
}
.l-margin .p-grid + .l-margin .p-grid,
.l-margin .p-grid + .l-margin .e-grid,
.l-margin .e-grid + .l-margin .p-grid,
.l-margin .e-grid + .l-margin .e-grid {
  margin-top: 2.5rem;
}
.l-margin .p-grid p,
.l-margin .e-grid p {
  margin-top: 0.5rem;
}
.l-margin h2:not(:first-child) {
  margin-top: 6rem;
}
.l-margin h3:not(:first-child) {
  margin-top: 5rem;
}
.l-margin h4:not(:first-child) {
  margin-top: 3.5rem;
}
.l-margin h5:not(:first-child) {
  margin-top: 2.5rem;
}
.l-margin h6:not(:first-child) {
  margin-top: 1.5rem;
}

/* --------------------------------------------------
	4. object
-------------------------------------------------- */
/* component */
.c-button-01 {
  position: relative;
  display: inline-flex;
  gap: 0.75rem;
  align-items: center;
  justify-content: center;
  font-size: 1rem;
  font-weight: 500;
  text-decoration: underline;
  cursor: pointer;
}
.c-button-01.--reverse {
  flex-direction: row-reverse;
}
.c-button-01.--reverse::after {
  transform: rotate(-180deg);
}
.c-button-01::after {
  content: "";
  background: var(--icon-color);
  border: 0.0625rem solid #121212;
  border-radius: 50%;
  --wrap-size: 2rem;
  --icon-size: contain;
  --icon-color: #000;
  display: inline-flex;
  width: var(--wrap-w, var(--wrap-size));
  height: var(--wrap-h, var(--wrap-size));
  background-image: var(--icon-url, none);
  background-repeat: no-repeat;
  background-position: center;
  background-size: var(--icon-size, contain);
  --icon-color: #fff;
  --wrap-size: 1.375rem;
  --icon-url: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg id='_ãƒ‡ã‚¶ã‚¤ãƒ³' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 6.61 6.18'%3E%3Cdefs%3E%3Cstyle%3E.cls-1%7Bfill:none;stroke:%2323201c;stroke-linecap:round;stroke-miterlimit:10;stroke-width:.92px;%7D%3C/style%3E%3C/defs%3E%3Cpolyline class='cls-1' points='3.32 .46 5.96 3.09 3.32 5.73'/%3E%3Cline class='cls-1' x1='5.44' y1='3.09' x2='.46' y2='3.09'/%3E%3C/svg%3E");
  --icon-size: 0.4375rem;
}
@media (hover: hover) {
  .c-button-01 {
    transition: all 0.3s;
  }
  .c-button-01::after {
    transition: all 0.3s;
  }
  .c-button-01:hover::after {
    --icon-color: #ffe600;
  }
}

@media only screen and (max-width: 767px) {
  .c-button-01 {
    gap: 0.375rem;
    font-size: 0.8125rem;
  }
  .c-button-01::after {
    --wrap-size: 1.1875rem;
    --icon-size: 0.25rem;
  }
}
.c-heading-01 {
  color: #121212;
}
.c-heading-01__jp {
  display: block;
  font-size: 4rem;
  font-weight: bold;
  line-height: 1.15625;
}
.c-heading-01__jp.--sm {
  font-size: 2.8125rem;
  line-height: 1.3777777778;
}
.c-heading-01__en {
  display: block;
  margin-top: 0.75rem;
  font-family: "Barlow Condensed", sans-serif;
  font-size: 1.25rem;
  font-weight: 600;
}
.c-heading-01.--white {
  color: #fff;
}

@media only screen and (max-width: 767px) {
  .c-heading-01__jp {
    font-size: 2.25rem;
  }
  .c-heading-01__jp.--sm {
    font-size: 1.5rem;
  }
  .c-heading-01__en {
    margin-top: 0.25rem;
    font-size: 0.8125rem;
  }
}
.c-heading-02 {
  position: relative;
  padding-bottom: 0.875rem;
  font-size: 1.875rem;
  font-weight: bold;
  text-align: center;
}
.c-heading-02::after {
  position: absolute;
  bottom: 0;
  left: 50%;
  width: 3.75rem;
  height: 0.25rem;
  content: "";
  background-color: #121212;
  transform: translateX(-50%);
}

@media only screen and (max-width: 767px) {
  .c-heading-02 {
    padding-bottom: 0.625rem;
    font-size: 1.125rem;
  }
  .c-heading-02::after {
    width: 2.1875rem;
    height: 0.125rem;
  }
}
.c-hr-sec {
  height: 0.0625rem;
  margin-top: 9.4375rem;
  margin-bottom: 7rem;
  background-color: rgba(34, 34, 34, 0.25);
  border: none;
  box-shadow: none;
}

@media only screen and (max-width: 767px) {
  .c-hr-sec {
    margin-top: 4.6875rem;
    margin-bottom: 3.5rem;
  }
}
.com-icon {
  --wrap-size: 2rem;
  --icon-size: 100%;
  --icon-url: "";
  --icon-color: #121212;
  position: relative;
  display: inline-block;
  width: var(--wrap-w, var(--wrap-size));
  height: var(--wrap-h, var(--wrap-size));
}
.com-icon::before {
  position: absolute;
  top: 50%;
  left: 50%;
  z-index: 1;
  width: var(--icon-w, var(--icon-size));
  height: var(--icon-h, var(--icon-size));
  content: "";
  background: var(--icon-color);
  -webkit-mask-image: var(--icon-url);
          mask-image: var(--icon-url);
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center;
          mask-position: center;
  -webkit-mask-size: contain;
          mask-size: contain;
  transform: translate(-50%, -50%);
}
.com-icon.--x {
  --icon-url: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg id='Isolation_Mode' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 52 52'%3E%3Cdefs%3E%3Cstyle%3E.cls-1%7Bfill:%23222;%7D.cls-2%7Bopacity:0;%7D.cls-3%7Bfill:%23999;%7D.cls-4%7Bfill:%23eaeaea;%7D%3C/style%3E%3C/defs%3E%3Cg class='cls-2'%3E%3Cpath class='cls-4' d='M26,51.75C11.8,51.75.25,40.2.25,26S11.8.25,26,.25s25.75,11.55,25.75,25.75-11.55,25.75-25.75,25.75Z'/%3E%3Cpath class='cls-3' d='M26,.5c14.06,0,25.5,11.44,25.5,25.5s-11.44,25.5-25.5,25.5S.5,40.06.5,26,11.94.5,26,.5M26,0C11.64,0,0,11.64,0,26s11.64,26,26,26,26-11.64,26-26S40.36,0,26,0h0Z'/%3E%3C/g%3E%3Cpath class='cls-1' d='M27.81,24.51l7.07-8.22h-1.68l-6.14,7.14-4.91-7.14h-5.66l7.42,10.8-7.42,8.62h1.68l6.49-7.54,5.18,7.54h5.66l-7.69-11.2h0ZM25.51,27.18l-.75-1.07-5.98-8.55h2.57l4.83,6.9.75,1.07,6.27,8.97h-2.57l-5.12-7.32h0Z'/%3E%3C/svg%3E");
}
.com-icon.--instagram {
  --icon-url: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg id='Isolation_Mode' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 52 52'%3E%3Cdefs%3E%3Cstyle%3E.cls-1%7Bfill:%23222;%7D.cls-2%7Bopacity:0;%7D.cls-3%7Bfill:%23999;%7D.cls-4%7Bfill:%23eaeaea;%7D%3C/style%3E%3C/defs%3E%3Cg class='cls-2'%3E%3Cpath class='cls-4' d='M26,51.75C11.8,51.75.25,40.2.25,26S11.8.25,26,.25s25.75,11.55,25.75,25.75-11.55,25.75-25.75,25.75Z'/%3E%3Cpath class='cls-3' d='M26,.5c14.06,0,25.5,11.44,25.5,25.5s-11.44,25.5-25.5,25.5S.5,40.06.5,26,11.94.5,26,.5M26,0C11.64,0,0,11.64,0,26s11.64,26,26,26,26-11.64,26-26S40.36,0,26,0h0Z'/%3E%3C/g%3E%3Cpath class='cls-1' d='M31.37,14.29h-10.74c-3.49,0-6.34,2.84-6.34,6.34v10.74c0,3.49,2.84,6.34,6.34,6.34h10.74c3.49,0,6.34-2.84,6.34-6.34v-10.74c0-3.49-2.84-6.34-6.34-6.34ZM36.33,31.37c0,2.74-2.23,4.96-4.96,4.96h-10.74c-2.74,0-4.96-2.23-4.96-4.96v-10.74c0-2.74,2.23-4.96,4.96-4.96h10.74c2.74,0,4.96,2.23,4.96,4.96v10.74Z'/%3E%3Cpath class='cls-1' d='M26,19.6c-3.53,0-6.4,2.87-6.4,6.4s2.87,6.4,6.4,6.4,6.4-2.87,6.4-6.4-2.87-6.4-6.4-6.4ZM26,31.03c-2.77,0-5.03-2.26-5.03-5.03s2.26-5.03,5.03-5.03,5.03,2.26,5.03,5.03-2.26,5.03-5.03,5.03Z'/%3E%3Cpath class='cls-1' d='M32.55,17.33c-1.04,0-1.89.85-1.89,1.89s.85,1.89,1.89,1.89,1.89-.85,1.89-1.89-.85-1.89-1.89-1.89ZM32.55,19.74c-.29,0-.52-.23-.52-.52s.23-.52.52-.52.52.23.52.52-.23.52-.52.52Z'/%3E%3C/svg%3E");
}
.com-icon.--youtube {
  --icon-url: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg id='Isolation_Mode' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 52 52'%3E%3Cdefs%3E%3Cstyle%3E.cls-1%7Bfill:%23222;%7D.cls-2%7Bopacity:0;%7D.cls-3%7Bfill:%23999;%7D.cls-4%7Bfill:%23eaeaea;%7D%3C/style%3E%3C/defs%3E%3Cg class='cls-2'%3E%3Cpath class='cls-4' d='M26,51.75C11.8,51.75.25,40.2.25,26S11.8.25,26,.25s25.75,11.55,25.75,25.75-11.55,25.75-25.75,25.75Z'/%3E%3Cpath class='cls-3' d='M26,.5c14.06,0,25.5,11.44,25.5,25.5s-11.44,25.5-25.5,25.5S.5,40.06.5,26,11.94.5,26,.5M26,0C11.64,0,0,11.64,0,26s11.64,26,26,26,26-11.64,26-26S40.36,0,26,0h0Z'/%3E%3C/g%3E%3Cpath class='cls-1' d='M37.98,19.99c-.29-1.07-1.13-1.92-2.2-2.2-1.96-.54-9.78-.54-9.78-.54,0,0-7.83,0-9.78.51-1.05.29-1.92,1.15-2.2,2.22-.51,1.96-.51,6.01-.51,6.01,0,0,0,4.08.51,6.01.29,1.07,1.13,1.92,2.2,2.2,1.98.54,9.78.54,9.78.54,0,0,7.83,0,9.78-.51,1.07-.29,1.92-1.13,2.2-2.2.51-1.96.51-6.01.51-6.01,0,0,.02-4.08-.51-6.03ZM23.51,29.75v-7.5l6.51,3.75-6.51,3.75Z'/%3E%3C/svg%3E");
}
.com-icon.--circle-arrow {
  --wrap-size: 1.375rem;
  --icon-url: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg id='_ãƒ‡ã‚¶ã‚¤ãƒ³' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 6.61 6.18'%3E%3Cdefs%3E%3Cstyle%3E.cls-1%7Bfill:none;stroke:%2323201c;stroke-linecap:round;stroke-miterlimit:10;stroke-width:.92px;%7D%3C/style%3E%3C/defs%3E%3Cpolyline class='cls-1' points='3.32 .46 5.96 3.09 3.32 5.73'/%3E%3Cline class='cls-1' x1='5.44' y1='3.09' x2='.46' y2='3.09'/%3E%3C/svg%3E");
  background-color: #fff;
  border: 0.0625rem solid var(--icon-color);
  border-radius: 50%;
  --icon-size: 0.4375rem;
}
.com-icon.--update {
  --icon-url: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg id='Isolation_Mode' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 13.82 12.06'%3E%3Cdefs%3E%3Cstyle%3E.cls-1%7Bfill:%23121212;%7D%3C/style%3E%3C/defs%3E%3Cpath class='cls-1' d='M7.6,5.58c.13-.27.28-.6.4-.91.11-.28-.02-.65-.26-.82C6.15,2.79.76-.26.15,6.6c-.03.3-.08.3-.11,0C-.06,5.57-.11,3.29,1.26,2.06c.22-.2.61-.48.86-.65.88-.58,3.1-1.57,6.29.13.26.14.52.03.58-.26l.22-1.04c.06-.29.24-.32.39-.07l2.61,4.32c.15.25.04.51-.25.57l-4.07.88c-.29.06-.42-.1-.29-.37ZM11.67,10.94c-.88.58-3.1,1.57-6.29-.13-.26-.14-.55-.04-.64.24l-.27.79c-.1.28-.29.3-.42.03l-2.09-3.97c-.14-.26-.02-.55.26-.63l3.45-1.05c.28-.09.45.07.37.36-.09.32-.2.74-.3,1.1-.08.29.06.66.31.82,1.61,1.03,7.05,3.97,7.64-2.8.03-.3.07-.3.1,0,.09,1.04.11,3.37-1.26,4.6-.22.2-.61.48-.86.65Z'/%3E%3C/svg%3E");
}
.com-icon.--phone {
  --icon-url: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg id='Isolation_Mode' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 22.03'%3E%3Cdefs%3E%3Cstyle%3E.cls-1%7Bfill:%23121212;%7D%3C/style%3E%3C/defs%3E%3Cpath class='cls-1' d='M9.05,21.08c-.07-.78-.98-4.84-1.47-5.18-.23-.16-.54-.14-1.41-.07-.42.05-.84.07-1.26.05-.3-.5-.55-1.03-.72-1.58-.74-2.13-.74-4.45,0-6.58.18-.55.42-1.08.72-1.58.42-.02.84,0,1.26.05.87.08,1.18.09,1.41-.07.49-.34,1.4-4.4,1.47-5.18.03-.32.01-.58-.16-.75-.5-.5-5.56.03-5.93.4-.03.03-2.89,2.99-2.96,10.42.06,7.42,2.93,10.39,2.96,10.42.36.36,5.42.9,5.93.4.17-.17.19-.43.16-.75h0Z'/%3E%3Cpath class='cls-1' d='M10,13.93l.97.97c2.14-2.14,2.14-5.61,0-7.76l-.97.97c1.6,1.61,1.6,4.21,0,5.82Z'/%3E%3Cpath class='cls-1' d='M12.42,16.35l.97.97c3.48-3.48,3.48-9.12,0-12.61l-.97.97c2.94,2.95,2.94,7.72,0,10.67Z'/%3E%3C/svg%3E");
}
.com-icon.--inquiry {
  --icon-url: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg id='Isolation_Mode' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 18 17.25'%3E%3Cdefs%3E%3Cstyle%3E.cls-1%7Bfill:%23121212;%7D%3C/style%3E%3C/defs%3E%3Cpath class='cls-1' d='M6.56,13.21v3.48c0,.24.16.46.39.53.06.02.12.03.18.03.18,0,.34-.08.45-.23l2.03-2.77-3.05-1.04Z'/%3E%3Cpath class='cls-1' d='M17.76.1c-.17-.12-.4-.14-.59-.04L.3,8.88c-.2.1-.32.32-.3.54.02.22.17.42.38.49l4.69,1.6L15.06,2.97l-7.73,9.31,7.86,2.69c.06.02.12.03.18.03.1,0,.2-.03.29-.08.14-.09.24-.23.26-.4L17.99.65c.03-.21-.06-.42-.23-.54Z'/%3E%3C/svg%3E");
}
.com-icon.--anchor {
  --icon-url: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg id='_ãƒ‡ã‚¶ã‚¤ãƒ³' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 22 22'%3E%3Cdefs%3E%3Cstyle%3E.cls-1%7Bfill:%2323201c;%7D.cls-2%7Bfill:none;stroke:%2323201c;stroke-linecap:round;stroke-miterlimit:10;stroke-width:.92px;%7D%3C/style%3E%3C/defs%3E%3Cpath class='cls-1' d='M11,.92c5.56,0,10.08,4.52,10.08,10.08s-4.52,10.08-10.08,10.08S.92,16.56.92,11,5.44.92,11,.92M11,0C4.92,0,0,4.92,0,11s4.92,11,11,11,11-4.92,11-11S17.08,0,11,0h0Z'/%3E%3Cpolyline class='cls-2' points='13.63 11.12 11 13.75 8.37 11.12'/%3E%3Cline class='cls-2' x1='11' y1='13.23' x2='11' y2='8.25'/%3E%3C/svg%3E");
}
.com-icon.--pointer {
  --icon-url: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg id='_ãƒ‡ã‚¶ã‚¤ãƒ³' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 35.21 28.18'%3E%3Cdefs%3E%3Cstyle%3E.cls-1%7Bfill:%231d95d8;%7D%3C/style%3E%3C/defs%3E%3Cpath class='cls-1' d='M22.89,25.25c0-.65-.23-1.29-.59-1.76h.59c1.64,0,2.93-1.29,2.93-2.93,0-.65-.23-1.29-.59-1.76,1.64,0,2.93-1.29,2.93-2.93,0-.65-.23-1.29-.59-1.76h4.69c1.64,0,2.93-1.29,2.93-2.93s-1.29-2.93-2.93-2.93h-13.32c2.23-1.29,3.34-4.28,2.52-6.57-.06-.29-.23-.53-.41-.82C20.48-.04,19.72.02,19.48.02c-.35-.06-.41,0-1.35.82-1.17,1-3.64,3.17-6.1,4.52-.12.12-2.7,1.7-4.64,3.46h-1.53c-3.23,0-5.87,2.64-5.87,5.87v5.87c0,2.52,2.11,5.16,4.58,5.75.7.18,1.23.35,1.47.59.7.59,2.35,1.29,4.52,1.29h9.39c1.64,0,2.93-1.29,2.93-2.93ZM1.17,20.61v-5.87c0-2.58,2.11-4.69,4.69-4.69h.53c-.08.11-.16.23-.24.35-.29.35-.47.65-.76,1-.06.12-.12.23-.12.35,0,.18.06.35.23.41.23.23.59.18.82-.06.35-.35.59-.7.82-1.06.29-.41.58-.81.93-1.22,1.82-1.74,4.53-3.42,4.53-3.42,2.52-1.41,5.05-3.64,6.28-4.69.23-.18.53-.41.65-.53.18,0,.29,0,.53.41.12.23.23.41.29.59.53,1.53-.18,4.05-2.11,5.16l-1.36.91s-.07.02-.11.03l-1.17.59c-.23.12-.35.29-.35.53,0,.12,0,.18.12.23.12.23.47.35.76.23l.83-.41s.03,0,.05,0h15.26c1,0,1.76.76,1.76,1.76s-.76,1.76-1.76,1.76H15.84c-.35,0-.59.23-.59.59s.23.59.59.59h9.39c1,0,1.76.76,1.76,1.76s-.76,1.76-1.76,1.76h-8.8c-.35,0-.59.23-.59.59s.23.59.59.59h6.45c1,0,1.76.76,1.76,1.76s-.76,1.76-1.76,1.76h-7.04c-.35,0-.59.23-.59.59s.23.59.59.59h4.11c1,0,1.76.76,1.76,1.76s-.76,1.76-1.76,1.76h-9.39c-1.09,0-1.97-.21-2.61-.46-.06-.05-.13-.1-.2-.13-.76-.23-.94-.94-1.29-2.23l-.06-.35c-.06-.29-.41-.47-.7-.41-.23.12-.41.35-.41.59v.47c.07.27.14.54.22.8-.2-.06-.41-.11-.63-.16-2-.41-3.7-2.58-3.7-4.58Z'/%3E%3C/svg%3E");
}
.com-icon.--arrow-two-ways {
  --icon-url: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg id='_ãƒ‡ã‚¶ã‚¤ãƒ³' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 28.72 22.53'%3E%3Cdefs%3E%3Cstyle%3E.cls-1%7Bfill:%23515151;%7D%3C/style%3E%3C/defs%3E%3Cg id='Transfer-2'%3E%3Cpath class='cls-1' d='M28.4,15.57l-6.28-5.38c-.38-.32-.94-.28-1.27.1-.14.16-.22.37-.22.58v2.69h-9.87c-.5,0-.9.4-.9.9v3.59c0,.5.4.9.9.9h9.87v2.69c0,.5.4.9.9.9.21,0,.42-.08.58-.22l6.28-5.38c.38-.32.42-.89.1-1.27-.03-.03-.06-.07-.1-.1h0Z'/%3E%3Cpath class='cls-1' d='M18.85,8.08v-3.59c0-.5-.4-.9-.9-.9h-9.87V.9C8.08.4,7.67,0,7.18,0c-.21,0-.42.08-.58.22L.31,5.6c-.38.32-.42.89-.1,1.27.03.03.06.07.1.1l6.28,5.38c.38.32.94.28,1.27-.1.14-.16.22-.37.22-.58v-2.69h9.87c.5,0,.9-.4.9-.9h0Z'/%3E%3C/g%3E%3C/svg%3E");
}
.com-icon.--radio {
  --wrap-size: 1.0625rem;
  --icon-color: #3a3a3a;
}
.com-icon.--radio::before {
  background-color: #fff;
  border: 0.0625rem solid rgba(53, 53, 53, 0.5);
  border-radius: 50%;
}
.com-icon.--radio::after {
  position: absolute;
  top: 50%;
  left: 50%;
  z-index: 1;
  width: 47.0588235294%;
  aspect-ratio: 1/1;
  content: "";
  background-color: var(--icon-color);
  border-radius: 50%;
  opacity: 0;
  transition: opacity 0.3s;
  transform: translate(-50%, -50%);
}
.com-icon.--checkbox {
  --icon-color: #3a3a3a;
  --wrap-size: 1.25rem;
}
.com-icon.--checkbox::before {
  background-color: #fff;
  border: 0.0625rem solid rgba(53, 53, 53, 0.5);
  border-radius: 0.125rem;
}
.com-icon.--checkbox::after {
  position: absolute;
  inset: 0;
  z-index: 1;
  width: 75%;
  aspect-ratio: 1/1;
  margin: auto;
  content: "";
  background-color: var(--icon-color);
  opacity: 0;
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg width='15' height='13' viewBox='0 0 15 13' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1.5 6.5L5.5 11.5L13.5 1.5' stroke='white' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E%0A");
          mask-image: url("data:image/svg+xml,%3Csvg width='15' height='13' viewBox='0 0 15 13' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1.5 6.5L5.5 11.5L13.5 1.5' stroke='white' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E%0A");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center;
          mask-position: center;
  -webkit-mask-size: contain;
          mask-size: contain;
  transition: opacity 0.3s;
}

input[type=radio]:checked + * .com-icon.--radio::after {
  opacity: 1;
}

input[type=checkbox]:checked + * .com-icon.--checkbox::after {
  opacity: 1;
}

.c-button {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 4.375rem;
  padding: 0.5rem 3.375rem 0.5rem 1.25rem;
  font-size: 1.1875rem;
  font-weight: bold;
  text-align: center;
  cursor: pointer;
  background: #f2f2f2;
  border: 0.0625rem solid rgba(153, 153, 153, 0.4);
  border-radius: 0.1875rem;
}
.c-button::after {
  position: absolute;
  top: 0;
  right: 0.875rem;
  bottom: 0;
  margin: auto;
  content: "";
  background-color: var(--icon-color);
  border: 0.0625rem solid #23201c;
  border-radius: 50%;
  --wrap-size: 2rem;
  --icon-size: contain;
  --icon-color: #000;
  display: inline-flex;
  width: var(--wrap-w, var(--wrap-size));
  height: var(--wrap-h, var(--wrap-size));
  background-image: var(--icon-url, none);
  background-repeat: no-repeat;
  background-position: center;
  background-size: var(--icon-size, contain);
  --wrap-size: 1.375rem;
  --icon-url: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg id='_ãƒ‡ã‚¶ã‚¤ãƒ³' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 6.61 6.18'%3E%3Cdefs%3E%3Cstyle%3E.cls-1%7Bfill:none;stroke:%2323201c;stroke-linecap:round;stroke-miterlimit:10;stroke-width:.92px;%7D%3C/style%3E%3C/defs%3E%3Cpolyline class='cls-1' points='3.32 .46 5.96 3.09 3.32 5.73'/%3E%3Cline class='cls-1' x1='5.44' y1='3.09' x2='.46' y2='3.09'/%3E%3C/svg%3E");
  --icon-size: 0.4375rem;
  --icon-color: #fff;
}
.c-button.--blank::after {
  right: 1.25rem;
  content: "";
  --wrap-size: 2rem;
  --icon-size: contain;
  --icon-color: #000;
  display: inline-flex;
  width: var(--wrap-w, var(--wrap-size));
  height: var(--wrap-h, var(--wrap-size));
  background: var(--icon-color);
  -webkit-mask-image: var(--icon-url, none);
          mask-image: var(--icon-url, none);
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center;
          mask-position: center;
  -webkit-mask-size: var(--icon-size, contain);
          mask-size: var(--icon-size, contain);
  --icon-color: #121212;
  --wrap-size: 0.8125rem;
  --icon-url: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg id='_ãƒ‡ã‚¶ã‚¤ãƒ³' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 13 11.02'%3E%3Cdefs%3E%3Cstyle%3E.cls-1%7Bfill:%23121212;%7D%3C/style%3E%3C/defs%3E%3Cpath class='cls-1' d='M12.03,0H3.97c-.54,0-.97.44-.97.97v2.03H.98c-.54,0-.98.44-.98.97v6.07c0,.54.44.98.98.98h8.05c.54,0,.97-.44.97-.98v-2.02h2.03c.54,0,.97-.44.97-.97V.97c0-.54-.44-.97-.97-.97ZM9.01,10.02l-8.01.02-.02-6.05h2.02s0,3.05,0,3.05c0,.54.44.97.97.97h5.03v2ZM12,7.02l-8.01.02-.02-6.05,8.03-.02v6.05Z'/%3E%3C/svg%3E");
  border: none;
  border-radius: 0;
}
.c-button.--pdf::after {
  right: 1.25rem;
  content: "";
  --wrap-size: 2rem;
  --icon-size: contain;
  --icon-color: #000;
  display: inline-flex;
  width: var(--wrap-w, var(--wrap-size));
  height: var(--wrap-h, var(--wrap-size));
  background: var(--icon-color);
  -webkit-mask-image: var(--icon-url, none);
          mask-image: var(--icon-url, none);
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center;
          mask-position: center;
  -webkit-mask-size: var(--icon-size, contain);
          mask-size: var(--icon-size, contain);
  --icon-color: #e81827;
  --wrap-size: 1rem;
  --icon-url: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg id='_ãƒ‡ã‚¶ã‚¤ãƒ³' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cdefs%3E%3Cstyle%3E.cls-1%7Bfill:%23e81827;%7D%3C/style%3E%3C/defs%3E%3Cpath class='cls-1' d='M11.47,8.43c-.42.03-.84.08-1.26.15-.36-.28-.71-.58-1.04-.89-.33-.33-.62-.65-.88-.95.28-.71.47-1.45.57-2.21,0-1.44-.52-1.73-1.3-1.73-.59,0-1.3.31-1.3,1.77.1.87.47,1.69,1.06,2.34-.17.52-.37,1.13-.6,1.81-.11.33-.23.63-.35.91-.1.05-.2.09-.3.14-.34.17-.67.33-.98.47-1.38.66-2.3,1.09-2.3,1.94,0,.62.67,1.01,1.3,1.01.81,0,2.02-1.08,2.91-2.89.97-.36,1.96-.62,2.97-.8.55.5,1.2.88,1.91,1.09,1.07,0,1.3-.62,1.3-1.14,0-1.02-1.17-1.02-1.73-1.02ZM4.1,12.33c-.16,0-.31-.04-.43-.14,0-.31.92-.74,1.8-1.16.06-.03.11-.05.17-.08-.65.94-1.29,1.38-1.54,1.38ZM7.13,4.57c0-.91.28-.91.43-.91.31,0,.43,0,.43.87-.07.46-.18.91-.34,1.35-.29-.38-.47-.84-.52-1.31ZM7.47,9.23c.03-.08.05-.15.08-.23.16-.48.31-.92.43-1.31.18.2.37.4.58.61.08.08.28.26.55.49-.53.12-1.1.26-1.65.43h0ZM11.93,9.74c-.26-.11-.5-.25-.73-.42.12-.01.21-.02.26-.02.64,0,.82.06.87.16,0,.19,0,.28-.4.28h0Z'/%3E%3Cpath class='cls-1' d='M14.86,1.14v13.71H1.14V1.14h13.71M14.86,0H1.14C.51,0,0,.51,0,1.14v13.71c0,.63.51,1.14,1.14,1.14h13.71c.63,0,1.14-.51,1.14-1.14V1.14c0-.63-.51-1.14-1.14-1.14h0Z'/%3E%3C/svg%3E");
  border: none;
  border-radius: 0;
}
.c-button.--sm {
  padding-right: 3.625rem;
  padding-left: 1.25rem;
  font-size: 1rem;
}
.c-button.--sm::after {
  right: 0.9375rem;
  --wrap-size: 1.375rem;
}
.c-button.--sm small {
  font-size: 0.875rem;
}
.c-button.--sm.--blank {
  padding-right: 2.875rem;
}
.c-button.--sm.--blank::after {
  --wrap-size: 0.8125rem;
}
.c-button.--md {
  padding-right: 5.25rem;
  font-size: 1.125rem;
}
.c-button.--md::after {
  right: 1.0625rem;
}
.c-button.--full {
  width: 100%;
  padding-right: 2.5rem;
  padding-left: 2.5rem;
}
.c-button.--size01 {
  min-width: 14.0625rem;
  padding-right: 1.875rem;
}
.c-button.--mail-left::before {
  margin-right: 0.625rem;
  content: "";
  --wrap-size: 2rem;
  --icon-size: contain;
  --icon-color: #000;
  display: inline-flex;
  width: var(--wrap-w, var(--wrap-size));
  height: var(--wrap-h, var(--wrap-size));
  background: var(--icon-color);
  -webkit-mask-image: var(--icon-url, none);
          mask-image: var(--icon-url, none);
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center;
          mask-position: center;
  -webkit-mask-size: var(--icon-size, contain);
          mask-size: var(--icon-size, contain);
  --icon-url: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg id='Isolation_Mode' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 18 17.25'%3E%3Cdefs%3E%3Cstyle%3E.cls-1%7Bfill:%23121212;%7D%3C/style%3E%3C/defs%3E%3Cpath class='cls-1' d='M6.56,13.21v3.48c0,.24.16.46.39.53.06.02.12.03.18.03.18,0,.34-.08.45-.23l2.03-2.77-3.05-1.04Z'/%3E%3Cpath class='cls-1' d='M17.76.1c-.17-.12-.4-.14-.59-.04L.3,8.88c-.2.1-.32.32-.3.54.02.22.17.42.38.49l4.69,1.6L15.06,2.97l-7.73,9.31,7.86,2.69c.06.02.12.03.18.03.1,0,.2-.03.29-.08.14-.09.24-.23.26-.4L17.99.65c.03-.21-.06-.42-.23-.54Z'/%3E%3C/svg%3E");
  --wrap-size: 1.375rem;
}
.c-button.--bg-white {
  background-color: #fff;
}
.c-button.--submit {
  color: #fff;
  background: #121212 url("../images/common/bg-noise-01.png") repeat center/auto;
  border-color: #121212;
}
.c-button.--submit::after {
  --icon-color: #ffe600;
}
.c-button.--submit:disabled {
  color: #999;
  background: #f2f2f2;
  border-color: rgba(153, 153, 153, 0.4);
}
.c-button.--submit:disabled::after {
  border-color: rgb(153, 153, 153);
  --icon-color: #fff;
  --icon-url: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg id='_ãƒ‡ã‚¶ã‚¤ãƒ³' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 6.61 6.18'%3E%3Cdefs%3E%3Cstyle%3E.cls-1%7Bfill:none;stroke:%23999;stroke-linecap:round;stroke-miterlimit:10;stroke-width:.92px;%7D%3C/style%3E%3C/defs%3E%3Cpolyline class='cls-1' points='3.32 .46 5.96 3.09 3.32 5.73'/%3E%3Cline class='cls-1' x1='5.44' y1='3.09' x2='.46' y2='3.09'/%3E%3C/svg%3E");
}
@media (hover: hover) {
  .c-button {
    transition: all 0.3s;
  }
  .c-button::after {
    transition: all 0.3s;
  }
  .c-button::before {
    transition: all 0.3s;
  }
  .c-button:hover {
    color: #fff;
    background: #121212 url("../images/common/bg-noise-01.png") repeat center/auto;
    border-color: #121212;
  }
  .c-button:hover::after {
    --icon-color: #ffe600;
  }
  .c-button:hover.--mail-left::before {
    --icon-color: #fff;
  }
  .c-button:hover.--blank::after {
    --icon-color: #fff;
  }
  .c-button:hover.--pdf::after {
    --icon-color: #e81827;
  }
}
@media only screen and (max-width: 767px) {
  .c-button {
    min-height: 3.125rem;
    font-size: 0.9375rem;
    border-radius: 0.15625rem;
  }
  .c-button::after {
    --wrap-size: 1rem;
    --icon-size: 0.25rem;
    right: 0.5rem;
  }
  .c-button.--sm {
    padding-right: 2.875rem;
    padding-left: 1rem;
    font-size: 0.8125rem;
  }
  .c-button.--sm::after {
    --wrap-size: 1.1875rem;
    right: 0.75rem;
  }
  .c-button.--sm small {
    font-size: 0.6875rem;
  }
  .c-button.--size01 {
    min-width: 11.25rem;
    padding-right: 1.875rem;
  }
}

.c-heading {
  position: relative;
  display: inline-block;
  font-size: 2rem;
  color: #000;
}

@media only screen and (max-width: 767px) {
  .c-heading {
    font-size: 1.5rem;
  }
}
.c-heading-lv1 {
  font-size: 2rem;
}

.c-heading-lv2 {
  font-size: 1.875rem;
  font-weight: bold;
  line-height: 1.4333333333;
}
.c-heading-lv2.--underline {
  position: relative;
  padding-bottom: 0.8125rem;
}
.c-heading-lv2.--underline::after {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 2.5rem;
  height: 0.1875rem;
  content: "";
  background-color: currentcolor;
}
@media only screen and (max-width: 767px) {
  .c-heading-lv2 {
    font-size: 1.625rem;
  }
  .c-heading-lv2.--underline {
    padding-bottom: 0.5rem;
  }
  .c-heading-lv2.--underline::after {
    width: 1.5rem;
    height: 0.125rem;
  }
}

.c-heading-lv3 {
  font-size: 1.625rem;
  font-weight: bold;
  line-height: 1.3076923077;
}
.c-heading-lv3.--dot {
  position: relative;
  padding-left: 2.0625rem;
}
.c-heading-lv3.--dot::before {
  position: absolute;
  top: 1.125rem;
  left: 0.25rem;
  display: inline-block;
  width: 0.6875rem;
  aspect-ratio: 1/1;
  content: "";
  background-color: #ffe600;
  border-radius: 50%;
  transform: translateY(-50%);
}
.c-heading-lv3 small {
  display: inline-block;
  font-size: 1rem;
  font-weight: 500;
  vertical-align: middle;
}
@media only screen and (max-width: 767px) {
  .c-heading-lv3 {
    font-size: 1.5rem;
  }
  .c-heading-lv3.--dot::before {
    top: 1rem;
  }
}

.c-heading-lv4 {
  font-size: 1.375rem;
  font-weight: bold;
  line-height: 1.9545454545;
}
.c-heading-lv4.--hyphen {
  position: relative;
  padding-left: 1.375rem;
}
.c-heading-lv4.--hyphen::before {
  position: absolute;
  top: 1.375rem;
  left: 0;
  width: 0.9375rem;
  height: 0.1875rem;
  content: "";
  background-color: #ffe600;
  transform: translateY(-50%);
}

.c-heading-lv5 {
  font-size: 1.25rem;
  font-weight: bold;
}

.c-heading-lv6 {
  font-size: 1.125rem;
  font-weight: bold;
}

.c-list-dot__item {
  position: relative;
  padding-left: 1em;
  font-size: 0.9375rem;
  line-height: 1.8666666667;
}
.c-list-dot__item + li {
  margin-top: 0;
}
.c-list-dot__item::before {
  position: absolute;
  top: calc(0.93em - 0.1875rem);
  left: 0;
  display: block;
  width: 0.375rem;
  height: 0.375rem;
  content: "";
  background: currentcolor;
  border-radius: 50%;
}

.c-list-ol {
  list-style: decimal;
  list-style-position: inside;
}
.c-list-ol__item {
  text-indent: -1em;
  padding-left: 1em;
}
.c-list-ol__item + li {
  margin-top: 0.5rem;
}

.c-list-dl__dt {
  font-weight: bold;
}
.c-list-dl__dd {
  padding-left: 1em;
}

.c-text-link {
  position: relative;
  display: inline-block;
  font-size: 0.875rem;
  font-weight: bold;
  color: #121212;
  text-decoration: underline;
  letter-spacing: 0.1em;
}
.c-text-link.--blank::after {
  right: 0;
  margin-left: 0.5rem;
  content: "";
  --wrap-size: 2rem;
  --icon-size: contain;
  --icon-color: #000;
  display: inline-flex;
  width: var(--wrap-w, var(--wrap-size));
  height: var(--wrap-h, var(--wrap-size));
  background: var(--icon-color);
  -webkit-mask-image: var(--icon-url, none);
          mask-image: var(--icon-url, none);
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center;
          mask-position: center;
  -webkit-mask-size: var(--icon-size, contain);
          mask-size: var(--icon-size, contain);
  --icon-color: #121212;
  --wrap-size: 0.625rem;
  --icon-url: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg id='_ãƒ‡ã‚¶ã‚¤ãƒ³' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 13 11.02'%3E%3Cdefs%3E%3Cstyle%3E.cls-1%7Bfill:%23121212;%7D%3C/style%3E%3C/defs%3E%3Cpath class='cls-1' d='M12.03,0H3.97c-.54,0-.97.44-.97.97v2.03H.98c-.54,0-.98.44-.98.97v6.07c0,.54.44.98.98.98h8.05c.54,0,.97-.44.97-.98v-2.02h2.03c.54,0,.97-.44.97-.97V.97c0-.54-.44-.97-.97-.97ZM9.01,10.02l-8.01.02-.02-6.05h2.02s0,3.05,0,3.05c0,.54.44.97.97.97h5.03v2ZM12,7.02l-8.01.02-.02-6.05,8.03-.02v6.05Z'/%3E%3C/svg%3E");
}
.c-text-link.--pdf::after {
  margin-left: 0.375rem;
  content: "";
  --wrap-size: 2rem;
  --icon-size: contain;
  --icon-color: #000;
  display: inline-flex;
  width: var(--wrap-w, var(--wrap-size));
  height: var(--wrap-h, var(--wrap-size));
  background: var(--icon-color);
  -webkit-mask-image: var(--icon-url, none);
          mask-image: var(--icon-url, none);
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center;
          mask-position: center;
  -webkit-mask-size: var(--icon-size, contain);
          mask-size: var(--icon-size, contain);
  --icon-color: #e81827;
  --wrap-size: 0.875rem;
  --icon-url: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg id='_ãƒ‡ã‚¶ã‚¤ãƒ³' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cdefs%3E%3Cstyle%3E.cls-1%7Bfill:%23e81827;%7D%3C/style%3E%3C/defs%3E%3Cpath class='cls-1' d='M11.47,8.43c-.42.03-.84.08-1.26.15-.36-.28-.71-.58-1.04-.89-.33-.33-.62-.65-.88-.95.28-.71.47-1.45.57-2.21,0-1.44-.52-1.73-1.3-1.73-.59,0-1.3.31-1.3,1.77.1.87.47,1.69,1.06,2.34-.17.52-.37,1.13-.6,1.81-.11.33-.23.63-.35.91-.1.05-.2.09-.3.14-.34.17-.67.33-.98.47-1.38.66-2.3,1.09-2.3,1.94,0,.62.67,1.01,1.3,1.01.81,0,2.02-1.08,2.91-2.89.97-.36,1.96-.62,2.97-.8.55.5,1.2.88,1.91,1.09,1.07,0,1.3-.62,1.3-1.14,0-1.02-1.17-1.02-1.73-1.02ZM4.1,12.33c-.16,0-.31-.04-.43-.14,0-.31.92-.74,1.8-1.16.06-.03.11-.05.17-.08-.65.94-1.29,1.38-1.54,1.38ZM7.13,4.57c0-.91.28-.91.43-.91.31,0,.43,0,.43.87-.07.46-.18.91-.34,1.35-.29-.38-.47-.84-.52-1.31ZM7.47,9.23c.03-.08.05-.15.08-.23.16-.48.31-.92.43-1.31.18.2.37.4.58.61.08.08.28.26.55.49-.53.12-1.1.26-1.65.43h0ZM11.93,9.74c-.26-.11-.5-.25-.73-.42.12-.01.21-.02.26-.02.64,0,.82.06.87.16,0,.19,0,.28-.4.28h0Z'/%3E%3Cpath class='cls-1' d='M14.86,1.14v13.71H1.14V1.14h13.71M14.86,0H1.14C.51,0,0,.51,0,1.14v13.71c0,.63.51,1.14,1.14,1.14h13.71c.63,0,1.14-.51,1.14-1.14V1.14c0-.63-.51-1.14-1.14-1.14h0Z'/%3E%3C/svg%3E");
}
@media (hover: hover) {
  .c-text-link {
    transition: 0.3s linear opacity;
  }
  .c-text-link:hover {
    opacity: 0.7;
  }
}

.c-text {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 1rem;
  font-weight: 500;
  line-height: 1.75;
}
.c-text.--sm {
  font-size: 0.9375rem;
  line-height: 1.8666666667;
}

.c-input {
  width: 100%;
}
.c-input__label {
  font-size: 1rem;
  font-weight: bold;
}
.c-input__optional {
  display: inline-flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  padding: 0.1875rem 0.125rem;
  margin-left: 0.375rem;
  font-size: 0.75rem;
  line-height: 2.3333333333;
  line-height: 1;
  background-color: #fff;
  border: 0.0625rem solid rgba(239, 20, 109, 0.5);
  border-radius: 0.0625rem;
}
.c-input__optional.--required {
  color: #ef146d;
}
.c-input__support-text {
  font-size: 0.875rem;
}
.c-input__support-text:empty {
  display: none;
}
.c-input__support-text:not(:first-child) {
  margin-top: 0.25rem;
  margin-bottom: -0.375rem;
}
.c-input__error-text {
  font-size: 0.875rem;
  color: #ef0f3a;
}
.c-input__error-text:empty {
  display: none;
}
.c-input__error-text:not(:first-child) {
  margin-top: 0.25rem;
}
.c-input__input-container {
  width: 100%;
  min-height: 2.9375rem;
  padding: 0.5rem 1rem;
  font-size: 0.9375rem;
  font-weight: 500;
  background-color: #fff;
  border: 0.0625rem solid rgba(53, 53, 53, 0.5);
  border-radius: 0.25rem;
}
.c-input__input-container::-moz-placeholder {
  color: #999;
}
.c-input__input-container::placeholder {
  color: #999;
}
textarea.c-input__input-container {
  padding: 1rem;
}

.c-input__input-container.error {
  border-color: #ef0f3a;
}
.c-input__radio-wrap {
  display: flex;
  flex-direction: column;
}
.c-input__radio-wrap.--horizontal {
  flex-flow: row wrap;
  gap: 1rem 2.25rem;
}
.c-input__radio-wrap.--gap-hor-lg {
  gap: 1rem 5.625rem;
}
.c-input__radio {
  display: none;
}
.c-input__radio-container {
  position: relative;
  padding-left: 1.875rem;
  font-size: 0.9375rem;
  line-height: 1.8666666667;
}
.c-input__radio-container .com-icon {
  position: absolute;
  top: 0;
  left: 0;
  flex-shrink: 0;
  margin-top: 0.125rem;
  margin-right: 0.5rem;
  margin-left: 0.1875rem;
}
.c-input__checkbox {
  display: none;
}
.c-input__checkbox-container {
  position: relative;
  gap: 0;
  padding-left: 2rem;
  font-size: 0.9375rem;
  line-height: 1.8666666667;
}
.c-input__checkbox-container .com-icon {
  position: absolute;
  top: 0;
  top: 0.125rem;
  left: 0;
  left: 0.3125rem;
  flex-shrink: 0;
  margin-right: 0.625rem;
}
.c-input__privacy {
  width: calc(100% - 1.25rem);
  max-height: 19.625rem;
  padding: 0.8125rem 2.5rem 0.8125rem 1.125rem;
  margin-top: 0.4375rem;
  margin-right: 1.25rem;
  margin-bottom: 1.25rem;
  font-size: 0.875rem;
  line-height: 1.8571428571;
  background: #fff;
  border: 0.0625rem solid rgba(53, 53, 53, 0.5);
  border-radius: 0.25rem;
}
.c-input__privacy .simplebar-track.simplebar-vertical {
  top: 0.5rem;
  right: 0.5rem;
  bottom: 0.5rem;
  width: 0.8125rem;
  background-color: #ddd;
  border-radius: 0.375rem;
}
.c-input__privacy .simplebar-scrollbar.simplebar-visible::before {
  inset: 0;
  background-color: #a0a0a0;
  border-radius: 0.375rem;
  opacity: 1;
}

@media only screen and (max-width: 767px) {
  .c-input__privacy {
    width: 100%;
    padding-right: 1.5rem;
    margin-right: 0;
  }
  .c-input__privacy .simplebar-track.simplebar-vertical {
    width: 0.5rem;
  }
  .c-input__radio-wrap.--ver-sp {
    flex-direction: column;
    gap: 0.25rem;
  }
}
.c-mouse {
  --x: 0rem;
  --y: 0rem;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 1000;
  pointer-events: none;
  opacity: 0;
  transform: translateX(var(--x)) translateY(var(--y));
}
.c-mouse::before {
  position: absolute;
  top: 50%;
  left: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 7.625rem;
  aspect-ratio: 1/1;
  font-family: "Barlow Condensed", sans-serif;
  font-size: 1.375rem;
  font-weight: 500;
  color: #ffe600;
  text-align: center;
  content: "READ MORE";
  border: 0.0625rem solid #ffe600;
  border-radius: 50%;
  transition: opacity 0.1s cubic-bezier(0.215, 0.61, 0.355, 1);
  transform: translateX(-68.8524590164%) translateY(-86.0655737705%);
}
.c-mouse.is-active {
  opacity: 1;
  transition: opacity 0.6s cubic-bezier(0.215, 0.61, 0.355, 1), width 0.6s cubic-bezier(0.19, 1, 0.22, 1), transform 0s cubic-bezier(0.19, 1, 0.22, 1);
}

@media only screen and (max-width: 767px) {
  .c-mouse::before {
    width: 3.75rem;
    font-size: 0.625rem;
    transform: translateX(-50%) translateY(-50%);
  }
}
.c-swiper-page {
  --swiper-pagination-bullet-horizontal-gap: 0.375rem;
  --swiper-pagination-bullet-size: 3.375rem;
  --swiper-pagination-bullet-width: 3.375rem;
  --swiper-pagination-bullet-height: 0.1875rem;
  --swiper-pagination-bullet-inactive-opacity: 1;
  --swiper-pagination-bullet-inactive-color: #999;
  --swiper-pagination-bullet-opacity: 1;
  --swiper-pagination-color: #121212;
  font-size: 0;
  line-height: 0;
}
.c-swiper-page.--block {
  position: static;
  inset: unset;
  display: block;
}
.c-swiper-page .swiper-pagination-bullet {
  position: relative;
  border-radius: 0.25rem;
}
.c-swiper-page .swiper-pagination-bullet::before {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 100%;
  height: 1.25rem;
  content: "";
  transform: translate(-50%, -50%);
}
.c-swiper-page.--sm {
  --swiper-pagination-bullet-width: 2.375rem;
  --swiper-pagination-bullet-height: 0.125rem;
  --swiper-pagination-bullet-horizontal-gap: 0.25rem;
}
.c-swiper-page.--sm .swiper-pagination-bullet {
  border-radius: 0.0625rem;
}

@media only screen and (max-width: 767px) {
  .c-swiper-page {
    --swiper-pagination-bullet-size: 2.375rem;
    --swiper-pagination-bullet-width: 2.375rem;
    --swiper-pagination-bullet-height: 0.125rem;
    --swiper-pagination-bullet-horizontal-gap: 0.25rem;
  }
  .c-swiper-page.--sm {
    --swiper-pagination-bullet-width: 0.9375rem;
    --swiper-pagination-bullet-height: 0.0625rem;
    --swiper-pagination-bullet-horizontal-gap: 0.125rem;
  }
  .c-swiper-page .swiper-pagination-bullet::before {
    height: 0.625rem;
  }
}
.c-swiper-fraction {
  font-family: Barlow Condensed, sans-serif;
  font-size: 1.25rem;
  font-weight: bold;
  color: #121212;
}
.c-swiper-fraction__current {
  display: inline-block;
  min-width: 1.25rem;
  text-align: right;
}
.c-swiper-fraction__total {
  display: inline-block;
  min-width: 1.25rem;
}

.c-swiper-button {
  --swiper-navigation-size: 2.5rem;
  --swiper-navigation-color: #121212;
  --wrap-size: 2rem;
  --icon-size: contain;
  --icon-color: #000;
  display: inline-flex;
  width: var(--wrap-w, var(--wrap-size));
  height: var(--wrap-h, var(--wrap-size));
  background: var(--icon-color);
  -webkit-mask-image: var(--icon-url, none);
          mask-image: var(--icon-url, none);
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center;
          mask-position: center;
  -webkit-mask-size: var(--icon-size, contain);
          mask-size: var(--icon-size, contain);
  --wrap-size: 2.5rem;
}
.c-swiper-button::after {
  content: "";
}
.c-swiper-button.--next {
  --icon-url: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg id='Isolation_Mode' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 40'%3E%3Cdefs%3E%3Cstyle%3E.cls-1%7Bfill:%23121212;%7D%3C/style%3E%3C/defs%3E%3Cpolygon class='cls-1' points='10.86 20 0 0 20 20 0 40 10.86 20'/%3E%3C/svg%3E");
}
.c-swiper-button.--prev {
  --icon-url: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg id='Isolation_Mode' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 40'%3E%3Cdefs%3E%3Cstyle%3E.cls-1%7Bfill:%23121212;%7D%3C/style%3E%3C/defs%3E%3Cpolygon class='cls-1' points='9.14 20 20 40 0 20 20 0 9.14 20'/%3E%3C/svg%3E");
}
.c-swiper-button.--block {
  position: static;
  inset: unset;
  margin-top: 0;
}

@media only screen and (max-width: 767px) {
  .c-swiper-button {
    --wrap-size: 1.8125rem;
  }
}
.c-swiper-button-01 {
  display: flex;
  align-items: center;
  justify-content: center;
  min-width: 4.125rem;
  min-height: 4.125rem;
  font-size: 0;
  background-color: #fff;
  border: 0.0625rem solid rgba(34, 34, 34, 0.5);
  border-radius: 50%;
}
.c-swiper-button-01::before {
  content: "";
  --wrap-size: 2rem;
  --icon-size: contain;
  --icon-color: #000;
  display: inline-flex;
  width: var(--wrap-w, var(--wrap-size));
  height: var(--wrap-h, var(--wrap-size));
  background: var(--icon-color);
  -webkit-mask-image: var(--icon-url, none);
          mask-image: var(--icon-url, none);
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center;
          mask-position: center;
  -webkit-mask-size: var(--icon-size, contain);
          mask-size: var(--icon-size, contain);
  --icon-color: #121212;
  --icon-url: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg id='Isolation_Mode' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 40'%3E%3Cdefs%3E%3Cstyle%3E.cls-1%7Bfill:%23121212;%7D%3C/style%3E%3C/defs%3E%3Cpolygon class='cls-1' points='9.14 20 20 40 0 20 20 0 9.14 20'/%3E%3C/svg%3E");
  --wrap-size: 1.25rem;
}
.c-swiper-button-01::after {
  content: none;
}
.c-swiper-button-01.--next::before {
  --icon-url: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg id='Isolation_Mode' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 40'%3E%3Cdefs%3E%3Cstyle%3E.cls-1%7Bfill:%23121212;%7D%3C/style%3E%3C/defs%3E%3Cpolygon class='cls-1' points='10.86 20 0 0 20 20 0 40 10.86 20'/%3E%3C/svg%3E");
}
@media (hover: hover) {
  .c-swiper-button-01 {
    transition: background-color 0.3s;
  }
  .c-swiper-button-01:hover {
    background-color: #666;
    border-color: #666;
  }
  .c-swiper-button-01:hover::before {
    --icon-color: #fff;
  }
}

@media only screen and (max-width: 767px) {
  .c-swiper-button-01 {
    min-width: 3.75rem;
    min-height: 3.75rem;
  }
  .c-swiper-button-01::before {
    --wrap-size: 1.125rem;
  }
}
.c-swiper-button-02 {
  --swiper-navigation-size: 1.375rem;
  --swiper-navigation-color: #fff;
  top: 0;
  bottom: 0;
  width: var(--swiper-navigation-size);
  height: 100%;
  background: rgba(18, 18, 18, 0.5);
}
.c-swiper-button-02::after {
  content: "";
  --wrap-size: 2rem;
  --icon-size: contain;
  --icon-color: #000;
  display: inline-flex;
  width: var(--wrap-w, var(--wrap-size));
  height: var(--wrap-h, var(--wrap-size));
  background: var(--icon-color);
  -webkit-mask-image: var(--icon-url, none);
          mask-image: var(--icon-url, none);
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center;
          mask-position: center;
  -webkit-mask-size: var(--icon-size, contain);
          mask-size: var(--icon-size, contain);
  --icon-url: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg id='Isolation_Mode' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 40'%3E%3Cdefs%3E%3Cstyle%3E.cls-1%7Bfill:%23121212;%7D%3C/style%3E%3C/defs%3E%3Cpolygon class='cls-1' points='10.86 20 0 0 20 20 0 40 10.86 20'/%3E%3C/svg%3E");
  --icon-color: #fff;
  --wrap-size: 0.875rem;
}
.c-swiper-button-02.--prev::after {
  --icon-url: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg id='Isolation_Mode' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 40'%3E%3Cdefs%3E%3Cstyle%3E.cls-1%7Bfill:%23121212;%7D%3C/style%3E%3C/defs%3E%3Cpolygon class='cls-1' points='9.14 20 20 40 0 20 20 0 9.14 20'/%3E%3C/svg%3E");
}
.c-swiper-button-02.--block {
  position: static;
  inset: unset;
  margin-top: 0;
}
.c-swiper-button-02.--prev {
  left: 0;
}
.c-swiper-button-02.--next {
  right: 0;
}

@media only screen and (max-width: 767px) {
  .c-swiper-button-02 {
    --swiper-navigation-size: 1rem;
  }
  .c-swiper-button-02::after {
    --wrap-size: 0.4375rem;
  }
}
.c-swiper-button-03 {
  --swiper-navigation-size: 2.625rem;
  --swiper-navigation-color: #121212;
  background: rgba(224, 224, 224, 0.2);
  border: 0.0625rem solid rgba(204, 204, 204, 0.7);
  border-radius: 50%;
  --wrap-size: 2rem;
  --icon-size: 100%;
  --icon-url: "";
  --icon-color: #121212;
  position: relative;
  display: inline-block;
  width: var(--wrap-w, var(--wrap-size));
  height: var(--wrap-h, var(--wrap-size));
  --icon-url: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg id='_ãƒ‡ã‚¶ã‚¤ãƒ³' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 6.61 6.18'%3E%3Cdefs%3E%3Cstyle%3E.cls-1%7Bfill:none;stroke:%2323201c;stroke-linecap:round;stroke-miterlimit:10;stroke-width:.92px;%7D%3C/style%3E%3C/defs%3E%3Cpolyline class='cls-1' points='3.32 .46 5.96 3.09 3.32 5.73'/%3E%3Cline class='cls-1' x1='5.44' y1='3.09' x2='.46' y2='3.09'/%3E%3C/svg%3E");
  --icon-color: #333;
  --wrap-size: 2.625rem;
  --icon-size: 0.5625rem;
}
.c-swiper-button-03::after {
  content: "";
}
.c-swiper-button-03::before {
  position: absolute;
  top: 50%;
  left: 50%;
  z-index: 1;
  width: var(--icon-w, var(--icon-size));
  height: var(--icon-h, var(--icon-size));
  content: "";
  background: var(--icon-color);
  -webkit-mask-image: var(--icon-url);
          mask-image: var(--icon-url);
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center;
          mask-position: center;
  -webkit-mask-size: contain;
          mask-size: contain;
  transform: translate(-50%, -50%);
}
.c-swiper-button-03.--prev {
  --icon-url: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg id='Isolation_Mode' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 10.22 9.63'%3E%3Cdefs%3E%3Cstyle%3E.cls-1%7Bfill:none;stroke:%23333;stroke-linecap:round;stroke-miterlimit:10;stroke-width:1.04px;%7D%3C/style%3E%3C/defs%3E%3Cpolyline class='cls-1' points='5.03 9.11 .73 4.81 5.03 .52'/%3E%3Cline class='cls-1' x1='1.58' y1='4.81' x2='9.7' y2='4.81'/%3E%3C/svg%3E");
}

@media only screen and (max-width: 767px) {
  .c-swiper-button-03 {
    --icon-size: 0.625rem;
  }
}
/* project */
.p-anchor-list {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem 5.2%;
  align-items: center;
  justify-content: center;
  padding-bottom: 1.875rem;
  border-bottom: 0.0625rem solid rgba(34, 34, 34, 0.25);
}
.p-anchor-list__link {
  display: flex;
  gap: 0.625rem;
  align-items: center;
}
.p-anchor-list__link .com-icon {
  --wrap-size: 1.375rem;
  flex-shrink: 0;
}

@media only screen and (max-width: 767px) {
  .p-anchor-list {
    gap: 1rem;
  }
  .p-anchor-list__link {
    font-size: 0.875rem;
  }
  .p-anchor-list__link .com-icon {
    --wrap-size: 1.0625rem;
  }
}
.p-breadline {
  margin-top: 0.875rem;
  margin-bottom: 4.25rem;
}
.p-breadline__list {
  display: flex;
  align-items: center;
}
.p-breadline__item {
  display: flex;
  align-items: center;
}
.p-breadline__item a {
  display: inline-block;
  padding-right: 0.125rem;
  padding-left: 0.125rem;
  font-family: "bahnschrift", sans-serif;
  font-size: 0.875rem;
  font-weight: bold;
  text-decoration: underline;
}
.p-breadline__item span {
  display: inline-block;
  font-size: 0.75rem;
  color: #666;
  max-width: 20em;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.p-breadline__divider {
  margin-right: 0.5rem;
  margin-left: 0.375rem;
  font-family: "bahnschrift", sans-serif;
  font-weight: 600;
  color: #121212;
}

@media only screen and (max-width: 767px) {
  .p-breadline__item a {
    font-size: 0.75rem;
  }
  .p-breadline__item span {
    font-size: 0.6875rem;
    max-width: 10em;
  }
}
.p-card-01__item {
  position: relative;
  z-index: 1;
  padding-bottom: 1.75rem;
  border-top: 0.0625rem solid rgba(18, 18, 18, 0.2);
  border-left: 0.0625rem solid rgba(18, 18, 18, 0.2);
  border-radius: 1.3125rem 0 0;
  box-shadow: 0 -0.625rem 0.3125rem rgba(0, 0, 0, 0.08);
}
.p-card-01__item + .p-card-01__item {
  margin-top: -1.75rem;
}
.p-card-01__item::before, .p-card-01__item::after {
  position: absolute;
  z-index: -1;
  content: "";
  border-radius: inherit;
}
.p-card-01__item::before {
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #fff;
}
.p-card-01__item:last-child {
  min-height: 14.375rem;
  padding-bottom: 3.4375rem;
}
.p-card-01__item:last-child::after {
  bottom: 0;
  left: -0.0625rem;
  width: 0.125rem;
  min-height: 10.375rem;
  background: linear-gradient(0deg, #fff, transparent);
}
.p-card-01__item.is-active .p-card-01__head {
  color: #121212;
}
.p-card-01__head {
  display: flex;
  gap: 0.3125rem;
  align-items: center;
  padding-top: 1.75rem;
  padding-bottom: 1.75rem;
  padding-left: 2.25rem;
  color: #121212;
  transition: color 0.3s;
}
.p-card-01__head-txt {
  font-family: "Barlow Condensed", sans-serif;
  font-size: 0.75rem;
  font-weight: 400;
  letter-spacing: 0.06em;
  writing-mode: sideways-rl;
}
.p-card-01__head-num {
  margin-top: -0.375rem;
  font-family: "Barlow Condensed", sans-serif;
  font-size: 3.125rem;
  font-weight: 500;
  line-height: 0.8;
}
.p-card-01__head-ttl {
  font-size: 2rem;
  font-weight: bold;
  margin-left: 0.625rem;
}
.p-card-01__body {
  padding-right: 2.5rem;
  padding-bottom: 3.625rem;
  padding-left: 2.5rem;
}
.p-card-01__title {
  font-size: 1.625rem;
  font-weight: bold;
  line-height: 1.29;
}
.p-card-01__button {
  display: flex;
  flex-wrap: wrap;
  gap: 0.875rem;
  margin-top: 2.5rem;
}
.p-card-01__button .c-button {
  min-width: 12.5rem;
  text-align: center;
}

@media only screen and (max-width: 767px) {
  .p-card-01__item {
    padding-bottom: 1.125rem;
    border-radius: 0.8125rem 0 0;
    box-shadow: 0 -0.3125rem 0.1875rem rgba(0, 0, 0, 0.08);
  }
  .p-card-01__item + .p-card-01__item {
    margin-top: -0.625rem;
  }
  .p-card-01__item:last-child {
    min-height: 18.375rem;
  }
  .p-card-01__item:last-child::before {
    background: linear-gradient(to bottom, #fff calc(100% - 0.9375rem), transparent calc(100% - 0.9375rem));
  }
  .p-card-01__item:last-child::after {
    min-height: 5rem;
  }
  .p-card-01__head-txt {
    font-size: 0.59375rem;
  }
  .p-card-01__head-num {
    font-size: 2.5rem;
  }
  .p-card-01__head-ttl {
    font-size: 1.3125rem;
  }
  .p-card-01__head {
    gap: 0;
    padding: 1.5rem 1.375rem 0.875rem;
  }
  .p-card-01__title {
    font-size: 1rem;
  }
  .p-card-01__body {
    padding-right: 1.25rem;
    padding-bottom: 1.5625rem;
    padding-left: 1.5625rem;
  }
  .p-card-01__button {
    margin-top: 1.6875rem;
  }
}
.p-card-02-wrap.--column-3 {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 2.5rem 1.5rem;
  max-width: 78rem;
  margin-right: auto;
  margin-left: auto;
}
.p-card-02-wrap.--column-3 .p-card-02 {
  width: 100%;
  max-width: 25rem;
  margin: 0 auto;
}
@media only screen and (max-width: 1280px) {
  .p-card-02-wrap.--column-3 {
    gap: 1.25rem;
  }
}
@media only screen and (max-width: 767px) {
  .p-card-02-wrap.--column-3 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.625rem;
  }
}

.p-card-02 {
  position: relative;
  display: block;
  padding: 0.9375rem 0.9375rem 2rem;
  background: #fff;
  border: 0.0625rem solid #999;
  border-radius: 0.375rem;
}
.p-card-02::after {
  position: absolute;
  right: 0;
  bottom: 0;
  width: 2.625rem;
  aspect-ratio: 1/1;
  content: "";
  background: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg id='_ãƒ‡ã‚¶ã‚¤ãƒ³' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 6.61 6.18'%3E%3Cdefs%3E%3Cstyle%3E.cls-1%7Bfill:none;stroke:%23fff;stroke-linecap:round;stroke-miterlimit:10;stroke-width:.92px;%7D%3C/style%3E%3C/defs%3E%3Cpolyline class='cls-1' points='3.32 .46 5.96 3.09 3.32 5.73'/%3E%3Cline class='cls-1' x1='5.44' y1='3.09' x2='.46' y2='3.09'/%3E%3C/svg%3E"), linear-gradient(to right bottom, transparent 50%, #999 50%);
  background-repeat: no-repeat, repeat;
  background-position: right 0.375rem bottom 0.5625rem, center;
  background-size: 0.625rem auto, 100% 100%;
}
.p-card-02__thumb {
  aspect-ratio: 368/329;
  overflow: hidden;
}
.p-card-02__thumb img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
}
.p-card-02__cont {
  margin-top: 1.1875rem;
}
.p-card-02__title {
  margin-left: 0.25rem;
  font-size: 1.125rem;
  font-weight: bold;
}
.p-card-02__tag {
  display: inline-block;
  padding: 0.1875rem 0.5rem 0.1875rem 0.625rem;
  margin-left: 0.375rem;
  clip-path: polygon(0.375rem 0, 100% 0, 100% 100%, 0.375rem 100%, 0 50%);
  font-size: 0.75rem;
  font-weight: 500;
  line-height: 1;
  color: #fff;
  background-color: #121212;
}
.p-card-02__address {
  font-size: 0.8125rem;
  font-weight: 500;
  color: #666;
}
.p-card-02__address::before {
  margin-right: 0.1875rem;
  margin-bottom: 0.125rem;
  margin-left: 0.25rem;
  vertical-align: middle;
  content: "";
  --wrap-size: 2rem;
  --icon-size: contain;
  --icon-color: #000;
  display: inline-flex;
  width: var(--wrap-w, var(--wrap-size));
  height: var(--wrap-h, var(--wrap-size));
  background: var(--icon-color);
  -webkit-mask-image: var(--icon-url, none);
          mask-image: var(--icon-url, none);
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center;
          mask-position: center;
  -webkit-mask-size: var(--icon-size, contain);
          mask-size: var(--icon-size, contain);
  --icon-url: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg id='Isolation_Mode' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 10 13.54'%3E%3Cdefs%3E%3Cstyle%3E.cls-1%7Bfill:%23666;%7D%3C/style%3E%3C/defs%3E%3Cpath class='cls-1' d='M5,0C2.24,0,0,2.24,0,5c0,.91.41,1.88.42,1.92.13.31.39.8.58,1.08l3.43,5.19c.14.21.35.33.57.33s.43-.12.57-.33l3.43-5.19c.19-.28.45-.77.58-1.08.02-.04.42-1.02.42-1.92,0-2.76-2.24-5-5-5ZM9.03,6.7c-.12.28-.36.73-.53.99l-3.43,5.19c-.07.1-.09.1-.16,0L1.49,7.68c-.17-.25-.41-.71-.53-.99,0-.01-.38-.91-.38-1.7C.59,2.57,2.57.59,5,.59s4.41,1.98,4.41,4.41c0,.79-.37,1.69-.38,1.7Z'/%3E%3Cpath class='cls-1' d='M5,2.35c-1.46,0-2.65,1.19-2.65,2.65s1.19,2.65,2.65,2.65,2.65-1.19,2.65-2.65c0-1.46-1.19-2.65-2.65-2.65ZM5,7.06c-1.13,0-2.06-.92-2.06-2.06s.92-2.06,2.06-2.06,2.06.92,2.06,2.06-.92,2.06-2.06,2.06Z'/%3E%3C/svg%3E");
  --icon-color: currentColor;
  --wrap-size: 0.875rem;
}
.p-card-02__para {
  display: flex;
  gap: 0.625rem;
  margin-top: 1.1875rem;
}
.p-card-02__para-item {
  flex-basis: 0;
  flex-grow: 1;
}
.p-card-02__para-item .label {
  display: block;
  font-size: 0.8125rem;
  font-weight: 500;
  color: #fff;
  text-align: center;
  background-color: #333;
  border-radius: 0.125rem;
}
.p-card-02__para-item .val {
  display: block;
  font-size: 1rem;
  font-weight: bold;
  text-align: center;
}
.p-card-02__para-item .val .num {
  font-family: "Barlow Condensed", sans-serif;
  font-size: 1.1875rem;
  font-weight: bold;
}
.p-card-02__para-item .val .unit01 {
  font-family: "Barlow Condensed", sans-serif;
  font-size: 1.1875rem;
  font-weight: bold;
}
@media (hover: hover) {
  .p-card-02 {
    transition: filter 0.3s, opacity 0.3s;
  }
  .p-card-02:hover {
    filter: grayscale(0%) !important;
    opacity: 0.7 !important;
  }
}

@media only screen and (max-width: 767px) {
  .p-card-02 {
    padding: 0.625rem;
    padding-bottom: 1.125rem;
    border-radius: 0.25rem;
  }
  .p-card-02::after {
    width: 1.875rem;
    background-position: right 0.25rem bottom 0.375rem, center;
    background-size: 0.5rem auto, 100% 100%;
  }
  .p-card-02__thumb {
    border-radius: 0.125rem;
  }
  .p-card-02__title {
    font-size: 0.9375rem;
  }
  .p-card-02__tag {
    padding: 0.125rem 0.4375rem;
    margin-top: -0.375rem;
    clip-path: polygon(0.25rem 0, 100% 0, 100% 100%, 0.25rem 100%, 0 50%);
    font-size: 0.5rem;
    vertical-align: middle;
  }
  .p-card-02__cont {
    margin-top: 0.625rem;
  }
  .p-card-02__address {
    margin-top: -0.125rem;
    font-size: 0.6875rem;
  }
  .p-card-02__address::before {
    --wrap-size: 0.75rem;
    margin-right: 0;
  }
  .p-card-02__para {
    gap: 0.4375rem;
    margin-top: 0.5rem;
  }
  .p-card-02__para-item .label {
    gap: 0.4375rem;
    font-size: 0.5625rem;
    border-radius: 0.125rem;
  }
  .p-card-02__para-item .val {
    font-size: 0.6875rem;
  }
  .p-card-02__para-item .val .unit01 {
    font-size: 0.8125rem;
  }
  .p-card-02__para-item .val .num {
    font-size: 0.8125rem;
  }
}
.p-card-03-wrap.--column-2 {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 2.5rem 1.5rem;
  max-width: 78rem;
  margin-right: auto;
  margin-left: auto;
}
.p-card-03-wrap.--column-2 .p-card-03 {
  margin-top: 0;
}
@media only screen and (max-width: 1280px) {
  .p-card-03-wrap.--column-2 {
    grid-template-columns: minmax(0, 1fr);
    gap: 1.25rem;
  }
}
@media only screen and (max-width: 767px) {
  .p-card-03-wrap.--column-2 {
    gap: 0.625rem;
    margin-right: -1.25rem;
  }
}

.p-card-03 {
  display: flex;
  gap: 0.25rem;
  padding: 1.25rem 0.9375rem 0.9375rem;
  background-color: #fff;
  border: 0.0625rem solid rgba(153, 153, 153, 0.5);
  border-radius: 0.375rem;
}
.p-card-03 + .p-card-03 {
  margin-top: 1.25rem;
}
.p-card-03__thumb {
  flex-shrink: 0;
  width: 42.3841059603%;
}
.p-card-03__thumb picture {
  display: block;
  aspect-ratio: 320/230;
}
.p-card-03__thumb img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
}
.p-card-03__img {
  position: relative;
  overflow: hidden;
  border-radius: 0.1875rem;
}
.p-card-03__img::before {
  position: absolute;
  top: 0.3125rem;
  left: 50%;
  min-width: 2.375rem;
  font-family: "Barlow Condensed";
  font-size: 0.625rem;
  font-weight: bold;
  color: #fff;
  text-align: center;
  transform: translateX(-50%);
}
.p-card-03__slide {
  padding-bottom: 1rem;
}
.p-card-03__slide .swiper {
  border-radius: 0.1875rem;
}
.p-card-03__slide .swiper-slide picture {
  display: block;
  aspect-ratio: 320/190;
}
.p-card-03__slide .swiper-slide img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
}
.p-card-03__slide .c-swiper-page {
  min-height: 0.1875rem;
  margin-top: 1.125rem;
}
.p-card-03__slide .c-swiper-button-02 {
  margin-top: 0;
  transition: opacity 0.3s;
}
.p-card-03__slide .c-swiper-button-02.swiper-button-disabled {
  opacity: 0 !important;
}
.p-card-03__cont {
  width: 48.4768211921%;
  margin-top: 0.75rem;
  margin-right: auto;
  margin-left: auto;
}
.p-card-03__head {
  font-size: 1.125rem;
  font-weight: bold;
}
.p-card-03__title {
  display: block;
}
.p-card-03__address {
  display: flex;
  flex-wrap: wrap;
  gap: 0.3125rem;
  align-items: center;
  margin-top: 0.125rem;
  font-size: 0.8125rem;
  color: #666;
}
.p-card-03__address::before {
  --wrap-size: 2rem;
  --icon-size: contain;
  --icon-color: #000;
  display: inline-flex;
  width: var(--wrap-w, var(--wrap-size));
  height: var(--wrap-h, var(--wrap-size));
  background: var(--icon-color);
  -webkit-mask-image: var(--icon-url, none);
          mask-image: var(--icon-url, none);
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center;
          mask-position: center;
  -webkit-mask-size: var(--icon-size, contain);
          mask-size: var(--icon-size, contain);
  --icon-url: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg id='Isolation_Mode' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 10 13.54'%3E%3Cdefs%3E%3Cstyle%3E.cls-1%7Bfill:%23666;%7D%3C/style%3E%3C/defs%3E%3Cpath class='cls-1' d='M5,0C2.24,0,0,2.24,0,5c0,.91.41,1.88.42,1.92.13.31.39.8.58,1.08l3.43,5.19c.14.21.35.33.57.33s.43-.12.57-.33l3.43-5.19c.19-.28.45-.77.58-1.08.02-.04.42-1.02.42-1.92,0-2.76-2.24-5-5-5ZM9.03,6.7c-.12.28-.36.73-.53.99l-3.43,5.19c-.07.1-.09.1-.16,0L1.49,7.68c-.17-.25-.41-.71-.53-.99,0-.01-.38-.91-.38-1.7C.59,2.57,2.57.59,5,.59s4.41,1.98,4.41,4.41c0,.79-.37,1.69-.38,1.7Z'/%3E%3Cpath class='cls-1' d='M5,2.35c-1.46,0-2.65,1.19-2.65,2.65s1.19,2.65,2.65,2.65,2.65-1.19,2.65-2.65c0-1.46-1.19-2.65-2.65-2.65ZM5,7.06c-1.13,0-2.06-.92-2.06-2.06s.92-2.06,2.06-2.06,2.06.92,2.06,2.06-.92,2.06-2.06,2.06Z'/%3E%3C/svg%3E");
  --icon-color: #666;
  --wrap-size: 0.875rem;
  content: "";
}
.p-card-03__text {
  margin-top: 1.6875rem;
  font-size: 0.8125rem;
  font-weight: bold;
  line-height: 1.66;
}
.p-card-03__date {
  display: block;
  margin-top: 0.8125rem;
  margin-bottom: -0.1875rem;
  font-family: "Barlow Condensed", sans-serif;
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1;
}
@media (hover: hover) {
  .p-card-03 {
    transition: filter 0.3s, opacity 0.3s;
  }
  .p-card-03:hover {
    filter: grayscale(0%) !important;
    opacity: 0.7 !important;
  }
}

@media only screen and (max-width: 767px) {
  .p-card-03 {
    padding: 1rem 1.25rem 0.1875rem 0.9375rem;
    border-right: 0;
    border-radius: 0.25rem 0 0 0.25rem;
  }
  .p-card-03 + .p-card-03 {
    margin-top: 0.625rem;
  }
  .p-card-03__thumb {
    width: 47.0219435737%;
  }
  .p-card-03__title {
    margin-right: 0.5rem;
    font-size: 0.9375rem;
    line-height: 1.1333333333;
  }
  .p-card-03__address {
    gap: 0;
    margin-top: 0.125rem;
    font-size: 0.6875rem;
  }
  .p-card-03__address::before {
    --wrap-size: 0.75rem;
    margin-top: 0.0625rem;
    margin-right: 0.1875rem;
  }
  .p-card-03__cont {
    flex-grow: 1;
    margin-top: -0.0625rem;
    margin-right: 0;
    margin-left: 3%;
  }
  .p-card-03__text {
    margin-top: 0.8125rem;
    font-size: 0.5625rem;
    line-height: 1.6666666667;
  }
  .p-card-03__date {
    margin-top: 0.5rem;
    margin-left: 0.125rem;
    font-size: 0.625rem;
  }
  .p-card-03__slide {
    padding-bottom: 1rem;
  }
  .p-card-03__slide .c-swiper-page {
    margin-top: 0.625rem;
  }
  .p-card-03__img {
    border-radius: 0.0625rem;
  }
  .p-card-03__img::before {
    min-width: 1.5625rem;
    min-height: 0.625rem;
    font-size: 0.375rem;
    border-radius: 0.125rem;
  }
  .p-card-03__img.--before::before {
    width: 1.5625rem;
    min-height: 0.625rem;
  }
}
.p-card-04 {
  display: flex;
  gap: 2.25rem;
  align-items: flex-start;
}
.p-card-04__thumb {
  flex-shrink: 0;
  width: 27.0454545455%;
  max-width: 14.875rem;
  overflow: hidden;
  border-radius: 0.3125rem;
}
.p-card-04__thumb img {
  width: 100%;
}
.p-card-04__cont {
  margin-top: 0.375rem;
}
.p-card-04__title {
  display: flex;
  margin-bottom: 0.5rem;
  font-size: 1.125rem;
  color: #1d95d8;
}
.p-card-04__title-no {
  display: inline-block;
  flex-shrink: 0;
  margin-right: 1.4375rem;
  margin-left: -0.125rem;
  font-family: "Syncopate", sans-serif;
  font-size: 1.375rem;
  font-weight: bold;
}
.p-card-04__text {
  font-size: 0.9375rem;
  line-height: 1.6;
}

@media only screen and (max-width: 767px) {
  .p-card-04 {
    flex-wrap: wrap;
    gap: 1.25rem;
  }
  .p-card-04__thumb {
    width: 100%;
    max-width: unset;
  }
  .p-card-04__cont {
    margin-top: 0;
  }
  .p-card-04__title-no {
    flex-shrink: 0;
    margin-right: 0.75rem;
  }
}
.p-card-05 {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(19.375rem, 1fr));
  gap: 2.0625rem 1.8125rem;
}
.p-card-05__item {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
  min-height: 9.0625rem;
  padding: 1.125rem 2.375rem 1.625rem 1.25rem;
  background: #f2f2f2;
  border: 0.0625rem solid rgba(153, 153, 153, 0.5);
  border-radius: 0.25rem;
  transition: color 0.3s, background-color 0.3s;
}
@media only screen and (max-width: 767px) {
  .p-card-05__item {
    padding: 1.125rem 1.25rem 1.625rem;
  }
}
@media (hover: hover) {
  .p-card-05__item {
    cursor: pointer;
  }
}
.p-card-05__item.is-open {
  color: #fff;
  background: #2e2e2e;
}
.p-card-05__item.is-open .p-card-05__item-icon {
  background-color: #ffe600;
}
.p-card-05__item.is-open .p-card-05__item-icon::after {
  transform: rotate(0deg);
}
.p-card-05__item-title {
  font-size: 1.125rem;
  font-weight: bold;
}
.p-card-05__item-text {
  display: none;
  min-height: 4.125rem;
  margin-top: 0.375rem;
  font-size: 0.875rem;
  line-height: 1.5714285714;
}
.p-card-05__item-icon {
  position: absolute;
  right: 1.25rem;
  bottom: 1.375rem;
  width: 1.375rem;
  aspect-ratio: 1/1;
  background-color: #fff;
  border: 0.0625rem solid #23201c;
  border-radius: 50%;
}
.p-card-05__item-icon::before, .p-card-05__item-icon::after {
  position: absolute;
  top: 50%;
  right: 0;
  left: 0;
  width: 0.5rem;
  height: 0.0625rem;
  margin: auto;
  content: "";
  background-color: #23201c;
}
.p-card-05__item-icon::after {
  transition: transform 0.3s;
  transform: rotate(-90deg);
}

.p-card-box-01 {
  padding: 5.625rem 1.25rem 5rem 1.875rem;
  border-radius: 0.625rem;
  background: #121212 url("../images/common/bg-noise-01.png") repeat center/auto;
}
.p-card-box-01__inner {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  max-width: 63.125rem;
  margin-right: auto;
  margin-left: auto;
}
.p-card-box-01__img {
  order: 1;
  width: 43.5643564356%;
  overflow: hidden;
  border-radius: 0.375rem;
}
.p-card-box-01__img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
}
.p-card-box-01__cont {
  width: 49.702970297%;
  margin-top: -0.25rem;
}
.p-card-box-01__text {
  font-size: 0.9375rem;
  line-height: 1.8666666667;
  color: #fff;
}

@media only screen and (max-width: 767px) {
  .p-card-box-01 {
    padding: 2.5rem 1.25rem;
  }
  .p-card-box-01__inner {
    flex-direction: column-reverse;
  }
  .p-card-box-01__img {
    width: 100%;
  }
  .p-card-box-01__cont {
    width: 100%;
    margin-top: 2.5rem;
  }
  .p-card-box-01__text {
    font-size: 0.75rem;
  }
}
.p-contact {
  display: flex;
  gap: 0.625rem;
}
.p-contact__tel, .p-contact__inquiry {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  min-height: 4.375rem;
  color: #f9f9f9;
  text-align: center;
  background: #121212;
  border-radius: 0.3125rem;
}
@media (hover: hover) {
  .p-contact__tel, .p-contact__inquiry {
    transition: opacity 0.3s;
  }
  .p-contact__tel:hover, .p-contact__inquiry:hover {
    opacity: 0.7;
  }
}
.p-contact__tel {
  flex-direction: column;
  flex-shrink: 0;
  width: 52.2026431718%;
  padding: 0.625rem 0.5rem 0.5rem;
  padding-left: 1rem;
}
.p-contact__tel-text {
  position: relative;
  display: block;
  font-family: "Barlow Condensed", sans-serif;
  font-size: 1.75rem;
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0.02em;
}
.p-contact__tel-text .com-icon {
  --wrap-size: 1rem;
  --icon-color: #f9f9f9;
  margin-right: 0.5rem;
  margin-bottom: 0.125rem;
  margin-left: -0.5rem;
}
.p-contact__tel-time {
  display: block;
  padding-left: 0.5rem;
  margin-top: 0.125rem;
  font-size: 0.75rem;
  font-weight: bold;
}
.p-contact__tel-time em {
  font-family: "Barlow Condensed", sans-serif;
  font-size: 0.9375rem;
  font-style: normal;
  font-weight: 500;
}
.p-contact__tel-time .note {
  font-size: 0.75rem;
}
.p-contact__inquiry {
  flex-grow: 1;
  padding: 0.75rem 0.5rem 0.5rem;
}
.p-contact__inquiry-text {
  font-size: 1.1875rem;
  font-weight: bold;
}
.p-contact__inquiry-text .com-icon {
  --wrap-size: 0.9375rem;
  --icon-color: currentcolor;
  margin-right: 0.5rem;
  margin-left: -0.25rem;
}
.p-contact__inquiry-time {
  padding-left: 0.25rem;
  font-size: 0.75rem;
  font-weight: bold;
}
.p-contact__inquiry-time em {
  margin-right: 0.1875rem;
  font-family: "Barlow Condensed", sans-serif;
  font-size: 0.9375rem;
  font-style: normal;
}
.p-contact__inquiry-time .dot {
  font-size: 0.75rem;
}

@media only screen and (max-width: 767px) {
  .p-contact {
    gap: 0.5rem;
  }
  .p-contact__tel {
    padding-top: 0.875rem;
  }
  .p-contact__tel-text {
    padding-right: 0.875rem;
    font-size: 1.420625rem;
  }
  .p-contact__tel-text .com-icon {
    margin-right: 0.25rem;
    margin-left: 0;
  }
  .p-contact__inquiry-text {
    font-size: 0.96875rem;
  }
  .p-contact__inquiry-text .com-icon {
    margin-right: 0.5rem;
    margin-left: -0.0625rem;
    --wrap-size: 0.8125rem;
  }
  .p-contact__inquiry-time {
    margin-top: 0.3125rem;
    font-size: 0.5625rem;
  }
  .p-contact__inquiry-time em {
    margin-right: 0.125rem;
    font-size: 0.6875rem;
  }
  .p-contact__inquiry-time .dot {
    font-size: 0.5625rem;
  }
  .p-contact__tel-time {
    margin-top: 0.375rem;
    font-size: 0.5625rem;
  }
  .p-contact__tel-time em {
    font-size: 0.6875rem;
  }
  .p-contact__tel-time .note {
    font-size: 0.5625rem;
  }
  .p-contact__inquiry {
    padding-top: 0.9375rem;
  }
}
.p-flex-free {
  display: inline-flex;
  flex-wrap: wrap;
  gap: 0 calc(var(--gap) / 16 * 1em);
  align-items: center;
}
.p-flex-free > * {
  flex-shrink: 0;
}

.p-flow-01 {
  --center: 0.5rem;
  --color: #3399cc;
  position: relative;
  padding-bottom: 3rem;
}
.p-flow-01::before {
  position: absolute;
  top: 0.4375rem;
  bottom: 0.3125rem;
  left: var(--center);
  width: 0.1875rem;
  content: "";
  background-color: var(--color);
  transform: translateX(-50%);
}
.p-flow-01::after {
  position: absolute;
  bottom: 0;
  left: var(--center);
  content: "";
  transform: translateX(-50%);
  --wrap-size: 2rem;
  --icon-size: contain;
  --icon-color: #000;
  display: inline-flex;
  width: var(--wrap-w, var(--wrap-size));
  height: var(--wrap-h, var(--wrap-size));
  background: var(--icon-color);
  -webkit-mask-image: var(--icon-url, none);
          mask-image: var(--icon-url, none);
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center;
          mask-position: center;
  -webkit-mask-size: var(--icon-size, contain);
          mask-size: var(--icon-size, contain);
  --icon-url: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg id='_ãƒ‡ã‚¶ã‚¤ãƒ³' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12.34 13.81'%3E%3Cdefs%3E%3Cstyle%3E.cls-1%7Bfill:%2339c;%7D%3C/style%3E%3C/defs%3E%3Cpolygon class='cls-1' points='6.17 13.81 0 0 6.17 4.85 12.34 0 6.17 13.81'/%3E%3C/svg%3E");
  --wrap-size: 0.875rem;
  --icon-color: var(--color);
}
.p-flow-01__title {
  position: relative;
  padding-left: 1.75rem;
  margin-bottom: 1.4375rem;
  font-size: 1.125rem;
  color: var(--color);
}
.p-flow-01__title::before {
  position: absolute;
  top: 0.8125rem;
  left: var(--center);
  width: 1rem;
  aspect-ratio: 1/1;
  content: "";
  background-color: var(--color);
  transform: translate(-50%, -50%);
}
.p-flow-01__title:not(:first-child) {
  margin-top: 1.125rem;
  margin-bottom: 2rem;
}
.p-flow-01__item {
  --space: 2.5rem;
  display: flex;
  gap: 1.25rem;
  align-items: flex-start;
  min-height: 2.625rem;
  padding-left: var(--space);
  --space: 3.5rem;
}
.p-flow-01__item + .p-flow-01__item {
  margin-top: 0.9375rem;
}
.p-flow-01__item-head {
  position: relative;
  display: flex;
  flex-shrink: 0;
  gap: 0.875rem;
  align-items: center;
  width: 13.3125rem;
  min-height: 1.75rem;
  font-size: 0.875rem;
  background-color: #fff;
  border: 0.0625rem solid #121212;
  border-radius: 2.5rem;
}
.p-flow-01__item-head::before, .p-flow-01__item-head::after {
  position: absolute;
  top: 50%;
  left: calc(var(--space) * -1 + var(--center));
  content: "";
}
.p-flow-01__item-head::before {
  top: 50%;
  z-index: 1;
  width: 0.875rem;
  aspect-ratio: 1/1;
  background: #fff;
  background-color: #fff;
  border: 0.0625rem solid #39c;
  border-radius: 50%;
  transform: translateX(-50%);
  transform: translate(-50%, -50%);
}
.p-flow-01__item-head::after {
  width: calc(var(--space) - var(--center));
  height: 0.0625rem;
  background: repeating-linear-gradient(to right, #39c 0, #39c 0.25rem, transparent 0.25rem, transparent 0.5rem);
  border-bottom: none;
}
.p-flow-01__item-head.--no-dash::after {
  display: none;
}
.p-flow-01__item-head-num {
  display: flex;
  flex-shrink: 0;
  align-items: center;
  align-self: stretch;
  width: 2.5rem;
  padding: 0.25rem 0 0 0.5rem;
  font-family: "Syncopate", sans-serif;
  font-size: 0.8125rem;
  font-weight: bold;
  color: #fff;
  letter-spacing: 0.12em;
  background: #121212;
  border-radius: 2.4375rem 0 0 2.4375rem;
  box-shadow: 0 0 0 0.0625rem #121212;
}
.p-flow-01__item-text {
  font-size: 0.875rem;
}
.p-flow-01__item-cont {
  margin-top: 0.125rem;
}
.p-flow-01.--no-title {
  padding-top: 1.375rem;
  padding-bottom: 1.625rem;
}
.p-flow-01.--no-title::before {
  top: 0;
}

@media only screen and (max-width: 767px) {
  .p-flow-01 {
    padding-bottom: 1.25rem;
  }
  .p-flow-01__item {
    flex-direction: column;
    gap: 0.25rem;
    min-height: 3.25rem;
  }
  .p-flow-01__item + .p-flow-01__item {
    margin-top: 1.625rem;
  }
  .p-flow-01__item-cont {
    margin-top: 0.125rem;
    margin-left: 0.3125rem;
  }
  .p-flow-01__title:not(:first-child) {
    margin-top: 1.25rem;
    margin-bottom: 2.5rem;
  }
}
.p-form__table {
  padding: 3.4375rem 3.125rem 2.5rem;
  background: #f4f4f4;
  border-radius: 0.375rem;
}
.p-form__table-tr {
  border-bottom: 0.0625rem solid rgba(45, 45, 45, 0.25);
}
.p-form__table-tr:last-child {
  border-bottom: none;
}
.p-form__table-th {
  padding: 2.5rem 1.5625rem 3rem;
}
.p-form__table-td {
  padding: 2.625rem 1.875rem 2.1875rem;
  font-size: 0.9375rem;
}
.p-form__table-el {
  width: 100%;
  max-width: 100%;
  border-collapse: collapse;
}
.p-form__table-el.--fixed {
  table-layout: fixed;
}
.p-form__table-el.--vertical {
  display: block;
  width: 100%;
}
.p-form__table-el.--vertical thead,
.p-form__table-el.--vertical tbody,
.p-form__table-el.--vertical tr,
.p-form__table-el.--vertical th,
.p-form__table-el.--vertical td {
  display: block;
  width: 100%;
}
.p-form__table-el.--vertical th {
  margin-bottom: 0.875rem;
}
.p-form__table-el.--vertical tr:not(:first-child) {
  margin-top: 2.375rem;
}
.p-form__buttons {
  margin-top: 4.25rem;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
}
.p-form__buttons.--vertical {
  flex-direction: column;
  gap: 1rem;
  align-items: center;
}
.p-form.--confirm .p-form__table {
  padding-top: 3.75rem;
  padding-right: 4.5rem;
  padding-bottom: 3.625rem;
}
.p-form.--confirm .p-form__table-tr {
  height: 5.75rem;
}
.p-form.--confirm .p-form__table-th {
  padding: 0.5rem 1.5625rem;
  vertical-align: middle;
}
.p-form.--confirm .p-form__table-td {
  padding: 0.5rem 1.875rem;
  line-height: 1.7333333333;
  vertical-align: middle;
}

@media only screen and (max-width: 767px) {
  .p-form__table {
    padding: 1.875rem 1.25rem;
  }
  .p-form__table-el.--vertical-sp {
    display: block;
    width: 100%;
  }
  .p-form__table-el.--vertical-sp thead,
  .p-form__table-el.--vertical-sp tbody,
  .p-form__table-el.--vertical-sp tr,
  .p-form__table-el.--vertical-sp th,
  .p-form__table-el.--vertical-sp td {
    display: block;
    width: 100%;
  }
  .p-form__table-el.--vertical-sp .p-form__table-tr {
    padding-bottom: 1.25rem;
  }
  .p-form__table-el.--vertical-sp .p-form__table-tr:not(:first-child) {
    margin-top: 1.25rem;
  }
  .p-form__table-el.--vertical-sp .p-form__table-td {
    padding: 0;
  }
  .p-form__table-el.--vertical-sp .p-form__table-th {
    padding: 0;
    margin-bottom: 0.625rem;
  }
  .p-form.--confirm .p-form__table {
    padding: 1.875rem 1.25rem;
  }
  .p-form.--confirm .p-form__table-tr {
    height: auto;
  }
}
.p-box {
  padding: 2.125rem 2.9375rem 2.5rem;
  background-color: #f4f4f4;
  border-radius: 0.375rem;
}
.p-box__title {
  font-size: 1.25rem;
  font-weight: bold;
}
.p-box__cont {
  margin-top: 0.625rem;
}
.p-box__dl-01-row {
  display: flex;
  flex-wrap: wrap;
  gap: 0rem 2.8125rem;
  align-items: baseline;
}
.p-box__dl-01-row > * {
  flex-shrink: 0;
  max-width: 100%;
}
.p-box__dl-01-dt {
  flex-shrink: 0;
  font-size: 1.125rem;
  letter-spacing: 0.04em;
}
@media only screen and (max-width: 767px) {
  .p-box {
    padding: 1.875rem 1.25rem;
  }
}

.p-grid {
  display: grid;
  grid-template-columns: repeat(1, 1fr);
  gap: 1rem;
}
.p-grid.--repeat-2 {
  grid-template-columns: repeat(2, 1fr);
}
.p-grid.--repeat-3 {
  grid-template-columns: repeat(3, 1fr);
}
.p-grid__texts {
  margin-top: 1rem;
}
.p-grid__col {
  /* CMSエディタ―のみで適応 */
  /* border: dashed pxtorem(1) #c2c2c2; */
}

.p-table {
  width: 100%;
}
.p-table__th {
  padding: 1.5625rem 1.125rem;
  font-size: 0.9375rem;
  font-weight: bold;
  line-height: 1.6;
  color: #121212;
  text-align: center;
  vertical-align: middle;
  background-color: #f4f4f4;
  border: 0.0625rem solid rgba(34, 34, 34, 0.25);
}
.p-table__td {
  padding: 1.5625rem 1.125rem;
  font-size: 0.9375rem;
  font-weight: 500;
  line-height: 1.6;
  background: #fff;
  border: 0.0625rem solid rgba(34, 34, 34, 0.25);
}

@media only screen and (max-width: 767px) and (max-width: 767px) {
  .p-table__th {
    padding: 0.5rem 0.75rem;
  }
}
@media only screen and (max-width: 767px) and (max-width: 767px) {
  .p-table__td {
    padding: 0.5rem 0.75rem;
  }
}
@media only screen and (max-width: 767px) {
  .p-table.--vertical-sp {
    display: block;
    width: 100%;
    border-top: 0.0625rem solid rgba(34, 34, 34, 0.25);
  }
  .p-table.--vertical-sp thead,
  .p-table.--vertical-sp tbody,
  .p-table.--vertical-sp tr,
  .p-table.--vertical-sp th,
  .p-table.--vertical-sp td {
    display: block;
    width: 100%;
  }
  .p-table.--vertical-sp th,
  .p-table.--vertical-sp td {
    border-top: none;
  }
}
.p-link-01 {
  position: relative;
  min-height: 16.6875rem;
  padding: 2.0625rem;
  overflow: hidden;
  border: 0.0625rem solid #121212;
  border-radius: 1.5rem 0 0;
}
.p-link-01::before {
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  width: 100%;
  height: 100%;
  content: "";
  background: url("../images/common/bg-grey-noise-01.jpg") repeat left center/cover;
  border-radius: 1.4375rem 0 0;
  opacity: 0;
  transition: 0.5s all;
}
.p-link-01__thumb {
  position: absolute;
  inset: 0;
  z-index: -1;
  overflow: hidden;
  border-radius: 1.4375rem 0 0;
  opacity: 0;
  transition: opacity 0.5s;
}
.p-link-01__thumb img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
}
.p-link-01__heading {
  display: block;
  transition: color 0.3s;
}
.p-link-01__heading .jp {
  display: block;
  font-size: 2.25rem;
  font-weight: bold;
}
.p-link-01__heading .jp small {
  font-size: 1.625rem;
}
.p-link-01__heading .en {
  display: block;
  font-family: "Barlow Condensed", sans-serif;
  font-size: 1rem;
  font-weight: bold;
}
.p-link-01.--show-image::before {
  opacity: 1;
}
.p-link-01.--show-image .p-link-01__thumb {
  opacity: 1;
}
.p-link-01.--show-image .p-link-01__thumb img {
  transition: transform 0.5s;
}
@media (hover: hover) {
  .p-link-01:hover {
    border-color: #fff;
  }
  .p-link-01:hover::before {
    opacity: 1;
  }
  .p-link-01:hover .p-link-01__thumb {
    opacity: 1;
  }
  .p-link-01:hover .p-link-01__heading {
    color: #ffe600;
  }
  .p-link-01:hover.--show-image .p-link-01__thumb img {
    transform: scale(1.1);
  }
}

@media (hover: hover) {
  .p-link-01 .c-mouse {
    display: none;
  }
}
@media only screen and (max-width: 767px) {
  .p-link-01 {
    max-width: 100%;
    min-height: 7.1875rem;
    padding: 0.9375rem;
    border-radius: 0.625rem 0 0;
  }
  .p-link-01 .c-mouse {
    position: absolute;
    top: 0;
    left: 0;
  }
  .p-link-01::before {
    border-radius: 0.5625rem 0 0;
  }
  .p-link-01__thumb {
    border-radius: 0.5625rem 0 0;
  }
  .p-link-01__heading .jp {
    font-size: 1.25rem;
  }
  .p-link-01__heading .jp small {
    font-size: 0.875rem;
  }
  .p-link-01__heading .en {
    font-size: 0.625rem;
  }
  .p-link-01.is-readmore::before {
    opacity: 1;
  }
  .p-link-01.is-readmore .p-link-01__heading {
    color: #ffe600;
  }
  .p-link-01.is-readmore .p-link-01__thumb {
    opacity: 1;
  }
  .p-link-01.is-readmore.--show-image .p-link-01__thumb img {
    transform: scale(1.1);
  }
}
.p-link-02 {
  padding: 3rem 1.875rem;
  padding-bottom: 4.0625rem;
  border: 0.0625rem solid #121212;
  border-radius: 1.5rem 0 0;
}
.p-link-02__head-jp {
  display: block;
  font-size: 2.25rem;
  font-weight: bold;
  line-height: 0.9444444444;
}
.p-link-02__head-en {
  display: block;
  margin-top: 0.625rem;
  font-family: "Barlow Condensed", sans-serif;
  font-size: 1rem;
  font-weight: bold;
}
.p-link-02__tel {
  display: flex;
  flex-direction: column;
  padding-left: 2.5rem;
}
.p-link-02__tel:not(:first-child) {
  margin-top: 3.1875rem;
}
.p-link-02__tel-num {
  position: relative;
  font-family: "Barlow Condensed", sans-serif;
  font-size: 2.375rem;
  line-height: 1;
  letter-spacing: 0.02em;
}
.p-link-02__tel-num::before {
  position: absolute;
  top: 50%;
  left: -2.125rem;
  content: "";
  transform: translateY(-50%);
  --wrap-size: 2rem;
  --icon-size: contain;
  --icon-color: #000;
  display: inline-flex;
  width: var(--wrap-w, var(--wrap-size));
  height: var(--wrap-h, var(--wrap-size));
  background: var(--icon-color);
  -webkit-mask-image: var(--icon-url, none);
          mask-image: var(--icon-url, none);
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center;
          mask-position: center;
  -webkit-mask-size: var(--icon-size, contain);
          mask-size: var(--icon-size, contain);
  --icon-url: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg id='Isolation_Mode' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 22.03'%3E%3Cdefs%3E%3Cstyle%3E.cls-1%7Bfill:%23121212;%7D%3C/style%3E%3C/defs%3E%3Cpath class='cls-1' d='M9.05,21.08c-.07-.78-.98-4.84-1.47-5.18-.23-.16-.54-.14-1.41-.07-.42.05-.84.07-1.26.05-.3-.5-.55-1.03-.72-1.58-.74-2.13-.74-4.45,0-6.58.18-.55.42-1.08.72-1.58.42-.02.84,0,1.26.05.87.08,1.18.09,1.41-.07.49-.34,1.4-4.4,1.47-5.18.03-.32.01-.58-.16-.75-.5-.5-5.56.03-5.93.4-.03.03-2.89,2.99-2.96,10.42.06,7.42,2.93,10.39,2.96,10.42.36.36,5.42.9,5.93.4.17-.17.19-.43.16-.75h0Z'/%3E%3Cpath class='cls-1' d='M10,13.93l.97.97c2.14-2.14,2.14-5.61,0-7.76l-.97.97c1.6,1.61,1.6,4.21,0,5.82Z'/%3E%3Cpath class='cls-1' d='M12.42,16.35l.97.97c3.48-3.48,3.48-9.12,0-12.61l-.97.97c2.94,2.95,2.94,7.72,0,10.67Z'/%3E%3C/svg%3E");
  --wrap-size: 1.375rem;
}
.p-link-02__tel-time {
  margin-top: 0.125rem;
  font-size: 0.8125rem;
  font-weight: bold;
}
.p-link-02__tel-time .num {
  font-family: "Barlow Condensed", sans-serif;
  font-size: 1rem;
  font-weight: 500;
}
.p-link-02__tel-time .text01 {
  font-size: 0.875rem;
}
.p-link-02__mail {
  margin-top: 2.5625rem;
}
.p-link-02__mail-time {
  display: block;
  margin-top: 0.375rem;
  margin-left: 0.6875rem;
  font-size: 0.8125rem;
  font-weight: bold;
}
.p-link-02__mail-time .num {
  margin-right: 0.1875rem;
  font-family: "Barlow Condensed", sans-serif;
  font-size: 1rem;
  font-weight: 500;
}
.p-link-02__mail-time .dot {
  font-size: 0.75rem;
}
.p-link-02.--box {
  display: flex;
  align-items: flex-start;
  justify-content: space-around;
  padding: 2rem 0.25rem 0.875rem 4.5%;
  background: #f4f4f4;
  border: none;
  border-radius: 0.25rem;
}
.p-link-02.--box .p-link-02__tel {
  min-width: 40%;
  margin-top: 0.6875rem;
}
.p-link-02.--box .p-link-02__mail {
  margin-top: 0;
}
.p-link-02.--init {
  padding: 0;
  border: none;
  border-radius: 0;
}

@media only screen and (max-width: 767px) {
  .p-link-02 {
    padding: 1rem 0.625rem 1.25rem 0.75rem;
    border-radius: 0.5rem 0 0;
  }
  .p-link-02__head-jp {
    font-size: 1.125rem;
  }
  .p-link-02__head-en {
    margin-top: 0.3125rem;
    font-size: 0.625rem;
  }
  .p-link-02__tel {
    padding-left: 1rem;
  }
  .p-link-02__tel:not(:first-child) {
    margin-top: 1.25rem;
  }
  .p-link-02__tel-num {
    font-size: 1.4375rem;
  }
  .p-link-02__tel-num::before {
    --wrap-size: 0.875rem;
    left: -1.125rem;
  }
  .p-link-02__tel-time {
    margin-top: 0;
    font-size: 0.4375rem;
  }
  .p-link-02__tel-time .num {
    font-size: 0.5625rem;
  }
  .p-link-02__mail {
    margin-top: 1.125rem;
  }
  .p-link-02__mail .c-button {
    min-height: unset;
    padding: 0;
    font-size: 0.875rem;
    background: none;
    border: none;
  }
  .p-link-02__mail .c-button.--mail-left::before {
    --wrap-size: 0.75rem;
    margin-right: 0.375rem;
    margin-left: -0.125rem;
  }
  .p-link-02__mail .c-button::after {
    position: static;
    margin-left: 0.3125rem;
    --wrap-size: 0.75rem;
    --icon-color: currentcolor;
    --icon-url: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg id='_ãƒ‡ã‚¶ã‚¤ãƒ³' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 6.61 6.18'%3E%3Cdefs%3E%3Cstyle%3E.cls-1%7Bfill:none;stroke:%23fff;stroke-linecap:round;stroke-miterlimit:10;stroke-width:.92px;%7D%3C/style%3E%3C/defs%3E%3Cpolyline class='cls-1' points='3.32 .46 5.96 3.09 3.32 5.73'/%3E%3Cline class='cls-1' x1='5.44' y1='3.09' x2='.46' y2='3.09'/%3E%3C/svg%3E");
    --icon-size: 0.1875rem;
  }
  .p-link-02__mail-time {
    margin-top: 0;
    margin-left: 0;
    font-size: 0.5rem;
  }
  .p-link-02__mail-time .dot {
    font-size: 0.4375rem;
  }
  .p-link-02__mail-time .num {
    margin-right: 0.0625rem;
    font-size: 0.625rem;
  }
  .p-link-02.--box {
    align-items: center;
    padding: 1.25rem 0.625rem;
  }
  .p-link-02.--box .p-link-02__tel {
    margin-top: 0;
  }
}
.p-magazine {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 3.75rem min(4.7909407666%, 3.4375rem);
}
.p-magazine__card {
  position: relative;
  padding: 1.5rem 1.125rem 0 1.625rem;
  border-top: 0.0625rem solid rgba(18, 18, 18, 0.17);
  border-left: 0.0625rem solid rgba(18, 18, 18, 0.17);
  border-radius: 0.875rem 0 0;
}
@media (hover: hover) {
  .p-magazine__card {
    transition: opacity 0.3s;
  }
  .p-magazine__card:hover {
    opacity: 0.7;
  }
}
.p-magazine__card.--pin {
  position: relative;
}
.p-magazine__card.--pin::before {
  position: absolute;
  top: -1.25rem;
  left: 0.9375rem;
  content: "";
  --wrap-size: 2rem;
  --icon-size: contain;
  --icon-color: #000;
  display: inline-flex;
  width: var(--wrap-w, var(--wrap-size));
  height: var(--wrap-h, var(--wrap-size));
  background-image: var(--icon-url, none);
  background-repeat: no-repeat;
  background-position: center;
  background-size: var(--icon-size, contain);
  --wrap-size: 2rem;
  --icon-url: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg id='_ãƒ‡ã‚¶ã‚¤ãƒ³' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 31.77 27'%3E%3Cdefs%3E%3Cstyle%3E.cls-1%7Bfill:%23cecece;%7D.cls-2%7Bfill:%2323201c;%7D.cls-3%7Bfill:%23fff;stroke:%23fff;stroke-linecap:round;stroke-linejoin:round;stroke-width:3px;%7D%3C/style%3E%3C/defs%3E%3Cpath class='cls-1' d='M31.67,21.77s0,0,.01,0c.05-.03.08-.06.08-.1.13-.85-.98-1.93-3.37-3.3-2.39-1.36-4.61-2.18-6.79-2.51,0,0-.01,0-.02,0-.16-.02-.32-.02-.44,0-1.62.37-2.62,1.11-2.26,2.11l-4.59,1.06c-.88-.35-1.92-.61-3-.75-1.67-.27-3.33-.27-4.61,0-1.03.24-1.02.84.04,1.79.65.54,1.38,1.07,2.19,1.58l-6.83,2.44c-.21.07-.18.23.07.35.2.09.5.14.72.11l9-1.2c1.93,1.01,4.07,1.93,5.79,2.18.62.1,1.23.09,1.69-.02,2.37-.55,2.31-2.02,1.4-2.81l4.6-1.06c.42.1.86.18,1.3.25,1.8.26,3.56.22,4.89-.09.05,0,.09-.02.12-.04Z'/%3E%3Cpath class='cls-3' d='M25.43,10.74s0-.01.01-.02c.03-.07.06-.14.06-.22,0-1.82-1.03-3.74-3.15-5.85-2.11-2.11-4.02-3.14-5.84-3.15,0,0,0,0-.01,0-.13,0-.26.05-.35.15-1.28,1.28-2,3.12-1.59,5.09l-3.62,3.62c-.76-.46-1.64-.69-2.53-.65-1.39-.05-2.75.47-3.75,1.43-.81.81-.73,2.07.25,3.73.59.93,1.26,1.8,1.98,2.63l-5.27,7.2c-.17.22-.12.53.1.7.18.13.42.13.6,0l7.19-5.27c1.69,1.51,3.55,2.78,4.98,2.78.52.01,1.01-.19,1.38-.55,1.87-1.87,1.64-4.93.8-6.3l3.62-3.62c.36.07.72.12,1.09.13,1.5-.02,2.93-.63,3.98-1.7.04-.03.07-.08.09-.12Z'/%3E%3Cpath class='cls-2' d='M16.5,1.66s-.04,0-.08.01c-.02,0-.03,0-.05.02-.04.02-.07.04-.1.07-1.05,1.02-1.65,2.44-1.66,3.89.02.34.06.69.13,1.03v.02s.02.06.02.06l-.05.05-3.68,3.68-.07.07-.08-.05-.03-.02c-.68-.41-1.45-.63-2.24-.63-.07,0-.14,0-.21,0h0s0,0,0,0c0,0-.13,0-.17,0-1.3,0-2.53.49-3.47,1.39-.75.75-.66,1.94.28,3.53.56.88,1.22,1.76,1.96,2.6l.02.03.06.07-.06.08-5.3,7.22c-.04.06-.07.13-.07.2,0,.19.15.34.34.34.07,0,.14-.02.2-.07l7.22-5.3.08-.06.07.06.03.02c2.04,1.82,3.68,2.74,4.88,2.74h.05c.45,0,.89-.18,1.21-.5,1.8-1.8,1.6-4.75.78-6.1l-.02-.03-.05-.08.07-.07,3.66-3.66.05-.05h.06s.02.02.02.02c.35.07.71.12,1.06.13,1.47-.02,2.84-.61,3.87-1.66.03-.03.05-.06.07-.11,0-.01,0-.03.02-.06h0s0-.05,0-.07c0-1.78-1.01-3.65-3.1-5.74-2.08-2.08-3.96-3.1-5.74-3.1ZM8.88,19.54l-4.69,3.44-.63.46.46-.63,3.44-4.69.08-.12.1.1.15.15c.15.16.31.32.47.48.18.18.38.37.6.58l.04.04.1.1-.12.08ZM15.27,21.76h0s0,0,0,0c-.2.2-.48.3-.81.3-1.21,0-3.29-1.39-5.71-3.8-1.18-1.14-2.23-2.42-3.12-3.8h0s0,0,0,0c-.75-1.28-.88-2.22-.38-2.72h0s0,0,0,0c.82-.77,1.89-1.19,3.01-1.19h.14c.06,0,.11,0,.17,0,.65,0,1.29.17,1.85.48l.03.02.08.05-.03.09v.03c-.16.51-.13,1.64,1.75,3.52,1.51,1.51,2.53,1.82,3.13,1.82h.04c.11,0,.22-.02.34-.05h.04s.1-.04.1-.04l.05.09.02.03c.86,1.71.58,3.74-.7,5.17ZM19.35,12.18l-3.59,3.59c-.08.08-.21.12-.38.12-.24,0-1.14-.12-2.65-1.62-.9-.9-1.29-1.57-1.46-1.98-.29-.69-.12-.96-.04-1.05l3.59-3.59.13-.13.07.17.02.06c.37.94.96,1.8,1.71,2.49h0s0,0,0,0c.68.75,1.53,1.34,2.48,1.71l.06.02.17.07-.13.13ZM24.02,10.88l-.08.05c-.79.52-1.68.79-2.58.79-1.43,0-2.81-.66-4.12-1.96-1.18-1.06-1.88-2.52-1.97-4.11h0s0,0,0,0c0-.92.28-1.82.79-2.6l.05-.08.14-.21.07.24.03.09c.45,1.49,1.62,3.36,2.9,4.64,1.28,1.28,3.15,2.45,4.63,2.9l.09.03.24.07-.21.14ZM24.63,9.97l.03.17-.17-.04h-.06c-1.2-.29-3.19-1.35-4.68-2.84-1.49-1.49-2.55-3.48-2.82-4.68v-.06s-.05-.17-.05-.17l.17.03h.06c1.41.22,2.98,1.18,4.66,2.86,1.68,1.68,2.64,3.25,2.85,4.66v.06Z'/%3E%3C/svg%3E");
}
.p-magazine__thumb {
  aspect-ratio: 300/240;
  overflow: hidden;
  border-radius: 0.1875rem;
}
.p-magazine__thumb img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
}
.p-magazine__title {
  font-size: 1.125rem;
  font-weight: bold;
}
.p-magazine__cat {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.5625rem;
  margin-top: 1.5rem;
}
.p-magazine__cat li {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 3.3125rem;
  min-height: 2rem;
  padding: 0.375rem;
  font-size: 0.6875rem;
  font-weight: bold;
  text-align: center;
  background-color: #f2f2f2;
  border: 0.0625rem solid rgba(153, 153, 153, 0.3);
  border-radius: 0.125rem;
}
.p-magazine__date {
  display: block;
  margin-top: 0.8125rem;
  margin-bottom: -0.1875rem;
  font-family: "Barlow Condensed", sans-serif;
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1;
}
.p-magazine__cont {
  margin-top: 1rem;
  margin-left: 0.1875rem;
  line-height: 1.6;
}

@media only screen and (max-width: 767px) {
  .p-magazine {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1.875rem 0.9375rem;
  }
  .p-magazine.--swiper-sp {
    display: flex;
    gap: 0;
  }
  .p-magazine__card {
    padding: 1rem 0.75rem 0 1rem;
    border-radius: 0.5rem 0 0;
  }
  .p-magazine__card.--pin::before {
    --wrap-size: 1.375rem;
    top: -0.5625rem;
    left: 0.375rem;
  }
  .p-magazine__thumb {
    border-radius: 0.125rem;
  }
  .p-magazine__title {
    font-size: 0.75rem;
    line-height: 1.5833333333;
  }
  .p-magazine__cont {
    margin-top: 0.5rem;
    margin-left: 0.0625rem;
  }
  .p-magazine__cat {
    gap: 0.25rem;
    margin-top: 0.875rem;
  }
  .p-magazine__cat li {
    min-width: 2.125rem;
    min-height: 1.25rem;
    padding: 0 0.3125rem;
    font-size: 0.4375rem;
  }
  .p-magazine__date {
    margin-top: 0.5rem;
    margin-left: 0.125rem;
    font-size: 0.625rem;
  }
}
.p-mainvisual {
  height: 100dvh;
  padding-top: calc(50dvh - 57px);
}
.p-mainvisual__copy {
  padding-left: 1.5555555556%;
}
.p-mainvisual__copy svg {
  max-width: 46rem;
}
.p-mainvisual__copy-text {
  max-width: 46rem;
}
.p-mainvisual__copy-text-row {
  display: flex;
  gap: 2.4456521739%;
  align-items: center;
}
.p-mainvisual__copy-text-row:first-child {
  padding-right: 10%;
}
.p-mainvisual__copy-text-row + .p-mainvisual__copy-text-row {
  margin-top: 1.5rem;
}
.p-mainvisual__copy-text-item {
  position: relative;
  min-width: 0;
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center;
          mask-position: center;
  -webkit-mask-size: contain;
          mask-size: contain;
  backface-visibility: hidden;
  transform: translateZ(0);
}
.p-mainvisual__copy-text-item.--01 {
  width: 208.08px;
  aspect-ratio: 208.08/44.69;
  -webkit-mask-image: url("../images/index/mv-txt-02.svg");
          mask-image: url("../images/index/mv-txt-02.svg");
}
.p-mainvisual__copy-text-item.--02 {
  width: 207.79px;
  aspect-ratio: 207.79/44.93;
  -webkit-mask-image: url("../images/index/mv-txt-03.svg");
          mask-image: url("../images/index/mv-txt-03.svg");
}
.p-mainvisual__copy-text-item.--03 {
  width: 207.84px;
  aspect-ratio: 207.84/44.74;
  -webkit-mask-image: url("../images/index/mv-txt-04.svg");
          mask-image: url("../images/index/mv-txt-04.svg");
}
.p-mainvisual__copy-text-item.--04 {
  width: 735.22px;
  aspect-ratio: 735.22/45.08;
  -webkit-mask-image: url("../images/index/mv-txt-01.svg");
          mask-image: url("../images/index/mv-txt-01.svg");
}
.p-mainvisual__copy-text-item-svg-replace {
  position: absolute;
  inset: 0;
  background-color: #121212;
}
.p-mainvisual__copy-text-item-svg-color {
  position: absolute;
  inset: 0;
  background-color: #121212;
}
.p-mainvisual__copy-text-item-svg-color.--slide-three-color {
  background-image: linear-gradient(to right, #121212 35%, #ffe600 35%, #ffe600 65%, #e3e6ee 65%);
  background-position: 100%;
  background-size: 300% 100%;
}
.p-mainvisual__copy-text-item-overlay-01 {
  position: absolute;
  inset: 0;
  z-index: 1;
  background-color: #fff;
  transform-origin: right;
}

@media only screen and (max-width: 767px) {
  .p-mainvisual {
    padding-top: calc(50dvh - 23px);
  }
  .p-mainvisual__copy {
    padding-left: 0;
  }
  .p-mainvisual__copy svg {
    height: auto;
  }
  .p-mainvisual__copy-text {
    max-width: 19.1875rem;
  }
  .p-mainvisual__copy-text-row + .p-mainvisual__copy-text-row {
    margin-top: 0.5rem;
  }
}
.p-nav {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 2.8125rem;
}
.p-nav__thumb {
  aspect-ratio: 4/3;
  overflow: hidden;
  border-radius: 0.375rem;
}
.p-nav__thumb img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
}
.p-nav__text {
  display: block;
  margin-top: 1.4375rem;
  font-size: 1.125rem;
  font-weight: bold;
  color: #fff;
}
.p-nav__text::after {
  margin-left: 0.75rem;
  vertical-align: middle;
  content: "";
  background-color: #fff;
  border: 0.0625rem solid currentcolor;
  border-radius: 50%;
  --wrap-size: 2rem;
  --icon-size: contain;
  --icon-color: #000;
  display: inline-flex;
  width: var(--wrap-w, var(--wrap-size));
  height: var(--wrap-h, var(--wrap-size));
  background-image: var(--icon-url, none);
  background-repeat: no-repeat;
  background-position: center;
  background-size: var(--icon-size, contain);
  --icon-url: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg id='_ãƒ‡ã‚¶ã‚¤ãƒ³' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 6.61 6.18'%3E%3Cdefs%3E%3Cstyle%3E.cls-1%7Bfill:none;stroke:%2323201c;stroke-linecap:round;stroke-miterlimit:10;stroke-width:.92px;%7D%3C/style%3E%3C/defs%3E%3Cpolyline class='cls-1' points='3.32 .46 5.96 3.09 3.32 5.73'/%3E%3Cline class='cls-1' x1='5.44' y1='3.09' x2='.46' y2='3.09'/%3E%3C/svg%3E");
  --wrap-size: 1.375rem;
  --icon-size: 0.4375rem;
  --icon-color: #fff;
}
@media (hover: hover) {
  .p-nav__item {
    transition: opacity 0.3s;
  }
  .p-nav__item:hover {
    opacity: 0.7;
  }
}
.p-nav__item.--blank .p-nav__text::after {
  border: none;
  border-radius: 0;
  -webkit-mask-image: var(--icon-url);
          mask-image: var(--icon-url);
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center;
          mask-position: center;
  -webkit-mask-size: contain;
          mask-size: contain;
  --icon-url: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg id='_ãƒ¡ãƒ‹ãƒ¥ãƒ¼ã‚ªãƒ¼ãƒ—ãƒ³' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 13.06 11.07'%3E%3Cdefs%3E%3Cstyle%3E.cls-1%7Bfill:%23fff;%7D%3C/style%3E%3C/defs%3E%3Cpath class='cls-1' d='M12.08,0H3.99c-.54,0-.98.44-.98.98v2.04H.98c-.54,0-.98.44-.98.98v6.1c0,.54.44.98.98.98h8.09c.54,0,.98-.44.98-.98v-2.03h2.04c.54,0,.98-.44.98-.98V.98c0-.54-.44-.98-.98-.98ZM9.05,10.07l-8.05.02-.02-6.08h2.03s0,3.06,0,3.06c0,.54.44.98.98.98h5.06v2.01ZM12.06,7.06l-8.05.02-.02-6.08,8.07-.02v6.08Z'/%3E%3C/svg%3E");
  --wrap-size: 0.8125rem;
}

@media only screen and (max-width: 767px) {
  .p-nav {
    grid-template-columns: 1fr;
    gap: 2.625rem;
  }
  .p-nav__item.--blank .p-nav__text::after {
    margin-left: 0.75rem;
  }
  .p-nav__text {
    margin-top: 1.25rem;
    font-size: 1rem;
  }
  .p-nav__text::after {
    margin-left: 0.625rem;
  }
}
.p-news__item {
  border-top: 0.0625rem solid #d3d3d3;
}
.p-news__item:last-child {
  border-bottom: 0.0625rem solid #d3d3d3;
}
.p-news__link {
  display: flex;
  align-items: center;
  padding: 1.25rem 0;
}
@media (hover: hover) {
  .p-news__link {
    transition: 0.3s linear opacity;
  }
  .p-news__link:hover {
    opacity: 0.7;
  }
}
.p-news__link-day {
  display: inline-block;
  margin-right: 1.25rem;
  font-size: 0.875rem;
  white-space: nowrap;
}
.p-news__link-cat {
  display: inline-block;
  margin-right: 1.5rem;
  font-size: 0.875rem;
  white-space: nowrap;
}
.p-news__link-title {
  overflow: hidden;
  font-size: 1rem;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.p-news__link-new {
  margin-right: 0.5rem;
  font-size: 0.75rem;
  white-space: nowrap;
}
.p-news__button {
  margin-top: 3.75rem;
  text-align: center;
}

@media only screen and (max-width: 767px) {
  .p-news__link {
    flex-wrap: wrap;
  }
  .p-news__link-day {
    margin-right: 0.75rem;
  }
  .p-news__link-cat {
    margin-right: 0.75rem;
  }
  .p-news__link-title {
    width: 100%;
  }
  .p-news__button {
    text-align: center;
  }
}
.p-pagetitle {
  background: url("../images/common/bg-grey-noise-02.jpg") repeat center/auto;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 18.75rem;
  border-top: 0.0625rem solid rgba(34, 34, 34, 0.25);
  border-bottom: 0.0625rem solid rgba(34, 34, 34, 0.25);
}
.p-pagetitle .l-inner {
  height: auto;
}
.p-pagetitle__title {
  margin-top: 0.875rem;
}
.p-pagetitle__title h1 {
  font-size: 3.5rem;
  font-weight: bold;
  line-height: 1.2321428571;
}
.p-pagetitle__title span {
  display: block;
  margin-top: 0.5rem;
  font-size: 0.9375rem;
  line-height: 1.8666666667;
  color: #666;
}

@media only screen and (max-width: 767px) {
  .p-pagetitle {
    height: auto;
    min-height: 10rem;
  }
  .p-pagetitle h1 {
    font-size: 1.875rem;
  }
  .p-pagetitle span {
    font-size: 0.6875rem;
  }
}
.p-pagination-02 {
  margin-top: 8.125rem;
  text-align: center;
}
.p-pagination-02__list {
  display: inline-flex;
  gap: 1rem;
  align-items: center;
}
.p-pagination-02__item span,
.p-pagination-02__item a {
  display: flex;
  align-items: center;
  justify-content: center;
  min-width: 0.4375rem;
  min-height: 0.4375rem;
  font-size: 0;
  background-color: #d6d6d6;
  border-radius: 50%;
}
@media (hover: hover) {
  .p-pagination-02__item a {
    transition: 0.3s linear all;
  }
  .p-pagination-02__item a:hover {
    background-color: #2e2e2e;
  }
}
.p-pagination-02__item span {
  background-color: #2e2e2e;
}
.p-pagination-02__item.--prev span,
.p-pagination-02__item.--prev a, .p-pagination-02__item.--next span,
.p-pagination-02__item.--next a {
  min-width: 4.125rem;
  min-height: 4.125rem;
  background-color: #fff;
  border: 0.0625rem solid rgba(34, 34, 34, 0.5);
}
.p-pagination-02__item.--prev span::before,
.p-pagination-02__item.--prev a::before, .p-pagination-02__item.--next span::before,
.p-pagination-02__item.--next a::before {
  content: "";
  --wrap-size: 2rem;
  --icon-size: contain;
  --icon-color: #000;
  display: inline-flex;
  width: var(--wrap-w, var(--wrap-size));
  height: var(--wrap-h, var(--wrap-size));
  background: var(--icon-color);
  -webkit-mask-image: var(--icon-url, none);
          mask-image: var(--icon-url, none);
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center;
          mask-position: center;
  -webkit-mask-size: var(--icon-size, contain);
          mask-size: var(--icon-size, contain);
  --icon-color: #121212;
  --icon-url: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg id='Isolation_Mode' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 40'%3E%3Cdefs%3E%3Cstyle%3E.cls-1%7Bfill:%23121212;%7D%3C/style%3E%3C/defs%3E%3Cpolygon class='cls-1' points='9.14 20 20 40 0 20 20 0 9.14 20'/%3E%3C/svg%3E");
  --wrap-size: 1.25rem;
}
@media (hover: hover) {
  .p-pagination-02__item.--prev a, .p-pagination-02__item.--next a {
    transition: background-color 0.3s;
  }
  .p-pagination-02__item.--prev a::after, .p-pagination-02__item.--next a::after {
    transition: background-color 0.3s;
  }
  .p-pagination-02__item.--prev a:hover, .p-pagination-02__item.--next a:hover {
    background-color: #666;
    border-color: #666;
  }
  .p-pagination-02__item.--prev a:hover::before, .p-pagination-02__item.--next a:hover::before {
    --icon-color: #fff;
  }
}
.p-pagination-02__item.--prev {
  margin-right: 1.875rem;
}
.p-pagination-02__item.--next {
  margin-left: 1.875rem;
}
.p-pagination-02__item.--next span::before,
.p-pagination-02__item.--next a::before {
  --icon-url: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg id='Isolation_Mode' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 40'%3E%3Cdefs%3E%3Cstyle%3E.cls-1%7Bfill:%23121212;%7D%3C/style%3E%3C/defs%3E%3Cpolygon class='cls-1' points='10.86 20 0 0 20 20 0 40 10.86 20'/%3E%3C/svg%3E");
}

@media only screen and (max-width: 767px) {
  .p-pagination-02 {
    margin-top: 3.75rem;
  }
  .p-pagination-02__item.--prev span,
  .p-pagination-02__item.--prev a, .p-pagination-02__item.--next span,
  .p-pagination-02__item.--next a {
    min-width: 3.75rem;
    min-height: 3.75rem;
  }
  .p-pagination-02__item.--prev span::before,
  .p-pagination-02__item.--prev a::before, .p-pagination-02__item.--next span::before,
  .p-pagination-02__item.--next a::before {
    --wrap-size: 1.125rem;
  }
}
.p-pagination {
  margin-top: 8.125rem;
  text-align: center;
}
.p-pagination__list {
  display: inline-flex;
  gap: 1.25rem;
}
.p-pagination__item span,
.p-pagination__item a {
  display: flex;
  align-items: center;
  justify-content: center;
  min-width: 3.75rem;
  min-height: 3.75rem;
  font-size: 1rem;
  font-weight: bold;
  color: #121212;
  letter-spacing: 0.08em;
  background-color: #fff;
  border: 0.125rem solid #333;
  border-radius: 1.875rem;
}
@media (hover: hover) {
  .p-pagination__item a {
    transition: 0.3s linear all;
  }
  .p-pagination__item a:hover {
    color: #fff;
    background-color: #333;
  }
}
.p-pagination__item span {
  color: #fff;
  background-color: #333;
}
.p-pagination__item.--prev span,
.p-pagination__item.--prev a, .p-pagination__item.--next span,
.p-pagination__item.--next a {
  min-width: 9.0625rem;
}

@media only screen and (max-width: 767px) {
  .p-pagination {
    margin-top: 3.75rem;
  }
  .p-pagination__list {
    gap: 0.375rem;
  }
  .p-pagination__item span,
  .p-pagination__item a {
    min-width: 2.25rem;
    min-height: 2.25rem;
    font-size: 0.875rem;
  }
  .p-pagination__item.--prev span,
  .p-pagination__item.--prev a, .p-pagination__item.--next span,
  .p-pagination__item.--next a {
    min-width: 2.25rem;
    min-height: 2.25rem;
    font-size: 0;
  }
  .p-pagination__item.--prev span::before,
  .p-pagination__item.--prev a::before, .p-pagination__item.--next span::before,
  .p-pagination__item.--next a::before {
    font-size: 0.875rem;
    content: "<";
  }
  .p-pagination__item.--prev span,
  .p-pagination__item.--prev a {
    margin-right: 0.625rem;
  }
  .p-pagination__item.--next span,
  .p-pagination__item.--next a {
    margin-left: 0.625rem;
  }
  .p-pagination__item.--next span::before,
  .p-pagination__item.--next a::before {
    content: ">";
  }
}
.p-process {
  max-width: 60rem;
  padding: 3.625rem 3.125rem 5.3125rem;
  margin-right: auto;
  margin-left: auto;
  background-color: #fff;
  border: 0.0625rem solid rgba(0, 0, 0, 0.5);
  border-radius: 0.4375rem;
}
.p-process__item + .p-process__item {
  margin-top: 0.9375rem;
}
.p-process__item.--mt-lg {
  margin-top: 1.6875rem;
}
.p-process__item-head {
  display: flex;
  gap: 1.5625rem;
  font-size: 1.125rem;
  font-weight: bold;
  color: #1d95d8;
}
.p-process__item-head.--gap-sm {
  gap: 1.125rem;
}
.p-process__item-head-num {
  flex-shrink: 0;
  font-family: Syncopate, sans-serif;
  font-size: 1.375rem;
  font-weight: bold;
}
.p-process__item-cont {
  margin-top: 0.125rem;
}
.p-process__item-cont .p-link-02 {
  margin-top: 0.375rem;
}
.p-process__item-text {
  margin-left: 0.375rem;
  font-size: 1rem;
  line-height: 1.75;
}
.p-process__item-text + .p-process__item-icon-next {
  margin-top: 1.6875rem;
}
.p-process__item-icon-next {
  display: block;
  width: 0.75rem;
  height: 0.625rem;
  margin-top: 2rem;
  margin-left: 0.875rem;
  clip-path: polygon(0 0, 100% 0, 50% 100%);
  background: #121212;
}

@media only screen and (max-width: 767px) {
  .p-process {
    padding: 2.5rem 1.25rem;
  }
  .p-process__item-head {
    gap: 0.75rem;
    font-size: 0.875rem;
  }
  .p-process__item-head.--gap-sm {
    gap: 0.75rem;
  }
  .p-process__item-head-num {
    font-size: 1rem;
  }
  .p-process__item-text {
    font-size: 0.75rem;
  }
  .p-process__item-icon-next {
    width: 0.5rem;
    height: 0.4375rem;
  }
}
.p-properties-01 {
  display: flex;
  gap: 8.5333333333%;
  align-items: center;
}
.p-properties-01__left {
  flex-shrink: 0;
  width: 51.3333333333%;
  aspect-ratio: 771/691;
  overflow: hidden;
  border-radius: 10px;
}
.p-properties-01__left img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
}
.p-properties-01__right {
  flex-grow: 1;
}
.p-properties-01__title {
  font-size: 1.375rem;
  font-weight: bold;
  line-height: 1.9545454545;
}
.p-properties-01__table {
  margin-top: 1rem;
}

@media only screen and (max-width: 767px) {
  .p-properties-01 {
    flex-direction: column;
    gap: 1.5rem;
  }
  .p-properties-01__left {
    width: 100%;
    aspect-ratio: unset;
    border-radius: 0.1875rem;
  }
  .p-properties-01__right {
    width: 100%;
  }
}
.p-section-title-h1 {
  margin-bottom: 3.75rem;
  text-align: center;
}

.p-section-title-h2 {
  margin-bottom: 3.75rem;
  text-align: center;
}

.p-section-title-h3 {
  margin-bottom: 3.75rem;
  text-align: center;
}

.p-service-01 {
  display: flex;
  justify-content: space-between;
  margin-top: 2.375rem;
}
.p-service-01__item {
  width: 46.5%;
}
.p-service-01__item-head {
  display: flex;
  gap: 0.625rem;
}
.p-service-01__item-head .label {
  display: flex;
  flex-shrink: 0;
  gap: 0.125rem;
  align-items: center;
  align-self: flex-start;
  padding: 0.1875rem 0.375rem 0.1875rem 1.125rem;
  font-size: 0.875rem;
  font-weight: bold;
  color: #fff;
  letter-spacing: 0.34em;
  background-color: #121212;
  border-radius: 0.875rem;
}
.p-service-01__item-head .label .num {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 1.1875rem;
  height: 1.1875rem;
  font-family: "Syncopate", sans-serif;
  font-size: 0.8125rem;
  font-weight: bold;
  line-height: 1;
  color: #121212;
  text-align: center;
  letter-spacing: 0;
  background: #fff;
  border-radius: 50%;
}
.p-service-01__item-head .no {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 1.1875rem;
  height: 1.1875rem;
  font-family: "Syncopate", sans-serif;
  font-size: 0.8125rem;
  font-weight: bold;
}
.p-service-01__item-head .text {
  font-size: 1rem;
  font-weight: bold;
}
.p-service-01__images {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-top: 1.625rem;
}
.p-service-01__images-item {
  position: relative;
  width: calc((100% - 1.875rem) / 2);
  aspect-ratio: 263/187;
  border-radius: 0.25rem;
}
.p-service-01__images-item:nth-child(2n+1)::after {
  position: absolute;
  top: 50%;
  left: calc(100% + 0.9375rem);
  width: 0.625rem;
  height: 0.75rem;
  margin-top: -0.375rem;
  clip-path: polygon(0 0, 100% 50%, 0 100%);
  content: "";
  background-color: currentcolor;
  transform: translateX(-50%);
}
.p-service-01__images-item img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
  border-radius: inherit;
}

@media only screen and (max-width: 767px) {
  .p-service-01 {
    flex-direction: column;
    gap: 2.5rem;
  }
  .p-service-01__item {
    width: 100%;
  }
  .p-service-01__images {
    margin-top: 1rem;
  }
  .p-service-01__item-head {
    flex-direction: column;
    gap: 0.25rem;
  }
}
.p-swiper-01.--bg-gray {
  position: relative;
  padding-top: 6.4375rem;
  padding-bottom: 8.5rem;
}
.p-swiper-01.--bg-gray::after {
  position: absolute;
  top: 0;
  left: 50%;
  z-index: -1;
  width: 100vw;
  height: 100%;
  overflow: hidden;
  content: "";
  background: url("../images/common/bg-grey-noise-02.jpg") repeat center/auto;
  transform: translateX(-50%);
}
.p-swiper-01 .swiper {
  width: 20.8333333333vw;
  min-width: 25rem;
  margin-right: auto;
  margin-left: auto;
  overflow: visible;
}
.p-swiper-01 .swiper-button-next {
  right: -3.75rem;
  margin-top: -0.3125rem;
  transform: translateY(-50%);
}
.p-swiper-01 .swiper-button-prev {
  left: -3.75rem;
  margin-top: -0.3125rem;
  transform: translateY(-50%);
}
.p-swiper-01 .swiper-slide {
  transition: scale 0.3s, transform-origin 0.3s;
  transform-origin: center right;
  scale: 0.8275;
}
.p-swiper-01 .swiper-slide .p-card-02 {
  filter: grayscale(100%);
  opacity: 0.5;
}
.p-swiper-01 .swiper-slide-active {
  scale: 1;
}
.p-swiper-01 .swiper-slide-active .p-card-02 {
  filter: grayscale(0%);
  opacity: 1;
}
.p-swiper-01 .swiper-slide-prev .p-card-02,
.p-swiper-01 .swiper-slide-next .p-card-02 {
  opacity: 1;
}
.p-swiper-01 .swiper-slide-next {
  transform-origin: center right;
}
.p-swiper-01 .swiper-slide-next ~ .swiper-slide {
  transform-origin: center left;
}
.p-swiper-01 .swiper-slide-prev {
  transform-origin: center left;
}
.p-swiper-01 .c-swiper-page {
  min-height: 0.1875rem;
  margin-top: 2.5rem;
}
.p-swiper-01.is-not-init .swiper-slide {
  scale: 1;
}
.p-swiper-01.is-not-init .swiper-slide .p-card-02 {
  filter: grayscale(0%);
  opacity: 1;
}

@media only screen and (max-width: 767px) {
  .p-swiper-01.--bg-gray {
    padding-top: 3.25rem;
    padding-bottom: 3.375rem;
  }
  .p-swiper-01 .swiper {
    width: calc(100% - 3.3125rem);
    min-width: unset;
    max-width: 17.625rem;
  }
  .p-swiper-01 .c-swiper-page {
    min-height: unset;
    margin-top: 2.1875rem;
  }
  .p-swiper-01 .swiper-button-next {
    right: -2.625rem;
    margin-top: -0.125rem;
  }
  .p-swiper-01 .swiper-button-prev {
    left: -2.625rem;
    margin-top: -0.125rem;
  }
}
.p-swiper-02 .swiper-wrapper {
  transition-timing-function: linear;
}
.p-swiper-02 .swiper-slide {
  width: auto;
}
.p-swiper-02__slide-list {
  display: flex;
  gap: 2.5rem;
  align-items: center;
}
.p-swiper-02__slide {
  display: flex;
  gap: 2.5rem;
  align-items: center;
}
.p-swiper-02__slide.--reverse {
  flex-direction: row-reverse;
}
.p-swiper-02__slide-img {
  width: 19.5rem;
  aspect-ratio: 312/123;
  overflow: hidden;
  border-radius: 0.875rem;
}
.p-swiper-02__slide-img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
}

@media only screen and (max-width: 767px) {
  .p-swiper-02__slide-img {
    width: 8.75rem;
    border-radius: 0.375rem;
  }
  .p-swiper-02__slide-text img {
    width: auto;
    height: 1.375rem;
  }
  .p-swiper-02__slide {
    gap: 1.0625rem;
  }
  .p-swiper-02__slide-list {
    gap: 1.0625rem;
  }
}
.p-swiper-03.--edge-right .p-swiper-03__slides {
  max-width: 97.5rem;
  margin-right: calc(50% - 50vw);
  overflow: hidden;
}
.p-swiper-03 .swiper {
  width: 100%;
  min-width: unset;
  max-width: 25rem;
  margin-left: unset;
  overflow: visible;
}
.p-swiper-03 .swiper-slide {
  aspect-ratio: 3/2;
  overflow: hidden;
}
.p-swiper-03 .swiper-slide img {
  width: 100%;
  height: 100%;
  margin: 0;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
}
.p-swiper-03__control {
  margin-top: 1.5rem;
}

@media only screen and (max-width: 767px) {
  .p-swiper-03 .swiper {
    max-width: 17.625rem;
  }
  .p-swiper-03.is-not-init .swiper {
    max-width: unset;
  }
}
.p-swiper-control {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.875rem;
}
.p-swiper-control .swiper-button-prev,
.p-swiper-control .swiper-button-next {
  position: relative;
  inset: unset;
  flex-shrink: 0;
  margin-top: 0;
}
.p-swiper-control .swiper-pagination {
  position: static;
  inset: unset;
  margin-top: 0;
}
.p-swiper-control__button-fraction {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 3.75rem;
}
.p-swiper-control__button-fraction .swiper-button-next,
.p-swiper-control__button-fraction .swiper-button-prev {
  transform: none;
}
.p-swiper-control__button-fraction > * {
  flex-shrink: 0;
}
.p-swiper-control.--page-button-fraction {
  flex-wrap: wrap;
  gap: 1rem 2.6875rem;
  justify-content: flex-start;
}
.p-swiper-control.--page-button-fraction .swiper-pagination {
  width: auto;
}

@media only screen and (max-width: 767px) {
  .p-swiper-control .swiper-pagination {
    width: auto;
    max-width: calc(100% - 1.5rem);
    --swiper-pagination-bullet-horizontal-gap: 0.15625rem;
  }
  .p-swiper-control .swiper-pagination .swiper-pagination-bullet {
    max-width: 1.5rem;
  }
  .p-swiper-control__button-fraction {
    gap: 3.125rem;
  }
  .p-swiper-control.--page-button-fraction {
    flex-direction: column;
    align-items: center;
    justify-content: center;
  }
}
.p-tab.--vertical {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  align-items: flex-start;
}
.p-tab__button {
  display: inline-flex;
  align-items: center;
  justify-content: flex-start;
  min-height: 3.25rem;
  padding: 0.5rem 1.8125rem 0.5rem 1.375rem;
  font-size: 1rem;
  font-weight: bold;
  text-align: center;
  text-decoration: underline;
  border: 0.0625rem solid transparent;
  border-radius: 0.25rem;
}
.p-tab__button.is-active {
  background: #f2f2f2;
  border: 0.0625rem solid rgba(153, 153, 153, 0.5);
}

@media only screen and (max-width: 767px) {
  .p-tab.--vertical {
    flex-direction: row;
    gap: 0.1875rem;
  }
  .p-tab__button {
    flex-shrink: 0;
    min-height: 2rem;
    padding: 0.5rem;
    font-size: 0.625rem;
    border-radius: 0.125rem;
  }
}
.p-table-01 {
  width: 100%;
  text-align: left;
  border-collapse: collapse;
}
.p-table-01__td {
  left: 0.04em;
  padding: 1rem 0;
  font-size: 0.9375rem;
  font-weight: bold;
  line-height: 1.6;
  border-bottom: 1px solid #000;
}
.p-table-01__td:not(:first-child) {
  padding-left: 0.75rem;
}

@media only screen and (max-width: 767px) {
  .p-table-01__td {
    padding: 0.75rem 0;
  }
}
/* pages */
body.about .about__button {
  text-align: center;
  margin: 3.75rem auto 0;
}

body.achievements-single .achievements-single-main .p-card-03__head {
  margin: 0 auto 3rem;
}
body.achievements-single .achievements-single-main .p-card-03__head .p-card-03__address {
  margin-top: 1.5rem;
}
body.achievements-single .achievements-single-main .achievements-single-main__button {
  text-align: center;
  margin: 3.75rem auto 0;
}

body.contact .contact-main,
body.contact-confirm .contact-main,
body.contact-complete .contact-main {
  margin-top: -0.375rem;
}
body.contact .contact-main__form,
body.contact-confirm .contact-main__form,
body.contact-complete .contact-main__form {
  max-width: 68.75rem;
  margin-right: auto;
  margin-left: auto;
}

body.contact-confirm .p-breadline__item:nth-child(2),
body.contact-complete .p-breadline__item:nth-child(2) {
  display: none;
}

@media all and (min-width: 768px), print {
  body.contact .contact-main__form .p-form__table-tr:nth-child(1) {
    height: 7.625rem;
  }
  body.contact .contact-main__form .p-form__table-tr:nth-child(2) {
    height: 19.1875rem;
  }
}
body.contact .contact-main__form textarea.c-input__input-container {
  height: 13.75rem;
}

body.contact-complete .contact-main__complete-box {
  max-width: 68.75rem;
  padding: 5rem 1.25rem;
  padding-bottom: 6.5rem;
  margin-right: auto;
  margin-left: auto;
  background: #f4f4f4;
  border-radius: 0.375rem;
}
body.contact-complete .contact-main__complete-title {
  font-size: 1.5rem;
  font-weight: bold;
  text-align: center;
}
body.contact-complete .contact-main__complete-desc {
  margin-top: 3.875rem;
  text-align: center;
}
body.contact-complete .contact-main__complete-tel {
  display: flex;
  align-items: center;
  justify-content: center;
  max-width: 56.25rem;
  padding: 1.5625rem 1.25rem 1.75rem;
  margin: 3.3125rem auto 0;
  background: #fff;
  border-radius: 0.375rem;
}
body.contact-complete .contact-main__complete-btn {
  margin-top: 4.125rem;
  text-align: center;
}
@media only screen and (max-width: 767px) {
  body.contact-complete .contact-main__complete-box {
    padding: 1.875rem 1.25rem;
  }
  body.contact-complete .contact-main__complete-title {
    font-size: 1.25rem;
  }
  body.contact-complete .contact-main__complete-desc {
    margin-top: 1.5rem;
    font-size: 0.875rem;
  }
}

body.index .index-nav {
  margin-top: 11.5625rem;
}
body.index .index-nav__container {
  display: grid;
  grid-template-columns: 45.6111111111% clamp(20rem, 21.9444444444%, 100%) 1fr;
  gap: 0.625rem 0.5rem;
  justify-content: space-between;
  padding-bottom: 7.75rem;
  border-bottom: 0.0625rem solid rgba(18, 18, 18, 0.5);
}
body.index .index-nav__container .p-link-01:nth-child(1) {
  grid-row: 1/3;
  padding-left: 1.5625rem;
}
body.index .index-utilization {
  padding-bottom: 6.25rem;
  margin-top: 7.1875rem;
}
body.index .index-utilization__container {
  display: flex;
  align-items: flex-start;
  justify-content: flex-end;
  max-width: calc(50% + 60rem);
  margin-left: auto;
}
body.index .index-utilization__left {
  position: sticky;
  top: 0;
  flex-shrink: 0;
  width: 47.8645833333%;
  max-width: 57.4375rem;
}
body.index .index-utilization__heading {
  max-width: 120rem;
  margin-right: -108.922742111%;
}
body.index .index-utilization__assets {
  flex-grow: 1;
  flex-shrink: 0;
  width: 52.1354166667%;
  margin-top: 11rem;
  margin-left: auto;
}
body.index .index-utilization__assets .p-card-01__item {
  position: sticky;
  top: 9.375rem;
  transform-origin: right top;
}
body.index .index-utilization__img {
  display: block;
  margin-top: 3.75rem;
  margin-right: -6.7464635473%;
  margin-left: -4.1349292709%;
}
body.index .index-properties {
  padding-top: 6.4375rem;
  padding-bottom: 8.5rem;
  overflow: hidden;
  background: url("../images/common/bg-grey-noise-02.jpg") repeat center/auto;
}
body.index .index-properties__container-01 {
  display: flex;
  justify-content: space-between;
  max-width: 100rem;
}
body.index .index-properties__container-01-desc {
  margin-top: 3.25rem;
  font-size: 1rem;
  line-height: 1.83;
}
body.index .index-properties__container-01-left {
  margin-top: 0.625rem;
}
body.index .index-properties__container-01-right {
  flex-grow: 1;
  max-width: 28.375rem;
  margin-top: -0.125rem;
}
body.index .index-properties__container-01-right .p-contact {
  margin-top: 1.125rem;
}
body.index .index-properties__container-02 {
  margin-top: 4.75rem;
}
body.index .index-properties__container-02 .p-swiper-01 {
  margin-top: 2.5rem;
}
body.index .index-properties__container-03 {
  padding-top: 5.5rem;
  margin-top: 5.75rem;
  border-top: 0.0625rem solid rgba(18, 18, 18, 0.5);
}
body.index .index-properties__container-03 .p-swiper-01 {
  margin-top: 2.875rem;
}
body.index .index-properties__update {
  margin-right: 0.375rem;
  font-size: 0.875rem;
  text-align: right;
}
body.index .index-properties__update .com-icon {
  --wrap-size: 0.8125rem;
  margin-right: 0.375rem;
  vertical-align: middle;
}
body.index .index-properties__update .date {
  margin-left: 0.25rem;
  font-family: "Barlow Condensed", sans-serif;
  font-size: 1rem;
}
body.index .index-properties__table {
  margin-top: 0.4375rem;
  overflow: hidden;
  background: #fff;
  border: 0.0625rem solid #999;
  border-radius: 0.3125rem;
}
body.index .index-properties__table-row {
  display: flex;
}
body.index .index-properties__table-text {
  display: flex;
  flex-grow: 1;
  align-items: baseline;
  justify-content: center;
  min-height: 4.375rem;
  padding: 0.75rem 0.5rem;
  font-size: 1.125rem;
  font-weight: 500;
  text-align: center;
}
body.index .index-properties__table-text:first-child {
  flex-grow: 0;
  flex-shrink: 0;
  width: 48%;
}
body.index .index-properties__table-text:not(:last-child) {
  border-right: 0.0625rem solid #999;
}
body.index .index-properties__table-text em {
  font-family: "Barlow Condensed", sans-serif;
  font-size: 1.5rem;
  font-style: normal;
  font-weight: 500;
}
body.index .index-properties__table-text .num {
  margin-right: 0.375rem;
  margin-left: 0.625rem;
  font-family: "Barlow Condensed", sans-serif;
  font-size: 1.875rem;
  font-weight: 600;
}
body.index .index-properties__table-text .unit {
  font-size: 0.9375rem;
}
body.index .index-properties__table-link {
  position: relative;
  display: block;
  padding: 0.5rem;
  font-size: 1.125rem;
  font-weight: bold;
  text-align: center;
}
body.index .index-properties__table-link::after {
  position: absolute;
  top: 0;
  right: 1.0625rem;
  bottom: 0;
  margin: auto;
  content: "";
  background-color: var(--icon-color);
  border: 0.0625rem solid #121212;
  border-radius: 50%;
  --wrap-size: 2rem;
  --icon-size: contain;
  --icon-color: #000;
  display: inline-flex;
  width: var(--wrap-w, var(--wrap-size));
  height: var(--wrap-h, var(--wrap-size));
  background-image: var(--icon-url, none);
  background-repeat: no-repeat;
  background-position: center;
  background-size: var(--icon-size, contain);
  --wrap-size: 1.375rem;
  --icon-url: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg id='_ãƒ‡ã‚¶ã‚¤ãƒ³' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 6.61 6.18'%3E%3Cdefs%3E%3Cstyle%3E.cls-1%7Bfill:none;stroke:%2323201c;stroke-linecap:round;stroke-miterlimit:10;stroke-width:.92px;%7D%3C/style%3E%3C/defs%3E%3Cpolyline class='cls-1' points='3.32 .46 5.96 3.09 3.32 5.73'/%3E%3Cline class='cls-1' x1='5.44' y1='3.09' x2='.46' y2='3.09'/%3E%3C/svg%3E");
  --icon-color: #fff;
  --icon-size: 0.4375rem;
}
body.index .index-properties__table-link .en {
  font-family: "Barlow Condensed", sans-serif;
  font-size: 1.375rem;
  font-weight: 500;
}
body.index .index-properties__table-link .com-icon {
  position: absolute;
}
@media (hover: hover) {
  body.index .index-properties__table-link {
    transition: all 0.3s;
  }
  body.index .index-properties__table-link::after {
    transition: all 0.3s;
  }
  body.index .index-properties__table-link:hover {
    color: #fff;
    background: #121212 url("../images/common/bg-noise-01.png") repeat center/auto;
    border-color: #121212;
  }
  body.index .index-properties__table-link:hover::after {
    --icon-color: #ffe600;
  }
}
body.index .index-achieve {
  margin-top: 10.1875rem;
}
body.index .index-achieve__inner {
  border-bottom: 0.0625rem solid rgba(18, 18, 18, 0.5);
}
body.index .index-achieve__container {
  display: flex;
  justify-content: space-between;
  width: 100%;
  max-width: 100rem;
  padding-bottom: 7.5rem;
}
body.index .index-achieve__desc {
  margin-top: 2.875rem;
  font-size: 1rem;
  font-weight: 500;
  line-height: 1.83;
}
body.index .index-achieve__left {
  max-width: 37.875rem;
  margin-top: 8.375rem;
}
body.index .index-achieve__right {
  width: 49.1875%;
}
body.index .index-achieve__right .c-button {
  margin-top: 2.125rem;
}
body.index .index-magazine {
  margin-top: 8.5rem;
}
body.index .index-magazine__container {
  display: flex;
  justify-content: space-between;
  max-width: 87.5rem;
  margin-top: 5.625rem;
  margin-right: auto;
  margin-left: auto;
}
body.index .index-magazine__container .p-tab {
  flex-shrink: 0;
  margin-top: 0.375rem;
}
body.index .index-magazine__list {
  flex-shrink: 0;
  width: 82%;
  margin-left: auto;
}
body.index .index-magazine__list .c-button {
  margin-top: 5.5rem;
}
body.index .index-magazine__tab-content .swiper {
  overflow: visible;
}
body.index .index-about {
  margin-top: 18.25rem;
}
body.index .index-about .c-heading-01__en {
  margin-top: 0.5rem;
}
body.index .index-about__container {
  position: relative;
  z-index: 1;
  padding: 9.5rem 2.5rem 10.625rem;
  background-color: #121212;
  border-radius: 0.625rem;
}
body.index .index-about__container::before {
  position: absolute;
  inset: 0;
  z-index: -1;
  content: "";
  background: url("../images/common/bg-noise-01.png") repeat center/auto;
}
body.index .index-about__container-inner {
  display: flex;
  gap: min(8.9932885906%, 8.375rem);
  max-width: 99.0625rem;
  margin-right: auto;
  margin-left: auto;
}
body.index .index-about__left {
  flex-shrink: 0;
  width: 34.3624161074%;
  max-width: 32rem;
}
body.index .index-about__right {
  width: 56.711409396%;
  max-width: 52.8125rem;
  margin-top: 1.8125rem;
}
body.index .index-about__desc {
  margin-top: 2.25rem;
  font-size: 0.875rem;
  font-weight: 500;
  line-height: 1.8328571429;
  color: #fff;
}
body.index .index-contact {
  margin-top: 15.875rem;
}
body.index .index-contact__inner {
  max-width: calc(50% + 56.25rem + 1.25rem);
  padding-left: 1.25rem;
  margin-left: auto;
}
body.index .index-contact__container {
  display: flex;
  gap: 5.8064516129%;
}
body.index .index-contact__container .c-heading-01 {
  margin-top: 2rem;
}
body.index .index-contact__nav {
  display: flex;
  flex-grow: 1;
  gap: 0.5rem;
}
body.index .index-contact__nav .p-link-02:last-child {
  flex-grow: 1;
  padding-left: 2.3125rem;
  border-right: 0;
}
body.index .index-contact__nav .p-link-02:first-child {
  flex-shrink: 0;
  width: 29.9831081081%;
}
body.index .index-contact__nav .p-link-02 .c-button:not(:hover) {
  background-color: #fff;
}
body.index .index-slide {
  position: relative;
  padding-top: 6rem;
  margin-top: 14.6875rem;
}
body.index .index-slide::before {
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  width: 112.5rem;
  max-width: calc(100% - 2.5rem);
  margin: auto;
  content: "";
  border-top: 0.0625rem solid rgba(18, 18, 18, 0.5);
}
body.index .index-slide .p-swiper-02 + .p-swiper-02 {
  margin-top: 1.875rem;
}

@media only screen and (min-width: 768px) and (max-width: 1280px) {
  body.index .index-contact__container {
    flex-direction: column;
    gap: 3.75rem;
  }
  body.index .index-contact__nav .p-link-02:first-child {
    min-width: 18.75rem;
  }
  body.index .index-about__container-inner {
    flex-direction: column;
  }
  body.index .index-about__container-inner > * {
    width: 100%;
    max-width: 100%;
  }
  body.index .index-achieve__container {
    flex-direction: column;
    gap: 3.75rem;
  }
  body.index .index-achieve__container > * {
    width: 100%;
  }
  body.index .index-properties__container-01 {
    flex-direction: column;
    gap: 3.75rem;
  }
  body.index .index-properties__container-01 > * {
    width: 100%;
    max-width: unset;
  }
  body.index .index-nav__container {
    grid-template-columns: 1fr 1fr;
  }
  body.index .index-nav__container .p-link-01:nth-child(1) {
    grid-row: unset;
    grid-column: 1/-1;
    aspect-ratio: 821/545;
  }
}
@media all and (min-width: 1281px), print {
  body.index .index-contact .c-heading-01 {
    white-space: nowrap;
  }
  body.index .index-contact__nav .p-link-02:first-child {
    min-width: 18.25rem;
  }
  body.index .index-contact__nav .p-link-02__mail .c-button.--md {
    justify-content: left;
    width: 19.875rem;
    max-width: 100%;
    padding-right: 2.5rem;
    border-color: #303030;
  }
}
@media only screen and (max-width: 767px) {
  body.index .index-slide {
    padding-top: 4.25rem;
    margin-top: 3.125rem;
  }
  body.index .index-slide::before {
    right: 0.625rem;
    left: 0.625rem;
    width: auto;
    max-width: unset;
  }
  body.index .index-slide .p-swiper-02 + .p-swiper-02 {
    margin-top: 0.875rem;
  }
  body.index .index-contact {
    margin-top: 6.875rem;
  }
  body.index .index-contact__container {
    display: block;
  }
  body.index .index-contact__inner {
    max-width: unset;
    padding-right: 1.25rem;
    padding-left: 1.375rem;
  }
  body.index .index-contact__nav {
    gap: 0.25rem;
    margin-top: 1.25rem;
  }
  body.index .index-contact__nav .p-link-02:first-child {
    width: 45.9459459459%;
  }
  body.index .index-contact__nav .p-link-02:last-child {
    padding-left: 0.875rem;
    border-right: 0.0625rem solid #121212;
  }
  body.index .index-about {
    position: relative;
    padding-top: 4.25rem;
    margin-top: 3.125rem;
  }
  body.index .index-about::before {
    position: absolute;
    top: 0;
    right: 0.625rem;
    left: 0.625rem;
    content: "";
    border-top: 0.0625rem solid rgba(18, 18, 18, 0.5);
  }
  body.index .index-about .c-heading-01__jp {
    margin-bottom: 0.875rem;
    font-size: 2.125rem;
  }
  body.index .index-about__container {
    padding: 3.125rem 1.5rem 3.75rem;
    border-radius: 0.375rem;
  }
  body.index .index-about__container-inner {
    display: block;
  }
  body.index .index-about__left {
    width: 100%;
    max-width: unset;
  }
  body.index .index-about__right {
    width: auto;
    max-width: unset;
    margin-top: 1.875rem;
    margin-right: 0.125rem;
    margin-left: 0.25rem;
  }
  body.index .index-about__desc {
    margin-top: 1.5rem;
    margin-right: -0.25rem;
    margin-left: -0.25rem;
    font-size: 0.6875rem;
    line-height: 1.39;
  }
  body.index .index-magazine {
    position: relative;
    padding-top: 3.5rem;
    margin-top: 4.25rem;
  }
  body.index .index-magazine::before {
    position: absolute;
    top: 0;
    right: 0.625rem;
    left: 0.625rem;
    content: "";
    border-top: 0.0625rem solid rgba(18, 18, 18, 0.5);
  }
  body.index .index-magazine .c-heading-01__en {
    margin-top: 0.4375rem;
  }
  body.index .index-magazine__container {
    display: block;
    margin-top: 2.375rem;
  }
  body.index .index-magazine__container .p-tab .p-tab__button:nth-child(5) {
    margin-right: -0.3125rem;
  }
  body.index .index-magazine__list {
    width: auto;
    padding-top: 1.25rem;
    margin-top: 1.125rem;
    margin-right: -1.25rem;
    margin-left: 0;
    overflow: hidden;
  }
  body.index .index-magazine__list .p-swiper-control {
    margin-top: 2.3125rem;
    margin-right: 1.25rem;
  }
  body.index .index-magazine__list .c-button {
    max-width: calc(100% - 1.25rem);
    margin-top: 2.125rem;
  }
  body.index .index-magazine__tab-content .swiper {
    width: 13.875rem;
    margin-left: 0;
  }
  body.index .index-nav {
    position: relative;
    padding-bottom: 3.4375rem;
    margin-top: 4.5rem;
  }
  body.index .index-nav::after {
    position: absolute;
    right: 0.625rem;
    bottom: 0;
    left: 0.625rem;
    content: "";
    border-top: 0.0625rem solid rgba(18, 18, 18, 0.5);
  }
  body.index .index-nav__container {
    grid-template-columns: 52.8358208955% 1fr;
    gap: 0.25rem;
    padding-bottom: 0;
    border-bottom: 0;
  }
  body.index .index-nav__container .p-link-01:nth-child(1) {
    grid-row: auto;
    grid-column: 1/-1;
    aspect-ratio: 335/236;
    padding: 1.125rem 0.6875rem;
  }
  body.index .index-utilization {
    padding-bottom: 0;
    margin-top: 4.125rem;
  }
  body.index .index-utilization__container {
    display: block;
  }
  body.index .index-utilization__left {
    position: static;
    width: 100%;
    max-width: unset;
  }
  body.index .index-utilization__heading {
    margin: 0;
  }
  body.index .index-utilization__img {
    display: block;
    width: 100%;
    max-width: unset;
    margin-top: 0.75rem;
    margin-right: 0;
    margin-left: 0;
    overflow: hidden;
  }
  body.index .index-utilization__img img {
    position: relative;
    left: 50%;
    width: 111.7333333333%;
    max-width: unset;
    margin-top: 0;
    transform: translateX(-50%);
  }
  body.index .index-utilization__assets {
    width: calc(100% - 1.375rem);
    margin-top: 0;
  }
  body.index .index-utilization__assets .p-card-01__item {
    top: 4.375rem;
    transform-origin: right top;
  }
  body.index .index-properties {
    padding-top: 3.25rem;
    padding-bottom: 3.375rem;
    margin-top: -0.9375rem;
  }
  body.index .index-properties__container-01 {
    display: block;
  }
  body.index .index-properties__container-01-desc {
    margin-top: 2.6875rem;
    font-size: 0.75rem;
    line-height: 1.2741666667;
  }
  body.index .index-properties__container-01-right {
    max-width: unset;
    margin-top: 2.625rem;
  }
  body.index .index-properties__container-01-right .p-contact {
    margin-top: 0.8125rem;
  }
  body.index .index-properties__update {
    margin-right: 0.125rem;
    font-size: 0.6875rem;
  }
  body.index .index-properties__update .date {
    font-size: 0.8125rem;
  }
  body.index .index-properties__update .com-icon {
    margin-right: 0.1875rem;
    --wrap-size: 0.6875rem;
  }
  body.index .index-properties__table {
    margin-top: 0.25rem;
    border-radius: 0.1875rem;
  }
  body.index .index-properties__table-text {
    min-height: 3.125rem;
    padding: 0.5rem 0.25rem;
    font-size: 0.8125rem;
  }
  body.index .index-properties__table-text:first-child {
    width: 49%;
  }
  body.index .index-properties__table-text em {
    font-size: 1.125rem;
  }
  body.index .index-properties__table-text .num {
    margin-right: 0.3125rem;
    font-size: 1.375rem;
  }
  body.index .index-properties__table-text .unit {
    font-size: 0.625rem;
  }
  body.index .index-properties__table-link {
    padding: 0.3125rem;
    padding-left: 0.75rem;
    font-size: 0.9375rem;
  }
  body.index .index-properties__table-link::after {
    --wrap-size: 1rem;
    top: 0.1875rem;
    right: 0.75rem;
    --icon-size: 0.3125rem;
  }
  body.index .index-properties__table-link .en {
    margin-right: 0.25rem;
    font-size: 1.125rem;
  }
  body.index .index-properties__container-02 {
    margin-top: 3.9375rem;
  }
  body.index .index-properties__container-02 .p-swiper-01 {
    margin-top: 1.4375rem;
  }
  body.index .index-properties__container-03 {
    position: relative;
    padding-top: 2.75rem;
    margin-top: 2.1875rem;
    border-top: 0;
  }
  body.index .index-properties__container-03::before {
    position: absolute;
    top: 0;
    right: -0.625rem;
    left: -0.625rem;
    content: "";
    border-top: 0.0625rem solid rgba(18, 18, 18, 0.5);
  }
  body.index .index-properties__container-03 .p-swiper-01 {
    margin-top: 1.625rem;
  }
  body.index .index-achieve {
    margin-top: 4.75rem;
  }
  body.index .index-achieve__inner {
    border-bottom: none;
  }
  body.index .index-achieve__container {
    display: block;
    padding-bottom: 0;
  }
  body.index .index-achieve__left {
    margin-top: 0;
  }
  body.index .index-achieve__desc {
    margin-top: 1.125rem;
    font-size: 0.75rem;
    line-height: 1.2741666667;
  }
  body.index .index-achieve__right {
    width: auto;
    margin-top: 1.5625rem;
    margin-right: -1.25rem;
  }
  body.index .index-achieve__right .c-button {
    width: calc(100% - 1.25rem);
    margin-top: 1.875rem;
  }
}
body.magazine .magazine-list {
  max-width: 78rem;
  margin-right: auto;
  margin-left: auto;
}

@media only screen and (max-width: 767px) {
  body.magazine .magazine-list {
    max-width: unset;
    margin-right: -1.25rem;
  }
}
body.magazine-single .magazine-single-main .p-magazine__cont {
  margin: 0 auto 3rem;
}
body.magazine-single .magazine-single-main .magazine-single-main__button {
  text-align: center;
  margin: 3.75rem auto 0;
}

body.properties-buy-single .l-all,
body.properties-rent-single .l-all {
  overflow: hidden;
}
body.properties-buy-single .properties-buy-single-main__button,
body.properties-buy-single .properties-rent-single-main__button,
body.properties-rent-single .properties-buy-single-main__button,
body.properties-rent-single .properties-rent-single-main__button {
  margin-top: 3.75rem;
  text-align: center;
}

body.r-tas .rtas-content {
  margin-top: -0.625rem;
}
body.r-tas .rtas-section-01 {
  margin-top: 3.4375rem;
}
body.r-tas .rtas-section-01 .c-heading-lv3 {
  margin-bottom: 1.25rem;
}
body.r-tas .rtas-section-01__desc {
  margin-top: 1.5625rem;
  font-size: 1.25rem;
  font-weight: bold;
}
body.r-tas .rtas-box-01 {
  max-width: 68.75rem;
  padding: 0 1.25rem;
  padding-top: 2.5rem;
  padding-bottom: 3.3125rem;
  margin-top: 4.375rem;
  margin-right: auto;
  margin-left: auto;
  background-color: #f4f4f4;
  border-radius: 0.375rem;
}
body.r-tas .rtas-box-01__inner {
  max-width: 57.5rem;
  margin-right: auto;
  margin-left: auto;
}
body.r-tas .rtas-box-01__head {
  position: relative;
  display: flex;
  align-items: center;
  padding: 0.625rem 1.6875rem 1.125rem;
  background-color: #fff;
  filter: drop-shadow(0 0.3125rem black);
  filter: drop-shadow(0 0.3125rem #d3d3d3);
  border-radius: 0.375rem;
}
body.r-tas .rtas-box-01__head::after {
  position: absolute;
  top: 100%;
  left: 50%;
  width: 1.75rem;
  aspect-ratio: 28/24;
  margin-top: -0.375rem;
  clip-path: polygon(0 0, 100% 0, 50% 100%);
  content: "";
  background-color: #fff;
  transform: translateX(-50%);
}
body.r-tas .rtas-box-01__head-title {
  position: relative;
  flex-shrink: 0;
  padding-right: 3.4%;
  margin-top: 0.8125rem;
  line-height: 1;
}
body.r-tas .rtas-box-01__head-title::after {
  position: absolute;
  top: 0.125rem;
  right: 0;
  bottom: -0.375rem;
  margin: auto;
  content: "";
  border-right: 0.0625rem solid #898989;
}
body.r-tas .rtas-box-01__head-title .en {
  display: inline-block;
  margin-right: 0.375rem;
  font-size: 2rem;
  font-weight: bold;
}
body.r-tas .rtas-box-01__head-title .jp {
  display: inline-block;
  font-size: 1.5rem;
}
body.r-tas .rtas-box-01__head-title .jp small {
  font-size: 1.3125rem;
}
body.r-tas .rtas-box-01__head-sub {
  flex-grow: 1;
  max-width: 40rem;
  padding: 0 1rem;
  text-align: center;
}
body.r-tas .rtas-box-01__head-sub-main {
  max-width: 36.625rem;
  font-size: 1.25rem;
}
body.r-tas .rtas-box-01__head-sub-main .highlight {
  margin-right: 0.5rem;
  font-size: 1.5rem;
  font-weight: bold;
  background: linear-gradient(#ffe600, #ffe600) no-repeat left bottom/100% 0.8125rem;
}
body.r-tas .rtas-box-01__head-sub-main .highlight .num {
  margin-right: 0.25rem;
  margin-left: 0.25rem;
  font-size: 1.875rem;
}
body.r-tas .rtas-box-01__head-sub-desc {
  font-size: 0.8125rem;
  font-weight: 400;
  color: #000;
}
body.r-tas .rtas-box-01__diagram {
  margin-top: 3.125rem;
  margin-right: 0.375rem;
  margin-left: 0.3125rem;
}
body.r-tas .rtas-card-01 {
  display: flex;
  gap: 5.5625rem;
  justify-content: space-between;
}
body.r-tas .rtas-card-01__item {
  position: relative;
  display: flex;
  flex-direction: column;
  width: calc((100% - 5.5625rem) / 2);
}
body.r-tas .rtas-card-01__item:nth-child(2n+1) .rtas-card-01__img {
  position: relative;
}
body.r-tas .rtas-card-01__item:nth-child(2n+1) .rtas-card-01__img::after {
  position: absolute;
  top: 50%;
  right: -3.125rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2.0625rem;
  aspect-ratio: 1/1;
  font-family: "Syncopate", sans-serif;
  font-size: 0.75rem;
  font-weight: bold;
  color: #fff;
  content: "OR";
  background: #121212;
  border-radius: 50%;
  transform: translate(50%, -50%);
}
body.r-tas .rtas-card-01__head {
  margin-bottom: auto;
}
body.r-tas .rtas-card-01__head-label {
  display: inline-flex;
  gap: 0.4375rem;
  align-items: center;
  padding: 0.25rem 0.5rem 0.375rem 1.0625rem;
}
body.r-tas .rtas-card-01__head-label-no {
  padding-top: 0.125rem;
  line-height: 1;
}
body.r-tas .rtas-card-01__head-cont {
  margin-top: 0.625rem;
  margin-left: 0.375rem;
}
body.r-tas .rtas-card-01__head-label {
  font-size: 1.125rem;
  font-weight: bold;
  color: #fff;
  background: #121212;
  border-radius: 1.125rem;
}
body.r-tas .rtas-card-01__head-label-sub {
  font-size: 0.75rem;
}
body.r-tas .rtas-card-01__head-label-no {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 1.5625rem;
  aspect-ratio: 1/1;
  font-family: "Syncopate", sans-serif;
  font-size: 1.0625rem;
  font-weight: bold;
  color: #121212;
  text-align: center;
  background-color: #fff;
  border-radius: 50%;
}
body.r-tas .rtas-card-01__head-sub-desc {
  font-size: 1rem;
  font-weight: bold;
  color: #000;
}
body.r-tas .rtas-card-01__img {
  margin-top: 1.5rem;
  border-radius: 0.1875rem;
}
body.r-tas .rtas-card-01__img img {
  width: 100%;
  border-radius: inherit;
}
body.r-tas .rtas-box-02 {
  max-width: 66.375rem;
  padding: 1.25rem 2.625rem 1.875rem;
  margin-top: 2.5rem;
  margin-right: auto;
  margin-left: auto;
  background-color: #d6d6d6;
  border-radius: 0.4375rem;
}
body.r-tas .rtas-box-02__title {
  font-size: 1.5rem;
  font-weight: bold;
  text-align: center;
}
body.r-tas .rtas-box-02__case {
  margin-top: 2.625rem;
}
body.r-tas .rtas-case {
  display: flex;
  gap: 3.6809815951%;
}
body.r-tas .rtas-case__item {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 30.88934148%;
  padding: 2.0625rem 1.25rem 1.0625rem;
  text-align: center;
  background-color: #fff;
  border-radius: 0.3125rem;
}
body.r-tas .rtas-case__label {
  position: absolute;
  top: 0;
  left: 0.875rem;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  width: 3.125rem;
  aspect-ratio: 1/1;
  padding-top: 0.25rem;
  line-height: 1;
  color: #fff;
  background: #a3a3a3;
  border-radius: 50%;
  transform: translateY(-50%);
}
body.r-tas .rtas-case__label-text {
  font-size: 0.5rem;
  font-weight: bold;
  letter-spacing: 0.14em;
}
body.r-tas .rtas-case__label-number {
  font-size: 1.4375rem;
  font-weight: bold;
  color: #a3a3a3;
  -webkit-text-stroke: 0.5px rgb(255, 255, 255);
}
body.r-tas .rtas-case__text {
  font-size: 1rem;
  text-align: center;
}
body.r-tas .rtas-box-03 {
  position: relative;
  max-width: 66.375rem;
  padding: 2.625rem 1.25rem 1.875rem;
  margin-top: 5.125rem;
  margin-right: auto;
  margin-left: auto;
  border: 0.25rem solid #ffe600;
  border-radius: 0.375rem;
}
body.r-tas .rtas-box-03__head {
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  max-width: 22rem;
  min-height: 2.6875rem;
  margin: -0.5rem auto 0;
  color: #ffe600;
  background: #121212;
  border-radius: 1.3125rem;
  transform: translateY(-50%);
}
body.r-tas .rtas-box-03__head.--arrow::before {
  position: absolute;
  bottom: 100%;
  width: 4.375rem;
  aspect-ratio: 70/27;
  margin-bottom: 0.75rem;
  clip-path: polygon(0 0, 100% 0, 50% 100%);
  content: "";
  background: #ffe600;
}
body.r-tas .rtas-box-03__head-en {
  margin-right: 0.375rem;
  font-size: 1.8125rem;
  font-weight: bold;
}
body.r-tas .rtas-box-03__head-jp {
  font-size: 1.5625rem;
}
body.r-tas .rtas-box-03__cont {
  font-size: 1.625rem;
  text-align: center;
}
body.r-tas .rtas-box-03__sub {
  padding-left: 1em;
  margin-top: 0.4375rem;
  font-size: 0.9375rem;
  font-weight: 400;
  line-height: 1.8666666667;
  color: #666;
  text-align: center;
  text-indent: -1em;
}
body.r-tas .rtas-box-04 {
  max-width: 68.75rem;
  padding: 3.25rem 1.25rem 3.875rem;
  margin-top: 4.375rem;
  margin-right: auto;
  margin-left: auto;
  background: #f4f4f4;
  border-radius: 0.375rem;
}
body.r-tas .rtas-box-04__title {
  font-size: 1.375rem;
  text-align: center;
}
body.r-tas .rtas-box-04__map {
  display: flex;
  gap: 0.625rem;
  align-items: center;
  max-width: 55rem;
  margin-top: 2.875rem;
  margin-right: auto;
  margin-left: auto;
}
body.r-tas .rtas-box-04__map-left {
  display: flex;
  gap: 0.4375rem;
  align-items: center;
  width: 38.9772727273%;
}
body.r-tas .rtas-box-04__map-right {
  margin-left: 2.5rem;
}
body.r-tas .rtas-box-04__map-left-item {
  position: relative;
  flex-basis: 0;
  flex-grow: 1;
}
body.r-tas .rtas-box-04__map-left-item-img {
  display: block;
}
body.r-tas .rtas-box-04__map-left-item-text {
  position: absolute;
  top: 100%;
  left: 0;
  width: 100%;
  margin-top: 0.125rem;
  font-size: 0.875rem;
  text-align: center;
}
body.r-tas .rtas-box-04__map-left-text {
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
  justify-content: center;
  margin-bottom: 0.25rem;
  font-size: 0.75rem;
  font-weight: bold;
  color: #000;
}
body.r-tas .rtas-box-04__map-left-text .com-icon {
  --icon-color: #515151;
  --wrap-size: 1.8125rem;
  margin-top: 0.375rem;
}
body.r-tas .rtas-box-04__map-list {
  --pl: 2rem;
  --gap: 1.0625rem;
}
body.r-tas .rtas-box-04__map-list-item {
  position: relative;
  display: flex;
  gap: 0.75rem;
  align-items: flex-start;
  padding-left: var(--pl);
}
body.r-tas .rtas-box-04__map-list-item::before {
  position: absolute;
  top: 0.875rem;
  bottom: calc(-1 * (var(--gap) + 0.875rem));
  left: 0;
  width: var(--pl);
  content: "";
  border-top: 0.0625rem solid #515151;
  border-left: 0.0625rem solid #515151;
}
body.r-tas .rtas-box-04__map-list-item:first-child::before {
  border-radius: 0.375rem 0 0;
}
body.r-tas .rtas-box-04__map-list-item:last-child::before {
  top: 0;
  height: 0.875rem;
  border-top: 0;
  border-bottom: 0.0625rem solid #515151;
  border-radius: 0 0 0 0.375rem;
}
body.r-tas .rtas-box-04__map-list-item:not(:first-child) {
  margin-top: var(--gap);
}
body.r-tas .rtas-box-04__map-list-item:nth-last-child(2)::before {
  bottom: calc(-1 * var(--gap));
}
body.r-tas .rtas-box-04__map-list-item.--middle::after {
  position: absolute;
  top: 0.875rem;
  left: -2.5rem;
  width: 2.5rem;
  height: 0.0625rem;
  content: "";
  background: #515151;
}
body.r-tas .rtas-box-04__map-list-item-label {
  flex-shrink: 0;
  width: 5.625rem;
  height: 1.75rem;
  padding: 0.125rem;
  font-size: 0.875rem;
  color: #000;
  text-align: center;
  background-color: #fff;
  border: 0.0625rem solid #515151;
  border-radius: 0.875rem;
}
body.r-tas .rtas-box-04__map-list-item-label.--ls-lg {
  letter-spacing: 0.4em;
}
body.r-tas .rtas-box-04__map-list-item-cont {
  margin-top: 0.25rem;
  font-size: 0.8125rem;
  font-weight: 400;
  color: #000;
}
body.r-tas .rtas-section-02 {
  margin-top: 10.625rem;
}
body.r-tas .rtas-section-02 .c-heading-lv2 {
  margin-bottom: 1.25rem;
}
body.r-tas .rtas-section-02 .p-card-04 {
  max-width: 58.75rem;
  margin-top: 3.75rem;
  margin-right: auto;
  margin-left: auto;
}
body.r-tas .rtas-section-02 .p-card-04 + .p-card-04 {
  margin-top: 3.125rem;
}
body.r-tas .rtas-section-02__card {
  max-width: calc(50% + 31.25rem);
}
body.r-tas .rtas-section-02__card .p-card-04 {
  max-width: 58.75rem;
  margin-right: 0;
  margin-left: auto;
}
body.r-tas .rtas-section-03 {
  padding-top: 7rem;
  margin-top: 9.4375rem;
  border-top: 0.0625rem solid rgba(34, 34, 34, 0.25);
}
body.r-tas .rtas-section-03 .c-heading-lv2 {
  margin-bottom: 1.375rem;
}
body.r-tas .rtas-section-03 .p-card-05 {
  margin-top: 4.8125rem;
}

@media only screen and (max-width: 767px) {
  body.r-tas .rtas-box-01 {
    padding: 3.75rem 1.25rem 3.75rem 1.0625rem;
  }
  body.r-tas .rtas-box-01__head {
    flex-direction: column;
    padding: 1rem 1.125rem 1.4375rem;
    margin-left: 0.375rem;
    text-align: center;
  }
  body.r-tas .rtas-box-01__head-title {
    width: 100%;
    padding-right: 0;
    padding-bottom: 0.8125rem;
    margin-top: 0;
  }
  body.r-tas .rtas-box-01__head-title::after {
    top: unset;
    right: 0;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 0.0625rem;
    margin: 0;
    background: #898989;
    border-right: 0;
    transform: none;
  }
  body.r-tas .rtas-box-01__head-sub {
    padding: 0;
  }
  body.r-tas .rtas-box-01__head-sub-main {
    margin-top: 0.375rem;
    font-size: 1.0625rem;
  }
  body.r-tas .rtas-box-01__head-sub-main .highlight {
    display: inline-block;
    margin-right: 0;
    margin-bottom: -0.25rem;
    font-size: 1.375rem;
    background-position: left 83%;
    background-size: 100% 0.75rem;
  }
  body.r-tas .rtas-box-01__head-sub-main .highlight .num {
    margin-right: 0.125rem;
    margin-left: 0.125rem;
    font-size: 1.6875rem;
  }
  body.r-tas .rtas-box-01__head-sub-desc {
    margin: 0.625rem 0 0;
    margin-top: 0.5625rem;
    font-size: 0.8125rem;
    line-height: 1.4;
  }
  body.r-tas .rtas-box-01__diagram {
    margin-top: 2.375rem;
    margin-right: 0;
    margin-left: 0;
  }
  body.r-tas .rtas-box-02 {
    padding-right: 0.75rem;
    padding-bottom: 1.625rem;
    padding-left: 1.25rem;
  }
  body.r-tas .rtas-box-02__title {
    font-size: 1.25rem;
  }
  body.r-tas .rtas-box-02__case {
    margin-top: 2.1875rem;
  }
  body.r-tas .rtas-box-03 {
    padding: 2rem 1.25rem 1.125rem;
    margin-top: 4.875rem;
  }
  body.r-tas .rtas-box-03__head {
    max-width: 16.125rem;
    padding-bottom: 0.375rem;
  }
  body.r-tas .rtas-box-03__head.--arrow::before {
    width: 1.1875rem;
    aspect-ratio: 19/17;
    margin-bottom: 1rem;
    background: #121212;
  }
  body.r-tas .rtas-box-03__head-en {
    margin-right: 0.375rem;
    font-size: 1.1875rem;
  }
  body.r-tas .rtas-box-03__head-jp {
    font-size: 1.1875rem;
  }
  body.r-tas .rtas-box-03__cont {
    font-size: 1.3125rem;
  }
  body.r-tas .rtas-box-03__sub {
    max-width: 15rem;
    padding-left: 0;
    margin-top: 0.75rem;
    margin-right: auto;
    margin-left: auto;
    font-size: 0.875rem;
    line-height: 1.5;
    text-indent: 0;
  }
  body.r-tas .rtas-box-04 {
    padding: 2.1875rem 1.25rem 4.25rem;
    margin-top: 2.25rem;
  }
  body.r-tas .rtas-box-04__title {
    font-size: 1.0625rem;
    line-height: 1.6;
  }
  body.r-tas .rtas-box-04__map {
    flex-direction: column;
    margin-top: 1.625rem;
  }
  body.r-tas .rtas-box-04__map-left {
    flex-direction: column;
    gap: 0.1875rem;
    max-width: 6.5625rem;
  }
  body.r-tas .rtas-box-04__map-left-text {
    flex-direction: column-reverse;
    gap: 0.0625rem;
    align-items: center;
    justify-content: center;
    margin-bottom: -0.1875rem;
    letter-spacing: 0.4em;
    writing-mode: vertical-lr;
  }
  body.r-tas .rtas-box-04__map-left-text .com-icon {
    margin-top: 0;
    margin-right: 0;
    transform: rotate(90deg);
    --wrap-size: 1.375rem;
  }
  body.r-tas .rtas-box-04__map-left-item-text {
    font-size: 0.625rem;
  }
  body.r-tas .rtas-box-04__map-list {
    position: relative;
    display: flex;
    justify-content: space-between;
    width: 100%;
    --pl: 1.875rem;
  }
  body.r-tas .rtas-box-04__map-list::before {
    position: absolute;
    top: 0;
    right: 0.75rem;
    left: 0.75rem;
    height: var(--pl);
    content: "";
    border-top: 0.0625rem solid #515151;
    border-right: 0.0625rem solid #515151;
    border-left: 0.0625rem solid #515151;
    border-radius: 0.1875rem 0.1875rem 0 0;
  }
  body.r-tas .rtas-box-04__map-list-item {
    gap: 0.3125rem;
    align-items: center;
    width: 1.5625rem;
    padding-top: var(--pl);
    padding-left: 0;
    writing-mode: vertical-rl;
    text-orientation: upright;
  }
  body.r-tas .rtas-box-04__map-list-item:not(:first-child) {
    margin-top: 0;
  }
  body.r-tas .rtas-box-04__map-list-item:first-child::before, body.r-tas .rtas-box-04__map-list-item:last-child::before {
    display: none;
  }
  body.r-tas .rtas-box-04__map-list-item::before {
    top: 0;
    bottom: unset;
    left: 50%;
    width: 0.0625rem;
    height: var(--pl);
  }
  body.r-tas .rtas-box-04__map-list-item.--middle::after {
    content: none;
  }
  body.r-tas .rtas-box-04__map-list-item.--middle::before {
    height: calc(var(--pl) + 0.5rem);
    margin-top: -0.5rem;
  }
  body.r-tas .rtas-box-04__map-list-item-cont {
    margin-top: 0;
    font-size: 0.6875rem;
    letter-spacing: 0;
  }
  body.r-tas .rtas-box-04__map-list-item-label {
    display: block;
    width: auto;
    height: 5.125rem;
    writing-mode: vertical-rl;
  }
  body.r-tas .rtas-box-04__map-list-item-label.--ls-lg {
    letter-spacing: 0.2em;
  }
  body.r-tas .rtas-box-04__map-right {
    width: calc(100% - 1.5625rem);
    margin-top: 1.375rem;
    margin-left: 0;
  }
  body.r-tas .rtas-card-01 {
    flex-direction: column;
    gap: 5.0625rem;
  }
  body.r-tas .rtas-card-01__item {
    width: 100%;
  }
  body.r-tas .rtas-card-01__item:nth-child(2n+1) .rtas-card-01__img {
    position: static;
  }
  body.r-tas .rtas-card-01__item:nth-child(2n+1) .rtas-card-01__img::after {
    top: 100%;
    right: unset;
    left: 50%;
    width: 2.375rem;
    margin-top: 1.375rem;
    margin-left: 0.25rem;
    font-size: 0.8125rem;
    transform: translateX(-50%);
  }
  body.r-tas .rtas-card-01__head-label {
    gap: 0.125rem;
    padding: 0.1875rem 0.375rem 0.1875rem 0.6875rem;
    font-size: 0.875rem;
  }
  body.r-tas .rtas-card-01__head-label-sub {
    font-size: 0.5625rem;
  }
  body.r-tas .rtas-card-01__head-label-no {
    width: 1.125rem;
    margin-left: 0.25rem;
    font-size: 0.875rem;
  }
  body.r-tas .rtas-card-01__head-cont {
    margin-top: 0.5rem;
    margin-left: 0.25rem;
    font-size: 0.75rem;
  }
  body.r-tas .rtas-card-01__img {
    margin-top: 1.0625rem;
  }
  body.r-tas .rtas-case {
    flex-wrap: wrap;
    gap: 2.0625rem;
  }
  body.r-tas .rtas-case__item {
    width: 100%;
    min-height: 6.125rem;
  }
  body.r-tas .rtas-case__label {
    margin-top: 0.125rem;
  }
  body.r-tas .rtas-section-01__desc {
    font-size: 1.125rem;
  }
  body.r-tas .rtas-section-02 {
    margin-top: 5.3125rem;
  }
  body.r-tas .rtas-section-02 .p-card-04__title {
    flex-direction: column;
  }
  body.r-tas .rtas-section-03 {
    padding-top: 3.5rem;
    margin-top: 4.6875rem;
  }
}
@media all and (min-width: 768px), print {
  body.tax .l-footer {
    margin-top: 14rem;
  }
}
body.tax .tax-content__desc {
  font-size: 1.5rem;
  font-weight: bold;
  line-height: 1.5833333333;
}
body.tax .tax-content__diagram {
  margin-top: 4.25rem;
  text-align: center;
}
body.tax .tax-content__magazine {
  max-width: 71.6875rem;
}
body.tax .tax-content__magazine .swiper {
  overflow: visible;
}
@media all and (min-width: 768px), print {
  body.tax .tax-content__magazine .c-button {
    padding-left: 5rem;
  }
}

@media only screen and (max-width: 767px) {
  body.tax .tax-content__diagram img {
    width: 100%;
    max-width: 20.75rem;
  }
  body.tax .tax-content__desc {
    font-size: 0.875rem;
  }
  body.tax .tax-content__magazine-swiper-wrap {
    padding-top: 0.5rem;
    margin-right: -1.25rem;
    overflow: hidden;
  }
  body.tax .tax-content__magazine-swiper-wrap .swiper {
    width: 13.875rem;
    margin-left: 0;
  }
  body.tax .tax-content__magazine-swiper-wrap .p-swiper-control {
    margin-top: 2.375rem;
    margin-right: 1.25rem;
  }
}
@media all and (min-width: 768px), print {
  body.utilization .l-footer {
    margin-top: 16.125rem;
  }
}
body.utilization .p-anchor-list {
  margin-top: -0.625rem;
}
body.utilization .p-anchor-list__item:last-child {
  margin-right: 5.2%;
}
body.utilization .utilization-box-01 {
  margin-top: 4.8125rem;
}
body.utilization .utilization-box-01__head {
  font-size: 2.25rem;
  font-weight: bold;
  text-align: center;
}
body.utilization .utilization-box-01__head-label {
  display: inline-block;
  padding: 0 1.5625rem;
  margin-right: 0.75rem;
  margin-left: 0.75rem;
  font-family: "Syncopate", sans-serif;
  font-size: 2.25rem;
  font-weight: bold;
  color: #fff;
  letter-spacing: 0.12em;
  border-radius: 0.375rem;
}
body.utilization .utilization-box-01__head-label + .utilization-box-01__head-label {
  margin-left: 0;
}
body.utilization .utilization-box-01__head-label.--blue {
  background-color: #1d95d8;
}
body.utilization .utilization-box-01__head-label.--black {
  color: #d8d8d8;
  background-color: #121212;
}
body.utilization .utilization-box-01__head-sub {
  display: block;
  margin-top: 0.8125rem;
  font-size: 1rem;
  font-weight: 500;
}
body.utilization .utilization-box-01__frame {
  max-width: 60rem;
  padding: 2.6875rem 5.125rem;
  padding-right: 4.875rem;
  padding-bottom: 3.875rem;
  margin: 1.875rem auto;
  margin-bottom: 0;
  background-color: #fff;
  border: 0.0625rem solid rgba(0, 0, 0, 0.5);
  border-radius: 0.375rem;
}
body.utilization .utilization-box-01__qa + .utilization-box-01__qa {
  margin-top: 2.0625rem;
}
body.utilization .utilization-box-01__qa-inner {
  display: flex;
  gap: 1rem;
}
body.utilization .utilization-box-01__qa-q {
  flex-shrink: 0;
  width: 13.9375rem;
  font-family: "Syncopate", sans-serif;
  font-size: 0.625rem;
  font-weight: bold;
  color: #1d95d8;
}
body.utilization .utilization-box-01__qa-q .num {
  margin-left: 0.1875rem;
  font-size: 1.0625rem;
  letter-spacing: 0.16em;
}
body.utilization .utilization-box-01__qa-q .title {
  display: block;
  font-size: 1.4375rem;
  font-weight: bold;
  color: #121212;
}
body.utilization .utilization-box-01__qa-a {
  flex-grow: 1;
}
body.utilization .utilization-box-01__qa-col {
  display: flex;
  gap: 3%;
  align-items: flex-start;
  margin-top: 0.625rem;
}
body.utilization .utilization-box-01__qa-col-item {
  display: flex;
  flex-basis: 0;
  flex-grow: 1;
  align-items: center;
  justify-content: center;
  min-height: 3.4375rem;
  padding: 0.5rem;
  font-size: 1.125rem;
  font-weight: bold;
  text-align: center;
  background-color: #d8d8d8;
  border-radius: 0.375rem;
}
body.utilization .utilization-box-01__qa-col-item.is-active {
  position: relative;
  z-index: 1;
  color: #fff;
  background-color: #1d95d8;
}
body.utilization .utilization-box-01__qa-col-item.is-active::after {
  position: absolute;
  top: 100%;
  right: 0;
  left: 50%;
  z-index: -1;
  width: 1.75rem;
  aspect-ratio: 28/24;
  margin-top: -0.625rem;
  clip-path: polygon(0 0, 100% 0, 50% 100%);
  content: "";
  background-color: inherit;
  transform: translateX(-50%);
}
body.utilization .utilization-box-01__hr {
  height: 0.0625rem;
  margin-top: 3.75rem;
  margin-bottom: 2.5rem;
  background-color: rgba(34, 34, 34, 0.25);
  border: none;
}
body.utilization .utilization-box-01__title-01 {
  display: flex;
  gap: 0.625rem;
  align-items: center;
  justify-content: center;
  font-size: 1.4375rem;
  font-weight: bold;
  color: #1d95d8;
  text-align: center;
}
body.utilization .utilization-box-01__title-01 .com-icon.--pointer {
  --wrap-size: 2.1875rem;
  flex-shrink: 0;
  --icon-color: currentcolor;
}
body.utilization .utilization-box-01__box-link {
  position: relative;
  display: flex;
  align-items: center;
  padding: 1.25rem 3.75rem 1rem 2.3125rem;
  margin-top: 2.25rem;
  background: #f2f2f2;
  border: 0.0625rem solid rgba(153, 153, 153, 0.5);
  border-radius: 0.1875rem;
}
body.utilization .utilization-box-01__box-link .label {
  flex-shrink: 0;
  padding-right: 1.25rem;
  margin-right: 0.9375rem;
  font-size: 1.375rem;
  font-weight: bold;
  border-right: 0.0625rem solid #9b9b9b;
}
body.utilization .utilization-box-01__box-link .text {
  font-size: 0.875rem;
}
body.utilization .utilization-box-01__box-link .com-icon.--circle-arrow {
  --wrap-size: 1.375rem;
  position: absolute;
  top: 0;
  right: 1.4375rem;
  bottom: 0;
  margin: auto;
}
body.utilization .utilization-box-02 {
  padding: 2.5rem 2.75rem 4.5rem;
  background-color: #f4f4f4;
  border-radius: 0.375rem;
}
body.utilization .utilization-box-02__desc {
  margin-top: 0.5rem;
}
body.utilization .utilization-box-02__title {
  font-size: 1.375rem;
  font-weight: bold;
}
body.utilization .utilization-box-02__list {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 5.0284629981%;
  max-width: 65.875rem;
  margin-top: 5.75rem;
  margin-right: auto;
  margin-left: auto;
}
body.utilization .utilization-box-02__card-image {
  position: relative;
  max-width: 6.4375rem;
  margin: 0 auto;
}
body.utilization .utilization-box-02__card-image picture {
  display: block;
  background-color: #fff;
  border-radius: 50%;
}
body.utilization .utilization-box-02__card-image picture img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
}
body.utilization .utilization-box-02__card-image-txt {
  position: absolute;
  right: 0;
  bottom: 100%;
  left: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  margin-bottom: -0.8125rem;
  font-family: "Syncopate", sans-serif;
  font-weight: bold;
  color: #1d95d8;
  text-align: center;
}
body.utilization .utilization-box-02__card-image-txt .text {
  font-size: 0.625rem;
}
body.utilization .utilization-box-02__card-image-txt .num {
  font-size: 1.5rem;
}
body.utilization .utilization-box-02__card-image-txt .no {
  margin-top: 0;
  margin-top: -0.125rem;
  font-size: 1.5rem;
  line-height: 1;
}
body.utilization .utilization-box-02__card-cont {
  margin-top: 0.5rem;
}
body.utilization .utilization-box-02__card-title {
  font-size: 1.125rem;
  font-weight: bold;
  text-align: center;
}
body.utilization .utilization-box-02__card-title.--sm {
  font-size: 1.0625rem;
}
body.utilization .utilization-box-02__card-text {
  margin-top: 0.625rem;
  font-size: 0.875rem;
  font-weight: 500;
}
body.utilization .utilization-box-02__card-text.--lg-native {
  margin-right: -0.25rem;
  margin-left: -0.25rem;
}
body.utilization .utilization-frame-01 .p-flow-01 {
  max-width: 63.625rem;
  margin-top: 1rem;
  margin-left: 11.1%;
}
body.utilization .utilization-frame-01 .p-box {
  margin-top: 3.375rem;
}
body.utilization .utilization-frame-01 + .utilization-frame-01 {
  padding-top: 6.3125rem;
  margin-top: 7.5rem;
  border-top: 0.0625rem solid rgba(34, 34, 34, 0.25);
}
body.utilization .utilization-frame-01__head {
  font-size: 1.5625rem;
  font-weight: bold;
  text-align: center;
}
body.utilization .utilization-frame-01__head-text-01 {
  font-family: "Syncopate", sans-serif;
  font-size: 1.8125rem;
  font-weight: bold;
}
body.utilization .utilization-frame-01__head-sub {
  display: block;
  margin-top: -0.125rem;
  font-family: "Syncopate", sans-serif;
  font-size: 0.625rem;
  font-weight: 400;
  color: #666;
}
body.utilization .utilization-frame-01__head-text-02 {
  display: block;
  width: -moz-fit-content;
  width: fit-content;
  padding: 0.1875rem 4.75rem;
  margin: 0.375rem auto 0;
  font-size: 1.0625rem;
  font-weight: 500;
  color: #fff;
  letter-spacing: 0.26em;
  background-color: #121212;
  border-radius: 0.125rem;
}
body.utilization .utilization-frame-01__desc {
  margin-top: 2.1875rem;
  text-align: center;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 1rem;
  font-weight: 500;
  line-height: 1.75;
}
body.utilization .utilization-frame-01__desc.--mt-sm {
  margin-top: 1.5625rem;
}
body.utilization .utilization-frame-01__box {
  padding: 3.125rem 4.625rem 4.625rem;
  margin-top: 2.8125rem;
  background-color: #fff;
  border: 0.0625rem solid rgba(0, 0, 0, 0.5);
  border-radius: 0.375rem;
}
body.utilization .utilization-frame-01__box-title-01 {
  font-size: 1.375rem;
  font-weight: bold;
  text-align: center;
}
body.utilization .utilization-frame-01__box-title-02 {
  margin-top: 4.5rem;
  margin-bottom: 1.4375rem;
  font-size: 1.125rem;
  font-weight: bold;
  text-align: center;
}
body.utilization .utilization-frame-01.--rental .p-flow-01 {
  margin-top: 2.375rem;
}
body.utilization .utilization-frame-01.--business {
  padding-top: 7.5625rem;
  margin-top: 8.5rem;
}
body.utilization .utilization-frame-01.--business .p-flow-01 {
  padding-top: 1.75rem;
  padding-bottom: 2rem;
  margin-top: 2.625rem;
}
body.utilization .utilization-frame-01.--renovation {
  padding-top: 7.625rem;
  margin-top: 10.25rem;
}
body.utilization .utilization-frame-01.--renovation .p-flow-01 {
  padding-top: 1.75rem;
  padding-bottom: 2.125rem;
  margin-top: 2.75rem;
}
body.utilization .utilization-list-01 {
  display: flex;
  flex-wrap: wrap;
  gap: 3.7142857143%;
  margin-top: 1.8125rem;
}
body.utilization .utilization-list-01__item {
  display: flex;
  gap: 0.75rem;
  align-items: center;
  width: 30.8571428571%;
  padding: 1.3125rem 1.125rem 1.3125rem 0.75rem;
  background-color: #f4f4f4;
  border-radius: 0.25rem;
}
body.utilization .utilization-list-01__item-img {
  flex-shrink: 0;
  width: 3.5625rem;
  aspect-ratio: 1/1;
  background-color: #fff;
  border-radius: 50%;
}
body.utilization .utilization-list-01__item-img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
}
body.utilization .utilization-list-01__item-text {
  font-size: 0.875rem;
  font-weight: bold;
  line-height: 1.5714285714;
}
body.utilization .utilization-list-02 {
  counter-reset: count;
}
body.utilization .utilization-list-02__item {
  position: relative;
  padding: 1.4375rem 2.375rem 1.3125rem 12%;
  counter-increment: count;
  background: #f4f4f4;
  border-radius: 0.25rem;
}
body.utilization .utilization-list-02__item + .utilization-list-02__item {
  margin-top: 0.625rem;
}
body.utilization .utilization-list-02__item::before {
  position: absolute;
  top: 50%;
  left: 4.5%;
  font-family: "Syncopate", sans-serif;
  font-size: 1.125rem;
  font-weight: bold;
  color: #1d95d8;
  content: counter(count, decimal-leading-zero);
  transform: translateY(-50%);
}
body.utilization .utilization-list-02__item-title {
  font-size: 1rem;
  font-weight: bold;
}
body.utilization .utilization-list-02__item-text {
  margin-top: 0.1875rem;
  font-size: 0.875rem;
  line-height: 1.5714285714;
}
body.utilization .utilization-box-03 {
  padding: 3.125rem 1.25rem;
  padding-bottom: 5.75rem;
  border: 0.0625rem solid rgba(0, 0, 0, 0.5);
  border-radius: 0.375rem;
}
body.utilization .utilization-box-03__title {
  font-size: 1.375rem;
  font-weight: bold;
  text-align: center;
}
body.utilization .utilization-box-03__list {
  display: flex;
  flex-wrap: wrap;
  gap: 9.25rem 14.4268774704%;
  justify-content: center;
  max-width: 63.25rem;
  margin: 0 auto;
  margin-top: 3.875rem;
}
body.utilization .utilization-box-03__list-item {
  width: 42.7865612648%;
}
body.utilization .utilization-box-03__list-item-img {
  display: flex;
  align-items: flex-end;
  justify-content: center;
  text-align: center;
}
body.utilization .utilization-box-03__list-item-img.--h1 {
  min-height: 21rem;
}
body.utilization .utilization-box-03__list-item-title {
  margin-top: 2.5rem;
  font-size: 1.125rem;
  font-weight: bold;
  text-align: center;
}
body.utilization .utilization-box-03__list-item-title.--mt-sm {
  margin-top: 1.75rem;
}
body.utilization .utilization-box-03__list-item-text {
  margin-top: 0.875rem;
  font-size: 0.9375rem;
  line-height: 1.6;
}
body.utilization .utilization-buysell {
  margin-top: 15rem;
}
body.utilization .utilization-buysell .c-heading-lv4 {
  margin-bottom: 0.25rem;
}

@media only screen and (max-width: 767px) {
  body.utilization .utilization-box-01__head {
    font-size: 1.9375rem;
  }
  body.utilization .utilization-box-01__head-sub {
    margin-right: -0.1875rem;
  }
  body.utilization .utilization-box-01__head-label {
    display: inline-block;
    height: 2.6875rem;
    margin: 0.4375rem 0.3125rem 0.25rem;
    font-size: 1.9375rem;
  }
  body.utilization .utilization-box-01__head-label + .utilization-box-01__head-label {
    margin-right: 0;
  }
  body.utilization .utilization-box-01__qa:not(:first-child) {
    gap: 0.3125rem;
  }
  body.utilization .utilization-box-01__qa + .utilization-box-01__qa {
    padding-top: 0.9375rem;
    border-top: 0.0625rem solid rgba(0, 0, 0, 0.25);
  }
  body.utilization .utilization-box-01__qa-inner {
    flex-direction: column;
    gap: 0.75rem;
  }
  body.utilization .utilization-box-01__qa-q {
    font-size: 0.5rem;
  }
  body.utilization .utilization-box-01__qa-q .num {
    margin-left: 0.3125rem;
    font-size: 0.9375rem;
  }
  body.utilization .utilization-box-01__qa-q .title {
    font-size: 1.25rem;
  }
  body.utilization .utilization-box-01__qa-col {
    gap: 1.4375rem;
    margin-top: 0;
  }
  body.utilization .utilization-box-01__qa-col-item {
    min-height: 3.125rem;
    font-size: 0.9375rem;
  }
  body.utilization .utilization-box-01__title-01 {
    font-size: 1.0625rem;
  }
  body.utilization .utilization-box-01__box-link {
    flex-direction: column;
  }
  body.utilization .utilization-box-01__box-link .label {
    padding-right: 0;
    border-right: 0;
    border-bottom: 0.0625rem solid #9b9b9b;
  }
  body.utilization .utilization-box-01__frame {
    padding: 2.3125rem 1.375rem 2.9375rem;
    margin-top: 2.875rem;
    margin-right: -0.1875rem;
    margin-left: -0.125rem;
  }
  body.utilization .utilization-box-01__hr {
    margin-top: 2.5rem;
    margin-bottom: 2.1875rem;
  }
  body.utilization .utilization-box-01__title-01 {
    gap: 0.5rem;
    padding-left: 0.25rem;
  }
  body.utilization .utilization-box-01__title-01 .com-icon.--pointer {
    --wrap-size: 1.5625rem;
  }
  body.utilization .utilization-box-01__box-link {
    padding: 0.8125rem 1.375rem 0.9375rem 1.5rem;
    margin-top: 1.0625rem;
    border-radius: 0.375rem;
  }
  body.utilization .utilization-box-01__box-link .label {
    width: 100%;
    padding-bottom: 0.625rem;
    margin-right: 0;
    text-align: center;
  }
  body.utilization .utilization-box-01__box-link .text {
    margin-top: 0.875rem;
    line-height: 1.7142857143;
  }
  body.utilization .utilization-box-01__box-link .com-icon.--circle-arrow {
    position: relative;
    inset: unset;
    display: block;
    margin-top: -0.5rem;
    margin-right: 0;
    margin-right: -0.4375rem;
    margin-left: auto;
  }
  body.utilization .utilization-box-02 {
    padding: 2.5rem 1.5625rem 4.625rem;
  }
  body.utilization .utilization-box-02__list {
    grid-template-columns: minmax(0, 1fr);
    gap: 4.5625rem;
    margin-top: 5rem;
    margin-right: 0.5625rem;
    margin-left: 0.5rem;
  }
  body.utilization .utilization-box-02__card:nth-child(1) {
    margin-right: 0.0625rem;
    margin-left: 0.0625rem;
  }
  body.utilization .utilization-box-03 {
    padding: 3.375rem 0.3125rem;
    margin-right: -0.3125rem;
    margin-left: -0.3125rem;
  }
  body.utilization .utilization-box-03__list-item {
    width: 10;
    width: 100%;
  }
  body.utilization .utilization-box-03__list-item:first-child img {
    max-width: 20.125rem;
  }
  body.utilization .utilization-box-03__list-item:nth-child(3) img {
    max-width: 16.75rem;
  }
  body.utilization .utilization-box-03__list-item:nth-child(n+2) .utilization-box-03__list-item-title {
    margin-top: 1.875rem;
  }
  body.utilization .utilization-box-03__list {
    gap: 4.25rem;
    margin-top: 2.5rem;
  }
  body.utilization .utilization-box-03__list-item-img.--h1 {
    min-height: unset;
  }
  body.utilization .utilization-box-03__list-item-title {
    margin-top: 3.125rem;
  }
  body.utilization .utilization-box-03__list-item-text {
    margin-right: 1.3125rem;
    margin-left: 1.3125rem;
  }
  body.utilization .utilization-frame-01 .p-flow-01 {
    margin-top: 1.625rem;
    margin-left: 0;
  }
  body.utilization .utilization-frame-01__box {
    padding: 1.875rem 1.25rem;
  }
  body.utilization .utilization-list-01 {
    flex-direction: column;
    gap: 1rem;
  }
  body.utilization .utilization-list-01__item {
    gap: 0.5rem;
    width: 100%;
    padding: 0.75rem 0.5rem;
  }
  body.utilization .utilization-list-02__item {
    padding: 1.25rem 1.25rem 1.25rem 3.375rem;
  }
  body.utilization .utilization-list-02__item::before {
    top: 2.125rem;
    left: 0.625rem;
  }
  body.utilization .utilization-list-02__item-text {
    margin-top: 0.5rem;
  }
}
/* utility */
.u-asterisk {
  padding-left: 1em;
  text-indent: -1em;
}

@media all and (min-width: 768px), print {
  .u-hidden-pc {
    display: none;
  }
}
@media only screen and (max-width: 767px) {
  .u-hidden-sp {
    display: none;
  }
}
.u-mt-1 {
  margin-top: 0.5rem;
}

.u-mt-2 {
  margin-top: 1rem;
}

.u-mt-3 {
  margin-top: 1.5rem;
}

.u-mt-4 {
  margin-top: 2rem;
}

.u-mt-5 {
  margin-top: 2.5rem;
}

.u-mt-6 {
  margin-top: 3rem;
}

.u-mt-7 {
  margin-top: 3.5rem;
}

.u-mt-8 {
  margin-top: 4rem;
}

.u-mt-9 {
  margin-top: 4.5rem;
}

.u-mt-10 {
  margin-top: 5rem;
}

.u-mt-11 {
  margin-top: 5.5rem;
}

.u-mt-12 {
  margin-top: 6rem;
}

.u-mt-13 {
  margin-top: 6.5rem;
}

.u-mt-14 {
  margin-top: 7rem;
}

.u-mt-15 {
  margin-top: 7.5rem;
}

.u-mt-16 {
  margin-top: 8rem;
}

.u-mt-17 {
  margin-top: 8.5rem;
}

.u-mt-18 {
  margin-top: 9rem;
}

.u-mt-19 {
  margin-top: 9.5rem;
}

.u-mt-20 {
  margin-top: 10rem;
}

.u-mt-21 {
  margin-top: 10.5rem;
}

.u-mt-22 {
  margin-top: 11rem;
}

.u-mt-23 {
  margin-top: 11.5rem;
}

.u-mt-24 {
  margin-top: 12rem;
}

.u-mt-25 {
  margin-top: 12.5rem;
}

@media only screen and (max-width: 767px) {
  .u-mt-1-sp {
    margin-top: 0.5rem;
  }
  .u-mt-2-sp {
    margin-top: 1rem;
  }
  .u-mt-3-sp {
    margin-top: 1.5rem;
  }
  .u-mt-4-sp {
    margin-top: 2rem;
  }
  .u-mt-5-sp {
    margin-top: 2.5rem;
  }
  .u-mt-6-sp {
    margin-top: 3rem;
  }
  .u-mt-7-sp {
    margin-top: 3.5rem;
  }
  .u-mt-8-sp {
    margin-top: 4rem;
  }
  .u-mt-9-sp {
    margin-top: 4.5rem;
  }
  .u-mt-10-sp {
    margin-top: 5rem;
  }
  .u-mt-11-sp {
    margin-top: 5.5rem;
  }
  .u-mt-12-sp {
    margin-top: 6rem;
  }
  .u-mt-13-sp {
    margin-top: 6.5rem;
  }
  .u-mt-14-sp {
    margin-top: 7rem;
  }
  .u-mt-15-sp {
    margin-top: 7.5rem;
  }
  .u-mt-16-sp {
    margin-top: 8rem;
  }
  .u-mt-17-sp {
    margin-top: 8.5rem;
  }
  .u-mt-18-sp {
    margin-top: 9rem;
  }
  .u-mt-19-sp {
    margin-top: 9.5rem;
  }
  .u-mt-20-sp {
    margin-top: 10rem;
  }
  .u-mt-21-sp {
    margin-top: 10.5rem;
  }
  .u-mt-22-sp {
    margin-top: 11rem;
  }
  .u-mt-23-sp {
    margin-top: 11.5rem;
  }
  .u-mt-24-sp {
    margin-top: 12rem;
  }
  .u-mt-25-sp {
    margin-top: 12.5rem;
  }
}
@media (min-width: 1281px) and (hover: hover), print and (hover: hover) {
  .u-tel-link {
    pointer-events: none;
  }
}
.u-text-center {
  text-align: center;
}

.u-text-left {
  text-align: left;
}

.u-text-right {
  text-align: right;
}

@media all and (min-width: 768px), print {
  .u-text-center-pc {
    text-align: center;
  }
  .u-text-left-pc {
    text-align: left;
  }
  .u-text-right-pc {
    text-align: right;
  }
}
@media only screen and (max-width: 767px) {
  .u-text-center-sp {
    text-align: center;
  }
  .u-text-left-sp {
    text-align: left;
  }
  .u-text-right-sp {
    text-align: right;
  }
}