@charset "UTF-8";
/* noto-sans-jp-regular - japanese */
@font-face {
  font-display: swap;
  /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Noto Sans JP";
  font-style: normal;
  font-weight: 400;
  src: url("../fonts/noto-sans-jp-v56-japanese-regular.woff2") format("woff2");
  /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* noto-sans-jp-500 - japanese */
@font-face {
  font-display: swap;
  /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Noto Sans JP";
  font-style: normal;
  font-weight: 500;
  src: url("../fonts/noto-sans-jp-v56-japanese-500.woff2") format("woff2");
  /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* noto-sans-jp-700 - japanese */
@font-face {
  font-display: swap;
  /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Noto Sans JP";
  font-style: normal;
  font-weight: 700;
  src: url("../fonts/noto-sans-jp-v56-japanese-700.woff2") format("woff2");
  /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* inter-regular - latin */
@font-face {
  font-display: swap;
  /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Inter";
  font-style: normal;
  font-weight: 400;
  src: url("../fonts/inter-v20-latin-regular.woff2") format("woff2");
  /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* inter-500 - latin */
@font-face {
  font-display: swap;
  /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Inter";
  font-style: normal;
  font-weight: 500;
  src: url("../fonts/inter-v20-latin-500.woff2") format("woff2");
  /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* inter-700 - latin */
@font-face {
  font-display: swap;
  /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Inter";
  font-style: normal;
  font-weight: 700;
  src: url("../fonts/inter-v20-latin-700.woff2") format("woff2");
  /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* roboto-regular - latin */
@font-face {
  font-display: swap;
  /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Roboto";
  font-style: normal;
  font-weight: 400;
  src: url("../fonts/roboto-v51-latin-regular.woff2") format("woff2");
  /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* roboto-500 - latin */
@font-face {
  font-display: swap;
  /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Roboto";
  font-style: normal;
  font-weight: 500;
  src: url("../fonts/roboto-v51-latin-500.woff2") format("woff2");
  /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* roboto-700 - latin */
@font-face {
  font-display: swap;
  /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Roboto";
  font-style: normal;
  font-weight: 700;
  src: url("../fonts/roboto-v51-latin-700.woff2") format("woff2");
  /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* manrope-regular - latin */
@font-face {
  font-display: swap;
  /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Manrope";
  font-style: normal;
  font-weight: 400;
  src: url("../fonts/manrope-v20-latin-regular.woff2") format("woff2");
  /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* manrope-500 - latin */
@font-face {
  font-display: swap;
  /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Manrope";
  font-style: normal;
  font-weight: 500;
  src: url("../fonts/manrope-v20-latin-500.woff2") format("woff2");
  /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* manrope-700 - latin */
@font-face {
  font-display: swap;
  /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Manrope";
  font-style: normal;
  font-weight: 700;
  src: url("../fonts/manrope-v20-latin-700.woff2") format("woff2");
  /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
html,
body {
  width: 100%;
}

/* 2回目以降のローディング画面を消す */
html.is-second-visit #js-loader {
  display: none !important;
}

body {
  font-size: 16px;
  padding-top: 50px;
  /* ヘッダーの高さと同じ値を指定 */
}

/*
p:empty {
    display: none;
}
    */
a {
  transition: opacity 0.3s ease;
}
@media screen and (min-width: 1440px) and (any-hover: hover) {
  a:hover {
    opacity: 0.7;
  }
}

.c-loader {
  display: none;
}

.line-break {
  display: block;
}

body.no-scroll {
  overflow: hidden;
  height: 100vh;
}

.text-uppercase {
  text-transform: uppercase;
}

.youtube iframe {
  width: 100%;
}

.common__fade-in {
  opacity: 0;
  transition: opacity 2s ease;
}

.common__fade-in-active {
  opacity: 1;
}

/* --- フェードアップ（下からふわっと） --- */
.common__fade-up {
  opacity: 0;
  transform: translateY(30px);
  transition: opacity 2s ease, transform 2s ease;
}

.common__fade-up-active {
  opacity: 1;
  transform: translateY(0);
}

.common__circle-pos {
  position: relative;
  background-color: #f9f9fc;
  z-index: 0;
  overflow: hidden;
}

.common__circle {
  width: 160%;
  aspect-ratio: 1/1;
  border-radius: 50%;
  background-color: #2f4091;
  position: absolute;
  top: 440px;
  left: 50%;
  transform: translate(-90%, 0);
  z-index: -2;
  max-width: 1100px;
  -webkit-animation: floating 4s ease-in-out infinite;
          animation: floating 4s ease-in-out infinite;
}

.common__circle-2 {
  width: 160%;
  aspect-ratio: 1/1;
  border-radius: 50%;
  background-color: #2f4091;
  position: absolute;
  top: 1540px;
  left: 50%;
  transform: translate(-14%, 0);
  z-index: -2;
  max-width: 900px;
  -webkit-animation: floating-2 4s ease-in-out infinite;
          animation: floating-2 4s ease-in-out infinite;
}

@-webkit-keyframes floating {
  0% {
    transform: translate(-90%, 0);
  }
  50% {
    transform: translate(-90%, -20px);
  }
  100% {
    transform: translate(-90%, 0);
  }
}

@keyframes floating {
  0% {
    transform: translate(-90%, 0);
  }
  50% {
    transform: translate(-90%, -20px);
  }
  100% {
    transform: translate(-90%, 0);
  }
}
@-webkit-keyframes floating-2 {
  0% {
    transform: translate(-14%, 0);
  }
  50% {
    transform: translate(-14%, -20px);
  }
  100% {
    transform: translate(-14%, 0);
  }
}
@keyframes floating-2 {
  0% {
    transform: translate(-14%, 0);
  }
  50% {
    transform: translate(-14%, -20px);
  }
  100% {
    transform: translate(-14%, 0);
  }
}
.common__sp-none {
  display: none;
}

.js-blur-image {
  position: relative;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin-inline: auto;
  cursor: pointer;
}

.js-blur-image img {
  display: block;
  width: 100%;
  height: auto;
  filter: blur(12px);
  transition: filter 0.3s ease;
}

.js-blur-image::after {
  content: "⚠ 閲覧注意｜クリックして画像を表示";
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.6);
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  font-size: 14px;
  font-weight: bold;
  padding: 10px;
  transition: opacity 0.3s ease;
  width: 80%;
  margin-inline: auto;
}

.js-blur-image.is-open img {
  filter: none;
}

.js-blur-image.is-open::after {
  opacity: 0;
  pointer-events: none;
}

div.yyi-rinker-contents div.yyi-rinker-box {
  line-height: 1.8;
}

/* ==============================================
   動画ポップアップ（モーダル）のCSS
============================================== */
/* 1. ポップアップの背景（黒い半透明・最初は非表示） */
.video-modal-overlay {
  position: fixed;
  inset: 0;
  /* 画面全体を覆う */
  background-color: rgba(0, 0, 0, 0.8);
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 9999;
  /* 一番手前に表示 */
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.3s ease, visibility 0.3s ease;
}

/* JSで「is-active」クラスが付いた時にフワッと表示する */
.video-modal-overlay.is-active {
  opacity: 1;
  visibility: visible;
}

/* 2. 動画を入れる箱 */
.video-modal-content {
  position: relative;
  width: 90%;
  max-width: 800px;
  background: #000;
  padding: 40px 10px 10px;
  /* 上に閉じるボタンのスペースを確保 */
  border-radius: 8px;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.5);
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
}

/* 3. 閉じる（×）ボタン */
.video-modal-close {
  position: absolute;
  top: 5px;
  right: 15px;
  color: #fff;
  font-size: 30px;
  font-weight: bold;
  cursor: pointer;
  line-height: 1;
  transition: color 0.2s;
}

.video-modal-close:hover {
  color: #cccccc;
}

/* 動画タグ自体の設定 */
.video-modal-content video {
  display: block;
  width: 100%;
  height: auto;
  border-radius: 4px;
}

#ez-toc-container ul.ez-toc-list ul {
  list-style: none;
}

@media screen and (min-width: 1000px) {
  body {
    padding-top: 80px;
    /* ヘッダーの高さと同じ値を指定 */
  }
}
@media screen and (min-width: 1440px) {
  body {
    padding-top: 100px;
    /* ヘッダーの高さと同じ値を指定 */
  }
  .common__pc-none {
    display: none;
  }
  .common__sp-none {
    display: block;
  }
  .common__circle-pos {
    background-color: #fff;
  }
  .common__circle-2 {
    width: 1990px;
    top: 248px;
    transform: translate(-2%, 0);
    max-width: 1990px;
  }
  .c-loader {
    display: flex;
    justify-content: center;
    align-items: center;
    position: fixed;
    inset: 0;
    background-color: #ffffff;
    z-index: 999;
    transition: opacity 0.6s ease, visibility 0.6s ease;
    opacity: 1;
    visibility: visible;
  }
  .c-loader__img {
    width: 100%;
    height: auto;
    -o-object-fit: contain;
       object-fit: contain;
    -o-object-position: center;
       object-position: center;
  }
  .c-loader.is-loaded {
    opacity: 0;
    visibility: hidden;
  }
}
.header.is-hidden {
  transform: translateY(-100%);
  /* ヘッダーの高さ分だけ上に隠す */
}

.header.is-show {
  transform: translateY(0);
  /* 定位置に戻す */
}

.header {
  width: 100%;
  background-color: #fff;
  z-index: 999;
  position: fixed;
  top: 0;
  left: 0;
  transition: transform 0.3s ease;
}
.header__inner {
  display: flex;
  justify-content: space-between;
  align-items: center;
  height: 50px;
  padding-left: 15px;
  box-shadow: 0 4px 4px 0 rgba(0, 0, 0, 0.25);
}
.header__wrap {
  display: flex;
  align-items: center;
}
.header__logo-link {
  color: #333333;
  text-decoration: none;
}
.header__logo-box {
  width: 31px;
  margin-right: 5px;
}
.header__logo-img {
  width: 100%;
  height: auto;
}
.header__upper-text {
  font-family: "Roboto", sans-serif;
  font-optical-sizing: auto;
  font-variation-settings: "wdth" 100;
  font-size: 10px;
  display: block;
  margin-bottom: 5px;
}
.header__foot-text {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 500;
  font-size: 12px;
  display: block;
}
.header__menu-box {
  background-color: #2f4091;
  display: block;
}
.header__menu-box--pc-none {
  display: none;
}
.header__pc-nav {
  /* モバイルでは非表示 */
  display: none;
}

@media screen and (min-width: 1000px) {
  .header__inner {
    height: 80px;
    padding: 13.5px 38px 9.5px 40px;
  }
  .header__logo-box {
    width: 56px;
    margin-right: 9px;
  }
  .header__upper-text {
    font-size: 0.875rem;
    margin-bottom: 5px;
  }
  .header__foot-text {
    font-size: 1.35rem;
  }
}
@media screen and (min-width: 1380px) {
  .header__inner {
    height: 100px;
    padding: 27.5px 24px 9.5px 40px;
  }
  .header__wrap {
    display: flex;
    align-items: center;
  }
}
@media screen and (min-width: 1380px) and (any-hover: hover) {
  .header__logo-link:hover {
    transition: opacity 0.3s ease;
    opacity: 0.7;
  }
}
@media screen and (min-width: 1380px) {
  .header__menu-box--pc-none {
    display: none;
  }
}
@media screen and (min-width: 1380px) {
  .header__pc-nav {
    display: block;
    position: relative;
    padding-top: 10px;
  }
  .header__pc-menu {
    display: flex;
    align-items: flex-end;
  }
  .header__pc-item {
    margin-left: 23px;
    font-size: 0.875rem;
    letter-spacing: 0.06em;
    position: relative;
  }
  .header__pc-item:last-child {
    margin-bottom: -10px;
    padding: 10px 30px 12px 30px;
    color: #ffffff;
    font-size: 1rem;
    letter-spacing: 0.1em;
    background-color: #34ace3;
    border-radius: 29px;
  }
  .header__pc-item:last-child .header__pc-link {
    margin-bottom: -10px;
    padding: 10px 30px 12px 30px;
    color: #ffffff;
    font-size: 1rem;
    letter-spacing: 0.1em;
    background-color: #34ace3;
    border-radius: 29px;
  }
  .header__pc-item:last-child .header__pc-sub-link {
    color: #fff;
  }
  .header__pc-link {
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 500;
    font-size: 1rem;
    display: block;
    color: #333333;
    text-decoration: none;
  }
}
@media screen and (min-width: 1380px) and (any-hover: hover) {
  .header__pc-link:hover {
    transition: color 0.3s ease;
    color: #2f4091;
  }
}
@media screen and (min-width: 1380px) {
  .header__pc-sub-list {
    background-color: #fff;
    border: #d9d9d9;
    box-shadow: 4px 4px 10px rgba(0, 0, 0, 0.25);
    max-height: 0;
    min-width: 200px;
    max-width: 300px;
    padding: 20px 30px;
    overflow: hidden;
    opacity: 0;
    visibility: hidden;
    position: absolute;
    left: 0;
    top: 40px;
    z-index: 1;
    transform: translateY(-10px);
    transition: max-height 0.5s ease-in-out, opacity 0.5s ease-in-out, visibility 0.5s ease-in-out, transform 0.5s ease-out;
    white-space: nowrap;
  }
  .header__pc-sub-list.is-open {
    max-height: 250px;
    opacity: 1;
    visibility: visible;
    transform: translateY(0px);
  }
}
@media screen and (min-width: 1380px) {
  .header__pc-sub-item {
    margin-bottom: 10px;
  }
}
@media screen and (min-width: 1380px) {
  .header__pc-sub-link {
    color: #333333;
    text-decoration: none;
  }
}
@media screen and (min-width: 1380px) and (any-hover: hover) {
  .header__pc-sub-link:hover {
    transition: color 0.3s ease;
    color: #2f4091;
  }
}
/* アクセシビリティ対策 */
.visuallyHidden {
  border: 0;
  clip: rect(0 0 0 0);
  -webkit-clip-path: inset(50%);
          clip-path: inset(50%);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  white-space: nowrap;
  width: 1px;
}

/* ハンバーガーボタンのスタイル */
.hamburger {
  background-color: #2f4091;
  display: block;
  width: 30px;
  height: 30px;
  border-radius: 2px;
  position: relative;
  right: 15px;
  top: 0px;
  transition: transform 0.4s, width 0.4s;
  z-index: 200;
}

/* ハンバーガーメニュー三本線 */
.hamburger-line {
  background-color: #fff;
  height: 1px;
  left: 0;
  margin: auto;
  position: absolute;
  right: 0px;
  top: 9px;
  transition: inherit;
  width: 20px;
}

.hamburger-line::before,
.hamburger-line::after {
  background-color: #fff;
  content: "";
  display: block;
  height: 100%;
  position: absolute;
  transition: inherit;
  width: 20px;
}

.hamburger-line::before {
  top: 6px;
}

.hamburger-line::after {
  top: 12px;
}

/* ハンバーガーメニュー三本線オープン時 */
.hamburger[aria-expanded=true] .hamburger-line {
  transform: translateY(6px) rotate(-45deg);
  right: 0px;
}

.hamburger[aria-expanded=true] .hamburger-line::before {
  transform: translateY(-12px) translateX(20px) rotate(45deg);
  width: 0;
  opacity: 0;
}

.hamburger[aria-expanded=true] .hamburger-line::after {
  transform: translateY(-23px) rotate(90deg);
  top: 23px;
}

.modal-container {
  height: 600px;
  right: -100%;
  top: 0;
  transition: right 0.6s ease-in-out;
  width: 95%;
  background-color: #2f4091;
  position: fixed;
  z-index: 100;
  padding-top: 80px;
  border-radius: 0 0 0 50px;
}

.modal-container[aria-hidden=false] {
  right: 0px;
  transition: right 0.6s ease-in-out;
  overflow-y: hidden;
  overflow-x: hidden;
}

.menu-list {
  max-width: 300px;
  margin: 0 auto 160px;
}

.menu-item,
.menu-sub-item {
  color: #fff;
  margin-bottom: 15px;
}

.menu-item:has(.menu-sub-list.is-open) {
  margin-bottom: 0;
}

.menu-sub-item {
  padding-left: 30px;
  border-bottom: 1px solid #fff;
}

.menu-item:first-child {
  display: block;
}

.menu-item-header {
  width: 100%;
  display: flex block;
  justify-content: space-between;
  align-items: center;
  text-align: left;
  border-bottom: 1px solid #fff;
  transition: margin-bottom 0.3s ease;
}

button.menu-item-header[aria-expanded=true] {
  margin-bottom: 15px;
}

/* 2. テキスト部分のスタイル */
.menu-link {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 500;
  font-size: 1rem;
  display: block;
  padding-bottom: 12.5px;
}

.menu-sub-link {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 500;
  font-size: 1rem;
  display: block;
  padding-bottom: 12.5px;
}

/* 3. 矢印アイコン部分（旧 .menu-toggle） */
.menu-toggle-icon {
  width: 15px;
  height: 17px;
  display: flex;
  align-items: center;
  justify-content: center;
}

/* 4. 矢印の描画 */
.menu-toggle-icon::after {
  content: "";
  display: block;
  width: 10px;
  height: 10px;
  border-right: 2px solid #fff;
  border-bottom: 2px solid #fff;
  transform: rotate(-45deg);
  transition: transform 0.3s ease;
  margin-bottom: 9px;
}

/* 5. 開いた時の回転動作（セレクタが変わります） */
button.menu-item-header[aria-expanded=true] .menu-toggle-icon::after {
  transform: rotate(-135deg);
}

/* アコーディオンの中身（初期状態：閉じている） */
.menu-sub-list {
  max-height: 0;
  overflow: hidden;
  opacity: 0;
  visibility: hidden;
  transition: max-height 0.5s ease-in-out, opacity 0.5s ease-in-out, visibility 0.5s ease-in-out;
}

/* アコーディオンが開いた状態 */
.menu-sub-list.is-open {
  /* 中身が収まる高さを指定 */
  max-height: 300px;
  opacity: 1;
  visibility: visible;
}

/*多言語ナビ*/
.lang-switcher {
  display: flex;
  justify-content: center;
}

.lang-icon {
  margin-right: 3px;
}

.lang-label {
  color: #fff;
  margin-right: 13px;
}

.lang-list {
  display: flex;
}

.lang-item {
  color: #fff;
  margin-right: 2px;
}
.lang-item:nth-child(even) {
  margin-right: 6px;
}

@media screen and (min-width: 1000px) {
  .hamburger {
    width: 40px;
    height: 40px;
    right: 15px;
    top: 0px;
  }
  .hamburger-line {
    top: 12px;
    width: 22px;
  }
  .hamburger-line::before {
    top: 8px;
    width: 22px;
  }
  .hamburger-line::after {
    top: 16px;
    width: 22px;
  }
  .modal-container {
    padding-top: 120px;
  }
  .menu-list {
    margin-bottom: 120px;
  }
}
@media screen and (min-width: 1380px) {
  .hamburger {
    display: none;
  }
  /* メニューのスタイル */
  .modal-container {
    height: 100%;
    width: 100%;
    position: initial;
    padding-top: 0px;
    display: none;
  }
  .modal-container[aria-hidden=false] {
    overflow-y: initial;
  }
  .menu-nav {
    display: flex;
    align-items: center;
    justify-content: right;
  }
  .menu-list {
    display: flex;
  }
  .menu-item {
    margin-top: 0px;
    font-weight: bold;
    position: initial;
    padding-left: 0px;
    margin-left: 20px;
  }
  .menu-item:last-child {
    margin-bottom: 0px;
  }
  .menu-item::before {
    display: none;
  }
  .menu-item::after {
    display: none;
  }
  /*多言語ナビ*/
  .lang-switcher {
    position: absolute;
    top: -18px;
    right: 0;
  }
  .lang-icon {
    margin-right: 7px;
  }
  .lang-label {
    color: #333333;
  }
  .lang-item {
    color: #333333;
  }
}
@media screen and (min-width: 1380px) and (any-hover: hover) {
  .lang-item:hover {
    color: #2f4091;
  }
}
.top {
  position: -webkit-sticky;
  position: sticky;
  top: 0;
  z-index: -100;
  overflow: hidden;
  height: 550px;
}
.top__bg {
  width: 100%;
  height: clamp(600px, 529.5774647887px + 18.779342723vw, 800px);
  margin-top: -50px;
  vertical-align: bottom;
}
.top__bg-img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: bottom;
     object-position: bottom;
}
.top__desc {
  position: absolute;
  bottom: 50px;
  right: 24px;
  text-align: right;
}
.top__copy {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 1.75rem;
  font-weight: 700;
  color: #fff;
  line-height: 1.5;
  text-shadow: 0 4px 4px rgba(0, 0, 0, 0.25);
  display: block;
  margin-bottom: 19px;
}
.top__ttl {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 1rem;
  font-weight: 500;
  color: #fff;
  text-shadow: 0 4px 4px rgba(0, 0, 0, 0.25);
}
.top__name {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 1.75rem;
  font-weight: 700;
  color: #fff;
  letter-spacing: 0.2em;
  line-height: 1.5;
  text-shadow: 0 4px 4px rgba(0, 0, 0, 0.25);
}

@media screen and (min-width: 360px) {
  .top__bg-img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
    -o-object-position: bottom;
       object-position: bottom;
  }
  .top__desc {
    position: absolute;
    bottom: 50px;
    right: 24px;
    text-align: right;
  }
  .top__copy {
    font-size: 2.25rem;
    margin-bottom: 6px;
  }
  .top__ttl {
    font-size: 1.25rem;
  }
  .top__name {
    font-size: 2rem;
  }
}
@media screen and (min-width: 450px) {
  .top {
    height: clamp(515px, 18.687vw + 430.909px, 700px);
  }
  .top__bg {
    margin-top: -100px;
  }
  .top__bg-img {
    -o-object-fit: cover;
       object-fit: cover;
    -o-object-position: bottom;
       object-position: bottom;
  }
  .top__desc {
    bottom: 40px;
    right: 24px;
  }
  .top__copy {
    font-size: 2.275rem;
    margin-bottom: 19px;
  }
  .top__ttl {
    font-size: 1.375rem;
  }
  .top__name {
    font-size: 2.125rem;
  }
}
@media screen and (min-width: 1000px) {
  .top__bg {
    margin-top: -80px;
  }
  .top__desc {
    bottom: initial;
    right: initial;
    top: 60px;
    left: 40px;
  }
  .top__copy {
    font-size: 3.375rem;
    line-height: 1.5;
    margin-bottom: 3px;
  }
  .top__ttl {
    font-size: 1.75rem;
    line-height: 1.74;
    display: inline-block;
  }
  .top__name {
    font-size: 2.375rem;
  }
}
@media screen and (min-width: 1440px) {
  .top__bg {
    margin-top: -100px;
  }
  .top__desc {
    top: 66px;
  }
  .top__copy {
    font-size: 3.5rem;
    margin-bottom: 3px;
  }
  .top__ttl {
    font-size: 1.875rem;
  }
  .top__name {
    font-size: 2.5rem;
  }
}
.breadcrumbs {
  display: flex;
  margin-top: clamp(12px, 0.751vw + 9.183px, 20px);
  padding-left: clamp(15px, 15.493vw - 43.099px, 180px);
  flex-wrap: wrap;
  line-height: 1.5;
}
.breadcrumbs__list {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(0.75rem, 0.188vw + 0.706rem, 0.875rem);
  font-weight: 400;
  color: #333333;
  margin-right: 10.5px;
  text-transform: uppercase;
}
.breadcrumbs__list::after {
  content: "/";
  display: inline-block;
  margin-left: 10.5px;
}
.breadcrumbs__list:last-child {
  margin-right: 0;
}
.breadcrumbs__list:last-child::after {
  content: "";
  margin-left: 0;
}
.breadcrumbs__list:not(:last-child) {
  flex-shrink: 0;
}
.breadcrumbs a {
  color: #333333;
  text-decoration: none;
}
@media screen and (min-width: 1440px) {
  .breadcrumbs__list {
    font-weight: 500;
    margin-right: 17px;
  }
  .breadcrumbs__list::after {
    margin-left: 17px;
  }
}
@media screen and (min-width: 1440px) and (any-hover: hover) {
  .breadcrumbs__link:hover {
    opacity: 0.7;
  }
}
.fr-about {
  background: no-repeat url(../images/sp-about-ly.webp) center/cover;
  padding: 60px 28px 80px;
  min-height: 597px;
}
.fr-about__inner {
  max-width: 600px;
  margin: 0 auto;
}
.fr-about__ttl {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 0.925rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  color: #fff;
  margin-bottom: 20px;
}
.fr-about__upper {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 0.8rem;
  font-weight: 500;
  line-height: 1.8;
  letter-spacing: 0.1em;
  color: #fff;
  margin-bottom: 16px;
  max-width: 395px;
}
.fr-about__mid {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 0.8rem;
  font-weight: 500;
  line-height: 1.8;
  letter-spacing: 0.1em;
  color: #fff;
  margin-bottom: 16px;
  max-width: clamp(226px, 31px + 52vw, 395px);
}
.fr-about__foot {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 0.8rem;
  font-weight: 500;
  line-height: 1.8;
  letter-spacing: 0.1em;
  color: #fff;
  margin-bottom: 40px;
  max-width: clamp(226px, 31px + 52vw, 395px);
}
.fr-about__link {
  font-family: "Noto Sans JP", sans-serif;
  width: 240px;
  height: 40px;
  background: #fff;
  color: #2f4091;
  font-size: 0.75rem;
  font-weight: 500;
  letter-spacing: 0.1em;
  border-radius: 40px;
  display: grid;
  place-items: center;
  margin: 0 auto;
  position: relative;
}
.fr-about__link::before {
  content: "";
  display: block;
  width: 20px;
  height: 20px;
  border-radius: 50%;
  background-color: #2f4091;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 20px;
}
.fr-about__link::after {
  content: "";
  display: block;
  width: 8px;
  height: 8px;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  position: absolute;
  top: 50%;
  transform: translateY(-50%) rotate(45deg);
  right: 27px;
}

@media screen and (min-width: 375px) {
  .fr-about__ttl {
    font-size: clamp(1.125rem, 0.7288732394rem + 1.6901408451vw, 2.25rem);
  }
  .fr-about__upper {
    font-size: clamp(0.875rem, 0.7429577465rem + 0.5633802817vw, 1.25rem);
  }
  .fr-about__mid {
    font-size: clamp(0.875rem, 0.7429577465rem + 0.5633802817vw, 1.25rem);
  }
  .fr-about__foot {
    font-size: clamp(0.875rem, 0.7429577465rem + 0.5633802817vw, 1.25rem);
    max-width: clamp(226px, 31px + 52vw, 395px);
    margin-bottom: 40px;
  }
}
@media screen and (min-width: 450px) {
  .fr-about {
    background: no-repeat url(../images/sp-fr-about.webp) center bottom/cover;
    padding: 69px 28px 45px;
    height: 750px;
  }
}
@media screen and (min-width: 650px) {
  .fr-about {
    min-height: 700px;
  }
  .fr-about__foot {
    margin-bottom: 80px;
  }
}
@media screen and (min-width: 750px) {
  .fr-about {
    min-height: 850px;
  }
  .fr-about__foot {
    margin-bottom: 150px;
  }
}
@media screen and (min-width: 900px) {
  .fr-about {
    background: no-repeat url(../images/pc-fr-about.webp) right bottom/cover;
  }
  .fr-about__upper {
    width: 40vw;
    max-width: none;
  }
  .fr-about__mid {
    width: 32vw;
    max-width: none;
  }
  .fr-about__foot {
    width: 32vw;
    max-width: none;
  }
}
@media screen and (min-width: 1300px) {
  .fr-about {
    background: no-repeat url(../images/pc-fr-about.webp) center top/cover;
    padding: 69px 28px 45px;
    min-height: 640px;
  }
  .fr-about__inner {
    max-width: 1068px;
  }
  .fr-about__desc {
    max-width: 840px;
  }
  .fr-about__ttl {
    font-size: 2.25rem;
    margin-bottom: 24px;
  }
  .fr-about__upper {
    font-size: 1.25rem;
    width: auto;
  }
  .fr-about__mid {
    font-size: 1.25rem;
    width: auto;
  }
  .fr-about__foot {
    font-size: 1.25rem;
    margin-bottom: 53px;
    width: auto;
  }
  .fr-about__link {
    font-family: "Noto Sans JP", sans-serif;
    width: 300px;
    height: 50px;
    background: #fff;
    color: #2f4091;
    font-size: 1rem;
    font-weight: 500;
    letter-spacing: 0.1em;
    border-radius: 50px;
    display: grid;
    place-items: center;
    margin: 0 auto;
    position: relative;
    transition: color 0.3s ease, background-color 0.3s ease;
  }
  .fr-about__link::before {
    content: "";
    display: block;
    width: 20px;
    height: 20px;
    border-radius: 50%;
    background-color: #2f4091;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    right: 20px;
    transition: transform 0.3s ease, background-color 0.3s ease;
  }
  .fr-about__link::after {
    content: "";
    display: block;
    width: 8px;
    height: 8px;
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
    position: absolute;
    top: 50%;
    transform: translateY(-50%) rotate(45deg);
    right: 27px;
    transition: border-top 0.3s ease, border-right 0.3s ease, transform 0.3s ease;
  }
}
@media screen and (min-width: 1300px) and (any-hover: hover) {
  .fr-about__link:hover {
    transition: color 0.3s ease, background-color 0.3s ease;
    color: #fff;
    background-color: #2f4091;
  }
  .fr-about__link:hover::before {
    background-color: #fff;
    transform: translate(10px, -50%);
    transition: transform 0.3s ease, background-color 0.3s ease;
  }
  .fr-about__link:hover::after {
    border-top: 2px solid #2f4091;
    border-right: 2px solid #2f4091;
    transform: translate(10px, -50%) rotate(45deg);
    transition: border-top 0.3s ease, border-right 0.3s ease, transform 0.3s ease;
  }
}
.fr-lineup {
  padding: 60px 20px 80px;
  background-color: #f1f6fe;
}
.fr-lineup__inner {
  max-width: 700px;
  margin: 0 auto;
}
.fr-lineup__ttl {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 1.25rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  color: #2f4091;
  text-align: center;
  margin-bottom: 31px;
  position: relative;
}
.fr-lineup__ttl::before {
  content: "";
  display: block;
  width: 35px;
  height: 2px;
  border-radius: 1px;
  background-color: #277dc9;
  position: absolute;
  top: 49%;
  left: 50%;
  transform: translate(-272%, -50%);
  z-index: 2;
}
.fr-lineup__ttl::after {
  content: "";
  display: block;
  width: 188px;
  height: 2px;
  border-radius: 1px;
  background-color: #2f4091;
  position: absolute;
  top: 49%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 1;
}
.fr-lineup__ttl-en {
  font-family: "Inter", sans-serif;
  font-size: 1.125rem;
  font-weight: 500;
  color: #2f4091;
  display: block;
  margin-bottom: 11px;
  letter-spacing: 0;
}
.fr-lineup__menu {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 20px 15px;
  align-items: center;
  margin: 0 auto 40px;
}
.fr-lineup__item:nth-child(1) .fr-lineup__item-link {
  background-color: #f2f5e8;
}
.fr-lineup__item:nth-child(1) .fr-lineup__item-img {
  width: 47%;
}
.fr-lineup__item:nth-child(1) .fr-lineup__item-ttl {
  color: #b8a423;
}
.fr-lineup__item:nth-child(1) .fr-lineup__item-ttl::before, .fr-lineup__item:nth-child(1) .fr-lineup__item-ttl::after {
  border-top: 1px solid #b8a423;
  border-right: 1px solid #b8a423;
}
.fr-lineup__item:nth-child(2) .fr-lineup__item-link {
  background-color: #F1ECF9;
}
.fr-lineup__item:nth-child(2) .fr-lineup__item-img {
  width: 46%;
}
.fr-lineup__item:nth-child(2) .fr-lineup__item-ttl {
  color: #cd7ebe;
}
.fr-lineup__item:nth-child(2) .fr-lineup__item-ttl::before, .fr-lineup__item:nth-child(2) .fr-lineup__item-ttl::after {
  border-top: 1px solid #cd7ebe;
  border-right: 1px solid #cd7ebe;
}
.fr-lineup__item:nth-child(3) .fr-lineup__item-link {
  background-color: #f2f1f1;
  padding-top: 30px;
}
.fr-lineup__item:nth-child(3) .fr-lineup__item-img {
  width: 35%;
}
.fr-lineup__item:nth-child(3) .fr-lineup__item-ttl {
  color: #f08080;
}
.fr-lineup__item:nth-child(3) .fr-lineup__item-ttl::before, .fr-lineup__item:nth-child(3) .fr-lineup__item-ttl::after {
  border-top: 1px solid #f08080;
  border-right: 1px solid #f08080;
}
.fr-lineup__item:nth-child(4) .fr-lineup__item-link {
  background-color: #e7f0ed;
}
.fr-lineup__item:nth-child(4) .fr-lineup__item-img {
  width: 54%;
}
.fr-lineup__item:nth-child(4) .fr-lineup__item-ttl {
  color: #5f8143;
}
.fr-lineup__item:nth-child(4) .fr-lineup__item-ttl::before, .fr-lineup__item:nth-child(4) .fr-lineup__item-ttl::after {
  border-top: 1px solid #5f8143;
  border-right: 1px solid #5f8143;
}
.fr-lineup__item:nth-child(5) .fr-lineup__item-link {
  background-color: #dfecf5;
}
.fr-lineup__item:nth-child(5) .fr-lineup__item-img {
  width: 24%;
}
.fr-lineup__item:nth-child(5) .fr-lineup__item-ttl {
  color: #308bb5;
}
.fr-lineup__item:nth-child(5) .fr-lineup__item-ttl::before, .fr-lineup__item:nth-child(5) .fr-lineup__item-ttl::after {
  border-top: 1px solid #308bb5;
  border-right: 1px solid #308bb5;
}
.fr-lineup__item:last-child {
  max-width: 340px;
  max-height: 306px;
  min-width: 160px;
  min-height: 144px;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.fr-lineup__item-link {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  align-items: center;
  max-width: 340px;
  max-height: 306px;
  min-width: 120px;
  height: clamp(144px, 28.29px + 30.86vw, 306px);
  border-radius: 5px;
  padding: 10px 0;
  position: relative;
}
.fr-lineup__item-img {
  max-width: 100%;
  width: 50%;
  height: auto;
  -o-object-fit: contain;
     object-fit: contain;
  display: block;
}
.fr-lineup__item-ttl {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(0.875rem, 0.54rem + 1.42vw, 1.5rem);
  font-weight: 700;
  white-space: nowrap;
  position: relative;
  transform: translate(-10px, 0);
}
.fr-lineup__item-ttl::before {
  content: "";
  display: block;
  width: 6px;
  height: 6px;
  position: absolute;
  top: 50%;
  transform: translateY(-50%) rotate(45deg);
  right: -12px;
}
.fr-lineup__item-ttl::after {
  content: "";
  display: block;
  width: 6px;
  height: 6px;
  position: absolute;
  top: 50%;
  transform: translateY(-50%) rotate(45deg);
  right: -15px;
}
.fr-lineup__item-all {
  display: block;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 0.875rem;
  font-weight: 700;
  line-height: 1.5;
  color: #2f4091;
  margin: 0 auto;
  margin-bottom: 7.5px;
  position: relative;
}
.fr-lineup__item-all::after {
  content: "";
  width: 25px;
  height: 25px;
  display: block;
  background: no-repeat url(../images/fr-lineup-6.svg) center/contain;
  position: absolute;
  top: 10px;
  right: -17px;
}
.fr-lineup__item-btn {
  display: grid;
  place-items: center;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 0.825rem;
  font-weight: 700;
  line-height: 1.5;
  background-color: #2f4091;
  color: #fff;
  width: 80%;
  min-width: 141px;
  max-width: 300px;
  height: 30px;
  border-radius: 15px;
  border: 1px solid #2f4091;
  margin: 0 auto;
}
.fr-lineup__online {
  margin-bottom: 24px;
}
.fr-lineup__online-wrap {
  max-width: 523px;
  max-height: 280px;
  background: #5ebae4;
  border-radius: 5px;
  text-align: center;
  padding: 30px 27px 25px;
  position: relative;
  margin: 0 auto;
}
.fr-lineup__online-wrap::after {
  content: "";
  display: block;
  width: 46px;
  height: 62px;
  background: no-repeat url(../images/fr-lineup-7.webp) center/contain;
  position: absolute;
  bottom: -3px;
  right: 3px;
}
.fr-lineup__online-box {
  position: absolute;
  top: 50%;
  left: 4px;
  transform: translate(0, -110%);
  width: 190px;
}
.fr-lineup__online-box-img {
  width: 100%;
  height: auto;
}
.fr-lineup__online-ttl {
  font-family: "Zen Maru Gothic", sans-serif;
  font-size: 1.125rem;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: -0.02em;
  color: #fff;
  margin-bottom: 6px;
}
.fr-lineup__online-link {
  width: 100%;
  max-width: 320px;
  height: 54px;
  display: block;
  background: #fff;
  border-radius: 65px;
  box-shadow: 3.82px 3.82px #347eba;
  display: grid;
  place-items: center;
  margin: 0 auto 8px;
  position: relative;
}
.fr-lineup__online-link::before {
  content: "";
  display: block;
  width: 12px;
  height: 12px;
  border-top: 2px solid #347eba;
  border-right: 2px solid #347eba;
  position: absolute;
  top: 50%;
  transform: translateY(-20%) rotate(45deg);
  right: 27px;
}
.fr-lineup__online-link::after {
  content: "";
  display: block;
  width: 12px;
  height: 12px;
  border-top: 2px solid #347eba;
  border-right: 2px solid #347eba;
  position: absolute;
  top: 50%;
  transform: translateY(-20%) rotate(45deg);
  right: 20px;
}
.fr-lineup__online-img {
  width: 75%;
  transform: translate(-15px, 0);
}
.fr-lineup__online-text {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 0.5rem;
  font-weight: 500;
  line-height: 1.5;
  color: #fff;
}
.fr-lineup__online-text-st {
  font-size: 0.625rem;
  font-weight: 700;
  text-decoration: underline;
}
.fr-lineup__online-text-st:nth-child(3) {
  text-decoration: none;
}
.fr-lineup__online-text-link {
  font-size: 0.625rem;
  font-weight: 700;
  color: #ffe400;
}
.fr-lineup__service {
  border-radius: 5px;
  overflow: hidden;
}
.fr-lineup__service-bg {
  background: no-repeat url(../images/fr-lineup-6.webp) center/cover;
  border-radius: 5px;
  max-width: 523px;
  max-height: 280px;
  min-height: 180px;
  display: flex;
  align-items: flex-end;
  margin: 0 auto;
}
.fr-lineup__service-desc {
  padding: 0 8px 16px 12px;
  background: linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, rgba(20, 75, 160, 0.6) 23%, #06235A 100%);
}
.fr-lineup__service-ttl {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 0.75rem;
  font-weight: 700;
  color: #fff;
  margin-bottom: 8px;
}
.fr-lineup__service-text {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 0.5625rem;
  font-weight: 500;
  line-height: 1.5;
  color: #fff;
}

@media screen and (min-width: 1080px) {
  .fr-lineup {
    padding: 100px 20px 100px;
  }
  .fr-lineup__inner {
    max-width: 1080px;
  }
  .fr-lineup__ttl {
    font-size: 2.25rem;
    margin-bottom: 48px;
  }
  .fr-lineup__ttl::before {
    width: 60px;
    transform: translate(-272%, -50%);
  }
  .fr-lineup__ttl::after {
    width: 327px;
    transform: translate(-50%, -50%);
  }
  .fr-lineup__ttl-en {
    font-size: 1.75rem;
    margin-bottom: 12px;
  }
  .fr-lineup__menu {
    grid-template-columns: 1fr 1fr 1fr;
    gap: 28px 30px;
    margin-bottom: 40px;
  }
  .fr-lineup__item:nth-child(1) .fr-lineup__item-ttl::before, .fr-lineup__item:nth-child(1) .fr-lineup__item-ttl::after {
    border-top: 2px solid #b8a423;
    border-right: 2px solid #b8a423;
  }
  .fr-lineup__item:nth-child(2) .fr-lineup__item-ttl::before, .fr-lineup__item:nth-child(2) .fr-lineup__item-ttl::after {
    border-top: 2px solid #cd7ebe;
    border-right: 2px solid #cd7ebe;
  }
  .fr-lineup__item:nth-child(3) .fr-lineup__item-link {
    padding-top: 65px;
  }
  .fr-lineup__item:nth-child(3) .fr-lineup__item-img {
    width: 35%;
  }
  .fr-lineup__item:nth-child(3) .fr-lineup__item-ttl::before, .fr-lineup__item:nth-child(3) .fr-lineup__item-ttl::after {
    border-top: 2px solid #f08080;
    border-right: 2px solid #f08080;
  }
  .fr-lineup__item:nth-child(4) .fr-lineup__item-ttl::before, .fr-lineup__item:nth-child(4) .fr-lineup__item-ttl::after {
    border-top: 2px solid #5f8143;
    border-right: 2px solid #5f8143;
  }
  .fr-lineup__item:nth-child(5) .fr-lineup__item-link {
    padding-top: 16px;
    padding-right: 6px;
  }
  .fr-lineup__item:nth-child(5) .fr-lineup__item-img {
    width: 27%;
  }
  .fr-lineup__item:nth-child(5) .fr-lineup__item-ttl::before, .fr-lineup__item:nth-child(5) .fr-lineup__item-ttl::after {
    border-top: 2px solid #308bb5;
    border-right: 2px solid #308bb5;
  }
  .fr-lineup__item:last-child {
    min-width: 160px;
    min-height: 306px;
  }
  .fr-lineup__item-link {
    min-width: 160px;
    min-height: 306px;
    border-radius: 10px;
    padding: 22px 0;
  }
}
@media screen and (min-width: 1080px) and (any-hover: hover) {
  .fr-lineup__item-link:hover .fr-lineup__item-img {
    scale: 1.1;
  }
}
@media screen and (min-width: 1080px) {
  .fr-lineup__item-img {
    width: 50%;
    max-width: 100%;
    transition: scale 0.3s ease;
  }
}
@media screen and (min-width: 1080px) {
  .fr-lineup__item-ttl {
    font-size: 1.5rem;
    transform: translate(-15px, 0);
  }
  .fr-lineup__item-ttl::before {
    width: 12px;
    height: 12px;
    transform: translateY(-50%) rotate(45deg);
    right: -24px;
  }
  .fr-lineup__item-ttl::after {
    width: 12px;
    height: 12px;
    transform: translateY(-50%) rotate(45deg);
    right: -30px;
  }
}
@media screen and (min-width: 1080px) {
  .fr-lineup__item-all {
    font-size: 1.5rem;
    margin-bottom: 16px;
  }
  .fr-lineup__item-all::after {
    width: 34px;
    height: 34px;
    top: 21px;
    right: -22px;
  }
}
@media screen and (min-width: 1080px) {
  .fr-lineup__item-btn {
    font-size: 1.75rem;
    width: 100%;
    min-width: 141px;
    max-width: 300px;
    height: 62px;
    border-radius: 50px;
    transition: background-color 0.3s ease, color 0.3s ease;
  }
}
@media screen and (min-width: 1080px) and (any-hover: hover) {
  .fr-lineup__item-btn:hover {
    background-color: #fff;
    color: #2f4091;
  }
}
@media screen and (min-width: 1080px) {
  .fr-lineup__sec-flex {
    display: flex;
    gap: 34px;
  }
}
@media screen and (min-width: 1080px) {
  .fr-lineup__online {
    margin-bottom: 0px;
    flex: 1;
  }
  .fr-lineup__online-wrap {
    max-height: 280px;
    border-radius: 10px;
    padding: 50px 53px 40px 44px;
    min-height: 280px;
  }
  .fr-lineup__online-wrap::after {
    width: 93px;
    height: 126px;
    bottom: -18px;
    right: -12px;
  }
  .fr-lineup__online-box {
    left: -6px;
    transform: translate(0, -111%);
    width: 250px;
  }
  .fr-lineup__online-box-img {
    width: 100%;
    height: auto;
  }
  .fr-lineup__online-ttl {
    font-size: 1.8125rem;
    margin-bottom: 6px;
  }
  .fr-lineup__online-link {
    width: 426px;
    height: 82px;
    border-radius: 100px;
    box-shadow: 5.82px 5.82px #347eba;
    margin-bottom: 12px;
    max-width: 426px;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
  }
}
@media screen and (min-width: 1080px) and (any-hover: hover) {
  .fr-lineup__online-link:hover {
    transition: transform 0.3s ease, box-shadow 0.3s ease;
    transform: translate(3px, 3px);
    box-shadow: 1.82px 1.82px #347eba;
  }
}
@media screen and (min-width: 1080px) {
  .fr-lineup__online-link::before {
    width: 14px;
    height: 14px;
    transform: translateY(-20%) rotate(45deg);
    right: 41px;
  }
}
@media screen and (min-width: 1080px) {
  .fr-lineup__online-link::after {
    width: 14px;
    height: 14px;
    transform: translateY(-20%) rotate(45deg);
    right: 34px;
  }
}
@media screen and (min-width: 1080px) {
  .fr-lineup__online-img {
    width: 75%;
    transform: translate(-15px, 0);
  }
}
@media screen and (min-width: 1080px) {
  .fr-lineup__online-text {
    font-size: 0.75rem;
  }
  .fr-lineup__online-text-st {
    font-size: 0.875rem;
  }
  .fr-lineup__online-text-link {
    font-size: 1rem;
  }
}
@media screen and (min-width: 1080px) {
  .fr-lineup__service {
    border-radius: 10px;
    flex: 1;
  }
  .fr-lineup__service-link {
    transition: opacity 0.3s ease;
  }
}
@media screen and (min-width: 1080px) and (any-hover: hover) {
  .fr-lineup__service-link:hover {
    opacity: 0.7;
  }
}
@media screen and (min-width: 1080px) {
  .fr-lineup__service-bg {
    border-radius: 10px;
    max-height: 280px;
    min-height: 280px;
  }
}
@media screen and (min-width: 1080px) {
  .fr-lineup__service-desc {
    padding: 20px 40px 10px;
  }
}
@media screen and (min-width: 1080px) {
  .fr-lineup__service-ttl {
    font-size: 1.5rem;
    margin-bottom: 3px;
  }
}
@media screen and (min-width: 1080px) {
  .fr-lineup__service-text {
    font-size: 0.75rem;
  }
}
.fr-hotspots {
  background-color: #eaedf1;
  padding: 60px 20px 80px;
}
.fr-hotspots__inner {
  max-width: 1080px;
  margin: 0 auto;
}
.fr-hotspots__wrap {
  background-color: #fff;
  border-radius: 20px;
  padding: 50px 0;
  text-align: center;
}
.fr-hotspots__ttl {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 1.25rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  color: #2f4091;
  text-align: center;
  margin-bottom: 31px;
  position: relative;
}
.fr-hotspots__ttl::before {
  content: "";
  display: block;
  width: 52px;
  height: 2px;
  border-radius: 1px;
  background-color: #277dc9;
  position: absolute;
  top: 49%;
  left: 50%;
  transform: translate(-272%, -50%);
  z-index: 2;
}
.fr-hotspots__ttl::after {
  content: "";
  display: block;
  width: 280px;
  height: 2px;
  border-radius: 1px;
  background-color: #2f4091;
  position: absolute;
  top: 49%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 1;
}
.fr-hotspots__ttl-en {
  font-family: "Inter", sans-serif;
  font-size: 1.125rem;
  font-weight: 500;
  color: #2f4091;
  display: block;
  margin-bottom: 11px;
  letter-spacing: 0;
}
.fr-hotspots__top {
  max-width: 640px;
  width: 84%;
  border-radius: 10px;
  overflow: hidden;
  margin: 0 auto 13px;
}
.fr-hotspots__top-img {
  width: 100%;
  height: clamp(120px, 49.41px + 18.82vw, 200px);
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
}
.fr-hotspots__top-text {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 1.25rem;
  font-weight: 700;
  color: #2f4091;
  margin-bottom: 30px;
  display: inline-block;
  position: relative;
  transform: translateX(-10px);
}
.fr-hotspots__top-text::before {
  content: "";
  display: block;
  width: 10px;
  height: 10px;
  border-top: 2px solid #2f4091;
  border-right: 2px solid #2f4091;
  position: absolute;
  top: 50%;
  transform: translateY(-50%) rotate(45deg);
  right: -25px;
}
.fr-hotspots__top-text::after {
  content: "";
  display: block;
  width: 10px;
  height: 10px;
  border-top: 2px solid #2f4091;
  border-right: 2px solid #2f4091;
  position: absolute;
  top: 50%;
  transform: translateY(-50%) rotate(45deg);
  right: -18px;
}
.fr-hotspots__flex {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  max-width: clamp(245px, 88.8vw - 88px, 800px);
  margin: 0 auto;
  gap: 24px 25px;
}
.fr-hotspots__flex-link {
  display: block;
}
.fr-hotspots__flex-box {
  position: relative;
  max-width: clamp(110px, 26.67px + 22.22vw, 160px);
  border-radius: 50%;
  overflow: hidden;
  margin: 0 auto 10px;
  box-shadow: 3.2px 3.2px 8px rgba(0, 0, 0, 0.3);
}
.fr-hotspots__flex-box::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border-radius: 50%;
  pointer-events: none;
  box-shadow: inset 0 0 0 1.6px rgba(0, 0, 0, 0.2), inset 0 0 0 1.6px #FFFEFA;
}
.fr-hotspots__flex-img {
  width: 100%;
  height: clamp(110px, 26.67px + 22.22vw, 160px);
  -o-object-fit: cover;
     object-fit: cover;
}
.fr-hotspots__flex-text {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(0.875rem, 0.54rem + 1.41vw, 1.25rem);
  font-weight: 700;
  color: #2f4091;
  display: inline-block;
  position: relative;
  transform: translateX(10px);
}
.fr-hotspots__flex-text::before {
  content: "";
  display: block;
  width: 15px;
  height: 15px;
  background: no-repeat url(../images/fr-hotspots-icon.svg) center/contain;
  position: absolute;
  top: 50%;
  left: -22px;
  transform: translate(0, -50%);
}

@media screen and (min-width: 1080px) {
  .fr-hotspots__wrap {
    border-radius: 30px;
    padding: 60px 0;
  }
  .fr-hotspots__ttl {
    font-size: 2.25rem;
    margin-bottom: 100px;
  }
  .fr-hotspots__ttl::before {
    width: 95px;
    top: 49%;
  }
  .fr-hotspots__ttl::after {
    width: 518px;
    top: 49%;
  }
  .fr-hotspots__ttl-en {
    font-size: 1.75rem;
    margin-bottom: 18px;
  }
  .fr-hotspots__top {
    width: 84%;
    border-radius: 20px;
    margin: 0 auto 12px;
  }
  .fr-hotspots__top-link {
    transition: opacity 0.3s ease;
  }
}
@media screen and (min-width: 1080px) and (any-hover: hover) {
  .fr-hotspots__top-link:hover {
    opacity: 0.7;
  }
}
@media screen and (min-width: 1080px) {
  .fr-hotspots__top-text {
    font-size: 2rem;
    margin-bottom: 40px;
    transform: translateX(-10px);
  }
  .fr-hotspots__top-text::before {
    width: 16px;
    height: 16px;
    right: -32px;
  }
  .fr-hotspots__top-text::after {
    width: 16px;
    height: 16px;
    right: -25px;
  }
}
@media screen and (min-width: 1080px) {
  .fr-hotspots__flex {
    gap: 24px 25px;
    justify-content: space-between;
  }
  .fr-hotspots__flex-link {
    opacity: 1;
  }
}
@media screen and (min-width: 1080px) and (any-hover: hover) {
  .fr-hotspots__flex-link:hover .fr-hotspots__flex-text {
    opacity: 0.7;
  }
}
@media screen and (min-width: 1080px) and (any-hover: hover) {
  .fr-hotspots__flex-link:hover .fr-hotspots__flex-box::before {
    translate: 300% 0;
    transition: 0.5s;
  }
}
@media screen and (min-width: 1080px) {
  .fr-hotspots__flex-box {
    margin: 0 auto 16px;
  }
  .fr-hotspots__flex-box::before {
    content: "";
    position: absolute;
    top: 0;
    left: -150%;
    width: 100%;
    height: 100%;
    background: linear-gradient(120deg, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.6) 50%, rgba(255, 255, 255, 0) 100%);
    transform: skewX(-20deg);
  }
}
@media screen and (min-width: 1080px) {
  .fr-hotspots__flex-text {
    font-size: 1.25rem;
    transform: translateX(10px);
  }
  .fr-hotspots__flex-text::before {
    width: 19px;
    height: 19px;
    left: -27px;
  }
}
.fr-topics {
  padding: 60px 12px 80px;
  position: relative;
  z-index: 1;
  overflow: hidden;
}
.fr-topics__inner {
  max-width: 1080px;
  margin: 0 auto;
}
.fr-topics__ttl {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(1.25rem, 0.84rem + 1.73vw, 2.25rem);
  font-weight: 700;
  letter-spacing: 0.1em;
  color: #2f4091;
  text-align: center;
  margin-bottom: 30px;
  position: relative;
}
.fr-topics__ttl::before {
  content: "";
  display: block;
  width: 56px;
  height: 2px;
  border-radius: 1px;
  background-color: #277dc9;
  position: absolute;
  top: 33%;
  left: 50%;
  transform: translate(-272%, -50%);
  z-index: 2;
}
.fr-topics__ttl::after {
  content: "";
  display: block;
  width: 300px;
  height: 2px;
  border-radius: 1px;
  background-color: #2f4091;
  position: absolute;
  top: 33%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 1;
}
.fr-topics__ttl-en {
  font-family: "Inter", sans-serif;
  font-size: clamp(1.125rem, 0.87rem + 1.08vw, 1.75rem);
  font-weight: 500;
  color: #2f4091;
  display: block;
  letter-spacing: 0;
  margin-bottom: 10px;
}
.fr-topics__menu {
  max-width: clamp(345px, 10.91px + 89.09vw, 1080px);
  margin: 0 auto;
  display: flex;
  flex-wrap: wrap;
  gap: 24px 16px;
}
.fr-topics__item {
  background: #fff;
  border-radius: 5px;
  box-shadow: 1px 1px 5px rgba(0, 0, 0, 0.25);
  max-width: clamp(164.5px, 27.29px + 36.59vw, 320px);
  min-height: clamp(250px, 107.06px + 38.12vw, 412px);
  padding-bottom: 12px;
  margin: 0 auto;
  overflow: hidden;
}
.fr-topics__wrap {
  display: flex;
  flex-direction: column;
  height: 100%;
}
.fr-topics__wrap p:last-of-type {
  margin-top: auto;
}
.fr-topics__box {
  margin-bottom: 10px;
  height: clamp(92.25px, 14.82px + 20.65vw, 180px);
  overflow: hidden;
}
.fr-topics__box-img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
}
.fr-topics__sub-ttl {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(0.75rem, 0.09rem + 2.82vw, 1.5rem);
  font-weight: 700;
  color: #333333;
  line-height: 1.5;
  margin-bottom: 5px;
  text-align: center;
}
.fr-topics__text {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(0.625rem, 0.29rem + 1.41vw, 1rem);
  font-weight: 400;
  color: #333333;
  line-height: 1.8;
  margin-bottom: 9px;
  padding: 0 7.5px;
}
.fr-topics__link {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(0.5rem, 0.39rem + 0.47vw, 0.625rem);
  font-weight: 500;
  color: #fff;
  letter-spacing: 0.1;
  background-color: #2f4091;
  border-radius: 20px;
  display: grid;
  place-items: center;
  width: clamp(64px, 32.24px + 8.47vw, 100px);
  height: clamp(14px, 5.18px + 2.35vw, 24px);
  margin: 0 7.5px 0 auto;
}

@media screen and (min-width: 600px) {
  .fr-topics {
    padding: 80px 12px 100px;
  }
  .fr-topics__ttl {
    margin-bottom: 38px;
  }
  .fr-topics__ttl::before {
    width: 80px;
    top: 37%;
  }
  .fr-topics__ttl::after {
    width: 420px;
    top: 37%;
  }
  .fr-topics__ttl-en {
    margin-bottom: 15px;
  }
  .fr-topics__menu {
    gap: 38px 38px;
  }
  .fr-topics__item {
    border-radius: 10px;
    box-shadow: 2px 2px 10px rgba(0, 0, 0, 0.25);
    padding-bottom: 20px;
  }
  .fr-topics__box {
    margin-bottom: 15px;
  }
  .fr-topics__sub-ttl {
    margin-bottom: 12px;
  }
  .fr-topics__text {
    margin-bottom: 14px;
    padding: 0 10px;
    line-height: 1.6;
  }
  .fr-topics__link {
    border-radius: 24px;
    margin: 0 15px 0 auto;
  }
}
@media screen and (min-width: 950px) {
  .fr-topics {
    padding: 90px 12px 110px;
  }
  .fr-topics__ttl {
    margin-bottom: 48px;
  }
  .fr-topics__ttl::before {
    width: 80px;
    top: 35%;
  }
  .fr-topics__ttl::after {
    width: 420px;
    top: 35%;
  }
}
@media screen and (min-width: 1300px) {
  .fr-topics {
    padding: 100px 12px 120px;
  }
  .fr-topics__ttl {
    margin-bottom: 48px;
  }
  .fr-topics__ttl::before {
    width: 120px;
    top: 33%;
  }
  .fr-topics__ttl::after {
    width: 657px;
    top: 33%;
  }
  .fr-topics__ttl-en {
    margin-bottom: 18px;
  }
  .fr-topics__menu {
    gap: 50px 60px;
  }
  .fr-topics__item {
    border-radius: 10px;
    box-shadow: 2px 2px 10px rgba(0, 0, 0, 0.25);
    padding-bottom: 20px;
  }
  .fr-topics__box {
    margin-bottom: 20px;
  }
  .fr-topics__box-img {
    transition: scale 0.3s ease;
  }
}
@media screen and (min-width: 1300px) and (any-hover: hover) {
  .fr-topics__box-img:hover {
    scale: 1.2;
  }
}
@media screen and (min-width: 1300px) {
  .fr-topics__sub-ttl {
    margin-bottom: 18px;
  }
}
@media screen and (min-width: 1300px) {
  .fr-topics__text {
    margin-bottom: 18px;
    padding: 0 15px;
    line-height: 1.5;
  }
}
@media screen and (min-width: 1300px) {
  .fr-topics__link {
    border-radius: 27px;
    margin: 0 15px 0 auto;
    border: 1px solid #2f4091;
    transition: color 0.3s ease, background-color 0.3s ease;
  }
}
@media screen and (min-width: 1300px) and (any-hover: hover) {
  .fr-topics__link:hover {
    color: #2f4091;
    background-color: #fff;
  }
}
@media screen and (min-width: 1440px) {
  .fr-topics__ttl::before {
    top: 45%;
  }
  .fr-topics__ttl::after {
    top: 45%;
  }
}
.fr-news {
  padding: 60px 15px 80px;
}
.fr-news__wrap {
  background-color: #fff;
  border-radius: 10px;
  padding: 30px 15px;
  max-width: 800px;
  margin: 0 auto;
}
.fr-news__ttl {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(1.25rem, 0.84rem + 1.73vw, 2.25rem);
  font-weight: 700;
  color: #2f4091;
  text-align: center;
  margin-bottom: 38px;
  position: relative;
}
.fr-news__ttl::before {
  content: "";
  display: block;
  width: 30px;
  height: 2px;
  border-radius: 1px;
  background-color: #277dc9;
  position: absolute;
  top: 130%;
  left: 50%;
  transform: translate(-272%, -50%);
  z-index: 2;
}
.fr-news__ttl::after {
  content: "";
  display: block;
  width: 165px;
  height: 2px;
  border-radius: 1px;
  background-color: #2f4091;
  position: absolute;
  top: 130%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 1;
}
.fr-news__item {
  padding-bottom: 24px;
  margin-bottom: 18px;
  border-bottom: 1px solid #d9d9d9;
}
.fr-news__item:last-child {
  margin-bottom: 20px;
}
.fr-news__item-ttl {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 0.875rem;
  font-weight: 400;
  color: #333333;
  line-height: 1.5;
  margin-top: 8px;
}
.fr-news__time {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 0.875rem;
  font-weight: 400;
  color: #757575;
  margin-right: 30px;
}
.fr-news__cat {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 0.625rem;
  font-weight: 400;
  color: #2f4091;
  margin-right: 16px;
  border: 1px solid #2f4091;
  border-radius: 3px;
  display: inline-block;
  padding: 5.5px 8px;
}
.fr-news__archive-link {
  font-family: "Noto Sans JP", sans-serif;
  font-family: "Noto Sans JP", sans-serif;
  width: 240px;
  height: 40px;
  background: #fff;
  color: #2f4091;
  font-size: 0.75rem;
  font-weight: 500;
  letter-spacing: 0.1em;
  border-radius: 40px;
  display: grid;
  place-items: center;
  margin: 0 auto;
  position: relative;
  color: #fff;
  background-color: #2f4091;
  text-transform: uppercase;
}
.fr-news__archive-link::before {
  content: "";
  display: block;
  width: 20px;
  height: 20px;
  border-radius: 50%;
  background-color: #2f4091;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 20px;
}
.fr-news__archive-link::after {
  content: "";
  display: block;
  width: 8px;
  height: 8px;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  position: absolute;
  top: 50%;
  transform: translateY(-50%) rotate(45deg);
  right: 27px;
}
.fr-news__archive-link::before {
  background-color: #fff;
}
.fr-news__archive-link::after {
  border-top: 2px solid #2f4091;
  border-right: 2px solid #2f4091;
}

@media screen and (min-width: 1440px) {
  .fr-news {
    padding: 60px 15px 0px;
  }
  .fr-news__wrap {
    border-radius: 20px;
    padding: 60px 30px;
    max-width: 1200px;
    display: grid;
    grid-template-columns: 240px 1fr;
    grid-template-rows: auto 1fr;
    /* エリアの名前を定義 */
    grid-template-areas: "area-title list" "area-btn   list";
    gap: 0 70px;
    align-items: start;
  }
  .fr-news__ttl {
    margin-bottom: 0px;
    grid-area: area-title;
  }
  .fr-news__ttl::before {
    top: 130%;
    transform: translate(-272%, -50%);
  }
  .fr-news__ttl::after {
    top: 130%;
    transform: translate(-50%, -50%);
  }
  .fr-news__menu {
    grid-area: list;
  }
  .fr-news__item {
    padding-bottom: 24px;
    margin-bottom: 20px;
  }
}
@media screen and (min-width: 1440px) and (any-hover: hover) {
  .fr-news__item .fr-news__item-ttl:hover {
    color: #2f4091;
  }
}
@media screen and (min-width: 1440px) {
  .fr-news__item:last-child {
    margin-bottom: 0px;
  }
}
@media screen and (min-width: 1440px) {
  .fr-news__item-ttl {
    font-size: 1rem;
    margin-top: 8px;
    transition: color 0.3s ease;
  }
}
@media screen and (min-width: 1440px) {
  .fr-news__time {
    margin-right: 30px;
  }
}
@media screen and (min-width: 1440px) {
  .fr-news__cat {
    font-size: 0.75rem;
    margin-right: 12px;
    padding: 4.5px 8px;
  }
}
@media screen and (min-width: 1440px) {
  .fr-news__archive-link {
    grid-area: area-btn;
    align-self: flex-end;
    width: 165px;
    height: 46px;
    font-size: 1rem;
    padding-right: 15px;
    border: 1px solid #2f4091;
    transition: color 0.3s ease, background-color 0.3s ease;
  }
}
@media screen and (min-width: 1440px) and (any-hover: hover) {
  .fr-news__archive-link:hover {
    color: #2f4091;
    background-color: #fff;
  }
  .fr-news__archive-link:hover::before {
    background-color: #2f4091;
    transform: translate(8px, -50%);
  }
  .fr-news__archive-link:hover::after {
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
    transform: translate(8px, -50%) rotate(45deg);
  }
}
@media screen and (min-width: 1440px) {
  .fr-news__archive-link::before {
    background-color: #fff;
    transition: transform 0.3s ease;
  }
}
@media screen and (min-width: 1440px) {
  .fr-news__archive-link::after {
    border-top: 2px solid #2f4091;
    border-right: 2px solid #2f4091;
    transition: transform 0.3s ease;
  }
}
.banner {
  padding: 20px 20px 100px;
}
.banner__inner {
  max-width: 380px;
  margin: 0 auto;
}
.banner__flex {
  display: flex;
  flex-direction: column;
  gap: 18px;
}
.banner__box {
  max-width: 380px;
}
.banner__link-img {
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
}

@media screen and (min-width: 1300px) {
  .banner {
    padding: 80px 20px 100px;
  }
  .banner__inner {
    max-width: 1200px;
  }
  .banner__flex {
    display: flex;
    flex-direction: row;
    gap: 0 30px;
    justify-content: center;
  }
  .banner__box {
    max-width: 380px;
    transition: 0.3s opacity ease;
    width: 380px;
    height: 180px;
  }
}
@media screen and (min-width: 1300px) and (any-hover: hover) {
  .banner__box:hover {
    opacity: 0.7;
  }
}
@media screen and (min-width: 1300px) {
  .banner__link-img {
    width: 380px;
    height: 180px;
  }
}
.page-top {
  position: relative;
}
.page-top__pic-img {
  width: 100%;
  height: clamp(260px, 200px + 16vw, 360px);
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
}
.page-top__ttl {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(1.5rem, 1.05rem + 1.92vw, 2.25rem);
  font-weight: 700;
  color: #fff;
  position: absolute;
  top: 50%;
  left: 5%;
  transform: translate(0, -50%);
  text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.25);
  text-transform: uppercase;
}

@media screen and (min-width: 1000px) {
  .page-top {
    position: relative;
  }
  .page-top__ttl {
    left: 9%;
  }
}
@media screen and (min-width: 1550px) {
  .page-top {
    aspect-ratio: 1440/360;
  }
  .page-top__pic-img {
    -o-object-fit: initial;
       object-fit: initial;
    height: 100%;
  }
}
.page-company {
  background-color: #fff;
  padding: 40px 16px;
}
.page-company__inner {
  max-width: 600px;
  margin: 0 auto;
}
.page-company__ttl {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 1rem;
  font-weight: 700;
  color: #333333;
  line-height: 1.8;
  letter-spacing: 0.1em;
  text-align: center;
  margin-bottom: 17px;
}
.page-company__founder-box {
  width: 253px;
  height: 142px;
  margin: 0 auto;
  margin-bottom: 17px;
}
.page-company__founder-box-img {
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
}
.page-company__founder-flex {
  display: flex;
  gap: 12.5px;
  justify-content: center;
  align-items: center;
}
.page-company__founder-reed {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 0.625rem;
  font-weight: 700;
  color: #333333;
  line-height: 1.51;
  text-align: right;
}
.page-company__founder-text-up {
  display: block;
}
.page-company__founder-text-ft {
  display: block;
}
.page-company__founder-name-box {
  width: 190px;
  height: 44px;
}
.page-company__founder-name-img {
  width: 100%;
}
.page-company__message {
  background: no-repeat url(../images/pc-company-bg.webp) center/cover;
  font-family: "Noto Sans JP", sans-serif;
  padding: 40px 16px;
}
.page-company__message-inner {
  max-width: 1080px;
  margin: 0 auto;
}
.page-company__message-desc {
  margin: 0 auto;
  max-width: 480px;
}
.page-company__message h2 {
  font-weight: 700;
  font-size: 1rem;
  letter-spacing: 0.1em;
  text-align: center;
  margin-bottom: 24px;
}
.page-company__message p {
  font-weight: 500;
  font-size: 0.75rem;
  line-height: 2;
  margin-bottom: 16px;
}
.page-company__message span {
  font-weight: 700;
}
.page-company__concept {
  background-color: #f1f6fe;
  padding: 40px 20px;
  font-family: "Noto Sans JP", sans-serif;
}
.page-company__concept-inner {
  max-width: 1080px;
  margin: 0 auto;
}
.page-company__concept-wrapper {
  background-color: #fff;
  padding: 20px 20px 15px;
  border-radius: 8px;
}
.page-company__concept h2 {
  font-size: 1rem;
  font-weight: 700;
  color: #333333;
  line-height: 1.8;
  text-align: center;
  margin-bottom: 12.5px;
}
.page-company__concept p {
  font-size: 0.75rem;
  font-weight: 500;
  color: #333333;
  line-height: 2;
  margin-bottom: 6.25px;
}
.page-company__concept p:last-of-type {
  margin-bottom: 0;
}
.page-company__concept-box {
  max-width: 500px;
  max-height: 505px;
  text-align: center;
  margin: 0 auto;
}
.page-company__concept-box-img {
  width: 200px;
  height: 202px;
}
.page-company__profile {
  background-color: #fff;
  padding: 30px 20px;
  font-family: "Noto Sans JP", sans-serif;
}
.page-company__profile-inner {
  max-width: 1080px;
  margin: 0 auto;
}
.page-company__profile h2 {
  font-size: 1rem;
  font-weight: 700;
  color: #2f4091;
  line-height: 1.8;
  letter-spacing: 0.2em;
  text-align: center;
  margin-bottom: 13px;
  position: relative;
}
.page-company__profile h2::before {
  content: "";
  display: block;
  width: 24px;
  height: 2px;
  border-radius: 1px;
  background-color: #277dc9;
  position: absolute;
  top: 100%;
  left: 50%;
  transform: translate(-272%, -50%);
  z-index: 2;
}
.page-company__profile h2::after {
  content: "";
  display: block;
  width: 131px;
  height: 2px;
  border-radius: 1px;
  background-color: #2f4091;
  position: absolute;
  top: 100%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 1;
}
.page-company__profile-list {
  display: flex;
  justify-content: space-between;
  gap: 18px;
  max-width: 335px;
  margin: 0 auto;
  text-align: center;
}
.page-company__profile-box {
  border-radius: 3px;
  overflow: hidden;
  margin-bottom: 8px;
}
.page-company__profile-box-img {
  width: 80px;
  height: auto;
}
.page-company__profile-text {
  font-size: 0.625rem;
  font-weight: 500;
  color: #333333;
  letter-spacing: 0.1em;
  margin: 0 auto;
  display: inline-block;
  position: relative;
  transform: translate(-5px);
}
.page-company__profile-text::before {
  content: "";
  display: block;
  width: 6px;
  height: 6px;
  border-top: 1px solid #000;
  border-right: 1px solid #000;
  position: absolute;
  top: 50%;
  transform: translateY(-50%) rotate(45deg);
  right: -6px;
}
.page-company__profile-text::after {
  content: "";
  display: block;
  width: 6px;
  height: 6px;
  border-top: 1px solid #000;
  border-right: 1px solid #000;
  position: absolute;
  top: 50%;
  transform: translateY(-50%) rotate(45deg);
  right: -10px;
}

@media screen and (min-width: 365px) {
  .page-company__profile-box-img {
    width: 100px;
  }
}
@media screen and (min-width: 750px) {
  .page-company {
    padding: 60px 16px 50px;
  }
  .page-company__ttl {
    font-size: 1.5rem;
    margin-bottom: 27px;
  }
  .page-company__founder-box {
    width: 310px;
    height: 180px;
    margin-bottom: 22px;
  }
  .page-company__founder-flex {
    gap: 15px;
  }
  .page-company__founder-reed {
    font-size: 0.775rem;
  }
  .page-company__founder-name-box {
    width: 240px;
    height: 55px;
  }
  .page-company__message {
    padding: 70px 16px;
  }
  .page-company__message-desc {
    max-width: 746px;
  }
  .page-company__message h2 {
    font-size: 1.325rem;
    margin-bottom: 24px;
  }
  .page-company__message p {
    font-size: 1rem;
    margin-bottom: 20px;
  }
  .page-company__message span {
    font-size: 1.125rem;
  }
  .page-company__concept {
    padding: 60px 20px;
  }
  .page-company__concept-wrapper {
    padding: 50px 40px 35px;
    border-radius: 18px;
  }
  .page-company__concept h2 {
    font-size: 1.5rem;
    margin-bottom: 30px;
  }
  .page-company__concept p {
    font-size: 1rem;
    margin-bottom: 15px;
  }
  .page-company__concept-box-img {
    width: 350px;
    height: 352px;
  }
  .page-company__profile {
    padding: 55px 20px 70px;
  }
  .page-company__profile h2 {
    font-size: 1.5rem;
    margin-bottom: 30px;
  }
  .page-company__profile h2::before {
    width: 92px;
    top: 100%;
    left: 50%;
    transform: translate(-272%, -50%);
  }
  .page-company__profile h2::after {
    width: 504px;
    top: 100%;
    left: 50%;
    transform: translate(-50%, -50%);
  }
  .page-company__profile-list {
    gap: 38px;
    max-width: 700px;
  }
  .page-company__profile-box {
    border-radius: 6px;
  }
  .page-company__profile-box-img {
    width: 210px;
    height: auto;
  }
  .page-company__profile-text {
    font-size: 0.875rem;
  }
  .page-company__profile-text::before {
    width: 8px;
    height: 8px;
    top: 50%;
    transform: translateY(-50%) rotate(45deg);
    right: -14px;
  }
  .page-company__profile-text::after {
    width: 8px;
    height: 8px;
    top: 50%;
    transform: translateY(-50%) rotate(45deg);
    right: -20px;
  }
}
@media screen and (min-width: 1300px) {
  .page-company {
    padding: 80px 16px 50px;
  }
  .page-company__ttl {
    font-size: 2rem;
    margin-bottom: 27px;
  }
  .page-company__founder-box {
    width: 400px;
    height: 225px;
    margin-bottom: 27px;
  }
  .page-company__founder-flex {
    gap: 20px;
  }
  .page-company__founder-reed {
    font-size: 1rem;
  }
  .page-company__founder-name-box {
    width: 300px;
    height: 70px;
  }
  .page-company__message {
    padding: 100px 16px;
  }
  .page-company__message-inner {
    display: flex;
    gap: 90px;
  }
  .page-company__message-desc {
    max-width: 746px;
  }
  .page-company__message h2 {
    font-size: 1.75rem;
    margin-bottom: 0px;
    white-space: nowrap;
  }
  .page-company__message p {
    font-size: 1.125rem;
    margin-bottom: 24px;
  }
  .page-company__message span {
    font-size: 1.25rem;
  }
  .page-company__concept {
    padding: 80px 20px;
  }
  .page-company__concept-wrapper {
    padding: 80px 100px 60px;
    border-radius: 30px;
  }
  .page-company__concept h2 {
    font-size: 2rem;
    margin-bottom: 48px;
  }
  .page-company__concept p {
    font-size: 1.25rem;
    margin-bottom: 24px;
  }
  .page-company__concept-box-img {
    width: 500px;
    height: 505px;
  }
  .page-company__profile {
    padding: 80px 20px 100px;
  }
  .page-company__profile h2 {
    font-size: 2rem;
    margin-bottom: 50px;
  }
  .page-company__profile h2::before {
    width: 92px;
    top: 100%;
    left: 50%;
    transform: translate(-272%, -50%);
  }
  .page-company__profile h2::after {
    width: 504px;
    top: 100%;
    left: 50%;
    transform: translate(-50%, -50%);
  }
  .page-company__profile-list {
    gap: 60px;
    max-width: 1080px;
  }
  .page-company__profile-box {
    border-radius: 10px;
    margin-bottom: 8px;
  }
  .page-company__profile-box-img {
    width: 320px;
  }
  .page-company__profile-text {
    font-size: 1.125rem;
  }
  .page-company__profile-text::before {
    content: "";
    display: block;
    width: 10px;
    height: 10px;
    border-top: 2px solid #000;
    border-right: 2px solid #000;
    position: absolute;
    top: 50%;
    transform: translateY(-50%) rotate(45deg);
    right: -20px;
  }
  .page-company__profile-text::after {
    content: "";
    display: block;
    width: 10px;
    height: 10px;
    border-top: 2px solid #000;
    border-right: 2px solid #000;
    position: absolute;
    top: 50%;
    transform: translateY(-50%) rotate(45deg);
    right: -27px;
  }
}
.about__info {
  padding-top: clamp(40px, 25.9154929577px + 3.7558685446vw, 80px);
  padding-bottom: clamp(60px, 45.9154929577px + 3.7558685446vw, 100px);
}
.about__info-inner {
  max-width: clamp(335px, 72.676056338px + 69.9530516432vw, 1080px);
  margin: 0 auto;
}
.about__info-ttl {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(1.125rem, 0.8169014085rem + 1.3145539906vw, 2rem);
  font-weight: 700;
  color: #333333;
  line-height: 1;
  letter-spacing: 0.1em;
  margin-bottom: 34px;
}
.about__info-list {
  width: 100%;
  border: 1px solid #2f4091;
  border-bottom: none;
  background-color: #fff;
  margin: 0;
  padding: 0;
}
.about__info-row {
  display: flex;
  flex-direction: column;
  border-bottom: 1px solid #2f4091;
}
.about__info-term {
  background-color: #2f4091;
  font-size: clamp(0.875rem, 0.786971831rem + 0.3755868545vw, 1.125rem);
  color: #fff;
  letter-spacing: 0.2em;
  font-weight: bold;
  text-align: center;
  padding: clamp(11.5px, 4.6338028169px + 1.8309859155vw, 31px) 0;
  display: flex;
  align-items: center;
  justify-content: center;
}
.about__info-desc {
  font-size: clamp(0.75rem, 0.661971831rem + 0.3755868545vw, 1rem);
  padding: 10px 20px 24px 40px;
  color: #333333;
  line-height: 1.5;
}
.about__info-desc:has(.about__info-location) {
  padding: 20px 40px 15px 40px;
}
.about__info-location {
  display: flex;
  flex-direction: column;
  padding-bottom: 27px;
  margin-bottom: 30px;
  border-bottom: 1px solid #d9d9d9;
}
.about__info-location:last-child {
  padding-bottom: 0;
  margin-bottom: 0;
  border-bottom: none;
}
.about__info-location-text p {
  margin-top: 0;
  margin-bottom: 0;
}
.about__info-location-name {
  font-size: clamp(0.875rem, 0.786971831rem + 0.3755868545vw, 1.125rem);
  font-weight: 500;
  margin-bottom: 8px !important;
}
.about__info-location-map {
  margin: 10px 0 0 0;
}
.about__info-location-map-img {
  width: 100%;
  height: 128px;
  vertical-align: bottom;
}
.about__info-tel {
  color: inherit;
  text-decoration: underline;
}
.about-history {
  /* 外枠や背景など（デザインに合わせて調整してください） */
  padding: clamp(40px, 25.9154929577px + 3.7558685446vw, 80px) 15px 80px;
  background-color: #f1f6fe;
  /* 沿革リスト本体 */
}
.about-history__inner {
  max-width: clamp(345px, 156.6197183099px + 50.234741784vw, 880px);
  margin: 0 auto;
  background-color: #fff;
  padding: clamp(30px, 19.4366197183px + 2.8169014085vw, 60px) 0px clamp(45px, 39.7183098592px + 1.4084507042vw, 60px);
  border-radius: clamp(10px, 2.9577464789px + 1.8779342723vw, 30px);
}
.about-history__ttl {
  font-family: "Noto Sans JP", sans-serif;
  text-align: center;
  font-size: clamp(1.125rem, 0.8169014085rem + 1.3145539906vw, 2rem);
  font-weight: bold;
  letter-spacing: 0.2em;
  color: #333;
  margin-bottom: 30px;
}
.about-history__list {
  max-width: clamp(288px, 224.9718309859px + 16.8075117371vw, 467px);
  margin: 0 auto;
}
.about-history__list li {
  position: relative;
  display: flex;
  align-items: baseline;
  padding-left: 22px;
  padding-bottom: 15px;
  font-family: "Noto Sans JP", sans-serif;
  line-height: 1.5;
  color: #333;
  font-size: clamp(0.625rem, 0.4929577465rem + 0.5633802817vw, 1rem);
  /* pタグの共通スタイル */
}
.about-history__list li::before {
  content: "";
  position: absolute;
  top: 10px;
  left: 3px;
  width: 1px;
  height: 100%;
  background-color: #2f4091;
  z-index: 1;
}
.about-history__list li::after {
  content: "";
  position: absolute;
  top: 4px;
  left: 0px;
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background-color: #2f4091;
  z-index: 2;
}
.about-history__list li:last-child {
  padding-bottom: 0;
}
.about-history__list li:last-child::before {
  display: none;
}
.about-history__list li p {
  font-family: "Noto Sans JP", sans-serif;
  line-height: 1.5;
  color: #333;
}
.about-history__list li p:first-child {
  font-size: clamp(0.75rem, 0.661971831rem + 0.3755868545vw, 1rem);
  font-weight: 700;
  width: 90px;
  flex-shrink: 0;
}
.about-history__list li p:last-child {
  font-size: clamp(0.625rem, 0.4929577465rem + 0.5633802817vw, 1rem);
}
.about-history__list li strong {
  font-size: clamp(0.75rem, 0.661971831rem + 0.3755868545vw, 1rem);
  font-weight: 700;
  width: 90px;
  flex-shrink: 0;
}

@media screen and (min-width: 1080px) {
  .about__info-row {
    flex-direction: row;
  }
}
@media screen and (min-width: 1080px) and (min-width: 1440px) {
  .about__info-row:not(:last-child) .about__info-term {
    border-bottom: 1px solid #fff;
  }
}
@media screen and (min-width: 1080px) {
  .about__info-row:not(:last-child) .about__info-desc {
    display: flex;
    align-items: center;
  }
}
@media screen and (min-width: 1080px) {
  .about__info-term {
    width: 30%;
  }
}
@media screen and (min-width: 1080px) {
  .about__info-desc {
    width: 72%;
    padding: 18px 40px;
    border-left: 1px solid #2f4091;
  }
  .about__info-desc:has(.about__info-location) {
    padding: 23px 80px 15px 40px;
  }
}
@media screen and (min-width: 1080px) {
  .about__info-location {
    flex-direction: row;
    justify-content: space-between;
  }
  .about__info-location-text {
    width: 50%;
  }
  .about__info-location-name {
    margin-bottom: 10px !important;
  }
  .about__info-location-map {
    margin-top: 0;
    width: 35%;
  }
  .about__info-location-map img {
    width: 100%;
    height: auto;
    vertical-align: bottom;
  }
}
@media screen and (min-width: 1080px) {
  .about-history {
    /* 沿革リスト本体 */
  }
  .about-history__inner {
    display: flex;
    justify-content: left;
    gap: 95px;
    padding-left: 88px;
  }
  .about-history__ttl {
    margin-bottom: 30px;
  }
  .about-history__list {
    margin: 0 0;
  }
  .about-history__list li {
    padding-left: 33px;
    padding-bottom: 30px;
    /* pタグの共通スタイル */
  }
  .about-history__list li::before {
    top: 10px;
    left: 3px;
    width: 1px;
  }
  .about-history__list li::after {
    top: 6px;
    left: -2px;
    width: 11px;
    height: 11px;
  }
  .about-history__list li p:first-child {
    width: 144px;
  }
  .about-history__list li strong {
    width: 144px;
  }
}
.page-channel__inner {
  padding: clamp(40px, 25.9154929577px + 3.7558685446vw, 80px) 0px clamp(80px, 44.7887323944px + 9.3896713615vw, 180px);
  max-width: clamp(335px, 72.676056338px + 69.9530516432vw, 1080px);
  margin: 0 auto;
}
.page-channel__ttl {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(1.125rem, 0.8169014085rem + 1.3145539906vw, 2rem);
  font-weight: 700;
  color: #333333;
  line-height: 2;
  text-align: center;
  max-width: clamp(335px, 93.8028169014px + 64.3192488263vw, 1020px);
  margin-bottom: clamp(40px, 25.9154929577px + 3.7558685446vw, 80px);
}
.page-channel h3 {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(1.25rem, 0.985915493rem + 1.1267605634vw, 2rem);
  font-weight: 700;
  color: #333333;
  letter-spacing: 0.2em;
  text-align: center;
  position: relative;
  margin-bottom: clamp(32px, 17.9154929577px + 3.7558685446vw, 72px);
}
.page-channel h3::before {
  content: "";
  display: block;
  width: clamp(55px, 41.6197183099px + 3.5680751174vw, 93px);
  height: 2px;
  border-radius: 1px;
  background-color: #277dc9;
  position: absolute;
  top: 150%;
  left: 50%;
  transform: translate(-277%, -50%);
  z-index: 2;
}
.page-channel h3::after {
  content: "";
  display: block;
  width: clamp(305px, 234.9295774648px + 18.6854460094vw, 504px);
  height: 2px;
  border-radius: 1px;
  background-color: #2f4091;
  position: absolute;
  top: 150%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 1;
}
.page-channel__ja {
  margin-bottom: clamp(40px, 25.9154929577px + 3.7558685446vw, 80px);
}
.page-channel__ja h4 {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(1rem, 0.823943662rem + 0.7511737089vw, 1.5rem);
  font-weight: 700;
  color: #333333;
  letter-spacing: 0.1em;
  margin-bottom: clamp(16px, 13.1830985915px + 0.7511737089vw, 24px);
}
.page-channel__ja-list {
  display: flex;
  flex-wrap: wrap;
  gap: clamp(15px, 6.1971830986px + 2.3474178404vw, 40px);
  margin-bottom: clamp(30px, 22.9577464789px + 1.8779342723vw, 50px);
  margin-left: auto;
  margin-right: auto;
}
.page-channel__ja-item {
  border: 1px solid #a9a9a9;
  border-radius: 7px;
  width: clamp(160px, 131.8309859155px + 7.5117370892vw, 240px);
  height: clamp(67px, 55.3802816901px + 3.0985915493vw, 100px);
  padding-bottom: clamp(13px, 12.4718309859px + 0.1408450704vw, 14.5px);
  position: relative;
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(0.65rem, 0.5267605634rem + 0.5258215962vw, 1rem);
  font-weight: 500;
  color: #333333;
}
.page-channel__ja-item::after {
  content: "";
  display: block;
  width: clamp(22px, 19.8873239437px + 0.5633802817vw, 28px);
  height: clamp(21px, 18.5352112676px + 0.6572769953vw, 28px);
  background-image: url(../images/channel-link-icon.svg);
  position: absolute;
  top: 0;
  right: 7px;
}
.page-channel__ja-item a {
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  align-items: center;
  height: 100%;
  gap: clamp(5px, 3.2394366197px + 0.4694835681vw, 10px);
  transition: opacity 0.5s;
}
@media screen and (min-width: 1440px) and (any-hover: hover) {
  .page-channel__ja-item a:hover {
    opacity: 0.7;
  }
}
.page-channel__ja-item img {
  width: 50%;
  height: auto;
}
.page-channel__ja-item p {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(0.65rem, 0.5267605634rem + 0.5258215962vw, 1rem);
  font-weight: 500;
  color: #333333;
}
.page-channel__ja-item:nth-child(1) img {
  width: 76%;
}
.page-channel__ja-item:nth-child(2) img {
  width: 70%;
  margin-bottom: -6px;
}
.page-channel__ja-item:nth-child(3) img {
  width: 44%;
}
.page-channel__ja-item:nth-child(4) img {
  width: 83%;
}
.page-channel__ja-catalog {
  margin-bottom: clamp(30px, 22.9577464789px + 1.8779342723vw, 50px);
}
.page-channel__ja-catalog li {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(0.75rem, 0.661971831rem + 0.3755868545vw, 1rem);
  font-weight: 400;
  color: #333333;
  padding-left: clamp(30px, 24.3661971831px + 1.5023474178vw, 46px);
  position: relative;
  margin-bottom: clamp(8px, 6.5915492958px + 0.3755868545vw, 12px);
}
.page-channel__ja-catalog li:last-child {
  margin-bottom: 0;
}
.page-channel__ja-catalog li::before {
  content: "";
  position: absolute;
  top: 4px;
  left: clamp(13px, 10.5352112676px + 0.6572769953vw, 20px);
  width: clamp(7px, 5.9436619718px + 0.2816901408vw, 10px);
  height: clamp(7px, 5.9436619718px + 0.2816901408vw, 10px);
  border-radius: 50%;
  background-color: #2f4091;
}
.page-channel__ja-shop li {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(0.75rem, 0.661971831rem + 0.3755868545vw, 1rem);
  font-weight: 400;
  color: #333333;
  padding-left: clamp(30px, 24.3661971831px + 1.5023474178vw, 46px);
  position: relative;
  margin-bottom: clamp(8px, 6.5915492958px + 0.3755868545vw, 12px);
}
.page-channel__ja-shop li:last-child {
  margin-bottom: 0;
}
.page-channel__ja-shop li::before {
  content: "";
  position: absolute;
  top: 4px;
  left: clamp(13px, 10.5352112676px + 0.6572769953vw, 20px);
  width: clamp(7px, 5.9436619718px + 0.2816901408vw, 10px);
  height: clamp(7px, 5.9436619718px + 0.2816901408vw, 10px);
  border-radius: 50%;
  background-color: #2f4091;
}
.page-channel__en h3 {
  margin-bottom: clamp(24px, 19.7746478873px + 1.1267605634vw, 36px);
}
.page-channel__en p {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(0.875rem, 0.7429577465rem + 0.5633802817vw, 1.25rem);
  font-weight: 500;
  color: #333333;
  line-height: 1.8;
  text-align: center;
  max-width: clamp(305px, 32.1126760563px + 72.7699530516vw, 1080px);
}
.page-channel__en h4 {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(1rem, 0.823943662rem + 0.7511737089vw, 1.5rem);
  font-weight: 700;
  color: #333333;
  background-color: #e7e7e7;
  height: clamp(42px, 34.2535211268px + 2.0657276995vw, 64px);
  display: grid;
  place-items: center;
}
@media screen and (min-width: 1440px) {
  .page-channel__en-wrap {
    display: flex;
    justify-content: center;
    gap: 60px;
    margin-top: 60px;
  }
}
.page-channel__en-group {
  width: clamp(280px, 237.7464788732px + 11.2676056338vw, 400px);
  border: 1px solid #d9d9d9;
  margin: 0 auto 40px;
}
@media screen and (min-width: 1440px) {
  .page-channel__en-group {
    margin: 0;
  }
}
.page-channel__en-group:first-child {
  margin-top: clamp(40px, 32.9577464789px + 1.8779342723vw, 60px);
}
@media screen and (min-width: 1440px) {
  .page-channel__en-group:first-child {
    margin-top: 0;
  }
}
.page-channel__en-group:last-child {
  margin-bottom: 0;
}
.page-channel__en-group p {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(1rem, 0.823943662rem + 0.7511737089vw, 1.5rem);
  font-weight: 700;
  color: #333333;
  text-align: left;
  margin-bottom: clamp(10px, 7.8873239437px + 0.5633802817vw, 16px);
}
.page-channel__en-group-inner {
  padding-top: clamp(18px, 13.7746478873px + 1.1267605634vw, 30px);
  padding-left: clamp(26px, 21.7746478873px + 1.1267605634vw, 38px);
  padding-bottom: clamp(20px, 16.4788732394px + 0.9389671362vw, 30px);
}
.page-channel__en-list {
  padding-left: clamp(30px, 25.0704225352px + 1.3145539906vw, 44px);
  margin-bottom: clamp(26px, 21.0704225352px + 1.3145539906vw, 40px);
}
.page-channel__en-list:last-child {
  margin-bottom: 0;
}
.page-channel__en-list li {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(0.75rem, 0.661971831rem + 0.3755868545vw, 1rem);
  font-weight: 400;
  color: #333333;
  margin-bottom: clamp(10.5px, 8.5633802817px + 0.5164319249vw, 16px);
  position: relative;
}
.page-channel__en-list li:last-child {
  margin-bottom: 0;
}
.page-channel__en-list li::before {
  content: "";
  position: absolute;
  top: 4px;
  left: clamp(-24px, -14.5352112676px + -0.6572769953vw, -17px);
  width: clamp(7px, 5.9436619718px + 0.2816901408vw, 10px);
  height: clamp(7px, 5.9436619718px + 0.2816901408vw, 10px);
  border-radius: 50%;
  background-color: #2f4091;
}

.company-group__info {
  padding-top: clamp(40px, 25.9154929577px + 3.7558685446vw, 80px);
  padding-bottom: clamp(60px, 45.9154929577px + 3.7558685446vw, 100px);
}
.company-group__info-inner {
  max-width: clamp(335px, 72.676056338px + 69.9530516432vw, 1080px);
  margin: 0 auto;
}
.company-group__info-ttl {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(1.125rem, 0.8169014085rem + 1.3145539906vw, 2rem);
  font-weight: 700;
  color: #333333;
  line-height: 1;
  letter-spacing: 0.1em;
  margin-bottom: 34px;
}
.company-group__info-list {
  width: 100%;
  border: 1px solid #2f4091;
  border-bottom: none;
  background-color: #fff;
  margin-bottom: clamp(60px, 38.8732394366px + 5.6338028169vw, 120px);
}
.company-group__info-row {
  display: flex;
  flex-direction: column;
  border-bottom: 1px solid #2f4091;
}
.company-group__info-term {
  background-color: #347eba;
  font-size: clamp(0.875rem, 0.786971831rem + 0.3755868545vw, 1.125rem);
  color: #fff;
  letter-spacing: 0.2em;
  font-weight: bold;
  text-align: center;
  padding: clamp(11.5px, 4.6338028169px + 1.8309859155vw, 31px) 0;
  display: flex;
  align-items: center;
  justify-content: center;
}
.company-group__info-desc {
  font-size: clamp(0.75rem, 0.661971831rem + 0.3755868545vw, 1rem);
  padding: 13px 20px 20px 20px;
  color: #333333;
  line-height: 1.5;
}
.company-group__info-desc:has(.company-group__info-location) {
  padding: 20px 20px 28px;
}
.company-group__info-location {
  display: flex;
  flex-direction: column;
  padding-bottom: 27px;
  margin-bottom: 30px;
  border-bottom: 1px solid #d9d9d9;
}
.company-group__info-location:last-child {
  padding-bottom: 0;
  margin-bottom: 0;
  border-bottom: none;
}
.company-group__info-location-text p {
  margin-top: 0;
  margin-bottom: 0;
}
.company-group__info-location-text address {
  pointer-events: none;
}
.company-group__info-location-name {
  font-size: clamp(0.875rem, 0.786971831rem + 0.3755868545vw, 1.125rem);
  font-weight: 500;
  margin-bottom: 8px !important;
}
.company-group__info-location-map {
  margin: 10px 0 0 0;
}
.company-group__info-location-map-img {
  width: 100%;
  height: 128px;
  vertical-align: bottom;
}
.company-group__info-tel {
  color: inherit;
  text-decoration: underline;
  pointer-events: auto;
}
.company-group__form {
  background-color: #fff;
  padding-top: clamp(40px, 2.817vw + 29.437px, 70px);
  padding-bottom: 60px;
}
.company-group__form-wrap {
  background-color: #f5f5f5;
  max-width: clamp(345px, 80.282vw + 43.944px, 1200px);
  margin: 0 auto;
  padding: 30px 12.5px;
}
.company-group__form-ttl {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(1.125rem, 0.939vw + 0.905rem, 1.75rem);
  font-weight: 700;
  color: #333333;
  line-height: 1;
  letter-spacing: 0.2em;
  text-align: center;
  margin-bottom: clamp(30px, 5.634vw + 8.873px, 90px);
}
@media screen and (min-width: 1080px) {
  .company-group__info-row {
    flex-direction: row;
  }
}
@media screen and (min-width: 1080px) and (min-width: 1440px) {
  .company-group__info-row:not(:last-child) .about__info-term {
    border-bottom: 1px solid #fff;
  }
}
@media screen and (min-width: 1080px) {
  .company-group__info-row:not(:last-child) .about__info-desc {
    display: flex;
    align-items: center;
  }
}
@media screen and (min-width: 1080px) {
  .company-group__info-term {
    width: 30%;
  }
}
@media screen and (min-width: 1080px) {
  .company-group__info-desc {
    width: 72%;
    padding: 27px 70px 27px 40px;
    border-left: 1px solid #2f4091;
  }
  .company-group__info-desc:has(.company-group__info-location) {
    padding: 20px 82px 21px 40px;
  }
}
@media screen and (min-width: 1080px) {
  .company-group__info-location {
    flex-direction: row;
    justify-content: space-between;
  }
  .company-group__info-location-text {
    width: 50%;
  }
  .company-group__info-location-name {
    margin-bottom: 10px !important;
  }
  .company-group__info-location-map {
    margin-top: 0;
    width: 35%;
  }
  .company-group__info-location-map img {
    width: 100%;
    height: auto;
    vertical-align: bottom;
  }
}
.page-company-ty {
  padding-top: clamp(60px, 3.756vw + 45.915px, 100px);
  padding-bottom: clamp(100px, 1.878vw + 92.958px, 120px);
  padding-left: 16px;
  padding-right: 16px;
}
.page-company-ty__inner {
  max-width: clamp(335px, 49.296vw + 150.141px, 860px);
  text-align: center;
  margin: 0 auto;
}
.page-company-ty__inner h1 {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(1.25rem, 1.502vw + 0.898rem, 2.25rem);
  font-weight: 700;
  color: #2f4091;
  line-height: 1;
  letter-spacing: 0.2em;
  margin-bottom: 40px;
}
.page-company-ty__inner p {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(0.875rem, 0.188vw + 0.831rem, 1rem);
  font-weight: 700;
  color: #333333;
  line-height: 2;
  margin-bottom: 30px;
}
.page-company-ty__inner p:last-of-type {
  margin-bottom: 80px;
}
.page-company-ty__link {
  font-family: "Noto Sans JP", sans-serif;
  width: 240px;
  height: 40px;
  background: #fff;
  color: #2f4091;
  font-size: 0.75rem;
  font-weight: 500;
  letter-spacing: 0.1em;
  border-radius: 40px;
  display: grid;
  place-items: center;
  margin: 0 auto;
  position: relative;
  font-size: 0.875rem;
  color: #fff;
  width: 280px;
  height: 46px;
  background-color: #2f4091;
}
.page-company-ty__link::before {
  content: "";
  display: block;
  width: 20px;
  height: 20px;
  border-radius: 50%;
  background-color: #2f4091;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 20px;
}
.page-company-ty__link::after {
  content: "";
  display: block;
  width: 8px;
  height: 8px;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  position: absolute;
  top: 50%;
  transform: translateY(-50%) rotate(45deg);
  right: 27px;
}
.page-company-ty__link::before {
  width: 22.4px;
  height: 22.4px;
  background-color: #fff;
  right: 25px;
}
.page-company-ty__link::after {
  width: 10px;
  height: 10px;
  border-top: 2px solid #2f4091;
  border-right: 2px solid #2f4091;
  right: 34px;
}

@media screen and (min-width: 1440px) {
  .page-company-ty__link {
    font-size: 1rem;
    width: 300px;
    height: 50px;
    border: 1px solid #2f4091;
  }
  .page-company-ty__link::before {
    width: 24px;
    height: 24px;
    background-color: #fff;
    right: 25px;
    transition: transform 0.3s ease, background-color 0.3s ease;
  }
  .page-company-ty__link::after {
    width: 10px;
    height: 10px;
    border-top: 2px solid #2f4091;
    border-right: 2px solid #2f4091;
    right: 34px;
    transition: border-top 0.3s ease, border-right 0.3s ease, transform 0.3s ease;
  }
}
@media screen and (min-width: 1440px) and (any-hover: hover) {
  .page-company-ty__link:hover {
    transition: color 0.3s ease, background-color 0.3s ease;
    color: #2f4091;
    background-color: #fff;
  }
  .page-company-ty__link:hover::before {
    background-color: #2f4091;
    transform: translate(10px, -50%);
    transition: transform 0.3s ease, background-color 0.3s ease;
  }
  .page-company-ty__link:hover::after {
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
    transform: translate(10px, -50%) rotate(45deg);
    transition: border-top 0.3s ease, border-right 0.3s ease, transform 0.3s ease;
  }
}
/* simplebar用 */
.simplebar-track {
  background: #f4f4f7;
  border-radius: 10px;
  bottom: -10px;
}

.simplebar-track.simplebar-horizontal {
  left: 0px;
  width: 100%;
  height: 5px;
}

.simplebar-track .simplebar-scrollbar.simplebar-visible {
  width: 78px !important;
}

.simplebar-track .simplebar-scrollbar.simplebar-visible::before {
  opacity: 1;
}

.simplebar-track .simplebar-scrollbar::before {
  background: #9ba8b7;
  /* ここでバーの色を設定 */
  top: 0;
  bottom: 0;
  left: 0;
}

[data-simplebar] .simplebar-content-wrapper {
  overflow-x: auto !important;
  overflow-y: hidden !important;
}

.simplebar-track.simplebar-vertical {
  display: none;
}

.products {
  padding-top: clamp(40px, 25.9154929577px + 3.7558685446vw, 80px);
}
.products__inner {
  max-width: clamp(345px, 86.1971830986px + 69.014084507vw, 1080px);
  margin: 0 auto;
}
.products-lineup {
  border: 1px solid #a9a9a9;
  border-radius: clamp(10px, 2.9577464789px + 1.8779342723vw, 30px);
  padding-top: clamp(40px, 25.9154929577px + 3.7558685446vw, 80px);
  padding-bottom: clamp(10px, -11.1267605634px + 5.6338028169vw, 70px);
  padding-inline: clamp(14px, 4.8450704225px + 2.441314554vw, 40px);
  margin-bottom: clamp(50px, 32.3943661972px + 4.6948356808vw, 100px);
}
.products-lineup h2 {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(1.25rem, 0.985915493rem + 1.1267605634vw, 2rem);
  font-weight: 700;
  letter-spacing: 0.1em;
  color: #333333;
  position: relative;
  text-align: center;
  margin-bottom: 42px;
}
.products-lineup h2::before {
  content: "";
  display: block;
  width: clamp(59px, 47.3802816901px + 3.0985915493vw, 92px);
  height: 2px;
  border-radius: 1px;
  background-color: #277dc9;
  position: absolute;
  top: 130%;
  left: 50%;
  transform: translate(-272%, -50%);
  z-index: 2;
}
.products-lineup h2::after {
  content: "";
  display: block;
  width: clamp(322px, 257.9154929577px + 17.0892018779vw, 504px);
  height: 2px;
  border-radius: 1px;
  background-color: #2f4091;
  position: absolute;
  top: 130%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 1;
}
.products-lineup h3 {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(1.125rem, 0.9049295775rem + 0.9389671362vw, 1.75rem);
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.1em;
  color: #333333;
  margin-bottom: 12px;
  padding-left: clamp(0px, -17.6056338028px + 4.6948356808vw, 50px);
}
.products-lineup__reed {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(0.875rem, 0.8309859155rem + 0.1877934272vw, 1rem);
  font-weight: 500;
  line-height: 1.8;
  color: #333333;
  margin-bottom: clamp(20px, 12.2535211268px + 2.0657276995vw, 42px);
  padding-left: clamp(0px, -17.6056338028px + 4.6948356808vw, 50px);
}
.products-lineup__menu {
  display: flex;
  flex-wrap: wrap;
  gap: 20px clamp(15px, 9.7183098592px + 1.4084507042vw, 30px);
  max-width: clamp(315px, 109.014084507px + 54.9295774648vw, 900px);
  margin: 0 auto;
  border-bottom: 1px solid #a9a9a9;
  margin-bottom: clamp(24px, 14.8450704225px + 2.441314554vw, 50px);
  padding-bottom: clamp(0px, -7.0422535211px + 1.8779342723vw, 20px);
}
.products-lineup__menu:nth-of-type(2) {
  justify-content: left;
  border-bottom: none;
  margin-bottom: 0;
}
.products-lineup__menu:nth-of-type(2) .products-lineup__item:nth-child(1) .products-lineup__item-ttl {
  color: #5F8143;
}
.products-lineup__menu:nth-of-type(2) .products-lineup__item:nth-child(1) .products-lineup__item-ttl::before {
  border-top: 1px solid #5F8143;
  border-right: 1px solid #5F8143;
}
.products-lineup__menu:nth-of-type(2) .products-lineup__item:nth-child(1) .products-lineup__item-ttl::after {
  border-top: 1px solid #5F8143;
  border-right: 1px solid #5F8143;
}
.products-lineup__menu:nth-of-type(2) .products-lineup__item:nth-child(2) .products-lineup__item-ttl {
  color: #308BB5;
  text-align: left;
}
.products-lineup__menu:nth-of-type(2) .products-lineup__item:nth-child(2) .products-lineup__item-ttl::before {
  border-top: 1px solid #308bb5;
  border-right: 1px solid #308bb5;
}
.products-lineup__menu:nth-of-type(2) .products-lineup__item:nth-child(2) .products-lineup__item-ttl::after {
  border-top: 1px solid #308bb5;
  border-right: 1px solid #308bb5;
}
.products-lineup__menu:nth-of-type(2) .products-lineup__item:nth-child(2) .products-lineup__item-link {
  background-color: #dfecf5;
}
.products-lineup__menu:nth-of-type(2) .products-lineup__item:nth-child(2) .products-lineup__item-img {
  width: 30%;
}
.products-lineup__item {
  width: clamp(150px, 104.2253521127px + 12.20657277vw, 280px);
  height: clamp(350px, 297.1830985915px + 14.0845070423vw, 500px);
}
.products-lineup__item br {
  display: none;
}
.products-lineup__item:nth-child(1) .products-lineup__item-link {
  background-color: #f2f5e8;
}
.products-lineup__item:nth-child(1) .products-lineup__item-ttl {
  color: #b8a423;
}
.products-lineup__item:nth-child(1) .products-lineup__item-ttl::before {
  border-top: 1px solid #b8a423;
  border-right: 1px solid #b8a423;
}
.products-lineup__item:nth-child(1) .products-lineup__item-ttl::after {
  border-top: 1px solid #b8a423;
  border-right: 1px solid #b8a423;
}
.products-lineup__item:nth-child(2) .products-lineup__item-link {
  background-color: #f1ecf9;
}
.products-lineup__item:nth-child(2) .products-lineup__item-ttl {
  color: #cd7ebe;
}
.products-lineup__item:nth-child(2) .products-lineup__item-ttl::before {
  border-top: 1px solid #cd7ebe;
  border-right: 1px solid #cd7ebe;
}
.products-lineup__item:nth-child(2) .products-lineup__item-ttl::after {
  border-top: 1px solid #cd7ebe;
  border-right: 1px solid #cd7ebe;
}
.products-lineup__item:nth-child(3) .products-lineup__item-link {
  background-color: #f2f1f1;
}
.products-lineup__item:nth-child(3) .products-lineup__item-ttl {
  color: #b8a423;
}
.products-lineup__item:nth-child(3) .products-lineup__item-ttl::before {
  border-top: 1px solid #b8a423;
  border-right: 1px solid #b8a423;
}
.products-lineup__item:nth-child(3) .products-lineup__item-ttl::after {
  border-top: 1px solid #b8a423;
  border-right: 1px solid #b8a423;
}
.products-lineup__item-link {
  width: 100%;
  height: clamp(155px, 120.8450704225px + 9.1079812207vw, 252px);
  text-align: center;
  display: grid;
  place-items: center;
  border-radius: clamp(5px, 3.2394366197px + 0.4694835681vw, 10px);
  margin-bottom: clamp(16px, 11.0704225352px + 1.3145539906vw, 30px);
  padding-top: 10px;
}
@media (any-hover: hover) {
  .products-lineup__item-link:hover .products-lineup__item-img {
    scale: 1.1;
  }
}
.products-lineup__item-img {
  width: 50%;
  height: auto;
  transition: scale 0.3s ease;
}
.products-lineup__item-ttl {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(14px, 11.8873239437px + 0.5633802817vw, 20px);
  font-weight: 700;
  color: #2f4091;
  display: inline-block;
  position: relative;
  transform: translateX(-10px);
  margin-top: -15px;
}
.products-lineup__item-ttl::before {
  content: "";
  display: block;
  width: 8px;
  height: 8px;
  border-top: 1px solid #2f4091;
  border-right: 1px solid #2f4091;
  position: absolute;
  top: 50%;
  transform: translateY(-50%) rotate(45deg);
  right: -18px;
}
.products-lineup__item-ttl::after {
  content: "";
  display: block;
  width: 8px;
  height: 8px;
  border-top: 1px solid #2f4091;
  border-right: 1px solid #2f4091;
  position: absolute;
  top: 50%;
  transform: translateY(-50%) rotate(45deg);
  right: -14px;
}
.products-lineup__item-desc {
  display: flex;
  flex-direction: column;
  width: clamp(130px, 87.7464788732px + 11.2676056338vw, 250px);
  height: clamp(150px, 135.9154929577px + 3.7558685446vw, 190px);
  margin: 0 auto;
  gap: 12px;
}
.products-lineup__item-text {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(14px, 11.8873239437px + 0.5633802817vw, 20px);
  font-weight: 500;
  color: #333333;
  min-height: 3.45em;
}
.products-lineup__item-foot p {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(12px, 10.5915492958px + 0.3755868545vw, 16px);
  font-weight: 400;
  line-height: 1.5;
  color: #333333;
}
.products-lineup__item-icon {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(12px, 10.5915492958px + 0.3755868545vw, 16px);
  font-weight: 700;
  color: #fff;
  display: block;
  width: clamp(130px, 87.7464788732px + 11.2676056338vw, 250px);
  height: clamp(24px, 19.7746478873px + 1.1267605634vw, 36px);
  display: grid;
  place-items: center;
  background-color: #2f4091;
  border-radius: 50px;
  margin-bottom: clamp(8px, 6.9436619718px + 0.2816901408vw, 11px);
}
.products-info {
  padding: clamp(40px, 29.4366197183px + 2.8169014085vw, 70px) clamp(20px, 12.9577464789px + 1.8779342723vw, 40px);
  border: 1px solid #a9a9a9;
  border-radius: clamp(10px, 2.9577464789px + 1.8779342723vw, 30px);
  margin-bottom: clamp(50px, 32.3943661972px + 4.6948356808vw, 100px);
}
.products-info h2 {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(1.25rem, 0.985915493rem + 1.1267605634vw, 2rem);
  font-weight: 700;
  letter-spacing: 0.1em;
  color: #333333;
  position: relative;
  text-align: center;
  margin-bottom: clamp(28px, 26.5915492958px + 0.3755868545vw, 32px);
}
.products-info h2::before {
  content: "";
  display: block;
  width: clamp(59px, 36.1126760563px + 6.103286385vw, 124px);
  height: 2px;
  border-radius: 1px;
  background-color: #277dc9;
  position: absolute;
  top: 130%;
  left: 50%;
  transform: translate(-272%, -50%);
  z-index: 2;
}
.products-info h2::after {
  content: "";
  display: block;
  width: clamp(322px, 221.2957746479px + 26.8544600939vw, 608px);
  height: 2px;
  border-radius: 1px;
  background-color: #2f4091;
  position: absolute;
  top: 130%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 1;
}
.products-info .products-info__reed {
  max-width: clamp(280px, 132.1126760563px + 39.4366197183vw, 700px);
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(0.875rem, 0.7429577465rem + 0.5633802817vw, 1.25rem);
  font-weight: 500;
  line-height: 1.8;
  color: #333333;
  text-align: center;
  margin-bottom: clamp(30px, 19.4366197183px + 2.8169014085vw, 60px);
  margin-inline: auto;
}
.products-info li {
  max-width: 980px;
  margin-bottom: 73px;
  position: relative;
}
.products-info li::after {
  content: "";
  width: 60px;
  height: 20px;
  display: block;
  border-top: 20px solid #d9d9d9;
  border-left: 35px solid transparent;
  border-right: 35px solid transparent;
  position: absolute;
  left: 50%;
  bottom: -40px;
  transform: translate(-50%, 0);
}
.products-info li:last-of-type {
  margin-bottom: 0;
}
.products-info li:last-of-type::after {
  display: none;
}
@media screen and (min-width: 1440px) {
  .products-info__item-inner {
    display: flex;
    justify-content: center;
    gap: 33px;
  }
}
.products-info__item-wrap {
  max-width: 552px;
  margin: 0 auto;
}
.products-info__item-top {
  text-align: center;
  margin-bottom: clamp(16px, 13.1830985915px + 0.7511737089vw, 24px);
}
@media screen and (min-width: 1440px) {
  .products-info__item-top {
    display: flex;
    justify-content: left;
    align-items: center;
    gap: 14px;
  }
}
.products-info__item-step {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(1rem, 0.911971831rem + 0.3755868545vw, 1.25rem);
  font-weight: 700;
  color: #fff;
  background-color: #2f4091;
  border-radius: 3px;
  display: inline-block;
  padding: 3px 8px 2px;
  margin-bottom: 8px;
}
@media screen and (min-width: 1440px) {
  .products-info__item-step {
    margin-bottom: 0;
  }
}
.products-info h3 {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(0.875rem, 0.7429577465rem + 0.5633802817vw, 1.25rem);
  font-weight: 500;
  color: #2f4091;
  letter-spacing: 0.1em;
}
.products-info p {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(0.75rem, 0.661971831rem + 0.3755868545vw, 1rem);
  font-weight: 400;
  color: #333333;
  line-height: 1.5;
  margin-bottom: 24px;
}
@media screen and (min-width: 1440px) {
  .products-info p {
    margin-bottom: 0;
  }
}
.products-info__item-box {
  width: clamp(305px, 273.3098591549px + 8.4507042254vw, 395px);
  height: clamp(172px, 154.3943661972px + 4.6948356808vw, 222px);
  margin: 0 auto;
}
.products-info__item-box img {
  width: 100%;
}
.products-info__item-box iframe {
  width: 100%;
  height: 100%;
}
.products-safety {
  padding: clamp(40px, 29.4366197183px + 2.8169014085vw, 70px) 15px clamp(40px, 29.4366197183px + 2.8169014085vw, 70px) 25px;
  border: 1px solid #a9a9a9;
  border-radius: clamp(10px, 2.9577464789px + 1.8779342723vw, 30px);
  margin-bottom: clamp(50px, 32.3943661972px + 4.6948356808vw, 100px);
}
.products-safety h2 {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(1.25rem, 0.985915493rem + 1.1267605634vw, 2rem);
  font-weight: 700;
  color: #333333;
  line-height: 1.5;
  position: relative;
  text-align: center;
  margin-bottom: clamp(28px, 26.5915492958px + 0.3755868545vw, 32px);
}
.products-safety h2::before {
  content: "";
  display: block;
  width: clamp(59px, 33.2957746479px + 6.8544600939vw, 132px);
  height: 2px;
  border-radius: 1px;
  background-color: #277dc9;
  position: absolute;
  top: 130%;
  left: 50%;
  transform: translate(-272%, -50%);
  z-index: 2;
}
.products-safety h2::after {
  content: "";
  display: block;
  width: clamp(322px, 181.1549295775px + 37.558685446vw, 722px);
  height: 2px;
  border-radius: 1px;
  background-color: #2f4091;
  position: absolute;
  top: 130%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 1;
}
.products-safety .products-safety__reed {
  max-width: clamp(280px, 124.3661971831px + 41.5023474178vw, 722px);
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(0.875rem, 0.7429577465rem + 0.5633802817vw, 1.25rem);
  font-weight: 500;
  line-height: 1.8;
  color: #333333;
  margin-bottom: clamp(30px, 19.4366197183px + 2.8169014085vw, 60px);
  margin-inline: auto;
}
.products-safety h3 {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(1rem, 0.911971831rem + 0.3755868545vw, 1.25rem);
  font-weight: 500;
  line-height: 1.8;
  color: #fff;
  background-color: #2f4091;
  width: clamp(252px, 235.0985915493px + 4.5070422535vw, 300px);
  height: clamp(35px, 31.1267605634px + 1.0328638498vw, 46px);
  display: grid;
  place-items: center;
  margin-inline: auto;
  margin-bottom: clamp(23px, 21.2394366197px + 0.4694835681vw, 28px);
}
.products-safety__table {
  width: 100%;
  border-collapse: collapse;
  margin-bottom: 16px;
  max-width: 980px;
}
@media screen and (min-width: 1440px) {
  .products-safety__table {
    margin-inline: auto;
  }
}
.products-safety__table th,
.products-safety__table td {
  border: 1px solid #939393;
  padding: 6px 7px 9px;
  font-size: clamp(0.5625rem, 0.474471831rem + 0.3755868545vw, 0.8125rem);
  font-weight: 400;
  vertical-align: top;
  min-width: 200px;
  max-width: 245px;
}
@media screen and (min-width: 1440px) {
  .products-safety__table th,
.products-safety__table td {
    padding: 8px 9px 10px;
  }
}
.products-safety__table td {
  padding-left: 7px;
}
.products-performance {
  padding: clamp(40px, 29.4366197183px + 2.8169014085vw, 70px) 15px clamp(40px, 29.4366197183px + 2.8169014085vw, 70px) 25px;
  border: 1px solid #a9a9a9;
  border-radius: clamp(10px, 2.9577464789px + 1.8779342723vw, 30px);
  margin-bottom: clamp(80px, 65.9154929577px + 3.7558685446vw, 120px);
}
.products-performance h2 {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(1.25rem, 0.985915493rem + 1.1267605634vw, 2rem);
  font-weight: 700;
  color: #333333;
  line-height: 1.5;
  position: relative;
  text-align: center;
  margin-bottom: clamp(28px, 26.5915492958px + 0.3755868545vw, 32px);
}
.products-performance h2::before {
  content: "";
  display: block;
  width: clamp(59px, 26.6056338028px + 8.6384976526vw, 151px);
  height: 2px;
  border-radius: 1px;
  background-color: #277dc9;
  position: absolute;
  top: 130%;
  left: 50%;
  transform: translate(-272%, -50%);
  z-index: 2;
}
.products-performance h2::after {
  content: "";
  display: block;
  width: clamp(322px, 144.5352112676px + 47.323943662vw, 826px);
  height: 2px;
  border-radius: 1px;
  background-color: #2f4091;
  position: absolute;
  top: 130%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 1;
}
.products-performance__reed {
  max-width: clamp(280px, 87.7464788732px + 51.2676056338vw, 826px);
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(0.875rem, 0.7429577465rem + 0.5633802817vw, 1.25rem);
  font-weight: 500;
  line-height: 1.8;
  color: #333333;
  margin-bottom: clamp(16px, 14.5915492958px + 0.3755868545vw, 20px);
  margin-inline: auto;
}
@media screen and (min-width: 1440px) {
  .products-performance__reed {
    text-align: center;
  }
}
.products-performance__modal {
  max-width: clamp(280px, 87.7464788732px + 51.2676056338vw, 826px);
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(0.875rem, 0.7429577465rem + 0.5633802817vw, 1.25rem);
  font-weight: 500;
  line-height: 1.8;
  color: #333333;
  margin-bottom: 40px;
  margin-inline: auto;
  display: block;
}
.products-performance__modal-btn {
  color: #2f4091;
  text-decoration: underline;
  vertical-align: top;
  transition: opacity 0.3s ease;
}
@media (any-hover: hover) {
  .products-performance__modal-btn:hover {
    opacity: 0.7;
  }
}
@media screen and (min-width: 1440px) {
  .products-performance__modal {
    max-width: none;
    text-align: center;
  }
}
.products-performance h3 {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(1rem, 0.911971831rem + 0.3755868545vw, 1.25rem);
  font-weight: 500;
  line-height: 1.5;
  color: #fff;
  background-color: #2f4091;
  width: clamp(252px, 153.0563380282px + 26.3849765258vw, 533px);
  height: 64px;
  display: grid;
  place-items: center;
  margin-inline: auto;
  margin-bottom: clamp(24px, 22.5915492958px + 0.3755868545vw, 28px);
}
@media screen and (min-width: 1440px) {
  .products-performance h3 {
    height: 46px;
  }
}
.products-performance__box {
  width: clamp(315px, 200.5633802817px + 30.5164319249vw, 640px);
  height: clamp(204px, 129.7042253521px + 19.8122065728vw, 415px);
  margin-bottom: clamp(40px, 32.9577464789px + 1.8779342723vw, 60px);
  margin-inline: auto;
}
.products-performance__box img {
  width: 100%;
  height: auto;
}
.products-performance__caption {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}
.products-performance__flex {
  background-color: #f4f4f7;
  border-radius: clamp(10px, 2.9577464789px + 1.8779342723vw, 30px);
  padding: 30px 15px;
}
@media screen and (min-width: 1000px) {
  .products-performance__flex {
    padding: 40px 30px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 39px;
  }
}
.products-performance__flex figure {
  margin-bottom: 30px;
  max-width: 658px;
}
@media screen and (min-width: 1000px) {
  .products-performance__flex figure {
    margin-bottom: 0;
  }
}
.products-performance__flex-box {
  width: clamp(200px, 191.9014084507px + 2.1596244131vw, 223px);
  height: clamp(130px, 124.7183098592px + 1.4084507042vw, 145px);
  margin-inline: auto;
}
@media screen and (min-width: 1000px) {
  .products-performance__flex-box {
    margin: 0;
  }
}
.products-performance__flex-img {
  width: 100%;
}
.products-performance__quote strong {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(1rem, 0.911971831rem + 0.3755868545vw, 1.25rem);
  font-weight: 700;
  line-height: 1.5;
  color: #333333;
  display: block;
  margin-bottom: 17px;
}
.products-performance__quote p {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(0.75rem, 0.661971831rem + 0.3755868545vw, 1rem);
  font-weight: 400;
  line-height: 1.8;
  color: #333333;
  margin-bottom: 16px;
}
@media screen and (min-width: 1000px) {
  .products-performance__quote p {
    margin-bottom: 8px;
  }
}
.products-performance__author {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(0.875rem, 0.8309859155rem + 0.1877934272vw, 1rem);
  font-weight: 500;
  color: #333333;
  text-align: right;
}
.products-performance__author-link {
  text-decoration: underline;
  transition: opacity 0.3s ease;
}
@media (any-hover: hover) {
  .products-performance__author-link:hover {
    opacity: 0.7;
  }
}
.products-performance__dialog {
  border: none;
  padding: 0;
  max-width: 90%;
  width: 500px;
  box-shadow: 4px 4px 10px rgba(0, 0, 0, 0.25);
}
.products-performance__dialog::-webkit-backdrop {
  background-color: rgba(0, 0, 0, 0.6);
  -webkit-backdrop-filter: blur(2px);
          backdrop-filter: blur(2px);
}
.products-performance__dialog::backdrop {
  background-color: rgba(0, 0, 0, 0.6);
  -webkit-backdrop-filter: blur(2px);
          backdrop-filter: blur(2px);
}
.products-performance__dialog-inner {
  position: relative;
  padding: 30px 20px;
  background-color: #fff;
  overflow: hidden;
}
.products-performance__dialog-close {
  position: absolute;
  top: 15px;
  right: 15px;
  background: none;
  border: none;
  font-size: 1.5rem;
  cursor: pointer;
  color: #333;
  transition: opacity 0.3s;
}
.products-performance__dialog-close:hover {
  opacity: 0.6;
}
.products-performance__dialog .products-performance__dialog-title {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(1.125rem, 1.0809859155rem + 0.1877934272vw, 1.25rem);
  font-weight: 700;
  color: #000;
  margin-bottom: 24px;
  background-color: #fff;
  justify-content: left;
}
.products-performance__dialog-list li {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(0.875rem, 0.8309859155rem + 0.1877934272vw, 1rem);
  position: relative;
  padding-left: 1em;
  margin-bottom: 1.5em;
  line-height: 1.8;
}
.products-performance__dialog-list li:last-child {
  margin-bottom: 0;
}
.products-performance__dialog-list li::before {
  content: "・";
  position: absolute;
  left: 0;
  top: 0;
}
.products-performance__dialog[open] {
  -webkit-animation: modalFadeIn 0.3s ease-out forwards;
          animation: modalFadeIn 0.3s ease-out forwards;
}
.products-performance__dialog[open]::-webkit-backdrop {
  -webkit-animation: backdropFadeIn 0.3s ease-out forwards;
          animation: backdropFadeIn 0.3s ease-out forwards;
}
.products-performance__dialog[open]::backdrop {
  -webkit-animation: backdropFadeIn 0.3s ease-out forwards;
          animation: backdropFadeIn 0.3s ease-out forwards;
}
.products-performance__dialog.is-closing {
  -webkit-animation: modalFadeOut 0.3s ease-out forwards;
          animation: modalFadeOut 0.3s ease-out forwards;
}
.products-performance__dialog.is-closing::-webkit-backdrop {
  -webkit-animation: backdropFadeOut 0.3s ease-out forwards;
          animation: backdropFadeOut 0.3s ease-out forwards;
}
.products-performance__dialog.is-closing::backdrop {
  -webkit-animation: backdropFadeOut 0.3s ease-out forwards;
          animation: backdropFadeOut 0.3s ease-out forwards;
}

@-webkit-keyframes modalFadeIn {
  from {
    opacity: 0;
    transform: translateY(20px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@keyframes modalFadeIn {
  from {
    opacity: 0;
    transform: translateY(20px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
@-webkit-keyframes backdropFadeIn {
  from {
    background-color: rgba(0, 0, 0, 0);
  }
  to {
    background-color: rgba(0, 0, 0, 0.6);
  }
}
@keyframes backdropFadeIn {
  from {
    background-color: rgba(0, 0, 0, 0);
  }
  to {
    background-color: rgba(0, 0, 0, 0.6);
  }
}
@-webkit-keyframes modalFadeOut {
  from {
    opacity: 1;
    transform: translateY(0);
  }
  to {
    opacity: 0;
    transform: translateY(20px);
  }
}
@keyframes modalFadeOut {
  from {
    opacity: 1;
    transform: translateY(0);
  }
  to {
    opacity: 0;
    transform: translateY(20px);
  }
}
@-webkit-keyframes backdropFadeOut {
  from {
    background-color: rgba(0, 0, 0, 0.6);
  }
  to {
    background-color: rgba(0, 0, 0, 0);
  }
}
@keyframes backdropFadeOut {
  from {
    background-color: rgba(0, 0, 0, 0.6);
  }
  to {
    background-color: rgba(0, 0, 0, 0);
  }
}
.danitori-mat {
  padding-top: clamp(40px, 25.9154929577px + 3.7558685446vw, 80px);
}
.danitori-mat__inner {
  max-width: clamp(345px, 86.1971830986px + 69.014084507vw, 1080px);
  margin: 0 auto;
}
.danitori-mat__wrapper {
  padding: clamp(40px, 32.9577464789px + 1.8779342723vw, 60px) clamp(15px, 2.676056338px + 3.2863849765vw, 50px);
  border: 1px solid #a9a9a9;
  border-radius: clamp(10px, 2.9577464789px + 1.8779342723vw, 30px);
  margin-bottom: clamp(30px, 22.9577464789px + 1.8779342723vw, 50px);
}
.danitori-mat__heading {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(1.25rem, 0.985915493rem + 1.1267605634vw, 2rem);
  font-weight: 700;
  line-height: 1.5;
  color: #000;
  margin-bottom: clamp(10px, 7.5352112676px + 0.6572769953vw, 17px);
  display: block;
}
.danitori-mat h2 {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(1rem, 0.911971831rem + 0.3755868545vw, 1.25rem);
  font-weight: 500;
  line-height: 1.5;
  color: #000;
  margin-bottom: clamp(16px, 6.8450704225px + 2.441314554vw, 42px);
}
.danitori-mat p {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(0.875rem, 0.8309859155rem + 0.1877934272vw, 1rem);
  font-weight: 400;
  line-height: 1.8;
  color: #000;
  margin-bottom: clamp(16px, 6.1408450704px + 2.6291079812vw, 44px);
}
.danitori-mat__gallery {
  display: flex;
  justify-content: center;
  gap: clamp(11px, 5.3661971831px + 1.5023474178vw, 27px);
  margin-bottom: 30px;
}
.danitori-mat__gallery-main {
  border: 1px solid #d9d9d9;
  border-radius: 10px;
  width: clamp(200px, 143.661971831px + 15.0234741784vw, 360px);
  height: clamp(200px, 143.661971831px + 15.0234741784vw, 360px);
  overflow: hidden;
}
.danitori-mat__gallery-main img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.danitori-mat__gallery-sub {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}
.danitori-mat__gallery-sub-box {
  width: clamp(45px, 32.676056338px + 3.2863849765vw, 80px);
  height: clamp(45px, 32.676056338px + 3.2863849765vw, 80px);
  cursor: pointer;
  border: 2px solid transparent;
  overflow: hidden;
  transition: opacity 0.3s ease, border-color 0.3s ease;
}
@media (any-hover: hover) {
  .danitori-mat__gallery-sub-box:hover {
    opacity: 0.7;
  }
}
.danitori-mat__gallery-sub img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  pointer-events: none;
}
.danitori-mat__table {
  width: 100%;
  max-width: 560px;
  border-collapse: collapse;
  background-color: #f4f4f7;
  margin: 0 auto;
}
.danitori-mat__table th,
.danitori-mat__table td {
  border: 3px solid #ffffff;
  padding: clamp(10px, 8.2394366197px + 0.4694835681vw, 15px);
  font-size: clamp(0.75rem, 0.661971831rem + 0.3755868545vw, 1rem);
  font-weight: 400;
  line-height: 1.5;
  vertical-align: middle;
  color: #000;
}
.danitori-mat__table th {
  width: 25%;
  text-align: left;
}
.danitori-mat__table td {
  width: 75%;
}
.danitori-mat__table-box {
  width: clamp(110px, 90.985915493px + 5.0704225352vw, 164px);
  height: clamp(45px, 36.9014084507px + 2.1596244131vw, 68px);
  display: flex;
  align-items: center;
}
.danitori-mat__table-box img {
  width: 100%;
  height: auto;
}
.danitori-mat-ancestor__wrapper {
  padding: clamp(40px, 32.9577464789px + 1.8779342723vw, 60px) clamp(15px, 2.676056338px + 3.2863849765vw, 50px);
  border: 1px solid #a9a9a9;
  border-radius: clamp(10px, 2.9577464789px + 1.8779342723vw, 30px);
  margin-bottom: clamp(30px, 22.9577464789px + 1.8779342723vw, 50px);
}
.danitori-mat-ancestor__desc {
  grid-area: desc;
}
.danitori-mat-ancestor__desc h2 {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(1.25rem, 0.985915493rem + 1.1267605634vw, 2rem);
  font-weight: 700;
  line-height: 1.5;
  color: #000;
  margin-bottom: clamp(16px, 14.5915492958px + 0.3755868545vw, 20px);
}
.danitori-mat-ancestor__gallery {
  grid-area: gallery;
}
.danitori-mat-ancestor__gallery-main {
  border: 1px solid #d9d9d9;
  border-radius: 10px;
  width: clamp(150px, 76.0563380282px + 19.7183098592vw, 360px);
  height: clamp(150px, 76.0563380282px + 19.7183098592vw, 360px);
  margin: 0 auto 30px;
}
.danitori-mat-ancestor__gallery-main img {
  width: 100%;
  height: auto;
}

@media screen and (min-width: 1440px) {
  .danitori-mat__wrapper {
    display: grid;
    grid-template-columns: 360px 1fr;
    gap: 44px 60px;
    align-items: start;
    grid-template-areas: "gallery desc" "gallery table";
  }
  .danitori-mat__desc {
    grid-area: desc;
  }
  .danitori-mat p {
    line-height: 2;
    margin-bottom: 0;
  }
  .danitori-mat__gallery {
    flex-direction: column;
    margin-bottom: 0;
    grid-area: gallery;
  }
  .danitori-mat__gallery-sub {
    flex-direction: row;
  }
  .danitori-mat__table {
    grid-area: table;
    margin: 0;
  }
  .danitori-mat__table th,
.danitori-mat__table td {
    padding-left: 20px;
  }
  .danitori-mat__table th {
    width: 32%;
  }
  .danitori-mat__table td {
    width: 68%;
  }
}
@media screen and (min-width: 1440px) and (any-hover: hover) {
  .danitori-mat__table-box a:hover {
    opacity: 0.7;
  }
}
@media screen and (min-width: 1440px) {
  .danitori-mat-ancestor__wrapper {
    display: grid;
    grid-template-columns: 360px 1fr;
    gap: 44px 60px;
    align-items: start;
    grid-template-areas: "gallery desc" "gallery table";
  }
  .danitori-mat-ancestor__desc {
    grid-area: desc;
  }
  .danitori-mat-ancestor__desc h2 {
    margin-bottom: 0;
  }
}
.danitori-robo {
  padding-top: clamp(40px, 25.9154929577px + 3.7558685446vw, 80px);
}
.danitori-robo__inner {
  max-width: clamp(345px, 86.1971830986px + 69.014084507vw, 1080px);
  margin: 0 auto;
}
.danitori-robo__wrapper {
  padding: clamp(40px, 32.9577464789px + 1.8779342723vw, 60px) clamp(15px, 2.676056338px + 3.2863849765vw, 50px);
  border: 1px solid #a9a9a9;
  border-radius: clamp(10px, 2.9577464789px + 1.8779342723vw, 30px);
  margin-bottom: clamp(30px, 22.9577464789px + 1.8779342723vw, 50px);
}
.danitori-robo__heading {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(1rem, 0.911971831rem + 0.3755868545vw, 1.25rem);
  font-weight: 500;
  line-height: 1.5;
  color: #000;
  display: block;
  margin-bottom: clamp(16px, 13.1830985915px + 0.7511737089vw, 24px);
}
.danitori-robo h2 {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(1.25rem, 0.985915493rem + 1.1267605634vw, 2rem);
  font-weight: 700;
  line-height: 1.5;
  color: #000;
  margin-bottom: clamp(10px, 7.8873239437px + 0.5633802817vw, 16px);
}
.danitori-robo p {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(0.875rem, 0.8309859155rem + 0.1877934272vw, 1rem);
  font-weight: 400;
  line-height: 1.8;
  color: #000;
  margin-bottom: clamp(16px, 6.1408450704px + 2.6291079812vw, 44px);
}
.danitori-robo__gallery {
  display: flex;
  justify-content: center;
  gap: clamp(11px, 5.3661971831px + 1.5023474178vw, 27px);
  margin-bottom: 30px;
}
.danitori-robo__gallery-main {
  border: 1px solid #d9d9d9;
  border-radius: 10px;
  width: clamp(200px, 143.661971831px + 15.0234741784vw, 360px);
  height: clamp(200px, 143.661971831px + 15.0234741784vw, 360px);
  overflow: hidden;
}
.danitori-robo__gallery-main img {
  width: 100%;
  height: auto;
}
.danitori-robo__gallery-sub {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}
.danitori-robo__gallery-sub-box {
  width: clamp(45px, 32.676056338px + 3.2863849765vw, 80px);
  height: clamp(45px, 32.676056338px + 3.2863849765vw, 80px);
  cursor: pointer;
  transition: opacity 0.3s ease;
}
@media (any-hover: hover) {
  .danitori-robo__gallery-sub-box:hover {
    opacity: 0.7;
  }
}
.danitori-robo__gallery-sub img {
  width: 100%;
  height: auto;
}
.danitori-robo__table {
  width: 100%;
  max-width: 560px;
  border-collapse: collapse;
  background-color: #f4f4f7;
  margin: 0 auto;
}
.danitori-robo__table th,
.danitori-robo__table td {
  border: 3px solid #ffffff;
  padding: clamp(10px, 8.2394366197px + 0.4694835681vw, 15px);
  font-size: clamp(0.75rem, 0.661971831rem + 0.3755868545vw, 1rem);
  font-weight: 400;
  line-height: 1.5;
  vertical-align: middle;
  color: #000;
}
.danitori-robo__table th {
  width: 25%;
  text-align: left;
}
.danitori-robo__table td {
  width: 75%;
}
.danitori-robo__table-box {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 12px 3px;
}
.danitori-robo__table-box a {
  width: clamp(95px, 70.7042253521px + 6.4788732394vw, 164px);
  height: clamp(35px, 23.3802816901px + 3.0985915493vw, 68px);
}
.danitori-robo__table-box img {
  width: 100%;
  height: auto;
}
.danitori-robo-hard__wrapper {
  padding: clamp(40px, 32.9577464789px + 1.8779342723vw, 60px) clamp(15px, 2.676056338px + 3.2863849765vw, 50px);
  border: 1px solid #a9a9a9;
  border-radius: clamp(10px, 2.9577464789px + 1.8779342723vw, 30px);
  margin-bottom: clamp(30px, 22.9577464789px + 1.8779342723vw, 50px);
}
.danitori-robo-hard__desc {
  grid-area: desc;
}
.danitori-robo-hard__desc h2 {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(1.25rem, 0.985915493rem + 1.1267605634vw, 2rem);
  font-weight: 700;
  line-height: 1.5;
  color: #000;
  margin-bottom: clamp(16px, 14.5915492958px + 0.3755868545vw, 20px);
}
.danitori-robo-hard__gallery {
  grid-area: gallery;
}
.danitori-robo-hard__gallery-main {
  border: 1px solid #d9d9d9;
  border-radius: 10px;
  width: clamp(150px, 76.0563380282px + 19.7183098592vw, 360px);
  height: clamp(150px, 76.0563380282px + 19.7183098592vw, 360px);
  margin: 0 auto 30px;
}
.danitori-robo-hard__gallery-main img {
  width: 100%;
  height: auto;
}
.danitori-robo-hard__gallery-sub-box {
  cursor: pointer;
  transition: opacity 0.3s ease;
}
@media (any-hover: hover) {
  .danitori-robo-hard__gallery-sub-box:hover {
    opacity: 0.7;
  }
}
.danitori-robo-refill__wrapper {
  padding: clamp(40px, 32.9577464789px + 1.8779342723vw, 60px) clamp(15px, 2.676056338px + 3.2863849765vw, 50px);
  border: 1px solid #a9a9a9;
  border-radius: clamp(10px, 2.9577464789px + 1.8779342723vw, 30px);
  margin-bottom: clamp(30px, 22.9577464789px + 1.8779342723vw, 50px);
}
.danitori-robo-refill__desc {
  grid-area: desc;
}
.danitori-robo-refill__desc h2 {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(1.25rem, 0.985915493rem + 1.1267605634vw, 2rem);
  font-weight: 700;
  line-height: 1.5;
  color: #000;
  margin-bottom: clamp(16px, 14.5915492958px + 0.3755868545vw, 20px);
}

@media screen and (min-width: 1440px) {
  .danitori-robo__wrapper {
    display: grid;
    grid-template-columns: 360px 1fr;
    gap: 44px 60px;
    align-items: start;
    grid-template-areas: "gallery desc" "gallery table";
  }
  .danitori-robo__desc {
    grid-area: desc;
  }
  .danitori-robo p {
    line-height: 2;
    margin-bottom: 0;
  }
  .danitori-robo__gallery {
    flex-direction: column;
    margin-bottom: 0;
    grid-area: gallery;
  }
  .danitori-robo__gallery-sub {
    flex-direction: row;
  }
  .danitori-robo__table {
    grid-area: table;
    margin: 0;
  }
  .danitori-robo__table th,
.danitori-robo__table td {
    padding-left: 20px;
  }
  .danitori-robo__table th {
    width: 32%;
  }
  .danitori-robo__table td {
    width: 68%;
  }
}
@media screen and (min-width: 1440px) and (any-hover: hover) {
  .danitori-robo__table-box a:hover {
    opacity: 0.7;
  }
}
@media screen and (min-width: 1440px) {
  .danitori-robo-hard__wrapper {
    display: grid;
    grid-template-columns: 360px 1fr;
    gap: 44px 60px;
    align-items: start;
    grid-template-areas: "gallery desc" "gallery table";
  }
  .danitori-robo-hard__desc {
    grid-area: desc;
  }
}
@media screen and (min-width: 1440px) {
  .danitori-robo-refill__wrapper {
    display: grid;
    grid-template-columns: 360px 1fr;
    gap: 44px 60px;
    align-items: start;
    grid-template-areas: "gallery desc" "gallery table";
  }
  .danitori-robo-refill__desc {
    grid-area: desc;
  }
}
.danitori-puchi {
  padding-top: clamp(40px, 25.9154929577px + 3.7558685446vw, 80px);
}
.danitori-puchi__inner {
  max-width: clamp(345px, 86.1971830986px + 69.014084507vw, 1080px);
  margin: 0 auto;
}
.danitori-puchi__wrapper {
  padding: clamp(40px, 32.9577464789px + 1.8779342723vw, 60px) clamp(15px, 2.676056338px + 3.2863849765vw, 50px);
  border: 1px solid #a9a9a9;
  border-radius: clamp(10px, 2.9577464789px + 1.8779342723vw, 30px);
  margin-bottom: clamp(30px, 22.9577464789px + 1.8779342723vw, 50px);
}
.danitori-puchi__heading {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(1.25rem, 0.985915493rem + 1.1267605634vw, 2rem);
  font-weight: 700;
  line-height: 1.5;
  color: #000;
  display: block;
  margin-bottom: clamp(16px, 15.6478873239px + 0.0938967136vw, 17px);
}
.danitori-puchi h2 {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(1rem, 0.911971831rem + 0.3755868545vw, 1.25rem);
  font-weight: 500;
  line-height: 1.5;
  color: #000;
  display: block;
  margin-bottom: clamp(10px, 6.4788732394px + 0.9389671362vw, 20px);
}
.danitori-puchi p {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(0.875rem, 0.8309859155rem + 0.1877934272vw, 1rem);
  font-weight: 400;
  line-height: 1.8;
  color: #000;
  margin-bottom: clamp(16px, 6.1408450704px + 2.6291079812vw, 44px);
}
.danitori-puchi__gallery {
  display: flex;
  justify-content: center;
  gap: clamp(11px, 5.3661971831px + 1.5023474178vw, 27px);
  margin-bottom: 30px;
}
.danitori-puchi__gallery-main {
  border: 1px solid #d9d9d9;
  border-radius: 10px;
  width: clamp(200px, 143.661971831px + 15.0234741784vw, 360px);
  height: clamp(200px, 143.661971831px + 15.0234741784vw, 360px);
  overflow: hidden;
}
.danitori-puchi__gallery-main img {
  width: 100%;
  height: auto;
}
.danitori-puchi__gallery-sub {
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  gap: clamp(6px, 3.5352112676px + 0.6572769953vw, 13px);
}
.danitori-puchi__gallery-sub-box {
  width: clamp(45px, 32.676056338px + 3.2863849765vw, 80px);
  height: clamp(45px, 32.676056338px + 3.2863849765vw, 80px);
  cursor: pointer;
  transition: opacity 0.3s ease;
}
@media (any-hover: hover) {
  .danitori-puchi__gallery-sub-box:hover {
    opacity: 0.7;
  }
}
.danitori-puchi__gallery-sub img {
  width: 100%;
  height: auto;
}
.danitori-puchi__table {
  width: 100%;
  max-width: 560px;
  border-collapse: collapse;
  background-color: #f4f4f7;
  margin: 0 auto;
}
.danitori-puchi__table th,
.danitori-puchi__table td {
  border: 3px solid #ffffff;
  padding: clamp(10px, 8.2394366197px + 0.4694835681vw, 15px);
  font-size: clamp(0.75rem, 0.661971831rem + 0.3755868545vw, 1rem);
  font-weight: 400;
  line-height: 1.5;
  vertical-align: middle;
  color: #000;
}
.danitori-puchi__table th {
  width: 25%;
  text-align: left;
}
.danitori-puchi__table td {
  width: 75%;
}
.danitori-puchi__table-box {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 12px 3px;
}
.danitori-puchi__table-box a {
  width: clamp(95px, 70.7042253521px + 6.4788732394vw, 164px);
  height: clamp(35px, 23.3802816901px + 3.0985915493vw, 68px);
}
.danitori-puchi__table-box img {
  width: 100%;
  height: auto;
}

@media screen and (min-width: 1440px) {
  .danitori-puchi__wrapper {
    display: grid;
    grid-template-columns: 360px 1fr;
    gap: 44px 60px;
    align-items: start;
    grid-template-areas: "gallery desc" "gallery table";
  }
  .danitori-puchi__desc {
    grid-area: desc;
  }
  .danitori-puchi p {
    line-height: 2;
    margin-bottom: 0;
  }
  .danitori-puchi__gallery {
    flex-direction: column;
    margin-bottom: 0;
    grid-area: gallery;
  }
  .danitori-puchi__gallery-sub {
    flex-direction: row;
  }
  .danitori-puchi__table {
    grid-area: table;
    margin: 0;
  }
  .danitori-puchi__table th,
.danitori-puchi__table td {
    padding-left: 20px;
  }
  .danitori-puchi__table th {
    width: 32%;
  }
  .danitori-puchi__table td {
    width: 68%;
  }
}
@media screen and (min-width: 1440px) and (any-hover: hover) {
  .danitori-puchi__table-box a:hover {
    opacity: 0.7;
  }
}
.danitori-checker {
  padding-top: clamp(40px, 25.9154929577px + 3.7558685446vw, 80px);
}
.danitori-checker__inner {
  max-width: clamp(345px, 86.1971830986px + 69.014084507vw, 1080px);
  margin: 0 auto;
}
.danitori-checker__wrapper {
  padding: clamp(40px, 32.9577464789px + 1.8779342723vw, 60px) clamp(15px, 2.676056338px + 3.2863849765vw, 50px);
  border: 1px solid #a9a9a9;
  border-radius: clamp(10px, 2.9577464789px + 1.8779342723vw, 30px);
  margin-bottom: clamp(30px, 22.9577464789px + 1.8779342723vw, 50px);
}
.danitori-checker__heading {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(1.25rem, 0.985915493rem + 1.1267605634vw, 2rem);
  font-weight: 700;
  line-height: 1.5;
  color: #000;
  display: block;
  margin-bottom: clamp(16px, 15.6478873239px + 0.0938967136vw, 17px);
}
.danitori-checker h2 {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(1rem, 0.911971831rem + 0.3755868545vw, 1.25rem);
  font-weight: 500;
  line-height: 1.5;
  color: #000;
  display: block;
  margin-bottom: clamp(10px, 6.4788732394px + 0.9389671362vw, 20px);
}
.danitori-checker p {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(0.875rem, 0.8309859155rem + 0.1877934272vw, 1rem);
  font-weight: 400;
  line-height: 1.8;
  color: #000;
  margin-bottom: clamp(16px, 6.1408450704px + 2.6291079812vw, 44px);
}
.danitori-checker__gallery {
  display: flex;
  justify-content: center;
  gap: clamp(11px, 5.3661971831px + 1.5023474178vw, 27px);
  margin-bottom: 30px;
}
.danitori-checker__gallery-main {
  border: 1px solid #d9d9d9;
  border-radius: 10px;
  width: clamp(200px, 143.661971831px + 15.0234741784vw, 360px);
  height: clamp(200px, 143.661971831px + 15.0234741784vw, 360px);
  overflow: hidden;
}
.danitori-checker__gallery-main img {
  width: 100%;
  height: auto;
}
.danitori-checker__gallery-sub {
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  gap: clamp(6px, 3.5352112676px + 0.6572769953vw, 13px);
}
.danitori-checker__gallery-sub-box {
  width: clamp(45px, 32.676056338px + 3.2863849765vw, 80px);
  height: clamp(45px, 32.676056338px + 3.2863849765vw, 80px);
  cursor: pointer;
  transition: opacity 0.3s ease;
}
@media (any-hover: hover) {
  .danitori-checker__gallery-sub-box:hover {
    opacity: 0.7;
  }
}
.danitori-checker__gallery-sub img {
  width: 100%;
  height: auto;
}
.danitori-checker__table {
  width: 100%;
  max-width: 560px;
  border-collapse: collapse;
  background-color: #f4f4f7;
  margin: 0 auto;
}
.danitori-checker__table th,
.danitori-checker__table td {
  border: 3px solid #ffffff;
  padding: clamp(10px, 8.2394366197px + 0.4694835681vw, 15px);
  font-size: clamp(0.75rem, 0.661971831rem + 0.3755868545vw, 1rem);
  font-weight: 400;
  line-height: 1.5;
  vertical-align: middle;
  color: #000;
}
.danitori-checker__table th {
  width: 25%;
  text-align: left;
}
.danitori-checker__table td {
  width: 75%;
}
.danitori-checker__table-box {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 12px 10px;
}
.danitori-checker__table-box a {
  width: clamp(95px, 70.7042253521px + 6.4788732394vw, 164px);
  height: clamp(35px, 23.3802816901px + 3.0985915493vw, 68px);
}
.danitori-checker__table-box img {
  width: 100%;
  height: auto;
}

@media screen and (min-width: 1440px) {
  .danitori-checker__wrapper {
    display: grid;
    grid-template-columns: 360px 1fr;
    gap: 44px 60px;
    align-items: start;
    grid-template-areas: "gallery desc" "gallery table";
  }
  .danitori-checker__desc {
    grid-area: desc;
  }
  .danitori-checker p {
    line-height: 2;
    margin-bottom: 0;
  }
  .danitori-checker__gallery {
    flex-direction: column;
    margin-bottom: 0;
    grid-area: gallery;
  }
  .danitori-checker__gallery-sub {
    flex-direction: row;
  }
  .danitori-checker__table {
    grid-area: table;
    margin: 0;
  }
  .danitori-checker__table th,
.danitori-checker__table td {
    padding-left: 20px;
  }
  .danitori-checker__table th {
    width: 32%;
  }
  .danitori-checker__table td {
    width: 68%;
  }
}
@media screen and (min-width: 1440px) and (any-hover: hover) {
  .danitori-checker__table-box:hover {
    opacity: 0.7;
  }
}
.danitori-spray {
  padding-top: clamp(40px, 25.9154929577px + 3.7558685446vw, 80px);
  padding-bottom: 70px;
}
.danitori-spray__inner {
  max-width: clamp(345px, 86.1971830986px + 69.014084507vw, 1080px);
  margin: 0 auto;
}
.danitori-spray__wrapper {
  padding: clamp(40px, 32.9577464789px + 1.8779342723vw, 60px) clamp(15px, 2.676056338px + 3.2863849765vw, 50px);
  border: 1px solid #a9a9a9;
  border-radius: clamp(10px, 2.9577464789px + 1.8779342723vw, 30px);
  margin-bottom: clamp(30px, 22.9577464789px + 1.8779342723vw, 50px);
}
.danitori-spray__heading {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(1.25rem, 0.985915493rem + 1.1267605634vw, 2rem);
  font-weight: 700;
  line-height: 1.5;
  color: #000;
  display: block;
  margin-bottom: clamp(16px, 15.6478873239px + 0.0938967136vw, 17px);
}
.danitori-spray h2 {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(1rem, 0.911971831rem + 0.3755868545vw, 1.25rem);
  font-weight: 500;
  line-height: 1.5;
  color: #000;
  display: block;
  margin-bottom: clamp(10px, 6.4788732394px + 0.9389671362vw, 20px);
}
.danitori-spray p {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(0.875rem, 0.8309859155rem + 0.1877934272vw, 1rem);
  font-weight: 400;
  line-height: 1.8;
  color: #000;
  margin-bottom: clamp(16px, 6.1408450704px + 2.6291079812vw, 44px);
}
.danitori-spray__gallery {
  display: flex;
  justify-content: center;
  gap: clamp(11px, 5.3661971831px + 1.5023474178vw, 27px);
  margin-bottom: 30px;
}
.danitori-spray__gallery-main {
  border: 1px solid #d9d9d9;
  border-radius: 10px;
  width: clamp(200px, 143.661971831px + 15.0234741784vw, 360px);
  height: clamp(200px, 143.661971831px + 15.0234741784vw, 360px);
  overflow: hidden;
}
.danitori-spray__gallery-main img {
  width: 100%;
  height: auto;
}
.danitori-spray__gallery-sub {
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  gap: clamp(6px, 3.5352112676px + 0.6572769953vw, 13px);
}
.danitori-spray__gallery-sub-box {
  width: clamp(45px, 32.676056338px + 3.2863849765vw, 80px);
  height: clamp(45px, 32.676056338px + 3.2863849765vw, 80px);
  cursor: pointer;
  transition: opacity 0.3s ease;
}
@media (any-hover: hover) {
  .danitori-spray__gallery-sub-box:hover {
    opacity: 0.7;
  }
}
.danitori-spray__gallery-sub img {
  width: 100%;
  height: auto;
}
.danitori-spray__table {
  width: 100%;
  max-width: 560px;
  border-collapse: collapse;
  background-color: #f4f4f7;
  margin: 0 auto;
}
.danitori-spray__table th,
.danitori-spray__table td {
  border: 3px solid #ffffff;
  padding: clamp(10px, 8.2394366197px + 0.4694835681vw, 15px);
  font-size: clamp(0.75rem, 0.661971831rem + 0.3755868545vw, 1rem);
  font-weight: 400;
  line-height: 1.5;
  vertical-align: middle;
  color: #000;
}
.danitori-spray__table th {
  width: 25%;
  text-align: left;
}
.danitori-spray__table td {
  width: 75%;
}
.danitori-spray__table-box {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 12px 3px;
}
.danitori-spray__table-box a {
  width: clamp(95px, 70.7042253521px + 6.4788732394vw, 164px);
  height: clamp(35px, 23.3802816901px + 3.0985915493vw, 68px);
}
.danitori-spray__table-box img {
  width: 100%;
  height: auto;
}

@media screen and (min-width: 1440px) {
  .danitori-spray__wrapper {
    display: grid;
    grid-template-columns: 360px 1fr;
    gap: 44px 60px;
    align-items: start;
    grid-template-areas: "gallery desc" "gallery table";
  }
  .danitori-spray__desc {
    grid-area: desc;
  }
  .danitori-spray p {
    line-height: 2;
    margin-bottom: 0;
  }
  .danitori-spray__gallery {
    flex-direction: column;
    margin-bottom: 0;
    grid-area: gallery;
  }
  .danitori-spray__gallery-sub {
    flex-direction: row;
  }
  .danitori-spray__table {
    grid-area: table;
    margin: 0;
  }
  .danitori-spray__table th,
.danitori-spray__table td {
    padding-left: 20px;
  }
  .danitori-spray__table th {
    width: 32%;
  }
  .danitori-spray__table td {
    width: 68%;
  }
}
@media screen and (min-width: 1440px) and (any-hover: hover) {
  .danitori-spray__table-box a:hover {
    opacity: 0.7;
  }
}
.danitori-use {
  background-color: #F1F6FE;
  padding-top: clamp(50px, 32.3943661972px + 4.6948356808vw, 100px);
  padding-bottom: 100px;
  position: relative;
}
.danitori-use::before {
  content: "";
  display: block;
  width: clamp(32px, 25.661971831px + 1.6901408451vw, 50px);
  height: clamp(16px, 7.5492957746px + 2.2535211268vw, 40px);
  border-top: clamp(30px, 26.4788732394px + 0.9389671362vw, 40px) solid #fff;
  border-left: clamp(40px, 32.9577464789px + 1.8779342723vw, 60px) solid transparent;
  border-right: clamp(40px, 32.9577464789px + 1.8779342723vw, 60px) solid transparent;
  position: absolute;
  left: 50%;
  top: 0;
  transform: translate(-50%, 0);
}
.danitori-use__inner {
  max-width: clamp(335px, 30.4225352113px + 81.220657277vw, 1200px);
  margin: 0 auto;
}
.danitori-use h2 {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(1.25rem, 0.985915493rem + 1.1267605634vw, 2rem);
  font-weight: 700;
  letter-spacing: 0.2em;
  color: #2f4091;
  margin-bottom: clamp(20px, 16.4788732394px + 0.9389671362vw, 30px);
  text-align: center;
}
.danitori-use ol {
  max-width: clamp(335px, 259.2957746479px + 20.1877934272vw, 550px);
  margin-inline: auto;
}
.danitori-use li {
  margin-bottom: 41px;
  position: relative;
}
.danitori-use li::after {
  content: "";
  display: block;
  width: 20px;
  height: 16px;
  border-top: 16px solid #2f4091;
  border-left: 24px solid transparent;
  border-right: 24px solid transparent;
  position: absolute;
  left: 50%;
  bottom: -20px;
  transform: translate(-50%, 0);
}
.danitori-use li:last-of-type {
  margin-bottom: 30px;
}
.danitori-use li:last-of-type::after {
  display: none;
}
.danitori-use__flex {
  display: flex;
  justify-content: left;
  align-items: center;
  gap: clamp(16px, 13.1830985915px + 0.7511737089vw, 24px);
}
.danitori-use__box {
  width: clamp(100px, 47.1830985915px + 14.0845070423vw, 250px);
  height: clamp(100px, 47.1830985915px + 14.0845070423vw, 250px);
  flex-shrink: 0;
}
.danitori-use__box img {
  width: 100%;
  height: auto;
}
.danitori-use__desc p {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(0.875rem, 0.8309859155rem + 0.1877934272vw, 1rem);
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.1em;
  color: #333333;
}
.danitori-use__step {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(1rem, 0.911971831rem + 0.3755868545vw, 1.25rem);
  font-weight: 700;
  color: #2f4091;
  display: block;
  margin-bottom: 8px;
  text-align: left;
}
.danitori-use a {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(0.875rem, 0.786971831rem + 0.3755868545vw, 1.125rem);
  font-weight: 500;
  letter-spacing: 0.1em;
  color: #fff;
  background-color: #2f4091;
  display: flex;
  justify-content: center;
  align-items: center;
  width: clamp(212px, 189.1126760563px + 6.103286385vw, 277px);
  height: clamp(34px, 30.4788732394px + 0.9389671362vw, 44px);
  position: relative;
  margin-inline: auto;
  padding-left: 30px;
}
.danitori-use a::before {
  content: "";
  display: inline-block;
  width: 15px;
  height: 13.5px;
  background: no-repeat url(../images/danitori-use-icon.png) center/contain;
  position: absolute;
  left: clamp(15px, 11.4788732394px + 0.9389671362vw, 25px);
  top: 50%;
  transform: translate(0, -50%);
}

@media screen and (min-width: 1440px) {
  .danitori-use ol {
    max-width: none;
    display: flex;
    justify-content: space-between;
    margin-bottom: 50px;
  }
  .danitori-use li {
    margin-bottom: 0;
    max-width: 250px;
  }
  .danitori-use li::after {
    width: 20px;
    height: 16px;
    border-top: 16px solid transparent;
    border-left: 14px solid #2f4091;
    border-bottom: 16px solid transparent;
    border-right: none;
    position: absolute;
    left: initial;
    right: -40px;
    bottom: initial;
    top: 50%;
    transform: translate(0, -350%);
  }
  .danitori-use li:last-of-type {
    margin-bottom: 0;
  }
  .danitori-use__flex {
    flex-direction: column;
  }
  .danitori-use__desc p {
    line-height: 1.8;
  }
  .danitori-use__step {
    text-align: center;
  }
  .danitori-use a {
    transition: opacity 0.3s ease;
  }
}
@media screen and (min-width: 1440px) and (any-hover: hover) {
  .danitori-use a:hover {
    opacity: 0.7;
  }
}
.archive-news {
  padding-top: clamp(40px, 20.6338028169px + 5.1643192488vw, 95px);
  padding-bottom: clamp(100px, 92.9577464789px + 1.8779342723vw, 120px);
}
.archive-news__inner {
  max-width: clamp(335px, 143.0985915493px + 51.1737089202vw, 880px);
  margin: 0 auto;
}
.archive-news__ttl {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(1.25rem, 1.073943662rem + 0.7511737089vw, 1.75rem);
  font-weight: 700;
  color: #2f4091;
  line-height: 1.5;
  letter-spacing: 0.1em;
  margin-bottom: clamp(0px, -12.323943662px + 3.2863849765vw, 35px);
  text-transform: uppercase;
}
.archive-news__item {
  padding-top: 20px;
  padding-bottom: 22px;
  border-bottom: 1px solid #d9d9d9;
}
.archive-news__item:last-child {
  margin-bottom: clamp(40px, 32.9577464789px + 1.8779342723vw, 60px);
}
.archive-news__item-ttl {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(0.875rem, 0.8309859155rem + 0.1877934272vw, 1rem);
  font-weight: 500;
  color: #333333;
  line-height: 1.5;
}
.archive-news__time {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(0.75rem, 0.7059859155rem + 0.1877934272vw, 0.875rem);
  font-weight: 400;
  color: #757575;
  margin-right: clamp(20px, 16.4788732394px + 0.9389671362vw, 30px);
}
.archive-news__cat {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(0.625rem, 0.5809859155rem + 0.1877934272vw, 0.75rem);
  font-weight: 400;
  color: #2f4091;
  border: 1px solid #2f4091;
  border-radius: 3px;
  padding: 4.5px 8px;
}
.archive-news__cat-wrap {
  display: inline-flex;
  gap: clamp(10px, 9.2957746479px + 0.1877934272vw, 12px);
  margin-bottom: 8px;
}

.sin-news {
  padding-top: 40px;
  padding-bottom: 100px;
}
.sin-news p {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(0.75rem, 0.661971831rem + 0.3755868545vw, 1rem);
  font-weight: 400;
  color: #333333;
  line-height: 1.8;
  margin-bottom: 30px;
}
.sin-news a {
  color: #2f4091;
  text-decoration: underline;
}
.sin-news a > p {
  color: #2f4091;
  text-decoration: underline;
}
.sin-news ul {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(0.75rem, 0.661971831rem + 0.3755868545vw, 1rem);
  list-style: initial;
  list-style-position: inside;
}
.sin-news ol {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(0.75rem, 0.661971831rem + 0.3755868545vw, 1rem);
  list-style: auto;
  list-style-position: inside;
}
.sin-news li {
  color: #333333;
  margin-bottom: 20px;
}
.sin-news__inner {
  max-width: clamp(335px, 143.0985915493px + 51.1737089202vw, 880px);
  margin: 0 auto;
}
.sin-news__ttl {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(1.125rem, 0.9929577465rem + 0.5633802817vw, 1.5rem);
  font-weight: 700;
  color: #333333;
  line-height: 1.8;
  margin-bottom: 16px;
}
.sin-news__info {
  margin-bottom: clamp(30px, 22.9577464789px + 1.8779342723vw, 50px);
}
.sin-news__time {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(0.875rem, 0.8309859155rem + 0.1877934272vw, 1rem);
  font-weight: 400;
  color: #333333;
  margin-right: clamp(20px, 16.4788732394px + 0.9389671362vw, 30px);
}
.sin-news__cat {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(0.625rem, 0.536971831rem + 0.3755868545vw, 0.875rem);
  font-weight: 400;
  color: #2f4091;
  border: 1px solid #2f4091;
  border-radius: 3px;
  padding: 4.5px 8px;
}
.sin-news__cat-wrap {
  display: inline-flex;
  gap: clamp(10px, 7.8873239437px + 0.5633802817vw, 16px);
  margin-bottom: 8px;
}
.sin-news .sin-news__link {
  font-family: "Noto Sans JP", sans-serif;
  width: 240px;
  height: 40px;
  background: #fff;
  color: #2f4091;
  font-size: 0.75rem;
  font-weight: 500;
  letter-spacing: 0.1em;
  border-radius: 40px;
  display: grid;
  place-items: center;
  margin: 0 auto;
  position: relative;
  font-size: clamp(0.875rem, 0.8309859155rem + 0.1877934272vw, 1rem);
  color: #fff;
  width: clamp(280px, 272.9577464789px + 1.8779342723vw, 300px);
  height: clamp(46px, 44.5915492958px + 0.3755868545vw, 50px);
  background-color: #2f4091;
  margin-top: 50px;
  text-decoration: none;
}
.sin-news .sin-news__link::before {
  content: "";
  display: block;
  width: 20px;
  height: 20px;
  border-radius: 50%;
  background-color: #2f4091;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 20px;
}
.sin-news .sin-news__link::after {
  content: "";
  display: block;
  width: 8px;
  height: 8px;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  position: absolute;
  top: 50%;
  transform: translateY(-50%) rotate(45deg);
  right: 27px;
}
.sin-news .sin-news__link::before {
  width: 22.4px;
  height: 22.4px;
  background-color: #fff;
  right: 25px;
}
.sin-news .sin-news__link::after {
  width: 10px;
  height: 10px;
  border-top: 2px solid #2f4091;
  border-right: 2px solid #2f4091;
  right: 34px;
}
.sin-news .list--onlineshop {
  list-style: none;
}
.sin-news .list--onlineshop .list__item img {
  width: auto;
  height: auto;
}

.archive-dani-navi__container {
  max-width: 1200px;
  margin: 0 auto;
}
@media screen and (min-width: 1440px) {
  .archive-dani-navi__container {
    display: flex;
    gap: 60px;
  }
}
.archive-dani-navi__inner {
  max-width: clamp(335px, 164.2253521127px + 45.5399061033vw, 820px);
  margin: 0 auto;
  padding-top: clamp(40px, 18.8732394366px + 5.6338028169vw, 100px);
  padding-bottom: clamp(60px, 38.8732394366px + 5.6338028169vw, 120px);
}
.archive-dani-navi__ttl {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(1.25rem, 0.985915493rem + 1.1267605634vw, 2rem);
  font-weight: 700;
  color: #2f4091;
  line-height: 1.5;
  letter-spacing: 0.1em;
  margin-bottom: clamp(0px, -14.0845070423px + 3.7558685446vw, 40px);
}
.archive-dani-navi__item {
  padding-top: clamp(0px, 21.6338028169px + -1.5023474178vw, 16px);
  padding-bottom: clamp(16px, 15.2957746479px + 0.1877934272vw, 18px);
  border-bottom: 1px solid #d9d9d9;
}
.archive-dani-navi__item-ttl {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(0.875rem, 0.8309859155rem + 0.1877934272vw, 1rem);
  font-weight: 700;
  color: #2f4091;
  line-height: 1.5;
  margin-bottom: 20px;
}
.archive-dani-navi__item:last-of-type {
  margin-bottom: clamp(40px, 34.3661971831px + 1.5023474178vw, 56px);
}
.archive-dani-navi__item-box {
  max-width: 300px;
  max-height: 169px;
  margin: 0 auto 16px;
  overflow: hidden;
}
.archive-dani-navi__item-img {
  width: 100%;
  height: auto;
}
.archive-dani-navi__item-desc {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 0.875rem;
  font-weight: 400;
  color: #333333;
  line-height: 1.8;
  display: none;
}
.archive-dani-navi__item-text {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 0.75rem;
  font-weight: 400;
  color: #333333;
}
.archive-dani-navi__item-time {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(0.625rem, 0.5809859155rem + 0.1877934272vw, 0.75rem);
  font-weight: 400;
  color: #333333;
}
.archive-dani-navi__cat {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 0.75rem;
  font-weight: 400;
  color: #2f4091;
  border: 1px solid #2f4091;
  padding: 4.5px 10px;
  border-radius: 3px;
  display: inline-block;
  margin-bottom: 10px;
  margin-right: 20px;
}
.archive-dani-navi__foot {
  text-align: right;
  padding-right: 18px;
}
.archive-dani-navi__side {
  padding-top: 40px;
  padding-bottom: 100px;
}
.archive-dani-navi__side-inner {
  max-width: 335px;
  margin: 0 auto;
}
.archive-dani-navi__side-cat {
  margin-bottom: 40px;
}
.archive-dani-navi__side-ttl {
  font-family: "Inter", sans-serif;
  font-size: clamp(1.125rem, 0.9929577465rem + 0.5633802817vw, 1.5rem);
  font-weight: 700;
  color: #2f4091;
  position: relative;
  margin-bottom: 29px;
  padding-left: 8px;
}
.archive-dani-navi__side-ttl::before {
  content: "";
  display: block;
  width: clamp(61px, 49.7323943662px + 3.0046948357vw, 93px);
  height: 2px;
  border-radius: 1px;
  background-color: #277dc9;
  position: absolute;
  top: 128%;
  left: 50%;
  transform: translate(-277%, -50%);
  z-index: 2;
}
.archive-dani-navi__side-ttl::after {
  content: "";
  display: block;
  width: clamp(335px, 275.4929577465px + 15.8685446009vw, 504px);
  height: 2px;
  border-radius: 1px;
  background-color: #2f4091;
  position: absolute;
  top: 128%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 1;
}
.archive-dani-navi__side-item {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 0.875rem;
  font-weight: 500;
  color: #2f4091;
  padding-left: 33px;
  margin-bottom: clamp(16px, 14.5915492958px + 0.3755868545vw, 20px);
  position: relative;
}
.archive-dani-navi__side-item::before {
  content: "";
  width: 1px;
  height: 8px;
  background-color: #2f4091;
  display: block;
  position: absolute;
  top: 7px;
  left: 21px;
  transform: rotate(30deg);
}
.archive-dani-navi__side-item::after {
  content: "";
  width: 1px;
  height: 8px;
  background-color: #2f4091;
  display: block;
  position: absolute;
  top: 1px;
  left: 21px;
  transform: rotate(-30deg);
}
.archive-dani-navi__side-tag {
  margin-bottom: 40px;
}
.archive-dani-navi__side-tag .archive-dani-navi__side-list {
  display: flex;
  flex-wrap: wrap;
}
.archive-dani-navi__side-tag .archive-dani-navi__side-item {
  width: 50%;
}
.archive-dani-navi__side-ranking .archive-dani-navi__side-ttl {
  margin-bottom: 35px;
}
.archive-dani-navi__side-ranking-list {
  padding-left: 10px;
}
.archive-dani-navi__side-ranking-item {
  margin-bottom: 28px;
}
.archive-dani-navi__side-ranking-item:nth-child(1) .archive-dani-navi__side-ranking-box::before {
  background: no-repeat url(../images/ranking-1.png) center/cover;
}
.archive-dani-navi__side-ranking-item:nth-child(2) .archive-dani-navi__side-ranking-box::before {
  background: no-repeat url(../images/ranking-2.png) center/cover;
}
.archive-dani-navi__side-ranking-item:nth-child(3) .archive-dani-navi__side-ranking-box::before {
  background: no-repeat url(../images/ranking-3.png) center/cover;
}
.archive-dani-navi__side-ranking-item:nth-child(4) .archive-dani-navi__side-ranking-box::before {
  background: no-repeat url(../images/ranking-4.png) center/cover;
}
.archive-dani-navi__side-ranking-item:nth-child(5) .archive-dani-navi__side-ranking-box::before {
  background: no-repeat url(../images/ranking-5.png) center/cover;
}
.archive-dani-navi__side-ranking-item:last-child {
  margin-bottom: 0;
}
.archive-dani-navi__side-ranking-item .wpp-thumbnail {
  float: none;
}
.archive-dani-navi__side-ranking-item-ttl {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 0.875rem;
  font-weight: 500;
  color: #2f4091;
  line-height: 1.4;
  width: 65%;
}
.archive-dani-navi__side-ranking-link {
  display: flex;
  gap: 10px;
}
.archive-dani-navi__side-ranking-box {
  width: 120px;
  height: 67.5px;
  flex-shrink: 0;
  position: relative;
}
.archive-dani-navi__side-ranking-box::before {
  content: "";
  display: block;
  width: 30px;
  height: 42px;
  position: absolute;
  left: -10px;
  top: -5px;
}
.archive-dani-navi__side-ranking-box img {
  width: 100%;
  height: auto;
}
.archive-dani-navi__side-ranking-img {
  width: 100%;
  height: auto;
}

@media screen and (min-width: 780px) {
  .archive-dani-navi__item-flex {
    display: flex;
    gap: 24px;
  }
  .archive-dani-navi__item-desc {
    display: block;
  }
  .archive-dani-navi__item-box {
    width: 180px;
    flex-shrink: 0;
    margin-bottom: 0;
  }
  .archive-dani-navi__foot {
    padding-right: 0;
  }
}
@media screen and (min-width: 1440px) and (any-hover: hover) {
  .archive-dani-navi__link:hover {
    opacity: 0.7;
  }
}
@media screen and (min-width: 1440px) {
  .archive-dani-navi__cat {
    margin-bottom: 6px;
  }
}
@media screen and (min-width: 1440px) {
  .archive-dani-navi__side {
    padding-top: 187px;
  }
  .archive-dani-navi__side-inner {
    max-width: 320px;
  }
  .archive-dani-navi__side-ttl {
    margin-bottom: 34px;
    padding-left: 8px;
  }
  .archive-dani-navi__side-ttl::before {
    width: clamp(58px, 62.0563380282px + -0.2816901408vw, 61px);
    top: 128%;
  }
  .archive-dani-navi__side-ttl::after {
    width: clamp(320px, 340.2816901408px + -1.4084507042vw, 335px);
    top: 128%;
  }
}
@media screen and (min-width: 1440px) and (any-hover: hover) {
  .archive-dani-navi__side-item:hover {
    opacity: 0.7;
  }
}
@media screen and (min-width: 1440px) and (any-hover: hover) {
  .archive-dani-navi__side-ranking-item:hover {
    opacity: 0.7;
  }
}
.sin-dani-navi {
  grid-area: 1/1/2/2;
}
.sin-dani-navi a {
  color: #2f4091;
  text-decoration: underline;
}
.sin-dani-navi a > p {
  color: #2f4091;
  text-decoration: underline;
}
.sin-dani-navi ul {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(0.75rem, 0.7059859155rem + 0.1877934272vw, 0.875rem);
  list-style: initial;
  list-style-position: inside;
}
.sin-dani-navi ol {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(0.75rem, 0.7059859155rem + 0.1877934272vw, 0.875rem);
  list-style: auto;
  list-style-position: inside;
}
.sin-dani-navi table {
  table-layout: fixed;
  width: 100%;
  margin-bottom: 60px;
  border-collapse: collapse;
  vertical-align: middle;
}
.sin-dani-navi table p {
  text-align: center;
  margin-bottom: 10px;
}
.sin-dani-navi table img {
  margin-top: 10px;
  margin-bottom: 10px;
}
.sin-dani-navi .nk-table tr > th.light-blue {
  background-color: #e7f3f9;
}
.sin-dani-navi .nk-table tr > th {
  background-color: #e8e8e8;
}
.sin-dani-navi .nk-table tr > th,
.sin-dani-navi .nk-table tr > td {
  font-size: 1rem;
  border: 1px solid #ddd;
  padding: 15px 8px;
  line-height: 1.5;
}
.sin-dani-navi .nk-table a {
  text-decoration: none;
}
.sin-dani-navi .tac {
  text-align: center !important;
}
.sin-dani-navi td,
.sin-dani-navi th {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(0.75rem, 0.7059859155rem + 0.1877934272vw, 0.875rem);
  padding: 10px;
  vertical-align: middle;
  line-height: 1.7;
}
.sin-dani-navi .point {
  position: relative;
  border: 2px solid #f44314;
  padding: 25px 15px 15px;
  width: 80%;
  margin-inline: auto;
}
.sin-dani-navi .point::before {
  font-size: 1.25rem;
  content: "POINT";
  position: absolute;
  top: -19px;
  left: 6px;
  font-weight: bold;
  background: #fff;
  padding: 4px 10px;
}
.sin-dani-navi__container {
  padding-top: clamp(40px, 18.8732394366px + 5.6338028169vw, 100px);
  max-width: 1200px;
  margin: 0 auto;
}
.sin-dani-navi__inner {
  margin: 0 auto;
  padding-bottom: 60px;
  padding-left: 15px;
  padding-right: 15px;
}
@media screen and (min-width: 365px) {
  .sin-dani-navi__inner {
    max-width: clamp(335px, 164.2253521127px + 45.5399061033vw, 820px);
    padding-left: 0;
    padding-right: 0;
  }
}
.sin-dani-navi li {
  color: #333333;
  margin-bottom: 20px;
}
.sin-dani-navi__ttl {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(1.125rem, 0.9929577465rem + 0.5633802817vw, 1.5rem);
  font-weight: 700;
  color: #333333;
  line-height: 1.8;
  margin-bottom: 30px;
  position: relative;
}
.sin-dani-navi__ttl::before {
  content: "";
  display: block;
  width: clamp(61px, 29.661971831px + 8.3568075117vw, 150px);
  height: 2px;
  border-radius: 1px;
  background-color: #277dc9;
  position: absolute;
  top: 110%;
  left: 50%;
  transform: translate(-277%, -50%);
  z-index: 2;
}
.sin-dani-navi__ttl::after {
  content: "";
  display: block;
  width: clamp(335px, 164.2253521127px + 45.5399061033vw, 820px);
  height: 2px;
  border-radius: 1px;
  background-color: #2f4091;
  position: absolute;
  top: 110%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 1;
}
.sin-dani-navi__post-wrap {
  display: flex;
  gap: 30px;
  justify-content: left;
  align-items: flex-end;
  margin-bottom: clamp(20px, 9.4366197183px + 2.8169014085vw, 50px);
}
.sin-dani-navi__post-date-box {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(0.75rem, 0.661971831rem + 0.3755868545vw, 1rem);
  font-weight: 400;
  color: #333333;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: clamp(5px, 2.5352112676px + 0.6572769953vw, 12px);
}
.sin-dani-navi__last-date {
  display: block;
}
.sin-dani-navi .sin-dani-navi__post-cat {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(0.75rem, 0.7059859155rem + 0.1877934272vw, 0.875rem);
  font-weight: 400;
  color: #2f4091;
  border: 1px solid #2f4091;
  border-radius: 3px;
  padding: clamp(2px, 5.3802816901px + -0.234741784vw, 4.5px) 10px;
  height: 23px;
  text-decoration: none;
}
.sin-dani-navi__thumb-box {
  margin: 0 auto;
  width: clamp(335px, 164.2253521127px + 45.5399061033vw, 820px);
  height: clamp(188px, 146.0985915493px + 11.1737089202vw, 307px);
  margin-bottom: 50px;
}
.sin-dani-navi .sin-dani-navi__thumb-img {
  width: 100%;
  height: auto;
  max-height: 307px;
  -o-object-fit: cover;
     object-fit: cover;
  max-width: 820px;
}
.sin-dani-navi p {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(0.75rem, 0.7059859155rem + 0.1877934272vw, 0.875rem);
  font-weight: 400;
  color: #333333;
  line-height: 1.8;
  margin-bottom: clamp(16px, 11.0704225352px + 1.3145539906vw, 30px);
}
.sin-dani-navi img {
  display: block;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
  height: auto;
  margin-bottom: clamp(20px, 12.9577464789px + 1.8779342723vw, 40px);
  margin-top: clamp(20px, 12.9577464789px + 1.8779342723vw, 40px);
  max-width: 80%;
  margin-inline: auto;
}
.sin-dani-navi iframe {
  max-width: 80% !important;
  display: block;
  margin-inline: auto;
}
.sin-dani-navi h2 {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(1rem, 0.9559859155rem + 0.1877934272vw, 1.125rem);
  font-weight: 700;
  color: #fff;
  background-color: #2f4091;
  height: 50px;
  display: flex;
  align-items: center;
  padding-left: clamp(10px, 5.0704225352px + 1.3145539906vw, 24px);
  margin-top: clamp(40px, 36.4788732394px + 0.9389671362vw, 50px);
  margin-bottom: clamp(20px, 16.4788732394px + 0.9389671362vw, 30px);
  line-height: 1.5;
}
.sin-dani-navi h3 {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(0.875rem, 0.786971831rem + 0.3755868545vw, 1.125rem);
  font-weight: 700;
  color: #2f4091;
  border-top: 2px solid #2f4091;
  border-bottom: 2px solid #2f4091;
  height: 41px;
  display: flex;
  align-items: center;
  padding-left: clamp(10px, 5.0704225352px + 1.3145539906vw, 24px);
  margin-top: clamp(30px, 26.4788732394px + 0.9389671362vw, 40px);
  margin-bottom: clamp(16px, 11.0704225352px + 1.3145539906vw, 30px);
}
.sin-dani-navi h4 {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(0.75rem, 0.661971831rem + 0.3755868545vw, 1rem);
  font-weight: 700;
  color: #2f4091;
  padding-left: clamp(10px, 5.0704225352px + 1.3145539906vw, 24px);
  margin-top: clamp(30px, 26.4788732394px + 0.9389671362vw, 40px);
  margin-bottom: clamp(16px, 11.0704225352px + 1.3145539906vw, 30px);
}
.sin-dani-navi .sin-dani-navi__tag-list {
  display: flex;
  flex-wrap: wrap;
  gap: 14px 8px;
  margin-top: 60px;
  list-style: none;
}
.sin-dani-navi .sin-dani-navi__tag-link {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(0.75rem, 0.7059859155rem + 0.1877934272vw, 0.875rem);
  font-weight: 400;
  color: #2f4091;
  border: 1px solid #2f4091;
  border-radius: 3px;
  padding: clamp(2px, 5.3802816901px + -0.234741784vw, 4.5px) 10px;
  height: 30px;
  text-decoration: none;
}
.sin-dani-navi__link {
  font-family: "Noto Sans JP", sans-serif;
  width: 240px;
  height: 40px;
  background: #fff;
  color: #2f4091;
  font-size: 0.75rem;
  font-weight: 500;
  letter-spacing: 0.1em;
  border-radius: 40px;
  display: grid;
  place-items: center;
  margin: 0 auto;
  position: relative;
  font-size: clamp(0.875rem, 0.8309859155rem + 0.1877934272vw, 1rem);
  color: #fff;
  width: clamp(280px, 272.9577464789px + 1.8779342723vw, 300px);
  height: clamp(46px, 44.5915492958px + 0.3755868545vw, 50px);
  background-color: #2f4091;
  margin-top: 60px;
  margin-bottom: 60px;
  text-decoration: none;
}
.sin-dani-navi__link::before {
  content: "";
  display: block;
  width: 20px;
  height: 20px;
  border-radius: 50%;
  background-color: #2f4091;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 20px;
}
.sin-dani-navi__link::after {
  content: "";
  display: block;
  width: 8px;
  height: 8px;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  position: absolute;
  top: 50%;
  transform: translateY(-50%) rotate(45deg);
  right: 27px;
}
.sin-dani-navi__link::before {
  width: 22.4px;
  height: 22.4px;
  background-color: #fff;
  right: 25px;
}
.sin-dani-navi__link::after {
  width: 10px;
  height: 10px;
  border-top: 2px solid #2f4091;
  border-right: 2px solid #2f4091;
  right: 34px;
}
@media screen and (min-width: 1440px) {
  .sin-dani-navi__link {
    display: none;
  }
}
.sin-dani-navi__link-foot {
  font-family: "Noto Sans JP", sans-serif;
  width: 240px;
  height: 40px;
  background: #fff;
  color: #2f4091;
  font-size: 0.75rem;
  font-weight: 500;
  letter-spacing: 0.1em;
  border-radius: 40px;
  display: grid;
  place-items: center;
  margin: 0 auto;
  position: relative;
  font-size: clamp(0.875rem, 0.8309859155rem + 0.1877934272vw, 1rem);
  width: clamp(280px, 272.9577464789px + 1.8779342723vw, 300px);
  height: clamp(46px, 44.5915492958px + 0.3755868545vw, 50px);
  background-color: #2f4091;
  margin-top: 20px;
  margin-bottom: 80px;
  display: none;
  color: #fff;
}
.sin-dani-navi__link-foot::before {
  content: "";
  display: block;
  width: 20px;
  height: 20px;
  border-radius: 50%;
  background-color: #2f4091;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 20px;
}
.sin-dani-navi__link-foot::after {
  content: "";
  display: block;
  width: 8px;
  height: 8px;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  position: absolute;
  top: 50%;
  transform: translateY(-50%) rotate(45deg);
  right: 27px;
}
.sin-dani-navi__link-foot::before {
  width: 22.4px;
  height: 22.4px;
  background-color: #fff;
  right: 25px;
}
.sin-dani-navi__link-foot::after {
  width: 10px;
  height: 10px;
  border-top: 2px solid #2f4091;
  border-right: 2px solid #2f4091;
  right: 34px;
}
.sin-dani-navi .sin-dani-navi__link {
  color: #fff;
  text-decoration: none;
}
.sin-dani-navi .list--onlineshop {
  list-style: none;
}
.sin-dani-navi .list--onlineshop .list__item img {
  width: auto;
  height: auto;
  margin-block: 20px;
}
.sin-dani-navi .list--onlineshop p {
  margin-bottom: 0;
}
.sin-dani-navi .list--onlineshop a:empty {
  display: none !important;
}

@media screen and (min-width: 1440px) {
  .nk-table tr > th,
.nk-table tr > td {
    font-size: 1.25rem;
  }
  .sin-dani-navi__container {
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-template-rows: repeat(1fr, auto);
    gap: 120px 60px;
  }
  .sin-dani-navi__container .archive-dani-navi__side {
    padding-top: 0;
    grid-area: 1/2/2/3;
  }
  .sin-dani-navi__inner {
    padding-bottom: 0;
  }
  .sin-dani-navi__link {
    margin-bottom: 0;
  }
  .sin-dani-navi__link-foot {
    display: grid;
  }
}
.archive-labo__container {
  max-width: 1200px;
  margin: 0 auto;
  padding-top: clamp(40px, 15.3521126761px + 6.5727699531vw, 110px);
}
@media screen and (min-width: 1440px) {
  .archive-labo__container {
    display: flex;
    gap: 60px;
  }
}
.archive-labo__inner {
  max-width: clamp(335px, 164.2253521127px + 45.5399061033vw, 820px);
  margin: 0 auto;
  padding-bottom: clamp(60px, 38.8732394366px + 5.6338028169vw, 120px);
}
.archive-labo__ttl {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(1.25rem, 1.073943662rem + 0.7511737089vw, 1.75rem);
  font-weight: 700;
  color: #2f4091;
  letter-spacing: 0.1em;
  margin-bottom: clamp(0px, -10.5633802817px + 2.8169014085vw, 30px);
}
.archive-labo__item {
  padding-top: 24px;
  padding-bottom: 24px;
  border-bottom: 1px solid #d9d9d9;
}
.archive-labo__item-ttl {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(0.875rem, 0.786971831rem + 0.3755868545vw, 1.125rem);
  font-weight: 700;
  color: #2f4091;
  line-height: 1.8;
  margin-bottom: 10px;
}
.archive-labo__item:last-of-type {
  margin-bottom: clamp(40px, 34.3661971831px + 1.5023474178vw, 56px);
}
.archive-labo__item-flex {
  display: flex;
  gap: clamp(19px, 15.1267605634px + 1.0328638498vw, 30px);
}
.archive-labo__item-box {
  width: clamp(120px, 84.7887323944px + 9.3896713615vw, 220px);
  height: clamp(71px, 50.2253521127px + 5.5399061033vw, 130px);
  flex-shrink: 0;
}
.archive-labo__item-img {
  width: 100%;
  height: auto;
}
.archive-labo__item-desc {
  display: inline-block;
}
.archive-labo__item-icon {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(0.75rem, 0.7059859155rem + 0.1877934272vw, 0.875rem);
  font-weight: 400;
  color: #fff;
  line-height: 1.5;
  letter-spacing: 0.1em;
  background-color: #2f4091;
  border-radius: 50px;
  padding: 0 20px 2px;
  display: inline-block;
  margin-bottom: 5px;
}
.archive-labo__item-ex {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(0.75rem, 0.661971831rem + 0.3755868545vw, 1rem);
  font-weight: 400;
  color: #333333;
  line-height: 1.8;
  margin-bottom: 10px;
}
.archive-labo__cat {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(0.625rem, 0.7940140845rem + -0.1877934272vw, 0.75rem);
  font-weight: 400;
  color: #2f4091;
  border: 1px solid #2f4091;
  padding: 4.5px 10px;
  border-radius: 3px;
  display: inline-block;
  margin-bottom: 8px;
  margin-right: 16px;
}
.archive-labo__foot {
  text-align: right;
}
.archive-labo__item-text {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 0.75rem;
  font-weight: 400;
  color: #333333;
}
.archive-labo__item-time {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 0.75rem;
  font-weight: 400;
  color: #333333;
}
.archive-labo__side {
  padding-top: 40px;
  padding-bottom: 100px;
}
.archive-labo__side-inner {
  max-width: 335px;
  margin: 0 auto;
}
.archive-labo__side-cat {
  margin-bottom: 40px;
}
.archive-labo__side-ttl {
  font-family: "Inter", sans-serif;
  font-size: clamp(1.5rem, 1.5rem + 0vw, 1.5rem);
  font-weight: 700;
  color: #2f4091;
  position: relative;
  margin-bottom: 29px;
  padding-left: 8px;
}
.archive-labo__side-ttl::before {
  content: "";
  display: block;
  width: 58px;
  height: 2px;
  border-radius: 1px;
  background-color: #277dc9;
  position: absolute;
  top: 128%;
  left: 50%;
  transform: translate(-277%, -50%);
  z-index: 2;
}
.archive-labo__side-ttl::after {
  content: "";
  display: block;
  width: 320px;
  height: 2px;
  border-radius: 1px;
  background-color: #2f4091;
  position: absolute;
  top: 128%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 1;
}
.archive-labo__side-item {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 0.875rem;
  font-weight: 500;
  color: #2f4091;
  padding-left: 33px;
  margin-bottom: clamp(16px, 14.5915492958px + 0.3755868545vw, 20px);
  position: relative;
}
.archive-labo__side-item::before {
  content: "";
  width: 1px;
  height: 8px;
  background-color: #2f4091;
  display: block;
  position: absolute;
  top: 7px;
  left: 21px;
  transform: rotate(30deg);
}
.archive-labo__side-item::after {
  content: "";
  width: 1px;
  height: 8px;
  background-color: #2f4091;
  display: block;
  position: absolute;
  top: 1px;
  left: 21px;
  transform: rotate(-30deg);
}
.archive-labo__side-tag .archive-labo__side-list {
  display: flex;
  flex-wrap: wrap;
}
.archive-labo__side-tag .archive-labo__side-item {
  width: 50%;
}

@media screen and (min-width: 1440px) {
  .archive-labo__foot {
    margin-top: -17px;
  }
  .archive-labo__side {
    margin-top: 0px;
    padding-top: 60px;
  }
  .archive-labo__side-link {
    transition: opacity 0.3s ease;
  }
}
@media screen and (min-width: 1440px) and (any-hover: hover) {
  .archive-labo__side-link:hover {
    opacity: 0.7;
  }
}
@media screen and (min-width: 1440px) {
  .archive-labo__item {
    transition: opacity 0.3s ease;
  }
}
@media screen and (min-width: 1440px) and (any-hover: hover) {
  .archive-labo__item:hover {
    opacity: 0.7;
  }
}
.sin-laboratory {
  grid-area: 1/1/2/2;
}
.sin-laboratory a {
  color: #2f4091;
  text-decoration: underline;
}
.sin-laboratory a > p {
  color: #2f4091;
  text-decoration: underline;
}
.sin-laboratory ul {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(0.75rem, 0.7059859155rem + 0.1877934272vw, 0.875rem);
  list-style: initial;
  list-style-position: inside;
}
.sin-laboratory ol {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(0.75rem, 0.7059859155rem + 0.1877934272vw, 0.875rem);
  list-style: auto;
  list-style-position: inside;
}
.sin-laboratory li {
  color: #333333;
  margin-bottom: 20px;
}
.sin-laboratory__container {
  padding-top: clamp(40px, 18.8732394366px + 5.6338028169vw, 100px);
  max-width: 1200px;
  margin: 0 auto;
}
.sin-laboratory__inner {
  margin: 0 auto;
  padding-bottom: 60px;
  padding-left: 15px;
  padding-right: 15px;
}
@media screen and (min-width: 365px) {
  .sin-laboratory__inner {
    max-width: clamp(335px, 164.2253521127px + 45.5399061033vw, 820px);
    padding-left: 0;
    padding-right: 0;
  }
}
.sin-laboratory__ttl {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(1.125rem, 0.9929577465rem + 0.5633802817vw, 1.5rem);
  font-weight: 700;
  color: #333333;
  line-height: 1.8;
  margin-bottom: 30px;
  position: relative;
}
.sin-laboratory__ttl::before {
  content: "";
  display: block;
  width: clamp(61px, 29.661971831px + 8.3568075117vw, 150px);
  height: 2px;
  border-radius: 1px;
  background-color: #277dc9;
  position: absolute;
  top: 110%;
  left: 50%;
  transform: translate(-277%, -50%);
  z-index: 2;
}
.sin-laboratory__ttl::after {
  content: "";
  display: block;
  width: clamp(335px, 164.2253521127px + 45.5399061033vw, 820px);
  height: 2px;
  border-radius: 1px;
  background-color: #2f4091;
  position: absolute;
  top: 110%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 1;
}
.sin-laboratory__post-wrap {
  display: flex;
  gap: 30px;
  justify-content: left;
  align-items: flex-end;
  margin-bottom: clamp(20px, 9.4366197183px + 2.8169014085vw, 50px);
}
.sin-laboratory__post-date-box {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(0.75rem, 0.661971831rem + 0.3755868545vw, 1rem);
  font-weight: 400;
  color: #333333;
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: clamp(5px, 2.5352112676px + 0.6572769953vw, 12px);
}
.sin-laboratory__last-date {
  display: block;
}
.sin-laboratory .sin-laboratory__post-cat {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(0.75rem, 0.7059859155rem + 0.1877934272vw, 0.875rem);
  font-weight: 400;
  color: #2f4091;
  border: 1px solid #2f4091;
  border-radius: 3px;
  padding: clamp(2px, 5.3802816901px + -0.234741784vw, 4.5px) 10px;
  height: 23px;
  text-decoration: none;
}
.sin-laboratory__post-tag {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(0.75rem, 0.7059859155rem + 0.1877934272vw, 0.875rem);
  font-weight: 400;
  color: #2f4091;
  border: 1px solid #2f4091;
  border-radius: 3px;
  padding: clamp(2px, 5.3802816901px + -0.234741784vw, 4.5px) 10px;
  height: 23px;
  margin-left: -20px;
}
.sin-laboratory__thumb-box {
  margin: 0 auto;
  width: clamp(335px, 164.2253521127px + 45.5399061033vw, 820px);
  height: clamp(188px, 146.0985915493px + 11.1737089202vw, 307px);
  margin-bottom: 50px;
}
.sin-laboratory .sin-laboratory__thumb-img {
  width: 100%;
  height: auto;
  max-height: 307px;
  -o-object-fit: cover;
     object-fit: cover;
  max-width: 820px;
}
.sin-laboratory p {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(0.75rem, 0.7059859155rem + 0.1877934272vw, 0.875rem);
  font-weight: 400;
  color: #333333;
  line-height: 1.8;
  margin-bottom: clamp(16px, 11.0704225352px + 1.3145539906vw, 30px);
}
.sin-laboratory p:last-of-type {
  margin-bottom: 0;
}
.sin-laboratory img {
  display: block;
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
  height: auto;
  margin-bottom: clamp(20px, 12.9577464789px + 1.8779342723vw, 40px);
  max-width: 600px;
  margin-inline: auto;
}
.sin-laboratory h2 {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(1rem, 0.9559859155rem + 0.1877934272vw, 1.125rem);
  font-weight: 700;
  color: #fff;
  letter-spacing: 0.1em;
  background-color: #2f4091;
  height: 39px;
  display: flex;
  align-items: center;
  padding-left: clamp(10px, 5.0704225352px + 1.3145539906vw, 24px);
  margin-top: clamp(40px, 36.4788732394px + 0.9389671362vw, 50px);
  margin-bottom: clamp(10px, 6.4788732394px + 0.9389671362vw, 20px);
}
.sin-laboratory h2:nth-of-type(1) {
  background-color: #5571f6;
}
.sin-laboratory h2:nth-of-type(2) {
  background-color: #4e67de;
}
.sin-laboratory h2:nth-of-type(3) {
  background-color: #455ccd;
}
.sin-laboratory h2:nth-of-type(4) {
  background-color: #3a50b7;
}
.sin-laboratory h3 {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(0.875rem, 0.786971831rem + 0.3755868545vw, 1.125rem);
  font-weight: 700;
  color: #2f4091;
  border-top: 2px solid #2f4091;
  border-bottom: 2px solid #2f4091;
  height: 41px;
  display: flex;
  align-items: center;
  padding-left: clamp(10px, 5.0704225352px + 1.3145539906vw, 24px);
  margin-top: clamp(30px, 26.4788732394px + 0.9389671362vw, 40px);
  margin-bottom: clamp(16px, 11.0704225352px + 1.3145539906vw, 30px);
}
.sin-laboratory h4 {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(0.875rem, 0.786971831rem + 0.3755868545vw, 1.125rem);
  font-weight: 700;
  color: #2f4091;
  line-height: 1.8;
  border-bottom: 1px solid #2f4091;
  margin-left: 20px;
  margin-bottom: 16px;
}
.sin-laboratory .sin-laboratory__tag-list {
  display: flex;
  flex-wrap: wrap;
  gap: 14px 8px;
  margin-top: 60px;
  list-style: none;
}
.sin-laboratory .sin-laboratory__tag-link {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(0.75rem, 0.7059859155rem + 0.1877934272vw, 0.875rem);
  font-weight: 400;
  color: #2f4091;
  border: 1px solid #2f4091;
  border-radius: 3px;
  padding: clamp(2px, 5.3802816901px + -0.234741784vw, 4.5px) 10px;
  height: 30px;
  text-decoration: none;
}
.sin-laboratory__link {
  font-family: "Noto Sans JP", sans-serif;
  width: 240px;
  height: 40px;
  background: #fff;
  color: #2f4091;
  font-size: 0.75rem;
  font-weight: 500;
  letter-spacing: 0.1em;
  border-radius: 40px;
  display: grid;
  place-items: center;
  margin: 0 auto;
  position: relative;
  font-size: clamp(0.875rem, 0.8309859155rem + 0.1877934272vw, 1rem);
  width: clamp(280px, 272.9577464789px + 1.8779342723vw, 300px);
  height: clamp(46px, 44.5915492958px + 0.3755868545vw, 50px);
  background-color: #2f4091;
  margin-top: 60px;
}
.sin-laboratory__link::before {
  content: "";
  display: block;
  width: 20px;
  height: 20px;
  border-radius: 50%;
  background-color: #2f4091;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 20px;
}
.sin-laboratory__link::after {
  content: "";
  display: block;
  width: 8px;
  height: 8px;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  position: absolute;
  top: 50%;
  transform: translateY(-50%) rotate(45deg);
  right: 27px;
}
.sin-laboratory__link::before {
  width: 22.4px;
  height: 22.4px;
  background-color: #fff;
  right: 25px;
}
.sin-laboratory__link::after {
  width: 10px;
  height: 10px;
  border-top: 2px solid #2f4091;
  border-right: 2px solid #2f4091;
  right: 34px;
}
@media screen and (min-width: 1440px) {
  .sin-laboratory__link {
    display: none;
  }
}
.sin-laboratory__link-foot {
  font-family: "Noto Sans JP", sans-serif;
  width: 240px;
  height: 40px;
  background: #fff;
  color: #2f4091;
  font-size: 0.75rem;
  font-weight: 500;
  letter-spacing: 0.1em;
  border-radius: 40px;
  display: grid;
  place-items: center;
  margin: 0 auto;
  position: relative;
  font-size: clamp(0.875rem, 0.8309859155rem + 0.1877934272vw, 1rem);
  color: #fff;
  width: clamp(280px, 272.9577464789px + 1.8779342723vw, 300px);
  height: clamp(46px, 44.5915492958px + 0.3755868545vw, 50px);
  background-color: #2f4091;
  margin-top: 20px;
  margin-bottom: 80px;
  display: none;
}
.sin-laboratory__link-foot::before {
  content: "";
  display: block;
  width: 20px;
  height: 20px;
  border-radius: 50%;
  background-color: #2f4091;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 20px;
}
.sin-laboratory__link-foot::after {
  content: "";
  display: block;
  width: 8px;
  height: 8px;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  position: absolute;
  top: 50%;
  transform: translateY(-50%) rotate(45deg);
  right: 27px;
}
.sin-laboratory__link-foot::before {
  width: 22.4px;
  height: 22.4px;
  background-color: #fff;
  right: 25px;
}
.sin-laboratory__link-foot::after {
  width: 10px;
  height: 10px;
  border-top: 2px solid #2f4091;
  border-right: 2px solid #2f4091;
  right: 34px;
}
.sin-laboratory .sin-laboratory__link {
  color: #fff;
  text-decoration: none;
}

@media screen and (min-width: 1440px) {
  .sin-laboratory__container {
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-template-rows: repeat(1fr, auto);
    gap: 120px 60px;
  }
  .sin-laboratory__container .archive-dani-navi__side {
    padding-top: 0;
    grid-area: 1/2/2/3;
  }
  .sin-laboratory__container .archive-labo__side {
    padding-top: 0;
  }
  .sin-laboratory__inner {
    padding-bottom: 0;
  }
  .sin-laboratory__link-foot {
    display: grid;
  }
}
.page-service {
  padding-top: clamp(40px, 25.9154929577px + 3.7558685446vw, 80px);
}
.page-service__inner {
  max-width: clamp(345px, 86.1971830986px + 69.014084507vw, 1080px);
  margin: 0 auto;
}
.page-service h2 {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(1.25rem, 0.985915493rem + 1.1267605634vw, 2rem);
  font-weight: 700;
  letter-spacing: 0.2em;
  color: #333333;
  position: relative;
  text-align: center;
  margin-bottom: 42px;
}
.page-service h2::before {
  content: "";
  display: block;
  width: clamp(56px, 19.0281690141px + 9.8591549296vw, 161px);
  height: 2px;
  border-radius: 1px;
  background-color: #277dc9;
  position: absolute;
  top: 130%;
  left: 50%;
  transform: translate(-272%, -50%);
  z-index: 2;
}
.page-service h2::after {
  content: "";
  display: block;
  width: clamp(305px, 102.5352112676px + 53.9906103286vw, 880px);
  height: 2px;
  border-radius: 1px;
  background-color: #2f4091;
  position: absolute;
  top: 130%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 1;
}
.page-service__purpose {
  border: 1px solid #a9a9a9;
  border-radius: clamp(10px, 2.9577464789px + 1.8779342723vw, 30px);
  padding: clamp(40px, 29.4366197183px + 2.8169014085vw, 70px) 20px;
  margin-bottom: clamp(40px, 53.5211267606px + -0.9389671362vw, 50px);
}
.page-service__purpose-inner {
  max-width: clamp(305px, 102.5352112676px + 53.9906103286vw, 880px);
  margin: 0 auto;
}
.page-service__purpose .page-service__purpose-reed {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(1rem, 0.911971831rem + 0.3755868545vw, 1.25rem);
  font-weight: 500;
  line-height: 1.8;
  color: #333333;
  text-align: center;
}
.page-service__purpose strong {
  color: #2f4091;
}
.page-service__purpose p {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(0.75rem, 0.661971831rem + 0.3755868545vw, 1rem);
  font-weight: 400;
  line-height: 1.8;
  color: #000;
}
.page-service__purpose li {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(0.75rem, 0.661971831rem + 0.3755868545vw, 1rem);
  font-weight: 400;
  line-height: 1.8;
  color: #000;
  position: relative;
  margin-left: 18px;
  margin-bottom: 5px;
}
.page-service__purpose li::before {
  content: "";
  width: clamp(8px, 6.5915492958px + 0.3755868545vw, 12px);
  height: clamp(8px, 6.5915492958px + 0.3755868545vw, 12px);
  border-radius: 50%;
  display: block;
  background-color: #2f4091;
  position: absolute;
  left: clamp(-20px, -13.2394366197px + -0.4694835681vw, -15px);
  top: 8px;
}
.page-service__purpose h3 {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(0.875rem, 0.8309859155rem + 0.1877934272vw, 1rem);
  font-weight: 700;
  line-height: 1.5;
  color: #fff;
  background-color: #2f4091;
  border-radius: 50px;
  display: block;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  padding: 6px 40px;
  margin: 30px auto 16px;
}
.page-service__overview {
  background-color: #f1f6fe;
  border-radius: clamp(10px, 2.9577464789px + 1.8779342723vw, 30px);
  padding: clamp(40px, 29.4366197183px + 2.8169014085vw, 70px) clamp(15px, 2.676056338px + 3.2863849765vw, 50px) clamp(60px, 56.4788732394px + 0.9389671362vw, 70px);
  margin-bottom: clamp(40px, 53.5211267606px + -0.9389671362vw, 50px);
}
.page-service__overview h2 {
  margin-bottom: clamp(42px, 31.4366197183px + 2.8169014085vw, 72px);
}
.page-service__overview li {
  background-color: #fff;
  display: flex;
  gap: 16px;
  padding: 16px 10px 10px;
  margin-bottom: 36px;
  z-index: 0;
}
.page-service__overview li:last-of-type {
  margin-bottom: 40px;
}
.page-service__overview-step {
  font-family: "Roboto", sans-serif;
  font-optical-sizing: auto;
  font-variation-settings: "wdth" 100;
  font-weight: 700;
  font-size: clamp(1.25rem, 0.8978873239rem + 1.5023474178vw, 2.25rem);
  color: #fff;
  display: grid;
  place-items: center;
  background-color: #2f4091;
  width: clamp(37.5px, 29.5774647887px + 2.1126760563vw, 60px);
  height: clamp(37.5px, 29.5774647887px + 2.1126760563vw, 60px);
  border-radius: 50%;
  box-shadow: 0 0 0 clamp(6.25px, 4.9295774648px + 0.3521126761vw, 10px) #fff;
  position: absolute;
  z-index: 1;
  left: 50%;
  top: clamp(-50px, -32.4225352113px + -1.220657277vw, -37px);
  transform: translate(-47%, 0);
}
.page-service__overview-box {
  width: clamp(110px, 53.661971831px + 15.0234741784vw, 270px);
  height: clamp(80px, 44.7887323944px + 9.3896713615vw, 180px);
  flex-shrink: 0;
  position: relative;
}
.page-service__overview-box img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.page-service__overview p {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(0.75rem, 0.661971831rem + 0.3755868545vw, 1rem);
  font-weight: 500;
  line-height: 1.5;
  color: #333333;
}
.page-service__overview h3 {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(1rem, 0.823943662rem + 0.7511737089vw, 1.5rem);
  font-weight: 700;
  line-height: 1.8;
  letter-spacing: 0.1em;
  color: #333333;
  text-align: center;
  margin-bottom: clamp(20px, 12.9577464789px + 1.8779342723vw, 40px);
}
.page-service__overview-youtube {
  width: clamp(315px, 214.6478873239px + 26.7605633803vw, 600px);
  height: clamp(177px, 120.3098591549px + 15.117370892vw, 338px);
  margin: 0 auto;
}
.page-service__overview-youtube img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.page-service__overview-youtube iframe {
  width: 100%;
  height: 100%;
}
.page-service__price {
  border: 1px solid #a9a9a9;
  border-radius: clamp(10px, 2.9577464789px + 1.8779342723vw, 30px);
  padding: clamp(40px, 29.4366197183px + 2.8169014085vw, 70px) 15px;
  margin-bottom: 50px;
}
.page-service__price h2 {
  margin-bottom: clamp(42px, 31.4366197183px + 2.8169014085vw, 72px);
}
.page-service__price-table {
  width: 100%;
  table-layout: fixed;
  max-width: 600px;
  margin: 0 auto;
}
.page-service__price-table th,
.page-service__price-table td {
  border: clamp(1px, 0.2957746479px + 0.1877934272vw, 3px) solid #ffffff;
  padding: clamp(11px, 10.2957746479px + 0.1877934272vw, 13px) clamp(10px, 6.4788732394px + 0.9389671362vw, 20px);
  vertical-align: middle;
  line-height: 1.5;
}
.page-service__price-table th {
  font-size: clamp(0.75rem, 0.6179577465rem + 0.5633802817vw, 1.125rem);
  letter-spacing: 0.2em;
  background-color: #2f4091;
  color: #ffffff;
  text-align: left;
  font-weight: 700;
}
.page-service__price-table th:nth-child(1) {
  width: 65%;
}
.page-service__price-table th:nth-child(2) {
  width: 35%;
  text-align: center;
}
.page-service__price-table td {
  background-color: #f4f8fc;
  font-size: clamp(0.625rem, 0.4929577465rem + 0.5633802817vw, 1rem);
  padding: clamp(11px, 8.8873239437px + 0.5633802817vw, 17px) clamp(10px, 6.4788732394px + 0.9389671362vw, 20px);
}
.page-service__price-table td:nth-child(1) {
  text-align: left;
}
.page-service__price-table td:nth-child(2) {
  text-align: center;
}
.page-service__flow {
  margin-bottom: clamp(40px, 53.5211267606px + -0.9389671362vw, 50px);
}
.page-service__flow-bg {
  background-color: #f4f4f7;
  border-radius: clamp(10px, 2.9577464789px + 1.8779342723vw, 30px);
  padding: clamp(40px, 29.4366197183px + 2.8169014085vw, 70px) 0 clamp(60px, 56.4788732394px + 0.9389671362vw, 70px);
}
.page-service__flow-inner {
  max-width: clamp(315px, 80.8450704225px + 62.441314554vw, 980px);
  margin: 0 auto;
}
.page-service__flow h2 {
  margin-bottom: clamp(42px, 31.4366197183px + 2.8169014085vw, 72px);
}
.page-service__flow h2::before {
  width: clamp(56px, 43.323943662px + 3.3802816901vw, 92px);
}
.page-service__flow h2::after {
  width: clamp(305px, 234.9295774648px + 18.6854460094vw, 504px);
}
.page-service__flow li {
  background-color: #fff;
  border-radius: 10px;
  padding: 15px;
  margin-bottom: 40px;
}
.page-service__flow li:last-child {
  margin-bottom: 0;
}
@media screen and (min-width: 800px) {
  .page-service__flow li {
    padding-left: 40px;
    padding-right: 40px;
  }
}
.page-service__flow-step {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(1rem, 0.911971831rem + 0.3755868545vw, 1.25rem);
  font-weight: 700;
  letter-spacing: 0.2em;
  color: #333333;
  text-transform: uppercase;
  border-bottom: 1px solid #a9a9a9;
  position: relative;
  padding-bottom: 8.5px;
  margin-bottom: 16px;
}
.page-service__flow-step img {
  width: clamp(70px, 45.3521126761px + 6.5727699531vw, 140px);
  height: clamp(52px, 35.0985915493px + 4.5070422535vw, 100px);
  position: absolute;
  top: -24px;
  left: 50%;
  transform: translate(90%, 0);
}
.page-service__flow-big {
  font-size: clamp(1.25rem, 0.6338028169rem + 2.6291079812vw, 3rem);
}
.page-service__flow-desc {
  max-width: 600px;
}
.page-service__flow-desc h3 {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(1rem, 0.9559859155rem + 0.1877934272vw, 1.125rem);
  font-weight: 700;
  line-height: 1.5;
  color: #333333;
  margin-bottom: clamp(10px, 5.0704225352px + 1.3145539906vw, 24px);
}
.page-service__flow-desc p {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(0.75rem, 0.661971831rem + 0.3755868545vw, 1rem);
  font-weight: 400;
  line-height: 1.5;
  color: #333333;
  margin-bottom: 16px;
}
.page-service__flow-desc p:last-of-type {
  margin-bottom: 0;
}
.page-service__flow-tel {
  width: clamp(200px, 177.1126760563px + 6.103286385vw, 265px);
  height: clamp(35px, 31.1267605634px + 1.0328638498vw, 46px);
  background-color: #2f4091;
  display: flex;
  border-radius: clamp(38px, 33.7746478873px + 1.1267605634vw, 50px);
  justify-content: center;
  align-items: center;
  margin: 16px auto 0;
}
.page-service__flow-tel-img {
  width: clamp(22.5px, 19.8591549296px + 0.7042253521vw, 30px);
  height: clamp(24px, 21.1830985915px + 0.7511737089vw, 32px);
}
.page-service__flow-tel-num {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(1.125rem, 0.9929577465rem + 0.5633802817vw, 1.5rem);
  font-weight: 500;
  line-height: 1.5;
  color: #fff;
  margin-left: clamp(15px, 13.2394366197px + 0.4694835681vw, 20px);
}
.page-service__flow-box {
  width: clamp(240px, 219.5774647887px + 5.4460093897vw, 298px);
  height: clamp(62px, 56.7183098592px + 1.4084507042vw, 77px);
  margin: clamp(12px, 10.5915492958px + 0.3755868545vw, 16px) auto 0;
}
.page-service__flow-box img {
  width: 100%;
  height: auto;
  -o-object-fit: cover;
     object-fit: cover;
}
.page-service__caution {
  border: 1px solid #a9a9a9;
  border-radius: clamp(10px, 2.9577464789px + 1.8779342723vw, 30px);
  padding: clamp(40px, 29.4366197183px + 2.8169014085vw, 70px) 15px;
  margin-bottom: clamp(40px, 53.5211267606px + -0.9389671362vw, 50px);
}
.page-service__caution-inner {
  max-width: clamp(315px, 248.4507042254px + 17.7464788732vw, 504px);
  margin: 0 auto;
}
.page-service__caution h2 {
  font-size: clamp(1.125rem, 0.8169014085rem + 1.3145539906vw, 2rem);
  margin-bottom: clamp(42px, 31.4366197183px + 2.8169014085vw, 72px);
}
.page-service__caution h2::before {
  width: clamp(57px, 44.676056338px + 3.2863849765vw, 92px);
}
.page-service__caution h2::after {
  width: clamp(315px, 248.4507042254px + 17.7464788732vw, 504px);
}
.page-service__caution li {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(0.75rem, 0.661971831rem + 0.3755868545vw, 1rem);
  font-weight: 400;
  line-height: 1.8;
  color: #000;
  position: relative;
  margin-left: clamp(18px, 12.014084507px + 1.5962441315vw, 35px);
  margin-bottom: clamp(5px, 1.1267605634px + 1.0328638498vw, 16px);
}
.page-service__caution li::before {
  content: "";
  width: clamp(8px, 6.5915492958px + 0.3755868545vw, 12px);
  height: clamp(8px, 6.5915492958px + 0.3755868545vw, 12px);
  border-radius: 50%;
  display: block;
  background-color: #2f4091;
  position: absolute;
  left: clamp(-25px, -11.4788732394px + -0.9389671362vw, -15px);
  top: 8px;
}
.page-service__contact {
  padding-top: clamp(20px, 5.9154929577px + 3.7558685446vw, 60px);
  margin-bottom: clamp(80px, 65.9154929577px + 3.7558685446vw, 120px);
}
.page-service__contact-inner {
  max-width: 730px;
  margin: 0 auto;
}
.page-service__contact h2 {
  font-size: clamp(1.125rem, 0.8169014085rem + 1.3145539906vw, 2rem);
}
.page-service__contact h2::before, .page-service__contact h2:after {
  display: none;
}
.page-service__contact-flex {
  margin-top: 30px;
}
.page-service__contact-work {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(1rem, 0.911971831rem + 0.3755868545vw, 1.25rem);
  font-weight: 700;
  color: #000;
  display: block;
  text-align: center;
  margin-bottom: 20px;
}
.page-service__contact-box {
  border: 1px solid #2f4091;
  border-radius: clamp(10px, 6.4788732394px + 0.9389671362vw, 20px);
  width: clamp(156px, 105.2957746479px + 13.5211267606vw, 300px);
  height: clamp(83px, 55.8873239437px + 7.2300469484vw, 160px);
  display: grid;
  place-items: center;
  padding-top: clamp(10px, 6.4788732394px + 0.9389671362vw, 20px);
  margin: 0 auto 12px;
}
.page-service__contact-box img {
  width: clamp(29px, 19.4929577465px + 2.5352112676vw, 56px);
  height: clamp(31px, 20.7887323944px + 2.7230046948vw, 60px);
  display: block;
}
.page-service__contact-num {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(1.125rem, 0.7288732394rem + 1.6901408451vw, 2.25rem);
  font-weight: 500;
  color: #000;
  line-height: 1.5;
  margin-top: clamp(3px, 2.2957746479px + 0.1877934272vw, 5px);
  display: block;
}
.page-service__contact p {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(0.75rem, 0.661971831rem + 0.3755868545vw, 1rem);
  font-weight: 400;
  color: #000;
  line-height: 1.8;
}

@media screen and (min-width: 1440px) {
  .page-service__purpose h3 {
    margin: 30px 0 20px;
  }
  .page-service__overview ol {
    display: flex;
    gap: 40px;
    margin-bottom: 60px;
  }
  .page-service__overview li {
    margin-bottom: 0;
    flex-direction: column;
    flex: 1;
    padding: 20px 15px 40px;
  }
  .page-service__overview li:last-of-type {
    margin-bottom: 0px;
  }
  .page-service__overview p {
    line-height: 1.8;
  }
  .page-service__price {
    border: 1px solid #a9a9a9;
    border-radius: clamp(10px, 2.9577464789px + 1.8779342723vw, 30px);
    padding: clamp(40px, 29.4366197183px + 2.8169014085vw, 70px) 15px;
    margin-bottom: 50px;
  }
  .page-service__price h2 {
    margin-bottom: clamp(42px, 31.4366197183px + 2.8169014085vw, 72px);
  }
  .page-service__price-table th:nth-child(1) {
    text-align: center;
  }
  .page-service__flow li {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 30px 20px;
  }
  .page-service__flow-step {
    border-bottom: none;
    text-align: center;
    width: 15%;
    padding-bottom: 0;
    margin-bottom: 0;
  }
  .page-service__flow-step::after {
    content: "";
    display: block;
    width: 1px;
    height: 136px;
    background-color: #a9a9a9;
    position: absolute;
    right: 0;
    top: 50%;
    transform: translate(0, -50%);
  }
  .page-service__flow-step img {
    transform: translate(70%, 0);
  }
  .page-service__flow-big {
    display: block;
  }
  .page-service__flow-desc {
    width: 600px;
  }
  .page-service__flow-tel {
    margin: 16px 0 0;
  }
  .page-service__flow-box {
    margin-inline: 0;
  }
  .page-service__contact-flex {
    display: flex;
    gap: 50px;
    justify-content: center;
    align-items: center;
  }
  .page-service__contact-box {
    margin-inline: 0;
  }
}
@media screen and (min-width: 1440px) and (any-hover: hover) {
  .page-service__contact-box:hover img {
    -webkit-animation: hurueru 0.1s infinite;
            animation: hurueru 0.1s infinite;
  }
  @-webkit-keyframes hurueru {
    0% {
      transform: translate(0px, 0px) rotateZ(0deg);
    }
    25% {
      transform: translate(2px, 2px) rotateZ(1deg);
    }
    50% {
      transform: translate(0px, 2px) rotateZ(0deg);
    }
    75% {
      transform: translate(2px, 0px) rotateZ(-1deg);
    }
    100% {
      transform: translate(0px, 0px) rotateZ(0deg);
    }
  }
  @keyframes hurueru {
    0% {
      transform: translate(0px, 0px) rotateZ(0deg);
    }
    25% {
      transform: translate(2px, 2px) rotateZ(1deg);
    }
    50% {
      transform: translate(0px, 2px) rotateZ(0deg);
    }
    75% {
      transform: translate(2px, 0px) rotateZ(-1deg);
    }
    100% {
      transform: translate(0px, 0px) rotateZ(0deg);
    }
  }
}
.youtube {
  margin-block: 40px;
}

.list--onlineshop > .list__item a {
  display: block;
  padding: 10px 0;
  text-align: center;
  border: 1px solid #ddd;
}

.sin-dani-navi .bowrd-wrap {
  position: relative;
  margin: 40px 0 90px;
  padding: 10px 0;
}
@media screen and (min-width: 1440px) {
  .sin-dani-navi .bowrd-wrap {
    margin: 40px 40px 90px;
  }
}

.sin-dani-navi .bowrd-wrap .marker {
  background: linear-gradient(transparent 20%, #364737 20%);
}

.sin-dani-navi .bowrd-wrap::before,
.sin-dani-navi .bowrd-wrap::after {
  display: block;
  content: "";
  position: absolute;
  left: 0;
  width: 100%;
  height: 10px;
}

.sin-dani-navi .bowrd-wrap::before {
  top: 0;
  background: url("../images/danitorilabo/board_t.svg") no-repeat 0 0;
}

.sin-dani-navi .bowrd-wrap::after {
  background: url("../images/danitorilabo/board_b.svg") no-repeat 0 0;
  bottom: 0;
}

.sin-dani-navi .bowrd-wrap .bowrd-inner {
  max-width: 720px;
  padding: 55px;
  background: #0F2412;
  color: #fff;
}
.sin-dani-navi .bowrd-wrap .bowrd-inner > p {
  color: #fff;
}
.sin-dani-navi .bowrd-wrap .bowrd-inner li {
  color: #fff;
}

.sin-dani-navi .bowrd-wrap .bowrd-inner::after {
  display: block;
  content: "";
  position: absolute;
  right: 3%;
  bottom: -50px;
  width: 134px;
  height: 144px;
  background: url("../images/danitorilabo/board_illust.svg") no-repeat 0 0;
  background-size: 100% auto;
  z-index: 99;
}

.sin-dani-navi .image-wrap {
  position: relative;
  overflow: hidden;
  padding: 0;
  margin: 30px 0;
}

.sin-dani-navi .image-wrap img {
  transition-duration: 0.3s;
  width: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  font-family: "object-fit: cover";
  margin: 0;
}

.sin-dani-navi .image-wrap::before,
.sin-dani-navi .image-wrap::after {
  position: absolute;
  left: -1px;
  right: -1px;
  display: block;
  content: "";
  width: 102%;
  height: 30%;
  background-image: url("../images/danitorilabo/thum_cover.svg");
  background-repeat: no-repeat;
  background-size: 100% auto;
}

.sin-dani-navi .image-wrap::before {
  top: -1px;
  background-position: 0 0;
}

.sin-dani-navi .image-wrap::after {
  bottom: -1px;
  background-position: 0 bottom;
  z-index: 99;
}

.sin-dani-navi .aligncenter {
  text-align: center;
}

.sin-dani-navi .alignright {
  text-align: right;
}

.sin-dani-navi .alignleft {
  text-align: left;
}

.sin-dani-navi img.aligncenter,
.sin-dani-navi div.aligncenter {
  margin-left: auto;
  margin-right: auto;
}

.sin-dani-navi img.alignright,
.sin-dani-navi div.alignright {
  margin-left: auto;
}

.sin-dani-navi figcaption,
.sin-dani-navi .wp-caption-text {
  margin: 10px 0 30px;
  font-size: 14px;
}

.tbl-thb {
  border-collapse: collapse;
  font-size: 14px;
  width: 100%;
  background: #EBF6F8;
}

.tbl-thb th, .tbl-thb td {
  padding: 15px;
  border: 2px solid #fff;
}

.tbl-thb tr th:first-child, .tbl-thb tr td:first-child {
  border-left: 0;
}

.tbl-thb tr th:last-child, .tbl-thb tr td:last-child {
  border-right: 0;
}

.tbl-thb th {
  font-weight: bold;
  text-align: left;
  background: #9DD1DE !important;
  color: #fff;
}

.tbl-thb th a {
  color: #fff;
}

.tbl-thb p {
  margin: 0;
}

.tbl-thb.tbl-bg {
  border-bottom: 4px solid #EBF6F8;
}

.tbl-thb.tbl-bg tr:nth-child(2n) th, .tbl-thb.tbl-bg tr:nth-child(2n) {
  background: #fff;
}

.tbl-thb.tbl-thb tr:first-child th {
  border-bottom: 4px double #338A97;
}

@media (min-width: 769px) {
  .sin-dani-navi .col2-wrap {
    display: flex;
    margin: 30px 0;
  }
  .sin-dani-navi .col2-wrap .col2-box {
    width: 47%;
  }
  .sin-dani-navi .col2-wrap .col2-box img {
    max-width: 100%;
  }
  .sin-dani-navi .col2-wrap .col2-box .js-blur-image::after {
    width: 100%;
  }
  .sin-dani-navi .col2-wrap .col2-box:first-child {
    margin-right: 6%;
  }
}
@media (max-width: 768px) {
  .sin-dani-navi blockquote {
    padding: 25px 10px 10px 40px;
  }
  .sin-dani-navi blockquote::before {
    top: 10px;
    left: 10px;
  }
  .sin-dani-navi blockquote::after {
    right: 10px;
    bottom: -40px;
  }
  .sin-dani-navi .bowrd-wrap {
    margin: 40px 0 70px;
  }
  .sin-dani-navi .bowrd-wrap .bowrd-inner {
    padding: 25px 25px 45px 25px;
  }
  .sin-dani-navi .bowrd-wrap .bowrd-inner::after {
    right: -5%;
    bottom: -30px;
    width: 70px;
    height: 76px;
  }
  .sin-dani-navi .col2-wrap {
    margin: 25px 0;
  }
  .sin-dani-navi .col2-wrap .col2-box:first-child {
    margin-bottom: 20px;
  }
  .sin-dani-navi .tbl-scroll {
    overflow: auto;
    white-space: nowrap;
    margin: 25px 0;
  }
  .sin-dani-navi .tbl-scroll table {
    width: 100%;
    margin: 0 0 5px;
  }
  .sin-dani-navi .tbl-scroll .tbl-scroll::-webkit-scrollbar {
    height: 5px;
  }
  .sin-dani-navi .tbl-scroll .tbl-scroll::-webkit-scrollbar-track {
    background: #F1F1F1;
  }
  .sin-dani-navi .tbl-scroll .tbl-scroll::-webkit-scrollbar-thumb {
    background: #BCBCBC;
  }
}
.recruit-fadein {
  opacity: 0;
  transform: translateY(-20px);
  transition: opacity 1s cubic-bezier(0.25, 1, 0.5, 1), transform 1s cubic-bezier(0.25, 1, 0.5, 1);
}
.recruit-fadein.is-visible {
  opacity: 1;
  transform: translateY(0);
}

@-webkit-keyframes tabFadeIn {
  from {
    opacity: 0;
    transform: translateY(10px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@keyframes tabFadeIn {
  from {
    opacity: 0;
    transform: translateY(10px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
.recruit__catch {
  text-align: center;
  max-width: clamp(335px, 30.4225352113px + 81.220657277vw, 1200px);
  padding-top: clamp(40px, 25.9154929577px + 3.7558685446vw, 80px);
  padding-bottom: clamp(50px, 39.4366197183px + 2.8169014085vw, 80px);
  margin-inline: auto;
}
.recruit__catch h2 {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(1.25rem, 0.985915493rem + 1.1267605634vw, 2rem);
  font-weight: 700;
  line-height: 1.8;
  color: #333333;
  margin-bottom: clamp(8px, 1.3098591549px + 1.7840375587vw, 27px);
}
@media screen and (min-width: 1440px) {
  .recruit__catch h2 {
    line-height: 2;
  }
}
.recruit__catch strong {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(1rem, 0.911971831rem + 0.3755868545vw, 1.25rem);
  font-weight: 700;
  line-height: 1.8;
  color: #333333;
  margin-bottom: 27px;
  display: block;
}
.recruit__catch p {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(0.875rem, 0.7429577465rem + 0.5633802817vw, 1.25rem);
  font-weight: 500;
  line-height: 1.8;
  color: #333333;
}
.recruit-profile {
  background-color: #f8f8f8;
  padding-top: clamp(40px, 25.9154929577px + 3.7558685446vw, 80px);
  padding-bottom: clamp(100px, 20.4225352113px + 21.220657277vw, 326px);
}
.recruit-profile__inner {
  max-width: clamp(335px, 30.4225352113px + 81.220657277vw, 1200px);
  margin-inline: auto;
}
.recruit-profile h2 {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(1.25rem, 0.985915493rem + 1.1267605634vw, 2rem);
  font-weight: 700;
  letter-spacing: 0.2em;
  color: #333333;
  position: relative;
  text-align: center;
  margin-bottom: clamp(42px, 31.4366197183px + 2.8169014085vw, 72px);
}
.recruit-profile h2::before {
  content: "";
  display: block;
  width: clamp(57px, 44.676056338px + 3.2863849765vw, 92px);
  height: 2px;
  border-radius: 1px;
  background-color: #277dc9;
  position: absolute;
  top: 130%;
  left: 50%;
  transform: translate(-276%, -50%);
  z-index: 2;
}
.recruit-profile h2::after {
  content: "";
  display: block;
  width: clamp(315px, 248.4507042254px + 17.7464788732vw, 504px);
  height: 2px;
  border-radius: 1px;
  background-color: #2f4091;
  position: absolute;
  top: 130%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 1;
}
.recruit-profile-flex {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 24px clamp(15px, 7.6056338028px + 1.9718309859vw, 36px);
  margin-bottom: clamp(24px, 32.1126760563px + -0.5633802817vw, 30px);
}
.recruit-profile-flex br {
  display: none;
}
.recruit-profile-btn {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(0.875rem, 0.7429577465rem + 0.5633802817vw, 1.25rem);
  font-weight: 500;
  line-height: 1.5;
  color: #2f4091;
  background-color: #fff;
  border: 1px solid #2f4091;
  border-radius: 3px;
  width: clamp(160px, 124.7887323944px + 9.3896713615vw, 260px);
  height: clamp(70px, 66.4788732394px + 0.9389671362vw, 80px);
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}
.recruit-profile-btn-active {
  background-color: #2f4091;
  color: #fff;
  position: relative;
}
.recruit-profile-btn-active::after {
  content: "";
  display: block;
  width: 20px;
  height: 20px;
  border-top: 15px solid #2f4091;
  border-left: 15px solid transparent;
  border-right: 15px solid transparent;
  position: absolute;
  bottom: -15px;
  left: 50%;
  transform: translate(-50%, 0);
}
.recruit-profile-annotation {
  font-size: clamp(0.625rem, 0.4929577465rem + 0.5633802817vw, 1rem);
}
.recruit-profile__container {
  display: none;
  background-color: #fff;
  padding-block: 40px;
  padding-inline: clamp(15px, -11.4084507042px + 7.0422535211vw, 90px);
}
@media screen and (min-width: 1440px) {
  .recruit-profile__container {
    display: none;
    justify-content: center;
    align-items: center;
    gap: 60px;
  }
}
.recruit-profile__container-active {
  display: block;
  -webkit-animation: tabFadeIn 0.3s ease-out forwards;
          animation: tabFadeIn 0.3s ease-out forwards;
}
@media screen and (min-width: 1440px) {
  .recruit-profile__container-active {
    display: flex;
  }
}
.recruit-profile__container-box {
  max-width: 700px;
  margin-bottom: 20px;
  margin-inline: auto;
}
@media screen and (min-width: 1440px) {
  .recruit-profile__container-box {
    max-width: 360px;
  }
}
.recruit-profile__container-box img {
  width: 100%;
  height: auto;
}
.recruit-profile__container table {
  width: 100%;
  border-collapse: collapse;
  max-width: 600px;
}
.recruit-profile__container tr {
  border-bottom: 1px solid #e5e5e5;
}
.recruit-profile__container th,
.recruit-profile__container td {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(0.75rem, 0.661971831rem + 0.3755868545vw, 1rem);
  line-height: 1.5;
  letter-spacing: 0.01em;
  color: #333333;
  vertical-align: middle;
  padding: 10px 0;
}
@media screen and (min-width: 1440px) {
  .recruit-profile__container th,
.recruit-profile__container td {
    padding: 16px 0;
  }
}
.recruit-profile__container th {
  width: 30%;
  font-weight: bold;
  text-align: left;
  padding-right: 16px;
  padding-left: clamp(0px, -7.0422535211px + 1.8779342723vw, 20px);
}
.recruit-profile__container td {
  width: 70%;
  line-height: 1.8;
}
.recruit-group {
  background-color: #F1F6FE;
  padding-top: 10px;
  padding-bottom: 40px;
  position: relative;
}
.recruit-group::before {
  content: "";
  position: absolute;
  top: clamp(-179px, -4.5774647887px + -12.1126760563vw, -50px);
  left: 0;
  width: 100%;
  height: clamp(50px, 4.2253521127px + 12.20657277vw, 180px);
  background-color: #f1f6fe;
  -webkit-clip-path: ellipse(50% 60% at 50% 100%);
          clip-path: ellipse(50% 60% at 50% 100%);
  z-index: 0;
}
.recruit-group__inner {
  max-width: clamp(335px, 30.4225352113px + 81.220657277vw, 1200px);
  margin-inline: auto;
}
.recruit-group__inner h2 {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(1.25rem, 0.985915493rem + 1.1267605634vw, 2rem);
  font-weight: 700;
  letter-spacing: 0.2em;
  color: #333333;
  position: relative;
  text-align: center;
  margin-bottom: clamp(42px, 10.3098591549px + 8.4507042254vw, 132px);
}
.recruit-group__inner h2::before {
  content: "";
  display: block;
  width: clamp(57px, 38.338028169px + 4.9765258216vw, 110px);
  height: 2px;
  border-radius: 1px;
  background-color: #277dc9;
  position: absolute;
  top: 130%;
  left: 50%;
  transform: translate(-276%, -50%);
  z-index: 2;
}
.recruit-group__inner h2::after {
  content: "";
  display: block;
  width: clamp(315px, 214.6478873239px + 26.7605633803vw, 600px);
  height: 2px;
  border-radius: 1px;
  background-color: #2f4091;
  position: absolute;
  top: 130%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 1;
}
.recruit-group__grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: clamp(10px, -3.7323943662px + 3.661971831vw, 49px) clamp(15px, 7.2535211268px + 2.0657276995vw, 37px);
  grid-template-areas: "center center" "year director" "ratio age" "job job";
  margin-bottom: clamp(40px, 25.9154929577px + 3.7558685446vw, 80px);
}
@media screen and (min-width: 1440px) {
  .recruit-group__grid {
    grid-template-columns: repeat(3, 1fr);
    grid-template-areas: "year center director" "ratio age job";
  }
}
.recruit-group__grid > div:not(.recruit-group__item-center) {
  background-color: #fff;
  border-radius: 5px;
  padding: 8px 10px;
  text-align: center;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.03);
  width: clamp(160px, 84.2957746479px + 20.1877934272vw, 375px);
  margin-inline: auto;
}
.recruit-group__item-center {
  grid-area: center;
  display: flex;
  justify-content: center;
}
.recruit-group__item-center .recruit-group__circle {
  background-color: #2f4091;
  color: #fff;
  width: clamp(120px, 63.661971831px + 15.0234741784vw, 280px);
  height: clamp(120px, 63.661971831px + 15.0234741784vw, 280px);
  border-radius: 50%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
}
@media screen and (min-width: 1440px) {
  .recruit-group__item-center .recruit-group__circle {
    margin-top: -55px;
  }
}
.recruit-group__item-center .recruit-group__en {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(0.4125rem, 0.2276408451rem + 0.7887323944vw, 0.9375rem);
  font-weight: 500;
}
.recruit-group__item-center .recruit-group__num {
  font-family: "Roboto", sans-serif;
  font-optical-sizing: auto;
  font-variation-settings: "wdth" 100;
  font-size: clamp(1.625rem, 0.8327464789rem + 3.3802816901vw, 3.875rem);
  font-weight: 700;
}
.recruit-group__item-center .recruit-group__text {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(0.625rem, 0.3169014085rem + 1.3145539906vw, 1.5rem);
  font-weight: 700;
  margin-bottom: clamp(8px, 4.1267605634px + 1.0328638498vw, 19px);
}
.recruit-group__item-center .recruit-group__icon {
  width: clamp(68px, 35.6056338028px + 8.6384976526vw, 160px);
  height: clamp(26px, 14.0281690141px + 3.1924882629vw, 60px);
}
.recruit-group__item-year {
  grid-area: year;
  height: clamp(106px, 55.2957746479px + 13.5211267606vw, 250px);
}
.recruit-group__item-year .recruit-group__title {
  font-size: clamp(12.8px, 6.7436619718px + 1.6150234742vw, 30px);
  font-weight: bold;
  letter-spacing: 0.2em;
  color: #333333;
  margin-bottom: 7.5px;
}
.recruit-group__item-year .recruit-group__number {
  font-family: "Manrope", sans-serif;
  font-size: clamp(2.125rem, 1.1126760563rem + 4.3192488263vw, 5rem);
  font-weight: bold;
  line-height: 1;
  color: #333333;
}
.recruit-group__item-year .recruit-group__unit {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(1.5625rem, 0.7922535211rem + 3.2863849765vw, 3.75rem);
  font-weight: bold;
  color: #333333;
}
.recruit-group__item-director {
  grid-area: director;
  height: clamp(106px, 55.2957746479px + 13.5211267606vw, 250px);
  padding-top: 15px;
}
.recruit-group__item-director .recruit-group__title {
  font-size: clamp(10px, 5.0704225352px + 1.3145539906vw, 24px);
  font-weight: bold;
  letter-spacing: 0.1em;
  color: #333333;
  margin-bottom: 8px;
}
.recruit-group__item-director .recruit-group__title span {
  font-size: clamp(9.4px, 4.9633802817px + 1.1830985915vw, 22px);
  letter-spacing: 0.2em;
}
.recruit-group__item-director .recruit-group__content {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: clamp(6px, 2.8309859155px + 0.8450704225vw, 15px);
}
.recruit-group__item-director .recruit-group__content .recruit-group__icon-woman {
  width: clamp(35px, 18.4507042254px + 4.4131455399vw, 82px);
  height: clamp(42px, 21.9295774648px + 5.3521126761vw, 99px);
}
.recruit-group__item-director .recruit-group__content .recruit-group__number {
  font-family: "Manrope", sans-serif;
  font-size: clamp(2.125rem, 1.1126760563rem + 4.3192488263vw, 5rem);
  font-weight: bold;
  color: #333333;
}
.recruit-group__item-director .recruit-group__content .recruit-group__unit {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(1.25rem, 0.6338028169rem + 2.6291079812vw, 3rem);
  font-weight: bold;
  color: #333333;
}
.recruit-group__item-ratio {
  grid-area: ratio;
  height: clamp(136px, 71.2112676056px + 17.2769953052vw, 320px);
}
.recruit-group__item-ratio .recruit-group__title {
  font-size: clamp(10px, 5.0704225352px + 1.3145539906vw, 24px);
  font-weight: bold;
  letter-spacing: 0.2em;
  color: #333333;
  margin-bottom: 5px;
}
.recruit-group__item-ratio .recruit-group__title span {
  font-size: clamp(9.4px, 4.9633802817px + 1.1830985915vw, 22px);
  letter-spacing: 0.2em;
}
.recruit-group__item-ratio .recruit-group__img {
  width: clamp(140px, 69.5774647887px + 18.779342723vw, 340px);
  height: clamp(85px, 37.4647887324px + 12.676056338vw, 220px);
}
.recruit-group__item-ratio .recruit-group__img img {
  width: 100%;
  height: auto;
}
.recruit-group__item-age {
  grid-area: age;
  height: clamp(136px, 71.2112676056px + 17.2769953052vw, 320px);
}
.recruit-group__item-age .recruit-group__title {
  font-size: clamp(10px, 5.0704225352px + 1.3145539906vw, 24px);
  font-weight: bold;
  letter-spacing: 0.2em;
  color: #333333;
  margin-bottom: 5px;
}
.recruit-group__item-age .recruit-group__title span {
  font-size: clamp(9.4px, 4.9633802817px + 1.1830985915vw, 22px);
  letter-spacing: 0.2em;
}
.recruit-group__item-age .recruit-group__img {
  width: clamp(101px, 52.7605633803px + 12.8638497653vw, 238px);
  height: clamp(91px, 47.6901408451px + 11.5492957746vw, 214px);
}
.recruit-group__item-age .recruit-group__img img {
  width: 100%;
  height: auto;
}
.recruit-group__item-job {
  grid-area: job;
  height: clamp(136px, 71.2112676056px + 17.2769953052vw, 320px);
  margin: 0 auto;
}
.recruit-group__item-job .recruit-group__title {
  font-size: clamp(10px, 5.0704225352px + 1.3145539906vw, 24px);
  font-weight: bold;
  letter-spacing: 0.2em;
  color: #333333;
  margin-bottom: clamp(5px, 3.2394366197px + 0.4694835681vw, 10px);
}
.recruit-group__item-job .recruit-group__title span {
  font-size: clamp(9.4px, 4.9633802817px + 1.1830985915vw, 22px);
  letter-spacing: 0.2em;
}
.recruit-group__item-job .recruit-group__img {
  width: clamp(150px, 79.5774647887px + 18.779342723vw, 350px);
  height: clamp(85px, 39.5774647887px + 12.1126760563vw, 214px);
}
.recruit-group__item-job .recruit-group__img img {
  width: 100%;
  height: auto;
}
.recruit-group__sec2-flex {
  display: flex;
  justify-content: center;
  gap: clamp(10px, -0.5633802817px + 2.8169014085vw, 40px);
  margin-bottom: clamp(40px, 25.9154929577px + 3.7558685446vw, 80px);
}
.recruit-group__circle {
  background-color: #2f4091;
  color: #fff;
  width: clamp(120px, 63.661971831px + 15.0234741784vw, 280px);
  height: clamp(120px, 63.661971831px + 15.0234741784vw, 280px);
  border-radius: 50%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  margin-inline: auto;
  margin-bottom: clamp(10px, 2.9577464789px + 1.8779342723vw, 30px);
}
.recruit-group__circle .recruit-group__en {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(0.4125rem, 0.2276408451rem + 0.7887323944vw, 0.9375rem);
  font-weight: 500;
}
.recruit-group__circle .recruit-group__num {
  font-family: "Roboto", sans-serif;
  font-optical-sizing: auto;
  font-variation-settings: "wdth" 100;
  font-size: clamp(1.625rem, 0.8327464789rem + 3.3802816901vw, 3.875rem);
  font-weight: 700;
}
.recruit-group__circle .recruit-group__text {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(0.625rem, 0.3169014085rem + 1.3145539906vw, 1.5rem);
  font-weight: 700;
  margin-bottom: clamp(8px, 4.1267605634px + 1.0328638498vw, 19px);
}
.recruit-group__circle .recruit-group__icon {
  width: clamp(68px, 35.6056338028px + 8.6384976526vw, 160px);
  height: clamp(34px, 24.8450704225px + 2.441314554vw, 60px);
}
.recruit-group__item-holiday {
  background-color: #fff;
  border-radius: 5px;
  padding: 8px 10px;
  text-align: center;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.03);
  width: clamp(162px, 14.8169014085px + 39.2488262911vw, 580px);
  height: clamp(70px, 6.6197183099px + 16.9014084507vw, 250px);
}
.recruit-group__item-holiday .recruit-group__title {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(0.8125rem, 0.0422535211rem + 3.2863849765vw, 3rem);
  font-weight: 700;
  letter-spacing: 0.2em;
  color: #2f4091;
  margin-bottom: clamp(6px, 0.7183098592px + 1.4084507042vw, 21px);
}
.recruit-group__item-holiday .recruit-group__title span {
  font-family: "Manrope", sans-serif;
  font-size: clamp(1.375rem, 0.0985915493rem + 5.4460093897vw, 5rem);
  letter-spacing: 0.1em;
}
.recruit-group__item-holiday ul {
  text-align: left;
}
.recruit-group__item-holiday li {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(0.29375rem, 0.0230633803rem + 1.1549295775vw, 1.0625rem);
  font-weight: 700;
  margin-bottom: clamp(3px, 0.5352112676px + 0.6572769953vw, 10px);
}
.recruit-group__item-previousy {
  background-color: #fff;
  border-radius: 5px;
  padding: 8px 10px;
  text-align: center;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.03);
  width: clamp(162px, 14.8169014085px + 39.2488262911vw, 580px);
  height: clamp(70px, 6.6197183099px + 16.9014084507vw, 250px);
}
.recruit-group__item-previousy .recruit-group__title {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(0.8125rem, 0.0422535211rem + 3.2863849765vw, 3rem);
  font-weight: 700;
  letter-spacing: 0.2em;
  color: #2f4091;
}
.recruit-group__item-previousy .recruit-group__title-min {
  font-size: clamp(0.41875rem, 0.038028169rem + 1.6244131455vw, 1.5rem);
  color: #333333;
  display: block;
  margin-left: clamp(-70px, -2.3943661972px + -4.6948356808vw, -20px);
}
.recruit-group__item-previousy p {
  font-family: "Manrope", sans-serif;
  font-size: clamp(0.41875rem, 0.038028169rem + 1.6244131455vw, 1.5rem);
  font-weight: 700;
  letter-spacing: 0.1em;
  color: #333333;
}
.recruit-group__item-previousy-bg {
  font-size: clamp(1.375rem, 0.0985915493rem + 5.4460093897vw, 5rem);
  color: #2f4091;
}
.recruit-group__item-previousy .recruit-group__item-previousy-st {
  font-size: clamp(0.8125rem, 0.0422535211rem + 3.2863849765vw, 3rem);
  color: #2f4091;
}
.recruit-group__sec3 .recruit-group__circle img {
  width: clamp(43px, 22.9295774648px + 5.3521126761vw, 100px);
  height: clamp(43px, 22.9295774648px + 5.3521126761vw, 100px);
}
.recruit-group__sec3 .recruit-group__text {
  letter-spacing: 0.2em;
  margin-bottom: 0;
}
.recruit-group__sec3-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: clamp(10px, -4.0845070423px + 3.7558685446vw, 50px) clamp(11px, -3.7887323944px + 3.9436619718vw, 53px);
  grid-template-areas: "item-l item-l half-day" "travel child licence" "pay care cond" "trip discount events";
}
@media screen and (min-width: 1440px) {
  .recruit-group__sec3-grid {
    grid-template-columns: repeat(4, 1fr);
    grid-template-areas: "item-l item-l half-day travel" " child licence pay care" " cond trip discount events";
  }
}
.recruit-group__sec3-item {
  background-color: #fff;
  width: clamp(104px, 49.0704225352px + 14.6478873239vw, 260px);
  height: clamp(94px, 44.3521126761px + 13.2394366197vw, 235px);
  border-radius: clamp(5px, 3.2394366197px + 0.4694835681vw, 10px);
  display: grid;
  place-items: center;
  text-align: center;
  padding-top: clamp(15px, 9.7183098592px + 1.4084507042vw, 30px);
}
.recruit-group__sec3-item span,
.recruit-group__sec3-item p {
  font-family: "Manrope", sans-serif;
  font-size: clamp(0.6rem, 0.2830985915rem + 1.3521126761vw, 1.5rem);
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.1em;
  color: #333333;
}
.recruit-group__sec3-item--half-day {
  grid-area: half-day;
}
.recruit-group__sec3-item--half-day .recruit-group__sec3-item-box {
  width: clamp(49px, 22.5915492958px + 7.0422535211vw, 124px);
  height: clamp(52px, 24.1830985915px + 7.4178403756vw, 131px);
}
.recruit-group__sec3-item--travel {
  grid-area: travel;
}
.recruit-group__sec3-item--travel .recruit-group__sec3-item-box {
  width: clamp(46px, 22.0563380282px + 6.3849765258vw, 114px);
  height: clamp(53px, 24.8309859155px + 7.5117370892vw, 133px);
}
.recruit-group__sec3-item--childcare {
  grid-area: child;
}
.recruit-group__sec3-item--childcare .recruit-group__sec3-item-box {
  width: clamp(45px, 21.4084507042px + 6.2910798122vw, 112px);
  height: clamp(48px, 23px + 6.6666666667vw, 119px);
}
.recruit-group__sec3-item--licence {
  grid-area: licence;
}
.recruit-group__sec3-item--licence .recruit-group__sec3-item-box {
  width: clamp(64px, 30.5492957746px + 8.9201877934vw, 159px);
  height: clamp(46px, 22.0563380282px + 6.3849765258vw, 114px);
}
.recruit-group__sec3-item--severance-pay {
  grid-area: pay;
}
.recruit-group__sec3-item--severance-pay .recruit-group__sec3-item-box {
  width: clamp(46px, 21.3521126761px + 6.5727699531vw, 116px);
  height: clamp(40px, 18.5211267606px + 5.7276995305vw, 101px);
}
.recruit-group__sec3-item--care {
  grid-area: care;
}
.recruit-group__sec3-item--care .recruit-group__sec3-item-box {
  width: clamp(52px, 24.8873239437px + 7.2300469484vw, 129px);
  height: clamp(48px, 22.2957746479px + 6.8544600939vw, 121px);
}
.recruit-group__sec3-item--condolence {
  grid-area: cond;
}
.recruit-group__sec3-item--condolence .recruit-group__sec3-item-box {
  width: clamp(38px, 17.9295774648px + 5.3521126761vw, 95px);
  height: clamp(49px, 23.2957746479px + 6.8544600939vw, 122px);
}
.recruit-group__sec3-item--company-trip {
  grid-area: trip;
}
.recruit-group__sec3-item--company-trip .recruit-group__sec3-item-box {
  width: clamp(31px, 15.1549295775px + 4.2253521127vw, 76px);
  height: clamp(52px, 24.8873239437px + 7.2300469484vw, 129px);
}
.recruit-group__sec3-item--discount {
  grid-area: discount;
}
.recruit-group__sec3-item--discount .recruit-group__sec3-item-box {
  width: clamp(58px, 27.3661971831px + 8.1690140845vw, 145px);
  height: clamp(42px, 19.8169014085px + 5.9154929577vw, 105px);
}
.recruit-group__sec3-item--events {
  grid-area: events;
}
.recruit-group__sec3-item--events .recruit-group__sec3-item-box {
  width: clamp(53px, 24.8309859155px + 7.5117370892vw, 133px);
  height: clamp(48px, 23px + 6.6666666667vw, 119px);
}
.recruit-group__sec3-item img {
  width: 100%;
  height: auto;
}
.recruit-group__sec3-item-l {
  background-color: #fff;
  width: clamp(219px, 94.3521126761px + 33.2394366197vw, 573px);
  height: clamp(93px, 42.6478873239px + 13.4272300469vw, 236px);
  border-radius: clamp(5px, 3.2394366197px + 0.4694835681vw, 10px);
  position: relative;
  padding: clamp(15px, 6.9014084507px + 2.1596244131vw, 38px) clamp(30px, 12.3943661972px + 4.6948356808vw, 80px);
  grid-area: item-l;
  margin-inline: auto;
}
.recruit-group__sec3-item-l .recruit-group__sec3-item-box {
  position: absolute;
  width: clamp(45px, 21.0563380282px + 6.3849765258vw, 113px);
  height: clamp(37px, 16.9295774648px + 5.3521126761vw, 94px);
  right: clamp(25px, 19.7183098592px + 1.4084507042vw, 40px);
  bottom: clamp(7px, 4.1830985915px + 0.7511737089vw, 15px);
}
.recruit-group__sec3-item-l .recruit-group__sec3-item-box img {
  width: 100%;
  height: auto;
}
.recruit-group__sec3-item-row:first-child {
  margin-bottom: clamp(10px, 5.0704225352px + 1.3145539906vw, 24px);
}
.recruit-group__sec3-item-term {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(0.6875rem, 0.3133802817rem + 1.5962441315vw, 1.75rem);
  font-weight: 700;
  letter-spacing: 0.2em;
  color: #333333;
  position: relative;
}
.recruit-group__sec3-item-term::before {
  content: "";
  display: block;
  width: clamp(8px, 3.7746478873px + 1.1267605634vw, 20px);
  height: clamp(8px, 3.7746478873px + 1.1267605634vw, 20px);
  border-radius: 50%;
  background-color: #2f4091;
  position: absolute;
  left: clamp(-30px, -5.661971831px + -1.6901408451vw, -12px);
  top: 50%;
  transform: translate(0, -50%);
}
.recruit-group__sec3-item-desc {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(0.4375rem, 0.1954225352rem + 1.0328638498vw, 1.125rem);
  font-weight: 500;
  line-height: 1.8;
  color: #333333;
  display: block;
}

@-webkit-keyframes modalBounce {
  0%, 100% {
    transform: translate(-50%, 0);
  }
  50% {
    transform: translate(-50%, -8px);
  }
}

@keyframes modalBounce {
  0%, 100% {
    transform: translate(-50%, 0);
  }
  50% {
    transform: translate(-50%, -8px);
  }
}
.recruit-interview {
  background: no-repeat url(../images/interview-bg.webp) center/cover;
  padding-top: clamp(50px, 32.3943661972px + 4.6948356808vw, 100px);
  padding-bottom: clamp(40px, 18.8732394366px + 5.6338028169vw, 100px);
  overflow: hidden;
}
.recruit-interview h2 {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(1.25rem, 0.985915493rem + 1.1267605634vw, 2rem);
  font-weight: 700;
  letter-spacing: 0.2em;
  color: #333333;
  position: relative;
  text-align: center;
  margin-bottom: clamp(60px, 45.9154929577px + 3.7558685446vw, 100px);
}
.recruit-interview h2::before {
  content: "";
  display: block;
  width: clamp(57px, 44.676056338px + 3.2863849765vw, 92px);
  height: 2px;
  border-radius: 1px;
  background-color: #277dc9;
  position: absolute;
  top: 130%;
  left: 50%;
  transform: translate(-276%, -50%);
  z-index: 2;
}
.recruit-interview h2::after {
  content: "";
  display: block;
  width: clamp(315px, 248.4507042254px + 17.7464788732vw, 504px);
  height: 2px;
  border-radius: 1px;
  background-color: #2f4091;
  position: absolute;
  top: 130%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 1;
}
.recruit-interview__item {
  width: clamp(200px, 129.5774647887px + 18.779342723vw, 400px) !important;
  background-color: #fff;
  margin-inline: clamp(15px, 8.838028169px + 1.6431924883vw, 32.5px);
  transition: scale 0.6s ease;
  scale: 0.8;
}
.recruit-interview__item.slick-center {
  scale: 1;
}
.recruit-interview__trigger {
  width: 100%;
  cursor: pointer;
}
.recruit-interview__box {
  background: no-repeat url(../images/interview-item-bg.webp) center/cover;
  border: 1px solid #2f4091;
  border-radius: clamp(8px, 3.7746478873px + 1.1267605634vw, 20px);
  margin-bottom: clamp(11px, 0.7887323944px + 2.7230046948vw, 40px);
  position: relative;
  display: flex;
  align-items: flex-end;
  justify-content: center;
  height: clamp(160px, 117.7464788732px + 11.2676056338vw, 280px);
}
.recruit-interview__box-icon {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(0.625rem, 0.4049295775rem + 0.9389671362vw, 1.25rem);
  font-weight: 700;
  line-height: 1.8;
  letter-spacing: 0.1em;
  color: #2f4091;
  display: grid;
  place-items: center;
  background-color: #f1f6fe;
  border: 0.5px solid #2f4091;
  border-radius: 50%;
  width: clamp(48px, 31.0985915493px + 4.5070422535vw, 96px);
  height: clamp(48px, 31.0985915493px + 4.5070422535vw, 96px);
  position: absolute;
  top: -24px;
  left: -16px;
}
.recruit-interview__box img {
  max-width: 75%;
  height: auto;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
}
.recruit-interview__box .recruit-interview__box-n2 {
  max-width: 90%;
}
.recruit-interview__box .recruit-interview__box-n5 {
  max-width: 65%;
}
.recruit-interview__desc {
  padding-inline: clamp(10px, 4.3661971831px + 1.5023474178vw, 26px);
}
.recruit-interview__desc p {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(0.875rem, 0.7429577465rem + 0.5633802817vw, 1.25rem);
  font-weight: 700;
  line-height: 1.8;
  color: #333333;
  padding-bottom: 20px;
  text-align: left;
}
.recruit-interview__profile {
  border-top: 2px solid #2f4091;
  padding-top: clamp(16px, 13.1830985915px + 0.7511737089vw, 24px);
}
.recruit-interview__profile p {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(0.875rem, 0.8309859155rem + 0.1877934272vw, 1rem);
  font-weight: 700;
  line-height: 1.5;
  color: #333333;
}
.recruit-interview__profile .recruit-interview__profile-name {
  font-size: clamp(0.75rem, 0.661971831rem + 0.3755868545vw, 1rem);
  font-weight: 400;
}
.recruit-interview .slick-list {
  overflow: visible;
}
.recruit-interview .slick-center .recruit-interview__item {
  scale: 1;
}
.recruit-interview .slick-arrow {
  position: absolute;
  top: 50%;
  transform: translateY(-270%);
  z-index: 100;
  width: clamp(20px, 12.9577464789px + 1.8779342723vw, 40px);
  height: clamp(20px, 12.9577464789px + 1.8779342723vw, 40px);
  background-color: #fff;
  border: 2px solid #2f4091;
  border-radius: 50%;
  cursor: pointer;
  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1);
  transition: opacity 0.3s ease, background-color 0.3s ease;
  display: grid;
  place-items: center;
}
.recruit-interview .slick-arrow:hover {
  background-color: #2f4091;
}
.recruit-interview .slick-arrow:hover::before {
  border-color: #fff;
}
@media screen and (max-width: 767px) {
  .recruit-interview .slick-arrow {
    display: none !important;
  }
}
.recruit-interview .slick-arrow::before {
  content: "";
  display: block;
  width: 12px;
  height: 12px;
  border-top: 3px solid #2f4091;
  border-left: 3px solid #2f4091;
  transition: border-color 0.3s ease;
}
.recruit-interview .slick-prev {
  left: 2%;
  transform: translate(0%, -400%);
}
.recruit-interview .slick-prev::before {
  transform: rotate(-45deg);
  margin-left: 4px;
}
.recruit-interview .slick-next {
  /* 画面のド真ん中(50%)から、右へ同じ距離だけ移動！ */
  right: 2%;
  transform: translate(0%, -400%);
}
.recruit-interview .slick-next::before {
  transform: rotate(135deg);
  margin-right: 4px;
}

dialog:not([open]) {
  display: none !important;
}

.recruit-modal {
  overflow: hidden;
  border: none;
  padding: 0;
  margin: auto;
  background: transparent;
  width: 90%;
  max-width: 980px;
  max-height: 80dvh;
  display: flex;
  flex-direction: column;
  opacity: 0;
  transform: translateY(20px);
  transition: opacity 0.3s ease, transform 0.3s ease;
}
.recruit-modal[open] {
  opacity: 1;
  transform: translateY(0);
}
.recruit-modal::-webkit-backdrop {
  background: rgba(0, 0, 0, 0.6);
  -webkit-backdrop-filter: blur(3px);
          backdrop-filter: blur(3px);
}
.recruit-modal::backdrop {
  background: rgba(0, 0, 0, 0.6);
  -webkit-backdrop-filter: blur(3px);
          backdrop-filter: blur(3px);
}
.recruit-modal__inner {
  background-color: #fff;
  padding-inline: clamp(15px, 2.676056338px + 3.2863849765vw, 50px);
  padding-top: clamp(40px, 18.8732394366px + 5.6338028169vw, 100px);
  padding-bottom: clamp(60px, 45.9154929577px + 3.7558685446vw, 100px);
  position: relative;
  overflow-y: auto;
  overflow-x: hidden;
  flex: 1 1 auto;
}
.recruit-modal__inner > h3 {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(1.125rem, 0.948943662rem + 0.7511737089vw, 1.625rem);
  color: #2f4091;
  font-weight: bold;
  line-height: 1.8;
  margin-bottom: clamp(20px, 16.4788732394px + 0.9389671362vw, 30px);
}
.recruit-modal button[aria-label=閉じる] {
  position: absolute;
  top: 15px;
  right: 30px;
  font-size: 2rem;
  line-height: 1;
  cursor: pointer;
  color: #333;
  padding: 0;
  z-index: 10;
}
.recruit-modal__flex {
  display: flex;
  flex-direction: column;
  gap: clamp(20px, 13.661971831px + 1.6901408451vw, 38px);
  margin-bottom: clamp(30px, 22.9577464789px + 1.8779342723vw, 50px);
}
@media screen and (min-width: 1440px) {
  .recruit-modal__flex {
    flex-direction: row;
    align-items: center;
  }
}
.recruit-modal__box {
  max-width: clamp(345px, 304.5070422535px + 10.7981220657vw, 460px);
  height: clamp(230px, 203.2394366197px + 7.1361502347vw, 306px);
  box-shadow: 2px 2px 10px rgba(0, 0, 0, 0.25);
}
.recruit-modal__box img {
  width: 100%;
  height: auto;
  -o-object-fit: cover;
     object-fit: cover;
}
.recruit-modal__desc-head,
.recruit-modal__desc span {
  font-family: "Noto Sans JP", sans-serif;
  display: inline-block;
  background-color: #2f4091;
  color: #fff;
  font-size: 1rem;
  font-weight: 500;
  line-height: 1.8;
  letter-spacing: 0.2em;
  padding: 4px 30px;
  border-radius: 50px;
  margin-bottom: 8px;
}
.recruit-modal__desc .recruit-modal__desc-middle, .recruit-modal__desc .recruit-modal__desc-foot {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 500;
  line-height: 1.8;
  font-size: 1rem;
}
@media screen and (min-width: 1440px) {
  .recruit-modal__desc .recruit-modal__desc-middle, .recruit-modal__desc .recruit-modal__desc-foot {
    font-size: 1.375rem;
    margin-bottom: 0;
  }
}
@media screen and (min-width: 1440px) {
  .recruit-modal__desc .recruit-modal__desc-foot {
    font-size: 1.125rem;
    margin-bottom: 16px;
  }
}
.recruit-modal__desc p {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 1rem;
  line-height: 1.8;
  margin-bottom: 10px;
}
.recruit-modal__desc p:last-child {
  margin-bottom: 0;
  font-size: 0.875rem;
}
.recruit-modal__content > h3 {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(1.5rem, 1.323943662rem + 0.7511737089vw, 2rem);
  color: #347eba;
  text-align: center;
  margin-bottom: 20px;
  font-weight: bold;
}
.recruit-modal__content section {
  border: 1px solid #d9d9d9;
  border-radius: clamp(10px, 6.4788732394px + 0.9389671362vw, 20px);
  padding: clamp(10px, 6.4788732394px + 0.9389671362vw, 20px);
  margin-bottom: 30px;
}
@media screen and (min-width: 1440px) {
  .recruit-modal__content section {
    display: flex;
    gap: 20px;
  }
}
.recruit-modal__content section:last-child {
  margin-bottom: 0;
}
.recruit-modal__content section h4 {
  color: #2f4091;
  font-size: clamp(0.875rem, 0.8309859155rem + 0.1877934272vw, 1rem);
  font-weight: bold;
  line-height: 1.8;
  margin-bottom: 20px;
  text-align: center;
}
@media screen and (min-width: 1440px) {
  .recruit-modal__content section h4 {
    text-align: left;
    width: 30%;
    flex-shrink: 0;
  }
}
.recruit-modal__content section h4 span {
  display: block;
  font-size: clamp(1rem, 0.823943662rem + 0.7511737089vw, 1.5rem);
  color: #347eba;
  margin-bottom: 5px;
}
.recruit-modal__content section p {
  font-size: 0.875rem;
  line-height: 1.8;
  margin-bottom: 1em;
}
.recruit-modal__content section p:last-child {
  margin-bottom: 0;
}
.recruit-modal__scroll-hint {
  position: absolute;
  bottom: 20px;
  left: 50%;
  transform: translateX(-50%);
  background-color: rgba(255, 255, 255, 0.9);
  color: #2f4091;
  font-size: clamp(1rem, 0.823943662rem + 0.7511737089vw, 1.5rem);
  font-weight: bold;
  padding: 6px 16px;
  border-radius: 20px;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
  pointer-events: none;
  z-index: 10;
  white-space: nowrap;
  transition: opacity 0.3s ease, visibility 0.3s ease;
  -webkit-animation: modalBounce 2s infinite ease-in-out;
          animation: modalBounce 2s infinite ease-in-out;
}

.recruit-new {
  position: relative;
  background-color: #f1f6fe;
  padding-top: clamp(60px, 45.9154929577px + 3.7558685446vw, 100px);
  padding-bottom: clamp(50px, 32.3943661972px + 4.6948356808vw, 100px);
  z-index: 10;
}
.recruit-new__inner {
  background-color: #fff;
  max-width: clamp(345px, 86.1971830986px + 69.014084507vw, 1080px);
  margin-inline: auto;
  border-radius: clamp(10px, 6.4788732394px + 0.9389671362vw, 20px);
  padding-top: clamp(30px, 5.3521126761px + 6.5727699531vw, 100px);
  padding-bottom: clamp(40px, 18.8732394366px + 5.6338028169vw, 100px);
}
.recruit-new h2 {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(1.25rem, 0.8098591549rem + 1.8779342723vw, 2.5rem);
  font-weight: 500;
  letter-spacing: 0.2em;
  color: #333333;
  text-align: center;
  margin-bottom: 30px;
}
.recruit-new a {
  display: block;
  background-color: #2f4091;
  width: clamp(260px, 210.7042253521px + 13.1455399061vw, 400px);
  height: clamp(60px, 38.8732394366px + 5.6338028169vw, 120px);
  border-radius: 10px;
  display: grid;
  place-items: center;
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(1.25rem, 0.985915493rem + 1.1267605634vw, 2rem);
  font-weight: 700;
  color: #fff;
  margin-inline: auto;
  position: relative;
  overflow: hidden;
}

.recruit-mid {
  position: relative;
  z-index: 10;
  background-color: #f1f6fe;
  padding-bottom: clamp(100px, 100px + 0vw, 100px);
}
.recruit-mid__inner {
  background-color: #fff;
  max-width: clamp(345px, 86.1971830986px + 69.014084507vw, 1080px);
  margin-inline: auto;
  border-radius: clamp(10px, 6.4788732394px + 0.9389671362vw, 20px);
  padding-top: clamp(30px, 5.3521126761px + 6.5727699531vw, 100px);
  padding-bottom: 40px;
  padding-inline: 10px;
}
.recruit-mid__heading {
  width: clamp(315px, 214.6478873239px + 26.7605633803vw, 600px);
  text-align: center;
  padding-bottom: 20px;
  margin-inline: auto;
  margin-bottom: clamp(30px, 19.4366197183px + 2.8169014085vw, 60px);
  border-bottom: 2px solid #2f4091;
  position: relative;
}
.recruit-mid__heading::after {
  content: "";
  position: absolute;
  bottom: -18px;
  left: 50%;
  width: 16px;
  height: 16px;
  border-bottom: 2px solid #2b4296;
  border-right: 2px solid #2b4296;
  background-color: #ffffff;
  transform: translate(-50%, -50%) rotate(45deg);
}
.recruit-mid h2 {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(1.25rem, 0.8098591549rem + 1.8779342723vw, 2.5rem);
  font-weight: 500;
  letter-spacing: 0.2em;
  color: #333333;
  text-align: center;
  margin-bottom: clamp(20px, 12.9577464789px + 1.8779342723vw, 40px);
}
.recruit-mid p {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(1rem, 0.8679577465rem + 0.5633802817vw, 1.375rem);
  font-weight: 400;
  color: #333333;
}
.recruit-mid__item {
  width: clamp(325px, 129.5774647887px + 52.1126760563vw, 880px);
  border: 1px solid #a9a9a9;
  border-radius: 10px;
  margin-bottom: clamp(24px, 21.8873239437px + 0.5633802817vw, 30px);
  margin-inline: auto;
  padding-top: clamp(10px, 8.2394366197px + 0.4694835681vw, 15px);
  padding-bottom: clamp(15px, 13.2394366197px + 0.4694835681vw, 20px);
  overflow: hidden;
}
.recruit-mid__trigger {
  width: 100%;
  cursor: pointer;
  text-align: center;
  padding-left: clamp(0px, -7.0422535211px + 1.8779342723vw, 20px);
}
@media screen and (min-width: 1440px) {
  .recruit-mid__trigger {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    padding-right: 60px;
  }
}
.recruit-mid__trigger p {
  margin-left: auto;
}
.recruit-mid__trigger-label {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(0.75rem, 0.661971831rem + 0.3755868545vw, 1rem);
  font-weight: bold;
  line-height: 1.5;
  letter-spacing: 0.1em;
  color: #333;
  margin-right: 15px;
  padding-left: clamp(10px, 6.4788732394px + 0.9389671362vw, 20px);
}
@media screen and (min-width: 1440px) {
  .recruit-mid__trigger-label {
    width: 14%;
    padding-left: 0;
  }
}
.recruit-mid__trigger-title {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(0.75rem, 0.661971831rem + 0.3755868545vw, 1rem);
  font-weight: bold;
  line-height: 1.8;
  color: #333;
  display: inline-block;
}
@media screen and (min-width: 1440px) {
  .recruit-mid__trigger-title {
    width: 36%;
  }
}
.recruit-mid__trigger-icon {
  width: 240px;
  height: 40px;
  margin-top: 12px;
  margin-inline: auto;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 30px;
  background-color: #2f4091;
  color: #ffffff;
  padding: 13px 10px 13px 40px;
  border-radius: 50px;
  border: 1px solid #2f4091;
  transition: all 0.3s ease;
}
@media screen and (min-width: 1440px) {
  .recruit-mid__trigger-icon {
    margin-top: 0;
    margin-inline: initial;
  }
}
.recruit-mid__trigger-text {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 0.75rem;
  font-weight: bold;
}
.recruit-mid__trigger-circle {
  position: relative;
  width: 20px;
  height: 20px;
  background-color: #ffffff;
  border-radius: 50%;
  flex-shrink: 0;
  border: 1px solid transparent;
  transition: all 0.3s ease;
}
.recruit-mid__trigger-circle::before, .recruit-mid__trigger-circle::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  background-color: #2f4091;
  transform: translate(-50%, -50%);
  transition: transform 0.3s ease;
}
.recruit-mid__trigger-circle::before {
  width: 12px;
  height: 2px;
}
.recruit-mid__trigger-circle::after {
  width: 2px;
  height: 12px;
}
.recruit-mid__trigger[aria-expanded=true] {
  border-bottom: 1px solid #eee;
  padding-bottom: 10px;
}
.recruit-mid__trigger[aria-expanded=true] .recruit-mid__trigger-icon {
  background-color: #ffffff;
  color: #2f4091;
}
.recruit-mid__trigger[aria-expanded=true] .recruit-mid__trigger-circle {
  background-color: #ffffff;
  border-color: #2f4091;
}
.recruit-mid__trigger[aria-expanded=true] .recruit-mid__trigger-circle::before {
  transform: translate(-50%, -50%) rotate(45deg);
}
.recruit-mid__trigger[aria-expanded=true] .recruit-mid__trigger-circle::after {
  transform: translate(-50%, -50%) rotate(45deg);
}
.recruit-mid__content {
  display: none;
  padding-block: 10px;
  padding-inline: clamp(0px, -7.0422535211px + 1.8779342723vw, 20px);
}
.recruit-mid__table {
  width: 100%;
  border-collapse: collapse;
}
.recruit-mid__table tr {
  display: block;
  border-bottom: 1px solid #e5e5e5;
  padding-top: 10px;
  padding-bottom: clamp(10px, 6.4788732394px + 0.9389671362vw, 20px);
}
.recruit-mid__table tr:first-child {
  padding-top: 0;
}
.recruit-mid__table th {
  display: block;
  text-align: left;
  font-weight: bold;
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(0.75rem, 0.661971831rem + 0.3755868545vw, 1rem);
  letter-spacing: 0.1em;
  color: #333;
  margin-bottom: 5px;
  padding-left: clamp(15px, 13.2394366197px + 0.4694835681vw, 20px);
}
@media screen and (min-width: 1440px) {
  .recruit-mid__table th {
    margin-bottom: 0;
  }
}
.recruit-mid__table td {
  display: block;
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(0.75rem, 0.661971831rem + 0.3755868545vw, 1rem);
  line-height: 1.8;
  color: #333;
  padding-left: clamp(15px, 13.2394366197px + 0.4694835681vw, 20px);
}
.recruit-mid__table td ul {
  margin-bottom: 10px;
}
.recruit-mid__table td li {
  position: relative;
  margin-bottom: 3px;
}
.recruit-mid__table td p {
  display: block;
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(0.75rem, 0.661971831rem + 0.3755868545vw, 1rem);
  line-height: 1.8;
  color: #333;
}
.recruit-mid__flow {
  margin-top: clamp(60px, 45.9154929577px + 3.7558685446vw, 100px);
}
.recruit-mid__flow-heading {
  text-align: center;
  margin-bottom: clamp(30px, 19.4366197183px + 2.8169014085vw, 60px);
}
.recruit-mid__flow-heading h2 {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(1.25rem, 0.985915493rem + 1.1267605634vw, 2rem);
  font-weight: bold;
  letter-spacing: 0.2em;
  color: #333;
  position: relative;
  margin-bottom: 42px;
}
.recruit-mid__flow-heading h2::before {
  content: "";
  display: block;
  width: clamp(55px, 41.9718309859px + 3.4741784038vw, 92px);
  height: 2px;
  border-radius: 1px;
  background-color: #277dc9;
  position: absolute;
  top: 130%;
  left: 50%;
  transform: translate(-276%, -50%);
  z-index: 2;
}
.recruit-mid__flow-heading h2::after {
  content: "";
  display: block;
  width: clamp(305px, 234.9295774648px + 18.6854460094vw, 504px);
  height: 2px;
  border-radius: 1px;
  background-color: #2f4091;
  position: absolute;
  top: 130%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 1;
}
.recruit-mid__flow-list {
  display: flex;
  flex-direction: column;
  align-items: center;
  max-width: 780px;
  margin-inline: auto;
}
.recruit-mid__flow-item {
  width: 140px;
  height: clamp(48px, 38.4929577465px + 2.5352112676vw, 75px);
  text-align: center;
  color: #ffffff;
  font-weight: bold;
  font-size: clamp(0.875rem, 0.8309859155rem + 0.1877934272vw, 1rem);
  letter-spacing: 0.1em;
  display: grid;
  place-items: center;
  position: relative;
  margin-bottom: 36px;
}
.recruit-mid__flow-item:last-child {
  margin-bottom: 0;
}
.recruit-mid__flow-item:last-child::after {
  display: none;
}
.recruit-mid__flow-item::after {
  content: "";
  position: absolute;
  bottom: -22px;
  left: 50%;
  transform: translateX(-50%);
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 12px 12px 0 12px;
}
.recruit-mid__flow-item:nth-child(1) {
  background-color: #b3bdee;
}
.recruit-mid__flow-item:nth-child(1)::after {
  border-color: #8297FC transparent transparent transparent;
}
.recruit-mid__flow-item:nth-child(2) {
  background-color: #8297FC;
}
.recruit-mid__flow-item:nth-child(2)::after {
  border-color: #425CD9 transparent transparent transparent;
}
.recruit-mid__flow-item:nth-child(3) {
  background-color: #425CD9;
}
.recruit-mid__flow-item:nth-child(3)::after {
  border-color: #2F4091 transparent transparent transparent;
}
.recruit-mid__flow-item:nth-child(4) {
  background-color: #2F4091;
}
.recruit-mid__company-box {
  margin-top: clamp(50px, 46.4788732394px + 0.9389671362vw, 60px);
  border: 1px solid #a9a9a9;
  border-radius: clamp(10px, 2.9577464789px + 1.8779342723vw, 30px);
  padding: clamp(40px, 29.4366197183px + 2.8169014085vw, 70px) clamp(10px, -4.0845070423px + 3.7558685446vw, 50px) clamp(60px, 56.4788732394px + 0.9389671362vw, 70px);
  background-color: #ffffff;
  margin-inline: 10px;
}
.recruit-mid__company-heading {
  text-align: center;
}
.recruit-mid__company-heading h2 {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(1.25rem, 0.985915493rem + 1.1267605634vw, 2rem);
  font-weight: bold;
  letter-spacing: 0.2em;
  color: #333;
  position: relative;
  margin-bottom: clamp(42px, 31.4366197183px + 2.8169014085vw, 72px);
}
.recruit-mid__company-heading h2::before {
  content: "";
  display: block;
  width: clamp(52px, 37.9154929577px + 3.7558685446vw, 92px);
  height: 2px;
  border-radius: 1px;
  background-color: #277dc9;
  position: absolute;
  top: 130%;
  left: 50%;
  transform: translate(-276%, -50%);
  z-index: 2;
}
.recruit-mid__company-heading h2::after {
  content: "";
  display: block;
  width: clamp(285px, 207.8873239437px + 20.5633802817vw, 504px);
  height: 2px;
  border-radius: 1px;
  background-color: #2f4091;
  position: absolute;
  top: 130%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 1;
}
.recruit-mid__company-table {
  width: 100%;
  border-collapse: collapse;
  border: 1px solid #347EBA;
}
.recruit-mid__company-table tr {
  display: block;
}
.recruit-mid__company-table th {
  display: block;
  background-color: #347EBA;
  color: #ffffff;
  text-align: center;
  font-weight: bold;
  font-size: clamp(0.875rem, 0.786971831rem + 0.3755868545vw, 1.125rem);
  letter-spacing: 0.1em;
  padding: clamp(12px, 3.5492957746px + 2.2535211268vw, 36px) clamp(10px, -0.5633802817px + 2.8169014085vw, 40px);
  border-bottom: 1px solid #34ace3;
}
.recruit-mid__company-table td {
  display: block;
  color: #333;
  font-size: clamp(0.75rem, 0.661971831rem + 0.3755868545vw, 1rem);
  line-height: 1.5;
  padding: clamp(12px, 8.1267605634px + 1.0328638498vw, 23px) clamp(20px, 12.9577464789px + 1.8779342723vw, 40px);
  border-bottom: 1px solid #34ace3;
  padding-bottom: clamp(18px, 13.7746478873px + 1.1267605634vw, 30px);
}
.recruit-mid__company-table tr:last-child td {
  border-bottom: none;
}
.recruit-mid__entry {
  margin-top: 40px;
  text-align: center;
}
.recruit-mid__btn {
  display: inline-block;
  width: clamp(240px, 218.8732394366px + 5.6338028169vw, 300px);
  height: clamp(80px, 65.9154929577px + 3.7558685446vw, 120px);
  background-color: #2f4091;
  color: #fff;
  font-weight: 500;
  font-size: clamp(1.125rem, 0.8169014085rem + 1.3145539906vw, 2rem);
  border-radius: 10px;
  transition: opacity 0.3s ease;
  display: grid;
  place-items: center;
  margin-inline: auto;
  position: relative;
}

@media screen and (min-width: 1440px) {
  .recruit-new a::before {
    content: "";
    position: absolute;
    top: 0;
    left: -150%;
    width: 100%;
    height: 100%;
    background: linear-gradient(120deg, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.6) 50%, rgba(255, 255, 255, 0) 100%);
    transform: skewX(-20deg);
  }
}
@media screen and (min-width: 1440px) and (any-hover: hover) {
  .recruit-new a:hover::before {
    translate: 300% 0;
    transition: 0.5s;
  }
}
@media screen and (min-width: 1440px) {
  .recruit-mid__table tr {
    display: flex;
    flex-direction: row;
    align-items: center;
  }
  .recruit-mid__table th {
    width: 160px;
    flex-shrink: 0;
    margin-bottom: 0;
    padding-right: 10px;
  }
  .recruit-mid__table td {
    width: 100%;
  }
}
@media screen and (min-width: 1440px) {
  .recruit-mid__flow-list {
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
  }
}
@media screen and (min-width: 1440px) {
  .recruit-mid__flow-item {
    margin-bottom: 0;
  }
  .recruit-mid__flow-item::after {
    bottom: auto;
    top: 50%;
    left: auto;
    right: -44px;
    transform: translateY(-50%);
    border-width: 10px 0 10px 15px;
  }
  .recruit-mid__flow-item:nth-child(1)::after {
    border-color: transparent transparent transparent #8297FC;
  }
  .recruit-mid__flow-item:nth-child(2)::after {
    border-color: transparent transparent transparent #425CD9;
  }
  .recruit-mid__flow-item:nth-child(3)::after {
    border-color: transparent transparent transparent #2F4091;
  }
}
@media screen and (min-width: 1440px) {
  .recruit-mid__company-table tr {
    display: table-row;
  }
  .recruit-mid__company-table th {
    display: table-cell;
    vertical-align: middle;
  }
  .recruit-mid__company-table td {
    display: table-cell;
    vertical-align: middle;
  }
}
@media screen and (min-width: 1440px) {
  .recruit-mid__btn::before {
    content: "";
    position: absolute;
    top: 0;
    left: -150%;
    width: 100%;
    height: 100%;
    background: linear-gradient(120deg, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.6) 50%, rgba(255, 255, 255, 0) 100%);
    transform: skewX(-20deg);
  }
}
@media screen and (min-width: 1440px) and (any-hover: hover) {
  .recruit-mid__btn:hover::before {
    translate: 300% 0;
    transition: 0.5s;
  }
}
.recruit-form {
  padding-top: clamp(60px, 45.9154929577px + 3.7558685446vw, 100px);
  padding-bottom: clamp(100px, 64.7887323944px + 9.3896713615vw, 200px);
}
.recruit-form__inner {
  max-width: clamp(335px, 171.2676056338px + 43.661971831vw, 800px);
  margin-inline: auto;
}

.recruit-form-ty {
  padding-top: clamp(60px, 3.756vw + 45.915px, 100px);
  padding-bottom: clamp(100px, 1.878vw + 92.958px, 120px);
  padding-left: 16px;
  padding-right: 16px;
}
.recruit-form-ty__inner {
  max-width: clamp(335px, 49.296vw + 150.141px, 860px);
  text-align: center;
  margin: 0 auto;
}
.recruit-form-ty__inner h1 {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(1.25rem, 1.502vw + 0.898rem, 2.25rem);
  font-weight: 700;
  color: #2f4091;
  line-height: 1;
  letter-spacing: 0.2em;
  margin-bottom: 40px;
}
.recruit-form-ty__inner p {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(0.875rem, 0.188vw + 0.831rem, 1rem);
  font-weight: 700;
  color: #333333;
  line-height: 2;
  margin-bottom: 30px;
}
.recruit-form-ty__inner p:last-of-type {
  margin-bottom: 80px;
}
.recruit-form-ty__link {
  font-family: "Noto Sans JP", sans-serif;
  width: 240px;
  height: 40px;
  background: #fff;
  color: #2f4091;
  font-size: 0.75rem;
  font-weight: 500;
  letter-spacing: 0.1em;
  border-radius: 40px;
  display: grid;
  place-items: center;
  margin: 0 auto;
  position: relative;
  font-size: 0.875rem;
  color: #fff;
  width: 280px;
  height: 46px;
  background-color: #2f4091;
}
.recruit-form-ty__link::before {
  content: "";
  display: block;
  width: 20px;
  height: 20px;
  border-radius: 50%;
  background-color: #2f4091;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 20px;
}
.recruit-form-ty__link::after {
  content: "";
  display: block;
  width: 8px;
  height: 8px;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  position: absolute;
  top: 50%;
  transform: translateY(-50%) rotate(45deg);
  right: 27px;
}
.recruit-form-ty__link::before {
  width: 22.4px;
  height: 22.4px;
  background-color: #fff;
  right: 25px;
}
.recruit-form-ty__link::after {
  width: 10px;
  height: 10px;
  border-top: 2px solid #2f4091;
  border-right: 2px solid #2f4091;
  right: 34px;
}

@media screen and (min-width: 1440px) {
  .recruit-form-ty__link {
    font-size: 1rem;
    width: 300px;
    height: 50px;
    border: 1px solid #2f4091;
  }
  .recruit-form-ty__link::before {
    width: 24px;
    height: 24px;
    background-color: #fff;
    right: 25px;
    transition: transform 0.3s ease, background-color 0.3s ease;
  }
  .recruit-form-ty__link::after {
    width: 10px;
    height: 10px;
    border-top: 2px solid #2f4091;
    border-right: 2px solid #2f4091;
    right: 34px;
    transition: border-top 0.3s ease, border-right 0.3s ease, transform 0.3s ease;
  }
}
@media screen and (min-width: 1440px) and (any-hover: hover) {
  .recruit-form-ty__link:hover {
    transition: color 0.3s ease, background-color 0.3s ease;
    color: #2f4091;
    background-color: #fff;
  }
  .recruit-form-ty__link:hover::before {
    background-color: #2f4091;
    transform: translate(10px, -50%);
    transition: transform 0.3s ease, background-color 0.3s ease;
  }
  .recruit-form-ty__link:hover::after {
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
    transform: translate(10px, -50%) rotate(45deg);
    transition: border-top 0.3s ease, border-right 0.3s ease, transform 0.3s ease;
  }
}
.contact {
  padding-top: clamp(40px, 5.634vw + 18.873px, 100px);
}
.contact__desc {
  max-width: clamp(335px, 69.953vw + 72.676px, 1080px);
  margin: 0 auto;
}
.contact__desc > p {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(0.875rem, 0.376vw + 0.787rem, 1.125rem);
  font-weight: 500;
  color: #333333;
  line-height: 1.8;
  margin-bottom: clamp(40px, 0.939vw + 36.479px, 50px);
}
.contact__sub-ttl {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(1.125rem, 0.939vw + 0.905rem, 1.75rem);
  font-weight: 700;
  color: #333333;
  line-height: 1;
  display: block;
  margin-bottom: clamp(30px, 4.695vw + 12.394px, 80px);
}
.contact__form {
  background-color: #f1f6fe;
  padding-top: clamp(40px, 2.817vw + 29.437px, 70px);
  padding-bottom: 60px;
}
.contact__form-wrap {
  background-color: #f5f5f5;
  max-width: clamp(345px, 80.282vw + 43.944px, 1200px);
  margin: 0 auto;
  padding: 30px 12.5px;
}
.contact__form-ttl {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(1.125rem, 0.939vw + 0.905rem, 1.75rem);
  font-weight: 700;
  color: #333333;
  line-height: 1;
  letter-spacing: 0.2em;
  text-align: center;
  margin-bottom: clamp(30px, 5.634vw + 8.873px, 90px);
}
.contact a {
  color: #2f4091;
}
.contact__foot {
  background-color: #f1f6fe;
  padding-top: clamp(0px, 2.817vw - 10.563px, 30px);
  padding-bottom: clamp(0px, 6.573vw - 24.648px, 70px);
}
.contact__foot-inner {
  background-color: #fff;
  max-width: clamp(375px, 38.028vw + 232.394px, 780px);
  margin: 0 auto;
  padding: 60px 16px 100px;
  border-radius: clamp(0px, 1.878vw - 7.042px, 20px);
}
.contact__foot-inner > p {
  font-size: clamp(0.875rem, 0.188vw + 0.831rem, 1rem);
  width: clamp(311px, 4.225vw + 295.155px, 356px);
  margin-left: auto;
  margin-right: auto;
  line-height: 1.8;
  color: #333333;
  white-space: nowrap;
}
.contact__foot-inner > p:last-of-type {
  margin-bottom: 0;
}
.contact__foot-ttl {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(1.125rem, 0.939vw + 0.905rem, 1.75rem);
  font-weight: 700;
  color: #333333;
  line-height: 1;
  text-align: center;
  margin-bottom: clamp(24px, 1.502vw + 18.366px, 40px);
}
.contact__foot-flex {
  display: flex;
  justify-content: center;
  gap: clamp(18px, 1.502vw + 12.366px, 34px);
  margin-bottom: clamp(24px, 1.502vw + 18.366px, 40px);
}
.contact__foot-box {
  padding: 10px 0 11px;
  border: 1px solid #2f4091;
  border-radius: clamp(11px, 0.845vw + 7.831px, 20px);
  flex: 1;
  display: grid;
  place-items: center;
  max-width: 300px;
  height: clamp(85px, 7.042vw + 58.592px, 160px);
}
.contact__foot-box-img {
  width: 77%;
}
@media screen and (min-width: 1000px) {
  .contact__foot-box-img {
    width: 100%;
  }
}
.contact__foot .contact__foot-num {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(1.188rem, 1.596vw + 0.813rem, 2.25rem);
  font-weight: 500;
  color: #333333;
  line-height: 1.5;
  margin-top: 3px;
  color: #000;
}

@media screen and (min-width: 1440px) {
  .contact__form {
    padding-bottom: 60px;
  }
  .contact__form-wrap {
    padding: 30px 12.5px;
  }
  .contact a {
    color: #2f4091;
  }
  .contact__foot-inner {
    padding: 60px 0px 60px;
  }
  .contact__foot-flex {
    gap: clamp(18px, 1.502vw + 12.366px, 34px);
    margin-bottom: clamp(24px, 1.502vw + 18.366px, 40px);
  }
  .contact__foot-box {
    padding: 20px 0;
    height: clamp(85px, 7.042vw + 58.592px, 160px);
  }
}
@media screen and (min-width: 1440px) and (any-hover: hover) {
  .contact__foot-box:hover .contact__foot-box-img {
    -webkit-animation: hurueru 0.1s infinite;
            animation: hurueru 0.1s infinite;
  }
  @-webkit-keyframes hurueru {
    0% {
      transform: translate(0px, 0px) rotateZ(0deg);
    }
    25% {
      transform: translate(2px, 2px) rotateZ(1deg);
    }
    50% {
      transform: translate(0px, 2px) rotateZ(0deg);
    }
    75% {
      transform: translate(2px, 0px) rotateZ(-1deg);
    }
    100% {
      transform: translate(0px, 0px) rotateZ(0deg);
    }
  }
  @keyframes hurueru {
    0% {
      transform: translate(0px, 0px) rotateZ(0deg);
    }
    25% {
      transform: translate(2px, 2px) rotateZ(1deg);
    }
    50% {
      transform: translate(0px, 2px) rotateZ(0deg);
    }
    75% {
      transform: translate(2px, 0px) rotateZ(-1deg);
    }
    100% {
      transform: translate(0px, 0px) rotateZ(0deg);
    }
  }
}
@media screen and (min-width: 1440px) {
  .contact__foot-num {
    font-size: clamp(1.188rem, 1.596vw + 0.813rem, 2.25rem);
    margin-top: 6px;
  }
}
@media screen and (min-width: 1440px) {
  .contact__foot p:last-of-type {
    margin-bottom: 0;
  }
}
.contact-ty {
  padding-top: clamp(60px, 3.756vw + 45.915px, 100px);
  padding-bottom: clamp(100px, 1.878vw + 92.958px, 120px);
  padding-left: 16px;
  padding-right: 16px;
}
.contact-ty__inner {
  max-width: clamp(335px, 49.296vw + 150.141px, 860px);
  text-align: center;
  margin: 0 auto;
}
.contact-ty__inner h1 {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(1.25rem, 1.502vw + 0.898rem, 2.25rem);
  font-weight: 700;
  color: #2f4091;
  line-height: 1;
  letter-spacing: 0.2em;
  margin-bottom: 40px;
}
.contact-ty__inner p {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(0.875rem, 0.188vw + 0.831rem, 1rem);
  font-weight: 700;
  color: #333333;
  line-height: 2;
  margin-bottom: 30px;
}
.contact-ty__inner p:last-of-type {
  margin-bottom: 80px;
}
.contact-ty__link {
  font-family: "Noto Sans JP", sans-serif;
  width: 240px;
  height: 40px;
  background: #fff;
  color: #2f4091;
  font-size: 0.75rem;
  font-weight: 500;
  letter-spacing: 0.1em;
  border-radius: 40px;
  display: grid;
  place-items: center;
  margin: 0 auto;
  position: relative;
  font-size: 0.875rem;
  color: #fff;
  width: 280px;
  height: 46px;
  background-color: #2f4091;
}
.contact-ty__link::before {
  content: "";
  display: block;
  width: 20px;
  height: 20px;
  border-radius: 50%;
  background-color: #2f4091;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 20px;
}
.contact-ty__link::after {
  content: "";
  display: block;
  width: 8px;
  height: 8px;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  position: absolute;
  top: 50%;
  transform: translateY(-50%) rotate(45deg);
  right: 27px;
}
.contact-ty__link::before {
  width: 22.4px;
  height: 22.4px;
  background-color: #fff;
  right: 25px;
}
.contact-ty__link::after {
  width: 10px;
  height: 10px;
  border-top: 2px solid #2f4091;
  border-right: 2px solid #2f4091;
  right: 34px;
}

@media screen and (min-width: 1440px) {
  .contact-ty__link {
    font-size: 1rem;
    width: 300px;
    height: 50px;
    border: 1px solid #2f4091;
  }
  .contact-ty__link::before {
    width: 24px;
    height: 24px;
    background-color: #fff;
    right: 25px;
    transition: transform 0.3s ease, background-color 0.3s ease;
  }
  .contact-ty__link::after {
    width: 10px;
    height: 10px;
    border-top: 2px solid #2f4091;
    border-right: 2px solid #2f4091;
    right: 34px;
    transition: border-top 0.3s ease, border-right 0.3s ease, transform 0.3s ease;
  }
}
@media screen and (min-width: 1440px) and (any-hover: hover) {
  .contact-ty__link:hover {
    transition: color 0.3s ease, background-color 0.3s ease;
    color: #2f4091;
    background-color: #fff;
  }
  .contact-ty__link:hover::before {
    background-color: #2f4091;
    transform: translate(10px, -50%);
    transition: transform 0.3s ease, background-color 0.3s ease;
  }
  .contact-ty__link:hover::after {
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
    transform: translate(10px, -50%) rotate(45deg);
    transition: border-top 0.3s ease, border-right 0.3s ease, transform 0.3s ease;
  }
}
.sin-recommende {
  grid-area: 2/1/3/3;
}
.sin-recommende__container {
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
  background-color: #f1f6fe;
  border-radius: clamp(0px, -10.5633802817px + 2.8169014085vw, 30px);
  padding-top: clamp(40px, 32.9577464789px + 1.8779342723vw, 60px);
  padding-bottom: clamp(50px, 46.4788732394px + 0.9389671362vw, 60px);
}
.sin-recommende__inner {
  max-width: clamp(335px, 30.4225352113px + 81.220657277vw, 1200px);
  margin: 0 auto;
}
.sin-recommende__ttl {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(1.125rem, 0.9929577465rem + 0.5633802817vw, 1.5rem);
  font-weight: 700;
  color: #2f4091;
  line-height: 1.5;
  letter-spacing: 0.1em;
  text-align: center;
  margin-bottom: clamp(36px, 29.661971831px + 1.6901408451vw, 54px);
  position: relative;
}
.sin-recommende__ttl::before {
  content: "";
  display: block;
  width: clamp(45px, 29.1549295775px + 4.2253521127vw, 90px);
  height: 2px;
  border-radius: 1px;
  background-color: #277dc9;
  position: absolute;
  top: 110%;
  left: 50%;
  transform: translate(-277%, -50%);
  z-index: 2;
}
.sin-recommende__ttl::after {
  content: "";
  display: block;
  width: clamp(245px, 156.9718309859px + 23.4741784038vw, 495px);
  height: 2px;
  border-radius: 1px;
  background-color: #2f4091;
  position: absolute;
  top: 110%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 1;
}
.sin-recommende__flex {
  display: flex;
  flex-wrap: wrap;
  gap: clamp(24px, 18.3661971831px + 1.5023474178vw, 40px) clamp(20px, 10.1408450704px + 2.6291079812vw, 48px);
  justify-content: center;
  max-width: 1000px;
  margin: 0 auto;
}
.sin-recommende__item {
  width: clamp(157px, 106.6478873239px + 13.4272300469vw, 300px);
  height: clamp(200px, 150.7042253521px + 13.1455399061vw, 340px);
  box-shadow: 1px 1px 5px rgba(0, 0, 0, 0.25);
  border-radius: clamp(5px, 3.2394366197px + 0.4694835681vw, 10px);
  overflow: hidden;
  display: flex;
  flex-direction: column;
}
.sin-recommende__item-ttl {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(0.75rem, 0.6179577465rem + 0.5633802817vw, 1.125rem);
  font-weight: 500;
  color: #333333;
  line-height: 1.5;
  align-self: flex-start;
}
.sin-recommende__item-desc {
  background: #fff;
  padding: 10px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  align-items: flex-end;
  flex-grow: 1;
}
.sin-recommende__item-link {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(0.5rem, 0.4559859155rem + 0.1877934272vw, 0.625rem);
  font-weight: 500;
  color: #fff;
  letter-spacing: 0.1em;
  display: block;
  background: #2f4091;
  border-radius: 22px;
  width: 80px;
  height: 19px;
  display: grid;
  place-items: center;
}
.sin-recommende__box {
  height: clamp(88px, 55.6056338028px + 8.6384976526vw, 180px);
}
.sin-recommende__box-img {
  width: 100%;
  height: auto;
}
.sin-recommende__link {
  font-family: "Noto Sans JP", sans-serif;
  width: 240px;
  height: 40px;
  background: #fff;
  color: #2f4091;
  font-size: 0.75rem;
  font-weight: 500;
  letter-spacing: 0.1em;
  border-radius: 40px;
  display: grid;
  place-items: center;
  margin: 0 auto;
  position: relative;
  font-size: clamp(0.875rem, 0.8309859155rem + 0.1877934272vw, 1rem);
  color: #fff;
  width: clamp(280px, 272.9577464789px + 1.8779342723vw, 300px);
  height: clamp(46px, 44.5915492958px + 0.3755868545vw, 50px);
  background-color: #2f4091;
  margin-bottom: 80px;
}
.sin-recommende__link::before {
  content: "";
  display: block;
  width: 20px;
  height: 20px;
  border-radius: 50%;
  background-color: #2f4091;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 20px;
}
.sin-recommende__link::after {
  content: "";
  display: block;
  width: 8px;
  height: 8px;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  position: absolute;
  top: 50%;
  transform: translateY(-50%) rotate(45deg);
  right: 27px;
}
.sin-recommende__link::before {
  width: 22.4px;
  height: 22.4px;
  background-color: #fff;
  right: 25px;
}
.sin-recommende__link::after {
  width: 10px;
  height: 10px;
  border-top: 2px solid #2f4091;
  border-right: 2px solid #2f4091;
  right: 34px;
}

@media screen and (min-width: 1440px) {
  .sin-recommende {
    margin-bottom: 60px;
  }
  .sin-recommende__item-desc {
    padding: 20px 15px;
  }
  .sin-recommende__item-link {
    border-radius: 22px;
    width: clamp(80px, 72.9577464789px + 1.8779342723vw, 100px);
    height: clamp(19px, 17.2394366197px + 0.4694835681vw, 24px);
  }
  .sin-recommende__link {
    margin-top: 120px;
  }
}
/* ==============================================
   Easy Table of Contents カスタマイズ 
============================================== */
/* 1. 目次コンテナ全体 (変更なし) */
#ez-toc-container {
  display: flex !important;
  flex-direction: column !important;
  background-color: #f1f6fe !important;
  border: none !important;
  border-radius: 0 !important;
  padding: 0 !important;
  margin: 3em 0 !important;
  width: 100% !important;
  box-shadow: none !important;
  overflow: hidden;
}

/* 2. 「目次」タイトル帯 (変更なし) */
#ez-toc-container .ez-toc-title-container {
  background-color: #2b3f8c !important;
  width: 100% !important;
  padding: 15px 0 !important;
  display: flex !important;
  align-items: center;
  justify-content: center;
}

/* 「目次」の文字 (変更なし) */
#ez-toc-container .ez-toc-title {
  color: #ffffff !important;
  font-weight: bold !important;
  font-size: 24px !important;
  margin: 0 !important;
  letter-spacing: 0.1em;
}

/* 3. 右側のリストエリア (★中央寄せの解消) */
#ez-toc-container nav {
  padding: 25px 20px !important;
  /* ★修正点：全体を左寄せにする命令を追加！ */
  text-align: left !important;
}

/* リスト全体の装飾 (list-style: noneは上記でliに指定したので、ここでは不要ですが、以前のコードとの互換性のために残します) */
#ez-toc-container ul.ez-toc-list {
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}

/* リンク文字のデザイン (★中央寄せの解消・重複番号の非表示) */
#ez-toc-container ul.ez-toc-list a {
  color: #333333 !important;
  font-weight: bold !important;
  text-decoration: none !important;
  font-size: 16px !important;
  line-height: 1.6 !important;
  display: block !important;
  margin-bottom: 15px !important;
  box-shadow: none !important;
  /* ★修正点：テキストを左寄せにする命令を追加！ */
  text-align: left !important;
}

#ez-toc-container ul.ez-toc-list a:hover {
  color: #2b3f8c !important;
}

/* 4. 子階層 (変更なし) */
#ez-toc-container ul.ez-toc-list ul {
  margin-top: -5px !important;
  margin-bottom: 15px !important;
  margin-left: 2em !important;
}

#ez-toc-container ul.ez-toc-list ul a {
  font-weight: 500 !important;
  font-size: 15px !important;
  margin-bottom: 8px !important;
  color: #555555 !important;
}

/* ==============================================
   PC・タブレット版 (変更なし)
============================================== */
@media screen and (min-width: 768px) {
  #ez-toc-container {
    flex-direction: row !important;
  }
  #ez-toc-container .ez-toc-title-container {
    width: 25% !important;
    min-width: 120px;
    flex-shrink: 0;
    padding: 20px !important;
  }
  #ez-toc-container nav {
    flex-grow: 1;
    padding: 40px 50px !important;
  }
}
.is-current {
  position: relative;
  opacity: 0.8;
}
.is-current::after {
  content: "";
  display: block;
  position: absolute;
  width: 14px;
  height: 2px;
  background-color: #2f4091;
  left: 50%;
  bottom: -4px;
  transform: translate(-47%, 0);
}

.page-nation {
  max-width: 280px;
  margin: 0 auto;
  display: flex;
  justify-content: space-around;
  align-items: center;
}
.page-nation__prev {
  display: block;
  width: 35px;
  height: 35px;
  border-radius: 50%;
  background-color: #2f4091;
  position: relative;
}
.page-nation__prev::before {
  content: "";
  display: block;
  width: 12px;
  height: 12px;
  border-left: 2px solid #fff;
  border-bottom: 2px solid #fff;
  transform: translate(-25%, -50%) rotate(45deg);
  position: absolute;
  left: 50%;
  top: 50%;
}
.page-nation__num {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(1rem, 0.9559859155rem + 0.1877934272vw, 1.125rem);
  font-weight: 400;
  color: #2f4091;
}
.page-nation__next {
  display: block;
  width: 35px;
  height: 35px;
  border-radius: 50%;
  background-color: #2f4091;
  position: relative;
}
.page-nation__next::before {
  content: "";
  display: block;
  width: 12px;
  height: 12px;
  border-right: 2px solid #fff;
  border-top: 2px solid #fff;
  transform: translate(-60%, -50%) rotate(45deg);
  position: absolute;
  left: 50%;
  top: 50%;
}

.privacy {
  padding-bottom: 120px;
  padding-top: clamp(40px, 0.939vw + 36.479px, 50px);
}
.privacy__top {
  position: relative;
}
.privacy__top-bg {
  width: 100%;
  height: clamp(260px, 9.39vw + 224.789px, 360px);
  background: linear-gradient(to left, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.7)), #2f4091;
}
.privacy__ttl {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(1.5rem, 1.127vw + 1.236rem, 2.25rem);
  font-weight: 700;
  color: #fff;
  line-height: 1.5;
  display: inline-block;
  position: absolute;
  top: 50%;
  left: 8%;
  transform: translate(0, -50%);
}
.privacy__ttl-foot {
  display: block;
  font-size: 1.25rem;
  text-align: center;
}
.privacy__inner {
  max-width: clamp(335px, 69.953vw + 72.676px, 1080px);
  margin: 0 auto;
}
.privacy .privacy__leed {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(0.875rem, 0.188vw + 0.831rem, 1rem);
  font-weight: 500;
  color: #333333;
  line-height: 2;
  margin-bottom: 60px;
}
.privacy h2 {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(0.875rem, 1.315vw + 0.567rem, 1.75rem);
  font-weight: 700;
  color: #333333;
  position: relative;
  margin-bottom: 34px;
}
.privacy h2::before {
  content: "";
  display: block;
  width: clamp(93px, 19.437vw + 20.113px, 300px);
  height: 2px;
  border-radius: 1px;
  background-color: #277dc9;
  position: absolute;
  top: 150%;
  left: 50%;
  transform: translate(-180%, -50%);
  z-index: 2;
}
.privacy h2::after {
  content: "";
  display: block;
  width: clamp(335px, 69.953vw + 72.676px, 1080px);
  height: 2px;
  border-radius: 1px;
  background-color: #2f4091;
  position: absolute;
  top: 150%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 1;
}
.privacy p {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(0.75rem, 0.376vw + 0.662rem, 1rem);
  font-weight: 400;
  color: #333333;
  line-height: 1.8;
  margin-bottom: clamp(30px, 2.817vw + 19.437px, 60px);
}
.privacy p:last-of-type {
  margin-bottom: 0;
}
.privacy__text-last {
  margin-top: -10px;
}

@media screen and (min-width: 1440px) {
  .privacy {
    padding-bottom: 120px;
  }
  .privacy__top {
    position: relative;
  }
  .privacy__top-bg {
    width: 100%;
  }
  .privacy__ttl {
    left: 8%;
    transform: translate(0, -50%);
  }
  .privacy .privacy__leed {
    font-weight: 400;
  }
  .privacy h2 {
    margin-bottom: 34px;
  }
  .privacy h2::before {
    top: 150%;
    left: 50%;
    transform: translate(-180%, -50%);
    z-index: 2;
  }
  .privacy h2::after {
    top: 150%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 1;
  }
  .privacy p {
    line-height: 1.5;
  }
  .privacy p:last-of-type {
    margin-bottom: 0;
  }
  .privacy__text-last {
    margin-top: -40px;
  }
}
.not__inner {
  padding: 60px 0 100px;
  max-width: 1080px;
  margin: 0 auto;
  text-align: center;
}

.not__top {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 6rem;
  font-weight: 700;
  color: #d5d9e9;
  display: block;
  margin-bottom: 20px;
}

.not__ttl {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 2rem;
  font-weight: 900;
  color: #2f4091;
  margin-bottom: 30px;
}

.not__text {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 0.875rem;
  font-weight: 700;
  color: #333333;
  line-height: 2;
  margin-bottom: 60px;
}

.not__link {
  font-family: "Noto Sans JP", sans-serif;
  width: 240px;
  height: 40px;
  background: #fff;
  color: #2f4091;
  font-size: 0.75rem;
  font-weight: 500;
  letter-spacing: 0.1em;
  border-radius: 40px;
  display: grid;
  place-items: center;
  margin: 0 auto;
  position: relative;
  font-size: 0.875rem;
  color: #fff;
  width: 280px;
  height: 46px;
  background-color: #2f4091;
}
.not__link::before {
  content: "";
  display: block;
  width: 20px;
  height: 20px;
  border-radius: 50%;
  background-color: #2f4091;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 20px;
}
.not__link::after {
  content: "";
  display: block;
  width: 8px;
  height: 8px;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  position: absolute;
  top: 50%;
  transform: translateY(-50%) rotate(45deg);
  right: 27px;
}
.not__link::before {
  width: 22.4px;
  height: 22.4px;
  background-color: #fff;
  right: 25px;
}
.not__link::after {
  width: 10px;
  height: 10px;
  border-top: 2px solid #2f4091;
  border-right: 2px solid #2f4091;
  right: 34px;
}

@media screen and (min-width: 1000px) {
  .not__inner {
    padding: 100px 0 120px;
  }
  .not__top {
    font-size: 8.75rem;
    margin-bottom: 30px;
  }
  .not__ttl {
    font-size: 4rem;
    margin-bottom: 40px;
  }
  .not__text {
    font-size: 1rem;
  }
  .not__link {
    font-size: 1rem;
    width: 300px;
    height: 50px;
    border: 1px solid #2f4091;
  }
  .not__link::before {
    width: 24px;
    height: 24px;
    background-color: #fff;
    right: 25px;
    transition: transform 0.3s ease, background-color 0.3s ease;
  }
  .not__link::after {
    width: 10px;
    height: 10px;
    border-top: 2px solid #2f4091;
    border-right: 2px solid #2f4091;
    right: 34px;
    transition: border-top 0.3s ease, border-right 0.3s ease, transform 0.3s ease;
  }
}
@media screen and (min-width: 1000px) and (any-hover: hover) {
  .not__link:hover {
    transition: color 0.3s ease, background-color 0.3s ease;
    color: #2f4091;
    background-color: #fff;
  }
  .not__link:hover::before {
    background-color: #2f4091;
    transform: translate(10px, -50%);
    transition: transform 0.3s ease, background-color 0.3s ease;
  }
  .not__link:hover::after {
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
    transform: translate(10px, -50%) rotate(45deg);
    transition: border-top 0.3s ease, border-right 0.3s ease, transform 0.3s ease;
  }
}
.footer {
  background: no-repeat url(../images/sp-footer.webp) center/cover;
  padding: 40px 20px 4px;
  position: relative;
  border-top: 8px solid #f5f6f8;
}
.footer a {
  text-decoration: none;
}
.footer__back-link {
  display: grid;
  place-items: center;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 700;
  color: #2f4091;
  font-size: 0.875rem;
  width: 120px;
  height: 42px;
  border-radius: 5px 5px 0 0;
  background-color: #f5f6f8;
  position: absolute;
  top: -45px;
  right: 4%;
  padding-right: 30px;
}
.footer__back-link::before {
  content: "";
  display: block;
  width: 6px;
  height: 6px;
  border-left: 6px solid transparent;
  border-bottom: 6px solid #2f4091;
  border-right: 6px solid transparent;
  position: absolute;
  top: 34%;
  right: 16%;
}
.footer__back-link::after {
  content: "";
  display: block;
  width: 2px;
  height: 10px;
  background-color: #2f4091;
  position: absolute;
  top: 46%;
  right: 20%;
}
.footer__inner {
  max-width: 600px;
  margin: 0 auto;
}
.footer__wrap {
  display: flex;
  align-items: center;
  margin-bottom: 20px;
}
.footer__wrap-left {
  margin-right: 24px;
  padding-left: 24px;
}
.footer__wrap-left .footer__group:last-child {
  margin-bottom: 0;
}
.footer__wrap-right .footer__group:nth-child(2),
.footer__wrap-right .footer__group:nth-child(3) {
  margin-bottom: 10px;
}
.footer__wrap-right .footer__group:last-child .footer__heading-link {
  margin-bottom: 10px;
}
.footer__logo-link {
  display: block;
  margin-right: 5px;
}
.footer__logo-img {
  width: 38.81px;
  height: auto;
}
.footer__upper-text {
  font-family: "Roboto", sans-serif;
  font-optical-sizing: auto;
  font-variation-settings: "wdth" 100;
  color: #2f4091;
  font-size: 10px;
  display: block;
  margin-bottom: 5px;
}
.footer__foot-text {
  font-family: "Noto Sans JP", sans-serif;
  color: #2f4091;
  font-weight: 500;
  font-size: 12px;
  display: block;
}
.footer__nav-flex {
  display: flex;
  justify-content: space-around;
}
.footer__group {
  margin-bottom: 30px;
}
.footer__heading {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 700;
  color: #2f4091;
  font-size: 0.875rem;
  margin-bottom: 10px;
  display: block;
}
.footer__heading-link {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 700;
  color: #2f4091;
  font-size: 0.875rem;
  display: block;
  margin-bottom: 16px;
}
.footer__list {
  padding-left: 5px;
}
.footer__item {
  margin-bottom: 5px;
}
.footer__link {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  color: #2f4091;
  font-size: 0.625rem;
}
.footer__social {
  width: 153px;
  margin: -23px 0 45px auto;
}
.footer__social-list {
  display: flex;
  justify-content: space-around;
  align-items: center;
}
.footer__social-icon {
  width: 100%;
  height: auto;
}
.footer__copy {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 0.5rem;
  font-weight: 300;
  color: #2f4091;
  display: block;
  text-align: center;
}

@media screen and (min-width: 850px) {
  .footer {
    background: no-repeat url(../images/sp-footer.webp) center/cover;
    padding: 40px 20px 5px;
  }
  .footer__inner {
    max-width: 800px;
    display: flex;
    align-items: flex-start;
    position: relative;
    margin-bottom: 108px;
    white-space: nowrap;
  }
  .footer__wrap {
    margin-bottom: 20px;
  }
  .footer__wrap-left {
    margin-right: 29.5px;
    padding-left: 0px;
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 29.5px;
  }
  .footer__wrap-left .footer__group:last-child {
    margin-bottom: 0;
  }
  .footer__wrap-left .footer__group:nth-child(2) {
    grid-column: 3/4;
    grid-row: 1;
  }
  .footer__wrap-left .footer__group:nth-child(3) {
    grid-column: 2/3;
    grid-row: 1;
  }
  .footer__wrap-right {
    display: flex;
    gap: 29.5px;
  }
  .footer__wrap-right .footer__group:nth-child(2),
.footer__wrap-right .footer__group:nth-child(3) {
    margin-bottom: 0px;
  }
  .footer__wrap-right .footer__group:last-child .footer__heading-link {
    margin-bottom: 16px;
  }
  .footer__logo-link {
    margin-right: 5px;
  }
  .footer__logo-img {
    width: 56px;
  }
  .footer__desc {
    margin-right: 35px;
  }
  .footer__upper-text {
    font-size: 0.875rem;
    margin-bottom: 5px;
  }
  .footer__foot-text {
    font-size: 1.375rem;
    display: block;
  }
  .footer__nav-flex {
    display: flex;
    flex-wrap: wrap;
  }
  .footer__group {
    margin-bottom: 30px;
  }
  .footer__heading {
    font-size: 1rem;
    margin-bottom: 16px;
  }
  .footer__heading-link {
    font-size: 1rem;
    display: block;
  }
  .footer__list {
    padding-left: 5px;
  }
  .footer__item {
    margin-bottom: 10px;
  }
  .footer__link {
    font-size: 0.875rem;
  }
  .footer__social {
    width: 260px;
    margin: 0;
    position: absolute;
    left: 0;
    top: 300px;
  }
  .footer__social-list {
    display: flex;
    justify-content: space-around;
  }
  .footer__social-item:first-child .footer__social-icon {
    width: 35px;
  }
  .footer__social-icon {
    width: 32px;
  }
  .footer__copy {
    font-size: 0.75rem;
  }
}
@media screen and (min-width: 1300px) {
  .footer {
    background: no-repeat url(../images/pc-footer.webp) center/cover;
    border-top: 10px solid #f5f6f8;
  }
  .footer__back-link {
    display: grid;
    place-items: center;
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 700;
    color: #2f4091;
    font-size: 1rem;
    width: 160px;
    height: 48px;
    border-radius: 5px 5px 0 0;
    background-color: #f5f6f8;
    position: absolute;
    top: -54px;
    right: 2%;
    padding-right: 30px;
  }
}
@media screen and (min-width: 1300px) and (any-hover: hover) {
  .footer__back-link:hover {
    transition: opacity 0.3s ease;
    opacity: 0.7;
  }
}
@media screen and (min-width: 1300px) {
  .footer__back-link::before {
    content: "";
    display: block;
    width: 13px;
    height: 13px;
    border-left: 10px solid transparent;
    border-bottom: 10px solid #2f4091;
    border-right: 10px solid transparent;
    position: absolute;
    top: 19%;
    right: 16%;
  }
}
@media screen and (min-width: 1300px) {
  .footer__back-link::after {
    content: "";
    display: block;
    width: 4px;
    height: 15px;
    background-color: #2f4091;
    position: absolute;
    top: 46%;
    right: 21%;
  }
}
@media screen and (min-width: 1300px) {
  .footer__inner {
    max-width: 1200px;
    margin-bottom: 108px;
    white-space: nowrap;
  }
}
@media screen and (min-width: 1300px) {
  .footer__wrap {
    margin-bottom: 20px;
  }
}
@media screen and (min-width: 1300px) {
  .footer__wrap-left .footer__group:nth-child(1) {
    margin-bottom: 0px;
  }
  .footer__wrap-left .footer__group:nth-child(1) .footer__heading-link {
    margin-bottom: 24px;
  }
  .footer__wrap-left .footer__group:last-child {
    margin-bottom: 0;
  }
}
@media screen and (min-width: 1300px) {
  .footer__wrap-right {
    display: flex;
    gap: 29.5px;
  }
  .footer__wrap-right .footer__group:nth-child(2),
.footer__wrap-right .footer__group:nth-child(3) {
    margin-bottom: 0px;
  }
  .footer__wrap-right .footer__group:last-child .footer__heading-link {
    margin-bottom: 16px;
  }
}
@media screen and (min-width: 1300px) {
  .footer__logo-link {
    margin-right: 5px;
  }
}
@media screen and (min-width: 1300px) and (any-hover: hover) {
  .footer__logo-link:hover {
    transition: opacity 0.3s ease;
    opacity: 0.7;
  }
}
@media screen and (min-width: 1300px) {
  .footer__logo-img {
    width: 56px;
  }
}
@media screen and (min-width: 1300px) {
  .footer__upper-text {
    font-size: 0.875rem;
    margin-bottom: 5px;
  }
}
@media screen and (min-width: 1300px) {
  .footer__foot-text {
    font-size: 1.375rem;
  }
}
@media screen and (min-width: 1300px) {
  .footer__nav-flex {
    flex-wrap: nowrap;
  }
}
@media screen and (min-width: 1300px) {
  .footer__heading {
    font-size: 1rem;
    margin-bottom: 16px;
  }
  .footer__heading-link {
    font-size: 1rem;
    display: block;
  }
}
@media screen and (min-width: 1300px) and (any-hover: hover) {
  .footer__heading-link:hover {
    transition: opacity 0.3s ease;
    opacity: 0.7;
  }
}
@media screen and (min-width: 1300px) {
  .footer__list {
    padding-left: 5px;
  }
}
@media screen and (min-width: 1300px) {
  .footer__item {
    margin-bottom: 10px;
  }
}
@media screen and (min-width: 1300px) {
  .footer__link {
    font-size: 0.875rem;
  }
}
@media screen and (min-width: 1300px) and (any-hover: hover) {
  .footer__link:hover {
    transition: opacity 0.3s ease;
    opacity: 0.7;
  }
}
@media screen and (min-width: 1300px) {
  .footer__social {
    top: 200px;
  }
}
@media screen and (min-width: 1300px) and (any-hover: hover) {
  .footer__social-link:hover {
    transition: opacity 0.3s ease;
    opacity: 0.7;
  }
}
/*# sourceMappingURL=style.css.map */