@charset "UTF-8";

*,
*::before,
*::after {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

ul,
ol {
  padding: 0;
}

body,
h1,
h2,
h3,
h4,
p,
ul,
ol,
figure,
blockquote,
dl,
dd {
  margin: 0;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-weight: 400;
}

body {
  line-height: 1.5;
  min-height: 100vh;
  text-rendering: optimizeSpeed;
}

ul {
  list-style: none;
}

a:not([class]) {
  -webkit-text-decoration-skip: ink;
  text-decoration-skip-ink: auto;
}

a {
  text-decoration: none;
}

img {
  display: block;
  width: 100%;
  max-width: 100%;
}

article > * + * {
  margin-top: 1em;
}

input,
button,
textarea,
select {
  font: inherit;
}

img:not([alt]) {
  -webkit-filter: blur(10px);
  filter: blur(10px);
}

input,
button,
select,
textarea {
  font: inherit;
  border: none;
  border-radius: 0;
  outline: none;
  background: transparent;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

textarea {
  resize: vertical;
}

input[type="checkbox"],
input[type="radio"] {
  display: none;
}

input[type="submit"],
input[type="button"],
label,
button,
select {
  cursor: pointer;
}

select::-ms-expand {
  display: none;
}

html {
  --font-scale: 1;
  font-size: calc(16px * var(--font-scale));
}

body {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  color: #292929;
  letter-spacing: 0.05em;
}

a[href^="tel:"] {
  pointer-events: auto;
}

a {
  -webkit-transition: opacity 0.3s;
  transition: opacity 0.3s;
}

iframe {
  vertical-align: bottom;
  width: 100%;
  height: auto;
}

img,
video {
  width: 100%;
  height: auto;
  -o-object-fit: cover;
  object-fit: cover;
}

.ie-warning {
  background-color: #ffcc00;
  color: #000;
  padding: 10px 20px;
  text-align: center;
  font-size: 16px;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 9999;
  -webkit-box-shadow: 0 2px 5px rgba(0, 0, 0, 0.2);
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.2);
}

.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

/* WordPress 管理バーを下方に移動 */

#wpadminbar {
  position: fixed;
  bottom: 0;
  top: auto;
  /* 上部からの固定を無効化 */
  z-index: 9999;
  /* 他の要素の上に表示 */
  visibility: hidden;
}

/* 管理バーがある場合のみ適用 */

body.admin-bar html {
  margin-top: 0 !important;
}

body.admin-bar {
  margin-bottom: 32px;
  /* 管理バーの高さ分の余白を追加 */
  margin-bottom: 0;
}

.splide__slide {
  -webkit-text-size-adjust: 100%;
}

.uppercase {
  text-transform: uppercase;
}

.js-fade-in {
  opacity: 0;
  -webkit-transform: translateY(30px);
  transform: translateY(30px);
  -webkit-transition: opacity 0.6s ease-out, -webkit-transform 0.6s ease-out;
  transition: opacity 0.6s ease-out, -webkit-transform 0.6s ease-out;
  transition: opacity 0.6s ease-out, transform 0.6s ease-out;
  transition: opacity 0.6s ease-out, transform 0.6s ease-out,
    -webkit-transform 0.6s ease-out;
}

.js-fade-in.is-visible {
  opacity: 1;
  -webkit-transform: translateY(0);
  transform: translateY(0);
}

.js-fade-in-delay {
  opacity: 0;
  -webkit-transform: translateY(30px);
  transform: translateY(30px);
  -webkit-transition: opacity 0.6s ease, -webkit-transform 0.6s ease;
  transition: opacity 0.6s ease, -webkit-transform 0.6s ease;
  transition: opacity 0.6s ease, transform 0.6s ease;
  transition: opacity 0.6s ease, transform 0.6s ease,
    -webkit-transform 0.6s ease;
  -webkit-transition-delay: 1.2s;
  transition-delay: 1.2s;
}

.js-fade-in-delay.is-visible {
  opacity: 1;
  -webkit-transform: translateY(0);
  transform: translateY(0);
}

.js-fade-in-delay-sp-pc {
  opacity: 0;
  -webkit-transform: translateY(30px);
  transform: translateY(30px);
  -webkit-transition: opacity 0.6s ease, -webkit-transform 0.6s ease;
  transition: opacity 0.6s ease, -webkit-transform 0.6s ease;
  transition: opacity 0.6s ease, transform 0.6s ease;
  transition: opacity 0.6s ease, transform 0.6s ease,
    -webkit-transform 0.6s ease;
}

.js-fade-in-delay-sp-pc.is-visible {
  opacity: 1;
  -webkit-transform: translateY(0);
  transform: translateY(0);
}

html.is-fixed,
body.is-fixed {
  position: fixed;
  width: 100%;
  overflow: hidden;
}

.inner {
  max-width: 650px;
  padding-inline: 0.9375rem;
  margin-inline: auto;
}

.block-section {
  padding: 1.25rem 0 9.6875rem;
}

.block-inner {
  max-width: 650px;
  padding-inline: 1.125rem;
  margin-inline: auto;
}

.block-container {
  padding: 1.5625rem 0.9375rem;
  border-radius: 1.25rem;
  background-color: #fff;
  outline: 0.625rem solid rgba(255, 255, 255, 0.17);
}

.block-container--sitemap {
  padding: 2.6875rem 1.75rem;
  border-radius: 1.25rem;
  background-color: #fff;
  outline: 0.625rem solid rgba(255, 255, 255, 0.17);
}

.hide-xl2 {
  display: block;
}

.hide-lg {
  display: block;
}

.show-lg {
  display: none;
}

.hide-md {
  display: block;
}

.show-md {
  display: none;
}

.lg-md-only {
  display: none;
}

.md-sm-none {
  display: none;
}

.hide-xl {
  display: block;
}

.hide-sm {
  display: block;
}

.hide-sp {
  display: block;
}

.header {
  width: 100%;
  position: relative;
  z-index: 1000;
  background-color: #fff;
}

.header--layer {
  opacity: 1 !important;
  visibility: visible !important;
  transform: translateY(0) !important;
}

.header__inner {
  padding: 0 0.8125rem 0 0.5rem;
  max-width: 100%;
}

.header__top {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  padding-top: 0.625rem;
  padding-bottom: 0.625rem;
}

.header__logo-link {
  display: block;
  width: 6.1875rem;
}

.header__controls {
  margin-left: auto;
}

.header__text-size {
  display: none;
}

.header__cta {
  width: 9.5rem;
  height: 2.25rem;
  padding-left: 0.6875rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-column-gap: 0.4375rem;
  -moz-column-gap: 0.4375rem;
  column-gap: 0.4375rem;
  font-size: 0.9375rem;
  font-weight: 700;
  line-height: 1.3333333333;
  letter-spacing: 0.08em;
  color: #fff;
  -webkit-transition: background 0.3s, color 0.3s, border 0.3s;
  transition: background 0.3s, color 0.3s, border 0.3s;
  border: 1px solid transparent;
  background: -webkit-gradient(
    linear,
    left top,
    right top,
    from(#ef9736),
    to(#e14c34)
  );
  background: linear-gradient(90deg, #ef9736 0%, #e14c34 100%);
  border-radius: 7.5rem;
}
.header__cta span {
  display: flex;
  flex-flow: column;
  line-height: 100%;
  align-items: center;
  margin-top: clamp(4px, calc(4px + 4.11 * ((100vw - 768px) / 519)), 6.85px);
}
.header__cta span small {
  font-size: clamp(
    8.136px,
    calc(8.136px + (14.67 - 8.136) * ((100vw - 414px) / (768 - 414))),
    14.67px
  );
}

.header__cta-arrow {
  position: relative;
  width: 1.0625rem;
}

.header__cta-arrow-image {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  width: 100%;
  height: auto;
  -webkit-transition: opacity 0.3s;
  transition: opacity 0.3s;
}

.header__cta-arrow-image--hover {
  opacity: 0;
}

.header-nav {
  display: none;
}

.header-nav__link::after {
  display: none;
}

.windows .header-nav__link {
  -webkit-transition: color 0.3s;
  transition: color 0.3s;
}

.header-nav__item.is-open .header-nav__dropdown {
  opacity: 1;
  visibility: visible;
  -webkit-transform: translateY(0);
  transform: translateY(0);
}

.windows .header-nav__dropdown-link {
  -webkit-transition: color 0.3s;
  transition: color 0.3s;
}

.header-nav__dropdown-link-arrow {
  width: clamp(12.8px, calc(12.8px + 3.2 * ((100vw - 768px) / 519)), 16px);
}

/* ==========================================
    アニメーション
   ========================================== */

.header {
  opacity: 0;
  -webkit-transform: translateY(-30px);
  transform: translateY(-30px);
  -webkit-transition: opacity 0.8s ease, -webkit-transform 0.8s ease;
  transition: opacity 0.8s ease, -webkit-transform 0.8s ease;
  transition: opacity 0.8s ease, transform 0.8s ease;
  transition: opacity 0.8s ease, transform 0.8s ease,
    -webkit-transform 0.8s ease;
}

.header.is-visible {
  opacity: 1;
  -webkit-transform: translateY(0);
  transform: translateY(0);
}

/* ハンバーガー */

.hamburger {
  display: block;
  background: none;
  border: none;
  cursor: pointer;
  position: relative;
  z-index: 20;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  margin-left: 0.25rem;
  padding-top: 0.8125rem;
  top: -0.125rem;
}

.hamburger-box,
.hamburger-inner {
  display: block;
  width: 1.5rem;
  height: 0.125rem;
  background-color: #f7613b;
  position: relative;
  border-radius: 0.625rem;
}

.hamburger-inner::before,
.hamburger-inner::after {
  content: "";
  display: block;
  width: 1.5rem;
  height: 0.125rem;
  border-radius: 0.625rem;
  background-color: #f7613b;
  position: absolute;
  left: 0;
  -webkit-transition: -webkit-transform 0.3s;
  transition: -webkit-transform 0.3s;
  transition: transform 0.3s;
  transition: transform 0.3s, -webkit-transform 0.3s;
}

.hamburger-inner::before {
  top: -0.5rem;
}

.hamburger-inner::after {
  bottom: -0.5rem;
}

.hamburger[aria-expanded="true"] .hamburger-box,
.hamburger[aria-expanded="true"] .hamburger-inner {
  background-color: transparent;
  top: 0.0625rem;
}

.hamburger[aria-expanded="true"] .hamburger-inner::before {
  -webkit-transform: translateY(0.5rem) rotate(45deg);
  transform: translateY(0.5rem) rotate(45deg);
}

.hamburger[aria-expanded="true"] .hamburger-inner::after {
  -webkit-transform: translateY(-0.5rem) rotate(-45deg);
  transform: translateY(-0.5rem) rotate(-45deg);
}

.hamburger-text {
  font-size: 0.5rem;
  font-weight: 900;
  line-height: 1;
  letter-spacing: -0.06em;
  color: #f7613b;
  margin-top: 0.875rem;
}

/* ドロワー */

.drawer {
  position: fixed;
  top: 3.4375rem;
  left: 0;
  width: 100%;
  height: 100svh;
  max-height: 100svh;
  visibility: hidden;
  opacity: 0;
  -webkit-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
  background: -webkit-gradient(
    linear,
    left top,
    left bottom,
    from(#ffa605),
    color-stop(39.9%, #f06229),
    to(#f44217)
  );
  background: linear-gradient(180deg, #ffa605 0%, #f06229 39.9%, #f44217 100%);
  z-index: 1000;
  overflow-y: scroll;
  visibility: hidden;
  opacity: 0;
  -webkit-transform: translateX(-100%);
  transform: translateX(-100%);
  -webkit-transition: opacity 0.3s ease, visibility 0.3s ease,
    -webkit-transform 0.3s ease;
  transition: opacity 0.3s ease, visibility 0.3s ease,
    -webkit-transform 0.3s ease;
  transition: transform 0.3s ease, opacity 0.3s ease, visibility 0.3s ease;
  transition: transform 0.3s ease, opacity 0.3s ease, visibility 0.3s ease,
    -webkit-transform 0.3s ease;
}

.drawer--open {
  visibility: visible;
  opacity: 1;
  -webkit-transform: translateX(0);
  transform: translateX(0);
  -webkit-transition: opacity 0.3s ease, visibility 0.3s ease,
    -webkit-transform 0.3s ease;
  transition: opacity 0.3s ease, visibility 0.3s ease,
    -webkit-transform 0.3s ease;
  transition: transform 0.3s ease, opacity 0.3s ease, visibility 0.3s ease;
  transition: transform 0.3s ease, opacity 0.3s ease, visibility 0.3s ease,
    -webkit-transform 0.3s ease;
}

.drawer__content {
  position: relative;
  width: 100%;
  min-height: 42.625rem;
  padding: 1rem 2.0625rem 1.055rem 2.25rem;
  opacity: 0;
}

.drawer--open .drawer__content {
  -webkit-transition-delay: 0.1s;
  transition-delay: 0.1s;
  opacity: 1;
}

.drawer__item {
  border-top: 1px solid rgba(255, 255, 255, 0.3);
}

.drawer__link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-column-gap: 0.4525rem;
  -moz-column-gap: 0.4525rem;
  column-gap: 0.4525rem;
  padding-block: 1.34375rem;
  font-size: 1.03375rem;
  font-weight: 700;
  line-height: 1.2091898428;
  letter-spacing: 0.14em;
  color: #fff;
}

.drawer__item:first-child {
  border-top: none;
}

.drawer__link-arrow {
  width: 1.03375rem;
}

.footer {
  padding: 3.4375rem 0 4.125rem;
  background-color: #f6f3f1;
  position: relative;
  z-index: 100;
}

.footer__inner {
  padding-inline: 1.4375rem;
}

.footer__section-top {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  row-gap: 2.96375rem;
  margin-left: 0.9375rem;
  color: #2b2b2b;
}

.footer__logo-link {
  display: block;
  width: 7.3125rem;
}

.footer__company {
  margin-top: 0.5rem;
  font-size: 0.91875rem;
  line-height: 1.619047619;
  letter-spacing: 0.07em;
  margin-left: 0.25rem;
}

.footer__address {
  margin-top: 0.9375rem;
  font-size: 0.66875rem;
  line-height: 1.9439252336;
  letter-spacing: 0.11em;
  margin-left: 0.375rem;
  font-style: normal;
}

.footer__columns {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-column-gap: 0.6875rem;
  -moz-column-gap: 0.6875rem;
  column-gap: 0.6875rem;
  row-gap: 1.75rem;
}

.footer__column {
  width: 47.5%;
}

.footer__heading {
  font-size: 0.879375rem;
  font-weight: 700;
  line-height: 1.2082444918;
  letter-spacing: 0.04em;
  color: #2b2b2b;
}

.footer__list {
  margin-top: 1.3125rem;
}

.footer__item + .footer__item {
  margin-top: 0.625rem;
}

.footer__link {
  display: block;
  font-size: 0.769375rem;
  font-weight: 400;
  line-height: 1.2266450041;
  letter-spacing: 0;
  color: #2b2b2b;
  -webkit-transition: color 0.3s;
  transition: color 0.3s;
}

.footer__link--pdf {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-column-gap: 0.1875rem;
  -moz-column-gap: 0.1875rem;
  column-gap: 0.1875rem;
}

.footer__link-pdf {
  width: 0.9375rem;
  -webkit-transition: opacity 0.3s;
  transition: opacity 0.3s;
}

.footer__section-middle {
  margin-top: 1.75rem;
}

.footer__banners {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  row-gap: 1.263125rem;
  -webkit-column-gap: 0.638125rem;
  -moz-column-gap: 0.638125rem;
  column-gap: 0.638125rem;
}

.footer__banner-link {
  display: block;
  width: 12.595rem;
}

.footer__partners {
  margin-top: 1.6675rem;
}

.footer__partners-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  row-gap: 0.638125rem;
  -webkit-column-gap: 0.425rem;
  -moz-column-gap: 0.425rem;
  column-gap: 0.425rem;
}

.footer__partners-link {
  display: block;
}

.footer__partners-item:first-child .footer__partners-link {
  width: 5.691875rem;
}

.footer__partners-item:nth-child(2) .footer__partners-link {
  width: 6.889375rem;
}

.footer__partners-item:nth-child(3) .footer__partners-link {
  width: 6.875rem;
}

.footer__partners-item:nth-child(4) .footer__partners-link {
  width: 5.3925rem;
}

.footer__partners-item:nth-child(n + 4) .footer__partners-link {
  width: 5.625rem;
}

.footer__section-bottom {
  margin-top: 3.01875rem;
}

.footer__copyright {
  font-size: 0.5625rem;
  font-weight: 300;
  line-height: 1.2;
  letter-spacing: 0.04em;
  color: #2b2b2b;
  text-align: center;
}

.text-marquee {
  margin-top: -1.25rem;
  width: 100%;
  overflow: hidden;
  position: relative;
  z-index: 0;
}

.text-marquee--sub-page02 {
  z-index: 1;
  margin-bottom: -12.5rem;
}

.text-marquee__inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  -webkit-animation: marquee-loop 20s linear infinite;
  animation: marquee-loop 20s linear infinite;
}

.text-marquee__inner--sub-main {
  -webkit-animation: marquee-loop 25s linear infinite;
  animation: marquee-loop 25s linear infinite;
}

@-webkit-keyframes marquee-loop {
  0% {
    -webkit-transform: translateX(0%);
    transform: translateX(0%);
  }

  100% {
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
  }
}

@keyframes marquee-loop {
  0% {
    -webkit-transform: translateX(0%);
    transform: translateX(0%);
  }

  100% {
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
  }
}

.text-marquee__text {
  margin-top: -1.875rem;
  font-family: "Lexend Giga", sans-serif;
  font-size: 9.605rem;
  font-weight: 600;
  letter-spacing: -0.05em;
  white-space: nowrap;
  padding-inline: 1.25rem;
  color: rgba(255, 255, 255, 0.09);
  line-height: 1;
  text-transform: uppercase;
}

.text-marquee__inner--02 {
  -webkit-animation: marquee-loop 40s linear infinite;
  animation: marquee-loop 40s linear infinite;
}

.text-marquee__text--02 {
  font-size: 24.8675rem;
  letter-spacing: -0.1em;
  padding-bottom: 1.875rem;
}

.text-marquee--sub-main {
  position: absolute;
  bottom: -1.875rem;
  left: 0;
  z-index: -1;
}

.text-marquee__text--sub-main {
  font-size: 5.37375rem;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.01em;
}

/* ==========================================
    トップページ
   ========================================== */

.bg-gradation {
  position: relative;
}

.bg-gradation--top {
  opacity: 0;
  -webkit-transition: opacity 0.3s ease-in-out;
  transition: opacity 0.3s ease-in-out;
}

.bg-gradation--top.is-visible {
  opacity: 1;
}

.bg-gradation::before {
  position: absolute;
  content: "";
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  z-index: 0;
  background-image: url("../img/pic-sp-gradation.png");
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
}

.bg-gradation02 {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 125rem;
}

/* ==========================================
    下層ページ
   ========================================== */

.bg-gradation-block {
  position: relative;
}

.bg-gradation-block::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: -webkit-gradient(
    linear,
    left top,
    left bottom,
    from(#ffa605),
    color-stop(39.9%, #f06229),
    to(#f44217)
  );
  background: linear-gradient(180deg, #ffa605 0%, #f06229 39.9%, #f44217 100%);
  z-index: -1;
}

.bg-gradation-block {
  opacity: 0;
  -webkit-transition-delay: 0.5s;
  transition-delay: 0.5s;
  -webkit-transform: translateY(30px);
  transform: translateY(30px);
  -webkit-transition: opacity 0.8s ease, -webkit-transform 0.8s ease;
  transition: opacity 0.8s ease, -webkit-transform 0.8s ease;
  transition: opacity 0.8s ease, transform 0.8s ease;
  transition: opacity 0.8s ease, transform 0.8s ease,
    -webkit-transform 0.8s ease;
}

.bg-gradation-block.is-visible {
  opacity: 1;
  -webkit-transform: translateY(0);
  transform: translateY(0);
}

/* ==========================================
    私たちについて
   ========================================== */

.bg-gradation03 {
  position: relative;
  padding-bottom: 3.12875rem;
}

.bg-gradation03 {
  opacity: 0;
  -webkit-transform: translateY(30px);
  transform: translateY(30px);
  -webkit-transition: opacity 0.5s ease-in-out;
  transition: opacity 0.5s ease-in-out;
}

.bg-gradation03.is-visible {
  opacity: 1;
  -webkit-transform: translateY(0);
  transform: translateY(0);
}

.bg-gradation03::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-image: url("../img/pic-sp-page-gradation.png");
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center bottom;
  z-index: -1;
}

.bg-gradation04 {
  position: relative;
}

.bg-gradation04::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-image: url("../img/pic-sp-vision-bg.png");
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center top;
  z-index: -1;
}

.bg-gradation-news {
  position: relative;
}

.bg-gradation-news::before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-image: url("../img/pic-sp-news-gradation.png");
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center top;
  z-index: -1;
  height: 28.125rem;
}

.bg-gradation-column {
  position: relative;
}

.bg-gradation-column::before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-image: url("../img/pic-sp-recommend-gradation.png");
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center top;
  z-index: -1;
}

.bg-gradation03--single {
  position: relative;
  padding-bottom: 6.75rem;
}

.bg-gradation03--single::before {
  background-image: url("../img/pic-sp-single-gradation.png");
  background-position: center bottom;
}

.bg-gradation03--not-found {
  padding-bottom: 0;
}

.section-heading {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  -webkit-column-gap: 0.76125rem;
  -moz-column-gap: 0.76125rem;
  column-gap: 0.76125rem;
  padding-left: 0.52rem;
}

.section-heading--small {
  padding-left: 0.8125rem;
}

.section-heading--recommend {
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-column-gap: 0.77875rem;
  -moz-column-gap: 0.77875rem;
  column-gap: 0.77875rem;
}

.section-heading--small2 {
  padding-left: 1.3125rem;
}

.section-heading__title {
  font-size: 1.77875rem;
  font-weight: 900;
  line-height: 1.1946591708;
  letter-spacing: 0.11em;
  color: #fff;
}

.section-heading__title--recommend {
  font-size: 1.638125rem;
  line-height: 1.1827546738;
}

.section-heading__title--small {
  font-size: 1.66625rem;
  line-height: 1.200300075;
  letter-spacing: 0.11em;
}

.section-heading__title--small2 {
  font-size: 1.5575rem;
  line-height: 1.2038523274;
}

.section-heading__title--black {
  color: #292929;
}

.section-heading__title .small {
  font-size: 1.55125rem;
  font-weight: 900;
  line-height: 1.2;
  letter-spacing: -0.05em;
  display: block;
}

.section-heading__title .small2 {
  font-size: 1.26375rem;
  line-height: 1.1869436202;
  display: block;
  padding-bottom: 0.249375rem;
}

.section-heading__title .small3 {
  font-size: 1.180625rem;
  line-height: 1.2175754367;
  display: block;
  padding-bottom: 0.364375rem;
}

.section-heading__right {
  margin-top: 1.75rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  -webkit-column-gap: 0.670625rem;
  -moz-column-gap: 0.670625rem;
  column-gap: 0.670625rem;
}

.section-heading__right--small {
  margin-top: 1.39625rem;
}

.section-heading__right--recommend {
  margin-top: 0;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  -webkit-column-gap: 0.82375rem;
  -moz-column-gap: 0.82375rem;
  column-gap: 0.82375rem;
}

.section-heading__icon {
  width: 2.675625rem;
}

.section-heading__icon--recommend {
  width: 3.19375rem;
}

.section-heading__label {
  margin-top: 1.110625rem;
  font-size: 0.729375rem;
  font-weight: 400;
  line-height: 1.1996572408;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: #fff;
}

.section-heading__label--small {
  font-size: 0.683125rem;
  line-height: 1.1893870082;
}

.section-heading__label--small2 {
  font-size: 0.683125rem;
  line-height: 1.1893870082;
}

.section-heading__label--black {
  color: #292929;
}

.section-heading__label--recommend {
  margin-top: 1.30875rem;
  font-size: 0.799375rem;
  line-height: 1.1727912432;
}

.bread {
  padding-top: 0.9375rem;
  width: 9.069375rem;
  height: 1.964375rem;
  color: transparent;
}

.mv-labels {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-column-gap: 0.62rem;
  -moz-column-gap: 0.62rem;
  column-gap: 0.62rem;
  padding: 0.625rem 1.25rem 0.625rem 1.25rem;
  background-color: #ee5e3f;
}

.mv-labels__label--left {
  font-size: 0.9625rem;
  font-weight: 900;
  line-height: 1.3441558442;
  letter-spacing: 0.05em;
  color: #ee5e3f;
  display: grid;
  place-items: center;
  width: 8.8175rem;
  height: 1.75rem;
  background-color: #fff;
  border-radius: 0.201875rem;
}

.mv-labels__label--right {
  font-size: 1.26875rem;
  font-weight: 900;
  line-height: 1;
  letter-spacing: 0.09em;
  color: #fff;
  display: block;
}

.safari .mv-labels__label--right {
  font-size: 1.1875rem;
}

.product-card__image-wrapper {
  width: 23.625rem;
  margin-inline: auto;
  border-radius: 1.033125rem;
  border: 0.55px solid #fff;
  overflow: hidden;
}

.product-card__image {
  aspect-ratio: 378/223.71;
}

.product-card__body {
  margin-top: 1.425rem;
  margin-left: 0.125rem;
}

.product-card__eyebrow {
  font-size: 0.791875rem;
  font-weight: 900;
  line-height: 1.183898974;
  letter-spacing: 0.05em;
  color: #fff;
  padding: 0.6625rem 0.86625rem 0.66625rem 0.914375rem;
  border: 1.47px solid #fff;
  border-radius: 2.978125rem;
  display: block;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}

.product-card__label {
  margin-top: 1.09625rem;
  font-size: 0.70125rem;
  font-weight: 500;
  line-height: 1.1586452763;
  letter-spacing: 0.17em;
  color: #f4e732;
  margin-left: 0.645625rem;
  display: block;
}

.product-card__title {
  margin-top: 0.3875rem;
  font-size: 1.896875rem;
  font-weight: 900;
  line-height: 1.1861614498;
  letter-spacing: 0.08em;
  color: #fff;
  margin-left: 0.5rem;
}

.product-card__text {
  margin-top: 0.659375rem;
  font-size: 0.970625rem;
  font-weight: 300;
  line-height: 1.6419832582;
  letter-spacing: 0.03em;
  color: #fff;
  margin-left: 0.651875rem;
}

.product-card__text--featured {
  font-weight: 400;
}

.product-card__button-detail {
  margin-top: 1.421875rem;
  margin-left: 0.6475rem;
}

.button-detail {
  padding-bottom: 0.66875rem;
  border-bottom: 1.35px solid #fff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-column-gap: 0.37375rem;
  -moz-column-gap: 0.37375rem;
  column-gap: 0.37375rem;
  padding-inline: 0.28rem;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}

.button-detail--black {
  border-color: #292929;
}

.button-detail--large {
  padding-bottom: 0.75rem;
  -webkit-column-gap: 0.5075rem;
  -moz-column-gap: 0.5075rem;
  column-gap: 0.5075rem;
  border-width: 1.69px;
  padding-inline: 0.35125rem;
  margin-left: 0.1875rem;
}

.button-detail__text {
  font-size: 0.956875rem;
  font-weight: 700;
  line-height: 1.1757021555;
  letter-spacing: 0.06em;
  color: #fff;
}

.button-detail__text--large {
  font-size: 1.200625rem;
  line-height: 1.1972930765;
}

.button-detail__text--black {
  color: #292929;
}

.button-detail__icon {
  width: 1.065rem;
  -webkit-transition: -webkit-transform 0.3s;
  transition: -webkit-transform 0.3s;
  transition: transform 0.3s;
  transition: transform 0.3s, -webkit-transform 0.3s;
}

.button-detail__icon--large {
  width: 1.33625rem;
}

.button-detail:focus {
  opacity: 1;
}

.button-detail:focus .button-detail__icon {
  -webkit-transform: translateX(10px);
  transform: translateX(10px);
}

.news-list {
  display: grid;
  grid-template-columns: 1fr;
  row-gap: 0.625rem;
}

.news-list__link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  padding: 1.485625rem 1.924375rem 1.383125rem 1.80375rem;
  background-color: #f6f3f1;
  border-radius: 2.006875rem;
  -webkit-transition: background-color 0.3s;
  transition: background-color 0.3s;
  border: 0.8px solid #000;
  row-gap: 1.085625rem;
}

.news-list__link--white {
  background-color: #fff;
}

.news-list__meta {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  width: 100%;
}

.news-list__date {
  font-size: 0.9675rem;
  font-weight: 700;
  line-height: 1.2273901809;
  letter-spacing: 0;
  color: #292929;
}

.news-list__category {
  padding: 0.328125rem 0.73875rem 0.33625rem 0.6975rem;
  background-color: #292929;
  border-radius: 0.205rem;
  font-size: 0.664375rem;
  font-weight: 700;
  line-height: 1.222953904;
  letter-spacing: 0;
  color: #fff;
  margin-left: 0.430625rem;
}

.news-list__title {
  font-size: 0.906875rem;
  font-weight: 700;
  line-height: 1.8263266713;
  letter-spacing: 0;
  color: #292929;
}

.news-list__title a {
  color: #292929;
  text-decoration: underline;
}

.news-list__link:focus {
  opacity: 1;
  background-color: #fff;
}

.news-list__link--white:focus {
  background-color: #f6f3f1;
}

.news-list__link.news-list__link--no-link:focus {
  background-color: #f6f3f1;
}

.news-list__link--white.news-list__link.news-list__link--no-link:focus {
  background-color: #fff;
}

.column-list {
  display: grid;
  grid-template-columns: 1fr;
  row-gap: 1.25rem;
}

.column-list--archive {
  row-gap: 0;
}

.column-list__item--archive:not(:first-child) {
  padding-top: 27px;
}

.column-list__item--archive {
  padding-bottom: 24.83px;
  border-bottom: 1px solid rgba(0, 0, 0, 0.1);
}

.column-list__card-link {
  display: block;
}

.column-list__card-link--archive {
  border-radius: 1.025rem;
}

.column-list__image-wrapper {
  width: 100%;
  border-radius: 1.025rem;
  overflow: hidden;
  -webkit-transition: opacity 0.3s;
  transition: opacity 0.3s;
}

.column-list__image {
  aspect-ratio: 375/221.94;
}

.column-list__category-wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 0.625rem;
  margin: 0.9375rem 0.75rem 0 0.49875rem;
}

.column-list__category-wrapper--top,
.column-list__category-wrapper--recommend {
  margin-top: 0.625rem;
}

.column-list__category {
  padding: 0.05rem 0.5rem;
  border-radius: 0.25rem;
  background-color: #f64b20;
  font-size: 0.77125rem;
  color: #fff;
  line-height: 2;
  letter-spacing: 0.1em;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}

.column-list__category--top,
.column-list__category--recommend {
  background-color: #f7613b;
  color: #fff;
}

.column-list__title {
  margin-top: 1.1175rem;
  font-size: 1.186875rem;
  font-weight: 700;
  line-height: 1.700895208;
  letter-spacing: 0.04em;
  color: #fff;
  padding: 0 0.628125rem 0 0.6175rem;
  display: -webkit-box;
  overflow: hidden;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
}

.column-list__title--top,
.column-list__title--recommend {
  margin-top: 0.5rem;
}

.column-list__title--archive {
  color: #222;
  margin-top: 0.625rem;
}

.column-list__meta {
  margin-top: 0.98375rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  padding: 0 0.75rem 0 0.49875rem;
}

.column-list__author {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-column-gap: 0.6525rem;
  -moz-column-gap: 0.6525rem;
  column-gap: 0.6525rem;
}

.column-list__author-image-wrapper {
  width: 2.78875rem;
  border-radius: 50%;
  overflow: hidden;
}

.column-list__author-name {
  font-size: 0.77125rem;
  font-weight: 400;
  line-height: 1.4862236629;
  letter-spacing: 0.05em;
  color: #fff;
}

.column-list__author-name--archive {
  color: #222;
}

.column-list__date {
  font-size: 0.77125rem;
  font-weight: 400;
  line-height: 1.2520259319;
  letter-spacing: 0.05em;
  color: #fff;
  margin-right: 0.25rem;
}

.column-list__date--archive {
  color: #222;
}

.page-heading__meta {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-column-gap: 0.390625rem;
  -moz-column-gap: 0.390625rem;
  column-gap: 0.390625rem;
}

.page-heading__icon {
  width: 1.501875rem;
}

.page-heading__label {
  font-size: 0.738125rem;
  font-weight: 500;
  line-height: 0.9398814564;
  letter-spacing: 0.09em;
  color: #f15a25;
  text-transform: uppercase;
}

.page-heading__title {
  margin-top: 0.623125rem;
  font-size: 1.56375rem;
  font-weight: 700;
  line-height: 1.1990407674;
  letter-spacing: 0;
  color: #222;
}

.about-page__fv,
.news-page__fv,
.column-page__fv {
  margin-top: 1.785625rem;
}

.page-fv__inner {
  padding-inline: 1.375rem;
}

.page-fv__heading {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-column-gap: 0.75375rem;
  -moz-column-gap: 0.75375rem;
  column-gap: 0.75375rem;
}

.page-fv__heading--news {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin-inline: auto;
}

.page-fv__heading--not-found {
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  margin-top: 1.875rem;
}

.page-fv__heading-title {
  font-size: 1.790625rem;
  font-weight: 900;
  line-height: 1.1867364747;
  letter-spacing: 0.11em;
  color: #fff;
}

.safari .page-fv__heading-title {
  font-size: 1.6875rem;
}

.page-fv__heading-title--not-found {
  font-family: "Lexend Giga", sans-serif;
  font-weight: 700;
  line-height: 0.6940063091;
  letter-spacing: -0.01em;
  color: #fff;
  font-size: 9.375rem;
  text-align: center;
}

.page-fv__heading-right {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-column-gap: 0.71375rem;
  -moz-column-gap: 0.71375rem;
  column-gap: 0.71375rem;
}

.page-fv__heading-icon {
  width: 2.93375rem;
}

.page-fv__heading-label {
  font-size: 0.734375rem;
  font-weight: 400;
  line-height: 1.1914893617;
  letter-spacing: 0.18em;
  color: #fff;
  text-transform: uppercase;
}

.page-fv__description {
  margin-top: 1.25rem;
  font-size: 0.875rem;
  letter-spacing: 0.1em;
  color: #fff;
  text-align: left;
}

.page-fv__inner--single {
  padding: 0 1.875rem 0 3.9375rem;
  position: relative;
}

.page-fv__heading-title--single {
  font-size: 1.875rem;
  font-weight: 700;
  line-height: 1.4;
  letter-spacing: 0.05em;
}

/* ==========================================
    アニメーション
   ========================================== */

.page-fv {
  opacity: 0;
  -webkit-transform: translateY(30px);
  transform: translateY(30px);
  -webkit-transition: opacity 0.8s ease, -webkit-transform 0.8s ease;
  transition: opacity 0.8s ease, -webkit-transform 0.8s ease;
  transition: opacity 0.8s ease, transform 0.8s ease;
  transition: opacity 0.8s ease, transform 0.8s ease,
    -webkit-transform 0.8s ease;
}

.page-fv.is-visible {
  opacity: 1;
  -webkit-transform: translateY(0);
  transform: translateY(0);
}

.recommend-columns {
  padding: 84.83px 0 50px;
}

.recommend-columns__list {
  margin-top: 29.05px;
}

/* ───────────────────────────────────────────────
   カスタムページネーション
─────────────────────────────────────────────── */

.custom-pagination {
  text-align: center;
  margin-top: 3.125rem;
}

.custom-pagination__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-column-gap: 1rem;
  -moz-column-gap: 1rem;
  column-gap: 1rem;
}

.custom-pagination__item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}

/* 矢印も数字も同じベーススタイル */

.pagination__link {
  display: inline-block;
  font-size: 1.28625rem;
  font-weight: 700;
  line-height: 1.4577259475;
  letter-spacing: 0.05em;
  color: #f64b20;
  -webkit-transition: color 0.3s, background-color 0.3s;
  transition: color 0.3s, background-color 0.3s;
  border-radius: 50%;
}

/* 現在ページだけサークル + 白文字 */

.pagination__link.current,
.custom-pagination__item.is-current .pagination__link {
  background-color: #f64b20;
  color: #fff;
  width: 2.480625rem;
  height: 2.480625rem;
  display: grid;
  place-items: center;
}

.pagination__link.dots {
  font-size: 1.28625rem;
  line-height: 1.2147716229;
}

.pagination__link img {
  width: 1.151875rem;
}

.breadcrumbsWrap {
  padding-top: 0.9375rem;
}

.breadcrumbsWrap:has(.breadcrumbs--s-column) {
  padding-top: 1.625rem;
}

.breadcrumbs {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-column-gap: 0.625rem;
  -moz-column-gap: 0.625rem;
  column-gap: 0.625rem;
  -webkit-box-align: end;
  -ms-flex-align: end;
  align-items: flex-end;
  font-size: 0.69125rem;
  font-weight: 700;
  line-height: 1.6274864376;
  letter-spacing: 0.09em;
  color: #fff;
  margin-inline: auto;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  padding-inline: 1.5625rem;
  max-width: 650px;
}

.breadcrumbs--s-column {
  max-width: 650px;
  padding: 0 1.875rem 0 3.9375rem;
}

.breadcrumbs .home,
.breadcrumbs a {
  font-size: 0.69125rem;
  font-weight: 700;
  line-height: 1.6274864376;
  letter-spacing: 0.09em;
  color: #fff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
  -ms-flex-align: end;
  align-items: flex-end;
  -webkit-column-gap: 0.303125rem;
  -moz-column-gap: 0.303125rem;
  column-gap: 0.303125rem;
}

.breadcrumbs .breadcrumbs-icon {
  width: 0.939375rem;
  position: relative;
  top: -0.1875rem;
}

.breadcrumbs .breadcrumb-arrow {
  width: 0.255625rem;
  position: relative;
  top: -0.3125rem;
}

/* ==========================================
    MV
   ========================================== */

.mv {
  position: relative;
  width: 100%;
  height: 100%;
  overflow: hidden;
  z-index: 1;
  opacity: 0;
  -webkit-transition: opacity 0.3s ease-in-out;
  transition: opacity 0.3s ease-in-out;
}

.mv.is-visible {
  opacity: 1;
}

.mv__labels {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-column-gap: 0.62rem;
  -moz-column-gap: 0.62rem;
  column-gap: 0.62rem;
  padding: 0.625rem 1.25rem 0.625rem 1.25rem;
  background-color: #ee5e3f;
}

.mv__labels--pc {
  display: none;
}

.mv__label--left {
  font-size: 0.9625rem;
  font-weight: 900;
  line-height: 1.3441558442;
  letter-spacing: 0.05em;
  color: #ee5e3f;
  display: grid;
  place-items: center;
  width: 8.8175rem;
  height: 1.75rem;
  background-color: #fff;
  border-radius: 0.201875rem;
}

.mv__label--right {
  font-size: 1.26875rem;
  font-weight: 900;
  line-height: 1;
  letter-spacing: 0.09em;
  color: #fff;
  display: block;
}

.mv__image-wrapper {
  position: relative;
  top: 0;
  left: 0;
  width: 100%;
  height: 28.7425rem;
}

.mv__image {
  aspect-ratio: 414/459.88;
}

.mv__left {
  position: absolute;
  bottom: 4.984375rem;
  left: 1.466875rem;
}

.mv__title {
  font-size: 2.2625rem;
  font-weight: 700;
  line-height: 1.5939226519;
  letter-spacing: 0.03em;
  color: #fff;
  text-shadow: 0px 0px 1.04996875rem rgba(0, 0, 0, 0.25);
}

.mv__cta {
  position: absolute;
  bottom: 0;
  left: 0;
}

.mv__cta-banner {
  -webkit-transition: opacity 0.3s;
  transition: opacity 0.3s;
}

/* ==========================================
    愛ある保険商品一覧
   ========================================== */

.products {
  margin-top: -4.0625rem;
  position: relative;
  z-index: 1;
}

.products__inner {
  padding-inline: 1.125rem;
}

.products__list {
  margin-top: 1.468125rem;
  display: grid;
  grid-template-columns: 1fr;
  row-gap: 3.125rem;
}

/* ==========================================
    アイアル少額短期保険について
   ========================================== */

.about {
  margin-top: -16.25rem;
  padding-bottom: 3.9375rem;
  position: relative;
  z-index: 1;
}

.about__inner {
  padding-inline: 0.625rem;
  position: relative;
}

.about__image-wrapper {
  width: 100%;
  border-radius: 0.690625rem;
  overflow: hidden;
  position: relative;
}

.about__image {
  aspect-ratio: 395/298;
}

.about__content {
  margin-top: -4.1875rem;
  padding-left: 1.1875rem;
  position: relative;
  z-index: 1;
}

.about__catchphrase {
  font-size: 2.79875rem;
  font-weight: 900;
  line-height: 1.1;
  letter-spacing: 0.03em;
  color: #df370e;
}

.about__catchphrase .small {
  display: block;
  font-size: 2.265rem;
  margin-bottom: 0.5rem;
}

.about__title {
  margin-top: 1.1875rem;
  font-size: 1.25625rem;
  font-weight: 900;
  line-height: 1.75;
  letter-spacing: 0.05em;
  padding-left: 0.1875rem;
}

.about__text {
  margin-top: 0.625rem;
  font-size: 0.935625rem;
  font-weight: 500;
  line-height: 2.004008016;
  letter-spacing: 0.03em;
  padding: 0 1.1875rem 0 0.25rem;
}

.about__button-detail {
  margin-top: 1.1875rem;
}

/* ==========================================
    愛あるお知らせ
   ========================================== */

.news {
  position: relative;
  z-index: 1;
}

.news__inner {
  padding-inline: 0.6875rem;
  position: relative;
}

.news__container {
  padding: 2.875rem 1.25rem 2.875rem 1.125rem;
  border-radius: 3.7975rem;
  background-color: #f6f3f1;
}

.news__list {
  margin-top: 2.355rem;
}

.news__button-detail {
  margin-top: 1.875rem;
  margin-inline: auto;
}

.news__vertical-wrapper {
  position: absolute;
  top: 50%;
  left: 0.1875rem;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  -webkit-writing-mode: vertical-rl;
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
}

.news__vertical-text {
  font-size: 0.829375rem;
  font-weight: 400;
  line-height: 1.2057272042;
  letter-spacing: 0.32em;
  text-transform: uppercase;
}

/* ==========================================
    愛ある保健情報コラム
   ========================================== */

.column {
  padding: 4.3125rem 0 1.875rem;
  position: relative;
}

.column__inner {
  padding-inline: 1.1875rem;
  position: relative;
  z-index: 1;
}

.column__list {
  margin-top: 1.8175rem;
}

.column__button-detail {
  margin-top: 3.125rem;
  margin-inline: auto;
}

/* ==========================================
    アニメーション
   ========================================== */

/* MV 全体フェードイン */

.mv {
  opacity: 0;
  -webkit-transition: opacity 1s ease;
  transition: opacity 1s ease;
}

.mv.is-visible {
  opacity: 1;
}

/* ラベルとタイトルのみ個別アニメーション */

.mv__labels,
.mv__title {
  opacity: 0;
  -webkit-transform: translateY(30px);
  transform: translateY(30px);
  -webkit-transition: opacity 1s ease, -webkit-transform 1s ease;
  transition: opacity 1s ease, -webkit-transform 1s ease;
  transition: opacity 1s ease, transform 1s ease;
  transition: opacity 1s ease, transform 1s ease, -webkit-transform 1s ease;
}

/* MVがis-visibleになったときにアニメーション発火 */

.mv.is-visible .mv__labels {
  -webkit-transition-delay: 0.3s;
  transition-delay: 0.3s;
  opacity: 1;
  -webkit-transform: translateY(0);
  transform: translateY(0);
}

.mv.is-visible .mv__title {
  -webkit-transition-delay: 0.6s;
  transition-delay: 0.6s;
  opacity: 1;
  -webkit-transform: translateY(0);
  transform: translateY(0);
}

/* CTAボタンも同様に */

.mv__cta {
  opacity: 0;
  -webkit-transform: translateY(30px);
  transform: translateY(30px);
  -webkit-transition: opacity 1s ease, -webkit-transform 1s ease;
  transition: opacity 1s ease, -webkit-transform 1s ease;
  transition: opacity 1s ease, transform 1s ease;
  transition: opacity 1s ease, transform 1s ease, -webkit-transform 1s ease;
}

.mv.is-visible .mv__cta {
  -webkit-transition-delay: 0.9s;
  transition-delay: 0.9s;
  opacity: 1;
  -webkit-transform: translateY(0);
  transform: translateY(0);
}

/* 詳細度を上げて、hoverを確実に反映 */

.products__item {
  opacity: 0;
  -webkit-transform: translateY(40px);
  transform: translateY(40px);
  -webkit-transition: opacity 0.8s ease-out, -webkit-transform 0.8s ease-out;
  transition: opacity 0.8s ease-out, -webkit-transform 0.8s ease-out;
  transition: opacity 0.8s ease-out, transform 0.8s ease-out;
  transition: opacity 0.8s ease-out, transform 0.8s ease-out,
    -webkit-transform 0.8s ease-out;
}

.products__item.is-visible {
  opacity: 1;
  -webkit-transform: translateY(0);
  transform: translateY(0);
}

.products__item:nth-child(1) {
  -webkit-transition-delay: 0s;
  transition-delay: 0s;
}

.products__item:nth-child(2) {
  -webkit-transition-delay: 0.1s;
  transition-delay: 0.1s;
}

.products__item:nth-child(3) {
  -webkit-transition-delay: 0.2s;
  transition-delay: 0.2s;
}

.products__item:nth-child(4) {
  -webkit-transition-delay: 0.3s;
  transition-delay: 0.3s;
}

.about__image-wrapper,
.about__content {
  opacity: 0;
  -webkit-transform: translateY(40px);
  transform: translateY(40px);
  -webkit-transition: opacity 0.8s ease-out, -webkit-transform 0.8s ease-out;
  transition: opacity 0.8s ease-out, -webkit-transform 0.8s ease-out;
  transition: opacity 0.8s ease-out, transform 0.8s ease-out;
  transition: opacity 0.8s ease-out, transform 0.8s ease-out,
    -webkit-transform 0.8s ease-out;
}

.about__image-wrapper.is-visible,
.about__content.is-visible {
  opacity: 1;
  -webkit-transform: translateY(0);
  transform: translateY(0);
}

.news__contents {
  opacity: 0;
  -webkit-transform: translateY(40px);
  transform: translateY(40px);
  -webkit-transition: opacity 0.8s ease-out, -webkit-transform 0.8s ease-out;
  transition: opacity 0.8s ease-out, -webkit-transform 0.8s ease-out;
  transition: opacity 0.8s ease-out, transform 0.8s ease-out;
  transition: opacity 0.8s ease-out, transform 0.8s ease-out,
    -webkit-transform 0.8s ease-out;
}

.news__contents.is-visible {
  opacity: 1;
  -webkit-transform: translateY(0);
  transform: translateY(0);
}

.news-list__item {
  opacity: 0;
  -webkit-transform: translateY(30px);
  transform: translateY(30px);
  -webkit-transition: opacity 0.6s ease-out, -webkit-transform 0.6s ease-out;
  transition: opacity 0.6s ease-out, -webkit-transform 0.6s ease-out;
  transition: opacity 0.6s ease-out, transform 0.6s ease-out;
  transition: opacity 0.6s ease-out, transform 0.6s ease-out,
    -webkit-transform 0.6s ease-out;
}

.news-list__item.is-visible {
  opacity: 1;
  -webkit-transform: translateY(0);
  transform: translateY(0);
}

.column-list__item {
  opacity: 0;
  -webkit-transform: translateY(30px);
  transform: translateY(30px);
  -webkit-transition: opacity 0.6s ease-out, -webkit-transform 0.6s ease-out;
  transition: opacity 0.6s ease-out, -webkit-transform 0.6s ease-out;
  transition: opacity 0.6s ease-out, transform 0.6s ease-out;
  transition: opacity 0.6s ease-out, transform 0.6s ease-out,
    -webkit-transform 0.6s ease-out;
}

.column-list__item.is-visible {
  opacity: 1;
  -webkit-transform: translateY(0);
  transform: translateY(0);
}

.mv-labels--layer {
  opacity: 0;
  -webkit-transform: translateY(30px);
  transform: translateY(30px);
  -webkit-transition: opacity 0.8s ease, -webkit-transform 0.8s ease;
  transition: opacity 0.8s ease, -webkit-transform 0.8s ease;
  transition: opacity 0.8s ease, transform 0.8s ease;
  transition: opacity 0.8s ease, transform 0.8s ease,
    -webkit-transform 0.8s ease;
}

.mv-labels--layer.is-visible {
  opacity: 1;
  -webkit-transform: translateY(0);
  transform: translateY(0);
}

.sitemap {
  padding: 2.473125rem 0 9.6875rem;
}

.sitemap__columns {
  margin-top: 2.625rem;
}

.sitemap__column + .sitemap__column {
  margin-top: 1.5625rem;
}

.sitemap__column-heading {
  font-size: 1.105625rem;
  font-weight: 700;
  line-height: 1.1871113624;
  letter-spacing: 0.07em;
  padding-bottom: 0.375rem;
  border-bottom: 1px solid #000;
  display: block;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  -webkit-transition: color 0.3s, border-color 0.3s;
  transition: color 0.3s, border-color 0.3s;
}

.sitemap__column-heading-link {
  color: #222;
  -webkit-transition: color 0.3s;
  transition: color 0.3s;
}

.sitemap__list {
  margin-top: 1.25rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-column-gap: 1.3475rem;
  -moz-column-gap: 1.3475rem;
  column-gap: 1.3475rem;
  row-gap: 1.10875rem;
}

.sitemap__link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-column-gap: 0.47875rem;
  -moz-column-gap: 0.47875rem;
  column-gap: 0.47875rem;
  font-size: 0.9575rem;
  font-weight: 700;
  line-height: 1.1749347258;
  letter-spacing: 0.07em;
  color: #222;
  -webkit-transition: color 0.3s;
  transition: color 0.3s;
  position: relative;
}

.sitemap__link-arrow {
  width: 0.85125rem;
  -webkit-transition: -webkit-transform 0.3s;
  transition: -webkit-transform 0.3s;
  transition: transform 0.3s;
  transition: transform 0.3s, -webkit-transform 0.3s;
}

.sitemap__link-pdf {
  width: 0.9375rem;
  -webkit-transition: opacity 0.3s;
  transition: opacity 0.3s;
}

.sitemap__column-heading:has(.sitemap__column-heading-link):focus {
  opacity: 1;
  color: #f86f52;
  border-color: #f86f52;
}

.sitemap__column-heading-link:focus {
  color: #f86f52;
}

.sitemap__link:focus {
  opacity: 1;
  color: #f86f52;
}

.sitemap__link:focus .sitemap__link-arrow {
  -webkit-transform: translateX(0.21875rem);
  transform: translateX(0.21875rem);
}

.sitemap__link:focus .sitemap__link-pdf {
  opacity: 0.7;
}

.text-marquee--block {
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
}

.text-marquee--block02 {
  position: absolute;
  bottom: -3.75rem;
  left: 0;
  z-index: -1;
}

.about-promise {
  margin-top: -1rem;
  padding-bottom: 2.87rem;
}

.about-promise__inner {
  padding-inline: 2.1875rem;
}

.about-promise__image-wrapper {
  width: 15.4rem;
  margin-inline: auto;
  border-radius: 0.9725rem;
  overflow: hidden;
}

.about-promise__image {
  aspect-ratio: 246.4/346;
}

.about-promise__content {
  margin-top: 2.875rem;
}

.about-promise__title {
  font-size: 1.526875rem;
  font-weight: 800;
  line-height: 1.37;
  letter-spacing: 0.08em;
  position: relative;
}

.about-promise__highlight {
  color: #df370e;
  margin-left: -0.915625rem;
  margin-top: 0.248125rem;
  display: inline-block;
}

.about-promise__title .kerning {
  letter-spacing: -0.31em;
}

.about-promise__title-decoration {
  position: absolute;
  bottom: -1.314375rem;
  left: -1.875rem;
  width: 6.25rem;
}

.about-promise__paragraph {
  margin-top: 1.564375rem;
  font-weight: 400;
  font-size: 0.875rem;
  line-height: 2.05;
  letter-spacing: 0.04em;
}

.promise__signature {
  margin-top: 0.734375rem;
  font-size: 0.6625rem;
  font-weight: 300;
  line-height: 2.13;
  letter-spacing: 0.04em;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  text-align: right;
  margin-left: auto;
  margin-right: 0.6925rem;
}

.promise__signature .mt {
  display: block;
  margin-top: -0.1875rem;
}

/* ==========================================
    メニュー
   ========================================== */

.about-menu {
  position: relative;
  z-index: 7;
}

.about-menu__inner {
  padding-inline: 1.9375rem;
}

.about-menu__list {
  display: grid;
  grid-template-columns: repeat(1, 1fr);
  row-gap: 0.5rem;
}

.about-menu__link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  background-color: #f44317;
  padding: 1.75rem 1.375rem 1.75rem 2rem;
  border-radius: 0.25rem;
  font-size: 1.25rem;
  font-weight: 900;
  line-height: 1.2;
  letter-spacing: 0.17em;
  color: #fff;
  -webkit-transition: background-color 0.3s;
  transition: background-color 0.3s;
}

.about-menu__icon {
  width: 1.5675rem;
  -webkit-transition: -webkit-transform 0.3s;
  transition: -webkit-transform 0.3s;
  transition: transform 0.3s;
  transition: transform 0.3s, -webkit-transform 0.3s;
}

.about-menu__link:focus {
  opacity: 1;
  background-color: #f86f52;
}

.about-menu__link:focus .about-menu__icon {
  -webkit-transform: translateX(10px);
  transform: translateX(10px);
}

/* ==========================================
    アイアル少額短期保険の3つの特徴
   ========================================== */

.about-strengths {
  padding: 4.125rem 0 8.4375rem;
  position: relative;
  z-index: 5;
}

.about-strengths__wrapper {
  overflow: hidden;
}

.about-strengths__inner {
  padding-inline: 3.4375rem;
}

.about-section-heading {
  text-align: center;
}

.about-section-heading__meta {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-column-gap: 0.529375rem;
  -moz-column-gap: 0.529375rem;
  column-gap: 0.529375rem;
  margin-left: -0.75rem;
}

.about-section-heading__icon {
  width: 2.034375rem;
}

.about-section-heading__label {
  font-size: 1rem;
  font-weight: 400;
  line-height: 0.94375;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: #f15a25;
}

.about-section-heading__title {
  margin-top: 0.96625rem;
  font-size: 1.249375rem;
  font-weight: 900;
  line-height: 1.3206603302;
  letter-spacing: 0.11em;
}

.about-section-heading__title .large {
  display: block;
  margin-top: 0.430625rem;
  font-size: 2.77875rem;
  font-weight: 900;
  line-height: 1.192082771;
  letter-spacing: 0.11em;
  color: #f44317;
}

.about-strengths__list {
  margin-top: 3.19375rem;
}

.about-strengths__item {
  position: relative;
}

.about-strengths__item + .about-strengths__item {
  margin-top: 3.19375rem;
}

.about-strengths__image-wrapper {
  width: 22.711875rem;
  margin-left: calc(50% - 50vw);
  position: relative;
}

.about-strengths__image-wrapper::after {
  content: "";
  position: absolute;
  top: 0.288125rem;
  left: 0;
  width: 23rem;
  height: 100%;
  background-color: #f44317;
  z-index: -1;
}

.about-strengths__image-wrapper--reverse {
  margin-left: 0;
  margin-right: calc(50% - 50vw);
}

.about-strengths__image-wrapper--reverse::after {
  left: auto;
  left: initial;
  right: 0;
}

.about-strengths__image {
  aspect-ratio: 368/228.91;
}

.about-strengths__content {
  margin-top: 1.505625rem;
  position: relative;
}

.about-strengths__title {
  font-size: 1.4625rem;
  font-weight: 900;
  line-height: 1.64;
  letter-spacing: 0.16em;
}

.about-strengths__title .orange {
  color: #f44317;
}

.about-strengths__text {
  margin-top: 0.875rem;
  font-size: 0.883125rem;
  font-weight: 400;
  line-height: 2;
  letter-spacing: 0.06em;
}

.about-strengths__number {
  position: absolute;
  top: -1.375rem;
  right: -3.4375rem;
  font-family: "Lexend Giga", sans-serif;
  font-size: 9.064375rem;
  font-weight: 800;
  line-height: 1;
  background: linear-gradient(92.06deg, #fb9210 0%, #ee2e00 100.17%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  text-fill-color: transparent;
  opacity: 0.13;
}

.about-strengths__top-text {
  position: absolute;
  top: -1rem;
  left: 0;
  font-size: 5.80375rem;
  font-family: "Lexend Giga", sans-serif;
  font-weight: 900;
  line-height: 1;
  letter-spacing: -0.05em;
  text-transform: uppercase;
  background: linear-gradient(90.95deg, #fb9210 0%, #ee2e00 45.1%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  text-fill-color: transparent;
  opacity: 0.04;
  z-index: 5;
}

/* ==========================================
    アイアル少額短期保険株式会社の経営理念
   ========================================== */

.about-vision {
  padding: 4.5625rem 0 1.385rem;
}

.about-vision__inner {
  padding-inline: 0.8125rem;
  position: relative;
  z-index: 1;
}

.about-section-heading__meta--about-vision {
  -webkit-column-gap: 0.4375rem;
  -moz-column-gap: 0.4375rem;
  column-gap: 0.4375rem;
  margin-left: 0.3125rem;
}

.about-section-heading__icon--about-vision {
  width: 1.680625rem;
}

.about-section-heading__label--about-vision {
  font-size: 0.82625rem;
  line-height: 0.9379727685;
  color: #fff;
}

.about-section-heading__title--about-vision {
  margin-top: 1.381875rem;
  font-size: 2.13875rem;
  font-weight: 900;
  line-height: 1.39;
  letter-spacing: 0.13em;
  color: #fff;
}

.about-section-heading__title--about-vision .small {
  display: block;
  margin-bottom: 0.284375rem;
  font-size: 1.41rem;
  letter-spacing: 0.11em;
}

.safari .about-section-heading__title--about-vision .small {
  font-size: 1.3125rem;
}

.about-vision__image-wrapper {
  margin-top: 2.2775rem;
  width: 24.25rem;
  border-radius: 0.67375rem;
  overflow: hidden;
}

.about-vision__image {
  aspect-ratio: 388/217.45;
}

.about-vision__statement {
  margin-top: -6.528125rem;
  margin-left: 0.625rem;
  font-size: 1.473125rem;
  font-weight: 900;
  line-height: 1.8;
  letter-spacing: 0.18em;
  color: #fff;
}

.about-vision__features {
  margin-top: 2.56875rem;
  position: relative;
}

.about-vision__mascot {
  position: absolute;
  top: -5.625rem;
  right: 0;
  width: 7.5rem;
  z-index: 1;
  display: none;
}

.about-vision__list {
  margin-left: 1.8125rem;
}

.about-vision__item + .about-vision__item {
  margin-top: 1.06625rem;
}

.about-vision__number {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-column-gap: 0.964375rem;
  -moz-column-gap: 0.964375rem;
  column-gap: 0.964375rem;
  font-size: 0.964375rem;
  font-weight: 400;
  line-height: 0.939727803;
  letter-spacing: 0.18em;
  color: #ffa089;
}

.about-vision__number-heart {
  width: 1.96125rem;
}

.about-vision__text {
  margin-top: 0.59125rem;
  margin-left: 0.28375rem;
  font-size: 0.964375rem;
  font-weight: 700;
  line-height: 1.68;
  letter-spacing: 0.08em;
  color: #fff;
  width: 20.59125rem;
}

.text-marquee--about-vision {
  position: absolute;
  top: 31.25rem;
  left: 0;
}

.text-marquee__text--about-vision {
  font-family: "Lexend Giga", sans-serif;
  font-size: 9.605rem;
  font-weight: 600;
  letter-spacing: -0.05em;
  white-space: nowrap;
  padding-inline: 1.25rem;
  color: rgba(255, 255, 255, 0.09);
  line-height: 1;
  text-transform: uppercase;
  background: linear-gradient(90.95deg, #fcb863 0%, #ff8467 97.6%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  text-fill-color: transparent;
  mix-blend-mode: lighten;
  opacity: 0.21;
  z-index: -1;
}

/* ==========================================
    会社概要
   ========================================== */

.about-overview {
  padding: 1.875rem 0 4.375rem;
}

.about-overview__inner {
  max-width: 670px;
  padding-inline: 1.375rem;
}

.about-overview__container {
  padding: 2.658125rem 1.9375rem 3.125rem;
  background-color: #f6f3f1;
  border-radius: 4.283125rem;
  position: relative;
}

.about-section-heading__meta--about-overview {
  -webkit-column-gap: 0.346875rem;
  -moz-column-gap: 0.346875rem;
  column-gap: 0.346875rem;
}

.about-section-heading__icon--about-overview {
  width: 1.33375rem;
}

.about-section-heading__label--about-overview {
  font-size: 0.655625rem;
  line-height: 0.9437559581;
  color: #292929;
}

.about-section-heading__title--about-overview {
  margin-top: 0.7875rem;
  font-size: 1.6675rem;
  line-height: 1.1994002999;
}

.about-overview__list {
  margin-top: 0.720625rem;
}

.about-overview__item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  row-gap: 0.4375rem;
  padding-top: 1.25rem;
  padding-bottom: 0.9375rem;
  position: relative;
}

.about-overview__item::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 0.125rem;
  background: -webkit-gradient(
    linear,
    left top,
    right top,
    from(#f44317),
    color-stop(22.72%, #f44317),
    color-stop(22.72%, #d8d8d8),
    to(#d8d8d8)
  );
  background: linear-gradient(
    to right,
    #f44317 0%,
    #f44317 22.72%,
    #d8d8d8 22.72%,
    #d8d8d8 100%
  );
}

.about-overview__term {
  font-size: 0.95rem;
  font-weight: 900;
  line-height: 1.1842105263;
  letter-spacing: 0.11em;
  color: #f44317;
}

.about-overview__definition {
  font-size: 0.8875rem;
  font-weight: 700;
  line-height: 1.1971830986;
  letter-spacing: 0.11em;
  color: #292929;
}

.about-overview__definition--address {
  line-height: 1.58;
  font-size: 0.825rem;
}

.about-overview__access-item {
  padding-left: 1.1em;
  text-indent: -1.2em;
  font-size: 0.825rem;
  line-height: 1.58;
}

.about-overview__map-wrapper {
  margin-top: 0.9375rem;
  width: 85%;
}

.about-overview__map-wrapper iframe {
  aspect-ratio: 342.9/189.9;
}

.about-overview__vertical {
  position: absolute;
  top: 50%;
  left: 0.4375rem;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  -webkit-writing-mode: vertical-rl;
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
}

.about-overview__vertical-text {
  font-size: 0.516875rem;
  font-weight: 400;
  line-height: 1.2091898428;
  letter-spacing: 0.32em;
  color: #292929;
  text-transform: uppercase;
}

/* ==========================================
    アニメーション
   ========================================== */

.about-promise__image-wrapper,
.about-promise__content {
  opacity: 0;
  -webkit-transform: translateY(30px);
  transform: translateY(30px);
  -webkit-transition: opacity 0.6s ease-out, -webkit-transform 0.6s ease-out;
  transition: opacity 0.6s ease-out, -webkit-transform 0.6s ease-out;
  transition: opacity 0.6s ease-out, transform 0.6s ease-out;
  transition: opacity 0.6s ease-out, transform 0.6s ease-out,
    -webkit-transform 0.6s ease-out;
  -webkit-transition-delay: 1s;
  transition-delay: 1s;
}

.about-promise__image-wrapper.is-visible,
.about-promise__content.is-visible {
  opacity: 1;
  -webkit-transform: translateY(0);
  transform: translateY(0);
}

/* ==========================================
    決算公告ページ
   ========================================== */

.ir {
  padding-top: 1.25rem;
}

.ir-results {
  margin-top: 1.25rem;
  margin-left: 0.1875rem;
}

.ir-pdf__link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-column-gap: 0.625rem;
  -moz-column-gap: 0.625rem;
  column-gap: 0.625rem;
  border-bottom: 1px solid #bdbdbd;
  color: #222;
  -webkit-transition: color 0.3s;
  transition: color 0.3s;
  padding: 0.625rem 0.9375rem 0.625rem 0;
}

.ir-pdf__text {
  font-size: 1rem;
  line-height: 1.1875;
  letter-spacing: 0.03em;
  font-weight: 500;
  margin-left: 0.125rem;
}

.ir-pdf__icon {
  width: 1rem;
  -webkit-transition: opacity 0.3s;
  transition: opacity 0.3s;
}

.disclosures {
  margin-top: 3.125rem;
  padding-bottom: 3.125rem;
}

.disclosures__description {
  margin-top: 1.875rem;
  font-size: 1rem;
  line-height: 1.6;
  letter-spacing: 0.05em;
  margin-left: 0.1875rem;
}

.disclosures-results {
  margin-top: 0.625rem;
}

/* ==========================================
    ブロックエディター
   ========================================== */

.block-contents {
  margin-top: 1.875rem;
}

.block-contents p,
.block-contents--small p.large {
  font-size: 0.9375rem;
  line-height: 1.6;
  letter-spacing: 0.05em;
  margin-left: 0.1875rem;
}

.block-contents a {
  color: #222;
  text-decoration: underline;
}

.block-contents p + p {
  margin-top: 0.9375rem;
}

.block-contents p:not(:first-of-type) {
  margin-top: 0.625rem;
}

.block-contents p.mt20 {
  margin-top: 1.25rem;
}

.block-contents ul.custom-link-list {
  margin-top: 1.25rem;
  list-style-type: disc;
  padding-left: 1.25rem;
  margin-left: 0.1875rem;
}

.block-contents p + ul.custom-link-list {
  margin-top: 0.3125rem;
}

.block-contents ul.custom-link-list li + li {
  margin-top: 0.3125rem;
}

.block-contents ul.custom-link-list a {
  font-size: 0.9375rem;
  line-height: 1.6;
  letter-spacing: 0.05em;
  color: #222;
  -webkit-transition: color 0.3s;
  transition: color 0.3s;
  text-decoration: underline;
}

.block-contents .pdf-icon {
  display: inline-block;
  vertical-align: middle;
  margin-top: -0.1875rem;
  margin-left: 0.3125rem;
  width: 1rem;
  -webkit-transition: opacity 0.3s;
  transition: opacity 0.3s;
}

.block-contents h2 {
  margin-top: 1.25rem;
  padding: 0.5rem 0;
  font-size: 0.9375rem;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0;
  color: #222;
  padding-left: 0.6875rem;
  position: relative;
}

.block-contents h2::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  width: 0.1875rem;
  height: 2.5rem;
  background-color: #f34d1e;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  border-radius: 0.625rem;
}

.block-contents h2 + p {
  margin-top: 0.625rem;
}

.block-contents--small p {
  font-size: min(20px, 0.875rem);
  font-weight: 300;
  line-height: 1.28;
  letter-spacing: 0.05em;
  color: #222;
  margin-top: 0.625rem;
  margin-left: 0.9375rem;
}

.block-contents--small p a {
  color: #292929;
  text-decoration: underline;
}

.block-contents--small p.orange a {
  color: #ee5729;
  text-decoration: underline;
}

.block-contents p.text-xsmall,
.block-contents span.text-xsmall {
  font-size: 0.8125rem;
  font-weight: 300;
  line-height: 1.28;
  letter-spacing: 0.05em;
  color: #222;
  margin-left: 0.9375rem;
}

.block-contents--small p + p.text-xsmall {
  margin-top: 1.25rem;
}

.block-contents--small p.text-xsmall + p {
  margin-top: 1.25rem;
}

.block-contents .contact-frame {
  margin-top: 1.25rem;
  width: 19.375rem;
  margin-left: 0.9375rem;
  border-radius: 0.625rem;
  padding: 0.9375rem 0.9375rem 1.25rem;
  border: 3px solid #f34d1e;
}

.block-contents .contact-frame__title {
  font-size: 0.875rem;
  font-weight: 700;
  line-height: 1.4;
  letter-spacing: 0.05em;
  color: #292929;
  margin-left: 0;
}

.block-contents .contact-frame__text {
  margin-top: 0.5rem;
  font-size: 0.8125rem;
  font-weight: 700;
  line-height: 1.51;
  letter-spacing: 0.05em;
  color: #292929;
  margin-left: 0;
}

.block-contents .contact-frame a {
  color: #292929;
  text-decoration: underline;
}

.block-contents .contact-frame + p {
  margin-top: 1.25rem;
}

.block-contents figure.wp-block-table {
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  margin-top: 1.25rem;
  width: calc(100% - 1.875rem);
  margin-left: 0.9375rem;
}

.block-contents table {
  margin-top: 1.25rem;
  border-collapse: separate;
  border-spacing: 0;
  border: 2px solid #f34d1e;
  border-radius: 0.625rem;
  overflow: hidden;
  font-size: min(20px, 0.875rem);
  line-height: 1.3;
  letter-spacing: 0.05em;
  min-width: 500px;
}

.wp-block-table td,
.wp-block-table th {
  border: none;
}

.block-contents table tr {
  position: relative;
}

.block-contents table td {
  padding: 0.9375rem 0.9375rem;
  vertical-align: middle;
  position: relative;
  min-width: 12.5rem;
}

.block-contents table tr:first-child td {
  font-weight: bold;
}

.block-contents table tr:first-child td:first-child {
  border-top-left-radius: 0.625rem;
}

.block-contents table tr:first-child td:last-child {
  border-top-right-radius: 0.625rem;
}

.block-contents table tr:last-child td:first-child {
  border-bottom-left-radius: 0.625rem;
}

.block-contents table tr:last-child td:last-child {
  border-bottom-right-radius: 0.625rem;
}

.block-contents table tr:not(:last-child)::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 2px;
  background-color: #f34d1e;
  pointer-events: none;
}

.block-contents table td:not(:last-child)::after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  width: 2px;
  height: 100%;
  background-color: #f34d1e;
  pointer-events: none;
}

.scroll-hint-icon {
  width: 9.375rem !important;
}

.block-contents .contact-block {
  margin-top: 1.25rem;
  width: 100%;
  border: 1px solid #b6b6b6;
}

.block-contents .contact-block h3 {
  font-size: 1rem;
  font-weight: 600;
  line-height: 2;
  letter-spacing: 0.05em;
  color: #222;
  padding: 0.625rem 0.9375rem;
  border-bottom: 1px solid #b6b6b6;
  background-color: #f8f8f8;
}

.block-contents .contact-block p {
  font-size: min(20px, 0.875rem);
  font-weight: 300;
  line-height: 1.87;
  letter-spacing: 0.05em;
  color: #222;
  padding: 0.9375rem 0.9375rem 1.25rem;
  margin-left: 0;
}

.block-contents .contact-block p a {
  font-weight: 500;
  color: #ee5729;
  text-decoration: none;
}

.block-contents p.text-small.ml-0 {
  margin-left: 0;
}

.safari .block-contents table {
  border-collapse: separate;
  border-spacing: 0;
  border: 2px solid #f34d1e;
  border-radius: 0.625rem;
  overflow: hidden;
  width: 100%;
}

.safari .block-contents table td {
  border-right: 2px solid #f34d1e;
  border-bottom: 2px solid #f34d1e;
  padding: 0.9375rem 0.9375rem;
  min-width: 12.5rem;
}

.safari .block-contents table tr:last-child td {
  border-bottom: none;
}

.safari .block-contents table td:last-child {
  border-right: none;
}

.safari .block-contents table tr:first-child td {
  font-weight: bold;
  border-top: none;
}

.news-archive {
  margin-top: -1.25rem;
  position: relative;
  z-index: 2;
}

.news-archive__nav {
  margin-top: 1.25rem;
}

.news-archive__nav-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  gap: 0.9375rem;
  position: relative;
  z-index: 1;
}

.news-archive__nav-link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-column-gap: 0.34125rem;
  -moz-column-gap: 0.34125rem;
  column-gap: 0.34125rem;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  padding-bottom: 0.17875rem;
  font-size: 0.9675rem;
  font-weight: 700;
  line-height: 1.7;
  letter-spacing: 0;
  color: #fff;
  position: relative;
}

.news-archive__nav-link::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 1.22px;
  background-color: #fff;
  -webkit-transform: scaleX(0);
  transform: scaleX(0);
  -webkit-transition: -webkit-transform 0.3s;
  transition: -webkit-transform 0.3s;
  transition: transform 0.3s;
  transition: transform 0.3s, -webkit-transform 0.3s;
}

.news-archive__nav-link.is-active::after {
  -webkit-transform: scaleX(1);
  transform: scaleX(1);
}

.news-archive__nav-arrow {
  width: 1.03375rem;
}

/* ==========================================
    アニメーション
   ========================================== */

.news-archive__list {
  -webkit-transition-delay: 1s;
  transition-delay: 1s;
}

.archive-columns {
  padding: 3.5rem 0 9.6875rem;
}

.archive-columns__inner {
  padding-inline: 1.1875rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.archive-columns__main {
  width: 100%;
}

.archive-columns__title {
  font-size: 1.5rem;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.04em;
  color: #222;
}

.archive-columns__title + .archive-columns__list {
  margin-top: 1.875rem;
}

.archive-columns__sidebar {
  margin-top: 61.31px;
}

.sidebar {
  width: 100%;
}

.sidebar__inner {
  padding-inline: 0.3125rem;
}

.sidebar__search-label {
  display: none;
}

.sidebar__search-inner {
  width: 100%;
  background-color: #f7f7f7;
  position: relative;
  border-radius: 0.625rem;
}

.sidebar__search-button {
  position: absolute;
  top: 52%;
  left: 1.0625rem;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}

.sidebar__search-input {
  width: 100%;
  padding: 1rem 1.875rem 1rem 3.75rem;
  font-size: 1.125rem;
  font-weight: 400;
  letter-spacing: 0.04em;
  line-height: 1.8888888889;
  color: #222;
}

.sidebar__search-input::-webkit-input-placeholder {
  color: #222;
  opacity: 0.3;
}

.sidebar__search-input::-moz-placeholder {
  color: #222;
  opacity: 0.3;
}

.sidebar__search-input:-ms-input-placeholder {
  color: #222;
  opacity: 0.3;
}

.sidebar__search-input::-ms-input-placeholder {
  color: #222;
  opacity: 0.3;
}

.sidebar__search-input::placeholder {
  color: #222;
  opacity: 0.3;
}

.sidebar__search-icon {
  width: 1.375rem;
}

.sidebar__categories {
  margin-top: 39px;
}

.sidebar__categories-title {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-column-gap: 0.4375rem;
  -moz-column-gap: 0.4375rem;
  column-gap: 0.4375rem;
  font-size: 1.0675rem;
  font-weight: 700;
  line-height: 1.1709601874;
  letter-spacing: 0.05em;
  color: #283135;
}

.sidebar__categories-icon {
  width: 1.125rem;
}

.sidebar__categories-list {
  margin-top: 17px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  gap: 0.4375rem;
}

.sidebar__categories-link {
  padding: 2px 11px 3px 10px;
  background-color: #f64b20;
  border-radius: 0.375rem;
  font-size: 1rem;
  font-weight: 500;
  line-height: 2;
  letter-spacing: 0.1em;
  color: #fff;
  display: block;
}

.archive-columns__no-results {
  margin-top: 3.125rem;
  font-size: 1.25rem;
  font-weight: 700;
  line-height: 1.36;
  letter-spacing: 0.04em;
  color: #222;
}

.archive-columns__no-results-text {
  margin-top: 0.625rem;
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 2;
  letter-spacing: 1px;
  color: #283135;
}

.single-page__fv {
  position: relative;
  padding: 1.625rem 0 0;
}

.single-post-meta {
  margin-top: 1.3125rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
}

.single-post-meta__author {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-column-gap: 0.68125rem;
  -moz-column-gap: 0.68125rem;
  column-gap: 0.68125rem;
}

.single-post-meta__avatar {
  width: 2.0625rem;
  outline: 1.72px solid #fff;
  border-radius: 50%;
}

.single-post-meta__author-name {
  font-size: 0.865rem;
  font-weight: 400;
  line-height: 1.1849710983;
  letter-spacing: 0.05em;
  color: #fff;
}

.single-post-meta__bottom {
  margin-top: 0.75rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-column-gap: 1.4375rem;
  -moz-column-gap: 1.4375rem;
  column-gap: 1.4375rem;
  row-gap: 0.625rem;
  margin-left: 0.125rem;
}

.single-post-meta__date {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-column-gap: 0.4375rem;
  -moz-column-gap: 0.4375rem;
  column-gap: 0.4375rem;
  font-size: 0.815625rem;
  font-weight: 500;
  line-height: 1.2260536398;
  letter-spacing: 0.05em;
  color: #fff;
}

.single-post-meta__icon-wrapper {
  width: 0.6875rem;
}

.single-post-meta__category {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 0.625rem;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.single-post-meta__category-link {
  font-size: 0.940625rem;
  font-weight: 400;
  line-height: 1.196013289;
  letter-spacing: 0.05em;
  color: #fff;
}

.single__vertical-wrapper01 {
  position: absolute;
  top: -4.0625rem;
  left: 0.875rem;
  height: 12.515625rem;
  -webkit-writing-mode: vertical-rl;
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
  border-right: 1.37px solid #fff;
  padding-right: 7.52px;
  z-index: 1;
}

.single__vertical-text01 {
  font-size: 0.896875rem;
  font-weight: 900;
  line-height: 1.1846689895;
  letter-spacing: 0.09em;
  color: #fff;
  text-transform: uppercase;
  -webkit-transform: skewY(5deg);
  transform: skewY(5deg);
  -webkit-transform-origin: top left;
  transform-origin: top left;
}

.single__vertical-wrapper02 {
  display: none;
}

/* ==========================================
    記事詳細（ブロックエディター以外）
   ========================================== */

.single-detail {
  margin-top: -5.375rem;
  padding-bottom: 3.125rem;
  position: relative;
}

.single-detail__inner {
  padding-inline: 0.875rem;
}

.single-detail__content {
  max-width: 888px;
  margin-inline: auto;
}

.single-detail__content > * {
  width: 22.375rem;
  margin-inline: auto;
}

.single-detail__eyecatch {
  border-radius: 0.7rem;
  overflow: hidden;
  width: 24.136875rem;
  margin-inline: auto;
}

.single-detail__content .single-detail__toc {
  margin-top: 2.4375rem;
}

.toc {
  padding: 1.375rem 1rem 1.625rem 1.0625rem;
  background-color: #f5f5f5;
  border-radius: 0.5575rem;
}

.toc__icon {
  width: 0.81875rem;
}

.single-detail__content p.toc__title {
  padding: 0.2rem 1.601875rem 0.1425rem 1.035625rem;
  background-color: #283135;
  border-radius: 2.004375rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-column-gap: 0.419375rem;
  -moz-column-gap: 0.419375rem;
  column-gap: 0.419375rem;
  font-size: 0.901875rem;
  font-weight: 400;
  line-height: 2;
  letter-spacing: 0.1em;
  color: #fff;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin-top: 0;
}

.single-detail__content ol.toc__list {
  margin-top: 0.908125rem;
  list-style: decimal;
  padding-left: 1.5rem;
  font-size: 0.901875rem;
  font-weight: 400;
  line-height: 2;
  letter-spacing: 0.1em;
  color: #283135;
}

.single-detail__content li.toc__item + li.toc__item {
  margin-top: 0.3125rem;
}

.single-detail__content a.toc__link {
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 2;
  letter-spacing: 0.1em;
  color: #283135;
  -webkit-transition: color 0.3s;
  transition: color 0.3s;
  display: block;
}

.single-detail__content div.balloon {
  margin-top: 1.25rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  -webkit-column-gap: 1.5625rem;
  -moz-column-gap: 1.5625rem;
  column-gap: 1.5625rem;
  -ms-flex-wrap: nowrap !important;
  flex-wrap: nowrap !important;
}

.single-detail__content div.balloon .wp-block-column {
  width: 4.375rem;
}

.single-detail__content .balloon > .wp-block-column:first-child {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 auto;
  flex: 0 0 auto;
  width: 4.375rem;
  height: 4.375rem;
  -ms-flex-preferred-size: initial !important;
  flex-basis: initial !important;
  border-radius: 50%;
  overflow: hidden;
  border: 3px solid #fff;
}

.single-detail__content .balloon > .wp-block-column.balloon__text {
  -webkit-box-flex: 1;
  -ms-flex: 1;
  flex: 1;
  padding: 0.9375rem 1.25rem;
  background-color: #f5f5f5;
  border-radius: 1.25rem;
  font-size: 1.059375rem;
  font-weight: 400;
  line-height: 2;
  letter-spacing: 0.1em;
  color: #283135;
  position: relative;
}

.single-detail__content .balloon figure.balloon__image-wrapper {
  margin-top: 0;
}

.single-detail__content .balloon .balloon__text p {
  margin-top: 0;
}

.single-detail__content .balloon__text::before {
  content: "";
  display: block;
  position: absolute;
  top: 1.25rem;
  left: -1.125rem;
  width: 1.25rem;
  height: 1.25rem;
  background: url("../img/ballon-triangle.svg") no-repeat center/contain;
}

.single-detail__author {
  margin-top: 1.5625rem;
  position: relative;
  padding: 3.375rem 1.5rem 1.75rem 1.625rem;
  border-radius: 0.3925rem;
  -webkit-box-shadow: 0 1px 14px rgba(0, 0, 0, 0.1);
  box-shadow: 0 1px 14px rgba(0, 0, 0, 0.1);
  width: 22.375rem;
  margin-inline: auto;
}

.single-detail__author-badge {
  position: absolute;
  top: -0.375rem;
  left: 0.9375rem;
  width: 3.1875rem;
}

.single-detail__author-profile-top {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-column-gap: 1.4375rem;
  -moz-column-gap: 1.4375rem;
  column-gap: 1.4375rem;
}

.single-detail__author-avatar-wrapper {
  width: 4.6875rem;
  overflow: hidden;
  border-radius: 50%;
}

.single-detail__author-info {
  margin-top: -0.3125rem;
  flex: 1;
  min-width: 0;
}

.single-detail__author-label {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-column-gap: 0.29rem;
  -moz-column-gap: 0.29rem;
  column-gap: 0.29rem;
  font-size: 0.968125rem;
  font-weight: 700;
  line-height: 1.226597805;
  letter-spacing: 0.05em;
  padding-bottom: 0.25rem;
  border-bottom: 1.24px solid #f44317;
  color: #f44317;
}

.single-detail__author-pen {
  width: 1.085rem;
  padding-left: 0.0625rem;
  position: relative;
  top: 0.4375rem;
}

p.single-detail__author-name {
  margin-top: 0.4375rem;
  font-size: 1.3175rem;
  font-weight: 700;
  line-height: 1.1859582543;
  letter-spacing: 0.05em;
  color: #283135;
}

.single-detail__author-description {
  margin-top: 1.125rem;
  font-size: 1.00125rem;
  font-weight: 400;
  line-height: 1.6;
  letter-spacing: 0.05em;
  color: #283135;
}

.single-detail__author-more {
  margin-top: 1.325rem;
}

.single-detail__author-more-link {
  border: 1.04px solid #000;
  border-radius: 0.39125rem;
  padding: 0.785625rem 1.18625rem 0.764375rem 1.04375rem;
  background-color: #fff;
  font-size: 0.849375rem;
  font-weight: 500;
  line-height: 1.1773362767;
  letter-spacing: 0.05em;
  color: #283135;
  display: block;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin-inline: auto;
  -webkit-transition: background-color 0.3s, color 0.3s, border-color 0.3s;
  transition: background-color 0.3s, color 0.3s, border-color 0.3s;
}

.single-detail__author-more-link:focus {
  background-color: #f44317;
  color: #fff;
  border-color: #f44317;
}

.single-detail__categories {
  margin-top: 2.1875rem;
  width: 22.375rem;
  margin-inline: auto;
}

.single-detail__categories-title {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-column-gap: 0.4375rem;
  -moz-column-gap: 0.4375rem;
  column-gap: 0.4375rem;
  font-size: 1.0675rem;
  font-weight: 700;
  line-height: 1.1709601874;
  letter-spacing: 0.05em;
  color: #283135;
}

.single-detail__categories-icon {
  width: 1.125rem;
}

.single-detail ul.single-detail__categories-list {
  margin-top: 1.2625rem !important;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  gap: 0.4375rem;
  list-style: none;
  margin-left: 0;
}

.single-detail__categories-link {
  display: block;
  padding: 0.125rem 0.6875rem 0.1875rem 0.625rem;
  background-color: #f64b20;
  border-radius: 0.375rem;
  font-size: 1rem;
  font-weight: 500;
  line-height: 2;
  letter-spacing: 0.1em;
  color: #fff;
}

/* ==========================================
       ブロックエディター
      ========================================== */

.single-detail__content {
  margin-top: 1.5625rem;
}

.single-detail__content h2 {
  margin-top: 1.5625rem;
  padding: 1.0625rem 1.3125rem 1.1875rem 1.4375rem;
  background-color: #f44317;
  border-radius: 0.9375rem;
  font-size: 1.436875rem;
  font-weight: 900;
  line-height: 1.6;
  letter-spacing: 0.17em;
  color: #fff;
  width: 24.1875rem;
  margin-inline: auto;
}

.single-detail__content h3 {
  margin-top: 1.5625rem;
  position: relative;
  padding-left: 0.9375rem;
  font-size: 1.311875rem;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.05em;
  color: #f44317;
}

.single-detail__content h3::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 0.3125rem;
  height: 100%;
  background-color: #f44317;
  border-radius: 0.625rem;
}

.single-detail__content h4 {
  margin-top: 1.5625rem;
  font-size: 1.186875rem;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.05em;
  color: #283135;
  padding-bottom: 0.4375rem;
  border-bottom: 1px solid #000;
}

.single-detail__content figure {
  margin-top: 1.5625rem;
}

.single-detail__content p {
  margin-top: 1.25rem;
  font-size: 1.059375rem;
  line-height: 2;
  letter-spacing: 0.1em;
  color: #283135;
}

.single-detail__content blockquote {
  position: relative;
  margin-top: 1.5625rem;
  padding: 2.5rem 1.875rem;
  border-radius: 1rem;
  background-color: #f5f5f5;
  font-size: 0.875rem;
  line-height: 2;
  letter-spacing: 0.1em;
  color: #283135;
}

.single-detail__content blockquote p {
  margin-top: 0;
}

.single-detail__content blockquote::before {
  content: "”";
  position: absolute;
  top: 0.3125rem;
  left: 0.3125rem;
  font-weight: 700;
  font-size: 4.375rem;
  line-height: 1;
  letter-spacing: 0.1em;
  opacity: 0.1;
  -webkit-transform: matrix(-1, 0, 0, 1, 0, 0);
  transform: matrix(-1, 0, 0, 1, 0, 0);
}

.single-detail__content p + p {
  margin-top: 1.25rem;
}

.single-detail__content p:not(:first-of-type) {
  margin-top: 1.25rem;
}

.single-detail__content p + h2,
.single-detail__content p + h3,
.single-detail__content p + h4,
.single-detail__content p + .h4-wrapper {
  margin-top: 2.1875rem;
}

.single-detail__content ul {
  margin-top: 1.25rem;
  padding-left: 0.9375rem;
  font-size: 1.059375rem;
  line-height: 2;
  letter-spacing: 0.1em;
  color: #283135;
}

.single-detail__content p + ul,
.single-detail__content h3 + .wrapper > h4 {
  margin-top: 0.625rem;
}

.single-detail ul {
  list-style: disc;
  font-size: 1rem;
  margin-block: 2rem !important;
}
.single-detail ul li {
  margin-bottom: 0.5rem;
}
ol li {
  margin-left: 1rem;
  margin-bottom: 1rem;
  margin-top: 1rem;
}
/* ==========================================
    よくある質問ナビゲーション
   ========================================== */

.faq-menu {
  margin-top: -1.25rem;
  position: relative;
  z-index: 1;
}

.faq-menu__inner {
  padding-inline: 0.625rem;
}

.faq-menu__list {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 0.3125rem;
}

.faq-menu__link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  padding: 0.9375rem 0.4375rem;
  border-radius: 0.25rem;
  font-size: 0.75rem;
  font-weight: 900;
  line-height: 1.1875;
  letter-spacing: 0.08em;
  color: #fff;
  background-color: #f34d1e;
  border: 2px solid #fff;
}

.faq-menu__icon {
  width: 1.015625rem;
}

/* ==========================================
    よくある質問
   ========================================== */

.faq-block {
  padding-top: 1.875rem;
}

.faq-block + .faq-block {
  padding-top: 1.875rem;
}

.faq-block:last-child {
  padding-bottom: 3.125rem;
}

.faq-block__inner {
  padding-inline: 0.625rem;
}

.faq-block__heading {
  font-size: 1.125rem;
  font-weight: 700;
  line-height: 1.1818181818;
  letter-spacing: 0.05em;
  color: #222;
  padding: 0.75rem 0 0.75rem 1.25rem;
  position: relative;
}

.faq-block__heading::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 0.25rem;
  height: 100%;
  border-radius: 0.625rem;
  background-color: #f34d1e;
  margin-left: 7px;
}

.faq-block__list {
  margin-top: 1.25rem;
}

.faq-block__item + .faq-block__item {
  margin-top: 0.625rem;
}

.faq-block__question {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-column-gap: 0.9375rem;
  -moz-column-gap: 0.9375rem;
  column-gap: 0.9375rem;
  padding: 0.9375rem 2.8125rem 0.9375rem 1.25rem;
  border-radius: 0.9375rem;
  border: 3px solid #f4481a;
  width: 100%;
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.2222222222;
  letter-spacing: 0.08em;
  text-align: left;
  color: #222;
}

.faq-block__icon,
.faq-block__answer-icon {
  display: block;
  border-radius: 50%;
  background-color: #f34d1e;
  width: 2.25rem;
  height: 2.25rem;
  display: grid;
  place-items: center;
  font-size: 0.875rem;
  line-height: 1.9642857143;
  letter-spacing: 0;
  font-weight: 700;
  color: #fff;
  -ms-flex-negative: 0;
  flex-shrink: 0;
}

.faq-block__toggle-icon {
  position: absolute;
  top: 50%;
  right: 1.25rem;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  width: 0.875rem;
  height: 1.125rem;
  -webkit-transition: -webkit-transform 0.3s ease;
  transition: -webkit-transform 0.3s ease;
  transition: transform 0.3s ease;
  transition: transform 0.3s ease, -webkit-transform 0.3s ease;
}

.faq-block__toggle-icon::before,
.faq-block__toggle-icon::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  width: 100%;
  height: 2px;
  background-color: #f34d1e;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  -webkit-transition: -webkit-transform 0.3s ease;
  transition: -webkit-transform 0.3s ease;
  transition: transform 0.3s ease;
  transition: transform 0.3s ease, -webkit-transform 0.3s ease;
}

.faq-block__toggle-icon::after {
  -webkit-transform: translateY(-50%) rotate(90deg);
  transform: translateY(-50%) rotate(90deg);
  /* 縦棒 */
}

.faq-block__question[aria-expanded="true"] .faq-block__toggle-icon::after {
  -webkit-transform: translateY(-50%) rotate(0deg);
  transform: translateY(-50%) rotate(0deg);
}

.faq-block__answer {
  padding: 0.9375rem 1.4375rem 0.5rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  -webkit-column-gap: 0.9375rem;
  -moz-column-gap: 0.9375rem;
  column-gap: 0.9375rem;
  text-align: left;
}

.faq-block__answer-text {
  font-size: 0.875rem;
  font-weight: 500;
  line-height: 1.39;
  letter-spacing: 0.08em;
  color: #222;
  margin-top: 0.5rem;
  color: #222;
}

.faq-block__answer-text a {
  color: #f34d1e;
  text-decoration: underline;
}

.faq-block__answer-wrapper {
  overflow: hidden;
  max-height: 0;
  opacity: 0;
  visibility: hidden;
  -webkit-transition: max-height 0.4s ease, opacity 0.4s ease, visibility 0.4s;
  transition: max-height 0.4s ease, opacity 0.4s ease, visibility 0.4s;
}

.faq-block__answer-wrapper.is-open {
  max-height: 700px;
  opacity: 1;
  visibility: visible;
}

/* ==========================================
    アニメーション
   ========================================== */

.faq-menu {
  opacity: 0;
  -webkit-transform: translateY(30px);
  transform: translateY(30px);
  -webkit-transition: opacity 0.6s ease-out, -webkit-transform 0.6s ease-out;
  transition: opacity 0.6s ease-out, -webkit-transform 0.6s ease-out;
  transition: opacity 0.6s ease-out, transform 0.6s ease-out;
  transition: opacity 0.6s ease-out, transform 0.6s ease-out,
    -webkit-transform 0.6s ease-out;
}

.faq-menu.is-visible {
  opacity: 1;
  -webkit-transform: translateY(0);
  transform: translateY(0);
}

.not-found {
  padding: 3.125rem 0;
}

.not-found__title {
  font-size: 1.5rem;
  font-weight: 700;
  line-height: 1.2012012012;
  letter-spacing: 0.11em;
  color: #222;
  text-align: center;
}

.not-found__text {
  margin-top: 1.25rem;
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 2;
  letter-spacing: 0.1em;
  color: #283135;
  text-align: center;
}

@media screen and (min-width: 414px) {
  .hide-sp {
    display: none;
  }
}

@media screen and (min-width: 524px) {
  .md-sm-none {
    display: block;
  }

  .hide-sm {
    display: none;
  }

  .mv-labels {
    -webkit-column-gap: 1.25rem;
    -moz-column-gap: 1.25rem;
    column-gap: 1.25rem;
  }

  .mv__labels {
    -webkit-column-gap: 1.25rem;
    -moz-column-gap: 1.25rem;
    column-gap: 1.25rem;
  }

  .block-contents table {
    min-width: initial;
  }
}

@media screen and (min-width: 769px) {
  a[href^="tel:"] {
    pointer-events: none;
  }

  body.admin-bar html {
    margin-top: 0;
  }

  .js-fade-in-delay {
    -webkit-transition-delay: 0.8s;
    transition-delay: 0.8s;
  }

  .inner {
    max-width: 80.4375rem;
    max-width: 1287px;
    padding-inline: 1.25rem;
    padding-inline: 20px;
  }

  .block-section {
    padding-top: clamp(
      17.1px,
      calc(17.1px + 20.9 * ((100vw - 768px) / 519)),
      38px
    );
    padding-bottom: clamp(
      64.8px,
      calc(64.8px + 79.2 * ((100vw - 768px) / 519)),
      144px
    );
  }

  .block-inner {
    max-width: 1100px;
    padding-inline: 20px;
  }

  .block-container {
    padding: clamp(
        29.439px,
        calc(29.439px + 35.981 * ((100vw - 768px) / 519)),
        65.42px
      )
      clamp(47.25px, calc(47.25px + 57.75 * ((100vw - 768px) / 519)), 105px)
      clamp(31.05px, calc(31.05px + 37.95 * ((100vw - 768px) / 519)), 69px)
      clamp(
        44.289px,
        calc(44.289px + 54.131 * ((100vw - 768px) / 519)),
        98.42px
      );
    border-radius: clamp(
      13.5px,
      calc(13.5px + 16.5 * ((100vw - 768px) / 519)),
      30px
    );
    outline: clamp(5.4px, calc(5.4px + 6.6 * ((100vw - 768px) / 519)), 12px)
      solid rgba(255, 255, 255, 0.17);
  }

  .block-container--sitemap {
    padding: clamp(
        29.439px,
        calc(29.439px + 35.981 * ((100vw - 768px) / 519)),
        65.42px
      )
      clamp(
        162.378px,
        calc(162.378px + 18.042 * ((100vw - 768px) / 519)),
        180.42px
      )
      clamp(
        56.304px,
        calc(56.304px + 68.816 * ((100vw - 768px) / 519)),
        125.12px
      )
      clamp(
        44.289px,
        calc(44.289px + 54.131 * ((100vw - 768px) / 519)),
        98.42px
      );
    border-radius: clamp(
      13.5px,
      calc(13.5px + 16.5 * ((100vw - 768px) / 519)),
      30px
    );
    outline: clamp(5.4px, calc(5.4px + 6.6 * ((100vw - 768px) / 519)), 12px)
      solid rgba(255, 255, 255, 0.17);
  }

  .hide-md {
    display: none;
  }

  .show-md {
    display: block;
  }

  .lg-md-only {
    display: block;
  }

  .md-sm-none {
    display: none;
  }

  .header--layer {
    /* padding-top: 28px; */
  }

  .header__inner {
    max-width: 1244px;
    padding: 0
      clamp(9.45px, calc(9.45px + 11.55 * ((100vw - 768px) / 519)), 21px) 0
      clamp(10.35px, calc(10.35px + 12.65 * ((100vw - 768px) / 519)), 23px);
  }

  .header__top {
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    padding-top: clamp(
      4.8645px,
      calc(4.8645px + 5.9455 * ((100vw - 768px) / 519)),
      10.81px
    );
    padding-bottom: 0;
  }

  .header__branding {
    padding-top: clamp(
      1.4355px,
      calc(1.4355px + 1.7545 * ((100vw - 768px) / 519)),
      3.19px
    );
  }

  .header__logo-link {
    width: clamp(
      302.4px,
      calc(302.4px + 75.6 * ((100vw - 768px) / 519)),
      378px
    );
  }

  .header__controls {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-column-gap: clamp(
      7.875px,
      calc(7.875px + 9.625 * ((100vw - 768px) / 519)),
      17.5px
    );
    -moz-column-gap: clamp(
      7.875px,
      calc(7.875px + 9.625 * ((100vw - 768px) / 519)),
      17.5px
    );
    column-gap: clamp(
      7.875px,
      calc(7.875px + 9.625 * ((100vw - 768px) / 519)),
      17.5px
    );
    margin-left: 0;
  }

  .header__text-size {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-column-gap: clamp(
      4.95px,
      calc(4.95px + 6.05 * ((100vw - 768px) / 519)),
      11px
    );
    -moz-column-gap: clamp(
      4.95px,
      calc(4.95px + 6.05 * ((100vw - 768px) / 519)),
      11px
    );
    column-gap: clamp(
      4.95px,
      calc(4.95px + 6.05 * ((100vw - 768px) / 519)),
      11px
    );
  }

  .header__text-size-label {
    font-size: 14px;
    font-size: clamp(
      11.2px,
      calc(11.2px + 2.8 * ((100vw - 768px) / 519)),
      14px
    );
    font-weight: 700;
    line-height: 1.2142857143;
    letter-spacing: 0.08em;
    color: #2b2b2b;
  }

  .header__text-size-buttons {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
  }

  .header__text-size-button {
    width: clamp(41.6px, calc(41.6px + 10.4 * ((100vw - 768px) / 519)), 52px);
    height: clamp(28.8px, calc(28.8px + 7.2 * ((100vw - 768px) / 519)), 36px);
    display: grid;
    place-items: center;
    font-size: clamp(
      10.4px,
      calc(10.4px + 2.6 * ((100vw - 768px) / 519)),
      13px
    );
    font-weight: 700;
    line-height: 1.2307692308;
    letter-spacing: 0.08em;
    color: #2b2b2b;
    -webkit-transition: background-color 0.3s, color 0.3s, opacity 0.3s,
      border 0.3s;
    transition: background-color 0.3s, color 0.3s, opacity 0.3s, border 0.3s;
  }

  .header__text-size-button:first-child {
    border-radius: 3px 0 0 3px;
    border-block: 1.05px solid #d6d6d6;
    border-left: 1.05px solid #d6d6d6;
  }

  .header__text-size-button:nth-child(2) {
    border-radius: 0;
    border-block: 1.05px solid #d6d6d6;
    border-left: 1.05px solid #d6d6d6;
  }

  .header__text-size-button:last-child {
    border-radius: 0 3px 3px 0;
    border-block: 1.05px solid #d6d6d6;
    border-left: 1.05px solid #d6d6d6;
    border-right: 1.05px solid #d6d6d6;
  }

  .header__text-size-button.current {
    background-color: #f86f52;
    color: #fff;
    border: transparent;
  }

  .header__text-size-button.current + .header__text-size-button {
    border-left: 0;
  }

  .header__text-size-button:last-child.current {
    border: 0;
  }

  .header__text-size-button:focus {
    background-color: #f86f52;
    color: #fff;
    border: transparent;
  }

  .header__cta {
    width: clamp(
      165.375px,
      calc(165.375px + 55.125 * ((100vw - 768px) / 519)),
      220.5px
    );
    height: clamp(
      41.34px,
      calc(41.34px + 13.78 * ((100vw - 768px) / 519)),
      55.12px
    );
    border-radius: clamp(
      132.3px,
      calc(132.3px + 33.075 * ((100vw - 768px) / 519)),
      165.375px
    );
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-column-gap: clamp(
      7.112px,
      calc(7.112px + 1.778 * ((100vw - 768px) / 519)),
      8.89px
    );
    -moz-column-gap: clamp(
      7.112px,
      calc(7.112px + 1.778 * ((100vw - 768px) / 519)),
      8.89px
    );
    column-gap: clamp(
      7.112px,
      calc(7.112px + 1.778 * ((100vw - 768px) / 519)),
      8.89px
    );
    padding-left: clamp(
      23.544px,
      calc(23.544px + 5.886 * ((100vw - 768px) / 519)),
      29.43px
    );
    font-size: clamp(
      14.136px,
      calc(14.136px + 3.534 * ((100vw - 768px) / 519)),
      17.67px
    );
    line-height: 1.5619694397;
  }

  .header__cta-arrow {
    width: clamp(
      18.744px,
      calc(18.744px + 4.686 * ((100vw - 768px) / 519)),
      23.43px
    );
  }

  .header__cta:focus {
    background: #fff;
    color: #f86f52;
    border: 1px solid #f86f52;
    opacity: 1;
  }

  .header__cta:focus .header__cta-arrow-image {
    opacity: 0;
  }

  .header__cta:focus .header__cta-arrow-image--hover {
    opacity: 1;
  }

  .header-nav {
    display: block;
    margin-top: clamp(
      15.4px,
      calc(15.4px + 6.6 * ((100vw - 768px) / 519)),
      22px
    );
    padding-bottom: clamp(
      8.0595px,
      calc(8.0595px + 9.8505 * ((100vw - 768px) / 519)),
      17.91px
    );
  }

  .header-nav__inner {
    max-width: 1200px;
    margin-inline: auto;
  }

  .header-nav__list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    height: clamp(
      24.872px,
      calc(24.872px + 6.218 * ((100vw - 768px) / 519)),
      31.09px
    );
  }

  .header-nav__item {
    height: inherit;
  }

  .header-nav__link {
    position: relative;
    height: inherit;
    padding-inline: clamp(
      70px,
      calc(70px + (100 - 8.7) * ((100vw - 768px) / (1680 - 768))),
      100px
    );
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-column-gap: clamp(
      5.6px,
      calc(5.6px + 1.4 * ((100vw - 768px) / 519)),
      7px
    );
    -moz-column-gap: clamp(
      5.6px,
      calc(5.6px + 1.4 * ((100vw - 768px) / 519)),
      7px
    );
    column-gap: clamp(5.6px, calc(5.6px + 1.4 * ((100vw - 768px) / 519)), 7px);
    font-size: clamp(
      11.2px,
      calc(11.2px + 4.8 * ((100vw - 768px) / 519)),
      16px
    );
    font-weight: 700;
    line-height: 1.1875;
    letter-spacing: 0.05em;
    color: #2b2b2b;
    border-left: 1px solid rgba(89, 89, 89, 0.4);
    white-space: nowrap;
  }

  .header-nav__link::after {
    position: absolute;
    content: "";
    width: var(--underline-width, 100%);
    height: clamp(1.6px, calc(1.6px + 0.4 * ((100vw - 768px) / 519)), 2px);
    bottom: 0;
    left: 50%;
    -webkit-transform-origin: left;
    transform-origin: left;
    -webkit-transform: translateX(-50%) scaleX(0);
    transform: translateX(-50%) scaleX(0);
    -webkit-transition: -webkit-transform 0.3s;
    transition: -webkit-transform 0.3s;
    transition: transform 0.3s;
    transition: transform 0.3s, -webkit-transform 0.3s;
    background-image: repeating-linear-gradient(
      90deg,
      #f86f52 0px,
      #f86f52 2px,
      transparent 2px,
      transparent 4px
    );
    background-size: 100%;
  }

  .header-nav__item:last-child .header-nav__link {
    border-right: 1px solid #595959;
  }

  .header-nav__arrow {
    width: clamp(12.8px, calc(12.8px + 3.2 * ((100vw - 768px) / 519)), 16px);
  }

  .header__cta span {
    display: flex;
    flex-flow: column;
    line-height: 100%;
    align-items: center;
    margin-top: clamp(4px, calc(4px + 4.11 * ((100vw - 768px) / 519)), 6.85px);
  }
  .header__cta span small {
    font-size: clamp(
      8.136px,
      calc(10.136px + 3.534 * ((100vw - 768px) / 519)),
      11.67px
    );
  }
  .header-nav__link:focus {
    opacity: 1;
  }

  .header-nav__link:focus .header-nav__link:focus::after {
    -webkit-transform: translateX(-50%) scaleX(1);
    transform: translateX(-50%) scaleX(1);
  }

  .header-nav__item--has-dropdown {
    position: relative;
  }

  .header-nav__dropdown {
    position: absolute;
    left: clamp(12.15px, calc(12.15px + 14.85 * ((100vw - 768px) / 519)), 27px);
    top: clamp(
      27.981px,
      calc(27.981px + 3.109 * ((100vw - 768px) / 519)),
      31.09px
    );
    padding: clamp(23.8px, calc(23.8px + 10.2 * ((100vw - 768px) / 519)), 34px)
      clamp(18.9px, calc(18.9px + 8.1 * ((100vw - 768px) / 519)), 27px)
      clamp(21.7px, calc(21.7px + 9.3 * ((100vw - 768px) / 519)), 31px)
      clamp(16.8px, calc(16.8px + 7.2 * ((100vw - 768px) / 519)), 24px);
    background: #fff;
    -webkit-box-shadow: 0px 2px 11px rgba(0, 0, 0, 0.11);
    box-shadow: 0px 2px 11px rgba(0, 0, 0, 0.11);
    border-radius: clamp(8px, calc(8px + 2 * ((100vw - 768px) / 519)), 10px);
    width: clamp(165px, calc(165px + 55 * ((100vw - 768px) / 519)), 220px);
    opacity: 0;
    visibility: hidden;
    -webkit-transform: translate(-3px, -3px);
    transform: translate(-3px, -3px);
    -webkit-transition: opacity 0.5s ease, visibility 0.3s,
      -webkit-transform 0.5s ease;
    transition: opacity 0.5s ease, visibility 0.3s, -webkit-transform 0.5s ease;
    transition: opacity 0.5s ease, transform 0.5s ease, visibility 0.3s;
    transition: opacity 0.5s ease, transform 0.5s ease, visibility 0.3s,
      -webkit-transform 0.5s ease;
    z-index: 10;
  }

  .header-nav__item--has-dropdown:focus-within .header-nav__dropdown {
    opacity: 1;
    visibility: visible;
    -webkit-transform: translate(0);
    transform: translate(0);
  }

  .header-nav__dropdown-item {
    width: 100%;
  }

  .header-nav__dropdown-item + .header-nav__dropdown-item {
    margin-top: clamp(20px, calc(20px + 5 * ((100vw - 768px) / 519)), 25px);
  }

  .header-nav__dropdown-link {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-column-gap: clamp(
      5.6px,
      calc(5.6px + 1.4 * ((100vw - 768px) / 519)),
      7px
    );
    -moz-column-gap: clamp(
      5.6px,
      calc(5.6px + 1.4 * ((100vw - 768px) / 519)),
      7px
    );
    column-gap: clamp(5.6px, calc(5.6px + 1.4 * ((100vw - 768px) / 519)), 7px);
    font-size: clamp(
      11.2px,
      calc(11.2px + 4.8 * ((100vw - 768px) / 519)),
      16px
    );
    font-weight: 700;
    line-height: 1.1875;
    letter-spacing: 0.14em;
    color: #2b2b2b;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
  }

  .header-nav__dropdown-link::after {
    position: absolute;
    content: "";
    bottom: -5px;
    left: 0;
    width: 100%;
    height: clamp(1.6px, calc(1.6px + 0.4 * ((100vw - 768px) / 519)), 2px);
    background-image: repeating-linear-gradient(
      90deg,
      #f86f52 0px,
      #f86f52 2px,
      transparent 2px,
      transparent 4px
    );
    -webkit-transform-origin: left;
    transform-origin: left;
    background-size: 100%;
    -webkit-transform: scaleX(0);
    transform: scaleX(0);
    -webkit-transition: -webkit-transform 0.3s;
    transition: -webkit-transform 0.3s;
    transition: transform 0.3s;
    transition: transform 0.3s, -webkit-transform 0.3s;
  }

  .header-nav__dropdown-link:focus {
    opacity: 1;
  }

  .header-nav__dropdown-link:focus .header-nav__dropdown-link:focus::after {
    -webkit-transform: scaleX(1);
    transform: scaleX(1);
  }

  .hamburger {
    display: none;
  }

  .drawer {
    display: none;
  }

  .footer {
    padding: clamp(
        51.381px,
        calc(51.381px + 42.039 * ((100vw - 768px) / 519)),
        93.42px
      )
      0 clamp(38.5px, calc(38.5px + 31.5 * ((100vw - 768px) / 519)), 70px);
  }

  .footer__inner {
    max-width: 1274px;
  }

  .footer__section-top {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    margin-left: -8px;
  }

  .footer__branding {
    width: clamp(160px, calc(160px + 40 * ((100vw - 768px) / 519)), 200px);
  }

  .footer__logo-link {
    width: clamp(93.6px, calc(93.6px + 23.4 * ((100vw - 768px) / 519)), 117px);
  }

  .footer__company {
    margin-top: clamp(4.4px, calc(4.4px + 3.6 * ((100vw - 768px) / 519)), 8px);
    font-size: clamp(
      11.76px,
      calc(11.76px + 2.94 * ((100vw - 768px) / 519)),
      14.7px
    );
    margin-left: clamp(2.2px, calc(2.2px + 1.8 * ((100vw - 768px) / 519)), 4px);
  }

  .footer__address {
    margin-top: clamp(
      8.25px,
      calc(8.25px + 6.75 * ((100vw - 768px) / 519)),
      15px
    );
    font-size: clamp(
      8.56px,
      calc(8.56px + 2.14 * ((100vw - 768px) / 519)),
      10.7px
    );
    margin-left: clamp(3.3px, calc(3.3px + 2.7 * ((100vw - 768px) / 519)), 6px);
  }

  .footer__columns {
    -webkit-column-gap: 0;
    -moz-column-gap: 0;
    column-gap: 0;
    row-gap: clamp(24px, calc(24px + 6 * ((100vw - 768px) / 519)), 30px);
    margin-top: clamp(
      2.75px,
      calc(2.75px + 2.25 * ((100vw - 768px) / 519)),
      5px
    );
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
  }

  .footer__column {
    width: clamp(180px, calc(180px + 90 * ((100vw - 768px) / 256)), 270px);
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
  }

  .footer__heading {
    font-size: 16px;
    font-size: clamp(
      12.8px,
      calc(12.8px + 3.2 * ((100vw - 768px) / 519)),
      16px
    );
    line-height: 1.1875;
  }

  .footer__list {
    margin-top: clamp(
      11.55px,
      calc(11.55px + 9.45 * ((100vw - 768px) / 519)),
      21px
    );
  }

  .footer__item + .footer__item {
    margin-top: 0;
  }

  .footer__link {
    font-size: clamp(
      11.2px,
      calc(11.2px + 2.8 * ((100vw - 768px) / 519)),
      14px
    );
    line-height: 2.2857142857;
  }

  .footer__link--pdf {
    -webkit-column-gap: clamp(
      2.75px,
      calc(2.75px + 2.25 * ((100vw - 768px) / 519)),
      5px
    );
    -moz-column-gap: clamp(
      2.75px,
      calc(2.75px + 2.25 * ((100vw - 768px) / 519)),
      5px
    );
    column-gap: clamp(
      2.75px,
      calc(2.75px + 2.25 * ((100vw - 768px) / 519)),
      5px
    );
  }

  .footer__link-pdf {
    width: 1.07125rem;
  }

  .footer__column--menu {
    margin-left: 20px;
  }

  .footer__column--policy {
    margin-left: 20px;
  }

  .footer__column--contact {
    margin-left: 20px;
  }

  .footer__column--contact {
    margin-left: clamp(
      19.8px,
      calc(19.8px + 46.2 * ((100vw - 768px) / 519)),
      66px
    );
  }

  .footer__section-middle {
    margin-top: clamp(
      25.85px,
      calc(25.85px + 21.15 * ((100vw - 768px) / 519)),
      47px
    );
  }

  .footer__banners {
    row-gap: clamp(18.7px, calc(18.7px + 15.3 * ((100vw - 768px) / 519)), 34px);
    -webkit-column-gap: clamp(
      11px,
      calc(11px + 9 * ((100vw - 768px) / 519)),
      20px
    );
    -moz-column-gap: clamp(
      11px,
      calc(11px + 9 * ((100vw - 768px) / 519)),
      20px
    );
    column-gap: clamp(11px, calc(11px + 9 * ((100vw - 768px) / 519)), 20px);
  }

  .footer__banner-link {
    width: clamp(
      185.1465px,
      calc(185.1465px + 151.4835 * ((100vw - 768px) / 519)),
      336.63px
    );
  }

  .footer__partners {
    margin-top: clamp(
      25.476px,
      calc(25.476px + 20.844 * ((100vw - 768px) / 519)),
      46.32px
    );
  }

  .footer__partners-list {
    -webkit-column-gap: 0;
    -moz-column-gap: 0;
    column-gap: 0;
    row-gap: 0.9375rem;
  }

  .footer__partners-item:first-child .footer__partners-link {
    width: clamp(
      104.5px,
      calc(104.5px + 85.5 * ((100vw - 768px) / 519)),
      190px
    );
  }

  .footer__partners-item:nth-child(2) .footer__partners-link {
    width: clamp(
      126.4835px,
      calc(126.4835px + 103.4865 * ((100vw - 768px) / 519)),
      229.97px
    );
    margin-left: clamp(
      7.7165px,
      calc(7.7165px + 6.3135 * ((100vw - 768px) / 519)),
      14.03px
    );
  }

  .footer__partners-item:nth-child(3) .footer__partners-link {
    width: clamp(110px, calc(110px + 90 * ((100vw - 768px) / 519)), 200px);
    margin-left: clamp(
      11.55px,
      calc(11.55px + 9.45 * ((100vw - 768px) / 519)),
      21px
    );
  }

  .footer__partners-item:nth-child(4) .footer__partners-link {
    width: clamp(99px, calc(99px + 81 * ((100vw - 768px) / 519)), 180px);
    margin-left: clamp(
      13.75px,
      calc(13.75px + 11.25 * ((100vw - 768px) / 519)),
      25px
    );
  }

  .footer__partners-item:nth-child(n + 4) .footer__partners-link {
    width: clamp(110px, calc(110px + 90 * ((100vw - 768px) / 519)), 200px);
    margin-left: clamp(11px, calc(11px + 9 * ((100vw - 768px) / 519)), 20px);
  }

  .footer__section-bottom {
    margin-top: clamp(
      35.673px,
      calc(35.673px + 29.187 * ((100vw - 768px) / 519)),
      64.86px
    );
  }

  .footer__copyright {
    font-size: clamp(9.6px, calc(9.6px + 2.4 * ((100vw - 768px) / 519)), 12px);
  }

  .text-marquee {
    margin-top: -30px;
  }

  .text-marquee--02 {
    margin-top: -70px;
    padding-bottom: clamp(
      46px,
      calc(46px + 69 * ((100vw - 768px) / 912)),
      115px
    );
  }

  .text-marquee--sub-page02 {
    margin-top: 100px;
    margin-bottom: -125px;
    padding-bottom: 0;
  }

  .text-marquee__inner--sub-main {
    -webkit-column-gap: clamp(
      25px,
      calc(25px + 25 * ((100vw - 768px) / 912)),
      50px
    );
    -moz-column-gap: clamp(
      25px,
      calc(25px + 25 * ((100vw - 768px) / 912)),
      50px
    );
    column-gap: clamp(25px, calc(25px + 25 * ((100vw - 768px) / 912)), 50px);
    -webkit-animation: marquee-loop 30s linear infinite;
    animation: marquee-loop 30s linear infinite;
  }

  .text-marquee__text {
    font-size: clamp(
      87.62px,
      calc(87.62px + 87.62 * ((100vw - 768px) / 912)),
      175.24px
    );
    padding-inline: 50px;
  }

  .text-marquee__text--02 {
    font-size: clamp(
      198.94px,
      calc(198.94px + 198.94 * ((100vw - 768px) / 912)),
      397.88px
    );
    padding-bottom: 0;
  }

  .text-marquee--sub-main {
    bottom: -30px;
  }

  .text-marquee__text--sub-main {
    font-size: 317px;
    line-height: 1;
  }

  .bg-gradation {
    padding-top: clamp(
      15.4px,
      calc(15.4px + 6.6 * ((100vw - 768px) / 519)),
      22px
    );
  }

  .bg-gradation::before {
    background-image: url("../img/pic-pc-gradation.png");
  }

  .bg-gradation02 {
    height: clamp(
      755.5px,
      calc(755.5px + 755.5 * ((100vw - 768px) / 519)),
      1511px
    );
  }

  .bg-gradation-block::before {
    top: -8.875rem;
    height: calc(100% + 142px);
  }

  .bg-gradation03 {
    padding-bottom: 146px;
    padding-bottom: 131px;
    padding-bottom: clamp(
      91.7px,
      calc(91.7px + 39.3 * ((100vw - 768px) / 519)),
      131px
    );
  }

  .bg-gradation03::before {
    background-image: url("../img/pic-pc-page-gradation.png");
  }

  .bg-gradation03--column::before {
    background-image: url("../img/pic-pc-column-gradation.png");
  }

  .bg-gradation04::before {
    background-image: url("../img/pic-pc-vision-bg.png");
  }

  .bg-gradation-news::before {
    background-image: url("../img/pic-pc-news-gradation.png");
    height: clamp(331px, calc(331px + 331 * ((100vw - 768px) / 519)), 662px);
  }

  .bg-gradation-column::before {
    background-image: url("../img/pic-pc-recommend-gradation.png");
  }

  .bg-gradation03--single {
    padding-bottom: clamp(
      149.1px,
      calc(149.1px + 63.9 * ((100vw - 768px) / 519)),
      213px
    );
  }

  .bg-gradation03--single::before {
    background-image: url("../img/pic-pc-single-gradation.png");
  }

  .bg-gradation03--not-found {
    padding-bottom: 0;
  }

  .section-heading {
    -webkit-column-gap: 1.375rem;
    -moz-column-gap: 1.375rem;
    column-gap: 1.375rem;
    padding-left: clamp(
      3.028px,
      calc(3.028px + 4.542 * ((100vw - 768px) / 519)),
      7.57px
    );
  }

  .section-heading--small {
    -webkit-column-gap: 0.75rem;
    -moz-column-gap: 0.75rem;
    column-gap: 0.75rem;
    padding-left: clamp(
      5.2px,
      calc(5.2px + 7.8 * ((100vw - 768px) / 519)),
      13px
    );
  }

  .section-heading--small2 {
    -webkit-column-gap: 0.875rem;
    -moz-column-gap: 0.875rem;
    column-gap: 0.875rem;
    padding-left: 0.025rem;
  }

  .section-heading__title {
    font-size: 2.76875rem;
    line-height: 1.1963882619;
  }

  .section-heading__title--small {
    font-size: 2.326875rem;
  }

  .section-heading__title--small2 {
    font-size: 2.326875rem;
    line-height: 1.2087026591;
  }

  .section-heading__title .small {
    font-size: 2.414375rem;
    line-height: 1.4;
  }

  .section-heading__title .small2 {
    font-size: 1.764375rem;
    line-height: 1.2043924903;
  }

  .section-heading__title .small3 {
    font-size: 1.764375rem;
    line-height: 1.2043924903;
  }

  .section-heading__right {
    margin-top: 2.8125rem;
    -webkit-column-gap: 1.295rem;
    -moz-column-gap: 1.295rem;
    column-gap: 1.295rem;
  }

  .section-heading__right--small {
    margin-top: 1.75rem;
    -webkit-column-gap: 0.9375rem;
    -moz-column-gap: 0.9375rem;
    column-gap: 0.9375rem;
  }

  .section-heading__right--recommend {
    margin-top: 0;
  }

  .section-heading__icon {
    width: 4.53625rem;
  }

  .section-heading__icon--small {
    width: 4.1875rem;
  }

  .section-heading__label {
    margin-top: 1.85875rem;
    font-size: 1.135rem;
    line-height: 1.2114537445;
  }

  .section-heading__label--small {
    font-size: 0.954375rem;
    line-height: 1.1787819253;
    margin-top: 1.625rem;
  }

  .section-heading__label--small2 {
    font-size: 1.135rem;
    line-height: 1.2114537445;
    margin-top: 1.875rem;
  }

  .bread {
    width: 227.76px;
    height: 49.45px;
  }

  .mv-labels {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    background-color: transparent;
    row-gap: clamp(
      3.696px,
      calc(3.696px + 1.584 * ((100vw - 768px) / 519)),
      5.28px
    );
    padding: 0;
  }

  .mv-labels__label--left {
    font-size: clamp(
      15.092px,
      calc(15.092px + 6.468 * ((100vw - 768px) / 519)),
      21.56px
    );
    width: clamp(
      145.334px,
      calc(145.334px + 62.286 * ((100vw - 768px) / 519)),
      207.62px
    );
    height: clamp(
      30.828px,
      calc(30.828px + 13.212 * ((100vw - 768px) / 519)),
      44.04px
    );
    background-color: #f7511e;
    border-radius: clamp(
      2.877px,
      calc(2.877px + 1.233 * ((100vw - 768px) / 519)),
      4.11px
    );
  }

  .mv-labels__label--right {
    font-size: clamp(
      15.47px,
      calc(15.47px + 6.63 * ((100vw - 768px) / 519)),
      22.1px
    );
    line-height: 1.1900452489;
    width: clamp(
      181.3px,
      calc(181.3px + 77.7 * ((100vw - 768px) / 519)),
      259px
    );
    height: clamp(
      31.598px,
      calc(31.598px + 13.542 * ((100vw - 768px) / 519)),
      45.14px
    );
    background-color: #f7511e;
    border-radius: clamp(
      2.947px,
      calc(2.947px + 1.263 * ((100vw - 768px) / 519)),
      4.21px
    );
    display: grid;
    place-items: center;
  }

  .safari .mv-labels__label--right {
    font-size: clamp(
      15.47px,
      calc(15.47px + 6.63 * ((100vw - 768px) / 519)),
      22.1px
    );
  }

  .product-card--featured {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-column-gap: clamp(
      22px,
      calc(22px + 33 * ((100vw - 768px) / 519)),
      55px
    );
    -moz-column-gap: clamp(
      22px,
      calc(22px + 33 * ((100vw - 768px) / 519)),
      55px
    );
    column-gap: clamp(22px, calc(22px + 33 * ((100vw - 768px) / 519)), 55px);
  }

  .product-card__image-wrapper {
    border-radius: 1.3092463092vw;
    width: 100%;
    border: 1px solid #fff;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    -webkit-box-flex: 0;
    -ms-flex-positive: 0;
    flex-grow: 0;
    margin-inline: 0;
  }

  .product-card__image-wrapper--featured {
    width: 55.0120288693%;
    border-radius: 2.331002331vw;
    border: 1px solid #fff;
  }

  .product-card__image {
    aspect-ratio: 385.4/228.09;
  }

  .product-card__image--featured {
    aspect-ratio: 686/406;
  }

  .product-card__body {
    margin-top: clamp(
      5.448px,
      calc(5.448px + 8.172 * ((100vw - 768px) / 519)),
      13.62px
    );
    margin-left: clamp(
      2.74px,
      calc(2.74px + 4.11 * ((100vw - 768px) / 519)),
      6.85px
    );
  }

  .product-card__body--featured {
    margin-top: 0;
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    margin-left: 0;
  }

  .product-card__eyebrow {
    font-size: 0.71875rem;
    line-height: 1.200300075;
    padding: clamp(
        2.752px,
        calc(2.752px + 4.128 * ((100vw - 768px) / 519)),
        6.88px
      )
      clamp(6.904px, calc(6.904px + 10.356 * ((100vw - 768px) / 519)), 17.26px)
      clamp(2.6px, calc(2.6px + 3.9 * ((100vw - 768px) / 519)), 6.5px)
      clamp(6.156px, calc(6.156px + 9.234 * ((100vw - 768px) / 519)), 15.39px);
    border-radius: 3.1325rem;
  }

  .product-card__eyebrow--featured {
    margin-top: 0;
    font-size: 0.99375rem;
    line-height: 1.1949685535;
    letter-spacing: 0.05em;
    padding: clamp(
        5.424px,
        calc(5.424px + 8.136 * ((100vw - 768px) / 519)),
        13.56px
      )
      clamp(7.06px, calc(7.06px + 10.59 * ((100vw - 768px) / 519)), 17.65px)
      clamp(5.376px, calc(5.376px + 8.064 * ((100vw - 768px) / 519)), 13.44px)
      clamp(7.34px, calc(7.34px + 11.01 * ((100vw - 768px) / 519)), 18.35px);
    border: 1.84px solid #fff;
    border-radius: 3.735625rem;
  }

  .product-card__label {
    margin-top: clamp(6.4px, calc(6.4px + 9.6 * ((100vw - 768px) / 519)), 16px);
    font-size: 0.88rem;
    line-height: 1.2073863636;
    margin-left: clamp(
      0.86px,
      calc(0.86px + 1.29 * ((100vw - 768px) / 519)),
      2.15px
    );
  }

  .product-card__label--featured {
    margin-top: clamp(
      8.8px,
      calc(8.8px + 13.2 * ((100vw - 768px) / 519)),
      22px
    );
    font-size: 0.88rem;
    margin-left: clamp(
      5.184px,
      calc(5.184px + 7.776 * ((100vw - 768px) / 519)),
      12.96px
    );
  }

  .product-card__title {
    margin-top: clamp(
      2.34px,
      calc(2.34px + 3.51 * ((100vw - 768px) / 519)),
      5.85px
    );
    font-size: 1.636875rem;
    line-height: 1.1836578847;
    letter-spacing: 0.05em;
    margin-left: clamp(
      0.568px,
      calc(0.568px + 0.852 * ((100vw - 768px) / 519)),
      1.42px
    );
  }

  .product-card__title--featured {
    margin-top: clamp(
      2.156px,
      calc(2.156px + 3.234 * ((100vw - 768px) / 519)),
      5.39px
    );
    font-size: 2.38rem;
    line-height: 1.2079831933;
    margin-left: clamp(
      3.984px,
      calc(3.984px + 5.976 * ((100vw - 768px) / 519)),
      9.96px
    );
    letter-spacing: 0.08em;
  }

  .product-card__text {
    margin-top: clamp(
      8.38px,
      calc(8.38px + 12.57 * ((100vw - 768px) / 519)),
      20.95px
    );
    font-size: 0.8875rem;
    line-height: 1.75;
    margin-left: clamp(
      1.568px,
      calc(1.568px + 2.352 * ((100vw - 768px) / 519)),
      3.92px
    );
    margin-right: clamp(
      12.408px,
      calc(12.408px + 18.612 * ((100vw - 768px) / 519)),
      31.02px
    );
    max-width: 444px;
  }

  .product-card__text--featured {
    margin-top: clamp(
      5.844px,
      calc(5.844px + 8.766 * ((100vw - 768px) / 519)),
      14.61px
    );
    font-size: 1.060625rem;
    line-height: 1.8856806128;
    margin-left: clamp(
      5.236px,
      calc(5.236px + 7.854 * ((100vw - 768px) / 519)),
      13.09px
    );
  }

  .product-card__text .small {
    font-size: 0.765rem;
  }

  .product-card__button-detail {
    margin-top: clamp(
      5.144px,
      calc(5.144px + 7.716 * ((100vw - 768px) / 519)),
      12.86px
    );
    margin-left: clamp(
      0.784px,
      calc(0.784px + 1.176 * ((100vw - 768px) / 519)),
      1.96px
    );
  }

  .button-detail--featured {
    margin-top: clamp(10px, calc(10px + 15 * ((100vw - 768px) / 519)), 25px);
    margin-left: clamp(
      5.2px,
      calc(5.2px + 7.8 * ((100vw - 768px) / 519)),
      13px
    );
  }

  .button-detail {
    padding-bottom: clamp(
      4.496px,
      calc(4.496px + 6.744 * ((100vw - 768px) / 519)),
      11.24px
    );
    border-bottom: 1.65px solid #fff;
    -webkit-column-gap: clamp(
      3.132px,
      calc(3.132px + 4.698 * ((100vw - 768px) / 519)),
      7.83px
    );
    -moz-column-gap: clamp(
      3.132px,
      calc(3.132px + 4.698 * ((100vw - 768px) / 519)),
      7.83px
    );
    column-gap: clamp(
      3.132px,
      calc(3.132px + 4.698 * ((100vw - 768px) / 519)),
      7.83px
    );
    padding-inline: clamp(
      2.204px,
      calc(2.204px + 3.306 * ((100vw - 768px) / 519)),
      5.51px
    );
  }

  .button-detail--black {
    border-color: #292929;
  }

  .button-detail--large {
    margin-left: 0;
  }

  .button-detail--featured {
    padding-bottom: clamp(
      4.8px,
      calc(4.8px + 7.2 * ((100vw - 768px) / 519)),
      12px
    );
    border-bottom: 1.69px solid #fff;
    -webkit-column-gap: clamp(
      3.248px,
      calc(3.248px + 4.872 * ((100vw - 768px) / 519)),
      8.12px
    );
    -moz-column-gap: clamp(
      3.248px,
      calc(3.248px + 4.872 * ((100vw - 768px) / 519)),
      8.12px
    );
    column-gap: clamp(
      3.248px,
      calc(3.248px + 4.872 * ((100vw - 768px) / 519)),
      8.12px
    );
    padding-inline: clamp(
      2.252px,
      calc(2.252px + 3.378 * ((100vw - 768px) / 519)),
      5.63px
    );
  }

  .button-detail--mt {
    margin-top: clamp(
      11.144px,
      calc(11.144px + 16.716 * ((100vw - 768px) / 519)),
      27.86px
    );
  }

  .button-detail__text {
    font-size: 1.175625rem;
    line-height: 1.2227538543;
  }

  .button-detail__text--large {
    font-size: 1.200625rem;
    line-height: 1.1972930765;
  }

  .button-detail__text--news {
    font-size: 1.200625rem;
    line-height: 1.1972930765;
  }

  .button-detail__text--featured {
    font-size: 1.200625rem;
    line-height: 1.1972930765;
  }

  .button-detail__icon {
    width: 1.3075rem;
  }

  .button-detail__icon--large {
    width: 1.33625rem;
  }

  .button-detail__icon--news {
    width: 1.33625rem;
  }

  .button-detail__icon--featured {
    width: 1.33625rem;
  }

  .news-list {
    row-gap: clamp(
      4.672px,
      calc(4.672px + 7.008 * ((100vw - 768px) / 519)),
      11.68px
    );
  }

  .news-list__link {
    padding: clamp(
        14.68px,
        calc(14.68px + 22.02 * ((100vw - 768px) / 519)),
        36.7px
      )
      clamp(
        17.048px,
        calc(17.048px + 25.572 * ((100vw - 768px) / 519)),
        42.62px
      )
      clamp(
        12.644px,
        calc(12.644px + 18.966 * ((100vw - 768px) / 519)),
        31.61px
      )
      clamp(
        17.688px,
        calc(17.688px + 26.532 * ((100vw - 768px) / 519)),
        44.22px
      );
    border-radius: clamp(
      23.359px,
      calc(23.359px + 10.011 * ((100vw - 768px) / 519)),
      33.37px
    );
    border-width: 0.83px;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
  }

  .news-list__meta {
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
  }

  .news-list__date {
    font-size: 1.005625rem;
  }

  .news-list__category {
    padding: clamp(
        2.668px,
        calc(2.668px + 4.002 * ((100vw - 768px) / 519)),
        6.67px
      )
      clamp(5.924px, calc(5.924px + 8.886 * ((100vw - 768px) / 519)), 14.81px)
      clamp(2.944px, calc(2.944px + 4.416 * ((100vw - 768px) / 519)), 7.36px)
      clamp(5.672px, calc(5.672px + 8.508 * ((100vw - 768px) / 519)), 14.18px);
    border-radius: clamp(
      2.919px,
      calc(2.919px + 1.251 * ((100vw - 768px) / 519)),
      4.17px
    );
    font-size: 0.845rem;
    margin-left: clamp(
      10.252px,
      calc(10.252px + 15.378 * ((100vw - 768px) / 519)),
      25.63px
    );
    text-wrap: nowrap;
  }

  .news-list__title {
    font-size: 1.005625rem;
    line-height: 1.7091361094;
    margin-left: clamp(
      12.956px,
      calc(12.956px + 19.434 * ((100vw - 768px) / 519)),
      32.39px
    );
  }

  .column-list {
    grid-template-columns: repeat(3, 1fr);
    -webkit-column-gap: 30.64px;
    -moz-column-gap: 30.64px;
    column-gap: 30.64px;
  }

  .column-list--archive {
    grid-template-columns: 1fr;
    -webkit-column-gap: 0;
    -moz-column-gap: 0;
    column-gap: 0;
  }

  .column-list__item--archive:not(:first-child) {
    padding-top: clamp(
      9.2px,
      calc(9.2px + 13.8 * ((100vw - 768px) / 519)),
      23px
    );
  }

  .column-list__item--archive {
    padding-bottom: clamp(
      13.68px,
      calc(13.68px + 20.52 * ((100vw - 768px) / 519)),
      34.2px
    );
  }

  .column-list__card-link--archive {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-column-gap: clamp(
      15.584px,
      calc(15.584px + 23.376 * ((100vw - 768px) / 519)),
      38.96px
    );
    -moz-column-gap: clamp(
      15.584px,
      calc(15.584px + 23.376 * ((100vw - 768px) / 519)),
      38.96px
    );
    column-gap: clamp(
      15.584px,
      calc(15.584px + 23.376 * ((100vw - 768px) / 519)),
      38.96px
    );
    border-radius: 1.0285714286vw;
    -webkit-transition: background-color 0.3s;
    transition: background-color 0.3s;
  }

  .column-list__image-wrapper {
    border-radius: 1.0285714286vw;
  }

  .column-list__image-wrapper--archive {
    width: clamp(
      217.272px,
      calc(217.272px + 177.768 * ((100vw - 768px) / 519)),
      395.04px
    );
  }

  .column-list__image {
    aspect-ratio: 395.04/233.8;
  }

  .column-list__body--archive {
    width: clamp(
      224.4px,
      calc(224.4px + 149.6 * ((100vw - 768px) / 519)),
      374px
    );
    margin-top: 0;
  }

  .column-list__category-wrapper {
    margin: 0;
    gap: clamp(4px, calc(4px + 6 * ((100vw - 768px) / 519)), 10px);
  }

  .column-list__category-wrapper--top,
  .column-list__category-wrapper--recommend {
    margin-top: clamp(6px, calc(6px + 9 * ((100vw - 768px) / 519)), 15px);
  }

  .column-list__category {
    margin: 0;
    padding: 0.77px 7.94px 1.23px 9.06px;
    border-radius: clamp(
      1.936px,
      calc(1.936px + 2.904 * ((100vw - 768px) / 519)),
      4.84px
    );
    font-size: 0.86875rem;
  }

  .column-list__title {
    margin-top: clamp(
      7.532px,
      calc(7.532px + 11.298 * ((100vw - 768px) / 519)),
      18.83px
    );
    font-size: 1.25rem;
    line-height: 1.7;
    padding: 0 10.64px 0 9.4px;
    padding: 0
      clamp(4.256px, calc(4.256px + 6.384 * ((100vw - 768px) / 519)), 10.64px) 0
      clamp(3.76px, calc(3.76px + 5.64 * ((100vw - 768px) / 519)), 9.4px);
  }

  .column-list__title--top,
  .column-list__title--recommend {
    margin-top: clamp(3.2px, calc(3.2px + 4.8 * ((100vw - 768px) / 519)), 8px);
    padding: 0;
  }

  .column-list__title--archive {
    margin-top: clamp(4.4px, calc(4.4px + 6.6 * ((100vw - 768px) / 519)), 11px);
    padding-inline: 0;
  }

  .column-list__meta {
    margin-top: clamp(
      6.8px,
      calc(6.8px + 10.2 * ((100vw - 768px) / 519)),
      17px
    );
    padding: 0
      clamp(5.056px, calc(5.056px + 7.584 * ((100vw - 768px) / 519)), 12.64px) 0
      clamp(3.36px, calc(3.36px + 5.04 * ((100vw - 768px) / 519)), 8.4px);
  }

  .column-list__meta--archive {
    padding-inline: 0;
    margin-top: clamp(
      9.2px,
      calc(9.2px + 13.8 * ((100vw - 768px) / 519)),
      23px
    );
  }

  .column-list__author {
    -webkit-column-gap: clamp(
      4.4px,
      calc(4.4px + 6.6 * ((100vw - 768px) / 519)),
      11px
    );
    -moz-column-gap: clamp(
      4.4px,
      calc(4.4px + 6.6 * ((100vw - 768px) / 519)),
      11px
    );
    column-gap: clamp(4.4px, calc(4.4px + 6.6 * ((100vw - 768px) / 519)), 11px);
  }

  .column-list__author--archive {
    -webkit-column-gap: clamp(
      3.6px,
      calc(3.6px + 5.4 * ((100vw - 768px) / 519)),
      9px
    );
    -moz-column-gap: clamp(
      3.6px,
      calc(3.6px + 5.4 * ((100vw - 768px) / 519)),
      9px
    );
    column-gap: clamp(3.6px, calc(3.6px + 5.4 * ((100vw - 768px) / 519)), 9px);
  }

  .column-list__author-image-wrapper {
    width: 2.9375rem;
  }

  .column-list__author-image-wrapper--archive {
    width: clamp(13.2px, calc(13.2px + 19.8 * ((100vw - 768px) / 519)), 33px);
  }

  .column-list__author-name {
    font-size: 0.8125rem;
    line-height: 1.4861538462;
  }

  .column-list__date {
    font-size: 0.8125rem;
    line-height: 1.2515384615;
    margin-right: clamp(
      1.6px,
      calc(1.6px + 2.4 * ((100vw - 768px) / 519)),
      4px
    );
  }

  .page-heading__meta {
    -webkit-column-gap: 0.5625rem;
    -moz-column-gap: 0.5625rem;
    column-gap: 0.5625rem;
  }

  .page-heading__icon {
    width: 2.16125rem;
  }

  .page-heading__label {
    font-size: 1.0625rem;
    line-height: 0.9411764706;
  }

  .page-heading__title {
    margin-top: 3px;
    font-size: 2.25rem;
    line-height: 1.1944444444;
  }

  .about-page__fv,
  .news-page__fv,
  .column-page__fv {
    margin-top: 3.971875rem;
  }

  .page-fv__inner {
    max-width: 1240px;
    padding-inline: 20px;
  }

  .page-fv__inner--faq {
    max-width: 1295px;
    padding-inline: 20px;
  }

  .page-fv__heading {
    -webkit-column-gap: 1.375rem;
    -moz-column-gap: 1.375rem;
    column-gap: 1.375rem;
  }

  .page-fv__heading--faq {
    margin-top: clamp(
      33.6px,
      calc(33.6px + 14.4 * ((100vw - 768px) / 519)),
      48px
    );
  }

  .page-fv__heading--column {
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    margin-inline: auto;
  }

  .page-fv__heading--not-found {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    margin-top: clamp(
      17.5px,
      calc(17.5px + 7.5 * ((100vw - 768px) / 519)),
      25px
    );
  }

  .page-fv__heading-title {
    font-size: 2.76875rem;
    line-height: 1.1963882619;
  }

  .safari .page-fv__heading-title {
    font-size: 2.76875rem;
  }

  .page-fv__heading-title--not-found {
    font-size: 19.8125rem;
    line-height: 0.6940063091;
  }

  .page-fv__heading-right {
    -webkit-column-gap: 1.295rem;
    -moz-column-gap: 1.295rem;
    column-gap: 1.295rem;
  }

  .page-fv__heading-icon {
    width: 4.53625rem;
  }

  .page-fv__heading-label {
    font-size: 1.135rem;
    line-height: 1.2114537445;
  }

  .page-fv__description {
    margin-top: clamp(
      12.364px,
      calc(12.364px + 18.546 * ((100vw - 768px) / 519)),
      30.91px
    );
    font-size: 1.0625rem;
    font-weight: 700;
    line-height: 1.1764705882;
    text-align: center;
  }

  .page-fv__inner--single {
    position: relative;
    max-width: 1080px;
    padding-inline: 20px;
  }

  .page-fv__heading-title--single {
    font-size: 3rem;
    line-height: 1.2708333333;
    margin-left: 0.875rem;
  }

  .custom-pagination__list {
    -webkit-column-gap: clamp(
      13px,
      calc(13px + 13 * ((100vw - 768px) / 519)),
      26px
    );
    -moz-column-gap: clamp(
      13px,
      calc(13px + 13 * ((100vw - 768px) / 519)),
      26px
    );
    column-gap: clamp(13px, calc(13px + 13 * ((100vw - 768px) / 519)), 26px);
  }

  .pagination__link.current,
  .custom-pagination__item.is-current .pagination__link {
    width: clamp(
      19.845px,
      calc(19.845px + 19.845 * ((100vw - 768px) / 519)),
      39.69px
    );
    height: clamp(
      19.845px,
      calc(19.845px + 19.845 * ((100vw - 768px) / 519)),
      39.69px
    );
  }

  .pagination__link img {
    width: clamp(
      9.215px,
      calc(9.215px + 9.215 * ((100vw - 768px) / 519)),
      18.43px
    );
  }

  .breadcrumbsWrap {
    padding-top: clamp(
      17.843px,
      calc(17.843px + 7.647 * ((100vw - 768px) / 519)),
      25.49px
    );
  }

  .breadcrumbsWrap:has(.breadcrumbs--s-column) {
    padding-top: clamp(
      25.9px,
      calc(25.9px + 11.1 * ((100vw - 768px) / 519)),
      37px
    );
  }

  .breadcrumbs {
    max-width: 1240px;
    padding-inline: 20px;
    font-size: 0.75rem;
    padding-inline: 20px;
  }

  .breadcrumbs--s-column {
    max-width: 1080px;
    padding-inline: 20px;
    padding-left: 34px;
  }

  .breadcrumbs--faq {
    max-width: 1295px;
    padding-inline: 20px;
  }

  .breadcrumbs--page {
    max-width: 1100px;
    padding-inline: 20px;
  }

  .breadcrumbs .home,
  .breadcrumbs a {
    font-size: 0.75rem;
    -webkit-column-gap: clamp(
      4.914px,
      calc(4.914px + 2.106 * ((100vw - 768px) / 519)),
      7.02px
    );
    -moz-column-gap: clamp(
      4.914px,
      calc(4.914px + 2.106 * ((100vw - 768px) / 519)),
      7.02px
    );
    column-gap: clamp(
      4.914px,
      calc(4.914px + 2.106 * ((100vw - 768px) / 519)),
      7.02px
    );
  }

  .breadcrumbs .breadcrumbs-icon {
    width: 1.35875rem;
  }

  .breadcrumbs .breadcrumb-arrow {
    width: 0.37rem;
    top: -0.25rem;
  }

  .mv {
    max-width: 1669.37px;
    padding-inline: 20px;
    margin-inline: auto;
    height: 100%;
    padding-bottom: clamp(
      15.4px,
      calc(15.4px + 6.6 * ((100vw - 768px) / 519)),
      22px
    );
  }

  .mv__labels {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    background-color: transparent;
    row-gap: clamp(
      3.696px,
      calc(3.696px + 1.584 * ((100vw - 768px) / 519)),
      5.28px
    );
    padding: 0;
  }

  .mv__labels--pc {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
  }

  .mv__label {
    font-weight: 900;
    line-height: 1.1920222635;
    letter-spacing: 0.09em;
    color: #fff;
  }

  .mv__label--left {
    font-size: clamp(
      15.092px,
      calc(15.092px + 6.468 * ((100vw - 768px) / 519)),
      21.56px
    );
    width: clamp(
      145.334px,
      calc(145.334px + 62.286 * ((100vw - 768px) / 519)),
      207.62px
    );
    height: clamp(
      30.828px,
      calc(30.828px + 13.212 * ((100vw - 768px) / 519)),
      44.04px
    );
    background-color: #f7511e;
    border-radius: clamp(
      2.877px,
      calc(2.877px + 1.233 * ((100vw - 768px) / 519)),
      4.11px
    );
  }

  .mv__label--right {
    font-size: clamp(
      15.47px,
      calc(15.47px + 6.63 * ((100vw - 768px) / 519)),
      22.1px
    );
    line-height: 1.1900452489;
    width: clamp(
      181.3px,
      calc(181.3px + 77.7 * ((100vw - 768px) / 519)),
      259px
    );
    height: clamp(
      31.598px,
      calc(31.598px + 13.542 * ((100vw - 768px) / 519)),
      45.14px
    );
    background-color: #f7511e;
    border-radius: clamp(
      2.947px,
      calc(2.947px + 1.263 * ((100vw - 768px) / 519)),
      4.21px
    );
    display: grid;
    place-items: center;
  }

  .mv__image-wrapper {
    overflow: hidden;
    border-radius: 2.331002331vw;
    height: 100%;
  }

  .mv__image {
    aspect-ratio: 1629.37/707.03;
  }

  .mv__inner {
    position: absolute;
    top: 0;
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    width: 90%;
  }

  .mv__left {
    bottom: initial;
    top: clamp(50.1px, calc(50.1px + 116.9 * ((100vw - 768px) / 519)), 167px);
    left: 0;
  }

  .mv__title {
    margin-top: clamp(
      7.775px,
      calc(7.775px + 7.775 * ((100vw - 768px) / 519)),
      15.55px
    );
    font-size: clamp(
      28.12px,
      calc(28.12px + 28.12 * ((100vw - 768px) / 519)),
      56.24px
    );
    line-height: 1.4811522048;
    letter-spacing: 0.15em;
  }

  .mv__cta {
    left: initial;
    bottom: clamp(15.4px, calc(15.4px + 6.6 * ((100vw - 768px) / 519)), 22px);
    right: 20px;
    width: clamp(
      274.274px,
      calc(274.274px + 117.546 * ((100vw - 768px) / 519)),
      391.82px
    );
  }

  .products {
    margin-top: -1.3125rem;
  }

  .products__list {
    margin-top: clamp(
      18.204px,
      calc(18.204px + 27.306 * ((100vw - 768px) / 519)),
      45.51px
    );
    grid-template-columns: repeat(3, 1fr);
    -webkit-column-gap: clamp(
      18.24px,
      calc(18.24px + 27.36 * ((100vw - 768px) / 519)),
      45.6px
    );
    -moz-column-gap: clamp(
      18.24px,
      calc(18.24px + 27.36 * ((100vw - 768px) / 519)),
      45.6px
    );
    column-gap: clamp(
      18.24px,
      calc(18.24px + 27.36 * ((100vw - 768px) / 519)),
      45.6px
    );
    row-gap: clamp(27.6px, calc(27.6px + 41.4 * ((100vw - 768px) / 519)), 69px);
  }

  .products__item--featured {
    grid-column: 1/-1;
  }

  .about {
    margin-top: -100px;
    padding-bottom: clamp(
      32px,
      calc(32px + 48 * ((100vw - 768px) / 519)),
      80px
    );
  }

  .about__image-wrapper {
    max-width: 1072px;
    margin-inline: auto;
    border-radius: min(30px, 2.7272727273vw);
  }

  .about__image {
    aspect-ratio: 1072/549;
  }

  .about__content {
    margin-top: clamp(
      13.6px,
      calc(13.6px + 20.4 * ((100vw - 768px) / 519)),
      34px
    );
    max-width: 1040px;
    margin-inline: auto;
    padding-left: clamp(6px, calc(6px + 9 * ((100vw - 768px) / 519)), 15px);
  }

  .about__catchphrase-wrapper--vertical {
    position: absolute;
    top: clamp(110px, calc(110px + 165 * ((100vw - 768px) / 519)), 275px);
    right: clamp(29.2px, calc(29.2px + 43.8 * ((100vw - 768px) / 519)), 73px);
    -webkit-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    text-orientation: upright;
    height: 100%;
    z-index: 1;
  }

  .about__catchphrase {
    font-size: 4.91125rem;
    letter-spacing: 0.1em;
  }

  .about__catchphrase .small {
    font-size: 3.97375rem;
    margin-bottom: 0;
    margin-left: clamp(
      7.6px,
      calc(7.6px + 11.4 * ((100vw - 768px) / 519)),
      19px
    );
    letter-spacing: 0.1em;
  }

  .about__title {
    margin-top: 0;
    font-size: 1.69375rem;
    padding-left: 0;
  }

  .about__text {
    margin-top: clamp(
      9.2px,
      calc(9.2px + 13.8 * ((100vw - 768px) / 519)),
      23px
    );
    font-size: 0.998125rem;
    line-height: 2.3168440827;
    width: clamp(
      581.7px,
      calc(581.7px + 249.3 * ((100vw - 768px) / 519)),
      831px
    );
    margin-left: -4px;
  }

  .about__button-detail {
    margin-top: clamp(12px, calc(12px + 18 * ((100vw - 768px) / 519)), 30px);
  }

  .news__inner {
    max-width: 1630px;
    padding-inline: 20px;
  }

  .news__container {
    padding: clamp(28px, calc(28px + 42 * ((100vw - 768px) / 519)), 70px) 20px
      clamp(24.8px, calc(24.8px + 37.2 * ((100vw - 768px) / 519)), 62px);
    border-radius: clamp(
      80px,
      calc(80px + 120 * ((100vw - 768px) / 519)),
      200px
    );
  }

  .news__contents {
    max-width: 1040px;
    margin-inline: auto;
    padding-inline: clamp(
      8.4px,
      calc(8.4px + 12.6 * ((100vw - 768px) / 519)),
      21px
    );
    padding-inline: 21px;
  }

  .news__list {
    margin-top: clamp(
      13.544px,
      calc(13.544px + 20.316 * ((100vw - 768px) / 519)),
      33.86px
    );
  }

  .news__button-detail {
    margin-top: clamp(
      18.344px,
      calc(18.344px + 27.516 * ((100vw - 768px) / 519)),
      45.86px
    );
  }

  .news__vertical-wrapper {
    top: 46.5%;
    left: clamp(24.5px, calc(24.5px + 10.5 * ((100vw - 768px) / 519)), 35px);
  }

  .column {
    padding: clamp(37.6px, calc(37.6px + 56.4 * ((100vw - 768px) / 519)), 94px)
      0 clamp(37.2px, calc(37.2px + 55.8 * ((100vw - 768px) / 519)), 93px);
  }

  .column__list {
    margin-top: clamp(
      14.752px,
      calc(14.752px + 22.128 * ((100vw - 768px) / 519)),
      36.88px
    );
  }

  .column__button-detail {
    margin-top: clamp(
      22.4px,
      calc(22.4px + 33.6 * ((100vw - 768px) / 519)),
      56px
    );
  }

  .sitemap {
    padding: clamp(
        15.75px,
        calc(15.75px + 19.25 * ((100vw - 768px) / 519)),
        35px
      )
      0 clamp(79.65px, calc(79.65px + 97.35 * ((100vw - 768px) / 519)), 177px);
  }

  .sitemap__columns {
    margin-top: clamp(
      31.95px,
      calc(31.95px + 39.05 * ((100vw - 768px) / 519)),
      71px
    );
    margin-left: clamp(
      1.35px,
      calc(1.35px + 1.65 * ((100vw - 768px) / 519)),
      3px
    );
  }

  .sitemap__column + .sitemap__column {
    margin-top: clamp(
      26.334px,
      calc(26.334px + 32.186 * ((100vw - 768px) / 519)),
      58.52px
    );
  }

  .sitemap__column-heading {
    font-size: 1.445rem;
    line-height: 1.2110726644;
    padding-bottom: 0.54875rem;
  }

  .sitemap__list {
    margin-top: clamp(
      12.915px,
      calc(12.915px + 15.785 * ((100vw - 768px) / 519)),
      28.7px
    );
    -webkit-column-gap: clamp(
      13.5px,
      calc(13.5px + 16.5 * ((100vw - 768px) / 519)),
      30px
    );
    -moz-column-gap: clamp(
      13.5px,
      calc(13.5px + 16.5 * ((100vw - 768px) / 519)),
      30px
    );
    column-gap: clamp(
      13.5px,
      calc(13.5px + 16.5 * ((100vw - 768px) / 519)),
      30px
    );
    row-gap: clamp(8.1px, calc(8.1px + 9.9 * ((100vw - 768px) / 519)), 18px);
  }

  .sitemap__link {
    font-size: 1.125rem;
    line-height: 1.2222222222;
    -webkit-column-gap: clamp(
      4.05px,
      calc(4.05px + 4.95 * ((100vw - 768px) / 519)),
      9px
    );
    -moz-column-gap: clamp(
      4.05px,
      calc(4.05px + 4.95 * ((100vw - 768px) / 519)),
      9px
    );
    column-gap: clamp(
      4.05px,
      calc(4.05px + 4.95 * ((100vw - 768px) / 519)),
      9px
    );
  }

  .sitemap__link-arrow {
    width: 1rem;
  }

  .sitemap__link-pdf {
    width: 1.07125rem;
  }

  .text-marquee--block {
    top: clamp(22.5px, calc(22.5px + 27.5 * ((100vw - 768px) / 519)), 50px);
  }

  .text-marquee--block02 {
    bottom: -100px;
  }

  .about-promise {
    margin-top: -59px;
    padding-bottom: clamp(
      56.7px,
      calc(56.7px + 69.3 * ((100vw - 768px) / 519)),
      126px
    );
  }

  .about-promise__inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    max-width: 1240px;
    padding-inline: clamp(9px, calc(9px + 11 * ((100vw - 768px) / 519)), 20px);
    -webkit-column-gap: clamp(
      57.96px,
      calc(57.96px + 70.84 * ((100vw - 768px) / 519)),
      128.8px
    );
    -moz-column-gap: clamp(
      57.96px,
      calc(57.96px + 70.84 * ((100vw - 768px) / 519)),
      128.8px
    );
    column-gap: clamp(
      57.96px,
      calc(57.96px + 70.84 * ((100vw - 768px) / 519)),
      128.8px
    );
  }

  .about-promise__image-wrapper {
    margin-left: 8px;
    width: clamp(
      213.75px,
      calc(213.75px + 261.25 * ((100vw - 768px) / 519)),
      475px
    );
    border-radius: min(30px, 2.34375vw);
  }

  .about-promise__image {
    aspect-ratio: 475/667;
  }

  .about-promise__content {
    margin-top: clamp(
      36.2px,
      calc(36.2px + 144.8 * ((100vw - 768px) / 519)),
      181px
    );
    margin-right: clamp(
      12.915px,
      calc(12.915px + 15.785 * ((100vw - 768px) / 519)),
      28.7px
    );
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
  }

  .about-promise__title {
    font-size: 2.3125rem;
    text-wrap: nowrap;
  }

  .about-promise__highlight {
    margin-left: -18px;
    margin-top: clamp(
      2.25px,
      calc(2.25px + 2.75 * ((100vw - 768px) / 519)),
      5px
    );
  }

  .about-promise__title-decoration {
    left: -2.925rem;
    bottom: -2.125rem;
    width: 9.9375rem;
  }

  .about-promise__paragraph {
    margin-top: clamp(
      22.05px,
      calc(22.05px + 26.95 * ((100vw - 768px) / 519)),
      49px
    );
    font-size: 0.9375rem;
    line-height: 2.2;
    font-weight: 500;
  }

  .promise__signature {
    margin-top: clamp(6.3px, calc(6.3px + 7.7 * ((100vw - 768px) / 519)), 14px);
    font-size: 0.7225rem;
    margin-right: 0;
  }

  .promise__signature .mt {
    letter-spacing: 0.07em;
    margin-top: -3px;
  }

  .about-menu__inner {
    max-width: 1109px;
    padding-inline: 20px;
  }

  .about-menu__list {
    grid-template-columns: repeat(3, 1fr);
    -webkit-column-gap: clamp(
      3.6px,
      calc(3.6px + 4.4 * ((100vw - 768px) / 519)),
      8px
    );
    -moz-column-gap: clamp(
      3.6px,
      calc(3.6px + 4.4 * ((100vw - 768px) / 519)),
      8px
    );
    column-gap: clamp(3.6px, calc(3.6px + 4.4 * ((100vw - 768px) / 519)), 8px);
  }

  .about-menu__link {
    padding: clamp(12.6px, calc(12.6px + 15.4 * ((100vw - 768px) / 519)), 28px)
      clamp(9.9px, calc(9.9px + 12.1 * ((100vw - 768px) / 519)), 22px)
      clamp(12.6px, calc(12.6px + 15.4 * ((100vw - 768px) / 519)), 28px)
      clamp(14.4px, calc(14.4px + 17.6 * ((100vw - 768px) / 519)), 32px);
    font-size: 0.9375rem;
  }

  .about-menu__icon {
    width: 1.5675rem;
  }

  .about-strengths {
    padding: clamp(
        46.323px,
        calc(46.323px + 56.617 * ((100vw - 768px) / 519)),
        102.94px
      )
      0 clamp(67.95px, calc(67.95px + 83.05 * ((100vw - 768px) / 519)), 151px);
  }

  .about-strengths__inner {
    max-width: 1382px;
  }

  .about-section-heading__meta {
    -webkit-column-gap: clamp(
      4.842px,
      calc(4.842px + 5.918 * ((100vw - 768px) / 519)),
      10.76px
    );
    -moz-column-gap: clamp(
      4.842px,
      calc(4.842px + 5.918 * ((100vw - 768px) / 519)),
      10.76px
    );
    column-gap: clamp(
      4.842px,
      calc(4.842px + 5.918 * ((100vw - 768px) / 519)),
      10.76px
    );
    margin-left: -12px;
  }

  .about-section-heading__icon {
    width: clamp(
      18.5985px,
      calc(18.5985px + 22.7315 * ((100vw - 768px) / 519)),
      41.33px
    );
  }

  .about-section-heading__label {
    font-size: 1.27rem;
    line-height: 0.9399606299;
  }

  .about-section-heading__title {
    margin-top: clamp(
      8.8335px,
      calc(8.8335px + 10.7965 * ((100vw - 768px) / 519)),
      19.63px
    );
    font-size: 1.58625rem;
    line-height: 1.3199369582;
  }

  .about-section-heading__title .large {
    margin-top: clamp(
      4.0635px,
      calc(4.0635px + 4.9665 * ((100vw - 768px) / 519)),
      9.03px
    );
    font-size: 3.52875rem;
    line-height: 1.2043924903;
  }

  .about-strengths__list {
    margin-top: 70px;
  }

  .about-strengths__item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-column-gap: clamp(
      46.5px,
      calc(46.5px + 46.5 * ((100vw - 768px) / 614)),
      93px
    );
    -moz-column-gap: clamp(
      46.5px,
      calc(46.5px + 46.5 * ((100vw - 768px) / 614)),
      93px
    );
    column-gap: clamp(
      46.5px,
      calc(46.5px + 46.5 * ((100vw - 768px) / 614)),
      93px
    );
  }

  .about-strengths__item--reverse {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;
    -webkit-column-gap: clamp(
      60px,
      calc(60px + 140 * ((100vw - 768px) / 614)),
      200px
    );
    -moz-column-gap: clamp(
      60px,
      calc(60px + 140 * ((100vw - 768px) / 614)),
      200px
    );
    column-gap: clamp(60px, calc(60px + 140 * ((100vw - 768px) / 614)), 200px);
  }

  .about-strengths__item + .about-strengths__item {
    margin-top: 80px;
  }

  .about-strengths__image-wrapper {
    width: clamp(
      355.05px,
      calc(355.05px + 433.95 * ((100vw - 768px) / 912)),
      789px
    );
  }

  .about-strengths__image-wrapper::after {
    width: clamp(
      359.55px,
      calc(359.55px + 439.45 * ((100vw - 768px) / 912)),
      799px
    );
    top: clamp(4.5px, calc(4.5px + 5.5 * ((100vw - 768px) / 912)), 10px);
  }

  .about-strengths__image {
    aspect-ratio: 789/487;
  }

  .about-strengths__content {
    margin-top: 0;
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
  }

  .about-strengths__content--02 {
    margin-top: 0;
  }

  .about-strengths__content--03 {
    margin-top: 0;
  }

  .about-strengths__title {
    font-size: 1.6875rem;
    margin-left: -5px;
  }

  .about-strengths__text {
    margin-top: clamp(
      13.95px,
      calc(13.95px + 17.05 * ((100vw - 768px) / 614)),
      31px
    );
    font-size: 0.875rem;
    width: clamp(
      307.2px,
      calc(307.2px + 204.8 * ((100vw - 768px) / 614)),
      512px
    );
  }

  .about-strengths__number {
    top: -50px;
    right: 0;
  }

  .about-strengths__number--reverse {
    top: -37px;
    right: -30px;
  }

  .about-strengths__top-text {
    top: 0;
    left: -12px;
    font-size: clamp(
      94.977px,
      calc(94.977px + 116.083 * ((100vw - 768px) / 1012)),
      211.06px
    );
    line-height: 1.01;
  }

  .about-vision {
    padding: 103px 0 44.42px;
  }

  .about-vision__inner {
    max-width: 1120px;
    padding-inline: 20px;
  }

  .about-section-heading__meta--about-vision {
    -webkit-column-gap: 9px;
    -moz-column-gap: 9px;
    column-gap: 9px;
    margin-left: 8px;
  }

  .about-section-heading__icon--about-vision {
    width: 34.58px;
  }

  .about-section-heading__label--about-vision {
    font-size: 1.0625rem;
  }

  .about-section-heading__title--about-vision {
    margin-top: 29.82px;
    font-size: 2.75rem;
  }

  .about-section-heading__title--about-vision .small {
    margin-bottom: 7px;
    font-size: 1.8125rem;
  }

  .safari .about-section-heading__title--about-vision .small {
    font-size: 1.8125rem;
  }

  .about-vision__image-wrapper {
    margin-top: 60px;
    width: 100%;
    border-radius: min(30px, 2.7777777778vw);
  }

  .about-vision__image {
    aspect-ratio: 1079.51/605;
  }

  .about-vision__statement {
    margin-top: -122px;
    margin-left: 50.75px;
    font-size: 2.5rem;
  }

  .about-vision__features {
    margin-top: 0;
    padding-top: 109px;
  }

  .about-vision__mascot {
    top: 59px;
    left: 64.8px;
    width: 236.66px;
  }

  .about-vision__list {
    margin-left: 308.75px;
  }

  .about-vision__item + .about-vision__item {
    margin-top: 28.42px;
  }

  .about-vision__number {
    -webkit-column-gap: 17px;
    -moz-column-gap: 17px;
    column-gap: 17px;
    font-size: 1.0625rem;
    line-height: 0.9411764706;
  }

  .about-vision__number-heart {
    width: 34.58px;
  }

  .about-vision__text {
    margin-top: 10px;
    font-size: 18px;
    width: 100%;
  }

  .text-marquee--about-vision {
    top: 1070px;
  }

  .text-marquee__text--about-vision {
    font-size: clamp(125px, calc(125px + 125 * ((100vw - 768px) / 912)), 250px);
  }

  .about-overview {
    padding: clamp(
        24.489px,
        calc(24.489px + 29.931 * ((100vw - 768px) / 519)),
        54.42px
      )
      0 clamp(54px, calc(54px + 66 * ((100vw - 768px) / 519)), 120px);
  }

  .about-overview__inner {
    max-width: 1120px;
    padding-inline: 20px;
  }

  .about-overview__container {
    padding: clamp(45px, calc(45px + 55 * ((100vw - 768px) / 519)), 100px)
      clamp(22.5px, calc(22.5px + 27.5 * ((100vw - 768px) / 519)), 50px)
      clamp(
        54.1575px,
        calc(54.1575px + 66.1925 * ((100vw - 768px) / 519)),
        120.35px
      );
    border-radius: clamp(
      90px,
      calc(90px + 110 * ((100vw - 768px) / 519)),
      200px
    );
  }

  .about-section-heading__meta--about-overview {
    -webkit-column-gap: clamp(
      4.05px,
      calc(4.05px + 4.95 * ((100vw - 768px) / 519)),
      9px
    );
    -moz-column-gap: clamp(
      4.05px,
      calc(4.05px + 4.95 * ((100vw - 768px) / 519)),
      9px
    );
    column-gap: clamp(
      4.05px,
      calc(4.05px + 4.95 * ((100vw - 768px) / 519)),
      9px
    );
  }

  .about-section-heading__icon--about-overview {
    width: clamp(
      15.561px,
      calc(15.561px + 19.019 * ((100vw - 768px) / 519)),
      34.58px
    );
  }

  .about-section-heading__label--about-overview {
    font-size: 1.0625rem;
    line-height: 0.9411764706;
  }

  .about-section-heading__title--about-overview {
    margin-top: clamp(
      9.189px,
      calc(9.189px + 11.231 * ((100vw - 768px) / 519)),
      20.42px
    );
    font-size: 2.701875rem;
    line-height: 1.2028683784;
  }

  .about-overview__list {
    margin-top: clamp(
      19.8675px,
      calc(19.8675px + 24.2825 * ((100vw - 768px) / 519)),
      44.15px
    );
    max-width: 630px;
    margin-inline: auto;
  }

  .about-overview__item {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    padding-top: clamp(
      11.34px,
      calc(11.34px + 13.86 * ((100vw - 768px) / 519)),
      25.2px
    );
    padding-bottom: clamp(
      10.08px,
      calc(10.08px + 12.32 * ((100vw - 768px) / 519)),
      22.4px
    );
  }

  .about-overview__item::after {
    background: -webkit-gradient(
      linear,
      left top,
      right top,
      from(#f44317),
      color-stop(34.12%, #f44317),
      color-stop(34.12%, #d8d8d8),
      to(#d8d8d8)
    );
    background: linear-gradient(
      to right,
      #f44317 0%,
      #f44317 34.12%,
      #d8d8d8 34.12%,
      #d8d8d8 100%
    );
  }

  .about-overview__term {
    width: 34.12%;
    font-size: 1.0125rem;
    line-height: 1.1728395062;
    padding-left: clamp(
      4.05px,
      calc(4.05px + 4.95 * ((100vw - 768px) / 519)),
      9px
    );
  }

  .about-overview__definition {
    font-size: 1.0125rem;
    line-height: 1.1728395062;
  }

  .about-overview__definition--address {
    line-height: 1.58;
    font-size: 0.9rem;
  }

  .about-overview__access-item {
    line-height: 1.58;
    font-size: 0.9rem;
  }

  .about-overview__map-wrapper {
    margin-top: clamp(
      4.41px,
      calc(4.41px + 5.39 * ((100vw - 768px) / 519)),
      9.8px
    );
    margin-bottom: clamp(
      4.5px,
      calc(4.5px + 5.5 * ((100vw - 768px) / 519)),
      10px
    );
    width: clamp(
      154.305px,
      calc(154.305px + 188.595 * ((100vw - 768px) / 519)),
      342.9px
    );
    width: 100%;
  }

  .about-overview__vertical {
    top: 46%;
    left: clamp(22.5px, calc(22.5px + 27.5 * ((100vw - 768px) / 519)), 50px);
  }

  .about-overview__vertical-text {
    font-size: 0.829375rem;
    line-height: 1.2057272042;
  }

  .ir {
    padding-top: clamp(
      17.1px,
      calc(17.1px + 20.9 * ((100vw - 768px) / 519)),
      38px
    );
  }

  .ir-results {
    margin-top: clamp(
      14.4px,
      calc(14.4px + 17.6 * ((100vw - 768px) / 519)),
      32px
    );
    margin-left: clamp(
      2.25px,
      calc(2.25px + 2.75 * ((100vw - 768px) / 519)),
      5px
    );
  }

  .ir-pdf__link {
    -webkit-column-gap: clamp(
      7.2px,
      calc(7.2px + 8.8 * ((100vw - 768px) / 519)),
      16px
    );
    -moz-column-gap: clamp(
      7.2px,
      calc(7.2px + 8.8 * ((100vw - 768px) / 519)),
      16px
    );
    column-gap: clamp(7.2px, calc(7.2px + 8.8 * ((100vw - 768px) / 519)), 16px);
    padding: clamp(9.9px, calc(9.9px + 12.1 * ((100vw - 768px) / 519)), 22px)
      clamp(9px, calc(9px + 11 * ((100vw - 768px) / 519)), 20px)
      clamp(
        7.0875px,
        calc(7.0875px + 8.6625 * ((100vw - 768px) / 519)),
        15.75px
      )
      0;
  }

  .ir-pdf__text {
    margin-left: clamp(
      2.25px,
      calc(2.25px + 2.75 * ((100vw - 768px) / 519)),
      5px
    );
  }

  .ir-pdf__icon {
    width: 1.07125rem;
  }

  .disclosures {
    margin-top: clamp(
      48.15px,
      calc(48.15px + 58.85 * ((100vw - 768px) / 519)),
      107px
    );
    padding-bottom: clamp(
      58.05px,
      calc(58.05px + 70.95 * ((100vw - 768px) / 519)),
      129px
    );
  }

  .disclosures__description {
    margin-top: clamp(
      24.489px,
      calc(24.489px + 29.931 * ((100vw - 768px) / 519)),
      54.42px
    );
    margin-left: clamp(
      2.25px,
      calc(2.25px + 2.75 * ((100vw - 768px) / 519)),
      5px
    );
  }

  .disclosures-results {
    margin-top: clamp(
      7.623px,
      calc(7.623px + 9.317 * ((100vw - 768px) / 519)),
      16.94px
    );
  }

  .block-contents {
    margin-top: clamp(
      28.35px,
      calc(28.35px + 34.65 * ((100vw - 768px) / 519)),
      63px
    );
  }

  .block-contents p,
  .block-contents--small p.large {
    margin-left: clamp(
      2.25px,
      calc(2.25px + 2.75 * ((100vw - 768px) / 519)),
      5px
    );
    font-size: 1rem;
  }

  .block-contents p + p {
    margin-top: clamp(
      11.25px,
      calc(11.25px + 13.75 * ((100vw - 768px) / 519)),
      25px
    );
  }

  .block-contents p:not(:first-of-type) {
    margin-top: clamp(4.5px, calc(4.5px + 5.5 * ((100vw - 768px) / 519)), 10px);
  }

  .block-contents p.mt20 {
    margin-top: clamp(
      13.5px,
      calc(13.5px + 16.5 * ((100vw - 768px) / 519)),
      30px
    );
  }

  .block-contents ul.custom-link-list {
    margin-top: clamp(
      15.3px,
      calc(15.3px + 18.7 * ((100vw - 768px) / 519)),
      34px
    );
    padding-left: 1.5rem;
    margin-left: clamp(
      2.25px,
      calc(2.25px + 2.75 * ((100vw - 768px) / 519)),
      5px
    );
  }

  .block-contents p + ul.custom-link-list {
    margin-top: clamp(
      3.15px,
      calc(3.15px + 3.85 * ((100vw - 768px) / 519)),
      7px
    );
  }

  .block-contents ul.custom-link-list li + li {
    margin-top: clamp(3.6px, calc(3.6px + 4.4 * ((100vw - 768px) / 519)), 8px);
  }

  .block-contents ul.custom-link-list a {
    font-size: 1rem;
  }

  .block-contents .pdf-icon {
    width: 1.07125rem;
    margin-top: -3px;
    margin-left: 0.4375rem;
  }

  .block-contents h2 {
    margin-top: clamp(
      15.3px,
      calc(15.3px + 18.7 * ((100vw - 768px) / 519)),
      34px
    );
    padding: clamp(4.95px, calc(4.95px + 6.05 * ((100vw - 768px) / 519)), 11px)
      0;
    font-size: 1.01625rem;
    line-height: 1.4760147601;
    padding-left: clamp(
      15.304px,
      calc(15.304px + 3.826 * ((100vw - 768px) / 519)),
      19.13px
    );
  }

  .block-contents h2::before {
    left: 0;
    width: clamp(3.2px, calc(3.2px + 0.8 * ((100vw - 768px) / 519)), 4px);
    height: clamp(
      21.15px,
      calc(21.15px + 25.85 * ((100vw - 768px) / 519)),
      47px
    );
    border-radius: clamp(
      4.5px,
      calc(4.5px + 5.5 * ((100vw - 768px) / 519)),
      10px
    );
  }

  .block-contents h2 + p {
    margin-top: clamp(4.5px, calc(4.5px + 5.5 * ((100vw - 768px) / 519)), 10px);
  }

  .block-contents--small p {
    font-size: 0.9375rem;
    margin-top: clamp(4.5px, calc(4.5px + 5.5 * ((100vw - 768px) / 519)), 10px);
    margin-left: clamp(16px, calc(16px + 4 * ((100vw - 768px) / 519)), 20px);
  }

  .block-contents p.text-xsmall,
  .block-contents span.text-xsmall {
    font-size: 0.8125rem;
    margin-left: clamp(16px, calc(16px + 4 * ((100vw - 768px) / 519)), 20px);
  }

  .block-contents--small p + p.text-xsmall {
    margin-top: clamp(
      12.6px,
      calc(12.6px + 15.4 * ((100vw - 768px) / 519)),
      28px
    );
  }

  .block-contents--small p.text-xsmall + p {
    margin-top: clamp(
      12.6px,
      calc(12.6px + 15.4 * ((100vw - 768px) / 519)),
      28px
    );
  }

  .block-contents .contact-frame {
    margin-top: clamp(
      12.6px,
      calc(12.6px + 15.4 * ((100vw - 768px) / 519)),
      28px
    );
    width: 100%;
    margin-inline: clamp(9px, calc(9px + 11 * ((100vw - 768px) / 519)), 20px);
    border-radius: clamp(
      4.5px,
      calc(4.5px + 5.5 * ((100vw - 768px) / 519)),
      10px
    );
    padding: clamp(6.75px, calc(6.75px + 8.25 * ((100vw - 768px) / 519)), 15px)
      clamp(12.15px, calc(12.15px + 14.85 * ((100vw - 768px) / 519)), 27px)
      clamp(9px, calc(9px + 11 * ((100vw - 768px) / 519)), 20px);
  }

  .block-contents .contact-frame__title {
    font-size: 0.9375rem;
    margin-left: 0;
  }

  .block-contents .contact-frame__text {
    margin-top: clamp(3.6px, calc(3.6px + 4.4 * ((100vw - 768px) / 519)), 8px);
    font-size: 0.8125rem;
    margin-left: 0;
  }

  .block-contents .contact-frame + p {
    margin-top: clamp(
      11.25px,
      calc(11.25px + 13.75 * ((100vw - 768px) / 519)),
      25px
    );
  }

  .block-contents figure.wp-block-table {
    overflow-x: visible;
    width: 100%;
    margin-inline: clamp(9px, calc(9px + 11 * ((100vw - 768px) / 519)), 20px);
  }

  .block-contents table {
    width: 100%;
    margin-top: clamp(
      12.6px,
      calc(12.6px + 15.4 * ((100vw - 768px) / 519)),
      28px
    );
    font-size: 1rem;
    min-width: initial;
  }

  .wp-block-table td,
  .wp-block-table th {
    border: none;
  }

  .block-contents table td {
    min-width: 13.1875rem;
    padding: clamp(6.75px, calc(6.75px + 8.25 * ((100vw - 768px) / 519)), 15px)
      clamp(14.4px, calc(14.4px + 17.6 * ((100vw - 768px) / 519)), 32px);
  }

  .block-contents .contact-block {
    margin-top: clamp(
      19.8px,
      calc(19.8px + 24.2 * ((100vw - 768px) / 519)),
      44px
    );
    margin-inline: clamp(9px, calc(9px + 11 * ((100vw - 768px) / 519)), 20px);
    width: 100%;
  }

  .block-contents .contact-block h3 {
    font-size: 1.25rem;
    padding: clamp(4.95px, calc(4.95px + 6.05 * ((100vw - 768px) / 519)), 11px)
      clamp(
        10.9125px,
        calc(10.9125px + 13.3375 * ((100vw - 768px) / 519)),
        24.25px
      )
      clamp(5.4px, calc(5.4px + 6.6 * ((100vw - 768px) / 519)), 12px);
  }

  .block-contents .contact-block p {
    padding: clamp(8.55px, calc(8.55px + 10.45 * ((100vw - 768px) / 519)), 19px)
      clamp(18.9px, calc(18.9px + 23.1 * ((100vw - 768px) / 519)), 42px)
      clamp(13.5px, calc(13.5px + 16.5 * ((100vw - 768px) / 519)), 30px);
    margin-left: 0;
  }

  .block-contents p.text-small.ml-0 {
    margin-left: 0;
  }

  .news-archive {
    margin-top: -52px;
  }

  .news-archive__inner {
    max-width: 1060px;
    padding-inline: 31px;
  }

  .news-archive__nav {
    margin-top: 38.69px;
  }

  .news-archive__nav-list {
    gap: clamp(9px, calc(9px + 11 * ((100vw - 768px) / 519)), 20px);
  }

  .news-archive__nav-link {
    font-size: 1.225rem;
    line-height: 1.7091836735;
  }

  .news-archive__nav-arrow {
    width: clamp(
      7.443px,
      calc(7.443px + 9.097 * ((100vw - 768px) / 519)),
      16.54px
    );
  }

  .news-archive__list {
    -webkit-transition-delay: 1s;
    transition-delay: 1s;
  }

  .archive-columns {
    padding: clamp(20.8px, calc(20.8px + 31.2 * ((100vw - 768px) / 519)), 52px)
      clamp(0px, calc(0px + 0 * ((100vw - 768px) / 519)), 0px)
      clamp(
        36.924px,
        calc(36.924px + 55.386 * ((100vw - 768px) / 519)),
        92.31px
      );
  }

  .archive-columns__inner {
    max-width: 1284px;
    padding-inline: 20px;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    -webkit-column-gap: clamp(
      26.8px,
      calc(26.8px + 40.2 * ((100vw - 768px) / 519)),
      67px
    );
    -moz-column-gap: clamp(
      26.8px,
      calc(26.8px + 40.2 * ((100vw - 768px) / 519)),
      67px
    );
    column-gap: clamp(
      26.8px,
      calc(26.8px + 40.2 * ((100vw - 768px) / 519)),
      67px
    );
  }

  .archive-columns__main {
    width: clamp(
      487.2px,
      calc(487.2px + 324.8 * ((100vw - 768px) / 519)),
      812px
    );
  }

  .archive-columns__title {
    margin-top: clamp(14px, calc(14px + 21 * ((100vw - 768px) / 519)), 35px);
    font-size: 2.1875rem;
    line-height: 1;
  }

  .archive-columns__title + .archive-columns__list {
    margin-top: clamp(
      29.2px,
      calc(29.2px + 43.8 * ((100vw - 768px) / 519)),
      73px
    );
  }

  .archive-columns__sidebar {
    margin-top: clamp(6.4px, calc(6.4px + 9.6 * ((100vw - 768px) / 519)), 16px);
  }

  .sidebar {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
  }

  .sidebar__inner {
    padding-inline: 0;
  }

  .sidebar__search-inner {
    border-radius: clamp(4px, calc(4px + 6 * ((100vw - 768px) / 519)), 10px);
  }

  .sidebar__search-button {
    top: 50%;
    left: clamp(8.5px, calc(8.5px + 8.5 * ((100vw - 768px) / 519)), 17px);
  }

  .sidebar__search-input {
    padding: clamp(6.4px, calc(6.4px + 9.6 * ((100vw - 768px) / 519)), 16px)
      clamp(12px, calc(12px + 18 * ((100vw - 768px) / 519)), 30px)
      clamp(6.4px, calc(6.4px + 9.6 * ((100vw - 768px) / 519)), 16px)
      clamp(24px, calc(24px + 36 * ((100vw - 768px) / 519)), 60px);
    font-size: 1.125rem;
  }

  .sidebar__search-icon {
    width: clamp(8.8px, calc(8.8px + 13.2 * ((100vw - 768px) / 519)), 22px);
  }

  .sidebar__categories {
    margin-top: clamp(
      15.6px,
      calc(15.6px + 23.4 * ((100vw - 768px) / 519)),
      39px
    );
  }

  .sidebar__categories-title {
    -webkit-column-gap: clamp(
      2.8px,
      calc(2.8px + 4.2 * ((100vw - 768px) / 519)),
      7px
    );
    -moz-column-gap: clamp(
      2.8px,
      calc(2.8px + 4.2 * ((100vw - 768px) / 519)),
      7px
    );
    column-gap: clamp(2.8px, calc(2.8px + 4.2 * ((100vw - 768px) / 519)), 7px);
    font-size: 1.0675rem;
    line-height: 1.1709601874;
  }

  .sidebar__categories-list {
    margin-top: clamp(
      6.8px,
      calc(6.8px + 10.2 * ((100vw - 768px) / 519)),
      17px
    );
    gap: clamp(2.8px, calc(2.8px + 4.2 * ((100vw - 768px) / 519)), 7px);
  }

  .sidebar__categories-link {
    padding: clamp(0.8px, calc(0.8px + 1.2 * ((100vw - 768px) / 519)), 2px)
      clamp(4.4px, calc(4.4px + 6.6 * ((100vw - 768px) / 519)), 11px)
      clamp(1.2px, calc(1.2px + 1.8 * ((100vw - 768px) / 519)), 3px)
      clamp(4px, calc(4px + 6 * ((100vw - 768px) / 519)), 10px);
    border-radius: clamp(
      2.4px,
      calc(2.4px + 3.6 * ((100vw - 768px) / 519)),
      6px
    );
    font-size: 1rem;
  }

  .archive-columns__no-results {
    margin-top: clamp(72px, calc(72px + 108 * ((100vw - 768px) / 519)), 180px);
    font-size: 1.5625rem;
  }

  .archive-columns__no-results-text {
    font-size: 1rem;
  }

  .single-page__fv {
    padding: 1.5625rem 0 0;
  }

  .single-post-meta {
    margin-top: 1.375rem;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    align-items: center;
    -webkit-column-gap: 1.38rem;
    -moz-column-gap: 1.38rem;
    column-gap: 1.38rem;
    row-gap: 0.9375rem;
    margin-left: 1.3125rem;
  }

  .single-post-meta__author {
    -webkit-column-gap: 0.79rem;
    -moz-column-gap: 0.79rem;
    column-gap: 0.79rem;
  }

  .single-post-meta__avatar {
    width: 2.389375rem;
    outline: 2px solid #fff;
  }

  .single-post-meta__author-name {
    font-size: 1.003125rem;
    line-height: 1.1838006231;
  }

  .single-post-meta__bottom {
    margin-top: 0.3125rem;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-column-gap: 1.4375rem;
    -moz-column-gap: 1.4375rem;
    column-gap: 1.4375rem;
    row-gap: 0.9375rem;
    margin-left: 0;
  }

  .single-post-meta__date {
    font-size: 0.815625rem;
    line-height: 1.2260536398;
    -webkit-column-gap: 7px;
    -moz-column-gap: 7px;
    column-gap: 7px;
  }

  .single-post-meta__icon-wrapper {
    width: 0.6875rem;
  }

  .single-post-meta__category {
    gap: 0.9375rem;
  }

  .single-post-meta__category-link {
    font-size: 0.940625rem;
    line-height: 1.196013289;
  }

  .single__vertical-wrapper01 {
    top: -40px;
    left: -43px;
    height: clamp(
      205.1px,
      calc(205.1px + 87.9 * ((100vw - 768px) / 519)),
      293px
    );
    border-width: 2px;
    padding-right: 11px;
  }

  .single__vertical-text01 {
    font-size: 1.3125rem;
    line-height: 1.1904761905;
  }

  .single__vertical-wrapper02 {
    display: block;
    position: absolute;
    top: -23.51px;
    left: -121.06px;
    font-size: 6.375rem;
    font-weight: 700;
    line-height: 1.1960784314;
    opacity: 0.12;
    -webkit-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    color: #fff;
    text-transform: uppercase;
    -webkit-transform: skewY(5deg);
    transform: skewY(5deg);
    text-wrap: nowrap;
  }

  .single-detail {
    margin-top: -120px;
    padding-bottom: clamp(
      32px,
      calc(32px + 48 * ((100vw - 768px) / 519)),
      80px
    );
  }

  .single-detail__inner {
    padding-inline: clamp(8px, calc(8px + 12 * ((100vw - 768px) / 519)), 20px);
    margin-inline: auto;
  }

  .single-detail__content > * {
    max-width: 820px;
    width: clamp(574px, calc(574px + 246 * ((100vw - 768px) / 519)), 820px);
  }

  .single-detail__eyecatch {
    width: clamp(
      620.4px,
      calc(620.4px + 413.6 * ((100vw - 768px) / 519)),
      1034px
    );
    border-radius: 2.331002331vw;
  }

  .single-detail__content .single-detail__toc {
    margin-top: clamp(18px, calc(18px + 27 * ((100vw - 768px) / 519)), 45px);
  }

  .toc {
    padding: clamp(22.4px, calc(22.4px + 9.6 * ((100vw - 768px) / 519)), 32px)
      clamp(36.8px, calc(36.8px + 9.2 * ((100vw - 768px) / 519)), 46px)
      clamp(35.7px, calc(35.7px + 15.3 * ((100vw - 768px) / 519)), 51px);
    border-radius: clamp(
      3.568px,
      calc(3.568px + 5.352 * ((100vw - 768px) / 519)),
      8.92px
    );
  }

  .toc__icon {
    width: clamp(
      11.431px,
      calc(11.431px + 4.899 * ((100vw - 768px) / 519)),
      16.33px
    );
  }

  .single-detail__content p.toc__title {
    padding: clamp(
        1.592px,
        calc(1.592px + 2.388 * ((100vw - 768px) / 519)),
        3.98px
      )
      clamp(
        13.052px,
        calc(13.052px + 19.578 * ((100vw - 768px) / 519)),
        32.63px
      )
      clamp(1.208px, calc(1.208px + 1.812 * ((100vw - 768px) / 519)), 3.02px)
      clamp(8.264px, calc(8.264px + 12.396 * ((100vw - 768px) / 519)), 20.66px);
    border-radius: clamp(
      3.568px,
      calc(3.568px + 5.352 * ((100vw - 768px) / 519)),
      8.92px
    );
    -webkit-column-gap: clamp(
      3.348px,
      calc(3.348px + 5.022 * ((100vw - 768px) / 519)),
      8.37px
    );
    -moz-column-gap: clamp(
      3.348px,
      calc(3.348px + 5.022 * ((100vw - 768px) / 519)),
      8.37px
    );
    column-gap: clamp(
      3.348px,
      calc(3.348px + 5.022 * ((100vw - 768px) / 519)),
      8.37px
    );
    font-size: 1.125rem;
  }

  .single-detail__content ol.toc__list {
    margin-top: clamp(
      8.4px,
      calc(8.4px + 12.6 * ((100vw - 768px) / 519)),
      21px
    );
    padding-left: clamp(12px, calc(12px + 18 * ((100vw - 768px) / 519)), 30px);
    font-size: 1rem;
  }

  .single-detail__content li.toc__item + li.toc__item {
    margin-top: clamp(2px, calc(2px + 3 * ((100vw - 768px) / 519)), 5px);
  }

  .single-detail__content a.toc__link {
    font-size: 1rem;
  }

  .single-detail__content div.balloon {
    margin-top: clamp(14px, calc(14px + 21 * ((100vw - 768px) / 519)), 35px);
    -webkit-column-gap: clamp(
      20px,
      calc(20px + 30 * ((100vw - 768px) / 519)),
      50px
    );
    -moz-column-gap: clamp(
      20px,
      calc(20px + 30 * ((100vw - 768px) / 519)),
      50px
    );
    column-gap: clamp(20px, calc(20px + 30 * ((100vw - 768px) / 519)), 50px);
  }

  .single-detail__content div.balloon .wp-block-column {
    width: clamp(72.1px, calc(72.1px + 30.9 * ((100vw - 768px) / 519)), 103px);
    margin-top: clamp(2px, calc(2px + 3 * ((100vw - 768px) / 519)), 5px);
    outline: clamp(
        2.152px,
        calc(2.152px + 3.228 * ((100vw - 768px) / 519)),
        5.38px
      )
      solid #fff;
  }

  .single-detail__content .balloon > .wp-block-column:first-child {
    width: clamp(72.1px, calc(72.1px + 30.9 * ((100vw - 768px) / 519)), 103px);
    height: clamp(72.1px, calc(72.1px + 30.9 * ((100vw - 768px) / 519)), 103px);
    margin-top: clamp(2px, calc(2px + 3 * ((100vw - 768px) / 519)), 5px);
    border: 5.38px solid #fff;
  }

  .single-detail__content .balloon > .wp-block-column.balloon__text {
    padding: clamp(11.6px, calc(11.6px + 17.4 * ((100vw - 768px) / 519)), 29px)
      clamp(14.8px, calc(14.8px + 22.2 * ((100vw - 768px) / 519)), 37px)
      clamp(11.2px, calc(11.2px + 16.8 * ((100vw - 768px) / 519)), 28px);
  }

  .single-detail__content .balloon figure.balloon__image-wrapper {
    margin-top: 0;
  }

  .single-detail__content .balloon .balloon__text p {
    margin-top: 0;
  }

  .single-detail__content .balloon__text::before {
    top: clamp(13.6px, calc(13.6px + 20.4 * ((100vw - 768px) / 519)), 34px);
    left: clamp(-16.1px, calc(-16.1px + -6.9 * ((100vw - 768px) / 519)), -23px);
    width: clamp(23.1px, calc(23.1px + 9.9 * ((100vw - 768px) / 519)), 33px);
    height: clamp(23.1px, calc(23.1px + 9.9 * ((100vw - 768px) / 519)), 33px);
  }

  .single-detail__author {
    margin-top: clamp(14px, calc(14px + 21 * ((100vw - 768px) / 519)), 35px);
    padding: clamp(15.6px, calc(15.6px + 23.4 * ((100vw - 768px) / 519)), 39px)
      clamp(24.5px, calc(24.5px + 10.5 * ((100vw - 768px) / 519)), 35px)
      clamp(14px, calc(14px + 21 * ((100vw - 768px) / 519)), 35px)
      clamp(46.9px, calc(46.9px + 20.1 * ((100vw - 768px) / 519)), 67px);
    border-radius: 10px;
    width: clamp(574px, calc(574px + 246 * ((100vw - 768px) / 519)), 820px);
  }

  .single-detail__author-badge {
    top: clamp(
      -2.464px,
      calc(-2.464px + -3.696 * ((100vw - 768px) / 519)),
      -6.16px
    );
    left: clamp(9.6px, calc(9.6px + 14.4 * ((100vw - 768px) / 519)), 24px);
    width: clamp(35.7px, calc(35.7px + 15.3 * ((100vw - 768px) / 519)), 51px);
  }

  .single-detail__author-profile-top {
    -webkit-column-gap: clamp(
      8.8px,
      calc(8.8px + 13.2 * ((100vw - 768px) / 519)),
      22px
    );
    -moz-column-gap: clamp(
      8.8px,
      calc(8.8px + 13.2 * ((100vw - 768px) / 519)),
      22px
    );
    column-gap: clamp(
      8.8px,
      calc(8.8px + 13.2 * ((100vw - 768px) / 519)),
      22px
    );
  }

  .single-detail__author-avatar-wrapper {
    width: clamp(45.2px, calc(45.2px + 67.8 * ((100vw - 768px) / 519)), 113px);
  }

  .single-detail__author-info {
    margin-top: clamp(4px, calc(4px + 6 * ((100vw - 768px) / 519)), 10px);
  }

  .single-detail__author-label {
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end;
    -webkit-column-gap: 4.64px;
    -moz-column-gap: 4.64px;
    column-gap: 4.64px;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
  }

  .single-detail__author-pen {
    width: 0.96rem;
    top: 4px;
  }

  p.single-detail__author-name {
    margin-top: clamp(6.4px, calc(6.4px + 9.6 * ((100vw - 768px) / 519)), 16px);
    font-size: 1.3175rem;
  }

  .single-detail__author-description {
    margin-top: clamp(6px, calc(6px + 9 * ((100vw - 768px) / 519)), 15px);
    font-size: 1.00125rem;
  }

  .single-detail__author-more {
    margin-top: 0;
    position: absolute;
    top: clamp(15.6px, calc(15.6px + 23.4 * ((100vw - 768px) / 519)), 39px);
    right: clamp(14.8px, calc(14.8px + 22.2 * ((100vw - 768px) / 519)), 37px);
  }

  .single-detail__author-more-link {
    padding: clamp(5.2px, calc(5.2px + 7.8 * ((100vw - 768px) / 519)), 13px)
      clamp(7.2px, calc(7.2px + 10.8 * ((100vw - 768px) / 519)), 18px)
      clamp(4.8px, calc(4.8px + 7.2 * ((100vw - 768px) / 519)), 12px)
      clamp(6.4px, calc(6.4px + 9.6 * ((100vw - 768px) / 519)), 16px);
    border-radius: 6px;
    font-size: 0.81375rem;
    line-height: 1.2288786482;
  }

  .single-detail__categories {
    margin-top: clamp(
      16.8px,
      calc(16.8px + 25.2 * ((100vw - 768px) / 519)),
      42px
    );
    width: clamp(574px, calc(574px + 246 * ((100vw - 768px) / 519)), 820px);
  }

  .single-detail__categories-list {
    gap: clamp(2.8px, calc(2.8px + 4.2 * ((100vw - 768px) / 519)), 7px);
  }

  .single-detail__content {
    margin-top: clamp(
      27.2px,
      calc(27.2px + 40.8 * ((100vw - 768px) / 519)),
      68px
    );
  }

  .single-detail__content h2 {
    margin-top: clamp(
      18.4px,
      calc(18.4px + 27.6 * ((100vw - 768px) / 519)),
      46px
    );
    padding: clamp(
        14.728px,
        calc(14.728px + 22.092 * ((100vw - 768px) / 519)),
        36.82px
      )
      clamp(
        14.296px,
        calc(14.296px + 21.444 * ((100vw - 768px) / 519)),
        35.74px
      )
      clamp(
        14.456px,
        calc(14.456px + 21.684 * ((100vw - 768px) / 519)),
        36.14px
      );
    border-radius: 21.66px;
    font-size: 1.624375rem;
    font-weight: 900;
    line-height: 1.1927664486;
    max-width: 888px;
    width: 888px;
    width: clamp(
      621.6px,
      calc(621.6px + 266.4 * ((100vw - 768px) / 519)),
      888px
    );
  }

  .single-detail__content h3 {
    margin-top: clamp(20px, calc(20px + 30 * ((100vw - 768px) / 519)), 50px);
    padding-left: clamp(
      7.6px,
      calc(7.6px + 11.4 * ((100vw - 768px) / 519)),
      19px
    );
    font-size: 1.5175rem;
  }

  .single-detail__content h3::before {
    width: 5px;
    border-radius: 10px;
  }

  .single-detail__content .h4-wrapper {
    width: clamp(574px, calc(574px + 246 * ((100vw - 768px) / 519)), 820px);
  }

  .single-detail__content h4 {
    margin-top: clamp(20px, calc(20px + 30 * ((100vw - 768px) / 519)), 50px);
    padding-bottom: clamp(
      2.8px,
      calc(2.8px + 4.2 * ((100vw - 768px) / 519)),
      7px
    );
    font-size: 1.33rem;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    margin-left: 0;
  }

  .single-detail__content figure {
    margin-top: clamp(18px, calc(18px + 27 * ((100vw - 768px) / 519)), 45px);
  }

  .single-detail__content p {
    margin-top: clamp(14px, calc(14px + 21 * ((100vw - 768px) / 519)), 35px);
    font-size: 1rem;
  }

  .single-detail__content blockquote {
    margin-top: clamp(12px, calc(12px + 18 * ((100vw - 768px) / 519)), 30px);
    padding: clamp(26.4px, calc(26.4px + 39.6 * ((100vw - 768px) / 519)), 66px)
      clamp(38.8px, calc(38.8px + 58.2 * ((100vw - 768px) / 519)), 97px)
      clamp(24.8px, calc(24.8px + 37.2 * ((100vw - 768px) / 519)), 62px)
      clamp(40.4px, calc(40.4px + 60.6 * ((100vw - 768px) / 519)), 101px);
    border-radius: 20px;
    font-size: 0.9375rem;
    font-weight: 400;
    line-height: 2;
    letter-spacing: 0.1em;
  }

  .single-detail__content blockquote p {
    margin-top: 0;
  }

  .single-detail__content blockquote::before {
    top: 0;
    left: 0;
    font-size: 8.5rem;
    line-height: 1;
  }

  .single-detail__content p + p {
    margin-top: clamp(14px, calc(14px + 21 * ((100vw - 768px) / 519)), 35px);
  }

  .single-detail__content p:not(:first-of-type) {
    margin-top: clamp(14px, calc(14px + 21 * ((100vw - 768px) / 519)), 35px);
  }

  .single-detail__content p + h2,
  .single-detail__content p + h3,
  .single-detail__content p + h4,
  .single-detail__content p + .h4-wrapper {
    margin-top: clamp(14px, calc(14px + 21 * ((100vw - 768px) / 519)), 35px);
  }

  .single-detail .single-detail__eyecatch + p {
    margin-top: clamp(
      27.2px,
      calc(27.2px + 40.8 * ((100vw - 768px) / 519)),
      68px
    );
  }

  .single-detail__content h4 + p {
    margin-top: clamp(10px, calc(10px + 15 * ((100vw - 768px) / 519)), 25px);
  }

  .single-detail__content ul {
    margin-top: clamp(14px, calc(14px + 21 * ((100vw - 768px) / 519)), 35px);
    font-size: 1rem;
    padding-left: clamp(8px, calc(8px + 12 * ((100vw - 768px) / 519)), 20px);
  }

  ol li {
    margin-left: clamp(14px, calc(14px + 12 * ((100vw - 768px) / 519)), 20px);
    margin-bottom: 1rem;
  }

  .single-detail__content p + ul,
  .single-detail__content h3 + .wrapper > h4 {
    margin-top: clamp(10px, calc(10px + 15 * ((100vw - 768px) / 519)), 25px);
  }

  .faq-menu {
    margin-top: -68px;
  }

  .faq-menu__inner {
    max-width: 1295px;
    padding-inline: 20px;
  }

  .faq-menu__list {
    grid-template-columns: repeat(3, 1fr);
    -webkit-column-gap: 10px;
    -moz-column-gap: 10px;
    column-gap: 10px;
    row-gap: 6px;
  }

  .faq-menu__link {
    padding: 27px 17.38px 26px 20px;
    padding: clamp(18.9px, calc(18.9px + 8.1 * ((100vw - 768px) / 519)), 27px)
      clamp(12.166px, calc(12.166px + 5.214 * ((100vw - 768px) / 519)), 17.38px)
      clamp(18.2px, calc(18.2px + 7.8 * ((100vw - 768px) / 519)), 26px)
      clamp(14px, calc(14px + 6 * ((100vw - 768px) / 519)), 20px);
    border-radius: 4px;
    border-radius: clamp(
      2.8px,
      calc(2.8px + 1.2 * ((100vw - 768px) / 519)),
      4px
    );
    font-size: clamp(
      11.2px,
      calc(11.2px + 4.8 * ((100vw - 768px) / 519)),
      16px
    );
  }

  .faq-menu__icon {
    width: clamp(
      14.217px,
      calc(14.217px + 6.093 * ((100vw - 768px) / 519)),
      20.31px
    );
  }

  .faq-block {
    padding-top: clamp(
      37.35px,
      calc(37.35px + 45.65 * ((100vw - 768px) / 519)),
      83px
    );
  }

  .faq-block + .faq-block {
    padding-top: clamp(
      20.25px,
      calc(20.25px + 24.75 * ((100vw - 768px) / 519)),
      45px
    );
  }

  .faq-block:last-child {
    padding-bottom: 137.3px;
  }

  .faq-block__inner {
    max-width: 882px;
    width: clamp(
      617.4px,
      calc(617.4px + 264.6 * ((100vw - 768px) / 519)),
      882px
    );
    padding-inline: 20px;
  }

  .faq-block__heading {
    padding: clamp(
        6.3315px,
        calc(6.3315px + 7.7385 * ((100vw - 768px) / 519)),
        14.07px
      )
      0
      clamp(
        7.3485px,
        calc(7.3485px + 8.9815 * ((100vw - 768px) / 519)),
        16.33px
      )
      clamp(13.95px, calc(13.95px + 17.05 * ((100vw - 768px) / 519)), 31px);
    border-width: clamp(
      2.16px,
      calc(2.16px + 2.64 * ((100vw - 768px) / 519)),
      4.8px
    );
    font-size: 1.375rem;
    line-height: 1.1818181818;
  }

  .faq-block__heading::before {
    width: clamp(2.16px, calc(2.16px + 2.64 * ((100vw - 768px) / 519)), 4.8px);
    border-radius: clamp(
      5.4px,
      calc(5.4px + 6.6 * ((100vw - 768px) / 519)),
      12px
    );
    margin-left: clamp(
      3.87px,
      calc(3.87px + 4.73 * ((100vw - 768px) / 519)),
      8.6px
    );
  }

  .faq-block__list {
    margin-top: clamp(
      10.35px,
      calc(10.35px + 12.65 * ((100vw - 768px) / 519)),
      23px
    );
  }

  .faq-block__item + .faq-block__item {
    margin-top: clamp(
      9.45px,
      calc(9.45px + 11.55 * ((100vw - 768px) / 519)),
      21px
    );
  }

  .faq-block__question {
    padding: clamp(7.65px, calc(7.65px + 9.35 * ((100vw - 768px) / 519)), 17px)
      clamp(31.5px, calc(31.5px + 38.5 * ((100vw - 768px) / 519)), 70px)
      clamp(6.3px, calc(6.3px + 7.7 * ((100vw - 768px) / 519)), 14px)
      clamp(15.3px, calc(15.3px + 18.7 * ((100vw - 768px) / 519)), 34px);
    border-radius: clamp(9px, calc(9px + 11 * ((100vw - 768px) / 519)), 20px);
    -webkit-column-gap: clamp(
      10.8px,
      calc(10.8px + 13.2 * ((100vw - 768px) / 519)),
      24px
    );
    -moz-column-gap: clamp(
      10.8px,
      calc(10.8px + 13.2 * ((100vw - 768px) / 519)),
      24px
    );
    column-gap: clamp(
      10.8px,
      calc(10.8px + 13.2 * ((100vw - 768px) / 519)),
      24px
    );
    font-size: 1.125rem;
  }

  .faq-block__icon,
  .faq-block__answer-icon {
    width: clamp(
      24.75px,
      calc(24.75px + 20.25 * ((100vw - 768px) / 519)),
      45px
    );
    width: 2.8125rem;
    height: clamp(
      24.75px,
      calc(24.75px + 20.25 * ((100vw - 768px) / 519)),
      45px
    );
    height: 2.8125rem;
    font-size: 1.005625rem;
  }

  .faq-block__toggle-icon {
    width: clamp(8.1px, calc(8.1px + 9.9 * ((100vw - 768px) / 519)), 18px);
    height: clamp(9.9px, calc(9.9px + 12.1 * ((100vw - 768px) / 519)), 22px);
  }

  .faq-block__answer {
    padding: clamp(12.6px, calc(12.6px + 15.4 * ((100vw - 768px) / 519)), 28px)
      clamp(18.45px, calc(18.45px + 22.55 * ((100vw - 768px) / 519)), 41px)
      clamp(6.75px, calc(6.75px + 8.25 * ((100vw - 768px) / 519)), 15px)
      clamp(16.65px, calc(16.65px + 20.35 * ((100vw - 768px) / 519)), 37px);
    -webkit-column-gap: clamp(
      10.8px,
      calc(10.8px + 13.2 * ((100vw - 768px) / 519)),
      24px
    );
    -moz-column-gap: clamp(
      10.8px,
      calc(10.8px + 13.2 * ((100vw - 768px) / 519)),
      24px
    );
    column-gap: clamp(
      10.8px,
      calc(10.8px + 13.2 * ((100vw - 768px) / 519)),
      24px
    );
  }

  .faq-block__answer-text {
    margin-top: clamp(7px, calc(7px + 3 * ((100vw - 768px) / 519)), 10px);
    font-size: 1rem;
  }

  .not-found {
    padding: clamp(62px, calc(62px + 93 * ((100vw - 768px) / 519)), 155px) 0
      clamp(110.8px, calc(110.8px + 166.2 * ((100vw - 768px) / 519)), 277px);
  }

  .not-found__title {
    font-size: 2.08125rem;
  }

  .not-found__text {
    margin-top: clamp(
      12.4px,
      calc(12.4px + 18.6 * ((100vw - 768px) / 519)),
      31px
    );
    font-size: 1rem;
  }
}

@media screen and (min-width: 1024px) {
  .hide-lg {
    display: none;
  }

  .show-lg {
    display: block;
  }

  .lg-md-only {
    display: none;
  }

  .footer__branding {
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
  }

  .footer__columns {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
  }

  .footer__column {
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
  }

  .footer__column--menu {
    margin-left: clamp(
      22.6px,
      calc(22.6px + 90.4 * ((100vw - 768px) / 519)),
      113px
    );
  }

  .footer__column--policy {
    margin-left: clamp(
      26.4px,
      calc(26.4px + 21.6 * ((100vw - 768px) / 519)),
      48px
    );
  }

  .text-marquee--sub-main {
    bottom: -50px;
  }

  .product-card--featured {
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
  }

  .product-card__body--featured {
    margin-top: clamp(
      9.6px,
      calc(9.6px + 14.4 * ((100vw - 768px) / 519)),
      24px
    );
  }

  .product-card__eyebrow {
    font-size: 0.833125rem;
  }

  .product-card__eyebrow--featured {
    font-size: 0.99375rem;
  }

  .column-list__card-link--archive {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
  }

  .column-list__body--archive {
    margin-top: clamp(
      9.2px,
      calc(9.2px + 13.8 * ((100vw - 768px) / 519)),
      23px
    );
    margin-top: 0;
  }

  .about-promise {
    margin-top: -89px;
  }

  .about-menu__link {
    font-size: 1.25rem;
  }

  .about-strengths__top-text {
    top: -20px;
  }

  .about-vision__image-wrapper {
    border-radius: 30px;
  }

  .single__vertical-wrapper01 {
    top: -40px;
  }
}

@media screen and (min-width: 1241px) {
  .text-marquee--block02 {
    bottom: -152px;
  }

  .promise__signature {
    margin-right: -4px;
  }

  .about-strengths__list {
    margin-top: clamp(
      27.4815px,
      calc(27.4815px + 33.5885 * ((100vw - 768px) / 614)),
      61.07px
    );
  }

  .about-strengths__item {
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    -webkit-column-gap: clamp(
      41.85px,
      calc(41.85px + 51.15 * ((100vw - 768px) / 912)),
      93px
    );
    -moz-column-gap: clamp(
      41.85px,
      calc(41.85px + 51.15 * ((100vw - 768px) / 912)),
      93px
    );
    column-gap: clamp(
      41.85px,
      calc(41.85px + 51.15 * ((100vw - 768px) / 912)),
      93px
    );
  }

  .about-strengths__item--reverse {
    -webkit-column-gap: clamp(
      90px,
      calc(90px + 110 * ((100vw - 768px) / 912)),
      200px
    );
    -moz-column-gap: clamp(
      90px,
      calc(90px + 110 * ((100vw - 768px) / 912)),
      200px
    );
    column-gap: clamp(90px, calc(90px + 110 * ((100vw - 768px) / 912)), 200px);
  }

  .about-strengths__item + .about-strengths__item {
    margin-top: clamp(
      40.95px,
      calc(40.95px + 50.05 * ((100vw - 768px) / 614)),
      91px
    );
  }

  .about-strengths__content {
    margin-top: clamp(
      25.65px,
      calc(25.65px + 31.35 * ((100vw - 768px) / 614)),
      57px
    );
  }

  .about-strengths__content--02 {
    margin-top: clamp(
      36.9px,
      calc(36.9px + 45.1 * ((100vw - 768px) / 614)),
      82px
    );
  }

  .about-strengths__content--03 {
    margin-top: clamp(
      58.05px,
      calc(58.05px + 70.95 * ((100vw - 768px) / 614)),
      129px
    );
  }

  .about-strengths__number {
    top: -82px;
    right: -8px;
  }

  .about-strengths__number--reverse {
    top: -57px;
    right: -100px;
  }

  .about-overview__map-wrapper {
    width: 342.9px;
  }

  .single-detail {
    margin-top: -170px;
  }

  .faq-menu__list {
    grid-template-columns: repeat(4, 1fr);
  }
}

@media screen and (min-width: 1321px) {
  .single__vertical-wrapper01 {
    top: -66px;
  }
}

@media screen and (min-width: 1440px) {
  .hide-xl {
    display: none;
  }

  .mv__inner {
    width: 100%;
    max-width: 1241px;
    padding-inline: 20px;
  }

  .about {
    margin-top: -260px;
  }

  .about-menu__inner {
    max-width: 69.3125rem;
  }

  .about-strengths__top-text {
    top: -80px;
  }
}

@media screen and (min-width: 1681px) {
  .hide-xl2 {
    display: none;
  }

  .bg-gradation::before {
    background-image: url("../img/pic-xl-gradation.png");
  }

  .bg-gradation03::before {
    background-image: url("../img/pic-xl-page-gradation.png");
  }

  .bg-gradation03--single::before {
    background-image: url("../img/pic-pc-single-gradation.png");
  }

  .product-card__image-wrapper {
    border-radius: 16.85px;
  }

  .product-card__image-wrapper--featured {
    border-radius: 30px;
  }

  .product-card__text {
    max-width: initial;
  }

  .column-list__card-link--archive {
    border-radius: 17.28px;
  }

  .column-list__image-wrapper {
    border-radius: 17.28px;
  }

  .mv__image-wrapper {
    border-radius: 30px;
  }

  .about__image-wrapper {
    border-radius: 30px;
  }

  .about-promise__image-wrapper {
    border-radius: 30px;
  }

  .about-strengths__item {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
  }

  .about-strengths__image-wrapper {
    width: min(1200px, 46.9642857143vw);
  }

  .about-strengths__image-wrapper::after {
    width: min(1210px, 47.5595238095vw);
  }

  .about-strengths__content {
    margin-top: 0;
  }

  .about-strengths__content--02 {
    margin-top: 0;
  }

  .about-strengths__content--03 {
    margin-top: 0;
  }

  .single-detail__eyecatch {
    border-radius: 30px;
  }
}

@media (max-width: 1000px) {
  html {
    font-size: calc(14px * var(--font-scale));
  }
}

@media screen and (max-width: 782px) {
  /* モバイル用の管理バー */

  body.admin-bar {
    margin-bottom: 46px;
    /* モバイル用の管理バーの高さ分 */
    margin-bottom: 0;
    /* モバイル用の管理バーの高さ分 */
  }
}

@media (max-width: 768.98px) {
  html {
    font-size: calc(((100vw - 375px) / 39 * 1 + 15px) * var(--font-scale));
  }
}

@media (max-width: 413.98px) {
  html {
    font-size: calc(((100vw - 375px) / 39 * 1.6 + 14.4px) * var(--font-scale));
  }
}

@media (min-width: 769px) and (max-width: 1287px) {
  html {
    font-size: calc(((100vw - 768px) / 432 * 2 + 12px) * var(--font-scale));
  }
}

@media screen and (min-width: 769px) and (max-width: 1320px) {
  .page-fv__inner--single {
    max-width: 1300px;
    padding-left: 100px;
  }

  .breadcrumbs--s-column {
    max-width: 1300px;
    margin-left: 100px;
    padding-left: 15px;
  }

  .single__vertical-wrapper01 {
    left: 50px;
  }

  .single__vertical-wrapper02 {
    left: 0;
  }
}

@media (any-hover: hover) {
  a:hover {
    opacity: 0.7;
  }

  .header__text-size-button:hover {
    background-color: #f86f52;
    color: #fff;
    border: transparent;
  }

  .header__cta:hover {
    background: #fff;
    color: #f86f52;
    border: 1px solid #f86f52;
    opacity: 1;
  }

  .header__cta:hover .header__cta-arrow-image {
    opacity: 0;
  }

  .header__cta:hover .header__cta-arrow-image--hover {
    opacity: 1;
  }

  .windows .header-nav__link:hover {
    color: #f86f52;
  }

  .windows .header-nav__link:hover::after {
    display: none;
  }

  .header-nav__link:hover {
    opacity: 1;
  }

  .header-nav__link:hover::after {
    -webkit-transform: translateX(-50%) scaleX(1);
    transform: translateX(-50%) scaleX(1);
  }

  .header-nav__item--has-dropdown:hover .header-nav__dropdown,
  .header-nav__item--has-dropdown:focus-within .header-nav__dropdown,
  .header-nav__dropdown:hover {
    opacity: 1;
    visibility: visible;
    -webkit-transform: translate(0);
    transform: translate(0);
  }

  .windows .header-nav__dropdown-link:hover {
    color: #f86f52;
  }

  .windows .header-nav__dropdown-link:hover::after {
    display: none;
  }

  .header-nav__dropdown-link:hover {
    opacity: 1;
  }

  .header-nav__dropdown-link:hover::after {
    -webkit-transform: scaleX(1);
    transform: scaleX(1);
  }

  .footer__link:hover {
    opacity: 1;
    color: #f15a25;
  }

  .footer__link:hover .footer__link-pdf {
    opacity: 0.7;
  }

  .button-detail:hover {
    opacity: 1;
  }

  .button-detail:hover .button-detail__icon {
    -webkit-transform: translateX(10px);
    transform: translateX(10px);
  }

  .news-list__link:hover {
    opacity: 1;
    background-color: #fff;
  }

  .news-list__link--white:hover {
    background-color: #f6f3f1;
  }

  .news-list__link.news-list__link--no-link:hover {
    background-color: #f6f3f1;
  }

  .news-list__link--white.news-list__link.news-list__link--no-link:hover {
    background-color: #fff;
  }

  .column-list__card-link--archive:hover {
    background-color: rgba(246, 243, 241, 0.7);
    opacity: 1;
  }

  .column-list__card-link--archive:hover .column-list__image-wrapper {
    opacity: 0.7;
  }

  .pagination__link:hover {
    color: #fff;
    background-color: #f64b20;
  }

  .mv.is-visible .mv__cta:hover .mv__cta-banner {
    opacity: 0.7;
  }

  .sitemap__column-heading:has(.sitemap__column-heading-link):hover {
    opacity: 1;
    color: #f86f52;
    border-color: #f86f52;
  }

  .sitemap__column-heading-link:hover {
    color: #f86f52;
  }

  .sitemap__link:hover {
    opacity: 1;
    color: #f86f52;
  }

  .sitemap__link:hover .sitemap__link-arrow {
    -webkit-transform: translateX(0.21875rem);
    transform: translateX(0.21875rem);
  }

  .sitemap__link:hover .sitemap__link-pdf {
    opacity: 0.7;
  }

  .about-menu__link:hover {
    opacity: 1;
    background-color: #f86f52;
  }

  .about-menu__link:hover .about-menu__icon {
    -webkit-transform: translateX(10px);
    transform: translateX(10px);
  }

  .ir-pdf__link:hover {
    opacity: 1;
    color: #f86f52;
  }

  .ir-pdf__link:hover .ir-pdf__icon {
    opacity: 0.7;
  }

  .block-contents ul.custom-link-list a:hover {
    color: #f86f52;
  }

  .block-contents ul.custom-link-list a:hover .pdf-icon {
    opacity: 0.7;
  }

  .news-archive__nav-link:hover {
    opacity: 1;
  }

  .news-archive__nav-link:hover::after {
    -webkit-transform: scaleX(1);
    transform: scaleX(1);
  }

  .single-detail__content a.toc__link:hover {
    opacity: 1;
    color: #f44317;
  }

  .single-detail__author-more-link:hover {
    opacity: 1;
    background-color: #f44317;
    color: #fff;
    border-color: #f44317;
  }
}
/*# sourceMappingURL=style.css.map */
