@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,
ol {
  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-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;
}

.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.0625rem;
  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;
}

.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;
  margin-left: 1.9rem;
}
.single-detail ul li {
  margin-bottom: 0.5rem;
}

/* ==========================================
    よくある質問ナビゲーション
   ========================================== */

.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(8.7px, calc(8.7px + 20.3 * ((100vw - 768px) / 519)), 29px);
    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);
  }

  .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-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);
  }

  .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 */