@charset "UTF-8";
.fadein .fadein-left {
  transition: all 0.5s linear 0s;
  transform: translate(-30px, 0);
  opacity: 0;
}
.fadein .fadein-left.show {
  transform: translate(0, 0);
  opacity: 1;
}

.scrooll-animation {
  opacity: 0;
  transform: translate(-30px, 0);
  transition: all 1s;
}

.scrooll-animation.active {
  opacity: 1;
  transform: translate(0, 0);
}

/**
* rem変換 ※375以下ではvwとする
* $number 数値
* 例) 32pxをremに変換 (32);
*/
/**
* %計算
* $number 数値
* $basis %を計算するための基準値(幅)
* 例) 値1000に対して50の%値 (50, 1000);
*/
/**
* vw計算
* $number 数値
* $width vw(%)を計算するための基準幅(デフォルト：SPのデザイン幅)
* 例) SPデザイン幅時点で100pxとなるvw値 (100);
* 例) 画面幅1000px時点で100pxとなるvw値 (100, 1000);
*/
/* hover要素判定 */
/* コンテナ */
/**
* フォント
* $size フォントサイズ
* $line 行間(xdの値)
* $space 文字間(xdの値)
* 例) fontMinchoW4(16, 25, 0.16)
*/
/* ボーダー */
/**
* flex要素のwidthを取得(均等割り)
* $num 並べる個数
* $gap 間の余白(rem, px)
* 例) flexSize(3, 10px)
*/
/* 幅 */
/* 高さ */
/* カラー */
/* フォント */
/* ボーダー */
.fadein .fadein-left {
  transition: all 0.5s linear 0s;
  transform: translate(-30px, 0);
  opacity: 0;
}

.fadein .fadein-left.show {
  transform: translate(0, 0);
  opacity: 1;
}

.scrooll-animation {
  opacity: 0;
  transform: translate(-30px, 0);
  transition: all 1s;
}

.scrooll-animation.active {
  opacity: 1;
  transform: translate(0, 0);
}

/**
* rem変換 ※375以下ではvwとする
* $number 数値
* 例) 32pxをremに変換 (32);
*/
/**
* %計算
* $number 数値
* $basis %を計算するための基準値(幅)
* 例) 値1000に対して50の%値 (50, 1000);
*/
/**
* vw計算
* $number 数値
* $width vw(%)を計算するための基準幅(デフォルト：SPのデザイン幅)
* 例) SPデザイン幅時点で100pxとなるvw値 (100);
* 例) 画面幅1000px時点で100pxとなるvw値 (100, 1000);
*/
/* hover要素判定 */
/* コンテナ */
/**
* フォント
* $size フォントサイズ
* $line 行間(xdの値)
* $space 文字間(xdの値)
* 例) fontMinchoW4(16, 25, 0.16)
*/
/* ボーダー */
/**
* flex要素のwidthを取得(均等割り)
* $num 並べる個数
* $gap 間の余白(rem, px)
* 例) flexSize(3, 10px)
*/
/* 幅 */
/* 高さ */
/* カラー */
/* フォント */
/* ボーダー */
/* YuGothic */
/* Platelet */
/* Barlow */
*,
*::before,
*::after {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

*:focus {
  outline: none;
}

html {
  overflow-x: hidden;
  overflow-y: auto;
  position: relative;
  width: 100%;
  color: #111111;
  scroll-behavior: smooth;
  scroll-padding-top: min(4.25rem, 18.1333333333vw);
}
@media screen and (min-width: 1025px) {
  html {
    scroll-padding-top: min(4.15625rem, 17.7333333333vw);
  }
}
@media (max-width: 782px) {
  html {
    margin-top: 0 !important;
  }
}

body {
  color: #616161;
  overflow-x: hidden;
  overflow-y: auto;
  position: relative;
  width: 100%;
  min-width: 320px;
  overscroll-behavior: none;
}

img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

button {
  background-color: transparent;
  border: none;
  cursor: pointer;
  outline: none;
  padding: 0;
  appearance: none;
}

p {
  font-size: 1.6em;
  line-height: 1.75em;
}

a {
  color: #616161;
  display: block;
  text-decoration: none;
  transition: opacity 0.15s;
}

li {
  list-style: none;
}

table {
  border-spacing: 0;
}

input[type=submit] {
  cursor: pointer;
}

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

picture {
  display: block;
}

.grecaptcha-badge {
  visibility: hidden;
}

.fadein .fadein-left {
  transition: all 0.5s linear 0s;
  transform: translate(-30px, 0);
  opacity: 0;
}

.fadein .fadein-left.show {
  transform: translate(0, 0);
  opacity: 1;
}

.scrooll-animation {
  opacity: 0;
  transform: translate(-30px, 0);
  transition: all 1s;
}

.scrooll-animation.active {
  opacity: 1;
  transform: translate(0, 0);
}

/**
* rem変換 ※375以下ではvwとする
* $number 数値
* 例) 32pxをremに変換 (32);
*/
/**
* %計算
* $number 数値
* $basis %を計算するための基準値(幅)
* 例) 値1000に対して50の%値 (50, 1000);
*/
/**
* vw計算
* $number 数値
* $width vw(%)を計算するための基準幅(デフォルト：SPのデザイン幅)
* 例) SPデザイン幅時点で100pxとなるvw値 (100);
* 例) 画面幅1000px時点で100pxとなるvw値 (100, 1000);
*/
/* hover要素判定 */
/* コンテナ */
/**
* フォント
* $size フォントサイズ
* $line 行間(xdの値)
* $space 文字間(xdの値)
* 例) fontMinchoW4(16, 25, 0.16)
*/
/* ボーダー */
/**
* flex要素のwidthを取得(均等割り)
* $num 並べる個数
* $gap 間の余白(rem, px)
* 例) flexSize(3, 10px)
*/
/* 幅 */
/* 高さ */
/* カラー */
/* フォント */
/* ボーダー */
.l-container {
  margin: 0 auto;
  width: 89.3333333333%;
}
.l-container__mxWide {
  max-width: min(62.5rem, 266.6666666667vw);
}
.l-container__mxLow {
  max-width: min(50rem, 213.3333333333vw);
}
.l-container__mxLower {
  max-width: min(43.75rem, 186.6666666667vw);
}

.l-container_wide {
  margin: 0 auto;
  width: 92.5333333333%;
}

.l-container_wide02 {
  margin: 0 auto;
  width: 93.3333333333%;
}

.l-container_wide03 {
  margin: 0 auto;
  width: 94.6666666667%;
}

.l-container_wide04 {
  margin: 0 auto;
  width: 92%;
}

.l-container_wide05 {
  margin: 0 auto;
  width: 90.6666666667%;
}

.fadein .fadein-left {
  transition: all 0.5s linear 0s;
  transform: translate(-30px, 0);
  opacity: 0;
}

.fadein .fadein-left.show {
  transform: translate(0, 0);
  opacity: 1;
}

.scrooll-animation {
  opacity: 0;
  transform: translate(-30px, 0);
  transition: all 1s;
}

.scrooll-animation.active {
  opacity: 1;
  transform: translate(0, 0);
}

/**
* rem変換 ※375以下ではvwとする
* $number 数値
* 例) 32pxをremに変換 (32);
*/
/**
* %計算
* $number 数値
* $basis %を計算するための基準値(幅)
* 例) 値1000に対して50の%値 (50, 1000);
*/
/**
* vw計算
* $number 数値
* $width vw(%)を計算するための基準幅(デフォルト：SPのデザイン幅)
* 例) SPデザイン幅時点で100pxとなるvw値 (100);
* 例) 画面幅1000px時点で100pxとなるvw値 (100, 1000);
*/
/* hover要素判定 */
/* コンテナ */
/**
* フォント
* $size フォントサイズ
* $line 行間(xdの値)
* $space 文字間(xdの値)
* 例) fontMinchoW4(16, 25, 0.16)
*/
/* ボーダー */
/**
* flex要素のwidthを取得(均等割り)
* $num 並べる個数
* $gap 間の余白(rem, px)
* 例) flexSize(3, 10px)
*/
/* 幅 */
/* 高さ */
/* カラー */
/* フォント */
/* ボーダー */
.l-footer {
  margin-bottom: min(0.9375rem, 4vw);
  margin-top: min(3.125rem, 13.3333333333vw);
}
@media screen and (min-width: 600px) {
  .l-footer {
    margin-top: min(6.25rem, 26.6666666667vw);
  }
}
.l-footer_inner {
  margin: 0 auto;
  width: 81.8666666667%;
  max-width: min(62.5rem, 266.6666666667vw);
}
@media screen and (min-width: 600px) {
  .l-footer_inner {
    display: flex;
    flex-direction: row-reverse;
    margin-top: min(1.25rem, 5.3333333333vw);
    justify-content: space-between;
    width: 90%;
  }
}
.l-footer_inner .c-goTop {
  margin-left: auto;
}
.l-footer .c-contactBnr {
  margin-top: min(0.628125rem, 2.68vw);
}

.fadein .fadein-left {
  transition: all 0.5s linear 0s;
  transform: translate(-30px, 0);
  opacity: 0;
}

.fadein .fadein-left.show {
  transform: translate(0, 0);
  opacity: 1;
}

.scrooll-animation {
  opacity: 0;
  transform: translate(-30px, 0);
  transition: all 1s;
}

.scrooll-animation.active {
  opacity: 1;
  transform: translate(0, 0);
}

/**
* rem変換 ※375以下ではvwとする
* $number 数値
* 例) 32pxをremに変換 (32);
*/
/**
* %計算
* $number 数値
* $basis %を計算するための基準値(幅)
* 例) 値1000に対して50の%値 (50, 1000);
*/
/**
* vw計算
* $number 数値
* $width vw(%)を計算するための基準幅(デフォルト：SPのデザイン幅)
* 例) SPデザイン幅時点で100pxとなるvw値 (100);
* 例) 画面幅1000px時点で100pxとなるvw値 (100, 1000);
*/
/* hover要素判定 */
/* コンテナ */
/**
* フォント
* $size フォントサイズ
* $line 行間(xdの値)
* $space 文字間(xdの値)
* 例) fontMinchoW4(16, 25, 0.16)
*/
/* ボーダー */
/**
* flex要素のwidthを取得(均等割り)
* $num 並べる個数
* $gap 間の余白(rem, px)
* 例) flexSize(3, 10px)
*/
/* 幅 */
/* 高さ */
/* カラー */
/* フォント */
/* ボーダー */
.l-header {
  background-color: #fff;
  height: min(4.25rem, 18.1333333333vw);
  position: fixed;
  width: 100%;
  z-index: 999;
}
@media screen and (min-width: 1025px) {
  .l-header {
    height: min(4.15625rem, 17.7333333333vw);
  }
}
.l-header_inner {
  align-items: center;
  display: flex;
  height: 100%;
  justify-content: space-between;
  padding-inline: min(1.25rem, 5.3333333333vw);
  width: 100%;
}
.l-header .c-btn {
  height: min(2.875rem, 12.2666666667vw);
  margin: 0;
}

.fadein .fadein-left {
  transition: all 0.5s linear 0s;
  transform: translate(-30px, 0);
  opacity: 0;
}

.fadein .fadein-left.show {
  transform: translate(0, 0);
  opacity: 1;
}

.scrooll-animation {
  opacity: 0;
  transform: translate(-30px, 0);
  transition: all 1s;
}

.scrooll-animation.active {
  opacity: 1;
  transform: translate(0, 0);
}

/**
* rem変換 ※375以下ではvwとする
* $number 数値
* 例) 32pxをremに変換 (32);
*/
/**
* %計算
* $number 数値
* $basis %を計算するための基準値(幅)
* 例) 値1000に対して50の%値 (50, 1000);
*/
/**
* vw計算
* $number 数値
* $width vw(%)を計算するための基準幅(デフォルト：SPのデザイン幅)
* 例) SPデザイン幅時点で100pxとなるvw値 (100);
* 例) 画面幅1000px時点で100pxとなるvw値 (100, 1000);
*/
/* hover要素判定 */
/* コンテナ */
/**
* フォント
* $size フォントサイズ
* $line 行間(xdの値)
* $space 文字間(xdの値)
* 例) fontMinchoW4(16, 25, 0.16)
*/
/* ボーダー */
/**
* flex要素のwidthを取得(均等割り)
* $num 並べる個数
* $gap 間の余白(rem, px)
* 例) flexSize(3, 10px)
*/
/* 幅 */
/* 高さ */
/* カラー */
/* フォント */
/* ボーダー */
.l-main {
  padding-top: min(4.25rem, 18.1333333333vw);
}

.fadein .fadein-left {
  transition: all 0.5s linear 0s;
  transform: translate(-30px, 0);
  opacity: 0;
}

.fadein .fadein-left.show {
  transform: translate(0, 0);
  opacity: 1;
}

.scrooll-animation {
  opacity: 0;
  transform: translate(-30px, 0);
  transition: all 1s;
}

.scrooll-animation.active {
  opacity: 1;
  transform: translate(0, 0);
}

/**
* rem変換 ※375以下ではvwとする
* $number 数値
* 例) 32pxをremに変換 (32);
*/
/**
* %計算
* $number 数値
* $basis %を計算するための基準値(幅)
* 例) 値1000に対して50の%値 (50, 1000);
*/
/**
* vw計算
* $number 数値
* $width vw(%)を計算するための基準幅(デフォルト：SPのデザイン幅)
* 例) SPデザイン幅時点で100pxとなるvw値 (100);
* 例) 画面幅1000px時点で100pxとなるvw値 (100, 1000);
*/
/* hover要素判定 */
/* コンテナ */
/**
* フォント
* $size フォントサイズ
* $line 行間(xdの値)
* $space 文字間(xdの値)
* 例) fontMinchoW4(16, 25, 0.16)
*/
/* ボーダー */
/**
* flex要素のwidthを取得(均等割り)
* $num 並べる個数
* $gap 間の余白(rem, px)
* 例) flexSize(3, 10px)
*/
/* 幅 */
/* 高さ */
/* カラー */
/* フォント */
/* ボーダー */
.l-section {
  margin-top: min(5rem, 21.3333333333vw);
}
@media screen and (min-width: 600px) {
  .l-section {
    margin-top: min(5rem, 21.3333333333vw);
  }
}
.l-section__mtHigh {
  margin-top: min(6.25rem, 26.6666666667vw);
}
@media screen and (min-width: 600px) {
  .l-section__mtHigh {
    margin-top: min(6.25rem, 26.6666666667vw);
  }
}
.l-section__mtLow {
  margin-top: min(3.125rem, 13.3333333333vw);
}
@media screen and (min-width: 600px) {
  .l-section__mtLow {
    margin-top: min(6.25rem, 26.6666666667vw);
  }
}
.l-section__mtPcLow {
  margin-top: min(3.125rem, 13.3333333333vw);
}
@media screen and (min-width: 600px) {
  .l-section__mtPcLow {
    margin-top: min(3.125rem, 13.3333333333vw);
  }
}

.fadein .fadein-left {
  transition: all 0.5s linear 0s;
  transform: translate(-30px, 0);
  opacity: 0;
}

.fadein .fadein-left.show {
  transform: translate(0, 0);
  opacity: 1;
}

.scrooll-animation {
  opacity: 0;
  transform: translate(-30px, 0);
  transition: all 1s;
}

.scrooll-animation.active {
  opacity: 1;
  transform: translate(0, 0);
}

/**
* rem変換 ※375以下ではvwとする
* $number 数値
* 例) 32pxをremに変換 (32);
*/
/**
* %計算
* $number 数値
* $basis %を計算するための基準値(幅)
* 例) 値1000に対して50の%値 (50, 1000);
*/
/**
* vw計算
* $number 数値
* $width vw(%)を計算するための基準幅(デフォルト：SPのデザイン幅)
* 例) SPデザイン幅時点で100pxとなるvw値 (100);
* 例) 画面幅1000px時点で100pxとなるvw値 (100, 1000);
*/
/* hover要素判定 */
/* コンテナ */
/**
* フォント
* $size フォントサイズ
* $line 行間(xdの値)
* $space 文字間(xdの値)
* 例) fontMinchoW4(16, 25, 0.16)
*/
/* ボーダー */
/**
* flex要素のwidthを取得(均等割り)
* $num 並べる個数
* $gap 間の余白(rem, px)
* 例) flexSize(3, 10px)
*/
/* 幅 */
/* 高さ */
/* カラー */
/* フォント */
/* ボーダー */
.c-accordion {
  display: none;
  opacity: 0;
  transition: opacity 1s;
}
.c-accordion.is_active {
  opacity: 1;
}

.fadein .fadein-left {
  transition: all 0.5s linear 0s;
  transform: translate(-30px, 0);
  opacity: 0;
}

.fadein .fadein-left.show {
  transform: translate(0, 0);
  opacity: 1;
}

.scrooll-animation {
  opacity: 0;
  transform: translate(-30px, 0);
  transition: all 1s;
}

.scrooll-animation.active {
  opacity: 1;
  transform: translate(0, 0);
}

/**
* rem変換 ※375以下ではvwとする
* $number 数値
* 例) 32pxをremに変換 (32);
*/
/**
* %計算
* $number 数値
* $basis %を計算するための基準値(幅)
* 例) 値1000に対して50の%値 (50, 1000);
*/
/**
* vw計算
* $number 数値
* $width vw(%)を計算するための基準幅(デフォルト：SPのデザイン幅)
* 例) SPデザイン幅時点で100pxとなるvw値 (100);
* 例) 画面幅1000px時点で100pxとなるvw値 (100, 1000);
*/
/* hover要素判定 */
/* コンテナ */
/**
* フォント
* $size フォントサイズ
* $line 行間(xdの値)
* $space 文字間(xdの値)
* 例) fontMinchoW4(16, 25, 0.16)
*/
/* ボーダー */
/**
* flex要素のwidthを取得(均等割り)
* $num 並べる個数
* $gap 間の余白(rem, px)
* 例) flexSize(3, 10px)
*/
/* 幅 */
/* 高さ */
/* カラー */
/* フォント */
/* ボーダー */
.c-anchor {
  margin-top: calc((min(4.25rem, 18.1333333333vw) + min(0.9375rem, 4vw)) * -1);
  padding-top: calc(min(4.25rem, 18.1333333333vw) + min(0.9375rem, 4vw));
}
@media screen and (min-width: 1025px) {
  .c-anchor {
    margin-top: calc((min(4.25rem, 18.1333333333vw) + min(0.9375rem, 4vw)) * -1);
    padding-top: calc(min(4.25rem, 18.1333333333vw) + min(0.9375rem, 4vw));
  }
}

.fadein .fadein-left {
  transition: all 0.5s linear 0s;
  transform: translate(-30px, 0);
  opacity: 0;
}

.fadein .fadein-left.show {
  transform: translate(0, 0);
  opacity: 1;
}

.scrooll-animation {
  opacity: 0;
  transform: translate(-30px, 0);
  transition: all 1s;
}

.scrooll-animation.active {
  opacity: 1;
  transform: translate(0, 0);
}

/**
* rem変換 ※375以下ではvwとする
* $number 数値
* 例) 32pxをremに変換 (32);
*/
/**
* %計算
* $number 数値
* $basis %を計算するための基準値(幅)
* 例) 値1000に対して50の%値 (50, 1000);
*/
/**
* vw計算
* $number 数値
* $width vw(%)を計算するための基準幅(デフォルト：SPのデザイン幅)
* 例) SPデザイン幅時点で100pxとなるvw値 (100);
* 例) 画面幅1000px時点で100pxとなるvw値 (100, 1000);
*/
/* hover要素判定 */
/* コンテナ */
/**
* フォント
* $size フォントサイズ
* $line 行間(xdの値)
* $space 文字間(xdの値)
* 例) fontMinchoW4(16, 25, 0.16)
*/
/* ボーダー */
/**
* flex要素のwidthを取得(均等割り)
* $num 並べる個数
* $gap 間の余白(rem, px)
* 例) flexSize(3, 10px)
*/
/* 幅 */
/* 高さ */
/* カラー */
/* フォント */
/* ボーダー */
.c-angle {
  height: min(0.441875rem, 1.8853333333vw);
  object-fit: contain;
  object-position: right;
  width: min(0.441875rem, 1.8853333333vw);
}
.c-angle__reverse {
  transform: rotate(180deg);
  object-position: left;
}

.fadein .fadein-left {
  transition: all 0.5s linear 0s;
  transform: translate(-30px, 0);
  opacity: 0;
}

.fadein .fadein-left.show {
  transform: translate(0, 0);
  opacity: 1;
}

.scrooll-animation {
  opacity: 0;
  transform: translate(-30px, 0);
  transition: all 1s;
}

.scrooll-animation.active {
  opacity: 1;
  transform: translate(0, 0);
}

/**
* rem変換 ※375以下ではvwとする
* $number 数値
* 例) 32pxをremに変換 (32);
*/
/**
* %計算
* $number 数値
* $basis %を計算するための基準値(幅)
* 例) 値1000に対して50の%値 (50, 1000);
*/
/**
* vw計算
* $number 数値
* $width vw(%)を計算するための基準幅(デフォルト：SPのデザイン幅)
* 例) SPデザイン幅時点で100pxとなるvw値 (100);
* 例) 画面幅1000px時点で100pxとなるvw値 (100, 1000);
*/
/* hover要素判定 */
/* コンテナ */
/**
* フォント
* $size フォントサイズ
* $line 行間(xdの値)
* $space 文字間(xdの値)
* 例) fontMinchoW4(16, 25, 0.16)
*/
/* ボーダー */
/**
* flex要素のwidthを取得(均等割り)
* $num 並べる個数
* $gap 間の余白(rem, px)
* 例) flexSize(3, 10px)
*/
/* 幅 */
/* 高さ */
/* カラー */
/* フォント */
/* ボーダー */
.c-attention {
  align-items: center;
  background-color: #FFF9F1;
  border-radius: min(1.875rem, 8vw);
  display: flex;
  gap: min(3.75rem, 16vw);
  height: min(8.125rem, 34.6666666667vw);
  justify-content: center;
}
@media screen and (min-width: 600px) {
  .c-attention {
    width: calc(33.3333333333% - min(0.625rem, 2.6666666667vw) * 2 / 3);
    flex-direction: column;
    gap: min(2.4375rem, 10.4vw);
    height: min(14.375rem, 61.3333333333vw);
  }
}
@media screen and (min-width: 1025px) {
  .c-attention {
    width: calc(33.3333333333% - min(1.25rem, 5.3333333333vw) * 2 / 3);
  }
}
@media screen and (min-width: 600px) {
  .c-attention:nth-of-type(1) {
    padding-top: min(0.8125rem, 3.4666666667vw);
  }
}
@media screen and (min-width: 600px) {
  .c-attention:nth-of-type(1) .c-attention_imgWrap {
    width: min(6.875rem, 29.3333333333vw);
  }
}
.c-attention:nth-of-type(2) {
  gap: min(1.1875rem, 5.0666666667vw);
}
@media screen and (min-width: 600px) {
  .c-attention:nth-of-type(2) {
    gap: min(2.1875rem, 9.3333333333vw);
  }
}
@media screen and (min-width: 600px) {
  .c-attention:nth-of-type(2) .c-attention_imgWrap {
    width: min(5.875rem, 25.0666666667vw);
  }
}
.c-attention:nth-of-type(3) {
  gap: min(2.6875rem, 11.4666666667vw);
}
@media screen and (min-width: 600px) {
  .c-attention:nth-of-type(3) {
    gap: min(1.5625rem, 6.6666666667vw);
  }
}
@media screen and (min-width: 600px) {
  .c-attention:nth-of-type(3) .c-attention_imgWrap {
    width: min(5.5rem, 23.4666666667vw);
  }
}
.c-attention_unit {
  display: flex;
  flex-direction: column;
  gap: min(0.625rem, 2.6666666667vw);
  margin-top: min(1.25rem, 5.3333333333vw);
}
@media screen and (min-width: 600px) {
  .c-attention_unit {
    flex-direction: row;
  }
}
@media screen and (min-width: 1025px) {
  .c-attention_unit {
    gap: min(1.25rem, 5.3333333333vw);
  }
}
.c-attention_imgWrap {
  width: min(5rem, 21.3333333333vw);
}
.c-attention_img {
  height: auto;
  object-fit: contain;
  width: 100%;
}
.c-attention_ex {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 500;
  font-size: min(0.875rem, 3.7333333333vw);
  letter-spacing: 0.0007142857em;
  line-height: 2.1428571429;
  color: #6AB112;
  text-align: center;
}
@media screen and (min-width: 600px) {
  .c-attention_ex {
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 500;
    font-size: min(0.8125rem, 3.4666666667vw);
    letter-spacing: 0.0007692308em;
    line-height: 1.9230769231;
  }
}
@media screen and (min-width: 1025px) {
  .c-attention_ex {
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 500;
    font-size: min(0.8125rem, 3.4666666667vw);
    letter-spacing: 0.0007692308em;
    line-height: 1.9230769231;
  }
}

.fadein .fadein-left {
  transition: all 0.5s linear 0s;
  transform: translate(-30px, 0);
  opacity: 0;
}

.fadein .fadein-left.show {
  transform: translate(0, 0);
  opacity: 1;
}

.scrooll-animation {
  opacity: 0;
  transform: translate(-30px, 0);
  transition: all 1s;
}

.scrooll-animation.active {
  opacity: 1;
  transform: translate(0, 0);
}

/**
* rem変換 ※375以下ではvwとする
* $number 数値
* 例) 32pxをremに変換 (32);
*/
/**
* %計算
* $number 数値
* $basis %を計算するための基準値(幅)
* 例) 値1000に対して50の%値 (50, 1000);
*/
/**
* vw計算
* $number 数値
* $width vw(%)を計算するための基準幅(デフォルト：SPのデザイン幅)
* 例) SPデザイン幅時点で100pxとなるvw値 (100);
* 例) 画面幅1000px時点で100pxとなるvw値 (100, 1000);
*/
/* hover要素判定 */
/* コンテナ */
/**
* フォント
* $size フォントサイズ
* $line 行間(xdの値)
* $space 文字間(xdの値)
* 例) fontMinchoW4(16, 25, 0.16)
*/
/* ボーダー */
/**
* flex要素のwidthを取得(均等割り)
* $num 並べる個数
* $gap 間の余白(rem, px)
* 例) flexSize(3, 10px)
*/
/* 幅 */
/* 高さ */
/* カラー */
/* フォント */
/* ボーダー */
.c-bred {
  margin: 0 auto;
  width: 89.3333333333%;
  align-items: center;
  display: flex;
  gap: min(2.5rem, 10.6666666667vw);
  margin-top: min(0.5rem, 2.1333333333vw);
  max-width: min(62.5rem, 266.6666666667vw);
}
.c-bred_list {
  position: relative;
}
.c-bred_list:not(:last-of-type)::before {
  background-color: #9F9F9F;
  content: "";
  display: block;
  height: min(0.9375rem, 4vw);
  position: absolute;
  top: 50%;
  transform: translateY(-50%) rotate(45deg);
  right: max(-1.21875rem, -5.2vw);
  width: min(0.0625rem, 0.2666666667vw);
}
.c-bred_item {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  font-size: min(0.6875rem, 2.9333333333vw);
  letter-spacing: 0.01em;
  line-height: 1;
  color: #9F9F9F;
}
.c-bred_item__active {
  color: #616161;
  pointer-events: none;
}

.fadein .fadein-left {
  transition: all 0.5s linear 0s;
  transform: translate(-30px, 0);
  opacity: 0;
}

.fadein .fadein-left.show {
  transform: translate(0, 0);
  opacity: 1;
}

.scrooll-animation {
  opacity: 0;
  transform: translate(-30px, 0);
  transition: all 1s;
}

.scrooll-animation.active {
  opacity: 1;
  transform: translate(0, 0);
}

/**
* rem変換 ※375以下ではvwとする
* $number 数値
* 例) 32pxをremに変換 (32);
*/
/**
* %計算
* $number 数値
* $basis %を計算するための基準値(幅)
* 例) 値1000に対して50の%値 (50, 1000);
*/
/**
* vw計算
* $number 数値
* $width vw(%)を計算するための基準幅(デフォルト：SPのデザイン幅)
* 例) SPデザイン幅時点で100pxとなるvw値 (100);
* 例) 画面幅1000px時点で100pxとなるvw値 (100, 1000);
*/
/* hover要素判定 */
/* コンテナ */
/**
* フォント
* $size フォントサイズ
* $line 行間(xdの値)
* $space 文字間(xdの値)
* 例) fontMinchoW4(16, 25, 0.16)
*/
/* ボーダー */
/**
* flex要素のwidthを取得(均等割り)
* $num 並べる個数
* $gap 間の余白(rem, px)
* 例) flexSize(3, 10px)
*/
/* 幅 */
/* 高さ */
/* カラー */
/* フォント */
/* ボーダー */
.c-btn {
  align-items: center;
  background-color: #EC4728;
  border-radius: 100vh;
  display: flex;
  justify-content: space-between;
  height: min(3.125rem, 13.3333333333vw);
  margin-inline: auto;
  padding: 0 min(0.625rem, 2.6666666667vw) 0 min(1.25rem, 5.3333333333vw);
  position: relative;
  width: min(11.6875rem, 49.8666666667vw);
}
.c-btn__reverse {
  flex-direction: row-reverse;
  padding: 0 min(1.25rem, 5.3333333333vw) 0 min(0.625rem, 2.6666666667vw);
}
.c-btn__form {
  position: relative;
}
.c-btn__form::after {
  content: "";
  background-image: url("../images/icon_angle.png");
  background-repeat: no-repeat;
  background-size: min(0.46875rem, 2vw) min(0.46875rem, 2vw);
  background-color: #fff;
  background-position: center;
  border-radius: 100vh;
  display: block;
  height: min(1.875rem, 8vw);
  position: absolute;
  top: 50%;
  right: 0;
  transform: translate(max(-0.625rem, -2.6666666667vw), -50%);
  width: min(1.875rem, 8vw);
}
.c-btn__form br {
  display: none !important;
}
.c-btn::before {
  background: transparent linear-gradient(270deg, #F69D0E 0%, #EC4728 100%) 0% 0% no-repeat padding-box;
  border-radius: 100vh;
  content: "";
  display: block;
  height: 100%;
  left: 0;
  top: 0;
  position: absolute;
  width: 100%;
}
.c-btn__left {
  margin: 0;
}
@media screen and (min-width: 1025px) {
  .c-btn__s {
    width: min(9.8125rem, 41.8666666667vw);
  }
}
.c-btn__wide {
  width: min(20.9375rem, 89.3333333333vw);
}
.c-btn__wide .c-btn_text {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  font-size: min(1.125rem, 4.8vw);
  letter-spacing: 0.03em;
  line-height: 2.2222222222;
}
.c-btn__wide02 {
  width: min(14.5625rem, 62.1333333333vw);
}
.c-btn__back {
  padding: 0 min(1.25rem, 5.3333333333vw) 0 min(0.625rem, 2.6666666667vw);
}
.c-btn__accordion .c-btn_icon {
  transition: transform 0.4s;
  transform: rotate(90deg);
}
.c-btn__accordion .c-btn_icon.is_active {
  transform: rotate(-90deg);
}
.c-btn_text {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  font-size: min(1rem, 4.2666666667vw);
  letter-spacing: 0.03em;
  line-height: 2.5;
  color: #fff;
  position: relative;
  z-index: 1;
}
.c-btn_text__min {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  font-size: min(0.9375rem, 4vw);
  letter-spacing: 0.0266666667em;
  line-height: 1;
}
.c-btn_text__min02 {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  font-size: min(0.8125rem, 3.4666666667vw);
  letter-spacing: 0.03em;
  line-height: 1;
}
.c-btn_icon {
  align-items: center;
  background-color: #fff;
  border-radius: 100vh;
  display: flex;
  justify-content: center;
  height: min(1.875rem, 8vw);
  position: relative;
  width: min(1.875rem, 8vw);
  z-index: 1;
}
.c-btn_icon.is_active {
  transform: rotate(-90deg);
}
.c-btn_icon_back {
  transform: rotate(180deg);
}
.c-btn_icon__l img {
  height: min(0.625rem, 2.6666666667vw);
  width: min(0.625rem, 2.6666666667vw);
}

.fadein .fadein-left {
  transition: all 0.5s linear 0s;
  transform: translate(-30px, 0);
  opacity: 0;
}

.fadein .fadein-left.show {
  transform: translate(0, 0);
  opacity: 1;
}

.scrooll-animation {
  opacity: 0;
  transform: translate(-30px, 0);
  transition: all 1s;
}

.scrooll-animation.active {
  opacity: 1;
  transform: translate(0, 0);
}

/**
* rem変換 ※375以下ではvwとする
* $number 数値
* 例) 32pxをremに変換 (32);
*/
/**
* %計算
* $number 数値
* $basis %を計算するための基準値(幅)
* 例) 値1000に対して50の%値 (50, 1000);
*/
/**
* vw計算
* $number 数値
* $width vw(%)を計算するための基準幅(デフォルト：SPのデザイン幅)
* 例) SPデザイン幅時点で100pxとなるvw値 (100);
* 例) 画面幅1000px時点で100pxとなるvw値 (100, 1000);
*/
/* hover要素判定 */
/* コンテナ */
/**
* フォント
* $size フォントサイズ
* $line 行間(xdの値)
* $space 文字間(xdの値)
* 例) fontMinchoW4(16, 25, 0.16)
*/
/* ボーダー */
/**
* flex要素のwidthを取得(均等割り)
* $num 並べる個数
* $gap 間の余白(rem, px)
* 例) flexSize(3, 10px)
*/
/* 幅 */
/* 高さ */
/* カラー */
/* フォント */
/* ボーダー */
.c-btn02 {
  align-items: center;
  background-color: #707070;
  border-radius: 100vh;
  display: flex;
  justify-content: space-between;
  height: min(3.125rem, 13.3333333333vw);
  margin-inline: auto;
  padding: 0 min(0.625rem, 2.6666666667vw) 0 min(1.25rem, 5.3333333333vw);
  position: relative;
  width: min(11.6875rem, 49.8666666667vw);
}
.c-btn02__reverse {
  flex-direction: row-reverse;
  padding: 0 min(1.25rem, 5.3333333333vw) 0 min(0.625rem, 2.6666666667vw);
}
.c-btn02__form {
  position: relative;
  justify-content: flex-end;
}
.c-btn02__form::after {
  content: "";
  background-image: url("../images/icon_angle.png");
  background-repeat: no-repeat;
  background-size: min(0.46875rem, 2vw) min(0.46875rem, 2vw);
  background-color: #fff;
  background-position: center;
  border-radius: 100vh;
  display: block;
  height: min(1.875rem, 8vw);
  position: absolute;
  top: 50%;
  left: 0;
  transform: translate(min(0.625rem, 2.6666666667vw), -50%) rotate(180deg);
  width: min(1.875rem, 8vw);
}
.c-btn02__form br {
  display: none !important;
}
.c-btn02::before {
  background: transparent linear-gradient(270deg, #9F9F9F 0%, #707070 100%) 0% 0% no-repeat padding-box;
  border-radius: 100vh;
  content: "";
  display: block;
  height: 100%;
  left: 0;
  top: 0;
  position: absolute;
  width: 100%;
}
.c-btn02__left {
  margin: 0;
}
.c-btn02__wide {
  width: min(20.9375rem, 89.3333333333vw);
}
.c-btn02__wide .c-btn_text {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  font-size: min(1rem, 4.2666666667vw);
  letter-spacing: 0.03375em;
  line-height: 2.5;
}
.c-btn02__wide02 {
  width: min(14.5625rem, 62.1333333333vw);
}
.c-btn02__back {
  padding: 0 min(1.25rem, 5.3333333333vw) 0 min(0.625rem, 2.6666666667vw);
}
.c-btn02__accordion .c-btn_icon {
  transition: transform 0.4s;
  transform: rotate(90deg);
}
.c-btn02__accordion .c-btn_icon.is_active {
  transform: rotate(-90deg);
}
.c-btn02_text {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  font-size: min(1rem, 4.2666666667vw);
  letter-spacing: 0.03em;
  line-height: 2.5;
  color: #fff;
  position: relative;
  z-index: 1;
}
.c-btn02_text__min {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  font-size: min(0.9375rem, 4vw);
  letter-spacing: 0.0266666667em;
  line-height: 1;
}
.c-btn02_text__min02 {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  font-size: min(0.8125rem, 3.4666666667vw);
  letter-spacing: 0.03em;
  line-height: 1;
}
.c-btn02_icon {
  align-items: center;
  background-color: #fff;
  border-radius: 100vh;
  display: flex;
  justify-content: center;
  height: min(1.875rem, 8vw);
  position: relative;
  width: min(1.875rem, 8vw);
  z-index: 1;
}
.c-btn02_icon.is_active {
  transform: rotate(-90deg);
}
.c-btn02_icon_back {
  transform: rotate(180deg);
}

.fadein .fadein-left {
  transition: all 0.5s linear 0s;
  transform: translate(-30px, 0);
  opacity: 0;
}

.fadein .fadein-left.show {
  transform: translate(0, 0);
  opacity: 1;
}

.scrooll-animation {
  opacity: 0;
  transform: translate(-30px, 0);
  transition: all 1s;
}

.scrooll-animation.active {
  opacity: 1;
  transform: translate(0, 0);
}

/**
* rem変換 ※375以下ではvwとする
* $number 数値
* 例) 32pxをremに変換 (32);
*/
/**
* %計算
* $number 数値
* $basis %を計算するための基準値(幅)
* 例) 値1000に対して50の%値 (50, 1000);
*/
/**
* vw計算
* $number 数値
* $width vw(%)を計算するための基準幅(デフォルト：SPのデザイン幅)
* 例) SPデザイン幅時点で100pxとなるvw値 (100);
* 例) 画面幅1000px時点で100pxとなるvw値 (100, 1000);
*/
/* hover要素判定 */
/* コンテナ */
/**
* フォント
* $size フォントサイズ
* $line 行間(xdの値)
* $space 文字間(xdの値)
* 例) fontMinchoW4(16, 25, 0.16)
*/
/* ボーダー */
/**
* flex要素のwidthを取得(均等割り)
* $num 並べる個数
* $gap 間の余白(rem, px)
* 例) flexSize(3, 10px)
*/
/* 幅 */
/* 高さ */
/* カラー */
/* フォント */
/* ボーダー */
.c-cardUnit {
  display: flex;
  flex-direction: column;
  gap: min(1.25rem, 5.3333333333vw);
}
@media screen and (min-width: 600px) {
  .c-cardUnit__pcMt {
    gap: min(3.125rem, 13.3333333333vw);
  }
}

.c-cardFlex {
  container: layout inline-size;
  display: flex;
  flex-direction: column;
  gap: min(1.25rem, 5.3333333333vw);
}
@media screen and (min-width: 600px) {
  .c-cardFlex {
    gap: min(3.125rem, 13.3333333333vw);
  }
}
@media screen and (min-width: 1025px) {
  .c-cardFlex {
    display: flex;
    flex-direction: row;
    gap: min(1.25rem, 5.3333333333vw);
  }
}
.c-cardFlex_inner {
  display: flex;
  flex-direction: column;
  gap: min(1.25rem, 5.3333333333vw);
}
@media screen and (min-width: 600px) {
  .c-cardFlex_inner {
    gap: min(3.125rem, 13.3333333333vw);
  }
}
@media screen and (min-width: 1025px) {
  .c-cardFlex_inner {
    gap: min(1.25rem, 5.3333333333vw);
  }
}
@media screen and (min-width: 1025px) {
  .c-cardFlex > * {
    width: calc(50% - min(1.25rem, 5.3333333333vw) / 2) !important;
  }
}

.c-card {
  background-color: #FFF9F1;
  border-radius: min(1.875rem, 8vw);
  padding: min(0.625rem, 2.6666666667vw) min(0.625rem, 2.6666666667vw) min(1.875rem, 8vw) min(0.625rem, 2.6666666667vw);
  width: 100%;
}
@media screen and (min-width: 1025px) {
  .c-card {
    padding: min(0.625rem, 2.6666666667vw) min(0.625rem, 2.6666666667vw) min(1.875rem, 8vw) min(0.625rem, 2.6666666667vw);
  }
}
.c-card__br {
  border-radius: min(2.1875rem, 9.3333333333vw);
}
@media screen and (min-width: 1025px) {
  .c-card__mx {
    margin-inline: auto;
    max-width: min(25rem, 106.6666666667vw);
  }
}
@media screen and (min-width: 1025px) {
  .c-card__flex {
    display: flex;
    gap: min(1.9375rem, 8.2666666667vw);
  }
  .c-card__flex .c-card_img {
    width: 100%;
  }
}
@media screen and (min-width: 1025px) {
  .c-card_flexInner {
    width: min(23.75rem, 101.3333333333vw);
  }
  .c-card_flexInner .c-card_img {
    aspect-ratio: 380/200;
  }
  .c-card_flexInner .c-card_img__heigh {
    aspect-ratio: 380/275;
  }
}
@media screen and (min-width: 1025px) {
  .c-card_flexInnerRight {
    margin-top: min(5rem, 21.3333333333vw);
    width: calc(100% - min(1.9375rem, 8.2666666667vw) - min(23.75rem, 101.3333333333vw));
  }
  .c-card_flexInnerRight .c-card_btn {
    margin-top: min(1.875rem, 8vw);
  }
  .c-card_flexInnerRight .c-card_paragraph {
    padding: 0;
  }
}
.c-card_titleWrap {
  align-items: center;
  background-color: #fff;
  border-radius: 100vh;
  display: flex;
  gap: min(0.625rem, 2.6666666667vw);
  height: min(3.125rem, 13.3333333333vw);
  justify-content: center;
  margin-bottom: min(1.25rem, 5.3333333333vw);
  padding: 0 min(1.25rem, 5.3333333333vw);
  width: 100%;
}
.c-card_titleWrap__mt {
  margin-top: min(1.875rem, 8vw);
}
@media screen and (min-width: 1025px) {
  .c-card_titleWrap__mt {
    margin-top: min(3.125rem, 13.3333333333vw);
  }
}
.c-card_titleWrap__mx {
  margin-inline: auto;
  max-width: min(20.9375rem, 89.3333333333vw);
}
.c-card_titleWrap__between {
  justify-content: space-between;
}
.c-card_titleWrap__left {
  justify-content: flex-start;
}
.c-card_titleWrap_icon {
  height: min(1.25rem, 5.3333333333vw);
  width: min(1.25rem, 5.3333333333vw);
  object-fit: contain;
}
.c-card_titleWrap_icon__l {
  height: auto;
  width: min(1.875rem, 8vw);
}
.c-card_titleWrap_title {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 700;
  font-size: min(1.125rem, 4.8vw);
  letter-spacing: 0.01em;
  line-height: 1;
  color: #F69D0E;
}
.c-card_titleWrap_title__s {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 700;
  font-size: min(1rem, 4.2666666667vw);
  letter-spacing: 0.03em;
  line-height: 1;
}
.c-card_titleWrap_title__s02 {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 700;
  font-size: min(0.8125rem, 3.4666666667vw);
  letter-spacing: 0.01em;
  line-height: 1;
}
.c-card_titleWrap_title__nocol {
  color: #616161;
}
.c-card_inner {
  position: relative;
}
.c-card_inner:has(.c-card_img--scroll) {
  padding-bottom: 10px;
  background-color: #fff;
  border-radius: min(1.875rem, 8vw);
  position: relative;
}
.c-card_inner:has(.c-card_img--scroll)::before {
  content: "";
  display: block;
  height: 2px;
  background-color: #9F9F9F;
  width: 100%;
  position: absolute;
  bottom: 14px;
  left: 50%;
  width: 92.5373134328%;
  transform: translateX(-50%);
}
.c-card_inner > *:nth-child(n+2) {
  margin-top: min(1.25rem, 5.3333333333vw);
}
.c-card_inner .c-sliderWrap {
  left: 50%;
  position: absolute;
  top: 0;
  transform: translateX(-50%);
  width: 100vw;
}
@media screen and (min-width: 1025px) {
  .c-card_inner__flex {
    align-items: center;
    display: flex;
    justify-content: space-between;
  }
  .c-card_inner__flex.is_active {
    align-items: flex-end;
  }
  .c-card_inner__flex .c-card_paragraph {
    display: flex;
    flex-direction: column;
    justify-content: center;
    min-height: min(3.125rem, 13.3333333333vw);
  }
  .c-card_inner__flex .c-card_btn {
    margin-top: 0 !important;
  }
}
.c-card_btn {
  text-align: center;
}
.c-card_paragraph {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  font-size: min(1rem, 4.2666666667vw);
  letter-spacing: 0.01em;
  line-height: 2.1875;
  padding: 0 min(0.3125rem, 1.3333333333vw);
}
@media screen and (min-width: 1025px) {
  .c-card_paragraph {
    padding: 0 min(0.625rem, 2.6666666667vw) 0 min(0.625rem, 2.6666666667vw);
  }
}
.c-card_paragraph__s {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  font-size: min(0.9375rem, 4vw);
  letter-spacing: 0.01em;
  line-height: 1.6666666667;
}
.c-card_paragraph__s02 {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  font-size: min(0.875rem, 3.7333333333vw);
  letter-spacing: 0.01em;
  line-height: 1.7857142857;
  padding: 0;
}
.c-card_paragraph__s03 {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  font-size: min(0.9375rem, 4vw);
  letter-spacing: 0.0093333333em;
  line-height: 2.3333333333;
}
@media screen and (min-width: 1025px) {
  .c-card_paragraph__s03 {
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 400;
    font-size: min(1rem, 4.2666666667vw);
    letter-spacing: 0.00875em;
    line-height: 1.875;
  }
}
.c-card_paragraph__in {
  padding: 0 min(1.8125rem, 7.7333333333vw);
}
@media screen and (min-width: 1025px) {
  .c-card_paragraph__in {
    padding: 0 min(2.8125rem, 12vw);
  }
}
@media screen and (min-width: 1025px) {
  .c-card_paragraph__inPc {
    padding: 0 min(2.8125rem, 12vw);
  }
}
.c-card_paragraph__in02 {
  padding: 0 min(0.6875rem, 2.9333333333vw);
}
@media screen and (min-width: 1025px) {
  .c-card_paragraph__in02 {
    padding: 0 min(0.6875rem, 2.9333333333vw);
  }
}
.c-card_paragraph__accent {
  color: #F69D0E;
  font-weight: 700;
}
.c-card_paragraph__tac {
  text-align: center;
}
.c-card_paragraph__accordion {
  height: min(13.75rem, 58.6666666667vw);
}
@media screen and (min-width: 1025px) {
  .c-card_paragraph__mt {
    margin-top: min(2.5rem, 10.6666666667vw);
  }
}
.c-card_img {
  aspect-ratio: 310/200;
  border-radius: min(1.875rem, 8vw);
  height: auto;
  margin: 0 auto;
  width: 92.5373134328%;
}
.c-card_img--scroll {
  overflow: auto;
  position: relative;
}
@media screen and (min-width: 1025px) {
  .c-card_img--scroll {
    width: 92.5373134328% !important;
  }
}
.c-card_img--scroll::-webkit-scrollbar {
  height: 11px;
}
.c-card_img--scroll::-webkit-scrollbar-track {
  background: transparent;
  border-radius: 100vh;
}
.c-card_img--scroll::-webkit-scrollbar-thumb {
  background-color: #F06A1D;
  border-radius: 100vh;
}
.c-card_img_scrollItem {
  height: 100%;
  width: auto;
}

.fadein .fadein-left {
  transition: all 0.5s linear 0s;
  transform: translate(-30px, 0);
  opacity: 0;
}

.fadein .fadein-left.show {
  transform: translate(0, 0);
  opacity: 1;
}

.scrooll-animation {
  opacity: 0;
  transform: translate(-30px, 0);
  transition: all 1s;
}

.scrooll-animation.active {
  opacity: 1;
  transform: translate(0, 0);
}

/**
* rem変換 ※375以下ではvwとする
* $number 数値
* 例) 32pxをremに変換 (32);
*/
/**
* %計算
* $number 数値
* $basis %を計算するための基準値(幅)
* 例) 値1000に対して50の%値 (50, 1000);
*/
/**
* vw計算
* $number 数値
* $width vw(%)を計算するための基準幅(デフォルト：SPのデザイン幅)
* 例) SPデザイン幅時点で100pxとなるvw値 (100);
* 例) 画面幅1000px時点で100pxとなるvw値 (100, 1000);
*/
/* hover要素判定 */
/* コンテナ */
/**
* フォント
* $size フォントサイズ
* $line 行間(xdの値)
* $space 文字間(xdの値)
* 例) fontMinchoW4(16, 25, 0.16)
*/
/* ボーダー */
/**
* flex要素のwidthを取得(均等割り)
* $num 並べる個数
* $gap 間の余白(rem, px)
* 例) flexSize(3, 10px)
*/
/* 幅 */
/* 高さ */
/* カラー */
/* フォント */
/* ボーダー */
.c-contactBnr {
  background-image: url("../images/img_contact.png");
  background-position: center;
  background-size: cover;
  display: flex;
  justify-content: center;
  height: min(7.484375rem, 31.9333333333vw);
  position: relative;
  width: 100%;
}
@media screen and (min-width: 600px) {
  .c-contactBnr {
    height: min(12.5rem, 53.3333333333vw);
  }
}
@media screen and (min-width: 1025px) {
  .c-contactBnr {
    height: min(18.75rem, 80vw);
  }
}
.c-contactBnr_inner {
  align-items: center;
  color: #fff;
  display: flex;
  flex-direction: column;
  justify-content: center;
  position: relative;
  text-align: center;
  z-index: 1;
}
.c-contactBnr_inner_head {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 500;
  font-size: min(0.9375rem, 4vw);
  letter-spacing: 0.03em;
  line-height: 1;
}
@media screen and (min-width: 1025px) {
  .c-contactBnr_inner_head {
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 500;
    font-size: min(1.5625rem, 6.6666666667vw);
    letter-spacing: 0.03em;
    line-height: 1;
  }
}
.c-contactBnr_inner_tel {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 500;
  font-size: min(1.1875rem, 5.0666666667vw);
  letter-spacing: -0.15em;
  line-height: 1;
  align-items: center;
  color: #fff;
  display: flex;
  gap: min(0.3125rem, 1.3333333333vw);
  margin-top: min(1.25rem, 5.3333333333vw);
}
@media screen and (min-width: 1025px) {
  .c-contactBnr_inner_tel {
    margin-top: min(1.875rem, 8vw);
  }
}
.c-contactBnr_inner_telIcon {
  display: block;
  height: min(1.531875rem, 6.536vw);
  width: min(1.531875rem, 6.536vw);
}
.c-contactBnr_inner_telIcon img {
  height: 100%;
  object-fit: contain;
}
.c-contactBnr_inner_time {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  font-size: min(0.8125rem, 3.4666666667vw);
  letter-spacing: 0.04em;
  line-height: 1;
  margin-top: min(0.625rem, 2.6666666667vw);
}

.fadein .fadein-left {
  transition: all 0.5s linear 0s;
  transform: translate(-30px, 0);
  opacity: 0;
}

.fadein .fadein-left.show {
  transform: translate(0, 0);
  opacity: 1;
}

.scrooll-animation {
  opacity: 0;
  transform: translate(-30px, 0);
  transition: all 1s;
}

.scrooll-animation.active {
  opacity: 1;
  transform: translate(0, 0);
}

/**
* rem変換 ※375以下ではvwとする
* $number 数値
* 例) 32pxをremに変換 (32);
*/
/**
* %計算
* $number 数値
* $basis %を計算するための基準値(幅)
* 例) 値1000に対して50の%値 (50, 1000);
*/
/**
* vw計算
* $number 数値
* $width vw(%)を計算するための基準幅(デフォルト：SPのデザイン幅)
* 例) SPデザイン幅時点で100pxとなるvw値 (100);
* 例) 画面幅1000px時点で100pxとなるvw値 (100, 1000);
*/
/* hover要素判定 */
/* コンテナ */
/**
* フォント
* $size フォントサイズ
* $line 行間(xdの値)
* $space 文字間(xdの値)
* 例) fontMinchoW4(16, 25, 0.16)
*/
/* ボーダー */
/**
* flex要素のwidthを取得(均等割り)
* $num 並べる個数
* $gap 間の余白(rem, px)
* 例) flexSize(3, 10px)
*/
/* 幅 */
/* 高さ */
/* カラー */
/* フォント */
/* ボーダー */
.c-counter_type01 {
  display: block;
  padding-left: min(3rem, 12.8vw);
  position: relative;
  width: 100%;
}
.c-counter_type01::before {
  display: block;
  left: 0;
  letter-spacing: 0.16em;
  position: absolute;
  top: 0;
}
.c-counter_type01:nth-of-type(1)::before {
  content: "（" "1" "）";
}
.c-counter_type01:nth-of-type(2)::before {
  content: "（" "2" "）";
}
.c-counter_type01:nth-of-type(3)::before {
  content: "（" "3" "）";
}
.c-counter_type01:nth-of-type(4)::before {
  content: "（" "4" "）";
}
.c-counter_type01:nth-of-type(5)::before {
  content: "（" "5" "）";
}
.c-counter_type01:nth-of-type(6)::before {
  content: "（" "6" "）";
}
.c-counter_type01:nth-of-type(7)::before {
  content: "（" "7" "）";
}
.c-counter_type01:nth-of-type(8)::before {
  content: "（" "8" "）";
}
.c-counter_type01:nth-of-type(9)::before {
  content: "（" "9" "）";
}
.c-counter_type01:nth-of-type(10)::before {
  content: "（" "10" "）";
  letter-spacing: -0.12em;
}
.c-counter_type01:nth-of-type(11)::before {
  content: "（" "11" "）";
  letter-spacing: -0.12em;
}
.c-counter_type01:nth-of-type(12)::before {
  content: "（" "12" "）";
  letter-spacing: -0.12em;
}
.c-counter_type01:nth-of-type(13)::before {
  content: "（" "13" "）";
  letter-spacing: -0.12em;
}
.c-counter_type01:nth-of-type(14)::before {
  content: "（" "14" "）";
  letter-spacing: -0.12em;
}
.c-counter_type01:nth-of-type(15)::before {
  content: "（" "15" "）";
  letter-spacing: -0.12em;
}
.c-counter_type01:nth-of-type(16)::before {
  content: "（" "16" "）";
  letter-spacing: -0.12em;
}
.c-counter_type01:nth-of-type(17)::before {
  content: "（" "17" "）";
  letter-spacing: -0.12em;
}
.c-counter_type01:nth-of-type(18)::before {
  content: "（" "18" "）";
  letter-spacing: -0.12em;
}
.c-counter_type01:nth-of-type(19)::before {
  content: "（" "19" "）";
  letter-spacing: -0.12em;
}
.c-counter_type01:nth-of-type(20)::before {
  content: "（" "20" "）";
  letter-spacing: -0.12em;
}

.fadein .fadein-left {
  transition: all 0.5s linear 0s;
  transform: translate(-30px, 0);
  opacity: 0;
}

.fadein .fadein-left.show {
  transform: translate(0, 0);
  opacity: 1;
}

.scrooll-animation {
  opacity: 0;
  transform: translate(-30px, 0);
  transition: all 1s;
}

.scrooll-animation.active {
  opacity: 1;
  transform: translate(0, 0);
}

/**
* rem変換 ※375以下ではvwとする
* $number 数値
* 例) 32pxをremに変換 (32);
*/
/**
* %計算
* $number 数値
* $basis %を計算するための基準値(幅)
* 例) 値1000に対して50の%値 (50, 1000);
*/
/**
* vw計算
* $number 数値
* $width vw(%)を計算するための基準幅(デフォルト：SPのデザイン幅)
* 例) SPデザイン幅時点で100pxとなるvw値 (100);
* 例) 画面幅1000px時点で100pxとなるvw値 (100, 1000);
*/
/* hover要素判定 */
/* コンテナ */
/**
* フォント
* $size フォントサイズ
* $line 行間(xdの値)
* $space 文字間(xdの値)
* 例) fontMinchoW4(16, 25, 0.16)
*/
/* ボーダー */
/**
* flex要素のwidthを取得(均等割り)
* $num 並べる個数
* $gap 間の余白(rem, px)
* 例) flexSize(3, 10px)
*/
/* 幅 */
/* 高さ */
/* カラー */
/* フォント */
/* ボーダー */
.c-date {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 500;
  font-size: min(0.9375rem, 4vw);
  letter-spacing: 0.03em;
  line-height: 1;
  color: #F69D0E;
}

.fadein .fadein-left {
  transition: all 0.5s linear 0s;
  transform: translate(-30px, 0);
  opacity: 0;
}

.fadein .fadein-left.show {
  transform: translate(0, 0);
  opacity: 1;
}

.scrooll-animation {
  opacity: 0;
  transform: translate(-30px, 0);
  transition: all 1s;
}

.scrooll-animation.active {
  opacity: 1;
  transform: translate(0, 0);
}

/**
* rem変換 ※375以下ではvwとする
* $number 数値
* 例) 32pxをremに変換 (32);
*/
/**
* %計算
* $number 数値
* $basis %を計算するための基準値(幅)
* 例) 値1000に対して50の%値 (50, 1000);
*/
/**
* vw計算
* $number 数値
* $width vw(%)を計算するための基準幅(デフォルト：SPのデザイン幅)
* 例) SPデザイン幅時点で100pxとなるvw値 (100);
* 例) 画面幅1000px時点で100pxとなるvw値 (100, 1000);
*/
/* hover要素判定 */
/* コンテナ */
/**
* フォント
* $size フォントサイズ
* $line 行間(xdの値)
* $space 文字間(xdの値)
* 例) fontMinchoW4(16, 25, 0.16)
*/
/* ボーダー */
/**
* flex要素のwidthを取得(均等割り)
* $num 並べる個数
* $gap 間の余白(rem, px)
* 例) flexSize(3, 10px)
*/
/* 幅 */
/* 高さ */
/* カラー */
/* フォント */
/* ボーダー */
.c-fadeScaleSlide {
  height: 100%;
  overflow: hidden;
  position: relative;
  width: 100%;
}
.c-fadeScaleSlide_paginate {
  display: flex;
  gap: min(0.125rem, 0.5333333333vw);
  height: min(0.09375rem, 0.4vw);
  width: 100%;
}
.c-fadeScaleSlide_paginate_item {
  background-color: #9F9F9F;
  flex-grow: 1;
  height: 100%;
}
.c-fadeScaleSlide_paginate_item.is_active {
  background-color: #F69D0E;
}
.c-fadeScaleSlide_item {
  left: 0;
  height: 100%;
  object-fit: cover;
  object-position: 50% 0;
  position: absolute;
  top: 0;
  transform: translateX(100%);
  width: 100%;
}
.c-fadeScaleSlide_item__first {
  transform: translateX(0);
}
.c-fadeScaleSlide_item__posR {
  object-position: 60% 50%;
}

.fadein .fadein-left {
  transition: all 0.5s linear 0s;
  transform: translate(-30px, 0);
  opacity: 0;
}

.fadein .fadein-left.show {
  transform: translate(0, 0);
  opacity: 1;
}

.scrooll-animation {
  opacity: 0;
  transform: translate(-30px, 0);
  transition: all 1s;
}

.scrooll-animation.active {
  opacity: 1;
  transform: translate(0, 0);
}

/**
* rem変換 ※375以下ではvwとする
* $number 数値
* 例) 32pxをremに変換 (32);
*/
/**
* %計算
* $number 数値
* $basis %を計算するための基準値(幅)
* 例) 値1000に対して50の%値 (50, 1000);
*/
/**
* vw計算
* $number 数値
* $width vw(%)を計算するための基準幅(デフォルト：SPのデザイン幅)
* 例) SPデザイン幅時点で100pxとなるvw値 (100);
* 例) 画面幅1000px時点で100pxとなるvw値 (100, 1000);
*/
/* hover要素判定 */
/* コンテナ */
/**
* フォント
* $size フォントサイズ
* $line 行間(xdの値)
* $space 文字間(xdの値)
* 例) fontMinchoW4(16, 25, 0.16)
*/
/* ボーダー */
/**
* flex要素のwidthを取得(均等割り)
* $num 並べる個数
* $gap 間の余白(rem, px)
* 例) flexSize(3, 10px)
*/
/* 幅 */
/* 高さ */
/* カラー */
/* フォント */
/* ボーダー */
.c-footer_accessWrap {
  margin-top: min(1.253125rem, 5.3466666667vw);
}
@media screen and (min-width: 600px) {
  .c-footer_accessWrap {
    margin-top: 0;
    width: min(17.5rem, 74.6666666667vw);
  }
}
@media screen and (min-width: 1025px) {
  .c-footer_accessWrap {
    width: min(19.1875rem, 81.8666666667vw);
  }
}
.c-footer_logo {
  width: 100%;
}
@media screen and (min-width: 600px) {
  .c-footer_logo {
    width: 130%;
  }
}
.c-footer_nav {
  margin-top: min(1.25rem, 5.3333333333vw);
  display: flex;
  gap: min(5.3125rem, 22.6666666667vw);
  justify-content: center;
}
@media screen and (min-width: 600px) {
  .c-footer_nav {
    margin-top: min(5.125rem, 21.8666666667vw);
    gap: min(1.25rem, 5.3333333333vw);
    justify-content: flex-start;
  }
}
@media screen and (min-width: 1025px) {
  .c-footer_nav {
    margin-top: min(5.125rem, 21.8666666667vw);
    gap: min(5rem, 21.3333333333vw);
  }
}
.c-footer_nav .c-nav:nth-of-type(n + 2) {
  margin-top: min(0.625rem, 2.6666666667vw);
}
@media screen and (min-width: 600px) {
  .c-footer_nav .c-nav:nth-of-type(n + 2) {
    margin-top: min(1.25rem, 5.3333333333vw);
  }
}
.c-footer_mapWrap {
  margin-top: min(0.625rem, 2.6666666667vw);
  text-align: center;
}
.c-footer_mapWrap_address {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  font-size: min(0.8125rem, 3.4666666667vw);
  letter-spacing: 0.01em;
  line-height: 1;
}
.c-footer_mapWrap_link {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  font-size: min(0.8125rem, 3.4666666667vw);
  letter-spacing: 0.01em;
  line-height: 1;
  border-bottom: min(0.03125rem, 0.1333333333vw) solid #5AC1EF;
  color: #5AC1EF;
  display: inline-block;
  margin-left: min(1.625rem, 6.9333333333vw);
}
.c-footer_mapWrap_map {
  aspect-ratio: 300/215.12;
  margin-top: min(0.625rem, 2.6666666667vw);
  height: auto;
  width: 100%;
}
.c-footer_mapWrap_map iframe {
  height: 100%;
  width: 100%;
}
.c-footer_copy {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  font-size: min(0.3125rem, 1.3333333333vw);
  letter-spacing: 0.01em;
  line-height: 1;
  display: block;
  margin-top: min(0.625rem, 2.6666666667vw);
  text-align: center;
}
.c-footer_text {
  text-align: center;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  font-size: min(0.8125rem, 3.4666666667vw);
  letter-spacing: 0em;
  line-height: 1.7692307692;
}
@media screen and (min-width: 600px) {
  .c-footer_text {
    text-align: left;
    text-wrap: nowrap;
  }
}

.fadein .fadein-left {
  transition: all 0.5s linear 0s;
  transform: translate(-30px, 0);
  opacity: 0;
}

.fadein .fadein-left.show {
  transform: translate(0, 0);
  opacity: 1;
}

.scrooll-animation {
  opacity: 0;
  transform: translate(-30px, 0);
  transition: all 1s;
}

.scrooll-animation.active {
  opacity: 1;
  transform: translate(0, 0);
}

/**
* rem変換 ※375以下ではvwとする
* $number 数値
* 例) 32pxをremに変換 (32);
*/
/**
* %計算
* $number 数値
* $basis %を計算するための基準値(幅)
* 例) 値1000に対して50の%値 (50, 1000);
*/
/**
* vw計算
* $number 数値
* $width vw(%)を計算するための基準幅(デフォルト：SPのデザイン幅)
* 例) SPデザイン幅時点で100pxとなるvw値 (100);
* 例) 画面幅1000px時点で100pxとなるvw値 (100, 1000);
*/
/* hover要素判定 */
/* コンテナ */
/**
* フォント
* $size フォントサイズ
* $line 行間(xdの値)
* $space 文字間(xdの値)
* 例) fontMinchoW4(16, 25, 0.16)
*/
/* ボーダー */
/**
* flex要素のwidthを取得(均等割り)
* $num 並べる個数
* $gap 間の余白(rem, px)
* 例) flexSize(3, 10px)
*/
/* 幅 */
/* 高さ */
/* カラー */
/* フォント */
/* ボーダー */
.c-goTop {
  align-items: center;
  background: transparent linear-gradient(151deg, #F69D0E 0%, #EC4728 100%) 0% 0% no-repeat padding-box;
  border-radius: 100vh;
  bottom: min(1.25rem, 5.3333333333vw);
  display: flex;
  justify-content: center;
  height: min(1.875rem, 8vw);
  opacity: 0;
  position: fixed;
  right: min(0.9375rem, 4vw);
  width: min(1.875rem, 8vw);
  z-index: 999;
}
@media screen and (min-width: 1025px) {
  .c-goTop {
    bottom: min(1.875rem, 8vw);
    right: min(1.875rem, 8vw);
  }
}
.c-goTop.is_active {
  opacity: 1;
}

.fadein .fadein-left {
  transition: all 0.5s linear 0s;
  transform: translate(-30px, 0);
  opacity: 0;
}

.fadein .fadein-left.show {
  transform: translate(0, 0);
  opacity: 1;
}

.scrooll-animation {
  opacity: 0;
  transform: translate(-30px, 0);
  transition: all 1s;
}

.scrooll-animation.active {
  opacity: 1;
  transform: translate(0, 0);
}

/**
* rem変換 ※375以下ではvwとする
* $number 数値
* 例) 32pxをremに変換 (32);
*/
/**
* %計算
* $number 数値
* $basis %を計算するための基準値(幅)
* 例) 値1000に対して50の%値 (50, 1000);
*/
/**
* vw計算
* $number 数値
* $width vw(%)を計算するための基準幅(デフォルト：SPのデザイン幅)
* 例) SPデザイン幅時点で100pxとなるvw値 (100);
* 例) 画面幅1000px時点で100pxとなるvw値 (100, 1000);
*/
/* hover要素判定 */
/* コンテナ */
/**
* フォント
* $size フォントサイズ
* $line 行間(xdの値)
* $space 文字間(xdの値)
* 例) fontMinchoW4(16, 25, 0.16)
*/
/* ボーダー */
/**
* flex要素のwidthを取得(均等割り)
* $num 並べる個数
* $gap 間の余白(rem, px)
* 例) flexSize(3, 10px)
*/
/* 幅 */
/* 高さ */
/* カラー */
/* フォント */
/* ボーダー */
.c-header_logo {
  width: min(15.1875rem, 64.8vw);
}
@media screen and (min-width: 1025px) {
  .c-header_logo {
    width: 23.1428571429vw;
    max-width: min(20.25rem, 86.4vw);
  }
}
.c-header_navWrap {
  align-items: center;
  display: flex;
  gap: min(2.1875rem, 9.3333333333vw);
}
.c-header_nav {
  align-items: center;
  display: flex;
  gap: min(1.25rem, 5.3333333333vw);
}
.c-header_nav .c-nav {
  font-size: min(0.9285714286vw, min(0.8125rem, 3.4666666667vw));
}
@media screen and (min-width: 1025px) {
  .c-header_nav .c-nav {
    font-size: min(1.0714285714vw, min(1.0625rem, 4.5333333333vw));
  }
}
.c-header_menuBtn {
  cursor: pointer;
  height: min(1.875rem, 8vw);
  position: relative;
  width: min(1.875rem, 8vw);
}
.c-header_menuBtn_item {
  border-radius: 100vh;
  display: block;
  height: min(0.1875rem, 0.8vw);
  left: 0;
  position: absolute;
  top: 0;
  transition: all 0.4s;
  width: 100%;
}
.c-header_menuBtn_item01 {
  background-color: #F69D0E;
}
.c-header_menuBtn_item01.is_active {
  top: min(0.3125rem, 1.3333333333vw);
  transform: rotate(30deg);
}
.c-header_menuBtn_item02 {
  background-color: #707070;
  top: min(0.625rem, 2.6666666667vw);
}
.c-header_menuBtn_item02.is_active {
  top: min(0.3125rem, 1.3333333333vw);
  transform: rotate(-30deg);
}
.c-header_menuBtn_itemText {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 500;
  font-size: min(0.625rem, 2.6666666667vw);
  letter-spacing: 0em;
  line-height: 1;
  bottom: 0;
  left: 0;
  position: absolute;
  width: 100%;
}
.c-header_menuBtn_itemText::before {
  bottom: 0;
  content: "menu";
  display: block;
  position: absolute;
  text-align: center;
  transition: all 0.4s;
  width: 100%;
}
.c-header_menuBtn_itemText::after {
  bottom: 0;
  content: "close";
  display: block;
  opacity: 0;
  text-align: center;
  transform: rotateY(180deg);
  transition: all 0.4s;
  position: absolute;
  width: 100%;
}
.c-header_menuBtn_itemText.is_active::before {
  opacity: 0;
  transform: rotateY(180deg);
}
.c-header_menuBtn_itemText.is_active::after {
  opacity: 1;
  transform: rotateY(0);
}
.c-header_menu {
  background-color: #fff;
  border-radius: min(2.1875rem, 9.3333333333vw) min(2.1875rem, 9.3333333333vw) 0 0;
  bottom: 0;
  display: none;
  height: calc(100dvh - min(4.25rem, 18.1333333333vw) - min(0.625rem, 2.6666666667vw));
  left: 50%;
  overflow-y: auto;
  overscroll-behavior: none;
  padding: min(3.1875rem, 13.6vw) min(2.03125rem, 8.6666666667vw);
  position: fixed;
  transform: translateX(-50%);
  width: 97.3333333333%;
  z-index: 999;
}
.c-header_menu .c-btn {
  margin-top: min(3.125rem, 13.3333333333vw);
}
.c-header_menuLink {
  background-image: linear-gradient(to right, #9F9F9F 1px, transparent 1px);
  background-size: 4px 0.5px;
  background-repeat: repeat-x;
  background-position: left bottom;
  align-items: center;
  display: flex;
  gap: min(0.3125rem, 1.3333333333vw);
  justify-content: center;
  padding: min(1.25rem, 5.3333333333vw) 0;
}
.c-header_menuLink_iconWrap {
  height: min(1.25rem, 5.3333333333vw);
  position: relative;
  width: min(1.306875rem, 5.576vw);
}
.c-header_menuLink_icon {
  aspect-ratio: 1/1;
  background-color: #F69D0E;
  border-radius: 100vh;
  height: auto;
  position: absolute;
}
.c-header_menuLink_icon__accent {
  background-color: #F06A1D;
  left: min(0.124375rem, 0.5306666667vw);
  top: min(0.11875rem, 0.5066666667vw);
  width: min(0.27125rem, 1.1573333333vw);
}
.c-header_menuLink_icon02 {
  width: min(0.325rem, 1.3866666667vw);
  left: min(0.505625rem, 2.1573333333vw);
  top: min(0.0625rem, 0.2666666667vw);
}
.c-header_menuLink_icon03 {
  width: min(0.301875rem, 1.288vw);
  left: min(0.721875rem, 3.08vw);
  top: min(0.454375rem, 1.9386666667vw);
}
.c-header_menuLink_icon04 {
  width: min(0.345rem, 1.472vw);
  left: min(0.340625rem, 1.4533333333vw);
  top: min(0.670625rem, 2.8613333333vw);
}
.c-header_menuLink_icon05 {
  width: min(0.27125rem, 1.1573333333vw);
  left: min(0.0625rem, 0.2666666667vw);
  top: min(0.556875rem, 2.376vw);
}
.c-header_menuLink_text {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  font-size: min(0.8125rem, 3.4666666667vw);
  letter-spacing: 0.01em;
  line-height: 1;
  min-width: min(7.25rem, 30.9333333333vw);
}

.fadein .fadein-left {
  transition: all 0.5s linear 0s;
  transform: translate(-30px, 0);
  opacity: 0;
}

.fadein .fadein-left.show {
  transform: translate(0, 0);
  opacity: 1;
}

.scrooll-animation {
  opacity: 0;
  transform: translate(-30px, 0);
  transition: all 1s;
}

.scrooll-animation.active {
  opacity: 1;
  transform: translate(0, 0);
}

/**
* rem変換 ※375以下ではvwとする
* $number 数値
* 例) 32pxをremに変換 (32);
*/
/**
* %計算
* $number 数値
* $basis %を計算するための基準値(幅)
* 例) 値1000に対して50の%値 (50, 1000);
*/
/**
* vw計算
* $number 数値
* $width vw(%)を計算するための基準幅(デフォルト：SPのデザイン幅)
* 例) SPデザイン幅時点で100pxとなるvw値 (100);
* 例) 画面幅1000px時点で100pxとなるvw値 (100, 1000);
*/
/* hover要素判定 */
/* コンテナ */
/**
* フォント
* $size フォントサイズ
* $line 行間(xdの値)
* $space 文字間(xdの値)
* 例) fontMinchoW4(16, 25, 0.16)
*/
/* ボーダー */
/**
* flex要素のwidthを取得(均等割り)
* $num 並べる個数
* $gap 間の余白(rem, px)
* 例) flexSize(3, 10px)
*/
/* 幅 */
/* 高さ */
/* カラー */
/* フォント */
/* ボーダー */
.c-information .c-scheduleWrap {
  padding-bottom: min(1.25rem, 5.3333333333vw);
}
.c-information_contents {
  background-image: linear-gradient(to right, #9F9F9F 1px, transparent 1px);
  background-size: 4px 0.5px;
  background-repeat: repeat-x;
  background-position: left bottom;
  align-items: center;
  display: flex;
  gap: min(0.625rem, 2.6666666667vw);
  padding: min(0.625rem, 2.6666666667vw) min(0.3125rem, 1.3333333333vw);
}
@media screen and (min-width: 600px) {
  .c-information_contents {
    padding: min(1.25rem, 5.3333333333vw) min(1.875rem, 8vw);
  }
}
@media screen and (min-width: 1025px) {
  .c-information_contents {
    padding: min(1.25rem, 5.3333333333vw) min(3.125rem, 13.3333333333vw);
    gap: min(14.75rem, 62.9333333333vw);
    justify-content: flex-start;
  }
}
.c-information_contents__highSpace {
  padding: min(1.25rem, 5.3333333333vw) 0;
}
@media screen and (min-width: 600px) {
  .c-information_contents__highSpace {
    padding: min(1.875rem, 8vw) min(1.25rem, 5.3333333333vw);
  }
}
@media screen and (min-width: 1025px) {
  .c-information_contents__highSpace {
    padding: min(1.875rem, 8vw) min(4.375rem, 18.6666666667vw);
  }
}
.c-information_contents__nonBorder {
  background-image: none;
}
.c-information_contents__borderTop {
  background-image: linear-gradient(to right, #9F9F9F 1px, transparent 1px), linear-gradient(to bottom, #9F9F9F 1px, transparent 1px), linear-gradient(to left, #9F9F9F 1px, transparent 1px), linear-gradient(to top, #9F9F9F 1px, transparent 1px);
  background-size: 4px 0.5px, 0 0, 4px 0.5px, 0 0;
  background-repeat: repeat-x, repeat-y, repeat-x, repeat-y;
  background-position: left top, right top, right bottom, left bottom;
}
.c-information_contents:first-of-type {
  background-image: linear-gradient(to right, #9F9F9F 1px, transparent 1px), linear-gradient(to bottom, #9F9F9F 1px, transparent 1px), linear-gradient(to left, #9F9F9F 1px, transparent 1px), linear-gradient(to top, #9F9F9F 1px, transparent 1px);
  background-size: 4px 0.5px, 0 0, 4px 0.5px, 0 0;
  background-repeat: repeat-x, repeat-y, repeat-x, repeat-y;
  background-position: left top, right top, right bottom, left bottom;
}
.c-information_contents_head {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  font-size: min(0.8125rem, 3.4666666667vw);
  letter-spacing: 0.01em;
  line-height: 1;
  text-align: center;
  min-width: min(8.125rem, 34.6666666667vw);
}
@media screen and (min-width: 600px) {
  .c-information_contents_head {
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 400;
    font-size: min(1rem, 4.2666666667vw);
    letter-spacing: 0.01em;
    line-height: 1;
    min-width: min(10rem, 42.6666666667vw);
  }
}
.c-information_contents_head__l {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  font-size: min(1rem, 4.2666666667vw);
  letter-spacing: 0.006875em;
  line-height: 0.6875;
  min-width: min(5.3125rem, 22.6666666667vw);
}
@media screen and (min-width: 600px) {
  .c-information_contents_head__l {
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 400;
    font-size: min(1rem, 4.2666666667vw);
    letter-spacing: 0.01em;
    line-height: 1;
    min-width: min(5.9375rem, 25.3333333333vw);
  }
}
.c-information_contents_data {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  font-size: min(1rem, 4.2666666667vw);
  letter-spacing: 0.006875em;
  line-height: 1.375;
}
@media screen and (min-width: 600px) {
  .c-information_contents_data {
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 400;
    font-size: min(1rem, 4.2666666667vw);
    letter-spacing: 0.01em;
    line-height: 1;
  }
}
@media screen and (min-width: 1025px) {
  .c-information_contents_data {
    min-width: min(24.1875rem, 103.2vw);
  }
}
.c-information_contents_data__noline {
  line-height: 1;
}
.c-information_contents_data__lowSpace {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  font-size: min(1rem, 4.2666666667vw);
  letter-spacing: -0.140625em;
  line-height: 1.3125;
}
@media screen and (min-width: 600px) {
  .c-information_contents_data__lowSpace {
    font-size: min(1rem, 4.2666666667vw);
  }
}
.c-information_contents_data__lowSpace02 {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  font-size: min(1rem, 4.2666666667vw);
  letter-spacing: -0.09375em;
  line-height: 1.3125;
}
@media screen and (min-width: 600px) {
  .c-information_contents_data__lowSpace02 {
    font-size: min(1rem, 4.2666666667vw);
  }
}
.c-information_contents_data__wideSpace {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  font-size: min(1rem, 4.2666666667vw);
  letter-spacing: 0.0375em;
  line-height: 1.3125;
}
@media screen and (min-width: 600px) {
  .c-information_contents_data__wideSpace {
    font-size: min(1rem, 4.2666666667vw);
  }
}
.c-information_contents_data__l {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  font-size: min(1rem, 4.2666666667vw);
  letter-spacing: 0.01em;
  line-height: 2.1875;
}
@media screen and (min-width: 600px) {
  .c-information_contents_data__l {
    font-size: min(1rem, 4.2666666667vw);
  }
}
.c-information_contents_data__ss {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  font-size: min(0.625rem, 2.6666666667vw);
  letter-spacing: -0.01em;
  line-height: 2.1;
}
@media screen and (min-width: 600px) {
  .c-information_contents_data__ss {
    font-size: min(1rem, 4.2666666667vw);
  }
}
.c-information_contents_data__lLowSpace {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  font-size: min(1rem, 4.2666666667vw);
  letter-spacing: -0.15em;
  line-height: 1.3125;
}
@media screen and (min-width: 600px) {
  .c-information_contents_data__lLowSpace {
    font-size: min(1rem, 4.2666666667vw);
  }
}
@media screen and (min-width: 600px) {
  .c-information_contents_data__lowSpacePc {
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 400;
    font-size: min(1rem, 4.2666666667vw);
    letter-spacing: -0.15em;
    line-height: 2.1875;
  }
}
.c-information_contents_data__tac {
  text-align: center;
}
.c-information_contents_data:nth-of-type(n + 2) {
  margin-top: min(0.3125rem, 1.3333333333vw);
}
.c-information_contents_icon {
  display: inline-block;
  height: min(1rem, 4.2666666667vw);
  margin-right: min(0.3125rem, 1.3333333333vw);
  width: min(1rem, 4.2666666667vw);
}
.c-information_contents_icon img {
  height: 100%;
  object-fit: contain;
  transform: translateY(min(0.0625rem, 0.2666666667vw));
}
.c-information_contents_icon__pos img {
  transform: translateY(min(0.1875rem, 0.8vw));
}

.fadein .fadein-left {
  transition: all 0.5s linear 0s;
  transform: translate(-30px, 0);
  opacity: 0;
}

.fadein .fadein-left.show {
  transform: translate(0, 0);
  opacity: 1;
}

.scrooll-animation {
  opacity: 0;
  transform: translate(-30px, 0);
  transition: all 1s;
}

.scrooll-animation.active {
  opacity: 1;
  transform: translate(0, 0);
}

/**
* rem変換 ※375以下ではvwとする
* $number 数値
* 例) 32pxをremに変換 (32);
*/
/**
* %計算
* $number 数値
* $basis %を計算するための基準値(幅)
* 例) 値1000に対して50の%値 (50, 1000);
*/
/**
* vw計算
* $number 数値
* $width vw(%)を計算するための基準幅(デフォルト：SPのデザイン幅)
* 例) SPデザイン幅時点で100pxとなるvw値 (100);
* 例) 画面幅1000px時点で100pxとなるvw値 (100, 1000);
*/
/* hover要素判定 */
/* コンテナ */
/**
* フォント
* $size フォントサイズ
* $line 行間(xdの値)
* $space 文字間(xdの値)
* 例) fontMinchoW4(16, 25, 0.16)
*/
/* ボーダー */
/**
* flex要素のwidthを取得(均等割り)
* $num 並べる個数
* $gap 間の余白(rem, px)
* 例) flexSize(3, 10px)
*/
/* 幅 */
/* 高さ */
/* カラー */
/* フォント */
/* ボーダー */
.c-nav {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  font-size: min(0.8125rem, 3.4666666667vw);
  letter-spacing: 0.01em;
  line-height: 1;
  align-items: center;
  display: flex;
  gap: min(0.3125rem, 1.3333333333vw);
}

.fadein .fadein-left {
  transition: all 0.5s linear 0s;
  transform: translate(-30px, 0);
  opacity: 0;
}

.fadein .fadein-left.show {
  transform: translate(0, 0);
  opacity: 1;
}

.scrooll-animation {
  opacity: 0;
  transform: translate(-30px, 0);
  transition: all 1s;
}

.scrooll-animation.active {
  opacity: 1;
  transform: translate(0, 0);
}

/**
* rem変換 ※375以下ではvwとする
* $number 数値
* 例) 32pxをremに変換 (32);
*/
/**
* %計算
* $number 数値
* $basis %を計算するための基準値(幅)
* 例) 値1000に対して50の%値 (50, 1000);
*/
/**
* vw計算
* $number 数値
* $width vw(%)を計算するための基準幅(デフォルト：SPのデザイン幅)
* 例) SPデザイン幅時点で100pxとなるvw値 (100);
* 例) 画面幅1000px時点で100pxとなるvw値 (100, 1000);
*/
/* hover要素判定 */
/* コンテナ */
/**
* フォント
* $size フォントサイズ
* $line 行間(xdの値)
* $space 文字間(xdの値)
* 例) fontMinchoW4(16, 25, 0.16)
*/
/* ボーダー */
/**
* flex要素のwidthを取得(均等割り)
* $num 並べる個数
* $gap 間の余白(rem, px)
* 例) flexSize(3, 10px)
*/
/* 幅 */
/* 高さ */
/* カラー */
/* フォント */
/* ボーダー */
.c-paragraph {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  font-size: min(1rem, 4.2666666667vw);
  letter-spacing: 0.01em;
  line-height: 2.1875;
  margin: 0 auto;
  width: 89.3333333333%;
  max-width: min(50rem, 213.3333333333vw);
}
.c-paragraph__tac {
  text-align: center;
}
@media screen and (min-width: 600px) {
  .c-paragraph__tabTac {
    text-align: center;
  }
}
@media screen and (min-width: 1025px) {
  .c-paragraph__pcTac {
    text-align: center;
  }
}
.c-paragraph__in {
  width: 85.8666666667%;
}
.c-paragraph__in02 {
  width: 82.6666666667%;
}
.c-paragraph__accent {
  color: #F69D0E;
  font-weight: 700;
}
.c-paragraph__center {
  align-items: center;
  display: flex;
  flex-direction: column;
}
.c-paragraph__maxLow {
  max-width: min(50rem, 213.3333333333vw);
}
.c-paragraph__lh {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  font-size: min(1rem, 4.2666666667vw);
  letter-spacing: 0.01em;
  line-height: 1.875;
}
@media screen and (min-width: 600px) {
  .c-paragraph__lh {
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 400;
    font-size: min(1rem, 4.2666666667vw);
    letter-spacing: 0.01em;
    line-height: 2.1875;
  }
}
.c-paragraph__lh02 {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  font-size: min(1rem, 4.2666666667vw);
  letter-spacing: 0.01em;
  line-height: 2.1875;
}
@media screen and (min-width: 600px) {
  .c-paragraph__lh02 {
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 400;
    font-size: min(1rem, 4.2666666667vw);
    letter-spacing: 0.01em;
    line-height: 2.1875;
  }
}

.fadein .fadein-left {
  transition: all 0.5s linear 0s;
  transform: translate(-30px, 0);
  opacity: 0;
}

.fadein .fadein-left.show {
  transform: translate(0, 0);
  opacity: 1;
}

.scrooll-animation {
  opacity: 0;
  transform: translate(-30px, 0);
  transition: all 1s;
}

.scrooll-animation.active {
  opacity: 1;
  transform: translate(0, 0);
}

/**
* rem変換 ※375以下ではvwとする
* $number 数値
* 例) 32pxをremに変換 (32);
*/
/**
* %計算
* $number 数値
* $basis %を計算するための基準値(幅)
* 例) 値1000に対して50の%値 (50, 1000);
*/
/**
* vw計算
* $number 数値
* $width vw(%)を計算するための基準幅(デフォルト：SPのデザイン幅)
* 例) SPデザイン幅時点で100pxとなるvw値 (100);
* 例) 画面幅1000px時点で100pxとなるvw値 (100, 1000);
*/
/* hover要素判定 */
/* コンテナ */
/**
* フォント
* $size フォントサイズ
* $line 行間(xdの値)
* $space 文字間(xdの値)
* 例) fontMinchoW4(16, 25, 0.16)
*/
/* ボーダー */
/**
* flex要素のwidthを取得(均等割り)
* $num 並べる個数
* $gap 間の余白(rem, px)
* 例) flexSize(3, 10px)
*/
/* 幅 */
/* 高さ */
/* カラー */
/* フォント */
/* ボーダー */
.c-scheduleWrap {
  width: 100%;
}

.c-schedule {
  border: min(0.03125rem, 0.1333333333vw) solid #ECECEC;
  border-radius: min(0.3125rem, 1.3333333333vw);
  display: flex;
  overflow: hidden;
}
.c-schedule_column {
  text-align: center;
  width: min(2.25rem, 9.6vw);
}
@media screen and (min-width: 600px) {
  .c-schedule_column {
    width: min(3.75rem, 16vw);
  }
}
@media screen and (min-width: 1025px) {
  .c-schedule_column {
    width: min(5.1875rem, 22.1333333333vw);
  }
}
.c-schedule_column:first-of-type {
  flex-grow: 1;
}
.c-schedule_column:nth-of-type(n + 2) {
  border-left: min(0.03125rem, 0.1333333333vw) solid #ECECEC;
}
.c-schedule_column:last-of-type {
  width: min(2.875rem, 12.2666666667vw);
}
@media screen and (min-width: 600px) {
  .c-schedule_column:last-of-type {
    width: min(3.75rem, 16vw);
  }
}
@media screen and (min-width: 1025px) {
  .c-schedule_column:last-of-type {
    width: min(5.1875rem, 22.1333333333vw);
  }
}
.c-schedule_column_head {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  font-size: min(0.6875rem, 2.9333333333vw);
  letter-spacing: 0.03em;
  line-height: 1;
  background-color: #6AB112;
  color: #fff;
  display: block;
  padding: min(0.5625rem, 2.4vw) 0 min(0.4375rem, 1.8666666667vw) 0;
}
@media screen and (min-width: 600px) {
  .c-schedule_column_head {
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 400;
    font-size: min(1.0625rem, 4.5333333333vw);
    letter-spacing: 0.0282352941em;
    line-height: 1;
    padding: min(0.9375rem, 4vw) 0;
  }
}
.c-schedule_column_row {
  border-bottom: min(0.03125rem, 0.1333333333vw) solid #ECECEC;
}
.c-schedule_column_item {
  display: block;
  height: min(2.375rem, 10.1333333333vw);
  position: relative;
}
@media screen and (min-width: 1025px) {
  .c-schedule_column_item {
    height: min(3.125rem, 13.3333333333vw);
  }
}
.c-schedule_column_item__text {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  font-size: min(0.625rem, 2.6666666667vw);
  letter-spacing: 0.04em;
  line-height: 1.3;
  align-items: center;
  display: flex;
  justify-content: center;
  text-align: right;
}
@media screen and (min-width: 600px) {
  .c-schedule_column_item__text {
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 400;
    font-size: min(0.875rem, 3.7333333333vw);
    letter-spacing: 0.04em;
    line-height: 1;
  }
}
.c-schedule_column_item__on::before {
  background-color: #F69D0E;
  border-radius: 100vh;
  content: "";
  display: block;
  height: min(0.625rem, 2.6666666667vw);
  left: 50%;
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%);
  width: min(0.625rem, 2.6666666667vw);
}
@media screen and (min-width: 600px) {
  .c-schedule_column_item__on::before {
    height: min(0.9375rem, 4vw);
    width: min(0.9375rem, 4vw);
  }
}
.c-schedule_column_item__off::before {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  font-size: min(0.4375rem, 1.8666666667vw);
  letter-spacing: 0.04em;
  line-height: 1;
  content: "ー";
  display: block;
  left: 50%;
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%);
}
@media screen and (min-width: 600px) {
  .c-schedule_column_item__off::before {
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 400;
    font-size: min(0.625rem, 2.6666666667vw);
    letter-spacing: 0.028em;
    line-height: 1;
  }
}
.c-schedule_point {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  font-size: min(1rem, 4.2666666667vw);
  letter-spacing: 0.00875em;
  line-height: 1.3125;
  margin-top: min(0.625rem, 2.6666666667vw);
  text-align: right;
}

.fadein .fadein-left {
  transition: all 0.5s linear 0s;
  transform: translate(-30px, 0);
  opacity: 0;
}

.fadein .fadein-left.show {
  transform: translate(0, 0);
  opacity: 1;
}

.scrooll-animation {
  opacity: 0;
  transform: translate(-30px, 0);
  transition: all 1s;
}

.scrooll-animation.active {
  opacity: 1;
  transform: translate(0, 0);
}

/**
* rem変換 ※375以下ではvwとする
* $number 数値
* 例) 32pxをremに変換 (32);
*/
/**
* %計算
* $number 数値
* $basis %を計算するための基準値(幅)
* 例) 値1000に対して50の%値 (50, 1000);
*/
/**
* vw計算
* $number 数値
* $width vw(%)を計算するための基準幅(デフォルト：SPのデザイン幅)
* 例) SPデザイン幅時点で100pxとなるvw値 (100);
* 例) 画面幅1000px時点で100pxとなるvw値 (100, 1000);
*/
/* hover要素判定 */
/* コンテナ */
/**
* フォント
* $size フォントサイズ
* $line 行間(xdの値)
* $space 文字間(xdの値)
* 例) fontMinchoW4(16, 25, 0.16)
*/
/* ボーダー */
/**
* flex要素のwidthを取得(均等割り)
* $num 並べる個数
* $gap 間の余白(rem, px)
* 例) flexSize(3, 10px)
*/
/* 幅 */
/* 高さ */
/* カラー */
/* フォント */
/* ボーダー */
.c-slider_slide {
  width: 82.6666666667vw !important;
}
@media screen and (min-width: 600px) {
  .c-slider_slide {
    width: min(21.875rem, 93.3333333333vw) !important;
  }
}
@media screen and (min-width: 1025px) {
  .c-slider_slide {
    width: 22.1428571429vw !important;
  }
}
.c-slider_img {
  aspect-ratio: 310/225;
  border-radius: min(1.875rem, 8vw);
}
.c-slider_title {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 500;
  font-size: min(1rem, 4.2666666667vw);
  letter-spacing: 0.01em;
  line-height: 1;
  margin-top: min(0.5625rem, 2.4vw);
}
.c-slider_text {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  font-size: min(0.875rem, 3.7333333333vw);
  letter-spacing: 0.01em;
  line-height: 1.7857142857;
  margin-top: min(0.625rem, 2.6666666667vw);
  padding-right: min(0.5rem, 2.1333333333vw);
}

.fadein .fadein-left {
  transition: all 0.5s linear 0s;
  transform: translate(-30px, 0);
  opacity: 0;
}

.fadein .fadein-left.show {
  transform: translate(0, 0);
  opacity: 1;
}

.scrooll-animation {
  opacity: 0;
  transform: translate(-30px, 0);
  transition: all 1s;
}

.scrooll-animation.active {
  opacity: 1;
  transform: translate(0, 0);
}

/**
* rem変換 ※375以下ではvwとする
* $number 数値
* 例) 32pxをremに変換 (32);
*/
/**
* %計算
* $number 数値
* $basis %を計算するための基準値(幅)
* 例) 値1000に対して50の%値 (50, 1000);
*/
/**
* vw計算
* $number 数値
* $width vw(%)を計算するための基準幅(デフォルト：SPのデザイン幅)
* 例) SPデザイン幅時点で100pxとなるvw値 (100);
* 例) 画面幅1000px時点で100pxとなるvw値 (100, 1000);
*/
/* hover要素判定 */
/* コンテナ */
/**
* フォント
* $size フォントサイズ
* $line 行間(xdの値)
* $space 文字間(xdの値)
* 例) fontMinchoW4(16, 25, 0.16)
*/
/* ボーダー */
/**
* flex要素のwidthを取得(均等割り)
* $num 並べる個数
* $gap 間の余白(rem, px)
* 例) flexSize(3, 10px)
*/
/* 幅 */
/* 高さ */
/* カラー */
/* フォント */
/* ボーダー */
.c-subHead {
  height: min(9.375rem, 40vw);
  position: relative;
  width: 100%;
}
@media screen and (min-width: 600px) {
  .c-subHead {
    height: min(14.0625rem, 60vw);
  }
}
@media screen and (min-width: 1025px) {
  .c-subHead {
    height: min(18.75rem, 80vw);
  }
}
.c-subHead_img {
  height: 100%;
  object-fit: cover;
}
.c-subHead_title {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 500;
  font-size: min(1rem, 4.2666666667vw);
  letter-spacing: 0.03em;
  line-height: 1;
  color: #fff;
  position: absolute;
  text-align: center;
  top: 50%;
  transform: translateY(-50%);
  width: 100%;
}
@media screen and (min-width: 600px) {
  .c-subHead_title {
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 500;
    font-size: min(1.25rem, 5.3333333333vw);
    letter-spacing: 0.03em;
    line-height: 1;
  }
}
.c-subHead_title_child {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 500;
  font-size: min(0.8125rem, 3.4666666667vw);
  letter-spacing: 0.0230769231em;
  line-height: 1;
  display: block;
  margin-top: min(0.8125rem, 3.4666666667vw);
  width: 100%;
}

.fadein .fadein-left {
  transition: all 0.5s linear 0s;
  transform: translate(-30px, 0);
  opacity: 0;
}

.fadein .fadein-left.show {
  transform: translate(0, 0);
  opacity: 1;
}

.scrooll-animation {
  opacity: 0;
  transform: translate(-30px, 0);
  transition: all 1s;
}

.scrooll-animation.active {
  opacity: 1;
  transform: translate(0, 0);
}

/**
* rem変換 ※375以下ではvwとする
* $number 数値
* 例) 32pxをremに変換 (32);
*/
/**
* %計算
* $number 数値
* $basis %を計算するための基準値(幅)
* 例) 値1000に対して50の%値 (50, 1000);
*/
/**
* vw計算
* $number 数値
* $width vw(%)を計算するための基準幅(デフォルト：SPのデザイン幅)
* 例) SPデザイン幅時点で100pxとなるvw値 (100);
* 例) 画面幅1000px時点で100pxとなるvw値 (100, 1000);
*/
/* hover要素判定 */
/* コンテナ */
/**
* フォント
* $size フォントサイズ
* $line 行間(xdの値)
* $space 文字間(xdの値)
* 例) fontMinchoW4(16, 25, 0.16)
*/
/* ボーダー */
/**
* flex要素のwidthを取得(均等割り)
* $num 並べる個数
* $gap 間の余白(rem, px)
* 例) flexSize(3, 10px)
*/
/* 幅 */
/* 高さ */
/* カラー */
/* フォント */
/* ボーダー */
.c-title {
  display: flex;
  gap: min(0.625rem, 2.6666666667vw);
  justify-content: center;
  margin-bottom: min(1.875rem, 8vw);
}
@media screen and (min-width: 1025px) {
  .c-title {
    margin-bottom: min(3.125rem, 13.3333333333vw);
  }
}
.c-title_iconWrap {
  height: min(1.25rem, 5.3333333333vw);
  position: relative;
  width: min(1.306875rem, 5.576vw);
}
.c-title_icon {
  aspect-ratio: 1/1;
  background-color: #F69D0E;
  border-radius: 100vh;
  height: auto;
  position: absolute;
}
.c-title_icon__accent {
  background-color: #F06A1D;
  left: min(0.124375rem, 0.5306666667vw);
  top: min(0.11875rem, 0.5066666667vw);
  width: min(0.340625rem, 1.4533333333vw);
}
.c-title_icon02 {
  width: min(0.454375rem, 1.9386666667vw);
  left: min(0.568125rem, 2.424vw);
  top: 0;
}
.c-title_icon03 {
  width: min(0.3975rem, 1.696vw);
  left: min(0.909375rem, 3.88vw);
  top: min(0.454375rem, 1.9386666667vw);
}
.c-title_icon04 {
  width: min(0.454375rem, 1.9386666667vw);
  left: min(0.340625rem, 1.4533333333vw);
  top: min(0.795625rem, 3.3946666667vw);
}
.c-title_icon05 {
  width: min(0.340625rem, 1.4533333333vw);
  left: 0;
  top: min(0.681875rem, 2.9093333333vw);
}
.c-title_text {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 500;
  font-size: min(1.25rem, 5.3333333333vw);
  letter-spacing: 0.03em;
  line-height: 1;
  color: #6AB112;
  max-width: calc(100% - min(1.306875rem, 5.576vw) - min(0.625rem, 2.6666666667vw));
  position: relative;
}
.c-title__02 {
  justify-content: flex-start;
  margin-bottom: min(0.625rem, 2.6666666667vw);
}
.c-title__02 .c-title_iconWrap {
  top: min(0.125rem, 0.5333333333vw);
}
.c-title__02 .c-title_text {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  font-size: min(1rem, 4.2666666667vw);
  letter-spacing: 0.01em;
  line-height: 1.5625;
  color: #616161;
}

.fadein .fadein-left {
  transition: all 0.5s linear 0s;
  transform: translate(-30px, 0);
  opacity: 0;
}

.fadein .fadein-left.show {
  transform: translate(0, 0);
  opacity: 1;
}

.scrooll-animation {
  opacity: 0;
  transform: translate(-30px, 0);
  transition: all 1s;
}

.scrooll-animation.active {
  opacity: 1;
  transform: translate(0, 0);
}

/**
* rem変換 ※375以下ではvwとする
* $number 数値
* 例) 32pxをremに変換 (32);
*/
/**
* %計算
* $number 数値
* $basis %を計算するための基準値(幅)
* 例) 値1000に対して50の%値 (50, 1000);
*/
/**
* vw計算
* $number 数値
* $width vw(%)を計算するための基準幅(デフォルト：SPのデザイン幅)
* 例) SPデザイン幅時点で100pxとなるvw値 (100);
* 例) 画面幅1000px時点で100pxとなるvw値 (100, 1000);
*/
/* hover要素判定 */
/* コンテナ */
/**
* フォント
* $size フォントサイズ
* $line 行間(xdの値)
* $space 文字間(xdの値)
* 例) fontMinchoW4(16, 25, 0.16)
*/
/* ボーダー */
/**
* flex要素のwidthを取得(均等割り)
* $num 並べる個数
* $gap 間の余白(rem, px)
* 例) flexSize(3, 10px)
*/
/* 幅 */
/* 高さ */
/* カラー */
/* フォント */
/* ボーダー */
.c-cregit {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: min(0.4375rem, 1.8666666667vw);
  justify-content: center;
  margin-top: min(1.25rem, 5.3333333333vw);
}
@media screen and (min-width: 600px) {
  .c-cregit {
    flex-direction: row;
    gap: min(1.25rem, 5.3333333333vw);
  }
}
.c-cregit_img {
  width: min(9.1875rem, 39.2vw);
}
.c-cregit_text {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  font-size: min(1rem, 4.2666666667vw);
  letter-spacing: 0.01em;
  line-height: 1;
}

.fadein .fadein-left {
  transition: all 0.5s linear 0s;
  transform: translate(-30px, 0);
  opacity: 0;
}

.fadein .fadein-left.show {
  transform: translate(0, 0);
  opacity: 1;
}

.scrooll-animation {
  opacity: 0;
  transform: translate(-30px, 0);
  transition: all 1s;
}

.scrooll-animation.active {
  opacity: 1;
  transform: translate(0, 0);
}

/**
* rem変換 ※375以下ではvwとする
* $number 数値
* 例) 32pxをremに変換 (32);
*/
/**
* %計算
* $number 数値
* $basis %を計算するための基準値(幅)
* 例) 値1000に対して50の%値 (50, 1000);
*/
/**
* vw計算
* $number 数値
* $width vw(%)を計算するための基準幅(デフォルト：SPのデザイン幅)
* 例) SPデザイン幅時点で100pxとなるvw値 (100);
* 例) 画面幅1000px時点で100pxとなるvw値 (100, 1000);
*/
/* hover要素判定 */
/* コンテナ */
/**
* フォント
* $size フォントサイズ
* $line 行間(xdの値)
* $space 文字間(xdの値)
* 例) fontMinchoW4(16, 25, 0.16)
*/
/* ボーダー */
/**
* flex要素のwidthを取得(均等割り)
* $num 並べる個数
* $gap 間の余白(rem, px)
* 例) flexSize(3, 10px)
*/
/* 幅 */
/* 高さ */
/* カラー */
/* フォント */
/* ボーダー */
@keyframes scroll {
  0% {
    transform: scaleY(0);
  }
  100% {
    transform: scaleY(1);
  }
}
.p-top_mv {
  height: calc(100svh - min(4.25rem, 18.1333333333vw));
  min-height: min(33.75rem, 144vw);
  position: relative;
}
.p-top_mv_scrollWrap {
  align-items: center;
  display: none;
  flex-direction: column;
  gap: min(0.625rem, 2.6666666667vw);
  right: min(1.875rem, 8vw);
  position: absolute;
  top: calc(min(3.125rem, 13.3333333333vw) + min(4.25rem, 18.1333333333vw));
}
@media screen and (min-width: 1025px) {
  .p-top_mv_scrollWrap {
    display: flex;
  }
}
.p-top_mv_scrollBar {
  background-color: #fff;
  animation: scroll 1.5s ease 0s infinite normal;
  display: block;
  height: min(12.5rem, 53.3333333333vw);
  transform-origin: top;
  width: min(0.0625rem, 0.2666666667vw);
}
.p-top_mv_scroll {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  font-size: min(0.9375rem, 4vw);
  letter-spacing: 0.03em;
  line-height: 1;
  color: #fff;
}
.p-top_mv_contents {
  bottom: min(6.25rem, 26.6666666667vw);
  position: absolute;
  left: 0;
  width: 100%;
}
.p-top_mv_text {
  font-family: "YuMincho", "Yu Mincho", "serif";
  font-weight: 400;
  font-size: min(1.5625rem, 6.6666666667vw);
  letter-spacing: 0.03em;
  line-height: 1.6;
  color: #fff;
  margin-bottom: min(1.21875rem, 5.2vw);
}
@media screen and (min-width: 1025px) {
  .p-top_mv_text {
    font-family: "YuMincho", "Yu Mincho", "serif";
    font-weight: 400;
    font-size: min(1.875rem, 8vw);
    letter-spacing: 0.03em;
    line-height: 2;
    margin-bottom: min(1.59375rem, 6.8vw);
  }
}
.p-top_subjectWrap {
  margin-top: min(1.25rem, 5.3333333333vw);
}
@media screen and (min-width: 1025px) {
  .p-top_subjectWrap {
    margin-top: min(3.125rem, 13.3333333333vw);
  }
}
.p-top_subject {
  background-image: linear-gradient(to right, #9F9F9F 1px, transparent 1px);
  background-size: 4px 0.5px;
  background-repeat: repeat-x;
  background-position: left bottom;
  padding: min(1.25rem, 5.3333333333vw) min(0.78125rem, 3.3333333333vw);
}
.p-top_subject:first-of-type {
  background-image: linear-gradient(to right, #9F9F9F 1px, transparent 1px), linear-gradient(to bottom, #9F9F9F 1px, transparent 1px), linear-gradient(to left, #9F9F9F 1px, transparent 1px), linear-gradient(to top, #9F9F9F 1px, transparent 1px);
  background-size: 4px 0.5px, 0 0, 4px 0.5px, 0 0;
  background-repeat: repeat-x, repeat-y, repeat-x, repeat-y;
  background-position: left top, right top, right bottom, left bottom;
}
.p-top_subject_titleWrap {
  align-items: center;
  display: flex;
  justify-content: space-between;
  padding-right: min(1.276875rem, 5.448vw);
}
.p-top_subject_title {
  align-items: center;
  display: flex;
  gap: min(0.625rem, 2.6666666667vw);
}
.p-top_subject_icon {
  height: min(0.9375rem, 4vw);
  width: min(0.9375rem, 4vw);
}
@media screen and (min-width: 1025px) {
  .p-top_subject_icon {
    height: min(1.25rem, 5.3333333333vw);
    width: min(1.25rem, 5.3333333333vw);
  }
}
.p-top_subject_titleText {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 700;
  font-size: min(1.125rem, 4.8vw);
  letter-spacing: 0.03em;
  line-height: 1;
  color: #F69D0E;
}
.p-top_subject_text {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  font-size: min(1rem, 4.2666666667vw);
  letter-spacing: 0.03em;
  line-height: 1.875;
  margin-top: min(0.9375rem, 4vw);
}
@media screen and (min-width: 1025px) {
  .p-top_subject_text {
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 400;
    font-size: min(0.9375rem, 4vw);
    letter-spacing: 0.01em;
    line-height: 2.3333333333;
  }
}
.p-top_button {
  margin-top: min(1.875rem, 8vw);
  text-align: center;
}
@media screen and (min-width: 1025px) {
  .p-top_button {
    margin-top: min(3.125rem, 13.3333333333vw);
  }
}
.p-top_news {
  background-image: linear-gradient(to right, #9F9F9F 1px, transparent 1px);
  background-size: 4px 0.5px;
  background-repeat: repeat-x;
  background-position: left bottom;
  padding: min(1.25rem, 5.3333333333vw) min(0.625rem, 2.6666666667vw);
}
.p-top_news:first-of-type {
  background-image: linear-gradient(to right, #9F9F9F 1px, transparent 1px), linear-gradient(to bottom, #9F9F9F 1px, transparent 1px), linear-gradient(to left, #9F9F9F 1px, transparent 1px), linear-gradient(to top, #9F9F9F 1px, transparent 1px);
  background-size: 4px 0.5px, 0 0, 4px 0.5px, 0 0;
  background-repeat: repeat-x, repeat-y, repeat-x, repeat-y;
  background-position: left top, right top, right bottom, left bottom;
}
.p-top_news_link {
  align-items: center;
  display: flex;
  gap: min(0.620625rem, 2.648vw);
  width: 100%;
}
.p-top_news_inner {
  width: calc(100% - min(0.441875rem, 1.8853333333vw) - min(0.620625rem, 2.648vw));
}
.p-top_news_info {
  display: flex;
  gap: min(1.8125rem, 7.7333333333vw);
}
.p-top_news_cat {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  font-size: min(0.5625rem, 2.4vw);
  letter-spacing: 0.01em;
  line-height: 1;
  border: min(0.03125rem, 0.1333333333vw) solid #9F9F9F;
  border-radius: 100vh;
  color: #9F9F9F;
  padding: min(0.25rem, 1.0666666667vw) min(0.3125rem, 1.3333333333vw) min(0.125rem, 0.5333333333vw) min(0.3125rem, 1.3333333333vw);
}
.p-top_news_title {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  font-size: min(0.9375rem, 4vw);
  letter-spacing: 0.01em;
  line-height: 1.3333333333;
  margin-top: min(0.5625rem, 2.4vw);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  width: 100%;
}
.p-top_blogWrap {
  display: flex;
  gap: min(1.6875rem, 7.2vw);
}
@media screen and (min-width: 1025px) {
  .p-top_blogWrap {
    gap: min(1.25rem, 5.3333333333vw);
  }
}
.p-top_blog {
  width: calc(50% - min(1.6875rem, 7.2vw) * 1 / 2);
}
@media screen and (min-width: 1025px) {
  .p-top_blog {
    width: calc(33.3333333333% - min(1.25rem, 5.3333333333vw) * 2 / 3);
  }
}
.p-top_blog_img {
  aspect-ratio: 160/100;
  margin-bottom: min(0.625rem, 2.6666666667vw);
  height: auto;
  overflow: hidden;
  width: 100%;
}
.p-top_blog_title {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  font-size: min(0.875rem, 3.7333333333vw);
  letter-spacing: 0.1em;
  line-height: 1.4285714286;
  display: -webkit-box;
  height: calc(min(0.875rem, 3.7333333333vw) * 1.4285714286 * 2);
  margin-top: min(1rem, 4.2666666667vw);
  overflow: hidden;
  text-overflow: ellipsis;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}
.p-top_logo {
  width: min(11.875rem, 50.6666666667vw);
}
@media screen and (min-width: 1025px) {
  .p-top_logo {
    width: min(24.8125rem, 105.8666666667vw);
  }
}
.p-top_accessImg {
  aspect-ratio: 335/150;
  margin-top: min(0.625rem, 2.6666666667vw);
  width: 100%;
}
@media screen and (min-width: 1025px) {
  .p-top_accessImg {
    margin-top: min(1.1875rem, 5.0666666667vw);
  }
}
.p-top_schedule {
  margin-top: min(0.625rem, 2.6666666667vw);
}
@media screen and (min-width: 1025px) {
  .p-top_schedule {
    margin-top: min(1.25rem, 5.3333333333vw);
  }
}
@media screen and (min-width: 1025px) {
  .p-top_schedule .c-schedule_column {
    width: min(4.375rem, 18.6666666667vw) !important;
  }
}
@media screen and (min-width: 1025px) {
  .p-top_schedule .c-schedule_column:last-of-type {
    width: min(4.375rem, 18.6666666667vw) !important;
  }
}
.p-top_access {
  margin-top: min(0.625rem, 2.6666666667vw);
}
@media screen and (min-width: 1025px) {
  .p-top_access {
    margin-top: min(1.25rem, 5.3333333333vw);
  }
}
.p-top_access .c-information_contents_data {
  line-height: 1.6666666667 !important;
}
@media screen and (min-width: 1025px) {
  .p-top_access .c-information_contents_data {
    line-height: 1.6666666667 !important;
  }
}
.p-top_attentionUnit {
  display: flex;
  flex-direction: column;
  gap: min(0.625rem, 2.6666666667vw);
  margin-top: min(1.875rem, 8vw);
}
@media screen and (min-width: 600px) {
  .p-top_attentionUnit {
    flex-direction: row;
  }
}
@media screen and (min-width: 1025px) {
  .p-top_attentionUnit {
    gap: min(1.25rem, 5.3333333333vw);
  }
}
.p-top_attention {
  align-items: center;
  background-color: #FFF9F1;
  border-radius: min(1.875rem, 8vw);
  display: flex;
  gap: min(3.75rem, 16vw);
  height: min(8.125rem, 34.6666666667vw);
  justify-content: center;
}
@media screen and (min-width: 600px) {
  .p-top_attention {
    width: calc(33.3333333333% - min(0.625rem, 2.6666666667vw) * 2 / 3);
    flex-direction: column;
    gap: min(2.4375rem, 10.4vw);
    height: min(16.75rem, 71.4666666667vw);
  }
}
@media screen and (min-width: 1025px) {
  .p-top_attention {
    width: calc(33.3333333333% - min(1.25rem, 5.3333333333vw) * 2 / 3);
  }
}
@media screen and (min-width: 600px) {
  .p-top_attention:nth-of-type(1) {
    padding-top: min(0.8125rem, 3.4666666667vw);
  }
}
@media screen and (min-width: 600px) {
  .p-top_attention:nth-of-type(1) .p-top_attention_imgWrap {
    width: min(6.875rem, 29.3333333333vw);
  }
}
.p-top_attention:nth-of-type(2) {
  gap: min(1.1875rem, 5.0666666667vw);
}
@media screen and (min-width: 600px) {
  .p-top_attention:nth-of-type(2) {
    gap: min(2.1875rem, 9.3333333333vw);
  }
}
@media screen and (min-width: 600px) {
  .p-top_attention:nth-of-type(2) .p-top_attention_imgWrap {
    width: min(5.875rem, 25.0666666667vw);
  }
}
.p-top_attention:nth-of-type(3) {
  gap: min(2.6875rem, 11.4666666667vw);
}
@media screen and (min-width: 600px) {
  .p-top_attention:nth-of-type(3) {
    gap: min(1.5625rem, 6.6666666667vw);
  }
}
@media screen and (min-width: 600px) {
  .p-top_attention:nth-of-type(3) .p-top_attention_imgWrap {
    width: min(5.5rem, 23.4666666667vw);
  }
}
.p-top_attention_imgWrap {
  width: min(5rem, 21.3333333333vw);
}
.p-top_attention_img {
  height: auto;
  object-fit: contain;
  width: 100%;
}
.p-top_attention_ex {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 500;
  font-size: min(1rem, 4.2666666667vw);
  letter-spacing: 0.000625em;
  line-height: 1.875;
  color: #6AB112;
  text-align: center;
}
@media screen and (min-width: 600px) {
  .p-top_attention_ex {
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 500;
    font-size: min(0.875rem, 3.7333333333vw);
    letter-spacing: 0.0007142857em;
    line-height: 2.1428571429;
  }
}
@media screen and (min-width: 1025px) {
  .p-top_attention_ex {
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 500;
    font-size: min(1rem, 4.2666666667vw);
    letter-spacing: 0.000625em;
    line-height: 1.875;
  }
}

.fadein .fadein-left {
  transition: all 0.5s linear 0s;
  transform: translate(-30px, 0);
  opacity: 0;
}

.fadein .fadein-left.show {
  transform: translate(0, 0);
  opacity: 1;
}

.scrooll-animation {
  opacity: 0;
  transform: translate(-30px, 0);
  transition: all 1s;
}

.scrooll-animation.active {
  opacity: 1;
  transform: translate(0, 0);
}

/**
* rem変換 ※375以下ではvwとする
* $number 数値
* 例) 32pxをremに変換 (32);
*/
/**
* %計算
* $number 数値
* $basis %を計算するための基準値(幅)
* 例) 値1000に対して50の%値 (50, 1000);
*/
/**
* vw計算
* $number 数値
* $width vw(%)を計算するための基準幅(デフォルト：SPのデザイン幅)
* 例) SPデザイン幅時点で100pxとなるvw値 (100);
* 例) 画面幅1000px時点で100pxとなるvw値 (100, 1000);
*/
/* hover要素判定 */
/* コンテナ */
/**
* フォント
* $size フォントサイズ
* $line 行間(xdの値)
* $space 文字間(xdの値)
* 例) fontMinchoW4(16, 25, 0.16)
*/
/* ボーダー */
/**
* flex要素のwidthを取得(均等割り)
* $num 並べる個数
* $gap 間の余白(rem, px)
* 例) flexSize(3, 10px)
*/
/* 幅 */
/* 高さ */
/* カラー */
/* フォント */
/* ボーダー */
.p-access_btn {
  margin-top: min(1.875rem, 8vw);
}
@media screen and (min-width: 600px) {
  .p-access_btn {
    margin-top: min(3.125rem, 13.3333333333vw);
  }
}
.p-access_mapParent {
  margin-inline: auto;
  max-width: min(62.5rem, 266.6666666667vw);
}
.p-access_mapWrap {
  max-width: min(57.25rem, 244.2666666667vw);
}
@media screen and (min-width: 1025px) {
  .p-access_mapWrap {
    display: flex;
    gap: min(6rem, 25.6vw);
  }
}
.p-access_map {
  aspect-ratio: 310/229.29;
  border-radius: min(1.875rem, 8vw);
  margin: 0 auto;
  overflow: hidden;
  width: 82.6666666667%;
}
@media screen and (min-width: 1025px) {
  .p-access_map {
    aspect-ratio: 490/351;
    margin-top: min(0.625rem, 2.6666666667vw);
    width: calc(100% - min(6rem, 25.6vw) - min(20.625rem, 88vw));
  }
}
.p-access_map iframe {
  height: 100%;
  width: 100%;
}
@media screen and (min-width: 1025px) {
  .p-access_mapImgWrap {
    width: min(20.625rem, 88vw);
  }
}
.p-access_mapImg {
  margin: min(1.25rem, 5.3333333333vw) auto 0 auto;
  width: 82.6666666667%;
}
@media screen and (min-width: 1025px) {
  .p-access_mapImg {
    margin-top: 0;
    width: 100%;
  }
}
.p-access_mapIntro {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  font-size: min(1rem, 4.2666666667vw);
  letter-spacing: 0.01em;
  line-height: 1.5625;
  margin: min(1.25rem, 5.3333333333vw) auto 0 auto;
  width: 88%;
}
@media screen and (min-width: 1025px) {
  .p-access_mapIntro {
    width: 100%;
  }
}
.p-access_cardWrap {
  margin-top: min(1.25rem, 5.3333333333vw);
}
@media screen and (min-width: 600px) {
  .p-access_cardWrap {
    margin-top: min(1.875rem, 8vw);
  }
}
.p-access_figure {
  text-align: center;
}
@media screen and (min-width: 1025px) {
  .p-access_figure {
    width: calc(50% - min(1.1875rem, 5.0666666667vw) * 1 / 2);
    margin-top: min(1.25rem, 5.3333333333vw);
  }
  .p-access_figure:nth-of-type(n + 3) {
    padding-bottom: min(1.875rem, 8vw);
  }
}
.p-access_figure:nth-of-type(n + 2) {
  margin-top: min(1.25rem, 5.3333333333vw);
}
.p-access_figure_title {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  font-size: min(1rem, 4.2666666667vw);
  letter-spacing: 0.01em;
  line-height: 1.5625;
}
.p-access_figure_img {
  aspect-ratio: 310/200;
  border-radius: min(1.875rem, 8vw);
  height: auto;
  margin-top: min(0.625rem, 2.6666666667vw);
}
.p-access_videoWrap {
  aspect-ratio: 310/174;
  margin-inline: auto;
  max-width: min(50rem, 213.3333333333vw);
  width: 82.6666666667%;
}
.p-access_video {
  height: 100%;
  width: 100%;
}
@media screen and (min-width: 1025px) {
  .p-access_accordion {
    background-color: #FFF9F1;
    border-radius: min(1.875rem, 8vw);
    margin-top: min(2.5rem, 10.6666666667vw) !important;
    padding-inline: min(3.125rem, 13.3333333333vw);
    position: absolute;
    right: 0;
    top: min(14.375rem, 61.3333333333vw);
    max-width: min(62.5rem, 266.6666666667vw);
    width: 93.370681606vw;
    z-index: 0;
  }
  .p-access_accordion_contents {
    display: flex;
    flex-wrap: wrap;
    gap: min(1.1875rem, 5.0666666667vw);
  }
  .p-access_accordion:has(.is_active)::before {
    background-image: url(../images/icon_triangle.svg);
    background-repeat: no-repeat;
    background-size: cover;
    content: "";
    left: calc(50% - min(0.75rem, 3.2vw));
    display: block;
    position: absolute;
    top: 0;
    transform: translate(-50%, -100%);
    height: min(3.125rem, 13.3333333333vw);
    width: min(3.125rem, 13.3333333333vw);
  }
}
.p-access_symbol_img {
  height: auto;
  margin-inline: auto;
  object-fit: contain;
  width: min(12.1875rem, 52vw);
}
.p-access_symbol_ex {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  font-size: min(1rem, 4.2666666667vw);
  letter-spacing: 0.000625em;
  line-height: 2.1875;
  margin-top: min(3.125rem, 13.3333333333vw);
  text-align: center;
}

.c-card:has(.p-access_accordion) {
  position: relative;
}
@media screen and (min-width: 1025px) {
  .c-card:has(.p-access_accordion) {
    position: relative;
    z-index: 0;
  }
}

.c-card_inner:has(.p-access_accordion) {
  position: static;
}

.fadein .fadein-left {
  transition: all 0.5s linear 0s;
  transform: translate(-30px, 0);
  opacity: 0;
}

.fadein .fadein-left.show {
  transform: translate(0, 0);
  opacity: 1;
}

.scrooll-animation {
  opacity: 0;
  transform: translate(-30px, 0);
  transition: all 1s;
}

.scrooll-animation.active {
  opacity: 1;
  transform: translate(0, 0);
}

/**
* rem変換 ※375以下ではvwとする
* $number 数値
* 例) 32pxをremに変換 (32);
*/
/**
* %計算
* $number 数値
* $basis %を計算するための基準値(幅)
* 例) 値1000に対して50の%値 (50, 1000);
*/
/**
* vw計算
* $number 数値
* $width vw(%)を計算するための基準幅(デフォルト：SPのデザイン幅)
* 例) SPデザイン幅時点で100pxとなるvw値 (100);
* 例) 画面幅1000px時点で100pxとなるvw値 (100, 1000);
*/
/* hover要素判定 */
/* コンテナ */
/**
* フォント
* $size フォントサイズ
* $line 行間(xdの値)
* $space 文字間(xdの値)
* 例) fontMinchoW4(16, 25, 0.16)
*/
/* ボーダー */
/**
* flex要素のwidthを取得(均等割り)
* $num 並べる個数
* $gap 間の余白(rem, px)
* 例) flexSize(3, 10px)
*/
/* 幅 */
/* 高さ */
/* カラー */
/* フォント */
/* ボーダー */
.p-contact_title {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 700;
  font-size: min(1rem, 4.2666666667vw);
  letter-spacing: 0.01em;
  line-height: 1.5625;
  color: #F69D0E;
  text-align: center;
  margin: min(1.5625rem, 6.6666666667vw) 0;
}
@media screen and (min-width: 1025px) {
  .p-contact_title {
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 700;
    font-size: min(1.25rem, 5.3333333333vw);
    letter-spacing: 0.03em;
    line-height: 2;
    margin: min(3.75rem, 16vw) 0;
  }
}
.p-contact_sub-title {
  color: #F06A1D;
  text-align: center;
  margin: min(3.125rem, 13.3333333333vw) 0 min(0.625rem, 2.6666666667vw) 0;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 700;
  font-size: min(1rem, 4.2666666667vw);
  letter-spacing: 0.01em;
  line-height: 1.5625;
}
@media screen and (min-width: 1025px) {
  .p-contact_sub-title {
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 700;
    font-size: min(1.25rem, 5.3333333333vw);
    letter-spacing: 0.01em;
    line-height: 1.25;
    margin: min(4.75rem, 20.2666666667vw) 0 min(1.875rem, 8vw) 0;
  }
}
.p-contact_head-text {
  text-align: center;
  margin: 13.3333333333vw 0;
}
.p-contact_head-text p {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  font-size: min(1rem, 4.2666666667vw);
  letter-spacing: 0.00625em;
  line-height: 2.1875;
}
@media screen and (min-width: 1025px) {
  .p-contact_head-text {
    margin: min(5rem, 21.3333333333vw) 0;
  }
}
.p-contact_stepper {
  position: relative;
  margin: 0 10.6666666667vw;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
@media screen and (min-width: 1025px) {
  .p-contact_stepper {
    margin: 0 auto;
    max-width: min(37.5rem, 160vw);
  }
}
.p-contact_stepper li {
  position: relative;
  list-style-type: none;
  text-align: center;
  text-transform: uppercase;
  width: 33.333%;
  color: #999999;
  font-weight: bold;
  counter-increment: steps;
}
@media screen and (min-width: 1025px) {
  .p-contact_stepper li {
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 700;
    font-size: min(1.3125rem, 5.6vw);
    letter-spacing: 0.03em;
    line-height: 2.8571428571;
  }
}
.p-contact_stepper li:before {
  display: block;
  content: "";
  content: counter(steps);
  width: min(2.1875rem, 9.3333333333vw);
  height: min(2.1875rem, 9.3333333333vw);
  border-radius: 50%;
  background: #9F9F9F;
  color: #fff;
  margin: auto;
  margin-bottom: min(0.6875rem, 2.9333333333vw);
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 700;
  font-size: min(0.875rem, 3.7333333333vw);
  letter-spacing: 0.03em;
  line-height: 2.5;
}
@media screen and (min-width: 1025px) {
  .p-contact_stepper li:before {
    width: min(3.25rem, 13.8666666667vw);
    height: min(3.25rem, 13.8666666667vw);
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 700;
    font-size: min(1.3125rem, 5.6vw);
    letter-spacing: 0.03em;
    line-height: 2.4761904762;
  }
}
.p-contact_stepper li:after {
  position: absolute;
  z-index: -1;
  top: min(1.09375rem, 4.6666666667vw);
  left: -50%;
  width: 100%;
  height: 3px;
  content: "";
  background-color: #9F9F9F;
}
@media screen and (min-width: 1025px) {
  .p-contact_stepper li:after {
    top: min(1.625rem, 6.9333333333vw);
  }
}
.p-contact_stepper li:first-child:after {
  content: none;
}
.p-contact_stepper li.active, .p-contact_stepper li.complete {
  color: #F06A1D;
}
.p-contact_stepper li.active:before, .p-contact_stepper li.complete:before {
  background-color: #F69D0E;
}
.p-contact_form {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 700;
  font-size: min(1rem, 4.2666666667vw);
  letter-spacing: 0em;
  line-height: 1.5625;
  margin: 13.3333333333vw 8.8vw;
}
@media screen and (min-width: 1025px) {
  .p-contact_form {
    margin: min(5rem, 21.3333333333vw) auto;
    max-width: min(49.375rem, 210.6666666667vw);
  }
}
.p-contact_form input[type=radio] {
  display: none;
}
.p-contact_form input[type=radio]:checked + .input_radio::after {
  opacity: 1;
}
.p-contact_form .content_wrap_normal {
  margin-bottom: min(1.25rem, 5.3333333333vw);
}
@media screen and (min-width: 1025px) {
  .p-contact_form .content_wrap_normal {
    display: flex;
    margin-bottom: min(1.875rem, 8vw);
  }
}
.p-contact_form .content_wrap_all-flex {
  align-items: center;
  display: flex;
  gap: min(0.9375rem, 4vw);
  margin-bottom: min(1.25rem, 5.3333333333vw);
}
@media screen and (min-width: 1025px) {
  .p-contact_form .content_wrap_all-flex {
    margin-bottom: min(1.875rem, 8vw);
  }
}
.p-contact_form .content_wrap_privacy {
  margin: min(3.125rem, 13.3333333333vw) 0;
  text-align: center;
  color: #F69D0E;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 700;
  font-size: min(1rem, 4.2666666667vw);
  letter-spacing: 0.01em;
  line-height: 1;
  align-items: center;
  color: #F69D0E;
  display: flex;
  gap: min(0.3125rem, 1.3333333333vw);
  justify-content: center;
}
.p-contact_form .content_wrap_privacy a {
  color: inherit;
}
.p-contact_form .content_wrap_privacy input {
  appearance: none;
  background-color: #fff;
  border: min(0.0625rem, 0.2666666667vw) solid #707070;
  border-radius: min(0.25rem, 1.0666666667vw);
  height: min(1rem, 4.2666666667vw);
  margin-right: min(0.625rem, 2.6666666667vw);
  width: min(1rem, 4.2666666667vw);
  position: relative;
}
.p-contact_form .content_wrap_privacy input:checked {
  background-color: #F69D0E;
  border: none;
}
.p-contact_form .content_wrap_privacy input:checked::before, .p-contact_form .content_wrap_privacy input:checked::after {
  background-color: #616161;
  border-radius: 100vh;
  content: "";
  display: block;
  height: min(0.125rem, 0.5333333333vw);
  width: min(0.5rem, 2.1333333333vw);
  transform-origin: left;
  transform: translate(min(0.0625rem, 0.2666666667vw), min(0.375rem, 1.6vw)) rotate(45deg);
}
.p-contact_form .content_wrap_privacy input:checked::after {
  height: min(0.125rem, 0.5333333333vw);
  width: min(0.9375rem, 4vw);
  transform: translate(min(0.3125rem, 1.3333333333vw), min(0.625rem, 2.6666666667vw)) rotate(-46deg);
}
.p-contact_form .content_wrap_privacy input[type=checkbox]:disabled {
  appearance: none;
  background-color: #fff;
  border: min(0.0625rem, 0.2666666667vw) solid #707070;
  border-radius: min(0.25rem, 1.0666666667vw);
  height: min(1rem, 4.2666666667vw);
  width: min(1rem, 4.2666666667vw);
  position: relative;
}
.p-contact_form .content_wrap_privacy input[type=checkbox]:disabled::before, .p-contact_form .content_wrap_privacy input[type=checkbox]:disabled::after {
  background-color: #616161;
  border-radius: 100vh;
  content: "";
  display: block;
  height: min(0.125rem, 0.5333333333vw);
  width: min(0.5rem, 2.1333333333vw);
  transform-origin: left;
  transform: translate(min(0rem, 0vw), min(0.375rem, 1.6vw)) rotate(45deg);
}
.p-contact_form .content_wrap_privacy input[type=checkbox]:disabled::after {
  height: min(0.125rem, 0.5333333333vw);
  width: min(0.9375rem, 4vw);
  transform: translate(min(0.25rem, 1.0666666667vw), min(0.625rem, 2.6666666667vw)) rotate(-46deg);
}
.p-contact_form .align-items_center {
  align-items: center;
}
.p-contact_form .require::after {
  content: "*";
  color: #F69D0E;
}
.p-contact_form .title_wrap {
  width: 30%;
  text-wrap: nowrap;
}
.p-contact_form .title_wrap label {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 700;
  font-size: min(1rem, 4.2666666667vw);
  letter-spacing: 0.01em;
  line-height: 1;
}
.p-contact_form .title_wrap p {
  line-height: 1;
}
@media screen and (min-width: 1025px) {
  .p-contact_form .input_wrap {
    width: 70%;
  }
}
.p-contact_form .input_wrap span {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  font-size: min(1rem, 4.2666666667vw);
  letter-spacing: 0.01em;
  line-height: 1.5625;
  color: #9F9F9F;
}
.p-contact_form .input_wrap_70 {
  width: 70%;
}
.p-contact_form .input_box {
  width: 100%;
  height: min(2.6875rem, 11.4666666667vw);
  border: none;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  font-size: min(1rem, 4.2666666667vw);
  letter-spacing: 0.01em;
  line-height: 1.5625;
  background: #FFF9F1;
  border-radius: min(0.4375rem, 1.8666666667vw);
  padding: min(0.625rem, 2.6666666667vw) min(0.9375rem, 4vw);
}
.p-contact_form .input_box_textarea {
  resize: none;
  height: min(15.125rem, 64.5333333333vw);
}
.p-contact_confirm_line {
  border: none;
  border-bottom: 0.5px dashed #9F9F9F;
  margin-bottom: min(1.25rem, 5.3333333333vw);
}
@media screen and (min-width: 1025px) {
  .p-contact_confirm_line {
    margin-bottom: min(1.875rem, 8vw);
  }
}
.p-contact_confirm_input_text {
  padding-left: min(0.3125rem, 1.3333333333vw);
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  font-size: min(1rem, 4.2666666667vw);
  letter-spacing: 0.01em;
  line-height: 1.5625;
}
.p-contact_confirm_input_area_wrap {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  font-size: min(1rem, 4.2666666667vw);
  letter-spacing: 0.01em;
  line-height: 1.5625;
  background: #FFF9F1;
  border-radius: min(0.4375rem, 1.8666666667vw);
  margin-top: min(0.625rem, 2.6666666667vw);
  padding: min(0.875rem, 3.7333333333vw) min(1.5rem, 6.4vw);
}
@media screen and (min-width: 1025px) {
  .p-contact_confirm_input_area_wrap {
    margin-top: min(1.25rem, 5.3333333333vw);
  }
}
.p-contact_confirm_input_area_wrap label {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  font-size: min(1rem, 4.2666666667vw);
  letter-spacing: 0.01em;
  line-height: 1;
}
.p-contact_confirm_input_area_wrap div p {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  font-size: min(1rem, 4.2666666667vw);
  letter-spacing: 0.01em;
  line-height: 1.5625;
}
.p-contact_confirm_btn_wrap {
  display: flex;
  justify-content: center;
  width: 100%;
  margin: auto;
  gap: min(0.625rem, 2.6666666667vw);
  flex-direction: column-reverse;
}
@media screen and (min-width: 1025px) {
  .p-contact_confirm_btn_wrap {
    width: 50%;
    flex-direction: row;
  }
}

.fadein .fadein-left {
  transition: all 0.5s linear 0s;
  transform: translate(-30px, 0);
  opacity: 0;
}

.fadein .fadein-left.show {
  transform: translate(0, 0);
  opacity: 1;
}

.scrooll-animation {
  opacity: 0;
  transform: translate(-30px, 0);
  transition: all 1s;
}

.scrooll-animation.active {
  opacity: 1;
  transform: translate(0, 0);
}

/**
* rem変換 ※375以下ではvwとする
* $number 数値
* 例) 32pxをremに変換 (32);
*/
/**
* %計算
* $number 数値
* $basis %を計算するための基準値(幅)
* 例) 値1000に対して50の%値 (50, 1000);
*/
/**
* vw計算
* $number 数値
* $width vw(%)を計算するための基準幅(デフォルト：SPのデザイン幅)
* 例) SPデザイン幅時点で100pxとなるvw値 (100);
* 例) 画面幅1000px時点で100pxとなるvw値 (100, 1000);
*/
/* hover要素判定 */
/* コンテナ */
/**
* フォント
* $size フォントサイズ
* $line 行間(xdの値)
* $space 文字間(xdの値)
* 例) fontMinchoW4(16, 25, 0.16)
*/
/* ボーダー */
/**
* flex要素のwidthを取得(均等割り)
* $num 並べる個数
* $gap 間の余白(rem, px)
* 例) flexSize(3, 10px)
*/
/* 幅 */
/* 高さ */
/* カラー */
/* フォント */
/* ボーダー */
@media screen and (min-width: 1025px) {
  .p-from-clinic_greetingWrap {
    display: flex;
    justify-content: flex-end;
    gap: min(5.1875rem, 22.1333333333vw);
    margin-left: auto;
    width: 85.7142857143%;
    max-width: min(73.75rem, 314.6666666667vw);
  }
}
@media screen and (min-width: 1380px) {
  .p-from-clinic_greetingWrap {
    margin-inline: auto;
  }
}
@media screen and (min-width: 1025px) {
  .p-from-clinic_greetingWrap_inner {
    width: min(27.1875rem, 116vw);
  }
}
@media screen and (min-width: 1025px) {
  .p-from-clinic_greetingWrap_inner .c-paragraph {
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 400;
    font-size: min(1rem, 4.2666666667vw);
    letter-spacing: 0.01em;
    line-height: 2.1875;
    width: 100%;
  }
}
.p-from-clinic_nameWrap {
  margin: 0 auto;
  width: 89.3333333333%;
}
@media screen and (min-width: 1025px) {
  .p-from-clinic_nameWrap {
    transform: translate(min(3.125rem, 13.3333333333vw), max(-1.875rem, -8vw));
    width: 100%;
  }
}
.p-from-clinic_name {
  aspect-ratio: 187/68;
  height: auto;
  margin-left: auto;
  margin-top: min(1.875rem, 8vw);
  padding-right: 1.6%;
  width: min(11.6875rem, 49.8666666667vw);
}
@media screen and (min-width: 1025px) {
  .p-from-clinic_name {
    margin-top: min(3.125rem, 13.3333333333vw);
    width: min(15.5rem, 66.1333333333vw);
  }
}
.p-from-clinic_greetingImg {
  aspect-ratio: 345/271;
  border-radius: min(1.875rem, 8vw);
  height: auto;
  margin-inline: auto;
  margin-top: min(1.875rem, 8vw);
  overflow: hidden;
  width: 93.2432432432%;
}
@media screen and (min-width: 1025px) {
  .p-from-clinic_greetingImg {
    aspect-ratio: 650/453;
    border-radius: min(1.875rem, 8vw) 0 0 min(1.875rem, 8vw);
    margin-top: 0;
    max-height: min(28.3125rem, 120.8vw);
    width: min(100% - min(5.1875rem, 22.1333333333vw) - min(27.1875rem, 116vw));
  }
}
.p-from-clinic_greetingImg img {
  object-position: top center;
}
@media screen and (min-width: 600px) {
  .p-from-clinic_greetingImg img {
    object-position: 50% 0;
  }
}
.p-from-clinic_career {
  padding-left: min(1.4375rem, 6.1333333333vw);
  padding-right: min(0.9375rem, 4vw);
}
@media screen and (min-width: 1025px) {
  .p-from-clinic_career {
    padding-right: min(0.9375rem, 4vw);
    padding-left: min(1.875rem, 8vw);
  }
}
.p-from-clinic_career_data {
  border-left: min(0.0625rem, 0.2666666667vw) solid #F69D0E;
  padding-bottom: min(0.65625rem, 2.8vw);
  padding-left: min(0.78125rem, 3.3333333333vw);
  position: relative;
}
.p-from-clinic_career_data::before {
  background-color: #F69D0E;
  border-radius: 100vh;
  content: "";
  display: block;
  height: min(0.3125rem, 1.3333333333vw);
  left: 0;
  position: absolute;
  top: min(0.5rem, 2.1333333333vw);
  transform: translateX(-50%);
  width: min(0.3125rem, 1.3333333333vw);
  z-index: 1;
}
.p-from-clinic_career_data:first-of-type::after {
  background-color: #FFF9F1;
  content: "";
  display: block;
  left: 0;
  height: min(0.5rem, 2.1333333333vw);
  top: 0;
  position: absolute;
  transform: translateX(-50%);
  width: min(0.625rem, 2.6666666667vw);
}
.p-from-clinic_career_data:last-of-type::after {
  background-color: #FFF9F1;
  content: "";
  display: block;
  left: 0;
  height: calc(100% - min(0.5rem, 2.1333333333vw));
  top: min(0.5rem, 2.1333333333vw);
  position: absolute;
  transform: translateX(-50%);
  width: min(0.625rem, 2.6666666667vw);
}
.p-from-clinic_career_date {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 500;
  font-size: min(0.75rem, 3.2vw);
  letter-spacing: 0.01em;
  line-height: 1;
  color: #6AB112;
  width: 100%;
}
.p-from-clinic_career_info {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  font-size: min(1rem, 4.2666666667vw);
  letter-spacing: 0.01em;
  line-height: 1.5625;
}
@media screen and (min-width: 1025px) {
  .p-from-clinic_career_info {
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 400;
    font-size: min(0.9375rem, 4vw);
    letter-spacing: 0.0106666667em;
    line-height: 1;
  }
}

.fadein .fadein-left {
  transition: all 0.5s linear 0s;
  transform: translate(-30px, 0);
  opacity: 0;
}

.fadein .fadein-left.show {
  transform: translate(0, 0);
  opacity: 1;
}

.scrooll-animation {
  opacity: 0;
  transform: translate(-30px, 0);
  transition: all 1s;
}

.scrooll-animation.active {
  opacity: 1;
  transform: translate(0, 0);
}

/**
* rem変換 ※375以下ではvwとする
* $number 数値
* 例) 32pxをremに変換 (32);
*/
/**
* %計算
* $number 数値
* $basis %を計算するための基準値(幅)
* 例) 値1000に対して50の%値 (50, 1000);
*/
/**
* vw計算
* $number 数値
* $width vw(%)を計算するための基準幅(デフォルト：SPのデザイン幅)
* 例) SPデザイン幅時点で100pxとなるvw値 (100);
* 例) 画面幅1000px時点で100pxとなるvw値 (100, 1000);
*/
/* hover要素判定 */
/* コンテナ */
/**
* フォント
* $size フォントサイズ
* $line 行間(xdの値)
* $space 文字間(xdの値)
* 例) fontMinchoW4(16, 25, 0.16)
*/
/* ボーダー */
/**
* flex要素のwidthを取得(均等割り)
* $num 並べる個数
* $gap 間の余白(rem, px)
* 例) flexSize(3, 10px)
*/
/* 幅 */
/* 高さ */
/* カラー */
/* フォント */
/* ボーダー */
.fadein .fadein-left {
  transition: all 0.5s linear 0s;
  transform: translate(-30px, 0);
  opacity: 0;
}

.fadein .fadein-left.show {
  transform: translate(0, 0);
  opacity: 1;
}

.scrooll-animation {
  opacity: 0;
  transform: translate(-30px, 0);
  transition: all 1s;
}

.scrooll-animation.active {
  opacity: 1;
  transform: translate(0, 0);
}

/**
* rem変換 ※375以下ではvwとする
* $number 数値
* 例) 32pxをremに変換 (32);
*/
/**
* %計算
* $number 数値
* $basis %を計算するための基準値(幅)
* 例) 値1000に対して50の%値 (50, 1000);
*/
/**
* vw計算
* $number 数値
* $width vw(%)を計算するための基準幅(デフォルト：SPのデザイン幅)
* 例) SPデザイン幅時点で100pxとなるvw値 (100);
* 例) 画面幅1000px時点で100pxとなるvw値 (100, 1000);
*/
/* hover要素判定 */
/* コンテナ */
/**
* フォント
* $size フォントサイズ
* $line 行間(xdの値)
* $space 文字間(xdの値)
* 例) fontMinchoW4(16, 25, 0.16)
*/
/* ボーダー */
/**
* flex要素のwidthを取得(均等割り)
* $num 並べる個数
* $gap 間の余白(rem, px)
* 例) flexSize(3, 10px)
*/
/* 幅 */
/* 高さ */
/* カラー */
/* フォント */
/* ボーダー */
.p-medical_contents {
  margin-inline: auto;
  max-width: min(62.5rem, 266.6666666667vw);
}
@media screen and (min-width: 1025px) {
  .p-medical_contents {
    display: flex;
    gap: min(1.125rem, 4.8vw);
  }
}
@media screen and (min-width: 1025px) {
  .p-medical_contents .c-paragraph {
    width: 100% !important;
  }
}
@media screen and (min-width: 1025px) {
  .p-medical_paragraphWrap {
    width: calc(100% - min(1.125rem, 4.8vw) - min(21.125rem, 90.1333333333vw));
  }
}
.p-medical_paragraphWrap_inner {
  margin-top: min(1.25rem, 5.3333333333vw);
}
.p-medical_paragraphWrap_inner > *:nth-child(n+2) {
  margin-top: min(1.25rem, 5.3333333333vw);
}
.p-medical_medicalImg {
  aspect-ratio: 345/150;
  border-radius: min(1.875rem, 8vw);
  height: auto;
  overflow: hidden;
  width: 100%;
}
@media screen and (min-width: 1025px) {
  .p-medical_medicalImg {
    aspect-ratio: 340/370;
    width: min(21.125rem, 90.1333333333vw);
  }
}
.p-medical_contents02 {
  margin-top: min(1.25rem, 5.3333333333vw);
}
@media screen and (min-width: 1025px) {
  .p-medical_contents02 {
    margin-top: min(3.125rem, 13.3333333333vw);
  }
}
@media screen and (min-width: 1025px) {
  .p-medical_point {
    align-items: center;
    display: flex;
    justify-content: flex-end;
    gap: min(7.2142857143vw, min(6.3125rem, 26.9333333333vw));
  }
}
.p-medical_point_textWrap {
  display: inline-block;
  position: relative;
  left: 50%;
  transform: translateX(-50%);
}
@media screen and (min-width: 1025px) {
  .p-medical_point_textWrap {
    display: block;
    position: static;
    transform: translateX(0);
  }
}
.p-medical_point_textWrap_text {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 700;
  font-size: min(1.25rem, 5.3333333333vw);
  letter-spacing: 0.0065em;
  line-height: 1;
}
.p-medical_point_textWrap_text__r {
  text-align: right;
}
.p-medical_point_textWrap_textPoint {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 700;
  font-size: min(1.75rem, 7.4666666667vw);
  letter-spacing: 0.01em;
  line-height: 1.0714285714;
  background: transparent linear-gradient(97deg, #F69D0E 0%, #EC4728 100%) 0% 0% no-repeat padding-box;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}
@media screen and (min-width: 600px) {
  .p-medical_point_textWrap_textPoint {
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 700;
    font-size: min(2.1875rem, 9.3333333333vw);
    letter-spacing: 0.0108571429em;
    line-height: 1.0857142857;
  }
}
.p-medical_point_textWrap > *:nth-child(n+2) {
  margin-top: min(1.25rem, 5.3333333333vw);
}
.p-medical_point_img {
  margin-top: min(5rem, 21.3333333333vw);
  width: 100%;
}
@media screen and (min-width: 1025px) {
  .p-medical_point_img {
    overflow: hidden;
    margin-top: 0;
    border-radius: min(1.875rem, 8vw) 0 0 min(1.875rem, 8vw);
    width: 49.2857142857%;
  }
}
.p-medical_relative {
  margin-inline: auto;
  display: flex;
  flex-wrap: wrap;
  gap: min(1.25rem, 5.3333333333vw);
  justify-content: center;
  max-width: min(21.875rem, 93.3333333333vw);
  width: 100%;
}
@media screen and (min-width: 1025px) {
  .p-medical_relative {
    gap: min(1.25rem, 5.3333333333vw) min(2.5rem, 10.6666666667vw);
    justify-content: flex-start;
    max-width: min(46.25rem, 197.3333333333vw);
  }
}
.p-medical_relative_link {
  align-items: center;
  border: min(0.125rem, 0.5333333333vw) solid #F69D0E;
  border-radius: 100vh;
  display: flex;
  gap: min(0.3125rem, 1.3333333333vw);
  height: min(3.4375rem, 14.6666666667vw);
  justify-content: center;
  max-width: min(21.875rem, 93.3333333333vw);
  width: 100%;
}
.p-medical_relative_linkText {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  font-size: min(1rem, 4.2666666667vw);
  letter-spacing: 0.01em;
  line-height: 1;
  color: #F06A1D;
}
.p-medical_relative_linkIcon {
  height: min(0.6775rem, 2.8906666667vw);
  width: min(0.6775rem, 2.8906666667vw);
}
.p-medical_relative_linkIcon img {
  height: 100%;
  object-fit: contain;
  width: 100%;
}

.fadein .fadein-left {
  transition: all 0.5s linear 0s;
  transform: translate(-30px, 0);
  opacity: 0;
}

.fadein .fadein-left.show {
  transform: translate(0, 0);
  opacity: 1;
}

.scrooll-animation {
  opacity: 0;
  transform: translate(-30px, 0);
  transition: all 1s;
}

.scrooll-animation.active {
  opacity: 1;
  transform: translate(0, 0);
}

/**
* rem変換 ※375以下ではvwとする
* $number 数値
* 例) 32pxをremに変換 (32);
*/
/**
* %計算
* $number 数値
* $basis %を計算するための基準値(幅)
* 例) 値1000に対して50の%値 (50, 1000);
*/
/**
* vw計算
* $number 数値
* $width vw(%)を計算するための基準幅(デフォルト：SPのデザイン幅)
* 例) SPデザイン幅時点で100pxとなるvw値 (100);
* 例) 画面幅1000px時点で100pxとなるvw値 (100, 1000);
*/
/* hover要素判定 */
/* コンテナ */
/**
* フォント
* $size フォントサイズ
* $line 行間(xdの値)
* $space 文字間(xdの値)
* 例) fontMinchoW4(16, 25, 0.16)
*/
/* ボーダー */
/**
* flex要素のwidthを取得(均等割り)
* $num 並べる個数
* $gap 間の余白(rem, px)
* 例) flexSize(3, 10px)
*/
/* 幅 */
/* 高さ */
/* カラー */
/* フォント */
/* ボーダー */
.menu_ex {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  font-size: min(1rem, 4.2666666667vw);
  letter-spacing: 0.00625em;
  line-height: 1.875;
  color: #F06A1D;
  text-align: center;
}

.fadein .fadein-left {
  transition: all 0.5s linear 0s;
  transform: translate(-30px, 0);
  opacity: 0;
}

.fadein .fadein-left.show {
  transform: translate(0, 0);
  opacity: 1;
}

.scrooll-animation {
  opacity: 0;
  transform: translate(-30px, 0);
  transition: all 1s;
}

.scrooll-animation.active {
  opacity: 1;
  transform: translate(0, 0);
}

/**
* rem変換 ※375以下ではvwとする
* $number 数値
* 例) 32pxをremに変換 (32);
*/
/**
* %計算
* $number 数値
* $basis %を計算するための基準値(幅)
* 例) 値1000に対して50の%値 (50, 1000);
*/
/**
* vw計算
* $number 数値
* $width vw(%)を計算するための基準幅(デフォルト：SPのデザイン幅)
* 例) SPデザイン幅時点で100pxとなるvw値 (100);
* 例) 画面幅1000px時点で100pxとなるvw値 (100, 1000);
*/
/* hover要素判定 */
/* コンテナ */
/**
* フォント
* $size フォントサイズ
* $line 行間(xdの値)
* $space 文字間(xdの値)
* 例) fontMinchoW4(16, 25, 0.16)
*/
/* ボーダー */
/**
* flex要素のwidthを取得(均等割り)
* $num 並べる個数
* $gap 間の余白(rem, px)
* 例) flexSize(3, 10px)
*/
/* 幅 */
/* 高さ */
/* カラー */
/* フォント */
/* ボーダー */
.p-policy_intro {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  font-size: min(1rem, 4.2666666667vw);
  letter-spacing: 0.01em;
  line-height: 2.1875;
  margin-top: min(3.6875rem, 15.7333333333vw);
}
@media screen and (min-width: 1025px) {
  .p-policy_intro {
    text-align: center;
  }
}
@media screen and (min-width: 1025px) {
  .p-policy_row {
    padding-left: min(2rem, 8.5333333333vw);
  }
}
.p-policy_list {
  margin-top: min(1.25rem, 5.3333333333vw);
}
.p-policy_text {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  font-size: min(1rem, 4.2666666667vw);
  letter-spacing: 0.01em;
  line-height: 2.1875;
}
.p-policy_text_in {
  display: block;
  padding-left: min(1rem, 4.2666666667vw);
  position: relative;
  width: 100%;
}
.p-policy_text_in::before {
  content: "・";
  display: block;
  left: 0;
  position: absolute;
  top: 0;
}
@media screen and (min-width: 1025px) {
  .p-policy_text__wide {
    width: min(56.25rem, 240vw);
  }
}
.p-policy_text__mt {
  margin-top: min(1.25rem, 5.3333333333vw);
}

.fadein .fadein-left {
  transition: all 0.5s linear 0s;
  transform: translate(-30px, 0);
  opacity: 0;
}

.fadein .fadein-left.show {
  transform: translate(0, 0);
  opacity: 1;
}

.scrooll-animation {
  opacity: 0;
  transform: translate(-30px, 0);
  transition: all 1s;
}

.scrooll-animation.active {
  opacity: 1;
  transform: translate(0, 0);
}

/**
* rem変換 ※375以下ではvwとする
* $number 数値
* 例) 32pxをremに変換 (32);
*/
/**
* %計算
* $number 数値
* $basis %を計算するための基準値(幅)
* 例) 値1000に対して50の%値 (50, 1000);
*/
/**
* vw計算
* $number 数値
* $width vw(%)を計算するための基準幅(デフォルト：SPのデザイン幅)
* 例) SPデザイン幅時点で100pxとなるvw値 (100);
* 例) 画面幅1000px時点で100pxとなるvw値 (100, 1000);
*/
/* hover要素判定 */
/* コンテナ */
/**
* フォント
* $size フォントサイズ
* $line 行間(xdの値)
* $space 文字間(xdの値)
* 例) fontMinchoW4(16, 25, 0.16)
*/
/* ボーダー */
/**
* flex要素のwidthを取得(均等割り)
* $num 並べる個数
* $gap 間の余白(rem, px)
* 例) flexSize(3, 10px)
*/
/* 幅 */
/* 高さ */
/* カラー */
/* フォント */
/* ボーダー */
.p-survey_subjectWrap {
  margin-inline: auto;
  max-width: min(25rem, 106.6666666667vw);
  width: 92vw;
}
@media screen and (min-width: 600px) {
  .p-survey_subjectWrap {
    margin: 0 auto;
    width: 93.3333333333%;
    display: flex;
    flex-wrap: wrap;
    gap: min(1.25rem, 5.3333333333vw);
    max-width: min(42.5rem, 181.3333333333vw);
  }
}
@media screen and (min-width: 1025px) {
  .p-survey_subjectWrap {
    gap: min(4.1875rem, 17.8666666667vw) 0;
    justify-content: space-between;
    max-width: min(59.0625rem, 252vw);
  }
}
.p-survey_subjectItem {
  align-items: center;
  display: flex;
  justify-content: space-between;
}
@media screen and (min-width: 600px) {
  .p-survey_subjectItem {
    width: calc(50% - min(1.25rem, 5.3333333333vw) * 1 / 2);
  }
}
@media screen and (min-width: 1025px) {
  .p-survey_subjectItem {
    width: calc(50% - min(4.375rem, 18.6666666667vw) * 1 / 2);
    gap: min(1.6875rem, 7.2vw);
  }
}
.p-survey_subjectItem:nth-of-type(n + 2) {
  margin-top: min(1.875rem, 8vw);
}
@media screen and (min-width: 600px) {
  .p-survey_subjectItem:nth-of-type(n + 2) {
    margin: 0;
  }
}
.p-survey_subjectItem:nth-of-type(2n) {
  flex-direction: row-reverse;
}
.p-survey_subjectItem:nth-of-type(1) .p-survey_subjectItem_img img {
  width: 40.5333333333vw;
}
@media screen and (min-width: 600px) {
  .p-survey_subjectItem:nth-of-type(1) .p-survey_subjectItem_img img {
    width: 20vw;
  }
}
@media screen and (min-width: 1025px) {
  .p-survey_subjectItem:nth-of-type(1) .p-survey_subjectItem_img img {
    width: min(13.1875rem, 56.2666666667vw);
  }
}
.p-survey_subjectItem:nth-of-type(2) .p-survey_subjectItem_img img {
  transform: translateX(max(-1.25rem, -5.3333333333vw));
  width: 36.5333333333vw;
}
@media screen and (min-width: 600px) {
  .p-survey_subjectItem:nth-of-type(2) .p-survey_subjectItem_img img {
    transform: translateX(0);
    width: 20vw;
  }
}
@media screen and (min-width: 1025px) {
  .p-survey_subjectItem:nth-of-type(2) .p-survey_subjectItem_img img {
    transform: translateX(max(-1.25rem, -5.3333333333vw));
    width: min(12.6875rem, 54.1333333333vw);
  }
}
.p-survey_subjectItem:nth-of-type(3) .p-survey_subjectItem_img img {
  transform: translateX(min(1.5rem, 6.4vw));
  width: 30.9333333333vw;
}
@media screen and (min-width: 600px) {
  .p-survey_subjectItem:nth-of-type(3) .p-survey_subjectItem_img img {
    transform: translateX(0);
    width: 20vw;
  }
}
@media screen and (min-width: 1025px) {
  .p-survey_subjectItem:nth-of-type(3) .p-survey_subjectItem_img img {
    transform: translateX(min(1.5rem, 6.4vw));
    width: min(10.25rem, 43.7333333333vw);
  }
}
.p-survey_subjectItem:nth-of-type(4) .p-survey_subjectItem_img img {
  width: 45.8666666667vw;
}
@media screen and (min-width: 600px) {
  .p-survey_subjectItem:nth-of-type(4) .p-survey_subjectItem_img img {
    width: 20vw;
  }
}
@media screen and (min-width: 1025px) {
  .p-survey_subjectItem:nth-of-type(4) .p-survey_subjectItem_img img {
    width: min(13.4375rem, 57.3333333333vw);
  }
}
.p-survey_subjectItem_img img {
  height: auto;
}
@media screen and (min-width: 600px) {
  .p-survey_subjectItem_img img {
    max-width: min(9.6875rem, 41.3333333333vw);
  }
}
@media screen and (min-width: 1025px) {
  .p-survey_subjectItem_img img {
    max-width: none;
  }
}
.p-survey_subjectItem_title {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 700;
  font-size: min(1.25rem, 5.3333333333vw);
  letter-spacing: 0.01em;
  line-height: 1;
  color: #F69D0E;
  text-align: center;
}
@media screen and (min-width: 600px) {
  .p-survey_subjectItem_title {
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 700;
    font-size: min(1.125rem, 4.8vw);
    letter-spacing: 0.0111111111em;
    line-height: 1;
  }
}
@media screen and (min-width: 1025px) {
  .p-survey_subjectItem_title {
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 700;
    font-size: min(1.625rem, 6.9333333333vw);
    letter-spacing: 0.01em;
    line-height: 1;
  }
}
.p-survey_subjectItem_per {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 700;
  font-size: min(3.5rem, 14.9333333333vw);
  letter-spacing: 0.01em;
  line-height: 1;
  color: #F69D0E;
  display: block;
  margin-top: min(0.625rem, 2.6666666667vw);
  text-align: center;
}
@media screen and (min-width: 1025px) {
  .p-survey_subjectItem_per {
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 700;
    font-size: min(4.6875rem, 20vw);
    letter-spacing: 0.01em;
    line-height: 1;
  }
}
.p-survey_subjectItem_perUnit {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 700;
  font-size: min(2.3125rem, 9.8666666667vw);
  letter-spacing: 0.0027027027em;
  line-height: 1;
}
@media screen and (min-width: 1025px) {
  .p-survey_subjectItem_perUnit {
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 700;
    font-size: min(3.125rem, 13.3333333333vw);
    letter-spacing: 0.01em;
    line-height: 1;
  }
}
.p-survey_subjectItem_ex {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  font-size: min(0.875rem, 3.7333333333vw);
  letter-spacing: 0.01em;
  line-height: 1.4285714286;
  margin-top: min(0.625rem, 2.6666666667vw);
}
@media screen and (min-width: 600px) {
  .p-survey_subjectItem_ex {
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 400;
    font-size: min(0.8125rem, 3.4666666667vw);
    letter-spacing: 0.0153846154em;
    line-height: 1.5384615385;
    min-height: calc(min(0.8125rem, 3.4666666667vw) * 3 * 20 / 13);
  }
}
@media screen and (min-width: 1025px) {
  .p-survey_subjectItem_ex {
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 400;
    font-size: min(1rem, 4.2666666667vw);
    letter-spacing: 0.0125em;
    line-height: 1.625;
    min-height: calc(min(1rem, 4.2666666667vw) * 3 * 26 / 16);
  }
}
.p-survey_subjectIntro {
  margin-top: min(3.125rem, 13.3333333333vw);
}
.p-survey_cardWrap {
  margin-top: min(3.125rem, 13.3333333333vw);
}
@media screen and (min-width: 1025px) {
  .p-survey_cardWrap .c-card {
    min-height: min(17.5rem, 74.6666666667vw);
  }
}
.p-survey_accordion {
  display: none;
  margin-top: min(1.875rem, 8vw);
}
@media screen and (min-width: 600px) {
  .p-survey_accordion {
    margin-top: min(3.125rem, 13.3333333333vw);
  }
}
.p-survey_accordion_item {
  margin-top: min(3.125rem, 13.3333333333vw);
}
.p-survey_btn {
  margin-bottom: min(1.875rem, 8vw);
  margin-top: min(1.875rem, 8vw);
}

.fadein .fadein-left {
  transition: all 0.5s linear 0s;
  transform: translate(-30px, 0);
  opacity: 0;
}

.fadein .fadein-left.show {
  transform: translate(0, 0);
  opacity: 1;
}

.scrooll-animation {
  opacity: 0;
  transform: translate(-30px, 0);
  transition: all 1s;
}

.scrooll-animation.active {
  opacity: 1;
  transform: translate(0, 0);
}

/**
* rem変換 ※375以下ではvwとする
* $number 数値
* 例) 32pxをremに変換 (32);
*/
/**
* %計算
* $number 数値
* $basis %を計算するための基準値(幅)
* 例) 値1000に対して50の%値 (50, 1000);
*/
/**
* vw計算
* $number 数値
* $width vw(%)を計算するための基準幅(デフォルト：SPのデザイン幅)
* 例) SPデザイン幅時点で100pxとなるvw値 (100);
* 例) 画面幅1000px時点で100pxとなるvw値 (100, 1000);
*/
/* hover要素判定 */
/* コンテナ */
/**
* フォント
* $size フォントサイズ
* $line 行間(xdの値)
* $space 文字間(xdの値)
* 例) fontMinchoW4(16, 25, 0.16)
*/
/* ボーダー */
/**
* flex要素のwidthを取得(均等割り)
* $num 並べる個数
* $gap 間の余白(rem, px)
* 例) flexSize(3, 10px)
*/
/* 幅 */
/* 高さ */
/* カラー */
/* フォント */
/* ボーダー */
.p-news_contents {
  margin-top: min(1.125rem, 4.8vw);
}
@media screen and (min-width: 600px) {
  .p-news_contents {
    margin-top: min(3.125rem, 13.3333333333vw);
  }
}
@media screen and (min-width: 1025px) {
  .p-news_contents {
    margin-top: min(6.25rem, 26.6666666667vw);
  }
}

.p-newsSingle_contents {
  margin-top: min(0.3125rem, 1.3333333333vw);
}
@media screen and (min-width: 600px) {
  .p-newsSingle_contents {
    margin-top: min(0.625rem, 2.6666666667vw);
  }
}
.p-newsSingle_title {
  background-image: linear-gradient(to right, #9F9F9F 1px, transparent 1px);
  background-size: 4px 0.5px;
  background-repeat: repeat-x;
  background-position: left bottom;
  padding-bottom: min(1.25rem, 5.3333333333vw);
}
.p-newsSingle_hr {
  background-image: linear-gradient(to right, #9F9F9F 1px, transparent 1px);
  background-size: 4px 0.5px;
  background-repeat: repeat-x;
  background-position: left bottom;
  background-position: left, right, right bottom, left bottom;
  border: none;
  height: 0.5px;
  margin: 0 min(0.3125rem, 1.3333333333vw) !important;
}
.p-newsSingle_btn {
  margin-top: min(1.875rem, 8vw);
  text-align: center;
}
@media screen and (min-width: 1025px) {
  .p-newsSingle_btn {
    margin-top: min(6.25rem, 26.6666666667vw);
  }
}

.p-pagination {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 700;
  font-size: min(0.875rem, 3.7333333333vw);
  letter-spacing: 0.0085714286em;
  line-height: 1.7857142857;
  margin-top: min(3.25rem, 13.8666666667vw);
}
.p-pagination_wrap {
  display: flex;
  justify-content: center;
  gap: min(1.25rem, 5.3333333333vw);
}
.p-pagination .page-numbers {
  color: #fff;
  background: #9F9F9F;
  width: min(1.5625rem, 6.6666666667vw);
  height: min(1.5625rem, 6.6666666667vw);
  border-radius: 50%;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}
.p-pagination .current {
  background: #F69D0E;
}
.p-pagination .prev,
.p-pagination .next {
  background: none;
  color: #F69D0E;
}

.fadein .fadein-left {
  transition: all 0.5s linear 0s;
  transform: translate(-30px, 0);
  opacity: 0;
}

.fadein .fadein-left.show {
  transform: translate(0, 0);
  opacity: 1;
}

.scrooll-animation {
  opacity: 0;
  transform: translate(-30px, 0);
  transition: all 1s;
}

.scrooll-animation.active {
  opacity: 1;
  transform: translate(0, 0);
}

/**
* rem変換 ※375以下ではvwとする
* $number 数値
* 例) 32pxをremに変換 (32);
*/
/**
* %計算
* $number 数値
* $basis %を計算するための基準値(幅)
* 例) 値1000に対して50の%値 (50, 1000);
*/
/**
* vw計算
* $number 数値
* $width vw(%)を計算するための基準幅(デフォルト：SPのデザイン幅)
* 例) SPデザイン幅時点で100pxとなるvw値 (100);
* 例) 画面幅1000px時点で100pxとなるvw値 (100, 1000);
*/
/* hover要素判定 */
/* コンテナ */
/**
* フォント
* $size フォントサイズ
* $line 行間(xdの値)
* $space 文字間(xdの値)
* 例) fontMinchoW4(16, 25, 0.16)
*/
/* ボーダー */
/**
* flex要素のwidthを取得(均等割り)
* $num 並べる個数
* $gap 間の余白(rem, px)
* 例) flexSize(3, 10px)
*/
/* 幅 */
/* 高さ */
/* カラー */
/* フォント */
/* ボーダー */
.fadein .fadein-left {
  transition: all 0.5s linear 0s;
  transform: translate(-30px, 0);
  opacity: 0;
}

.fadein .fadein-left.show {
  transform: translate(0, 0);
  opacity: 1;
}

.scrooll-animation {
  opacity: 0;
  transform: translate(-30px, 0);
  transition: all 1s;
}

.scrooll-animation.active {
  opacity: 1;
  transform: translate(0, 0);
}

/**
* rem変換 ※375以下ではvwとする
* $number 数値
* 例) 32pxをremに変換 (32);
*/
/**
* %計算
* $number 数値
* $basis %を計算するための基準値(幅)
* 例) 値1000に対して50の%値 (50, 1000);
*/
/**
* vw計算
* $number 数値
* $width vw(%)を計算するための基準幅(デフォルト：SPのデザイン幅)
* 例) SPデザイン幅時点で100pxとなるvw値 (100);
* 例) 画面幅1000px時点で100pxとなるvw値 (100, 1000);
*/
/* hover要素判定 */
/* コンテナ */
/**
* フォント
* $size フォントサイズ
* $line 行間(xdの値)
* $space 文字間(xdの値)
* 例) fontMinchoW4(16, 25, 0.16)
*/
/* ボーダー */
/**
* flex要素のwidthを取得(均等割り)
* $num 並べる個数
* $gap 間の余白(rem, px)
* 例) flexSize(3, 10px)
*/
/* 幅 */
/* 高さ */
/* カラー */
/* フォント */
/* ボーダー */
.p-cf7_radio .wpcf7-list-item.first {
  margin: 0;
}
.p-cf7_radio .wpcf7-list-item-label {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 700;
  font-size: min(1rem, 4.2666666667vw);
  letter-spacing: 0.01em;
  line-height: 1;
  cursor: pointer;
  display: flex;
}
@media screen and (min-width: 1025px) {
  .p-cf7_radio .wpcf7-list-item-label {
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 700;
    font-size: min(1.25rem, 5.3333333333vw);
    letter-spacing: 0.01em;
    line-height: 1;
  }
}
.p-cf7_radio .wpcf7-radio {
  height: 25.5px !important;
  align-items: flex-end;
}
.p-cf7_radio input[type=radio] {
  opacity: 0;
  position: absolute;
}
.p-cf7_radio .wpcf7-list-item-label::before {
  background: #fff;
  border: 1px solid #707070;
  border-radius: 100%;
  content: "";
  margin-bottom: auto;
  margin-right: min(0.625rem, 2.6666666667vw);
  margin-top: auto;
  transition: background-color 0.5s;
  width: min(1.125rem, 4.8vw);
  height: min(1.125rem, 4.8vw);
}
.p-cf7_radio input[type=radio]:checked + .wpcf7-list-item-label::before {
  background-color: #F69D0E;
  box-shadow: inset 0 0 0 3px #fff;
}
.p-cf7_radio .wpcf7-radio {
  display: flex;
  gap: min(0.625rem, 2.6666666667vw);
}
.p-cf7_check_c input {
  appearance: none;
  background-color: #fff;
  border: min(0.0625rem, 0.2666666667vw) solid #707070;
  border-radius: min(0.25rem, 1.0666666667vw);
  height: min(1rem, 4.2666666667vw);
  margin-right: min(0.625rem, 2.6666666667vw);
  width: min(1rem, 4.2666666667vw);
  position: relative;
}
.p-cf7_check_c input:checked {
  background-color: #F69D0E;
  border: none;
}
.p-cf7_check_c input:checked::before, .p-cf7_check_c input:checked::after {
  background-color: #616161;
  border-radius: 100vh;
  content: "";
  display: block;
  height: min(0.125rem, 0.5333333333vw);
  width: min(0.5rem, 2.1333333333vw);
  transform-origin: left;
  transform: translate(min(0.0625rem, 0.2666666667vw), min(0.375rem, 1.6vw)) rotate(45deg);
}
.p-cf7_check_c input:checked::after {
  height: min(0.125rem, 0.5333333333vw);
  width: min(0.9375rem, 4vw);
  transform: translate(min(0.3125rem, 1.3333333333vw), min(0.625rem, 2.6666666667vw)) rotate(-46deg);
}
.p-cf7_check_r input {
  appearance: none;
  background-color: #fff;
  border: min(0.0625rem, 0.2666666667vw) solid #707070;
  border-radius: 100vh;
  height: min(1.125rem, 4.8vw);
  margin-right: min(0.5rem, 2.1333333333vw);
  width: min(1.125rem, 4.8vw);
  position: relative;
}
.p-cf7_check_r input:checked::before {
  background-color: #F69D0E;
  border-radius: 100vh;
  content: "";
  display: block;
  height: min(0.6875rem, 2.9333333333vw);
  left: min(0.175rem, 0.7466666667vw);
  position: absolute;
  top: min(0.175rem, 0.7466666667vw);
  width: min(0.6875rem, 2.9333333333vw);
}
.p-cf7_check .wpcf7-list-item-label {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 700;
  font-size: min(1rem, 4.2666666667vw);
  letter-spacing: 0.01em;
  line-height: 1;
}
@media screen and (min-width: 1025px) {
  .p-cf7_check .wpcf7-list-item-label {
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 700;
    font-size: min(1.25rem, 5.3333333333vw);
    letter-spacing: 0.01em;
    line-height: 1;
  }
}
.p-cf7 .wpcf7-not-valid-tip {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  font-size: min(1rem, 4.2666666667vw);
  letter-spacing: 0em;
  line-height: 1.5625;
  display: block;
  color: #EC4728 !important;
}

.screen-reader-response {
  display: none !important;
}

.wpcf7-response-output {
  display: none !important;
}

.fadein .fadein-left {
  transition: all 0.5s linear 0s;
  transform: translate(-30px, 0);
  opacity: 0;
}

.fadein .fadein-left.show {
  transform: translate(0, 0);
  opacity: 1;
}

.scrooll-animation {
  opacity: 0;
  transform: translate(-30px, 0);
  transition: all 1s;
}

.scrooll-animation.active {
  opacity: 1;
  transform: translate(0, 0);
}

/**
* rem変換 ※375以下ではvwとする
* $number 数値
* 例) 32pxをremに変換 (32);
*/
/**
* %計算
* $number 数値
* $basis %を計算するための基準値(幅)
* 例) 値1000に対して50の%値 (50, 1000);
*/
/**
* vw計算
* $number 数値
* $width vw(%)を計算するための基準幅(デフォルト：SPのデザイン幅)
* 例) SPデザイン幅時点で100pxとなるvw値 (100);
* 例) 画面幅1000px時点で100pxとなるvw値 (100, 1000);
*/
/* hover要素判定 */
/* コンテナ */
/**
* フォント
* $size フォントサイズ
* $line 行間(xdの値)
* $space 文字間(xdの値)
* 例) fontMinchoW4(16, 25, 0.16)
*/
/* ボーダー */
/**
* flex要素のwidthを取得(均等割り)
* $num 並べる個数
* $gap 間の余白(rem, px)
* 例) flexSize(3, 10px)
*/
/* 幅 */
/* 高さ */
/* カラー */
/* フォント */
/* ボーダー */
.h-none_sp {
  display: none !important;
}
@media screen and (min-width: 600px) {
  .h-none_sp {
    display: block !important;
  }
}
.h-none_sp_inline {
  display: none !important;
}
@media screen and (min-width: 600px) {
  .h-none_sp_inline {
    display: inline !important;
  }
}
.h-none_sp_flex {
  display: none !important;
}
@media screen and (min-width: 600px) {
  .h-none_sp_flex {
    display: flex !important;
  }
}
.h-none_spTab {
  display: none !important;
}
@media screen and (min-width: 1025px) {
  .h-none_spTab {
    display: block !important;
  }
}
.h-none_spTab_inline {
  display: none !important;
}
@media screen and (min-width: 1025px) {
  .h-none_spTab_inline {
    display: inline !important;
  }
}
.h-none_spTab_flex {
  display: none !important;
}
@media screen and (min-width: 1025px) {
  .h-none_spTab_flex {
    display: flex !important;
  }
}
@media screen and (min-width: 600px) {
  .h-none_tabPc {
    display: none !important;
  }
}
@media screen and (min-width: 1025px) {
  .h-none_pc {
    display: none !important;
  }
}

.fadein .fadein-left {
  transition: all 0.5s linear 0s;
  transform: translate(-30px, 0);
  opacity: 0;
}

.fadein .fadein-left.show {
  transform: translate(0, 0);
  opacity: 1;
}

.scrooll-animation {
  opacity: 0;
  transform: translate(-30px, 0);
  transition: all 1s;
}

.scrooll-animation.active {
  opacity: 1;
  transform: translate(0, 0);
}

/**
* rem変換 ※375以下ではvwとする
* $number 数値
* 例) 32pxをremに変換 (32);
*/
/**
* %計算
* $number 数値
* $basis %を計算するための基準値(幅)
* 例) 値1000に対して50の%値 (50, 1000);
*/
/**
* vw計算
* $number 数値
* $width vw(%)を計算するための基準幅(デフォルト：SPのデザイン幅)
* 例) SPデザイン幅時点で100pxとなるvw値 (100);
* 例) 画面幅1000px時点で100pxとなるvw値 (100, 1000);
*/
/* hover要素判定 */
/* コンテナ */
/**
* フォント
* $size フォントサイズ
* $line 行間(xdの値)
* $space 文字間(xdの値)
* 例) fontMinchoW4(16, 25, 0.16)
*/
/* ボーダー */
/**
* flex要素のwidthを取得(均等割り)
* $num 並べる個数
* $gap 間の余白(rem, px)
* 例) flexSize(3, 10px)
*/
/* 幅 */
/* 高さ */
/* カラー */
/* フォント */
/* ボーダー */
.swiper-wrapper {
  padding-top: min(0.75rem, 3.2vw) !important;
}

.swiper-pagination {
  bottom: auto !important;
  top: max(-0.9375rem, -4vw) !important;
}

.swiper-pagination-bullet {
  background-color: #9F9F9F !important;
  border-radius: 0 !important;
  height: min(0.125rem, 0.5333333333vw) !important;
  margin: 0 min(0.0625rem, 0.2666666667vw) !important;
  opacity: 1 !important;
  pointer-events: none;
  width: min(1.6875rem, 7.2vw) !important;
}
.swiper-pagination-bullet-active {
  background-color: #F69D0E !important;
}

/**************************************/
/*  fadeScaleSlide
/**************************************/
@keyframes fadeScaleSlide {
  0% {
    opacity: 0;
    transform: translateX(100%) scale(1);
  }
  8% {
    opacity: 1;
    transform: translateX(0) scale(1);
  }
  85% {
    opacity: 1;
  }
  100% {
    opacity: 0;
    transform: translateX(0) scale(1.1);
  }
}
@keyframes fadeScaleSlideOnly {
  0% {
    transform: translate(0) scale(1);
  }
  85% {
    opacity: 1;
  }
  100% {
    opacity: 0;
    transform: translate(0) scale(1.1);
  }
}
.fadein .fadein-left {
  transition: all 0.5s linear 0s;
  transform: translate(-30px, 0);
  opacity: 0;
}

.fadein .fadein-left.show {
  transform: translate(0, 0);
  opacity: 1;
}

.scrooll-animation {
  opacity: 0;
  transform: translate(-30px, 0);
  transition: all 1s;
}

.scrooll-animation.active {
  opacity: 1;
  transform: translate(0, 0);
}

/**
* rem変換 ※375以下ではvwとする
* $number 数値
* 例) 32pxをremに変換 (32);
*/
/**
* %計算
* $number 数値
* $basis %を計算するための基準値(幅)
* 例) 値1000に対して50の%値 (50, 1000);
*/
/**
* vw計算
* $number 数値
* $width vw(%)を計算するための基準幅(デフォルト：SPのデザイン幅)
* 例) SPデザイン幅時点で100pxとなるvw値 (100);
* 例) 画面幅1000px時点で100pxとなるvw値 (100, 1000);
*/
/* hover要素判定 */
/* コンテナ */
/**
* フォント
* $size フォントサイズ
* $line 行間(xdの値)
* $space 文字間(xdの値)
* 例) fontMinchoW4(16, 25, 0.16)
*/
/* ボーダー */
/**
* flex要素のwidthを取得(均等割り)
* $num 並べる個数
* $gap 間の余白(rem, px)
* 例) flexSize(3, 10px)
*/
/* 幅 */
/* 高さ */
/* カラー */
/* フォント */
/* ボーダー */
.hover_btn {
  transition: box-shadow 0.4s;
}
.hover_btn::before {
  transition: opacity 0.5s;
}
@media (hover: hover) and (pointer: fine) {
  .hover_btn:hover {
    box-shadow: 0 min(0.1875rem, 0.8vw) min(0.25rem, 1.0666666667vw) #9F9F9F;
  }
  .hover_btn:hover::before {
    opacity: 0;
  }
}
@media (hover: hover), (hover: none) {
  .hover_btn:active {
    box-shadow: 0 min(0.1875rem, 0.8vw) min(0.25rem, 1.0666666667vw) #9F9F9F;
  }
  .hover_btn:active::before {
    opacity: 0;
  }
}

.hover_opacity {
  cursor: pointer;
  transition: opacity 0.4s;
}
@media (hover: hover) and (pointer: fine) {
  .hover_opacity:hover {
    opacity: 0.6;
  }
}
@media (hover: hover), (hover: none) {
  .hover_opacity:active {
    opacity: 0.6;
  }
}/*# sourceMappingURL=style.css.map */